12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893268942689526896268972689826899269002690126902269032690426905269062690726908269092691026911269122691326914269152691626917269182691926920269212692226923269242692526926269272692826929269302693126932269332693426935269362693726938269392694026941269422694326944269452694626947269482694926950269512695226953269542695526956269572695826959269602696126962269632696426965269662696726968269692697026971269722697326974269752697626977269782697926980269812698226983269842698526986269872698826989269902699126992269932699426995269962699726998269992700027001270022700327004270052700627007270082700927010270112701227013270142701527016270172701827019270202702127022270232702427025270262702727028270292703027031270322703327034270352703627037270382703927040270412704227043270442704527046270472704827049270502705127052270532705427055270562705727058270592706027061270622706327064270652706627067270682706927070270712707227073270742707527076270772707827079270802708127082270832708427085270862708727088270892709027091270922709327094270952709627097270982709927100271012710227103271042710527106271072710827109271102711127112271132711427115271162711727118271192712027121271222712327124271252712627127271282712927130271312713227133271342713527136271372713827139271402714127142271432714427145271462714727148271492715027151271522715327154271552715627157271582715927160271612716227163271642716527166271672716827169271702717127172271732717427175271762717727178271792718027181271822718327184271852718627187271882718927190271912719227193271942719527196271972719827199272002720127202272032720427205272062720727208272092721027211272122721327214272152721627217272182721927220272212722227223272242722527226272272722827229272302723127232272332723427235272362723727238272392724027241272422724327244272452724627247272482724927250272512725227253272542725527256272572725827259272602726127262272632726427265272662726727268272692727027271272722727327274272752727627277272782727927280272812728227283272842728527286272872728827289272902729127292272932729427295272962729727298272992730027301273022730327304273052730627307273082730927310273112731227313273142731527316273172731827319273202732127322273232732427325273262732727328273292733027331273322733327334273352733627337273382733927340273412734227343273442734527346273472734827349273502735127352273532735427355273562735727358273592736027361273622736327364273652736627367273682736927370273712737227373273742737527376273772737827379273802738127382273832738427385273862738727388273892739027391273922739327394273952739627397273982739927400274012740227403274042740527406274072740827409274102741127412274132741427415274162741727418274192742027421274222742327424274252742627427274282742927430274312743227433274342743527436274372743827439274402744127442274432744427445274462744727448274492745027451274522745327454274552745627457274582745927460274612746227463274642746527466274672746827469274702747127472274732747427475274762747727478274792748027481274822748327484274852748627487274882748927490274912749227493274942749527496274972749827499275002750127502275032750427505275062750727508275092751027511275122751327514275152751627517275182751927520275212752227523275242752527526275272752827529275302753127532275332753427535275362753727538275392754027541275422754327544275452754627547275482754927550275512755227553275542755527556275572755827559275602756127562275632756427565275662756727568275692757027571275722757327574275752757627577275782757927580275812758227583275842758527586275872758827589275902759127592275932759427595275962759727598275992760027601276022760327604276052760627607276082760927610276112761227613276142761527616276172761827619276202762127622276232762427625276262762727628276292763027631276322763327634276352763627637276382763927640276412764227643276442764527646276472764827649276502765127652276532765427655276562765727658276592766027661276622766327664276652766627667276682766927670276712767227673276742767527676276772767827679276802768127682276832768427685276862768727688276892769027691276922769327694276952769627697276982769927700277012770227703277042770527706277072770827709277102771127712277132771427715277162771727718277192772027721277222772327724277252772627727277282772927730277312773227733277342773527736277372773827739277402774127742277432774427745277462774727748277492775027751277522775327754277552775627757277582775927760277612776227763277642776527766277672776827769277702777127772277732777427775277762777727778277792778027781277822778327784277852778627787277882778927790277912779227793277942779527796277972779827799278002780127802278032780427805278062780727808278092781027811278122781327814278152781627817278182781927820278212782227823278242782527826278272782827829278302783127832278332783427835278362783727838278392784027841278422784327844278452784627847278482784927850278512785227853278542785527856278572785827859278602786127862278632786427865278662786727868278692787027871278722787327874278752787627877278782787927880278812788227883278842788527886278872788827889278902789127892278932789427895278962789727898278992790027901279022790327904279052790627907279082790927910279112791227913279142791527916279172791827919279202792127922279232792427925279262792727928279292793027931279322793327934279352793627937279382793927940279412794227943279442794527946279472794827949279502795127952279532795427955279562795727958279592796027961279622796327964279652796627967279682796927970279712797227973279742797527976279772797827979279802798127982279832798427985279862798727988279892799027991279922799327994279952799627997279982799928000280012800228003280042800528006280072800828009280102801128012280132801428015280162801728018280192802028021280222802328024280252802628027280282802928030280312803228033280342803528036280372803828039280402804128042280432804428045280462804728048280492805028051280522805328054280552805628057280582805928060280612806228063280642806528066280672806828069280702807128072280732807428075280762807728078280792808028081280822808328084280852808628087280882808928090280912809228093280942809528096280972809828099281002810128102281032810428105281062810728108281092811028111281122811328114281152811628117281182811928120281212812228123281242812528126281272812828129281302813128132281332813428135281362813728138281392814028141281422814328144281452814628147281482814928150281512815228153281542815528156281572815828159281602816128162281632816428165281662816728168281692817028171281722817328174281752817628177281782817928180281812818228183281842818528186281872818828189281902819128192281932819428195281962819728198281992820028201282022820328204282052820628207282082820928210282112821228213282142821528216282172821828219282202822128222282232822428225282262822728228282292823028231282322823328234282352823628237282382823928240282412824228243282442824528246282472824828249282502825128252282532825428255282562825728258282592826028261282622826328264282652826628267282682826928270282712827228273282742827528276282772827828279282802828128282282832828428285282862828728288282892829028291282922829328294282952829628297282982829928300283012830228303283042830528306283072830828309283102831128312283132831428315283162831728318283192832028321283222832328324283252832628327283282832928330283312833228333283342833528336283372833828339283402834128342283432834428345283462834728348283492835028351283522835328354283552835628357283582835928360283612836228363283642836528366283672836828369283702837128372283732837428375283762837728378283792838028381283822838328384283852838628387283882838928390283912839228393283942839528396283972839828399284002840128402284032840428405284062840728408284092841028411284122841328414284152841628417284182841928420284212842228423284242842528426284272842828429284302843128432284332843428435284362843728438284392844028441284422844328444284452844628447284482844928450284512845228453284542845528456284572845828459284602846128462284632846428465284662846728468284692847028471284722847328474284752847628477284782847928480284812848228483284842848528486284872848828489284902849128492284932849428495284962849728498284992850028501285022850328504285052850628507285082850928510285112851228513285142851528516285172851828519285202852128522285232852428525285262852728528285292853028531285322853328534285352853628537285382853928540285412854228543285442854528546285472854828549285502855128552285532855428555285562855728558285592856028561285622856328564285652856628567285682856928570285712857228573285742857528576285772857828579285802858128582285832858428585285862858728588285892859028591285922859328594285952859628597285982859928600286012860228603286042860528606286072860828609286102861128612286132861428615286162861728618286192862028621286222862328624286252862628627286282862928630286312863228633286342863528636286372863828639286402864128642286432864428645286462864728648286492865028651286522865328654286552865628657286582865928660286612866228663286642866528666286672866828669286702867128672286732867428675286762867728678286792868028681286822868328684286852868628687286882868928690286912869228693286942869528696286972869828699287002870128702287032870428705287062870728708287092871028711287122871328714287152871628717287182871928720287212872228723287242872528726287272872828729287302873128732287332873428735287362873728738287392874028741287422874328744287452874628747287482874928750287512875228753287542875528756287572875828759287602876128762287632876428765287662876728768287692877028771287722877328774287752877628777287782877928780287812878228783287842878528786287872878828789287902879128792287932879428795287962879728798287992880028801288022880328804288052880628807288082880928810288112881228813288142881528816288172881828819288202882128822288232882428825288262882728828288292883028831288322883328834288352883628837288382883928840288412884228843288442884528846288472884828849288502885128852288532885428855288562885728858288592886028861288622886328864288652886628867288682886928870288712887228873288742887528876288772887828879288802888128882288832888428885288862888728888288892889028891288922889328894288952889628897288982889928900289012890228903289042890528906289072890828909289102891128912289132891428915289162891728918289192892028921289222892328924289252892628927289282892928930289312893228933289342893528936289372893828939289402894128942289432894428945289462894728948289492895028951289522895328954289552895628957289582895928960289612896228963289642896528966289672896828969289702897128972289732897428975289762897728978289792898028981289822898328984289852898628987289882898928990289912899228993289942899528996289972899828999290002900129002290032900429005290062900729008290092901029011290122901329014290152901629017290182901929020290212902229023290242902529026290272902829029290302903129032290332903429035290362903729038290392904029041290422904329044290452904629047290482904929050290512905229053290542905529056290572905829059290602906129062290632906429065290662906729068290692907029071290722907329074290752907629077290782907929080290812908229083290842908529086290872908829089290902909129092290932909429095290962909729098290992910029101291022910329104291052910629107291082910929110291112911229113291142911529116291172911829119291202912129122291232912429125291262912729128291292913029131291322913329134291352913629137291382913929140291412914229143291442914529146291472914829149291502915129152291532915429155291562915729158291592916029161291622916329164291652916629167291682916929170291712917229173291742917529176291772917829179291802918129182291832918429185291862918729188291892919029191291922919329194291952919629197291982919929200292012920229203292042920529206292072920829209292102921129212292132921429215292162921729218292192922029221292222922329224292252922629227292282922929230292312923229233292342923529236292372923829239292402924129242292432924429245292462924729248292492925029251292522925329254292552925629257292582925929260292612926229263292642926529266292672926829269292702927129272292732927429275292762927729278292792928029281292822928329284292852928629287292882928929290292912929229293292942929529296292972929829299293002930129302293032930429305293062930729308293092931029311293122931329314293152931629317293182931929320293212932229323293242932529326293272932829329293302933129332293332933429335293362933729338293392934029341293422934329344293452934629347293482934929350293512935229353293542935529356293572935829359293602936129362293632936429365293662936729368293692937029371293722937329374293752937629377293782937929380293812938229383293842938529386293872938829389293902939129392293932939429395293962939729398293992940029401294022940329404294052940629407294082940929410294112941229413294142941529416294172941829419294202942129422294232942429425294262942729428294292943029431294322943329434294352943629437294382943929440294412944229443294442944529446294472944829449294502945129452294532945429455294562945729458294592946029461294622946329464294652946629467294682946929470294712947229473294742947529476294772947829479294802948129482294832948429485294862948729488294892949029491294922949329494294952949629497294982949929500295012950229503295042950529506295072950829509295102951129512295132951429515295162951729518295192952029521295222952329524295252952629527295282952929530295312953229533295342953529536295372953829539295402954129542295432954429545295462954729548295492955029551295522955329554295552955629557295582955929560295612956229563295642956529566295672956829569295702957129572295732957429575295762957729578295792958029581295822958329584295852958629587295882958929590295912959229593295942959529596295972959829599296002960129602296032960429605296062960729608296092961029611296122961329614296152961629617296182961929620296212962229623296242962529626296272962829629296302963129632296332963429635296362963729638296392964029641296422964329644296452964629647296482964929650296512965229653296542965529656296572965829659296602966129662296632966429665296662966729668296692967029671296722967329674296752967629677296782967929680296812968229683296842968529686296872968829689296902969129692296932969429695296962969729698296992970029701297022970329704297052970629707297082970929710297112971229713297142971529716297172971829719297202972129722297232972429725297262972729728297292973029731297322973329734297352973629737297382973929740297412974229743297442974529746297472974829749297502975129752297532975429755297562975729758297592976029761297622976329764297652976629767297682976929770297712977229773297742977529776297772977829779297802978129782297832978429785297862978729788297892979029791297922979329794297952979629797297982979929800298012980229803298042980529806298072980829809298102981129812298132981429815298162981729818298192982029821298222982329824298252982629827298282982929830298312983229833298342983529836298372983829839298402984129842298432984429845298462984729848298492985029851298522985329854298552985629857298582985929860298612986229863298642986529866298672986829869298702987129872298732987429875298762987729878298792988029881298822988329884298852988629887298882988929890298912989229893298942989529896298972989829899299002990129902299032990429905299062990729908299092991029911299122991329914299152991629917299182991929920299212992229923299242992529926299272992829929299302993129932299332993429935299362993729938299392994029941299422994329944299452994629947299482994929950299512995229953299542995529956299572995829959299602996129962299632996429965299662996729968299692997029971299722997329974299752997629977299782997929980299812998229983299842998529986299872998829989299902999129992299932999429995299962999729998299993000030001300023000330004300053000630007300083000930010300113001230013300143001530016300173001830019300203002130022300233002430025300263002730028300293003030031300323003330034300353003630037300383003930040300413004230043300443004530046300473004830049300503005130052300533005430055300563005730058300593006030061300623006330064300653006630067300683006930070300713007230073300743007530076300773007830079300803008130082300833008430085300863008730088300893009030091300923009330094300953009630097300983009930100301013010230103301043010530106301073010830109301103011130112301133011430115301163011730118301193012030121301223012330124301253012630127301283012930130301313013230133301343013530136301373013830139301403014130142301433014430145301463014730148301493015030151301523015330154301553015630157301583015930160301613016230163301643016530166301673016830169301703017130172301733017430175301763017730178301793018030181301823018330184301853018630187301883018930190301913019230193301943019530196301973019830199302003020130202302033020430205302063020730208302093021030211302123021330214302153021630217302183021930220302213022230223302243022530226302273022830229302303023130232302333023430235302363023730238302393024030241302423024330244302453024630247302483024930250302513025230253302543025530256302573025830259302603026130262302633026430265302663026730268302693027030271302723027330274302753027630277302783027930280302813028230283302843028530286302873028830289302903029130292302933029430295302963029730298302993030030301303023030330304303053030630307303083030930310303113031230313303143031530316303173031830319303203032130322303233032430325303263032730328303293033030331303323033330334303353033630337303383033930340303413034230343303443034530346303473034830349303503035130352303533035430355303563035730358303593036030361303623036330364303653036630367303683036930370303713037230373303743037530376303773037830379303803038130382303833038430385303863038730388303893039030391303923039330394303953039630397303983039930400304013040230403304043040530406304073040830409304103041130412304133041430415304163041730418304193042030421304223042330424304253042630427304283042930430304313043230433304343043530436304373043830439304403044130442304433044430445304463044730448304493045030451304523045330454304553045630457304583045930460304613046230463304643046530466304673046830469304703047130472304733047430475304763047730478304793048030481304823048330484304853048630487304883048930490304913049230493304943049530496304973049830499305003050130502305033050430505305063050730508305093051030511305123051330514305153051630517305183051930520305213052230523305243052530526305273052830529305303053130532305333053430535305363053730538305393054030541305423054330544305453054630547305483054930550305513055230553305543055530556305573055830559305603056130562305633056430565305663056730568305693057030571305723057330574305753057630577305783057930580305813058230583305843058530586305873058830589305903059130592305933059430595305963059730598305993060030601306023060330604306053060630607306083060930610306113061230613306143061530616306173061830619306203062130622306233062430625306263062730628306293063030631306323063330634306353063630637306383063930640306413064230643306443064530646306473064830649306503065130652306533065430655306563065730658306593066030661306623066330664306653066630667306683066930670306713067230673306743067530676306773067830679306803068130682306833068430685306863068730688306893069030691306923069330694306953069630697306983069930700307013070230703307043070530706307073070830709307103071130712307133071430715307163071730718307193072030721307223072330724307253072630727307283072930730307313073230733307343073530736307373073830739307403074130742307433074430745307463074730748307493075030751307523075330754307553075630757307583075930760307613076230763307643076530766307673076830769307703077130772307733077430775307763077730778307793078030781307823078330784307853078630787307883078930790307913079230793307943079530796307973079830799308003080130802308033080430805308063080730808308093081030811308123081330814308153081630817308183081930820308213082230823308243082530826308273082830829308303083130832308333083430835308363083730838308393084030841308423084330844308453084630847308483084930850308513085230853308543085530856308573085830859308603086130862308633086430865308663086730868308693087030871308723087330874308753087630877308783087930880308813088230883308843088530886308873088830889308903089130892308933089430895308963089730898308993090030901309023090330904309053090630907309083090930910309113091230913309143091530916309173091830919309203092130922309233092430925309263092730928309293093030931309323093330934309353093630937309383093930940309413094230943309443094530946309473094830949309503095130952309533095430955309563095730958309593096030961309623096330964309653096630967309683096930970309713097230973309743097530976309773097830979309803098130982309833098430985309863098730988309893099030991309923099330994309953099630997309983099931000310013100231003310043100531006310073100831009310103101131012310133101431015310163101731018310193102031021310223102331024310253102631027310283102931030310313103231033310343103531036310373103831039310403104131042310433104431045310463104731048310493105031051310523105331054310553105631057310583105931060310613106231063310643106531066310673106831069310703107131072310733107431075310763107731078310793108031081310823108331084310853108631087310883108931090310913109231093310943109531096310973109831099311003110131102311033110431105311063110731108311093111031111311123111331114311153111631117311183111931120311213112231123311243112531126311273112831129311303113131132311333113431135311363113731138311393114031141311423114331144311453114631147311483114931150311513115231153311543115531156311573115831159311603116131162311633116431165311663116731168311693117031171311723117331174311753117631177311783117931180311813118231183311843118531186311873118831189311903119131192311933119431195311963119731198311993120031201312023120331204312053120631207312083120931210312113121231213312143121531216312173121831219312203122131222312233122431225312263122731228312293123031231312323123331234312353123631237312383123931240312413124231243312443124531246312473124831249312503125131252312533125431255312563125731258312593126031261312623126331264312653126631267312683126931270312713127231273312743127531276312773127831279312803128131282312833128431285312863128731288312893129031291312923129331294312953129631297312983129931300313013130231303313043130531306313073130831309313103131131312313133131431315313163131731318313193132031321313223132331324313253132631327313283132931330313313133231333313343133531336313373133831339313403134131342313433134431345313463134731348313493135031351313523135331354313553135631357313583135931360313613136231363313643136531366313673136831369313703137131372313733137431375313763137731378313793138031381313823138331384313853138631387313883138931390313913139231393313943139531396313973139831399314003140131402314033140431405314063140731408314093141031411314123141331414314153141631417314183141931420314213142231423314243142531426314273142831429314303143131432314333143431435314363143731438314393144031441314423144331444314453144631447314483144931450314513145231453314543145531456314573145831459314603146131462314633146431465314663146731468314693147031471314723147331474314753147631477314783147931480314813148231483314843148531486314873148831489314903149131492314933149431495314963149731498314993150031501315023150331504315053150631507315083150931510315113151231513315143151531516315173151831519315203152131522315233152431525315263152731528315293153031531315323153331534315353153631537315383153931540315413154231543315443154531546315473154831549315503155131552315533155431555315563155731558315593156031561315623156331564315653156631567315683156931570315713157231573315743157531576315773157831579315803158131582315833158431585315863158731588315893159031591315923159331594315953159631597315983159931600316013160231603316043160531606316073160831609316103161131612316133161431615316163161731618316193162031621316223162331624316253162631627316283162931630316313163231633316343163531636316373163831639316403164131642316433164431645316463164731648316493165031651316523165331654316553165631657316583165931660316613166231663316643166531666316673166831669316703167131672316733167431675316763167731678316793168031681316823168331684316853168631687316883168931690316913169231693316943169531696316973169831699317003170131702317033170431705317063170731708317093171031711317123171331714317153171631717317183171931720317213172231723317243172531726317273172831729317303173131732317333173431735317363173731738317393174031741317423174331744317453174631747317483174931750317513175231753317543175531756317573175831759317603176131762317633176431765317663176731768317693177031771317723177331774317753177631777317783177931780317813178231783317843178531786317873178831789317903179131792317933179431795317963179731798317993180031801318023180331804318053180631807318083180931810318113181231813318143181531816318173181831819318203182131822318233182431825318263182731828318293183031831318323183331834318353183631837318383183931840318413184231843318443184531846318473184831849318503185131852318533185431855318563185731858318593186031861318623186331864318653186631867318683186931870318713187231873318743187531876318773187831879318803188131882318833188431885318863188731888318893189031891318923189331894318953189631897318983189931900319013190231903319043190531906319073190831909319103191131912319133191431915319163191731918319193192031921319223192331924319253192631927319283192931930319313193231933319343193531936319373193831939319403194131942319433194431945319463194731948319493195031951319523195331954319553195631957319583195931960319613196231963319643196531966319673196831969319703197131972319733197431975319763197731978319793198031981319823198331984319853198631987319883198931990319913199231993319943199531996319973199831999320003200132002320033200432005320063200732008320093201032011320123201332014320153201632017320183201932020320213202232023320243202532026320273202832029320303203132032320333203432035320363203732038320393204032041320423204332044320453204632047320483204932050320513205232053320543205532056320573205832059320603206132062320633206432065320663206732068320693207032071320723207332074320753207632077320783207932080320813208232083320843208532086320873208832089320903209132092320933209432095320963209732098320993210032101321023210332104321053210632107321083210932110321113211232113321143211532116321173211832119321203212132122321233212432125321263212732128321293213032131321323213332134321353213632137321383213932140321413214232143321443214532146321473214832149321503215132152321533215432155321563215732158321593216032161321623216332164321653216632167321683216932170321713217232173321743217532176321773217832179321803218132182321833218432185321863218732188321893219032191321923219332194321953219632197321983219932200322013220232203322043220532206322073220832209322103221132212322133221432215322163221732218322193222032221322223222332224322253222632227322283222932230322313223232233322343223532236322373223832239322403224132242322433224432245322463224732248322493225032251322523225332254322553225632257322583225932260322613226232263322643226532266322673226832269322703227132272322733227432275322763227732278322793228032281322823228332284322853228632287322883228932290322913229232293322943229532296322973229832299323003230132302323033230432305323063230732308323093231032311323123231332314323153231632317323183231932320323213232232323323243232532326323273232832329323303233132332323333233432335323363233732338323393234032341323423234332344323453234632347323483234932350323513235232353323543235532356323573235832359323603236132362323633236432365323663236732368323693237032371323723237332374323753237632377323783237932380323813238232383323843238532386323873238832389323903239132392323933239432395323963239732398323993240032401324023240332404324053240632407324083240932410324113241232413324143241532416324173241832419324203242132422324233242432425324263242732428324293243032431324323243332434324353243632437324383243932440324413244232443324443244532446324473244832449324503245132452324533245432455324563245732458324593246032461324623246332464324653246632467324683246932470324713247232473324743247532476324773247832479324803248132482324833248432485324863248732488324893249032491324923249332494324953249632497324983249932500325013250232503325043250532506325073250832509325103251132512325133251432515325163251732518325193252032521325223252332524325253252632527325283252932530325313253232533325343253532536325373253832539325403254132542325433254432545325463254732548325493255032551325523255332554325553255632557325583255932560325613256232563325643256532566325673256832569325703257132572325733257432575325763257732578325793258032581325823258332584325853258632587325883258932590325913259232593325943259532596325973259832599326003260132602326033260432605326063260732608326093261032611326123261332614326153261632617326183261932620326213262232623326243262532626326273262832629326303263132632326333263432635326363263732638326393264032641326423264332644326453264632647326483264932650326513265232653326543265532656326573265832659326603266132662326633266432665326663266732668326693267032671326723267332674326753267632677326783267932680326813268232683326843268532686326873268832689326903269132692326933269432695326963269732698326993270032701327023270332704327053270632707327083270932710327113271232713327143271532716327173271832719327203272132722327233272432725327263272732728327293273032731327323273332734327353273632737327383273932740327413274232743327443274532746327473274832749327503275132752327533275432755327563275732758327593276032761327623276332764327653276632767327683276932770327713277232773327743277532776327773277832779327803278132782327833278432785327863278732788327893279032791327923279332794327953279632797327983279932800328013280232803328043280532806328073280832809328103281132812328133281432815328163281732818328193282032821328223282332824328253282632827328283282932830328313283232833328343283532836328373283832839328403284132842328433284432845328463284732848328493285032851328523285332854328553285632857328583285932860328613286232863328643286532866328673286832869328703287132872328733287432875328763287732878328793288032881328823288332884328853288632887328883288932890328913289232893328943289532896328973289832899329003290132902329033290432905329063290732908329093291032911329123291332914329153291632917329183291932920329213292232923329243292532926329273292832929329303293132932329333293432935329363293732938329393294032941329423294332944329453294632947329483294932950329513295232953329543295532956329573295832959329603296132962329633296432965329663296732968329693297032971329723297332974329753297632977329783297932980329813298232983329843298532986329873298832989329903299132992329933299432995329963299732998329993300033001330023300333004330053300633007330083300933010330113301233013330143301533016330173301833019330203302133022330233302433025330263302733028330293303033031330323303333034330353303633037330383303933040330413304233043330443304533046330473304833049330503305133052330533305433055330563305733058330593306033061330623306333064330653306633067330683306933070330713307233073330743307533076330773307833079330803308133082330833308433085330863308733088330893309033091330923309333094330953309633097330983309933100331013310233103331043310533106331073310833109331103311133112331133311433115331163311733118331193312033121331223312333124331253312633127331283312933130331313313233133331343313533136331373313833139331403314133142331433314433145331463314733148331493315033151331523315333154331553315633157331583315933160331613316233163331643316533166331673316833169331703317133172331733317433175331763317733178331793318033181331823318333184331853318633187331883318933190331913319233193331943319533196331973319833199332003320133202332033320433205332063320733208332093321033211332123321333214332153321633217332183321933220332213322233223332243322533226332273322833229332303323133232332333323433235332363323733238332393324033241332423324333244332453324633247332483324933250332513325233253332543325533256332573325833259332603326133262332633326433265332663326733268332693327033271332723327333274332753327633277332783327933280332813328233283332843328533286332873328833289332903329133292332933329433295332963329733298332993330033301333023330333304333053330633307333083330933310333113331233313333143331533316333173331833319333203332133322333233332433325333263332733328333293333033331333323333333334333353333633337333383333933340333413334233343333443334533346333473334833349333503335133352333533335433355333563335733358333593336033361333623336333364333653336633367333683336933370333713337233373333743337533376333773337833379333803338133382333833338433385333863338733388333893339033391333923339333394333953339633397333983339933400334013340233403334043340533406334073340833409334103341133412334133341433415334163341733418334193342033421334223342333424334253342633427334283342933430334313343233433334343343533436334373343833439334403344133442334433344433445334463344733448334493345033451334523345333454334553345633457334583345933460334613346233463334643346533466334673346833469334703347133472334733347433475334763347733478334793348033481334823348333484334853348633487334883348933490334913349233493334943349533496334973349833499335003350133502335033350433505335063350733508335093351033511335123351333514335153351633517335183351933520335213352233523335243352533526335273352833529335303353133532335333353433535335363353733538335393354033541335423354333544335453354633547335483354933550335513355233553335543355533556335573355833559335603356133562335633356433565335663356733568335693357033571335723357333574335753357633577335783357933580335813358233583335843358533586335873358833589335903359133592335933359433595335963359733598335993360033601336023360333604336053360633607336083360933610336113361233613336143361533616336173361833619336203362133622336233362433625336263362733628336293363033631336323363333634336353363633637336383363933640336413364233643336443364533646336473364833649336503365133652336533365433655336563365733658336593366033661336623366333664336653366633667336683366933670336713367233673336743367533676336773367833679336803368133682336833368433685336863368733688336893369033691336923369333694336953369633697336983369933700337013370233703337043370533706337073370833709337103371133712337133371433715337163371733718337193372033721337223372333724337253372633727337283372933730337313373233733337343373533736337373373833739337403374133742337433374433745337463374733748337493375033751337523375333754337553375633757337583375933760337613376233763337643376533766337673376833769337703377133772337733377433775337763377733778337793378033781337823378333784337853378633787337883378933790337913379233793337943379533796337973379833799338003380133802338033380433805338063380733808338093381033811338123381333814338153381633817338183381933820338213382233823338243382533826338273382833829338303383133832338333383433835338363383733838338393384033841338423384333844338453384633847338483384933850338513385233853338543385533856338573385833859338603386133862338633386433865338663386733868338693387033871338723387333874338753387633877338783387933880338813388233883338843388533886338873388833889338903389133892338933389433895338963389733898338993390033901339023390333904339053390633907339083390933910339113391233913339143391533916339173391833919339203392133922339233392433925339263392733928339293393033931339323393333934339353393633937339383393933940339413394233943339443394533946339473394833949339503395133952339533395433955339563395733958339593396033961339623396333964339653396633967339683396933970339713397233973339743397533976339773397833979339803398133982339833398433985339863398733988339893399033991339923399333994339953399633997339983399934000340013400234003340043400534006340073400834009340103401134012340133401434015340163401734018340193402034021340223402334024340253402634027340283402934030340313403234033340343403534036340373403834039340403404134042340433404434045340463404734048340493405034051340523405334054340553405634057340583405934060340613406234063340643406534066340673406834069340703407134072340733407434075340763407734078340793408034081340823408334084340853408634087340883408934090340913409234093340943409534096340973409834099341003410134102341033410434105341063410734108341093411034111341123411334114341153411634117341183411934120341213412234123341243412534126341273412834129341303413134132341333413434135341363413734138341393414034141341423414334144341453414634147341483414934150341513415234153341543415534156341573415834159341603416134162341633416434165341663416734168341693417034171341723417334174341753417634177341783417934180341813418234183341843418534186341873418834189341903419134192341933419434195341963419734198341993420034201342023420334204342053420634207342083420934210342113421234213342143421534216342173421834219342203422134222342233422434225342263422734228342293423034231342323423334234342353423634237342383423934240342413424234243342443424534246342473424834249342503425134252342533425434255342563425734258342593426034261342623426334264342653426634267342683426934270342713427234273342743427534276342773427834279342803428134282342833428434285342863428734288342893429034291342923429334294342953429634297342983429934300343013430234303343043430534306343073430834309343103431134312343133431434315343163431734318343193432034321343223432334324343253432634327343283432934330343313433234333343343433534336343373433834339343403434134342343433434434345343463434734348343493435034351343523435334354343553435634357343583435934360343613436234363343643436534366343673436834369343703437134372343733437434375343763437734378343793438034381343823438334384343853438634387343883438934390343913439234393343943439534396343973439834399344003440134402344033440434405344063440734408344093441034411344123441334414344153441634417344183441934420344213442234423344243442534426344273442834429344303443134432344333443434435344363443734438344393444034441344423444334444344453444634447344483444934450344513445234453344543445534456344573445834459344603446134462344633446434465344663446734468344693447034471344723447334474344753447634477344783447934480344813448234483344843448534486344873448834489344903449134492344933449434495344963449734498344993450034501345023450334504345053450634507345083450934510345113451234513345143451534516345173451834519345203452134522345233452434525345263452734528345293453034531345323453334534345353453634537345383453934540345413454234543345443454534546345473454834549345503455134552345533455434555345563455734558345593456034561345623456334564345653456634567345683456934570345713457234573345743457534576345773457834579345803458134582345833458434585345863458734588345893459034591345923459334594345953459634597345983459934600346013460234603346043460534606346073460834609346103461134612346133461434615346163461734618346193462034621346223462334624346253462634627346283462934630346313463234633346343463534636346373463834639346403464134642346433464434645346463464734648346493465034651346523465334654346553465634657346583465934660346613466234663346643466534666346673466834669346703467134672346733467434675346763467734678346793468034681346823468334684346853468634687346883468934690346913469234693346943469534696346973469834699347003470134702347033470434705347063470734708347093471034711347123471334714347153471634717347183471934720347213472234723347243472534726347273472834729347303473134732347333473434735347363473734738347393474034741347423474334744347453474634747347483474934750347513475234753347543475534756347573475834759347603476134762347633476434765347663476734768347693477034771347723477334774347753477634777347783477934780347813478234783347843478534786347873478834789347903479134792347933479434795347963479734798347993480034801348023480334804348053480634807348083480934810348113481234813348143481534816348173481834819348203482134822348233482434825348263482734828348293483034831348323483334834348353483634837348383483934840348413484234843348443484534846348473484834849348503485134852348533485434855348563485734858348593486034861348623486334864348653486634867348683486934870348713487234873348743487534876348773487834879348803488134882348833488434885348863488734888348893489034891348923489334894348953489634897348983489934900349013490234903349043490534906349073490834909349103491134912349133491434915349163491734918349193492034921349223492334924349253492634927349283492934930349313493234933349343493534936349373493834939349403494134942349433494434945349463494734948349493495034951349523495334954349553495634957349583495934960349613496234963349643496534966349673496834969349703497134972349733497434975349763497734978349793498034981349823498334984349853498634987349883498934990349913499234993349943499534996349973499834999350003500135002350033500435005350063500735008350093501035011350123501335014350153501635017350183501935020350213502235023350243502535026350273502835029350303503135032350333503435035350363503735038350393504035041350423504335044350453504635047350483504935050350513505235053350543505535056350573505835059350603506135062350633506435065350663506735068350693507035071350723507335074350753507635077350783507935080350813508235083350843508535086350873508835089350903509135092350933509435095350963509735098350993510035101351023510335104351053510635107351083510935110351113511235113351143511535116351173511835119351203512135122351233512435125351263512735128351293513035131351323513335134351353513635137351383513935140351413514235143351443514535146351473514835149351503515135152351533515435155351563515735158351593516035161351623516335164351653516635167351683516935170351713517235173351743517535176351773517835179351803518135182351833518435185351863518735188351893519035191351923519335194351953519635197351983519935200352013520235203352043520535206352073520835209352103521135212352133521435215352163521735218352193522035221352223522335224352253522635227352283522935230352313523235233352343523535236352373523835239352403524135242352433524435245352463524735248352493525035251352523525335254352553525635257352583525935260352613526235263352643526535266352673526835269352703527135272352733527435275352763527735278352793528035281352823528335284352853528635287352883528935290352913529235293352943529535296352973529835299353003530135302353033530435305353063530735308353093531035311353123531335314353153531635317353183531935320353213532235323353243532535326353273532835329353303533135332353333533435335353363533735338353393534035341353423534335344353453534635347353483534935350353513535235353353543535535356353573535835359353603536135362353633536435365353663536735368353693537035371353723537335374353753537635377353783537935380353813538235383353843538535386353873538835389353903539135392353933539435395353963539735398353993540035401354023540335404354053540635407354083540935410354113541235413354143541535416354173541835419354203542135422354233542435425354263542735428354293543035431354323543335434354353543635437354383543935440354413544235443354443544535446354473544835449354503545135452354533545435455354563545735458354593546035461354623546335464354653546635467354683546935470354713547235473354743547535476354773547835479354803548135482354833548435485354863548735488354893549035491354923549335494354953549635497354983549935500355013550235503355043550535506355073550835509355103551135512355133551435515355163551735518355193552035521355223552335524355253552635527355283552935530355313553235533355343553535536355373553835539355403554135542355433554435545355463554735548355493555035551355523555335554355553555635557355583555935560355613556235563355643556535566355673556835569355703557135572355733557435575355763557735578355793558035581355823558335584355853558635587355883558935590355913559235593355943559535596355973559835599356003560135602356033560435605356063560735608356093561035611356123561335614356153561635617356183561935620356213562235623356243562535626356273562835629356303563135632356333563435635356363563735638356393564035641356423564335644356453564635647356483564935650356513565235653356543565535656356573565835659356603566135662356633566435665356663566735668356693567035671356723567335674356753567635677356783567935680356813568235683356843568535686356873568835689356903569135692356933569435695356963569735698356993570035701357023570335704357053570635707357083570935710357113571235713357143571535716357173571835719357203572135722357233572435725357263572735728357293573035731357323573335734357353573635737357383573935740357413574235743357443574535746357473574835749357503575135752357533575435755357563575735758357593576035761357623576335764357653576635767357683576935770357713577235773357743577535776357773577835779357803578135782357833578435785357863578735788357893579035791357923579335794357953579635797357983579935800358013580235803358043580535806358073580835809358103581135812358133581435815358163581735818358193582035821358223582335824358253582635827358283582935830358313583235833358343583535836358373583835839358403584135842358433584435845358463584735848358493585035851358523585335854358553585635857358583585935860358613586235863358643586535866358673586835869358703587135872358733587435875358763587735878358793588035881358823588335884358853588635887358883588935890358913589235893358943589535896358973589835899359003590135902359033590435905359063590735908359093591035911359123591335914359153591635917359183591935920359213592235923359243592535926359273592835929359303593135932359333593435935359363593735938359393594035941359423594335944359453594635947359483594935950359513595235953359543595535956359573595835959359603596135962359633596435965359663596735968359693597035971359723597335974359753597635977359783597935980359813598235983359843598535986359873598835989359903599135992359933599435995359963599735998359993600036001360023600336004360053600636007360083600936010360113601236013360143601536016360173601836019360203602136022360233602436025360263602736028360293603036031360323603336034360353603636037360383603936040360413604236043360443604536046360473604836049360503605136052360533605436055360563605736058360593606036061360623606336064360653606636067360683606936070360713607236073360743607536076360773607836079360803608136082360833608436085360863608736088360893609036091360923609336094360953609636097360983609936100361013610236103361043610536106361073610836109361103611136112361133611436115361163611736118361193612036121361223612336124361253612636127361283612936130361313613236133361343613536136361373613836139361403614136142361433614436145361463614736148361493615036151361523615336154361553615636157361583615936160361613616236163361643616536166361673616836169361703617136172361733617436175361763617736178361793618036181361823618336184361853618636187361883618936190361913619236193361943619536196361973619836199362003620136202362033620436205362063620736208362093621036211362123621336214362153621636217362183621936220362213622236223362243622536226362273622836229362303623136232362333623436235362363623736238362393624036241362423624336244362453624636247362483624936250362513625236253362543625536256362573625836259362603626136262362633626436265362663626736268362693627036271362723627336274362753627636277362783627936280362813628236283362843628536286362873628836289362903629136292362933629436295362963629736298362993630036301363023630336304363053630636307363083630936310363113631236313363143631536316363173631836319363203632136322363233632436325363263632736328363293633036331363323633336334363353633636337363383633936340363413634236343363443634536346363473634836349363503635136352363533635436355363563635736358363593636036361363623636336364363653636636367363683636936370363713637236373363743637536376363773637836379363803638136382363833638436385363863638736388363893639036391363923639336394363953639636397363983639936400364013640236403364043640536406364073640836409364103641136412364133641436415364163641736418364193642036421364223642336424364253642636427364283642936430364313643236433364343643536436364373643836439364403644136442364433644436445364463644736448364493645036451364523645336454364553645636457364583645936460364613646236463364643646536466364673646836469364703647136472364733647436475364763647736478364793648036481364823648336484364853648636487364883648936490364913649236493364943649536496364973649836499365003650136502365033650436505365063650736508365093651036511365123651336514365153651636517365183651936520365213652236523365243652536526365273652836529365303653136532365333653436535365363653736538365393654036541365423654336544365453654636547365483654936550365513655236553365543655536556365573655836559365603656136562365633656436565365663656736568365693657036571365723657336574365753657636577365783657936580365813658236583365843658536586365873658836589365903659136592365933659436595365963659736598365993660036601366023660336604366053660636607366083660936610366113661236613366143661536616366173661836619366203662136622366233662436625366263662736628366293663036631366323663336634366353663636637366383663936640366413664236643366443664536646366473664836649366503665136652366533665436655366563665736658366593666036661366623666336664366653666636667366683666936670366713667236673366743667536676366773667836679366803668136682366833668436685366863668736688366893669036691366923669336694366953669636697366983669936700367013670236703367043670536706367073670836709367103671136712367133671436715367163671736718367193672036721367223672336724367253672636727367283672936730367313673236733367343673536736367373673836739367403674136742367433674436745367463674736748367493675036751367523675336754367553675636757367583675936760367613676236763367643676536766367673676836769367703677136772367733677436775367763677736778367793678036781367823678336784367853678636787367883678936790367913679236793367943679536796367973679836799368003680136802368033680436805368063680736808368093681036811368123681336814368153681636817368183681936820368213682236823368243682536826368273682836829368303683136832368333683436835368363683736838368393684036841368423684336844368453684636847368483684936850368513685236853368543685536856368573685836859368603686136862368633686436865368663686736868368693687036871368723687336874368753687636877368783687936880368813688236883368843688536886368873688836889368903689136892368933689436895368963689736898368993690036901369023690336904369053690636907369083690936910369113691236913369143691536916369173691836919369203692136922369233692436925369263692736928369293693036931369323693336934369353693636937369383693936940369413694236943369443694536946369473694836949369503695136952369533695436955369563695736958369593696036961369623696336964369653696636967369683696936970369713697236973369743697536976369773697836979369803698136982369833698436985369863698736988369893699036991369923699336994369953699636997369983699937000370013700237003370043700537006370073700837009370103701137012370133701437015370163701737018370193702037021370223702337024370253702637027370283702937030370313703237033370343703537036370373703837039370403704137042370433704437045370463704737048370493705037051370523705337054370553705637057370583705937060370613706237063370643706537066370673706837069370703707137072370733707437075370763707737078370793708037081370823708337084370853708637087370883708937090370913709237093370943709537096370973709837099371003710137102371033710437105371063710737108371093711037111371123711337114371153711637117371183711937120371213712237123371243712537126371273712837129371303713137132371333713437135371363713737138371393714037141371423714337144371453714637147371483714937150371513715237153371543715537156371573715837159371603716137162371633716437165371663716737168371693717037171371723717337174371753717637177371783717937180371813718237183371843718537186371873718837189371903719137192371933719437195371963719737198371993720037201372023720337204372053720637207372083720937210372113721237213372143721537216372173721837219372203722137222372233722437225372263722737228372293723037231372323723337234372353723637237372383723937240372413724237243372443724537246372473724837249372503725137252372533725437255372563725737258372593726037261372623726337264372653726637267372683726937270372713727237273372743727537276372773727837279372803728137282372833728437285372863728737288372893729037291372923729337294372953729637297372983729937300373013730237303373043730537306373073730837309373103731137312373133731437315373163731737318373193732037321373223732337324373253732637327373283732937330373313733237333373343733537336373373733837339373403734137342373433734437345373463734737348373493735037351373523735337354373553735637357373583735937360373613736237363373643736537366373673736837369373703737137372373733737437375373763737737378373793738037381373823738337384373853738637387373883738937390373913739237393373943739537396373973739837399374003740137402374033740437405374063740737408374093741037411374123741337414374153741637417374183741937420374213742237423374243742537426374273742837429374303743137432374333743437435374363743737438374393744037441374423744337444374453744637447374483744937450374513745237453374543745537456374573745837459374603746137462374633746437465374663746737468374693747037471374723747337474374753747637477374783747937480374813748237483374843748537486374873748837489374903749137492374933749437495374963749737498374993750037501375023750337504375053750637507375083750937510375113751237513375143751537516375173751837519375203752137522375233752437525375263752737528375293753037531375323753337534375353753637537375383753937540375413754237543375443754537546375473754837549375503755137552375533755437555375563755737558375593756037561375623756337564375653756637567375683756937570375713757237573375743757537576375773757837579375803758137582375833758437585375863758737588375893759037591375923759337594375953759637597375983759937600376013760237603376043760537606376073760837609376103761137612376133761437615376163761737618376193762037621376223762337624376253762637627376283762937630376313763237633376343763537636376373763837639376403764137642376433764437645376463764737648376493765037651376523765337654376553765637657376583765937660376613766237663376643766537666376673766837669376703767137672376733767437675376763767737678376793768037681376823768337684376853768637687376883768937690376913769237693376943769537696376973769837699377003770137702377033770437705377063770737708377093771037711377123771337714377153771637717377183771937720377213772237723377243772537726377273772837729377303773137732377333773437735377363773737738377393774037741377423774337744377453774637747377483774937750377513775237753377543775537756377573775837759377603776137762377633776437765377663776737768377693777037771377723777337774377753777637777377783777937780377813778237783377843778537786 |
- module.exports =
- /******/ (function(modules) { // webpackBootstrap
- /******/ // The module cache
- /******/ var installedModules = {};
- /******/
- /******/ // The require function
- /******/ function __webpack_require__(moduleId) {
- /******/
- /******/ // Check if module is in cache
- /******/ if(installedModules[moduleId]) {
- /******/ return installedModules[moduleId].exports;
- /******/ }
- /******/ // Create a new module (and put it into the cache)
- /******/ var module = installedModules[moduleId] = {
- /******/ i: moduleId,
- /******/ l: false,
- /******/ exports: {}
- /******/ };
- /******/
- /******/ // Execute the module function
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
- /******/
- /******/ // Flag the module as loaded
- /******/ module.l = true;
- /******/
- /******/ // Return the exports of the module
- /******/ return module.exports;
- /******/ }
- /******/
- /******/
- /******/ // expose the modules object (__webpack_modules__)
- /******/ __webpack_require__.m = modules;
- /******/
- /******/ // expose the module cache
- /******/ __webpack_require__.c = installedModules;
- /******/
- /******/ // define getter function for harmony exports
- /******/ __webpack_require__.d = function(exports, name, getter) {
- /******/ if(!__webpack_require__.o(exports, name)) {
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
- /******/ }
- /******/ };
- /******/
- /******/ // define __esModule on exports
- /******/ __webpack_require__.r = function(exports) {
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
- /******/ }
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
- /******/ };
- /******/
- /******/ // create a fake namespace object
- /******/ // mode & 1: value is a module id, require it
- /******/ // mode & 2: merge all properties of value into the ns
- /******/ // mode & 4: return value when already ns object
- /******/ // mode & 8|1: behave like require
- /******/ __webpack_require__.t = function(value, mode) {
- /******/ if(mode & 1) value = __webpack_require__(value);
- /******/ if(mode & 8) return value;
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
- /******/ var ns = Object.create(null);
- /******/ __webpack_require__.r(ns);
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
- /******/ return ns;
- /******/ };
- /******/
- /******/ // getDefaultExport function for compatibility with non-harmony modules
- /******/ __webpack_require__.n = function(module) {
- /******/ var getter = module && module.__esModule ?
- /******/ function getDefault() { return module['default']; } :
- /******/ function getModuleExports() { return module; };
- /******/ __webpack_require__.d(getter, 'a', getter);
- /******/ return getter;
- /******/ };
- /******/
- /******/ // Object.prototype.hasOwnProperty.call
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
- /******/
- /******/ // __webpack_public_path__
- /******/ __webpack_require__.p = "/dist/";
- /******/
- /******/
- /******/ // Load entry module and return exports
- /******/ return __webpack_require__(__webpack_require__.s = 40);
- /******/ })
- /************************************************************************/
- /******/ ([
- /* 0 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/date-util");
- /***/ }),
- /* 1 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/dom");
- /***/ }),
- /* 2 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/util");
- /***/ }),
- /* 3 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/mixins/emitter");
- /***/ }),
- /* 4 */
- /***/ (function(module, exports) {
- module.exports = require("vue");
- /***/ }),
- /* 5 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/mixins/locale");
- /***/ }),
- /* 6 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/vue-popper");
- /***/ }),
- /* 7 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/merge");
- /***/ }),
- /* 8 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/input");
- /***/ }),
- /* 9 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/mixins/migrating");
- /***/ }),
- /* 10 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/clickoutside");
- /***/ }),
- /* 11 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/popup");
- /***/ }),
- /* 12 */
- /***/ (function(module, exports) {
- module.exports = require("throttle-debounce/debounce");
- /***/ }),
- /* 13 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/resize-event");
- /***/ }),
- /* 14 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/button");
- /***/ }),
- /* 15 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/checkbox");
- /***/ }),
- /* 16 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/locale");
- /***/ }),
- /* 17 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/date");
- /***/ }),
- /* 18 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/transitions/collapse-transition");
- /***/ }),
- /* 19 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/scrollbar");
- /***/ }),
- /* 20 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/mixins/focus");
- /***/ }),
- /* 21 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/vdom");
- /***/ }),
- /* 22 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/tooltip");
- /***/ }),
- /* 23 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/tag");
- /***/ }),
- /* 24 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/scroll-into-view");
- /***/ }),
- /* 25 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/types");
- /***/ }),
- /* 26 */
- /***/ (function(module, exports) {
- module.exports = require("babel-helper-vue-jsx-merge-props");
- /***/ }),
- /* 27 */
- /***/ (function(module, exports) {
- module.exports = require("throttle-debounce/throttle");
- /***/ }),
- /* 28 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/shared");
- /***/ }),
- /* 29 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/scrollbar-width");
- /***/ }),
- /* 30 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/checkbox-group");
- /***/ }),
- /* 31 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/after-leave");
- /***/ }),
- /* 32 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/progress");
- /***/ }),
- /* 33 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/select");
- /***/ }),
- /* 34 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/option");
- /***/ }),
- /* 35 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/button-group");
- /***/ }),
- /* 36 */
- /***/ (function(module, exports) {
- module.exports = require("normalize-wheel");
- /***/ }),
- /* 37 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/aria-dialog");
- /***/ }),
- /* 38 */
- /***/ (function(module, exports) {
- module.exports = require("async-validator");
- /***/ }),
- /* 39 */
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/input-number");
- /***/ }),
- /* 40 */
- /***/ (function(module, exports, __webpack_require__) {
- module.exports = __webpack_require__(41);
- /***/ }),
- /* 41 */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/pagination/src/pager.vue?vue&type=template&id=7274f267&
- var pagervue_type_template_id_7274f267_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "ul",
- { staticClass: "el-pager", on: { click: _vm.onPagerClick } },
- [
- _vm.pageCount > 0
- ? _c(
- "li",
- {
- staticClass: "number",
- class: { active: _vm.currentPage === 1, disabled: _vm.disabled }
- },
- [_vm._v("1")]
- )
- : _vm._e(),
- _vm.showPrevMore
- ? _c("li", {
- staticClass: "el-icon more btn-quickprev",
- class: [_vm.quickprevIconClass, { disabled: _vm.disabled }],
- on: {
- mouseenter: function($event) {
- _vm.onMouseenter("left")
- },
- mouseleave: function($event) {
- _vm.quickprevIconClass = "el-icon-more"
- }
- }
- })
- : _vm._e(),
- _vm._l(_vm.pagers, function(pager) {
- return _c(
- "li",
- {
- key: pager,
- staticClass: "number",
- class: { active: _vm.currentPage === pager, disabled: _vm.disabled }
- },
- [_vm._v(_vm._s(pager))]
- )
- }),
- _vm.showNextMore
- ? _c("li", {
- staticClass: "el-icon more btn-quicknext",
- class: [_vm.quicknextIconClass, { disabled: _vm.disabled }],
- on: {
- mouseenter: function($event) {
- _vm.onMouseenter("right")
- },
- mouseleave: function($event) {
- _vm.quicknextIconClass = "el-icon-more"
- }
- }
- })
- : _vm._e(),
- _vm.pageCount > 1
- ? _c(
- "li",
- {
- staticClass: "number",
- class: {
- active: _vm.currentPage === _vm.pageCount,
- disabled: _vm.disabled
- }
- },
- [_vm._v(_vm._s(_vm.pageCount))]
- )
- : _vm._e()
- ],
- 2
- )
- }
- var staticRenderFns = []
- pagervue_type_template_id_7274f267_render._withStripped = true
- // CONCATENATED MODULE: ./packages/pagination/src/pager.vue?vue&type=template&id=7274f267&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/pagination/src/pager.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var pagervue_type_script_lang_js_ = ({
- name: 'ElPager',
- props: {
- currentPage: Number,
- pageCount: Number,
- pagerCount: Number,
- disabled: Boolean
- },
- watch: {
- showPrevMore: function showPrevMore(val) {
- if (!val) this.quickprevIconClass = 'el-icon-more';
- },
- showNextMore: function showNextMore(val) {
- if (!val) this.quicknextIconClass = 'el-icon-more';
- }
- },
- methods: {
- onPagerClick: function onPagerClick(event) {
- var target = event.target;
- if (target.tagName === 'UL' || this.disabled) {
- return;
- }
- var newPage = Number(event.target.textContent);
- var pageCount = this.pageCount;
- var currentPage = this.currentPage;
- var pagerCountOffset = this.pagerCount - 2;
- if (target.className.indexOf('more') !== -1) {
- if (target.className.indexOf('quickprev') !== -1) {
- newPage = currentPage - pagerCountOffset;
- } else if (target.className.indexOf('quicknext') !== -1) {
- newPage = currentPage + pagerCountOffset;
- }
- }
- /* istanbul ignore if */
- if (!isNaN(newPage)) {
- if (newPage < 1) {
- newPage = 1;
- }
- if (newPage > pageCount) {
- newPage = pageCount;
- }
- }
- if (newPage !== currentPage) {
- this.$emit('change', newPage);
- }
- },
- onMouseenter: function onMouseenter(direction) {
- if (this.disabled) return;
- if (direction === 'left') {
- this.quickprevIconClass = 'el-icon-d-arrow-left';
- } else {
- this.quicknextIconClass = 'el-icon-d-arrow-right';
- }
- }
- },
- computed: {
- pagers: function pagers() {
- var pagerCount = this.pagerCount;
- var halfPagerCount = (pagerCount - 1) / 2;
- var currentPage = Number(this.currentPage);
- var pageCount = Number(this.pageCount);
- var showPrevMore = false;
- var showNextMore = false;
- if (pageCount > pagerCount) {
- if (currentPage > pagerCount - halfPagerCount) {
- showPrevMore = true;
- }
- if (currentPage < pageCount - halfPagerCount) {
- showNextMore = true;
- }
- }
- var array = [];
- if (showPrevMore && !showNextMore) {
- var startPage = pageCount - (pagerCount - 2);
- for (var i = startPage; i < pageCount; i++) {
- array.push(i);
- }
- } else if (!showPrevMore && showNextMore) {
- for (var _i = 2; _i < pagerCount; _i++) {
- array.push(_i);
- }
- } else if (showPrevMore && showNextMore) {
- var offset = Math.floor(pagerCount / 2) - 1;
- for (var _i2 = currentPage - offset; _i2 <= currentPage + offset; _i2++) {
- array.push(_i2);
- }
- } else {
- for (var _i3 = 2; _i3 < pageCount; _i3++) {
- array.push(_i3);
- }
- }
- this.showPrevMore = showPrevMore;
- this.showNextMore = showNextMore;
- return array;
- }
- },
- data: function data() {
- return {
- current: null,
- showPrevMore: false,
- showNextMore: false,
- quicknextIconClass: 'el-icon-more',
- quickprevIconClass: 'el-icon-more'
- };
- }
- });
- // CONCATENATED MODULE: ./packages/pagination/src/pager.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_pagervue_type_script_lang_js_ = (pagervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
- /* globals __VUE_SSR_CONTEXT__ */
- // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
- // This module is a runtime utility for cleaner component module output and will
- // be included in the final webpack user bundle.
- function normalizeComponent (
- scriptExports,
- render,
- staticRenderFns,
- functionalTemplate,
- injectStyles,
- scopeId,
- moduleIdentifier, /* server only */
- shadowMode /* vue-cli only */
- ) {
- // Vue.extend constructor export interop
- var options = typeof scriptExports === 'function'
- ? scriptExports.options
- : scriptExports
- // render functions
- if (render) {
- options.render = render
- options.staticRenderFns = staticRenderFns
- options._compiled = true
- }
- // functional template
- if (functionalTemplate) {
- options.functional = true
- }
- // scopedId
- if (scopeId) {
- options._scopeId = 'data-v-' + scopeId
- }
- var hook
- if (moduleIdentifier) { // server build
- hook = function (context) {
- // 2.3 injection
- context =
- context || // cached call
- (this.$vnode && this.$vnode.ssrContext) || // stateful
- (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
- // 2.2 with runInNewContext: true
- if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
- context = __VUE_SSR_CONTEXT__
- }
- // inject component styles
- if (injectStyles) {
- injectStyles.call(this, context)
- }
- // register component module identifier for async chunk inferrence
- if (context && context._registeredComponents) {
- context._registeredComponents.add(moduleIdentifier)
- }
- }
- // used by ssr in case component is cached and beforeCreate
- // never gets called
- options._ssrRegister = hook
- } else if (injectStyles) {
- hook = shadowMode
- ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
- : injectStyles
- }
- if (hook) {
- if (options.functional) {
- // for template-only hot-reload because in that case the render fn doesn't
- // go through the normalizer
- options._injectStyles = hook
- // register for functioal component in vue file
- var originalRender = options.render
- options.render = function renderWithStyleInjection (h, context) {
- hook.call(context)
- return originalRender(h, context)
- }
- } else {
- // inject component registration as beforeCreate hook
- var existing = options.beforeCreate
- options.beforeCreate = existing
- ? [].concat(existing, hook)
- : [hook]
- }
- }
- return {
- exports: scriptExports,
- options: options
- }
- }
- // CONCATENATED MODULE: ./packages/pagination/src/pager.vue
- /* normalize component */
- var component = normalizeComponent(
- src_pagervue_type_script_lang_js_,
- pagervue_type_template_id_7274f267_render,
- staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var api; }
- component.options.__file = "packages/pagination/src/pager.vue"
- /* harmony default export */ var pager = (component.exports);
- // EXTERNAL MODULE: external "element-ui/lib/select"
- var select_ = __webpack_require__(33);
- var select_default = /*#__PURE__*/__webpack_require__.n(select_);
- // EXTERNAL MODULE: external "element-ui/lib/option"
- var option_ = __webpack_require__(34);
- var option_default = /*#__PURE__*/__webpack_require__.n(option_);
- // EXTERNAL MODULE: external "element-ui/lib/input"
- var input_ = __webpack_require__(8);
- var input_default = /*#__PURE__*/__webpack_require__.n(input_);
- // EXTERNAL MODULE: external "element-ui/lib/mixins/locale"
- var locale_ = __webpack_require__(5);
- var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
- // EXTERNAL MODULE: external "element-ui/lib/utils/util"
- var util_ = __webpack_require__(2);
- // CONCATENATED MODULE: ./packages/pagination/src/pagination.js
- /* harmony default export */ var pagination = ({
- name: 'ElPagination',
- props: {
- pageSize: {
- type: Number,
- default: 10
- },
- small: Boolean,
- total: Number,
- pageCount: Number,
- pagerCount: {
- type: Number,
- validator: function validator(value) {
- return (value | 0) === value && value > 4 && value < 22 && value % 2 === 1;
- },
- default: 7
- },
- currentPage: {
- type: Number,
- default: 1
- },
- layout: {
- default: 'prev, pager, next, jumper, ->, total'
- },
- pageSizes: {
- type: Array,
- default: function _default() {
- return [10, 20, 30, 40, 50, 100];
- }
- },
- popperClass: String,
- prevText: String,
- nextText: String,
- background: Boolean,
- disabled: Boolean,
- hideOnSinglePage: Boolean
- },
- data: function data() {
- return {
- internalCurrentPage: 1,
- internalPageSize: 0,
- lastEmittedPage: -1,
- userChangePageSize: false
- };
- },
- render: function render(h) {
- var layout = this.layout;
- if (!layout) return null;
- if (this.hideOnSinglePage && (!this.internalPageCount || this.internalPageCount === 1)) return null;
- var template = h('div', { 'class': ['el-pagination', {
- 'is-background': this.background,
- 'el-pagination--small': this.small
- }] });
- var TEMPLATE_MAP = {
- prev: h('prev'),
- jumper: h('jumper'),
- pager: h('pager', {
- attrs: { currentPage: this.internalCurrentPage, pageCount: this.internalPageCount, pagerCount: this.pagerCount, disabled: this.disabled },
- on: {
- 'change': this.handleCurrentChange
- }
- }),
- next: h('next'),
- sizes: h('sizes', {
- attrs: { pageSizes: this.pageSizes }
- }),
- slot: h('slot', [this.$slots.default ? this.$slots.default : '']),
- total: h('total')
- };
- var components = layout.split(',').map(function (item) {
- return item.trim();
- });
- var rightWrapper = h('div', { 'class': 'el-pagination__rightwrapper' });
- var haveRightWrapper = false;
- template.children = template.children || [];
- rightWrapper.children = rightWrapper.children || [];
- components.forEach(function (compo) {
- if (compo === '->') {
- haveRightWrapper = true;
- return;
- }
- if (!haveRightWrapper) {
- template.children.push(TEMPLATE_MAP[compo]);
- } else {
- rightWrapper.children.push(TEMPLATE_MAP[compo]);
- }
- });
- if (haveRightWrapper) {
- template.children.unshift(rightWrapper);
- }
- return template;
- },
- components: {
- Prev: {
- render: function render(h) {
- return h(
- 'button',
- {
- attrs: {
- type: 'button',
- disabled: this.$parent.disabled || this.$parent.internalCurrentPage <= 1
- },
- 'class': 'btn-prev', on: {
- 'click': this.$parent.prev
- }
- },
- [this.$parent.prevText ? h('span', [this.$parent.prevText]) : h('i', { 'class': 'el-icon el-icon-arrow-left' })]
- );
- }
- },
- Next: {
- render: function render(h) {
- return h(
- 'button',
- {
- attrs: {
- type: 'button',
- disabled: this.$parent.disabled || this.$parent.internalCurrentPage === this.$parent.internalPageCount || this.$parent.internalPageCount === 0
- },
- 'class': 'btn-next', on: {
- 'click': this.$parent.next
- }
- },
- [this.$parent.nextText ? h('span', [this.$parent.nextText]) : h('i', { 'class': 'el-icon el-icon-arrow-right' })]
- );
- }
- },
- Sizes: {
- mixins: [locale_default.a],
- props: {
- pageSizes: Array
- },
- watch: {
- pageSizes: {
- immediate: true,
- handler: function handler(newVal, oldVal) {
- if (Object(util_["valueEquals"])(newVal, oldVal)) return;
- if (Array.isArray(newVal)) {
- this.$parent.internalPageSize = newVal.indexOf(this.$parent.pageSize) > -1 ? this.$parent.pageSize : this.pageSizes[0];
- }
- }
- }
- },
- render: function render(h) {
- var _this = this;
- return h(
- 'span',
- { 'class': 'el-pagination__sizes' },
- [h(
- 'el-select',
- {
- attrs: {
- value: this.$parent.internalPageSize,
- popperClass: this.$parent.popperClass || '',
- size: 'mini',
- disabled: this.$parent.disabled },
- on: {
- 'input': this.handleChange
- }
- },
- [this.pageSizes.map(function (item) {
- return h('el-option', {
- attrs: {
- value: item,
- label: item + _this.t('el.pagination.pagesize') }
- });
- })]
- )]
- );
- },
- components: {
- ElSelect: select_default.a,
- ElOption: option_default.a
- },
- methods: {
- handleChange: function handleChange(val) {
- if (val !== this.$parent.internalPageSize) {
- this.$parent.internalPageSize = val = parseInt(val, 10);
- this.$parent.userChangePageSize = true;
- this.$parent.$emit('update:pageSize', val);
- this.$parent.$emit('size-change', val);
- }
- }
- }
- },
- Jumper: {
- mixins: [locale_default.a],
- components: { ElInput: input_default.a },
- data: function data() {
- return {
- userInput: null
- };
- },
- watch: {
- '$parent.internalCurrentPage': function $parentInternalCurrentPage() {
- this.userInput = null;
- }
- },
- methods: {
- handleKeyup: function handleKeyup(_ref) {
- var keyCode = _ref.keyCode,
- target = _ref.target;
- // Chrome, Safari, Firefox triggers change event on Enter
- // Hack for IE: https://github.com/ElemeFE/element/issues/11710
- // Drop this method when we no longer supports IE
- if (keyCode === 13) {
- this.handleChange(target.value);
- }
- },
- handleInput: function handleInput(value) {
- this.userInput = value;
- },
- handleChange: function handleChange(value) {
- this.$parent.internalCurrentPage = this.$parent.getValidCurrentPage(value);
- this.$parent.emitChange();
- this.userInput = null;
- }
- },
- render: function render(h) {
- return h(
- 'span',
- { 'class': 'el-pagination__jump' },
- [this.t('el.pagination.goto'), h('el-input', {
- 'class': 'el-pagination__editor is-in-pagination',
- attrs: { min: 1,
- max: this.$parent.internalPageCount,
- value: this.userInput !== null ? this.userInput : this.$parent.internalCurrentPage,
- type: 'number',
- disabled: this.$parent.disabled
- },
- nativeOn: {
- 'keyup': this.handleKeyup
- },
- on: {
- 'input': this.handleInput,
- 'change': this.handleChange
- }
- }), this.t('el.pagination.pageClassifier')]
- );
- }
- },
- Total: {
- mixins: [locale_default.a],
- render: function render(h) {
- return typeof this.$parent.total === 'number' ? h(
- 'span',
- { 'class': 'el-pagination__total' },
- [this.t('el.pagination.total', { total: this.$parent.total })]
- ) : '';
- }
- },
- Pager: pager
- },
- methods: {
- handleCurrentChange: function handleCurrentChange(val) {
- this.internalCurrentPage = this.getValidCurrentPage(val);
- this.userChangePageSize = true;
- this.emitChange();
- },
- prev: function prev() {
- if (this.disabled) return;
- var newVal = this.internalCurrentPage - 1;
- this.internalCurrentPage = this.getValidCurrentPage(newVal);
- this.$emit('prev-click', this.internalCurrentPage);
- this.emitChange();
- },
- next: function next() {
- if (this.disabled) return;
- var newVal = this.internalCurrentPage + 1;
- this.internalCurrentPage = this.getValidCurrentPage(newVal);
- this.$emit('next-click', this.internalCurrentPage);
- this.emitChange();
- },
- getValidCurrentPage: function getValidCurrentPage(value) {
- value = parseInt(value, 10);
- var havePageCount = typeof this.internalPageCount === 'number';
- var resetValue = void 0;
- if (!havePageCount) {
- if (isNaN(value) || value < 1) resetValue = 1;
- } else {
- if (value < 1) {
- resetValue = 1;
- } else if (value > this.internalPageCount) {
- resetValue = this.internalPageCount;
- }
- }
- if (resetValue === undefined && isNaN(value)) {
- resetValue = 1;
- } else if (resetValue === 0) {
- resetValue = 1;
- }
- return resetValue === undefined ? value : resetValue;
- },
- emitChange: function emitChange() {
- var _this2 = this;
- this.$nextTick(function () {
- if (_this2.internalCurrentPage !== _this2.lastEmittedPage || _this2.userChangePageSize) {
- _this2.$emit('current-change', _this2.internalCurrentPage);
- _this2.lastEmittedPage = _this2.internalCurrentPage;
- _this2.userChangePageSize = false;
- }
- });
- }
- },
- computed: {
- internalPageCount: function internalPageCount() {
- if (typeof this.total === 'number') {
- return Math.max(1, Math.ceil(this.total / this.internalPageSize));
- } else if (typeof this.pageCount === 'number') {
- return Math.max(1, this.pageCount);
- }
- return null;
- }
- },
- watch: {
- currentPage: {
- immediate: true,
- handler: function handler(val) {
- this.internalCurrentPage = this.getValidCurrentPage(val);
- }
- },
- pageSize: {
- immediate: true,
- handler: function handler(val) {
- this.internalPageSize = isNaN(val) ? 10 : val;
- }
- },
- internalCurrentPage: {
- immediate: true,
- handler: function handler(newVal) {
- this.$emit('update:currentPage', newVal);
- this.lastEmittedPage = -1;
- }
- },
- internalPageCount: function internalPageCount(newVal) {
- /* istanbul ignore if */
- var oldPage = this.internalCurrentPage;
- if (newVal > 0 && oldPage === 0) {
- this.internalCurrentPage = 1;
- } else if (oldPage > newVal) {
- this.internalCurrentPage = newVal === 0 ? 1 : newVal;
- this.userChangePageSize && this.emitChange();
- }
- this.userChangePageSize = false;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/pagination/index.js
- /* istanbul ignore next */
- pagination.install = function (Vue) {
- Vue.component(pagination.name, pagination);
- };
- /* harmony default export */ var packages_pagination = (pagination);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dialog/src/component.vue?vue&type=template&id=60140e62&
- var componentvue_type_template_id_60140e62_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "dialog-fade" },
- on: { "after-enter": _vm.afterEnter, "after-leave": _vm.afterLeave }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-dialog__wrapper",
- on: {
- click: function($event) {
- if ($event.target !== $event.currentTarget) {
- return null
- }
- return _vm.handleWrapperClick($event)
- }
- }
- },
- [
- _c(
- "div",
- {
- ref: "dialog",
- staticClass: "el-dialog",
- class: [
- {
- "is-fullscreen": _vm.fullscreen,
- "el-dialog--center": _vm.center
- },
- _vm.customClass
- ],
- style: _vm.style,
- attrs: {
- role: "dialog",
- "aria-modal": "true",
- "aria-label": _vm.title || "dialog"
- }
- },
- [
- _c(
- "div",
- { staticClass: "el-dialog__header" },
- [
- _vm._t("title", [
- _c("span", { staticClass: "el-dialog__title" }, [
- _vm._v(_vm._s(_vm.title))
- ])
- ]),
- _vm.showClose
- ? _c(
- "button",
- {
- staticClass: "el-dialog__headerbtn",
- attrs: { type: "button", "aria-label": "Close" },
- on: { click: _vm.handleClose }
- },
- [
- _c("i", {
- staticClass:
- "el-dialog__close el-icon el-icon-close"
- })
- ]
- )
- : _vm._e()
- ],
- 2
- ),
- _vm.rendered
- ? _c(
- "div",
- { staticClass: "el-dialog__body" },
- [_vm._t("default")],
- 2
- )
- : _vm._e(),
- _vm.$slots.footer
- ? _c(
- "div",
- { staticClass: "el-dialog__footer" },
- [_vm._t("footer")],
- 2
- )
- : _vm._e()
- ]
- )
- ]
- )
- ]
- )
- }
- var componentvue_type_template_id_60140e62_staticRenderFns = []
- componentvue_type_template_id_60140e62_render._withStripped = true
- // CONCATENATED MODULE: ./packages/dialog/src/component.vue?vue&type=template&id=60140e62&
- // EXTERNAL MODULE: external "element-ui/lib/utils/popup"
- var popup_ = __webpack_require__(11);
- var popup_default = /*#__PURE__*/__webpack_require__.n(popup_);
- // EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
- var migrating_ = __webpack_require__(9);
- var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
- // EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
- var emitter_ = __webpack_require__(3);
- var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dialog/src/component.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var componentvue_type_script_lang_js_ = ({
- name: 'ElDialog',
- mixins: [popup_default.a, emitter_default.a, migrating_default.a],
- props: {
- title: {
- type: String,
- default: ''
- },
- modal: {
- type: Boolean,
- default: true
- },
- modalAppendToBody: {
- type: Boolean,
- default: true
- },
- appendToBody: {
- type: Boolean,
- default: false
- },
- lockScroll: {
- type: Boolean,
- default: true
- },
- closeOnClickModal: {
- type: Boolean,
- default: true
- },
- closeOnPressEscape: {
- type: Boolean,
- default: true
- },
- showClose: {
- type: Boolean,
- default: true
- },
- width: String,
- fullscreen: Boolean,
- customClass: {
- type: String,
- default: ''
- },
- top: {
- type: String,
- default: '15vh'
- },
- beforeClose: Function,
- center: {
- type: Boolean,
- default: false
- }
- },
- data: function data() {
- return {
- closed: false
- };
- },
- watch: {
- visible: function visible(val) {
- var _this = this;
- if (val) {
- this.closed = false;
- this.$emit('open');
- this.$el.addEventListener('scroll', this.updatePopper);
- this.$nextTick(function () {
- _this.$refs.dialog.scrollTop = 0;
- });
- if (this.appendToBody) {
- document.body.appendChild(this.$el);
- }
- } else {
- this.$el.removeEventListener('scroll', this.updatePopper);
- if (!this.closed) this.$emit('close');
- }
- }
- },
- computed: {
- style: function style() {
- var style = {};
- if (!this.fullscreen) {
- style.marginTop = this.top;
- if (this.width) {
- style.width = this.width;
- }
- }
- return style;
- }
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'size': 'size is removed.'
- }
- };
- },
- handleWrapperClick: function handleWrapperClick() {
- if (!this.closeOnClickModal) return;
- this.handleClose();
- },
- handleClose: function handleClose() {
- if (typeof this.beforeClose === 'function') {
- this.beforeClose(this.hide);
- } else {
- this.hide();
- }
- },
- hide: function hide(cancel) {
- if (cancel !== false) {
- this.$emit('update:visible', false);
- this.$emit('close');
- this.closed = true;
- }
- },
- updatePopper: function updatePopper() {
- this.broadcast('ElSelectDropdown', 'updatePopper');
- this.broadcast('ElDropdownMenu', 'updatePopper');
- },
- afterEnter: function afterEnter() {
- this.$emit('opened');
- },
- afterLeave: function afterLeave() {
- this.$emit('closed');
- }
- },
- mounted: function mounted() {
- if (this.visible) {
- this.rendered = true;
- this.open();
- if (this.appendToBody) {
- document.body.appendChild(this.$el);
- }
- }
- },
- destroyed: function destroyed() {
- // if appendToBody is true, remove DOM node after destroy
- if (this.appendToBody && this.$el && this.$el.parentNode) {
- this.$el.parentNode.removeChild(this.$el);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/dialog/src/component.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_componentvue_type_script_lang_js_ = (componentvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/dialog/src/component.vue
- /* normalize component */
- var component_component = normalizeComponent(
- src_componentvue_type_script_lang_js_,
- componentvue_type_template_id_60140e62_render,
- componentvue_type_template_id_60140e62_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var component_api; }
- component_component.options.__file = "packages/dialog/src/component.vue"
- /* harmony default export */ var src_component = (component_component.exports);
- // CONCATENATED MODULE: ./packages/dialog/index.js
- /* istanbul ignore next */
- src_component.install = function (Vue) {
- Vue.component(src_component.name, src_component);
- };
- /* harmony default export */ var dialog = (src_component);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=152f2ee6&
- var autocompletevue_type_template_id_152f2ee6_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.close,
- expression: "close"
- }
- ],
- staticClass: "el-autocomplete",
- attrs: {
- "aria-haspopup": "listbox",
- role: "combobox",
- "aria-expanded": _vm.suggestionVisible,
- "aria-owns": _vm.id
- }
- },
- [
- _c(
- "el-input",
- _vm._b(
- {
- ref: "input",
- on: {
- input: _vm.handleChange,
- focus: _vm.handleFocus,
- blur: _vm.handleBlur,
- clear: _vm.handleClear
- },
- nativeOn: {
- keydown: [
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "up", 38, $event.key, [
- "Up",
- "ArrowUp"
- ])
- ) {
- return null
- }
- $event.preventDefault()
- _vm.highlight(_vm.highlightedIndex - 1)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "down", 40, $event.key, [
- "Down",
- "ArrowDown"
- ])
- ) {
- return null
- }
- $event.preventDefault()
- _vm.highlight(_vm.highlightedIndex + 1)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
- ) {
- return null
- }
- return _vm.handleKeyEnter($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "tab", 9, $event.key, "Tab")
- ) {
- return null
- }
- return _vm.close($event)
- }
- ]
- }
- },
- "el-input",
- [_vm.$props, _vm.$attrs],
- false
- ),
- [
- _vm.$slots.prepend
- ? _c("template", { slot: "prepend" }, [_vm._t("prepend")], 2)
- : _vm._e(),
- _vm.$slots.append
- ? _c("template", { slot: "append" }, [_vm._t("append")], 2)
- : _vm._e(),
- _vm.$slots.prefix
- ? _c("template", { slot: "prefix" }, [_vm._t("prefix")], 2)
- : _vm._e(),
- _vm.$slots.suffix
- ? _c("template", { slot: "suffix" }, [_vm._t("suffix")], 2)
- : _vm._e()
- ],
- 2
- ),
- _c(
- "el-autocomplete-suggestions",
- {
- ref: "suggestions",
- class: [_vm.popperClass ? _vm.popperClass : ""],
- attrs: {
- "visible-arrow": "",
- "popper-options": _vm.popperOptions,
- "append-to-body": _vm.popperAppendToBody,
- placement: _vm.placement,
- id: _vm.id
- }
- },
- _vm._l(_vm.suggestions, function(item, index) {
- return _c(
- "li",
- {
- key: index,
- class: { highlighted: _vm.highlightedIndex === index },
- attrs: {
- id: _vm.id + "-item-" + index,
- role: "option",
- "aria-selected": _vm.highlightedIndex === index
- },
- on: {
- click: function($event) {
- _vm.select(item)
- }
- }
- },
- [
- _vm._t(
- "default",
- [
- _vm._v("\n " + _vm._s(item[_vm.valueKey]) + "\n ")
- ],
- { item: item }
- )
- ],
- 2
- )
- }),
- 0
- )
- ],
- 1
- )
- }
- var autocompletevue_type_template_id_152f2ee6_staticRenderFns = []
- autocompletevue_type_template_id_152f2ee6_render._withStripped = true
- // CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=152f2ee6&
- // EXTERNAL MODULE: external "throttle-debounce/debounce"
- var debounce_ = __webpack_require__(12);
- var debounce_default = /*#__PURE__*/__webpack_require__.n(debounce_);
- // EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"
- var clickoutside_ = __webpack_require__(10);
- var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=cd10dcf0&
- var autocomplete_suggestionsvue_type_template_id_cd10dcf0_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- { attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showPopper,
- expression: "showPopper"
- }
- ],
- staticClass: "el-autocomplete-suggestion el-popper",
- class: {
- "is-loading": !_vm.parent.hideLoading && _vm.parent.loading
- },
- style: { width: _vm.dropdownWidth },
- attrs: { role: "region" }
- },
- [
- _c(
- "el-scrollbar",
- {
- attrs: {
- tag: "ul",
- "wrap-class": "el-autocomplete-suggestion__wrap",
- "view-class": "el-autocomplete-suggestion__list"
- }
- },
- [
- !_vm.parent.hideLoading && _vm.parent.loading
- ? _c("li", [_c("i", { staticClass: "el-icon-loading" })])
- : _vm._t("default")
- ],
- 2
- )
- ],
- 1
- )
- ]
- )
- }
- var autocomplete_suggestionsvue_type_template_id_cd10dcf0_staticRenderFns = []
- autocomplete_suggestionsvue_type_template_id_cd10dcf0_render._withStripped = true
- // CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=cd10dcf0&
- // EXTERNAL MODULE: external "element-ui/lib/utils/vue-popper"
- var vue_popper_ = __webpack_require__(6);
- var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
- // EXTERNAL MODULE: external "element-ui/lib/scrollbar"
- var scrollbar_ = __webpack_require__(19);
- var scrollbar_default = /*#__PURE__*/__webpack_require__.n(scrollbar_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var autocomplete_suggestionsvue_type_script_lang_js_ = ({
- components: { ElScrollbar: scrollbar_default.a },
- mixins: [vue_popper_default.a, emitter_default.a],
- componentName: 'ElAutocompleteSuggestions',
- data: function data() {
- return {
- parent: this.$parent,
- dropdownWidth: ''
- };
- },
- props: {
- options: {
- default: function _default() {
- return {
- gpuAcceleration: false
- };
- }
- },
- id: String
- },
- methods: {
- select: function select(item) {
- this.dispatch('ElAutocomplete', 'item-click', item);
- }
- },
- updated: function updated() {
- var _this = this;
- this.$nextTick(function (_) {
- _this.popperJS && _this.updatePopper();
- });
- },
- mounted: function mounted() {
- this.$parent.popperElm = this.popperElm = this.$el;
- this.referenceElm = this.$parent.$refs.input.$refs.input;
- this.referenceList = this.$el.querySelector('.el-autocomplete-suggestion__list');
- this.referenceList.setAttribute('role', 'listbox');
- this.referenceList.setAttribute('id', this.id);
- },
- created: function created() {
- var _this2 = this;
- this.$on('visible', function (val, inputWidth) {
- _this2.dropdownWidth = inputWidth + 'px';
- _this2.showPopper = val;
- });
- }
- });
- // CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_autocomplete_suggestionsvue_type_script_lang_js_ = (autocomplete_suggestionsvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue
- /* normalize component */
- var autocomplete_suggestions_component = normalizeComponent(
- src_autocomplete_suggestionsvue_type_script_lang_js_,
- autocomplete_suggestionsvue_type_template_id_cd10dcf0_render,
- autocomplete_suggestionsvue_type_template_id_cd10dcf0_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var autocomplete_suggestions_api; }
- autocomplete_suggestions_component.options.__file = "packages/autocomplete/src/autocomplete-suggestions.vue"
- /* harmony default export */ var autocomplete_suggestions = (autocomplete_suggestions_component.exports);
- // EXTERNAL MODULE: external "element-ui/lib/mixins/focus"
- var focus_ = __webpack_require__(20);
- var focus_default = /*#__PURE__*/__webpack_require__.n(focus_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var autocompletevue_type_script_lang_js_ = ({
- name: 'ElAutocomplete',
- mixins: [emitter_default.a, focus_default()('input'), migrating_default.a],
- inheritAttrs: false,
- componentName: 'ElAutocomplete',
- components: {
- ElInput: input_default.a,
- ElAutocompleteSuggestions: autocomplete_suggestions
- },
- directives: { Clickoutside: clickoutside_default.a },
- props: {
- valueKey: {
- type: String,
- default: 'value'
- },
- popperClass: String,
- popperOptions: Object,
- placeholder: String,
- clearable: {
- type: Boolean,
- default: false
- },
- disabled: Boolean,
- name: String,
- size: String,
- value: String,
- maxlength: Number,
- minlength: Number,
- autofocus: Boolean,
- fetchSuggestions: Function,
- triggerOnFocus: {
- type: Boolean,
- default: true
- },
- customItem: String,
- selectWhenUnmatched: {
- type: Boolean,
- default: false
- },
- prefixIcon: String,
- suffixIcon: String,
- label: String,
- debounce: {
- type: Number,
- default: 300
- },
- placement: {
- type: String,
- default: 'bottom-start'
- },
- hideLoading: Boolean,
- popperAppendToBody: {
- type: Boolean,
- default: true
- },
- highlightFirstItem: {
- type: Boolean,
- default: false
- }
- },
- data: function data() {
- return {
- activated: false,
- suggestions: [],
- loading: false,
- highlightedIndex: -1,
- suggestionDisabled: false
- };
- },
- computed: {
- suggestionVisible: function suggestionVisible() {
- var suggestions = this.suggestions;
- var isValidData = Array.isArray(suggestions) && suggestions.length > 0;
- return (isValidData || this.loading) && this.activated;
- },
- id: function id() {
- return 'el-autocomplete-' + Object(util_["generateId"])();
- }
- },
- watch: {
- suggestionVisible: function suggestionVisible(val) {
- var $input = this.getInput();
- if ($input) {
- this.broadcast('ElAutocompleteSuggestions', 'visible', [val, $input.offsetWidth]);
- }
- }
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'custom-item': 'custom-item is removed, use scoped slot instead.',
- 'props': 'props is removed, use value-key instead.'
- }
- };
- },
- getData: function getData(queryString) {
- var _this = this;
- if (this.suggestionDisabled) {
- return;
- }
- this.loading = true;
- this.fetchSuggestions(queryString, function (suggestions) {
- _this.loading = false;
- if (_this.suggestionDisabled) {
- return;
- }
- if (Array.isArray(suggestions)) {
- _this.suggestions = suggestions;
- _this.highlightedIndex = _this.highlightFirstItem ? 0 : -1;
- } else {
- console.error('[Element Error][Autocomplete]autocomplete suggestions must be an array');
- }
- });
- },
- handleChange: function handleChange(value) {
- this.$emit('input', value);
- this.suggestionDisabled = false;
- if (!this.triggerOnFocus && !value) {
- this.suggestionDisabled = true;
- this.suggestions = [];
- return;
- }
- this.debouncedGetData(value);
- },
- handleFocus: function handleFocus(event) {
- this.activated = true;
- this.$emit('focus', event);
- if (this.triggerOnFocus) {
- this.debouncedGetData(this.value);
- }
- },
- handleBlur: function handleBlur(event) {
- this.$emit('blur', event);
- },
- handleClear: function handleClear() {
- this.activated = false;
- this.$emit('clear');
- },
- close: function close(e) {
- this.activated = false;
- },
- handleKeyEnter: function handleKeyEnter(e) {
- var _this2 = this;
- if (this.suggestionVisible && this.highlightedIndex >= 0 && this.highlightedIndex < this.suggestions.length) {
- e.preventDefault();
- this.select(this.suggestions[this.highlightedIndex]);
- } else if (this.selectWhenUnmatched) {
- this.$emit('select', { value: this.value });
- this.$nextTick(function (_) {
- _this2.suggestions = [];
- _this2.highlightedIndex = -1;
- });
- }
- },
- select: function select(item) {
- var _this3 = this;
- this.$emit('input', item[this.valueKey]);
- this.$emit('select', item);
- this.$nextTick(function (_) {
- _this3.suggestions = [];
- _this3.highlightedIndex = -1;
- });
- },
- highlight: function highlight(index) {
- if (!this.suggestionVisible || this.loading) {
- return;
- }
- if (index < 0) {
- this.highlightedIndex = -1;
- return;
- }
- if (index >= this.suggestions.length) {
- index = this.suggestions.length - 1;
- }
- var suggestion = this.$refs.suggestions.$el.querySelector('.el-autocomplete-suggestion__wrap');
- var suggestionList = suggestion.querySelectorAll('.el-autocomplete-suggestion__list li');
- var highlightItem = suggestionList[index];
- var scrollTop = suggestion.scrollTop;
- var offsetTop = highlightItem.offsetTop;
- if (offsetTop + highlightItem.scrollHeight > scrollTop + suggestion.clientHeight) {
- suggestion.scrollTop += highlightItem.scrollHeight;
- }
- if (offsetTop < scrollTop) {
- suggestion.scrollTop -= highlightItem.scrollHeight;
- }
- this.highlightedIndex = index;
- var $input = this.getInput();
- $input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
- },
- getInput: function getInput() {
- return this.$refs.input.getInput();
- }
- },
- mounted: function mounted() {
- var _this4 = this;
- this.debouncedGetData = debounce_default()(this.debounce, this.getData);
- this.$on('item-click', function (item) {
- _this4.select(item);
- });
- var $input = this.getInput();
- $input.setAttribute('role', 'textbox');
- $input.setAttribute('aria-autocomplete', 'list');
- $input.setAttribute('aria-controls', 'id');
- $input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
- },
- beforeDestroy: function beforeDestroy() {
- this.$refs.suggestions.$destroy();
- }
- });
- // CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_autocompletevue_type_script_lang_js_ = (autocompletevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue
- /* normalize component */
- var autocomplete_component = normalizeComponent(
- src_autocompletevue_type_script_lang_js_,
- autocompletevue_type_template_id_152f2ee6_render,
- autocompletevue_type_template_id_152f2ee6_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var autocomplete_api; }
- autocomplete_component.options.__file = "packages/autocomplete/src/autocomplete.vue"
- /* harmony default export */ var autocomplete = (autocomplete_component.exports);
- // CONCATENATED MODULE: ./packages/autocomplete/index.js
- /* istanbul ignore next */
- autocomplete.install = function (Vue) {
- Vue.component(autocomplete.name, autocomplete);
- };
- /* harmony default export */ var packages_autocomplete = (autocomplete);
- // EXTERNAL MODULE: external "element-ui/lib/button"
- var button_ = __webpack_require__(14);
- var button_default = /*#__PURE__*/__webpack_require__.n(button_);
- // EXTERNAL MODULE: external "element-ui/lib/button-group"
- var button_group_ = __webpack_require__(35);
- var button_group_default = /*#__PURE__*/__webpack_require__.n(button_group_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown.vue?vue&type=script&lang=js&
- /* harmony default export */ var dropdownvue_type_script_lang_js_ = ({
- name: 'ElDropdown',
- componentName: 'ElDropdown',
- mixins: [emitter_default.a, migrating_default.a],
- directives: { Clickoutside: clickoutside_default.a },
- components: {
- ElButton: button_default.a,
- ElButtonGroup: button_group_default.a
- },
- provide: function provide() {
- return {
- dropdown: this
- };
- },
- props: {
- trigger: {
- type: String,
- default: 'hover'
- },
- type: String,
- size: {
- type: String,
- default: ''
- },
- splitButton: Boolean,
- hideOnClick: {
- type: Boolean,
- default: true
- },
- placement: {
- type: String,
- default: 'bottom-end'
- },
- visibleArrow: {
- default: true
- },
- showTimeout: {
- type: Number,
- default: 250
- },
- hideTimeout: {
- type: Number,
- default: 150
- },
- tabindex: {
- type: Number,
- default: 0
- }
- },
- data: function data() {
- return {
- timeout: null,
- visible: false,
- triggerElm: null,
- menuItems: null,
- menuItemsArray: null,
- dropdownElm: null,
- focusing: false,
- listId: 'dropdown-menu-' + Object(util_["generateId"])()
- };
- },
- computed: {
- dropdownSize: function dropdownSize() {
- return this.size || (this.$ELEMENT || {}).size;
- }
- },
- mounted: function mounted() {
- this.$on('menu-item-click', this.handleMenuItemClick);
- },
- watch: {
- visible: function visible(val) {
- this.broadcast('ElDropdownMenu', 'visible', val);
- this.$emit('visible-change', val);
- },
- focusing: function focusing(val) {
- var selfDefine = this.$el.querySelector('.el-dropdown-selfdefine');
- if (selfDefine) {
- // 自定义
- if (val) {
- selfDefine.className += ' focusing';
- } else {
- selfDefine.className = selfDefine.className.replace('focusing', '');
- }
- }
- }
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'menu-align': 'menu-align is renamed to placement.'
- }
- };
- },
- show: function show() {
- var _this = this;
- if (this.triggerElm.disabled) return;
- clearTimeout(this.timeout);
- this.timeout = setTimeout(function () {
- _this.visible = true;
- }, this.trigger === 'click' ? 0 : this.showTimeout);
- },
- hide: function hide() {
- var _this2 = this;
- if (this.triggerElm.disabled) return;
- this.removeTabindex();
- if (this.tabindex >= 0) {
- this.resetTabindex(this.triggerElm);
- }
- clearTimeout(this.timeout);
- this.timeout = setTimeout(function () {
- _this2.visible = false;
- }, this.trigger === 'click' ? 0 : this.hideTimeout);
- },
- handleClick: function handleClick() {
- if (this.triggerElm.disabled) return;
- if (this.visible) {
- this.hide();
- } else {
- this.show();
- }
- },
- handleTriggerKeyDown: function handleTriggerKeyDown(ev) {
- var keyCode = ev.keyCode;
- if ([38, 40].indexOf(keyCode) > -1) {
- // up/down
- this.removeTabindex();
- this.resetTabindex(this.menuItems[0]);
- this.menuItems[0].focus();
- ev.preventDefault();
- ev.stopPropagation();
- } else if (keyCode === 13) {
- // space enter选中
- this.handleClick();
- } else if ([9, 27].indexOf(keyCode) > -1) {
- // tab || esc
- this.hide();
- }
- },
- handleItemKeyDown: function handleItemKeyDown(ev) {
- var keyCode = ev.keyCode;
- var target = ev.target;
- var currentIndex = this.menuItemsArray.indexOf(target);
- var max = this.menuItemsArray.length - 1;
- var nextIndex = void 0;
- if ([38, 40].indexOf(keyCode) > -1) {
- // up/down
- if (keyCode === 38) {
- // up
- nextIndex = currentIndex !== 0 ? currentIndex - 1 : 0;
- } else {
- // down
- nextIndex = currentIndex < max ? currentIndex + 1 : max;
- }
- this.removeTabindex();
- this.resetTabindex(this.menuItems[nextIndex]);
- this.menuItems[nextIndex].focus();
- ev.preventDefault();
- ev.stopPropagation();
- } else if (keyCode === 13) {
- // enter选中
- this.triggerElmFocus();
- target.click();
- if (this.hideOnClick) {
- // click关闭
- this.visible = false;
- }
- } else if ([9, 27].indexOf(keyCode) > -1) {
- // tab // esc
- this.hide();
- this.triggerElmFocus();
- }
- },
- resetTabindex: function resetTabindex(ele) {
- // 下次tab时组件聚焦元素
- this.removeTabindex();
- ele.setAttribute('tabindex', '0'); // 下次期望的聚焦元素
- },
- removeTabindex: function removeTabindex() {
- this.triggerElm.setAttribute('tabindex', '-1');
- this.menuItemsArray.forEach(function (item) {
- item.setAttribute('tabindex', '-1');
- });
- },
- initAria: function initAria() {
- this.dropdownElm.setAttribute('id', this.listId);
- this.triggerElm.setAttribute('aria-haspopup', 'list');
- this.triggerElm.setAttribute('aria-controls', this.listId);
- if (!this.splitButton) {
- // 自定义
- this.triggerElm.setAttribute('role', 'button');
- this.triggerElm.setAttribute('tabindex', this.tabindex);
- this.triggerElm.setAttribute('class', (this.triggerElm.getAttribute('class') || '') + ' el-dropdown-selfdefine'); // 控制
- }
- },
- initEvent: function initEvent() {
- var _this3 = this;
- var trigger = this.trigger,
- show = this.show,
- hide = this.hide,
- handleClick = this.handleClick,
- splitButton = this.splitButton,
- handleTriggerKeyDown = this.handleTriggerKeyDown,
- handleItemKeyDown = this.handleItemKeyDown;
- this.triggerElm = splitButton ? this.$refs.trigger.$el : this.$slots.default[0].elm;
- var dropdownElm = this.dropdownElm;
- this.triggerElm.addEventListener('keydown', handleTriggerKeyDown); // triggerElm keydown
- dropdownElm.addEventListener('keydown', handleItemKeyDown, true); // item keydown
- // 控制自定义元素的样式
- if (!splitButton) {
- this.triggerElm.addEventListener('focus', function () {
- _this3.focusing = true;
- });
- this.triggerElm.addEventListener('blur', function () {
- _this3.focusing = false;
- });
- this.triggerElm.addEventListener('click', function () {
- _this3.focusing = false;
- });
- }
- if (trigger === 'hover') {
- this.triggerElm.addEventListener('mouseenter', show);
- this.triggerElm.addEventListener('mouseleave', hide);
- dropdownElm.addEventListener('mouseenter', show);
- dropdownElm.addEventListener('mouseleave', hide);
- } else if (trigger === 'click') {
- this.triggerElm.addEventListener('click', handleClick);
- }
- },
- handleMenuItemClick: function handleMenuItemClick(command, instance) {
- if (this.hideOnClick) {
- this.visible = false;
- }
- this.$emit('command', command, instance);
- },
- triggerElmFocus: function triggerElmFocus() {
- this.triggerElm.focus && this.triggerElm.focus();
- },
- initDomOperation: function initDomOperation() {
- this.dropdownElm = this.popperElm;
- this.menuItems = this.dropdownElm.querySelectorAll("[tabindex='-1']");
- this.menuItemsArray = [].slice.call(this.menuItems);
- this.initEvent();
- this.initAria();
- }
- },
- render: function render(h) {
- var _this4 = this;
- var hide = this.hide,
- splitButton = this.splitButton,
- type = this.type,
- dropdownSize = this.dropdownSize;
- var handleMainButtonClick = function handleMainButtonClick(event) {
- _this4.$emit('click', event);
- hide();
- };
- var triggerElm = !splitButton ? this.$slots.default : h('el-button-group', [h(
- 'el-button',
- {
- attrs: { type: type, size: dropdownSize },
- nativeOn: {
- 'click': handleMainButtonClick
- }
- },
- [this.$slots.default]
- ), h(
- 'el-button',
- { ref: 'trigger', attrs: { type: type, size: dropdownSize },
- 'class': 'el-dropdown__caret-button' },
- [h('i', { 'class': 'el-dropdown__icon el-icon-arrow-down' })]
- )]);
- return h(
- 'div',
- { 'class': 'el-dropdown', directives: [{
- name: 'clickoutside',
- value: hide
- }]
- },
- [triggerElm, this.$slots.dropdown]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_dropdownvue_type_script_lang_js_ = (dropdownvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vue
- var dropdown_render, dropdown_staticRenderFns
- /* normalize component */
- var dropdown_component = normalizeComponent(
- src_dropdownvue_type_script_lang_js_,
- dropdown_render,
- dropdown_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var dropdown_api; }
- dropdown_component.options.__file = "packages/dropdown/src/dropdown.vue"
- /* harmony default export */ var dropdown = (dropdown_component.exports);
- // CONCATENATED MODULE: ./packages/dropdown/index.js
- /* istanbul ignore next */
- dropdown.install = function (Vue) {
- Vue.component(dropdown.name, dropdown);
- };
- /* harmony default export */ var packages_dropdown = (dropdown);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-menu.vue?vue&type=template&id=0da6b714&
- var dropdown_menuvue_type_template_id_0da6b714_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- { attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
- [
- _c(
- "ul",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showPopper,
- expression: "showPopper"
- }
- ],
- staticClass: "el-dropdown-menu el-popper",
- class: [_vm.size && "el-dropdown-menu--" + _vm.size]
- },
- [_vm._t("default")],
- 2
- )
- ]
- )
- }
- var dropdown_menuvue_type_template_id_0da6b714_staticRenderFns = []
- dropdown_menuvue_type_template_id_0da6b714_render._withStripped = true
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue?vue&type=template&id=0da6b714&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-menu.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var dropdown_menuvue_type_script_lang_js_ = ({
- name: 'ElDropdownMenu',
- componentName: 'ElDropdownMenu',
- mixins: [vue_popper_default.a],
- props: {
- visibleArrow: {
- type: Boolean,
- default: true
- },
- arrowOffset: {
- type: Number,
- default: 0
- }
- },
- data: function data() {
- return {
- size: this.dropdown.dropdownSize
- };
- },
- inject: ['dropdown'],
- created: function created() {
- var _this = this;
- this.$on('updatePopper', function () {
- if (_this.showPopper) _this.updatePopper();
- });
- this.$on('visible', function (val) {
- _this.showPopper = val;
- });
- },
- mounted: function mounted() {
- this.dropdown.popperElm = this.popperElm = this.$el;
- this.referenceElm = this.dropdown.$el;
- // compatible with 2.6 new v-slot syntax
- // issue link https://github.com/ElemeFE/element/issues/14345
- this.dropdown.initDomOperation();
- },
- watch: {
- 'dropdown.placement': {
- immediate: true,
- handler: function handler(val) {
- this.currentPlacement = val;
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_dropdown_menuvue_type_script_lang_js_ = (dropdown_menuvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue
- /* normalize component */
- var dropdown_menu_component = normalizeComponent(
- src_dropdown_menuvue_type_script_lang_js_,
- dropdown_menuvue_type_template_id_0da6b714_render,
- dropdown_menuvue_type_template_id_0da6b714_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var dropdown_menu_api; }
- dropdown_menu_component.options.__file = "packages/dropdown/src/dropdown-menu.vue"
- /* harmony default export */ var dropdown_menu = (dropdown_menu_component.exports);
- // CONCATENATED MODULE: ./packages/dropdown-menu/index.js
- /* istanbul ignore next */
- dropdown_menu.install = function (Vue) {
- Vue.component(dropdown_menu.name, dropdown_menu);
- };
- /* harmony default export */ var packages_dropdown_menu = (dropdown_menu);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-item.vue?vue&type=template&id=6359102a&
- var dropdown_itemvue_type_template_id_6359102a_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "li",
- {
- staticClass: "el-dropdown-menu__item",
- class: {
- "is-disabled": _vm.disabled,
- "el-dropdown-menu__item--divided": _vm.divided
- },
- attrs: {
- "aria-disabled": _vm.disabled,
- tabindex: _vm.disabled ? null : -1
- },
- on: { click: _vm.handleClick }
- },
- [_vm.icon ? _c("i", { class: _vm.icon }) : _vm._e(), _vm._t("default")],
- 2
- )
- }
- var dropdown_itemvue_type_template_id_6359102a_staticRenderFns = []
- dropdown_itemvue_type_template_id_6359102a_render._withStripped = true
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue?vue&type=template&id=6359102a&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var dropdown_itemvue_type_script_lang_js_ = ({
- name: 'ElDropdownItem',
- mixins: [emitter_default.a],
- props: {
- command: {},
- disabled: Boolean,
- divided: Boolean,
- icon: String
- },
- methods: {
- handleClick: function handleClick(e) {
- this.dispatch('ElDropdown', 'menu-item-click', [this.command, this]);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_dropdown_itemvue_type_script_lang_js_ = (dropdown_itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue
- /* normalize component */
- var dropdown_item_component = normalizeComponent(
- src_dropdown_itemvue_type_script_lang_js_,
- dropdown_itemvue_type_template_id_6359102a_render,
- dropdown_itemvue_type_template_id_6359102a_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var dropdown_item_api; }
- dropdown_item_component.options.__file = "packages/dropdown/src/dropdown-item.vue"
- /* harmony default export */ var dropdown_item = (dropdown_item_component.exports);
- // CONCATENATED MODULE: ./packages/dropdown-item/index.js
- /* istanbul ignore next */
- dropdown_item.install = function (Vue) {
- Vue.component(dropdown_item.name, dropdown_item);
- };
- /* harmony default export */ var packages_dropdown_item = (dropdown_item);
- // CONCATENATED MODULE: ./src/utils/aria-utils.js
- var aria = aria || {};
- aria.Utils = aria.Utils || {};
- /**
- * @desc Set focus on descendant nodes until the first focusable element is
- * found.
- * @param element
- * DOM node for which to find the first focusable descendant.
- * @returns
- * true if a focusable element is found and focus is set.
- */
- aria.Utils.focusFirstDescendant = function (element) {
- for (var i = 0; i < element.childNodes.length; i++) {
- var child = element.childNodes[i];
- if (aria.Utils.attemptFocus(child) || aria.Utils.focusFirstDescendant(child)) {
- return true;
- }
- }
- return false;
- };
- /**
- * @desc Find the last descendant node that is focusable.
- * @param element
- * DOM node for which to find the last focusable descendant.
- * @returns
- * true if a focusable element is found and focus is set.
- */
- aria.Utils.focusLastDescendant = function (element) {
- for (var i = element.childNodes.length - 1; i >= 0; i--) {
- var child = element.childNodes[i];
- if (aria.Utils.attemptFocus(child) || aria.Utils.focusLastDescendant(child)) {
- return true;
- }
- }
- return false;
- };
- /**
- * @desc Set Attempt to set focus on the current node.
- * @param element
- * The node to attempt to focus on.
- * @returns
- * true if element is focused.
- */
- aria.Utils.attemptFocus = function (element) {
- if (!aria.Utils.isFocusable(element)) {
- return false;
- }
- aria.Utils.IgnoreUtilFocusChanges = true;
- try {
- element.focus();
- } catch (e) {}
- aria.Utils.IgnoreUtilFocusChanges = false;
- return document.activeElement === element;
- };
- aria.Utils.isFocusable = function (element) {
- if (element.tabIndex > 0 || element.tabIndex === 0 && element.getAttribute('tabIndex') !== null) {
- return true;
- }
- if (element.disabled) {
- return false;
- }
- switch (element.nodeName) {
- case 'A':
- return !!element.href && element.rel !== 'ignore';
- case 'INPUT':
- return element.type !== 'hidden' && element.type !== 'file';
- case 'BUTTON':
- case 'SELECT':
- case 'TEXTAREA':
- return true;
- default:
- return false;
- }
- };
- /**
- * 触发一个事件
- * mouseenter, mouseleave, mouseover, keyup, change, click 等
- * @param {Element} elm
- * @param {String} name
- * @param {*} opts
- */
- aria.Utils.triggerEvent = function (elm, name) {
- var eventName = void 0;
- if (/^mouse|click/.test(name)) {
- eventName = 'MouseEvents';
- } else if (/^key/.test(name)) {
- eventName = 'KeyboardEvent';
- } else {
- eventName = 'HTMLEvents';
- }
- var evt = document.createEvent(eventName);
- for (var _len = arguments.length, opts = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
- opts[_key - 2] = arguments[_key];
- }
- evt.initEvent.apply(evt, [name].concat(opts));
- elm.dispatchEvent ? elm.dispatchEvent(evt) : elm.fireEvent('on' + name, evt);
- return elm;
- };
- aria.Utils.keys = {
- tab: 9,
- enter: 13,
- space: 32,
- left: 37,
- up: 38,
- right: 39,
- down: 40
- };
- /* harmony default export */ var aria_utils = (aria.Utils);
- // CONCATENATED MODULE: ./src/utils/menu/aria-submenu.js
- var SubMenu = function SubMenu(parent, domNode) {
- this.domNode = domNode;
- this.parent = parent;
- this.subMenuItems = [];
- this.subIndex = 0;
- this.init();
- };
- SubMenu.prototype.init = function () {
- this.subMenuItems = this.domNode.querySelectorAll('li');
- this.addListeners();
- };
- SubMenu.prototype.gotoSubIndex = function (idx) {
- if (idx === this.subMenuItems.length) {
- idx = 0;
- } else if (idx < 0) {
- idx = this.subMenuItems.length - 1;
- }
- this.subMenuItems[idx].focus();
- this.subIndex = idx;
- };
- SubMenu.prototype.addListeners = function () {
- var _this = this;
- var keys = aria_utils.keys;
- var parentNode = this.parent.domNode;
- Array.prototype.forEach.call(this.subMenuItems, function (el) {
- el.addEventListener('keydown', function (event) {
- var prevDef = false;
- switch (event.keyCode) {
- case keys.down:
- _this.gotoSubIndex(_this.subIndex + 1);
- prevDef = true;
- break;
- case keys.up:
- _this.gotoSubIndex(_this.subIndex - 1);
- prevDef = true;
- break;
- case keys.tab:
- aria_utils.triggerEvent(parentNode, 'mouseleave');
- break;
- case keys.enter:
- case keys.space:
- prevDef = true;
- event.currentTarget.click();
- break;
- }
- if (prevDef) {
- event.preventDefault();
- event.stopPropagation();
- }
- return false;
- });
- });
- };
- /* harmony default export */ var aria_submenu = (SubMenu);
- // CONCATENATED MODULE: ./src/utils/menu/aria-menuitem.js
- var MenuItem = function MenuItem(domNode) {
- this.domNode = domNode;
- this.submenu = null;
- this.init();
- };
- MenuItem.prototype.init = function () {
- this.domNode.setAttribute('tabindex', '0');
- var menuChild = this.domNode.querySelector('.el-menu');
- if (menuChild) {
- this.submenu = new aria_submenu(this, menuChild);
- }
- this.addListeners();
- };
- MenuItem.prototype.addListeners = function () {
- var _this = this;
- var keys = aria_utils.keys;
- this.domNode.addEventListener('keydown', function (event) {
- var prevDef = false;
- switch (event.keyCode) {
- case keys.down:
- aria_utils.triggerEvent(event.currentTarget, 'mouseenter');
- _this.submenu && _this.submenu.gotoSubIndex(0);
- prevDef = true;
- break;
- case keys.up:
- aria_utils.triggerEvent(event.currentTarget, 'mouseenter');
- _this.submenu && _this.submenu.gotoSubIndex(_this.submenu.subMenuItems.length - 1);
- prevDef = true;
- break;
- case keys.tab:
- aria_utils.triggerEvent(event.currentTarget, 'mouseleave');
- break;
- case keys.enter:
- case keys.space:
- prevDef = true;
- event.currentTarget.click();
- break;
- }
- if (prevDef) {
- event.preventDefault();
- }
- });
- };
- /* harmony default export */ var aria_menuitem = (MenuItem);
- // CONCATENATED MODULE: ./src/utils/menu/aria-menubar.js
- var Menu = function Menu(domNode) {
- this.domNode = domNode;
- this.init();
- };
- Menu.prototype.init = function () {
- var menuChildren = this.domNode.childNodes;
- [].filter.call(menuChildren, function (child) {
- return child.nodeType === 1;
- }).forEach(function (child) {
- new aria_menuitem(child); // eslint-disable-line
- });
- };
- /* harmony default export */ var aria_menubar = (Menu);
- // EXTERNAL MODULE: external "element-ui/lib/utils/dom"
- var dom_ = __webpack_require__(1);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu.vue?vue&type=script&lang=js&
- /* harmony default export */ var menuvue_type_script_lang_js_ = ({
- name: 'ElMenu',
- render: function render(h) {
- var component = h(
- 'ul',
- {
- attrs: {
- role: 'menubar'
- },
- key: +this.collapse,
- style: { backgroundColor: this.backgroundColor || '' },
- 'class': {
- 'el-menu--horizontal': this.mode === 'horizontal',
- 'el-menu--collapse': this.collapse,
- "el-menu": true
- }
- },
- [this.$slots.default]
- );
- if (this.collapseTransition) {
- return h('el-menu-collapse-transition', [component]);
- } else {
- return component;
- }
- },
- componentName: 'ElMenu',
- mixins: [emitter_default.a, migrating_default.a],
- provide: function provide() {
- return {
- rootMenu: this
- };
- },
- components: {
- 'el-menu-collapse-transition': {
- functional: true,
- render: function render(createElement, context) {
- var data = {
- props: {
- mode: 'out-in'
- },
- on: {
- beforeEnter: function beforeEnter(el) {
- el.style.opacity = 0.2;
- },
- enter: function enter(el) {
- Object(dom_["addClass"])(el, 'el-opacity-transition');
- el.style.opacity = 1;
- },
- afterEnter: function afterEnter(el) {
- Object(dom_["removeClass"])(el, 'el-opacity-transition');
- el.style.opacity = '';
- },
- beforeLeave: function beforeLeave(el) {
- if (!el.dataset) el.dataset = {};
- if (Object(dom_["hasClass"])(el, 'el-menu--collapse')) {
- Object(dom_["removeClass"])(el, 'el-menu--collapse');
- el.dataset.oldOverflow = el.style.overflow;
- el.dataset.scrollWidth = el.clientWidth;
- Object(dom_["addClass"])(el, 'el-menu--collapse');
- } else {
- Object(dom_["addClass"])(el, 'el-menu--collapse');
- el.dataset.oldOverflow = el.style.overflow;
- el.dataset.scrollWidth = el.clientWidth;
- Object(dom_["removeClass"])(el, 'el-menu--collapse');
- }
- el.style.width = el.scrollWidth + 'px';
- el.style.overflow = 'hidden';
- },
- leave: function leave(el) {
- Object(dom_["addClass"])(el, 'horizontal-collapse-transition');
- el.style.width = el.dataset.scrollWidth + 'px';
- }
- }
- };
- return createElement('transition', data, context.children);
- }
- }
- },
- props: {
- mode: {
- type: String,
- default: 'vertical'
- },
- defaultActive: {
- type: String,
- default: ''
- },
- defaultOpeneds: Array,
- uniqueOpened: Boolean,
- router: Boolean,
- menuTrigger: {
- type: String,
- default: 'hover'
- },
- collapse: Boolean,
- backgroundColor: String,
- textColor: String,
- activeTextColor: String,
- collapseTransition: {
- type: Boolean,
- default: true
- }
- },
- data: function data() {
- return {
- activeIndex: this.defaultActive,
- openedMenus: this.defaultOpeneds && !this.collapse ? this.defaultOpeneds.slice(0) : [],
- items: {},
- submenus: {}
- };
- },
- computed: {
- hoverBackground: function hoverBackground() {
- return this.backgroundColor ? this.mixColor(this.backgroundColor, 0.2) : '';
- },
- isMenuPopup: function isMenuPopup() {
- return this.mode === 'horizontal' || this.mode === 'vertical' && this.collapse;
- }
- },
- watch: {
- defaultActive: function defaultActive(value) {
- if (!this.items[value]) {
- this.activeIndex = null;
- }
- this.updateActiveIndex(value);
- },
- defaultOpeneds: function defaultOpeneds(value) {
- if (!this.collapse) {
- this.openedMenus = value;
- }
- },
- collapse: function collapse(value) {
- if (value) this.openedMenus = [];
- this.broadcast('ElSubmenu', 'toggle-collapse', value);
- }
- },
- methods: {
- updateActiveIndex: function updateActiveIndex(val) {
- var item = this.items[val] || this.items[this.activeIndex] || this.items[this.defaultActive];
- if (item) {
- this.activeIndex = item.index;
- this.initOpenedMenu();
- } else {
- this.activeIndex = null;
- }
- },
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'theme': 'theme is removed.'
- }
- };
- },
- getColorChannels: function getColorChannels(color) {
- color = color.replace('#', '');
- if (/^[0-9a-fA-F]{3}$/.test(color)) {
- color = color.split('');
- for (var i = 2; i >= 0; i--) {
- color.splice(i, 0, color[i]);
- }
- color = color.join('');
- }
- if (/^[0-9a-fA-F]{6}$/.test(color)) {
- return {
- red: parseInt(color.slice(0, 2), 16),
- green: parseInt(color.slice(2, 4), 16),
- blue: parseInt(color.slice(4, 6), 16)
- };
- } else {
- return {
- red: 255,
- green: 255,
- blue: 255
- };
- }
- },
- mixColor: function mixColor(color, percent) {
- var _getColorChannels = this.getColorChannels(color),
- red = _getColorChannels.red,
- green = _getColorChannels.green,
- blue = _getColorChannels.blue;
- if (percent > 0) {
- // shade given color
- red *= 1 - percent;
- green *= 1 - percent;
- blue *= 1 - percent;
- } else {
- // tint given color
- red += (255 - red) * percent;
- green += (255 - green) * percent;
- blue += (255 - blue) * percent;
- }
- return 'rgb(' + Math.round(red) + ', ' + Math.round(green) + ', ' + Math.round(blue) + ')';
- },
- addItem: function addItem(item) {
- this.$set(this.items, item.index, item);
- },
- removeItem: function removeItem(item) {
- delete this.items[item.index];
- },
- addSubmenu: function addSubmenu(item) {
- this.$set(this.submenus, item.index, item);
- },
- removeSubmenu: function removeSubmenu(item) {
- delete this.submenus[item.index];
- },
- openMenu: function openMenu(index, indexPath) {
- var openedMenus = this.openedMenus;
- if (openedMenus.indexOf(index) !== -1) return;
- // 将不在该菜单路径下的其余菜单收起
- // collapse all menu that are not under current menu item
- if (this.uniqueOpened) {
- this.openedMenus = openedMenus.filter(function (index) {
- return indexPath.indexOf(index) !== -1;
- });
- }
- this.openedMenus.push(index);
- },
- closeMenu: function closeMenu(index) {
- var i = this.openedMenus.indexOf(index);
- if (i !== -1) {
- this.openedMenus.splice(i, 1);
- }
- },
- handleSubmenuClick: function handleSubmenuClick(submenu) {
- var index = submenu.index,
- indexPath = submenu.indexPath;
- var isOpened = this.openedMenus.indexOf(index) !== -1;
- if (isOpened) {
- this.closeMenu(index);
- this.$emit('close', index, indexPath);
- } else {
- this.openMenu(index, indexPath);
- this.$emit('open', index, indexPath);
- }
- },
- handleItemClick: function handleItemClick(item) {
- var _this = this;
- var index = item.index,
- indexPath = item.indexPath;
- var oldActiveIndex = this.activeIndex;
- var hasIndex = item.index !== null;
- if (hasIndex) {
- this.activeIndex = item.index;
- }
- this.$emit('select', index, indexPath, item);
- if (this.mode === 'horizontal' || this.collapse) {
- this.openedMenus = [];
- }
- if (this.router && hasIndex) {
- this.routeToItem(item, function (error) {
- _this.activeIndex = oldActiveIndex;
- if (error) console.error(error);
- });
- }
- },
- // 初始化展开菜单
- // initialize opened menu
- initOpenedMenu: function initOpenedMenu() {
- var _this2 = this;
- var index = this.activeIndex;
- var activeItem = this.items[index];
- if (!activeItem || this.mode === 'horizontal' || this.collapse) return;
- var indexPath = activeItem.indexPath;
- // 展开该菜单项的路径上所有子菜单
- // expand all submenus of the menu item
- indexPath.forEach(function (index) {
- var submenu = _this2.submenus[index];
- submenu && _this2.openMenu(index, submenu.indexPath);
- });
- },
- routeToItem: function routeToItem(item, onError) {
- var route = item.route || item.index;
- try {
- this.$router.push(route, function () {}, onError);
- } catch (e) {
- console.error(e);
- }
- },
- open: function open(index) {
- var _this3 = this;
- var indexPath = this.submenus[index.toString()].indexPath;
- indexPath.forEach(function (i) {
- return _this3.openMenu(i, indexPath);
- });
- },
- close: function close(index) {
- this.closeMenu(index);
- }
- },
- mounted: function mounted() {
- this.initOpenedMenu();
- this.$on('item-click', this.handleItemClick);
- this.$on('submenu-click', this.handleSubmenuClick);
- if (this.mode === 'horizontal') {
- new aria_menubar(this.$el); // eslint-disable-line
- }
- this.$watch('items', this.updateActiveIndex);
- }
- });
- // CONCATENATED MODULE: ./packages/menu/src/menu.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_menuvue_type_script_lang_js_ = (menuvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/menu/src/menu.vue
- var menu_render, menu_staticRenderFns
- /* normalize component */
- var menu_component = normalizeComponent(
- src_menuvue_type_script_lang_js_,
- menu_render,
- menu_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var menu_api; }
- menu_component.options.__file = "packages/menu/src/menu.vue"
- /* harmony default export */ var src_menu = (menu_component.exports);
- // CONCATENATED MODULE: ./packages/menu/index.js
- /* istanbul ignore next */
- src_menu.install = function (Vue) {
- Vue.component(src_menu.name, src_menu);
- };
- /* harmony default export */ var packages_menu = (src_menu);
- // EXTERNAL MODULE: external "element-ui/lib/transitions/collapse-transition"
- var collapse_transition_ = __webpack_require__(18);
- var collapse_transition_default = /*#__PURE__*/__webpack_require__.n(collapse_transition_);
- // CONCATENATED MODULE: ./packages/menu/src/menu-mixin.js
- /* harmony default export */ var menu_mixin = ({
- inject: ['rootMenu'],
- computed: {
- indexPath: function indexPath() {
- var path = [this.index];
- var parent = this.$parent;
- while (parent.$options.componentName !== 'ElMenu') {
- if (parent.index) {
- path.unshift(parent.index);
- }
- parent = parent.$parent;
- }
- return path;
- },
- parentMenu: function parentMenu() {
- var parent = this.$parent;
- while (parent && ['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1) {
- parent = parent.$parent;
- }
- return parent;
- },
- paddingStyle: function paddingStyle() {
- if (this.rootMenu.mode !== 'vertical') return {};
- var padding = 20;
- var parent = this.$parent;
- if (this.rootMenu.collapse) {
- padding = 20;
- } else {
- while (parent && parent.$options.componentName !== 'ElMenu') {
- if (parent.$options.componentName === 'ElSubmenu') {
- padding += 20;
- }
- parent = parent.$parent;
- }
- }
- return { paddingLeft: padding + 'px' };
- }
- }
- });
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/submenu.vue?vue&type=script&lang=js&
- var poperMixins = {
- props: {
- transformOrigin: {
- type: [Boolean, String],
- default: false
- },
- offset: vue_popper_default.a.props.offset,
- boundariesPadding: vue_popper_default.a.props.boundariesPadding,
- popperOptions: vue_popper_default.a.props.popperOptions
- },
- data: vue_popper_default.a.data,
- methods: vue_popper_default.a.methods,
- beforeDestroy: vue_popper_default.a.beforeDestroy,
- deactivated: vue_popper_default.a.deactivated
- };
- /* harmony default export */ var submenuvue_type_script_lang_js_ = ({
- name: 'ElSubmenu',
- componentName: 'ElSubmenu',
- mixins: [menu_mixin, emitter_default.a, poperMixins],
- components: { ElCollapseTransition: collapse_transition_default.a },
- props: {
- index: {
- type: String,
- required: true
- },
- showTimeout: {
- type: Number,
- default: 300
- },
- hideTimeout: {
- type: Number,
- default: 300
- },
- popperClass: String,
- disabled: Boolean,
- popperAppendToBody: {
- type: Boolean,
- default: undefined
- }
- },
- data: function data() {
- return {
- popperJS: null,
- timeout: null,
- items: {},
- submenus: {},
- mouseInChild: false
- };
- },
- watch: {
- opened: function opened(val) {
- var _this = this;
- if (this.isMenuPopup) {
- this.$nextTick(function (_) {
- _this.updatePopper();
- });
- }
- }
- },
- computed: {
- // popper option
- appendToBody: function appendToBody() {
- return this.popperAppendToBody === undefined ? this.isFirstLevel : this.popperAppendToBody;
- },
- menuTransitionName: function menuTransitionName() {
- return this.rootMenu.collapse ? 'el-zoom-in-left' : 'el-zoom-in-top';
- },
- opened: function opened() {
- return this.rootMenu.openedMenus.indexOf(this.index) > -1;
- },
- active: function active() {
- var isActive = false;
- var submenus = this.submenus;
- var items = this.items;
- Object.keys(items).forEach(function (index) {
- if (items[index].active) {
- isActive = true;
- }
- });
- Object.keys(submenus).forEach(function (index) {
- if (submenus[index].active) {
- isActive = true;
- }
- });
- return isActive;
- },
- hoverBackground: function hoverBackground() {
- return this.rootMenu.hoverBackground;
- },
- backgroundColor: function backgroundColor() {
- return this.rootMenu.backgroundColor || '';
- },
- activeTextColor: function activeTextColor() {
- return this.rootMenu.activeTextColor || '';
- },
- textColor: function textColor() {
- return this.rootMenu.textColor || '';
- },
- mode: function mode() {
- return this.rootMenu.mode;
- },
- isMenuPopup: function isMenuPopup() {
- return this.rootMenu.isMenuPopup;
- },
- titleStyle: function titleStyle() {
- if (this.mode !== 'horizontal') {
- return {
- color: this.textColor
- };
- }
- return {
- borderBottomColor: this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent',
- color: this.active ? this.activeTextColor : this.textColor
- };
- },
- isFirstLevel: function isFirstLevel() {
- var isFirstLevel = true;
- var parent = this.$parent;
- while (parent && parent !== this.rootMenu) {
- if (['ElSubmenu', 'ElMenuItemGroup'].indexOf(parent.$options.componentName) > -1) {
- isFirstLevel = false;
- break;
- } else {
- parent = parent.$parent;
- }
- }
- return isFirstLevel;
- }
- },
- methods: {
- handleCollapseToggle: function handleCollapseToggle(value) {
- if (value) {
- this.initPopper();
- } else {
- this.doDestroy();
- }
- },
- addItem: function addItem(item) {
- this.$set(this.items, item.index, item);
- },
- removeItem: function removeItem(item) {
- delete this.items[item.index];
- },
- addSubmenu: function addSubmenu(item) {
- this.$set(this.submenus, item.index, item);
- },
- removeSubmenu: function removeSubmenu(item) {
- delete this.submenus[item.index];
- },
- handleClick: function handleClick() {
- var rootMenu = this.rootMenu,
- disabled = this.disabled;
- if (rootMenu.menuTrigger === 'hover' && rootMenu.mode === 'horizontal' || rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
- return;
- }
- this.dispatch('ElMenu', 'submenu-click', this);
- },
- handleMouseenter: function handleMouseenter(event) {
- var _this2 = this;
- var showTimeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.showTimeout;
- if (!('ActiveXObject' in window) && event.type === 'focus' && !event.relatedTarget) {
- return;
- }
- var rootMenu = this.rootMenu,
- disabled = this.disabled;
- if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
- return;
- }
- this.dispatch('ElSubmenu', 'mouse-enter-child');
- clearTimeout(this.timeout);
- this.timeout = setTimeout(function () {
- _this2.rootMenu.openMenu(_this2.index, _this2.indexPath);
- }, showTimeout);
- },
- handleMouseleave: function handleMouseleave() {
- var _this3 = this;
- var rootMenu = this.rootMenu;
- if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical') {
- return;
- }
- this.dispatch('ElSubmenu', 'mouse-leave-child');
- clearTimeout(this.timeout);
- this.timeout = setTimeout(function () {
- !_this3.mouseInChild && _this3.rootMenu.closeMenu(_this3.index);
- }, this.hideTimeout);
- },
- handleTitleMouseenter: function handleTitleMouseenter() {
- if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
- var title = this.$refs['submenu-title'];
- title && (title.style.backgroundColor = this.rootMenu.hoverBackground);
- },
- handleTitleMouseleave: function handleTitleMouseleave() {
- if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
- var title = this.$refs['submenu-title'];
- title && (title.style.backgroundColor = this.rootMenu.backgroundColor || '');
- },
- updatePlacement: function updatePlacement() {
- this.currentPlacement = this.mode === 'horizontal' && this.isFirstLevel ? 'bottom-start' : 'right-start';
- },
- initPopper: function initPopper() {
- this.referenceElm = this.$el;
- this.popperElm = this.$refs.menu;
- this.updatePlacement();
- }
- },
- created: function created() {
- var _this4 = this;
- this.$on('toggle-collapse', this.handleCollapseToggle);
- this.$on('mouse-enter-child', function () {
- _this4.mouseInChild = true;
- clearTimeout(_this4.timeout);
- });
- this.$on('mouse-leave-child', function () {
- _this4.mouseInChild = false;
- clearTimeout(_this4.timeout);
- });
- },
- mounted: function mounted() {
- this.parentMenu.addSubmenu(this);
- this.rootMenu.addSubmenu(this);
- this.initPopper();
- },
- beforeDestroy: function beforeDestroy() {
- this.parentMenu.removeSubmenu(this);
- this.rootMenu.removeSubmenu(this);
- },
- render: function render(h) {
- var _this5 = this;
- var active = this.active,
- opened = this.opened,
- paddingStyle = this.paddingStyle,
- titleStyle = this.titleStyle,
- backgroundColor = this.backgroundColor,
- rootMenu = this.rootMenu,
- currentPlacement = this.currentPlacement,
- menuTransitionName = this.menuTransitionName,
- mode = this.mode,
- disabled = this.disabled,
- popperClass = this.popperClass,
- $slots = this.$slots,
- isFirstLevel = this.isFirstLevel;
- var popupMenu = h(
- 'transition',
- {
- attrs: { name: menuTransitionName }
- },
- [h(
- 'div',
- {
- ref: 'menu',
- directives: [{
- name: 'show',
- value: opened
- }],
- 'class': ['el-menu--' + mode, popperClass],
- on: {
- 'mouseenter': function mouseenter($event) {
- return _this5.handleMouseenter($event, 100);
- },
- 'mouseleave': this.handleMouseleave,
- 'focus': function focus($event) {
- return _this5.handleMouseenter($event, 100);
- }
- }
- },
- [h(
- 'ul',
- {
- attrs: {
- role: 'menu'
- },
- 'class': ['el-menu el-menu--popup', 'el-menu--popup-' + currentPlacement],
- style: { backgroundColor: rootMenu.backgroundColor || '' } },
- [$slots.default]
- )]
- )]
- );
- var inlineMenu = h('el-collapse-transition', [h(
- 'ul',
- {
- attrs: {
- role: 'menu'
- },
- 'class': 'el-menu el-menu--inline',
- directives: [{
- name: 'show',
- value: opened
- }],
- style: { backgroundColor: rootMenu.backgroundColor || '' } },
- [$slots.default]
- )]);
- var submenuTitleIcon = rootMenu.mode === 'horizontal' && isFirstLevel || rootMenu.mode === 'vertical' && !rootMenu.collapse ? 'el-icon-arrow-down' : 'el-icon-arrow-right';
- return h(
- 'li',
- {
- 'class': {
- 'el-submenu': true,
- 'is-active': active,
- 'is-opened': opened,
- 'is-disabled': disabled
- },
- attrs: { role: 'menuitem',
- 'aria-haspopup': 'true',
- 'aria-expanded': opened
- },
- on: {
- 'mouseenter': this.handleMouseenter,
- 'mouseleave': this.handleMouseleave,
- 'focus': this.handleMouseenter
- }
- },
- [h(
- 'div',
- {
- 'class': 'el-submenu__title',
- ref: 'submenu-title',
- on: {
- 'click': this.handleClick,
- 'mouseenter': this.handleTitleMouseenter,
- 'mouseleave': this.handleTitleMouseleave
- },
- style: [paddingStyle, titleStyle, { backgroundColor: backgroundColor }]
- },
- [$slots.title, h('i', { 'class': ['el-submenu__icon-arrow', submenuTitleIcon] })]
- ), this.isMenuPopup ? popupMenu : inlineMenu]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/menu/src/submenu.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_submenuvue_type_script_lang_js_ = (submenuvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/menu/src/submenu.vue
- var submenu_render, submenu_staticRenderFns
- /* normalize component */
- var submenu_component = normalizeComponent(
- src_submenuvue_type_script_lang_js_,
- submenu_render,
- submenu_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var submenu_api; }
- submenu_component.options.__file = "packages/menu/src/submenu.vue"
- /* harmony default export */ var submenu = (submenu_component.exports);
- // CONCATENATED MODULE: ./packages/submenu/index.js
- /* istanbul ignore next */
- submenu.install = function (Vue) {
- Vue.component(submenu.name, submenu);
- };
- /* harmony default export */ var packages_submenu = (submenu);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item.vue?vue&type=template&id=2a5dbfea&
- var menu_itemvue_type_template_id_2a5dbfea_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "li",
- {
- staticClass: "el-menu-item",
- class: {
- "is-active": _vm.active,
- "is-disabled": _vm.disabled
- },
- style: [
- _vm.paddingStyle,
- _vm.itemStyle,
- { backgroundColor: _vm.backgroundColor }
- ],
- attrs: { role: "menuitem", tabindex: "-1" },
- on: {
- click: _vm.handleClick,
- mouseenter: _vm.onMouseEnter,
- focus: _vm.onMouseEnter,
- blur: _vm.onMouseLeave,
- mouseleave: _vm.onMouseLeave
- }
- },
- [
- _vm.parentMenu.$options.componentName === "ElMenu" &&
- _vm.rootMenu.collapse &&
- _vm.$slots.title
- ? _c("el-tooltip", { attrs: { effect: "dark", placement: "right" } }, [
- _c(
- "div",
- { attrs: { slot: "content" }, slot: "content" },
- [_vm._t("title")],
- 2
- ),
- _c(
- "div",
- {
- staticStyle: {
- position: "absolute",
- left: "0",
- top: "0",
- height: "100%",
- width: "100%",
- display: "inline-block",
- "box-sizing": "border-box",
- padding: "0 20px"
- }
- },
- [_vm._t("default")],
- 2
- )
- ])
- : [_vm._t("default"), _vm._t("title")]
- ],
- 2
- )
- }
- var menu_itemvue_type_template_id_2a5dbfea_staticRenderFns = []
- menu_itemvue_type_template_id_2a5dbfea_render._withStripped = true
- // CONCATENATED MODULE: ./packages/menu/src/menu-item.vue?vue&type=template&id=2a5dbfea&
- // EXTERNAL MODULE: external "element-ui/lib/tooltip"
- var tooltip_ = __webpack_require__(22);
- var tooltip_default = /*#__PURE__*/__webpack_require__.n(tooltip_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var menu_itemvue_type_script_lang_js_ = ({
- name: 'ElMenuItem',
- componentName: 'ElMenuItem',
- mixins: [menu_mixin, emitter_default.a],
- components: { ElTooltip: tooltip_default.a },
- props: {
- index: {
- default: null,
- validator: function validator(val) {
- return typeof val === 'string' || val === null;
- }
- },
- route: [String, Object],
- disabled: Boolean
- },
- computed: {
- active: function active() {
- return this.index === this.rootMenu.activeIndex;
- },
- hoverBackground: function hoverBackground() {
- return this.rootMenu.hoverBackground;
- },
- backgroundColor: function backgroundColor() {
- return this.rootMenu.backgroundColor || '';
- },
- activeTextColor: function activeTextColor() {
- return this.rootMenu.activeTextColor || '';
- },
- textColor: function textColor() {
- return this.rootMenu.textColor || '';
- },
- mode: function mode() {
- return this.rootMenu.mode;
- },
- itemStyle: function itemStyle() {
- var style = {
- color: this.active ? this.activeTextColor : this.textColor
- };
- if (this.mode === 'horizontal' && !this.isNested) {
- style.borderBottomColor = this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent';
- }
- return style;
- },
- isNested: function isNested() {
- return this.parentMenu !== this.rootMenu;
- }
- },
- methods: {
- onMouseEnter: function onMouseEnter() {
- if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
- this.$el.style.backgroundColor = this.hoverBackground;
- },
- onMouseLeave: function onMouseLeave() {
- if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
- this.$el.style.backgroundColor = this.backgroundColor;
- },
- handleClick: function handleClick() {
- if (!this.disabled) {
- this.dispatch('ElMenu', 'item-click', this);
- this.$emit('click', this);
- }
- }
- },
- mounted: function mounted() {
- this.parentMenu.addItem(this);
- this.rootMenu.addItem(this);
- },
- beforeDestroy: function beforeDestroy() {
- this.parentMenu.removeItem(this);
- this.rootMenu.removeItem(this);
- }
- });
- // CONCATENATED MODULE: ./packages/menu/src/menu-item.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_menu_itemvue_type_script_lang_js_ = (menu_itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/menu/src/menu-item.vue
- /* normalize component */
- var menu_item_component = normalizeComponent(
- src_menu_itemvue_type_script_lang_js_,
- menu_itemvue_type_template_id_2a5dbfea_render,
- menu_itemvue_type_template_id_2a5dbfea_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var menu_item_api; }
- menu_item_component.options.__file = "packages/menu/src/menu-item.vue"
- /* harmony default export */ var menu_item = (menu_item_component.exports);
- // CONCATENATED MODULE: ./packages/menu-item/index.js
- /* istanbul ignore next */
- menu_item.install = function (Vue) {
- Vue.component(menu_item.name, menu_item);
- };
- /* harmony default export */ var packages_menu_item = (menu_item);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item-group.vue?vue&type=template&id=543b7bdc&
- var menu_item_groupvue_type_template_id_543b7bdc_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("li", { staticClass: "el-menu-item-group" }, [
- _c(
- "div",
- {
- staticClass: "el-menu-item-group__title",
- style: { paddingLeft: _vm.levelPadding + "px" }
- },
- [!_vm.$slots.title ? [_vm._v(_vm._s(_vm.title))] : _vm._t("title")],
- 2
- ),
- _c("ul", [_vm._t("default")], 2)
- ])
- }
- var menu_item_groupvue_type_template_id_543b7bdc_staticRenderFns = []
- menu_item_groupvue_type_template_id_543b7bdc_render._withStripped = true
- // CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue?vue&type=template&id=543b7bdc&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item-group.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var menu_item_groupvue_type_script_lang_js_ = ({
- name: 'ElMenuItemGroup',
- componentName: 'ElMenuItemGroup',
- inject: ['rootMenu'],
- props: {
- title: {
- type: String
- }
- },
- data: function data() {
- return {
- paddingLeft: 20
- };
- },
- computed: {
- levelPadding: function levelPadding() {
- var padding = 20;
- var parent = this.$parent;
- if (this.rootMenu.collapse) return 20;
- while (parent && parent.$options.componentName !== 'ElMenu') {
- if (parent.$options.componentName === 'ElSubmenu') {
- padding += 20;
- }
- parent = parent.$parent;
- }
- return padding;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_menu_item_groupvue_type_script_lang_js_ = (menu_item_groupvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue
- /* normalize component */
- var menu_item_group_component = normalizeComponent(
- src_menu_item_groupvue_type_script_lang_js_,
- menu_item_groupvue_type_template_id_543b7bdc_render,
- menu_item_groupvue_type_template_id_543b7bdc_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var menu_item_group_api; }
- menu_item_group_component.options.__file = "packages/menu/src/menu-item-group.vue"
- /* harmony default export */ var menu_item_group = (menu_item_group_component.exports);
- // CONCATENATED MODULE: ./packages/menu-item-group/index.js
- /* istanbul ignore next */
- menu_item_group.install = function (Vue) {
- Vue.component(menu_item_group.name, menu_item_group);
- };
- /* harmony default export */ var packages_menu_item_group = (menu_item_group);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/input/src/input.vue?vue&type=template&id=343dd774&
- var inputvue_type_template_id_343dd774_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- class: [
- _vm.type === "textarea" ? "el-textarea" : "el-input",
- _vm.inputSize ? "el-input--" + _vm.inputSize : "",
- {
- "is-disabled": _vm.inputDisabled,
- "is-exceed": _vm.inputExceed,
- "el-input-group": _vm.$slots.prepend || _vm.$slots.append,
- "el-input-group--append": _vm.$slots.append,
- "el-input-group--prepend": _vm.$slots.prepend,
- "el-input--prefix": _vm.$slots.prefix || _vm.prefixIcon,
- "el-input--suffix":
- _vm.$slots.suffix ||
- _vm.suffixIcon ||
- _vm.clearable ||
- _vm.showPassword
- }
- ],
- on: {
- mouseenter: function($event) {
- _vm.hovering = true
- },
- mouseleave: function($event) {
- _vm.hovering = false
- }
- }
- },
- [
- _vm.type !== "textarea"
- ? [
- _vm.$slots.prepend
- ? _c(
- "div",
- { staticClass: "el-input-group__prepend" },
- [_vm._t("prepend")],
- 2
- )
- : _vm._e(),
- _vm.type !== "textarea"
- ? _c(
- "input",
- _vm._b(
- {
- ref: "input",
- staticClass: "el-input__inner",
- attrs: {
- tabindex: _vm.tabindex,
- type: _vm.showPassword
- ? _vm.passwordVisible
- ? "text"
- : "password"
- : _vm.type,
- disabled: _vm.inputDisabled,
- readonly: _vm.readonly,
- autocomplete: _vm.autoComplete || _vm.autocomplete,
- "aria-label": _vm.label
- },
- on: {
- compositionstart: _vm.handleCompositionStart,
- compositionend: _vm.handleCompositionEnd,
- input: _vm.handleInput,
- focus: _vm.handleFocus,
- blur: _vm.handleBlur,
- change: _vm.handleChange
- }
- },
- "input",
- _vm.$attrs,
- false
- )
- )
- : _vm._e(),
- _vm.$slots.prefix || _vm.prefixIcon
- ? _c(
- "span",
- { staticClass: "el-input__prefix" },
- [
- _vm._t("prefix"),
- _vm.prefixIcon
- ? _c("i", {
- staticClass: "el-input__icon",
- class: _vm.prefixIcon
- })
- : _vm._e()
- ],
- 2
- )
- : _vm._e(),
- _vm.getSuffixVisible()
- ? _c("span", { staticClass: "el-input__suffix" }, [
- _c(
- "span",
- { staticClass: "el-input__suffix-inner" },
- [
- !_vm.showClear ||
- !_vm.showPwdVisible ||
- !_vm.isWordLimitVisible
- ? [
- _vm._t("suffix"),
- _vm.suffixIcon
- ? _c("i", {
- staticClass: "el-input__icon",
- class: _vm.suffixIcon
- })
- : _vm._e()
- ]
- : _vm._e(),
- _vm.showClear
- ? _c("i", {
- staticClass:
- "el-input__icon el-icon-circle-close el-input__clear",
- on: { click: _vm.clear }
- })
- : _vm._e(),
- _vm.showPwdVisible
- ? _c("i", {
- staticClass:
- "el-input__icon el-icon-view el-input__clear",
- on: { click: _vm.handlePasswordVisible }
- })
- : _vm._e(),
- _vm.isWordLimitVisible
- ? _c("span", { staticClass: "el-input__count" }, [
- _c(
- "span",
- { staticClass: "el-input__count-inner" },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.textLength) +
- "/" +
- _vm._s(_vm.upperLimit) +
- "\n "
- )
- ]
- )
- ])
- : _vm._e()
- ],
- 2
- ),
- _vm.validateState
- ? _c("i", {
- staticClass: "el-input__icon",
- class: ["el-input__validateIcon", _vm.validateIcon]
- })
- : _vm._e()
- ])
- : _vm._e(),
- _vm.$slots.append
- ? _c(
- "div",
- { staticClass: "el-input-group__append" },
- [_vm._t("append")],
- 2
- )
- : _vm._e()
- ]
- : _c(
- "textarea",
- _vm._b(
- {
- ref: "textarea",
- staticClass: "el-textarea__inner",
- style: _vm.textareaStyle,
- attrs: {
- tabindex: _vm.tabindex,
- disabled: _vm.inputDisabled,
- readonly: _vm.readonly,
- autocomplete: _vm.autoComplete || _vm.autocomplete,
- "aria-label": _vm.label
- },
- on: {
- compositionstart: _vm.handleCompositionStart,
- compositionend: _vm.handleCompositionEnd,
- input: _vm.handleInput,
- focus: _vm.handleFocus,
- blur: _vm.handleBlur,
- change: _vm.handleChange
- }
- },
- "textarea",
- _vm.$attrs,
- false
- )
- ),
- _vm.isWordLimitVisible && _vm.type === "textarea"
- ? _c("span", { staticClass: "el-input__count" }, [
- _vm._v(_vm._s(_vm.textLength) + "/" + _vm._s(_vm.upperLimit))
- ])
- : _vm._e()
- ],
- 2
- )
- }
- var inputvue_type_template_id_343dd774_staticRenderFns = []
- inputvue_type_template_id_343dd774_render._withStripped = true
- // CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=template&id=343dd774&
- // CONCATENATED MODULE: ./packages/input/src/calcTextareaHeight.js
- var hiddenTextarea = void 0;
- var HIDDEN_STYLE = '\n height:0 !important;\n visibility:hidden !important;\n overflow:hidden !important;\n position:absolute !important;\n z-index:-1000 !important;\n top:0 !important;\n right:0 !important\n';
- var CONTEXT_STYLE = ['letter-spacing', 'line-height', 'padding-top', 'padding-bottom', 'font-family', 'font-weight', 'font-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-left', 'padding-right', 'border-width', 'box-sizing'];
- function calculateNodeStyling(targetElement) {
- var style = window.getComputedStyle(targetElement);
- var boxSizing = style.getPropertyValue('box-sizing');
- var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));
- var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));
- var contextStyle = CONTEXT_STYLE.map(function (name) {
- return name + ':' + style.getPropertyValue(name);
- }).join(';');
- return { contextStyle: contextStyle, paddingSize: paddingSize, borderSize: borderSize, boxSizing: boxSizing };
- }
- function calcTextareaHeight(targetElement) {
- var minRows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
- var maxRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
- if (!hiddenTextarea) {
- hiddenTextarea = document.createElement('textarea');
- document.body.appendChild(hiddenTextarea);
- }
- var _calculateNodeStyling = calculateNodeStyling(targetElement),
- paddingSize = _calculateNodeStyling.paddingSize,
- borderSize = _calculateNodeStyling.borderSize,
- boxSizing = _calculateNodeStyling.boxSizing,
- contextStyle = _calculateNodeStyling.contextStyle;
- hiddenTextarea.setAttribute('style', contextStyle + ';' + HIDDEN_STYLE);
- hiddenTextarea.value = targetElement.value || targetElement.placeholder || '';
- var height = hiddenTextarea.scrollHeight;
- var result = {};
- if (boxSizing === 'border-box') {
- height = height + borderSize;
- } else if (boxSizing === 'content-box') {
- height = height - paddingSize;
- }
- hiddenTextarea.value = '';
- var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;
- if (minRows !== null) {
- var minHeight = singleRowHeight * minRows;
- if (boxSizing === 'border-box') {
- minHeight = minHeight + paddingSize + borderSize;
- }
- height = Math.max(minHeight, height);
- result.minHeight = minHeight + 'px';
- }
- if (maxRows !== null) {
- var maxHeight = singleRowHeight * maxRows;
- if (boxSizing === 'border-box') {
- maxHeight = maxHeight + paddingSize + borderSize;
- }
- height = Math.min(maxHeight, height);
- }
- result.height = height + 'px';
- hiddenTextarea.parentNode && hiddenTextarea.parentNode.removeChild(hiddenTextarea);
- hiddenTextarea = null;
- return result;
- };
- // EXTERNAL MODULE: external "element-ui/lib/utils/merge"
- var merge_ = __webpack_require__(7);
- var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/input/src/input.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var inputvue_type_script_lang_js_ = ({
- name: 'ElInput',
- componentName: 'ElInput',
- mixins: [emitter_default.a, migrating_default.a],
- inheritAttrs: false,
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- data: function data() {
- return {
- textareaCalcStyle: {},
- hovering: false,
- focused: false,
- isComposing: false,
- passwordVisible: false
- };
- },
- props: {
- value: [String, Number],
- size: String,
- resize: String,
- form: String,
- disabled: Boolean,
- readonly: Boolean,
- type: {
- type: String,
- default: 'text'
- },
- autosize: {
- type: [Boolean, Object],
- default: false
- },
- autocomplete: {
- type: String,
- default: 'off'
- },
- /** @Deprecated in next major version */
- autoComplete: {
- type: String,
- validator: function validator(val) {
- false && false;
- return true;
- }
- },
- validateEvent: {
- type: Boolean,
- default: true
- },
- suffixIcon: String,
- prefixIcon: String,
- label: String,
- clearable: {
- type: Boolean,
- default: false
- },
- showPassword: {
- type: Boolean,
- default: false
- },
- showWordLimit: {
- type: Boolean,
- default: false
- },
- tabindex: String
- },
- computed: {
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- validateState: function validateState() {
- return this.elFormItem ? this.elFormItem.validateState : '';
- },
- needStatusIcon: function needStatusIcon() {
- return this.elForm ? this.elForm.statusIcon : false;
- },
- validateIcon: function validateIcon() {
- return {
- validating: 'el-icon-loading',
- success: 'el-icon-circle-check',
- error: 'el-icon-circle-close'
- }[this.validateState];
- },
- textareaStyle: function textareaStyle() {
- return merge_default()({}, this.textareaCalcStyle, { resize: this.resize });
- },
- inputSize: function inputSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- inputDisabled: function inputDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- },
- nativeInputValue: function nativeInputValue() {
- return this.value === null || this.value === undefined ? '' : String(this.value);
- },
- showClear: function showClear() {
- return this.clearable && !this.inputDisabled && !this.readonly && this.nativeInputValue && (this.focused || this.hovering);
- },
- showPwdVisible: function showPwdVisible() {
- return this.showPassword && !this.inputDisabled && !this.readonly && (!!this.nativeInputValue || this.focused);
- },
- isWordLimitVisible: function isWordLimitVisible() {
- return this.showWordLimit && this.$attrs.maxlength && (this.type === 'text' || this.type === 'textarea') && !this.inputDisabled && !this.readonly && !this.showPassword;
- },
- upperLimit: function upperLimit() {
- return this.$attrs.maxlength;
- },
- textLength: function textLength() {
- if (typeof this.value === 'number') {
- return String(this.value).length;
- }
- return (this.value || '').length;
- },
- inputExceed: function inputExceed() {
- // show exceed style if length of initial value greater then maxlength
- return this.isWordLimitVisible && this.textLength > this.upperLimit;
- }
- },
- watch: {
- value: function value(val) {
- this.$nextTick(this.resizeTextarea);
- if (this.validateEvent) {
- this.dispatch('ElFormItem', 'el.form.change', [val]);
- }
- },
- // native input value is set explicitly
- // do not use v-model / :value in template
- // see: https://github.com/ElemeFE/element/issues/14521
- nativeInputValue: function nativeInputValue() {
- this.setNativeInputValue();
- },
- // when change between <input> and <textarea>,
- // update DOM dependent value and styles
- // https://github.com/ElemeFE/element/issues/14857
- type: function type() {
- var _this = this;
- this.$nextTick(function () {
- _this.setNativeInputValue();
- _this.resizeTextarea();
- _this.updateIconOffset();
- });
- }
- },
- methods: {
- focus: function focus() {
- this.getInput().focus();
- },
- blur: function blur() {
- this.getInput().blur();
- },
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'icon': 'icon is removed, use suffix-icon / prefix-icon instead.',
- 'on-icon-click': 'on-icon-click is removed.'
- },
- events: {
- 'click': 'click is removed.'
- }
- };
- },
- handleBlur: function handleBlur(event) {
- this.focused = false;
- this.$emit('blur', event);
- if (this.validateEvent) {
- this.dispatch('ElFormItem', 'el.form.blur', [this.value]);
- }
- },
- select: function select() {
- this.getInput().select();
- },
- resizeTextarea: function resizeTextarea() {
- if (this.$isServer) return;
- var autosize = this.autosize,
- type = this.type;
- if (type !== 'textarea') return;
- if (!autosize) {
- this.textareaCalcStyle = {
- minHeight: calcTextareaHeight(this.$refs.textarea).minHeight
- };
- return;
- }
- var minRows = autosize.minRows;
- var maxRows = autosize.maxRows;
- this.textareaCalcStyle = calcTextareaHeight(this.$refs.textarea, minRows, maxRows);
- },
- setNativeInputValue: function setNativeInputValue() {
- var input = this.getInput();
- if (!input) return;
- if (input.value === this.nativeInputValue) return;
- input.value = this.nativeInputValue;
- },
- handleFocus: function handleFocus(event) {
- this.focused = true;
- this.$emit('focus', event);
- },
- handleCompositionStart: function handleCompositionStart() {
- this.isComposing = true;
- },
- handleCompositionEnd: function handleCompositionEnd(event) {
- this.isComposing = false;
- this.handleInput(event);
- },
- handleInput: function handleInput(event) {
- // should not emit input during composition
- // see: https://github.com/ElemeFE/element/issues/10516
- if (this.isComposing) return;
- // hack for https://github.com/ElemeFE/element/issues/8548
- // should remove the following line when we don't support IE
- if (event.target.value === this.nativeInputValue) return;
- this.$emit('input', event.target.value);
- // ensure native input value is controlled
- // see: https://github.com/ElemeFE/element/issues/12850
- this.$nextTick(this.setNativeInputValue);
- },
- handleChange: function handleChange(event) {
- this.$emit('change', event.target.value);
- },
- calcIconOffset: function calcIconOffset(place) {
- var elList = [].slice.call(this.$el.querySelectorAll('.el-input__' + place) || []);
- if (!elList.length) return;
- var el = null;
- for (var i = 0; i < elList.length; i++) {
- if (elList[i].parentNode === this.$el) {
- el = elList[i];
- break;
- }
- }
- if (!el) return;
- var pendantMap = {
- suffix: 'append',
- prefix: 'prepend'
- };
- var pendant = pendantMap[place];
- if (this.$slots[pendant]) {
- el.style.transform = 'translateX(' + (place === 'suffix' ? '-' : '') + this.$el.querySelector('.el-input-group__' + pendant).offsetWidth + 'px)';
- } else {
- el.removeAttribute('style');
- }
- },
- updateIconOffset: function updateIconOffset() {
- this.calcIconOffset('prefix');
- this.calcIconOffset('suffix');
- },
- clear: function clear() {
- this.$emit('input', '');
- this.$emit('change', '');
- this.$emit('clear');
- },
- handlePasswordVisible: function handlePasswordVisible() {
- this.passwordVisible = !this.passwordVisible;
- this.focus();
- },
- getInput: function getInput() {
- return this.$refs.input || this.$refs.textarea;
- },
- getSuffixVisible: function getSuffixVisible() {
- return this.$slots.suffix || this.suffixIcon || this.showClear || this.showPassword || this.isWordLimitVisible || this.validateState && this.needStatusIcon;
- }
- },
- created: function created() {
- this.$on('inputSelect', this.select);
- },
- mounted: function mounted() {
- this.setNativeInputValue();
- this.resizeTextarea();
- this.updateIconOffset();
- },
- updated: function updated() {
- this.$nextTick(this.updateIconOffset);
- }
- });
- // CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_inputvue_type_script_lang_js_ = (inputvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/input/src/input.vue
- /* normalize component */
- var input_component = normalizeComponent(
- src_inputvue_type_script_lang_js_,
- inputvue_type_template_id_343dd774_render,
- inputvue_type_template_id_343dd774_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var input_api; }
- input_component.options.__file = "packages/input/src/input.vue"
- /* harmony default export */ var input = (input_component.exports);
- // CONCATENATED MODULE: ./packages/input/index.js
- /* istanbul ignore next */
- input.install = function (Vue) {
- Vue.component(input.name, input);
- };
- /* harmony default export */ var packages_input = (input);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/input-number/src/input-number.vue?vue&type=template&id=42f8cf66&
- var input_numbervue_type_template_id_42f8cf66_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- class: [
- "el-input-number",
- _vm.inputNumberSize ? "el-input-number--" + _vm.inputNumberSize : "",
- { "is-disabled": _vm.inputNumberDisabled },
- { "is-without-controls": !_vm.controls },
- { "is-controls-right": _vm.controlsAtRight }
- ],
- on: {
- dragstart: function($event) {
- $event.preventDefault()
- }
- }
- },
- [
- _vm.controls
- ? _c(
- "span",
- {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.decrease,
- expression: "decrease"
- }
- ],
- staticClass: "el-input-number__decrease",
- class: { "is-disabled": _vm.minDisabled },
- attrs: { role: "button" },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
- ) {
- return null
- }
- return _vm.decrease($event)
- }
- }
- },
- [
- _c("i", {
- class:
- "el-icon-" + (_vm.controlsAtRight ? "arrow-down" : "minus")
- })
- ]
- )
- : _vm._e(),
- _vm.controls
- ? _c(
- "span",
- {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.increase,
- expression: "increase"
- }
- ],
- staticClass: "el-input-number__increase",
- class: { "is-disabled": _vm.maxDisabled },
- attrs: { role: "button" },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
- ) {
- return null
- }
- return _vm.increase($event)
- }
- }
- },
- [
- _c("i", {
- class: "el-icon-" + (_vm.controlsAtRight ? "arrow-up" : "plus")
- })
- ]
- )
- : _vm._e(),
- _c("el-input", {
- ref: "input",
- attrs: {
- value: _vm.displayValue,
- placeholder: _vm.placeholder,
- disabled: _vm.inputNumberDisabled,
- size: _vm.inputNumberSize,
- max: _vm.max,
- min: _vm.min,
- name: _vm.name,
- label: _vm.label
- },
- on: {
- blur: _vm.handleBlur,
- focus: _vm.handleFocus,
- input: _vm.handleInput,
- change: _vm.handleInputChange
- },
- nativeOn: {
- keydown: [
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "up", 38, $event.key, ["Up", "ArrowUp"])
- ) {
- return null
- }
- $event.preventDefault()
- return _vm.increase($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "down", 40, $event.key, [
- "Down",
- "ArrowDown"
- ])
- ) {
- return null
- }
- $event.preventDefault()
- return _vm.decrease($event)
- }
- ]
- }
- })
- ],
- 1
- )
- }
- var input_numbervue_type_template_id_42f8cf66_staticRenderFns = []
- input_numbervue_type_template_id_42f8cf66_render._withStripped = true
- // CONCATENATED MODULE: ./packages/input-number/src/input-number.vue?vue&type=template&id=42f8cf66&
- // CONCATENATED MODULE: ./src/directives/repeat-click.js
- /* harmony default export */ var repeat_click = ({
- bind: function bind(el, binding, vnode) {
- var interval = null;
- var startTime = void 0;
- var handler = function handler() {
- return vnode.context[binding.expression].apply();
- };
- var clear = function clear() {
- if (Date.now() - startTime < 100) {
- handler();
- }
- clearInterval(interval);
- interval = null;
- };
- Object(dom_["on"])(el, 'mousedown', function (e) {
- if (e.button !== 0) return;
- startTime = Date.now();
- Object(dom_["once"])(document, 'mouseup', clear);
- clearInterval(interval);
- interval = setInterval(handler, 100);
- });
- }
- });
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/input-number/src/input-number.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var input_numbervue_type_script_lang_js_ = ({
- name: 'ElInputNumber',
- mixins: [focus_default()('input')],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- directives: {
- repeatClick: repeat_click
- },
- components: {
- ElInput: input_default.a
- },
- props: {
- step: {
- type: Number,
- default: 1
- },
- stepStrictly: {
- type: Boolean,
- default: false
- },
- max: {
- type: Number,
- default: Infinity
- },
- min: {
- type: Number,
- default: -Infinity
- },
- value: {},
- disabled: Boolean,
- size: String,
- controls: {
- type: Boolean,
- default: true
- },
- controlsPosition: {
- type: String,
- default: ''
- },
- name: String,
- label: String,
- placeholder: String,
- precision: {
- type: Number,
- validator: function validator(val) {
- return val >= 0 && val === parseInt(val, 10);
- }
- }
- },
- data: function data() {
- return {
- currentValue: 0,
- userInput: null
- };
- },
- watch: {
- value: {
- immediate: true,
- handler: function handler(value) {
- var newVal = value === undefined ? value : Number(value);
- if (newVal !== undefined) {
- if (isNaN(newVal)) {
- return;
- }
- if (this.stepStrictly) {
- var stepPrecision = this.getPrecision(this.step);
- var precisionFactor = Math.pow(10, stepPrecision);
- newVal = Math.round(newVal / this.step) * precisionFactor * this.step / precisionFactor;
- }
- if (this.precision !== undefined) {
- newVal = this.toPrecision(newVal, this.precision);
- }
- }
- if (newVal >= this.max) newVal = this.max;
- if (newVal <= this.min) newVal = this.min;
- this.currentValue = newVal;
- this.userInput = null;
- this.$emit('input', newVal);
- }
- }
- },
- computed: {
- minDisabled: function minDisabled() {
- return this._decrease(this.value, this.step) < this.min;
- },
- maxDisabled: function maxDisabled() {
- return this._increase(this.value, this.step) > this.max;
- },
- numPrecision: function numPrecision() {
- var value = this.value,
- step = this.step,
- getPrecision = this.getPrecision,
- precision = this.precision;
- var stepPrecision = getPrecision(step);
- if (precision !== undefined) {
- if (stepPrecision > precision) {
- console.warn('[Element Warn][InputNumber]precision should not be less than the decimal places of step');
- }
- return precision;
- } else {
- return Math.max(getPrecision(value), stepPrecision);
- }
- },
- controlsAtRight: function controlsAtRight() {
- return this.controls && this.controlsPosition === 'right';
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- inputNumberSize: function inputNumberSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- inputNumberDisabled: function inputNumberDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- },
- displayValue: function displayValue() {
- if (this.userInput !== null) {
- return this.userInput;
- }
- var currentValue = this.currentValue;
- if (typeof currentValue === 'number') {
- if (this.stepStrictly) {
- var stepPrecision = this.getPrecision(this.step);
- var precisionFactor = Math.pow(10, stepPrecision);
- currentValue = Math.round(currentValue / this.step) * precisionFactor * this.step / precisionFactor;
- }
- if (this.precision !== undefined) {
- currentValue = currentValue.toFixed(this.precision);
- }
- }
- return currentValue;
- }
- },
- methods: {
- toPrecision: function toPrecision(num, precision) {
- if (precision === undefined) precision = this.numPrecision;
- return parseFloat(Number(num).toFixed(precision));
- },
- getPrecision: function getPrecision(value) {
- if (value === undefined) return 0;
- var valueString = value.toString();
- var dotPosition = valueString.indexOf('.');
- var precision = 0;
- if (dotPosition !== -1) {
- precision = valueString.length - dotPosition - 1;
- }
- return precision;
- },
- _increase: function _increase(val, step) {
- if (typeof val !== 'number' && val !== undefined) return this.currentValue;
- var precisionFactor = Math.pow(10, this.numPrecision);
- // Solve the accuracy problem of JS decimal calculation by converting the value to integer.
- return this.toPrecision((precisionFactor * val + precisionFactor * step) / precisionFactor);
- },
- _decrease: function _decrease(val, step) {
- if (typeof val !== 'number' && val !== undefined) return this.currentValue;
- var precisionFactor = Math.pow(10, this.numPrecision);
- return this.toPrecision((precisionFactor * val - precisionFactor * step) / precisionFactor);
- },
- increase: function increase() {
- if (this.inputNumberDisabled || this.maxDisabled) return;
- var value = this.value || 0;
- var newVal = this._increase(value, this.step);
- this.setCurrentValue(newVal);
- },
- decrease: function decrease() {
- if (this.inputNumberDisabled || this.minDisabled) return;
- var value = this.value || 0;
- var newVal = this._decrease(value, this.step);
- this.setCurrentValue(newVal);
- },
- handleBlur: function handleBlur(event) {
- this.$emit('blur', event);
- },
- handleFocus: function handleFocus(event) {
- this.$emit('focus', event);
- },
- setCurrentValue: function setCurrentValue(newVal) {
- var oldVal = this.currentValue;
- if (typeof newVal === 'number' && this.precision !== undefined) {
- newVal = this.toPrecision(newVal, this.precision);
- }
- if (newVal >= this.max) newVal = this.max;
- if (newVal <= this.min) newVal = this.min;
- if (oldVal === newVal) return;
- this.userInput = null;
- this.$emit('input', newVal);
- this.$emit('change', newVal, oldVal);
- this.currentValue = newVal;
- },
- handleInput: function handleInput(value) {
- this.userInput = value;
- },
- handleInputChange: function handleInputChange(value) {
- var newVal = value === '' ? undefined : Number(value);
- if (!isNaN(newVal) || value === '') {
- this.setCurrentValue(newVal);
- }
- this.userInput = null;
- },
- select: function select() {
- this.$refs.input.select();
- }
- },
- mounted: function mounted() {
- var innerInput = this.$refs.input.$refs.input;
- innerInput.setAttribute('role', 'spinbutton');
- innerInput.setAttribute('aria-valuemax', this.max);
- innerInput.setAttribute('aria-valuemin', this.min);
- innerInput.setAttribute('aria-valuenow', this.currentValue);
- innerInput.setAttribute('aria-disabled', this.inputNumberDisabled);
- },
- updated: function updated() {
- if (!this.$refs || !this.$refs.input) return;
- var innerInput = this.$refs.input.$refs.input;
- innerInput.setAttribute('aria-valuenow', this.currentValue);
- }
- });
- // CONCATENATED MODULE: ./packages/input-number/src/input-number.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_input_numbervue_type_script_lang_js_ = (input_numbervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/input-number/src/input-number.vue
- /* normalize component */
- var input_number_component = normalizeComponent(
- src_input_numbervue_type_script_lang_js_,
- input_numbervue_type_template_id_42f8cf66_render,
- input_numbervue_type_template_id_42f8cf66_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var input_number_api; }
- input_number_component.options.__file = "packages/input-number/src/input-number.vue"
- /* harmony default export */ var input_number = (input_number_component.exports);
- // CONCATENATED MODULE: ./packages/input-number/index.js
- /* istanbul ignore next */
- input_number.install = function (Vue) {
- Vue.component(input_number.name, input_number);
- };
- /* harmony default export */ var packages_input_number = (input_number);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio.vue?vue&type=template&id=69cd6268&
- var radiovue_type_template_id_69cd6268_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "label",
- {
- staticClass: "el-radio",
- class: [
- _vm.border && _vm.radioSize ? "el-radio--" + _vm.radioSize : "",
- { "is-disabled": _vm.isDisabled },
- { "is-focus": _vm.focus },
- { "is-bordered": _vm.border },
- { "is-checked": _vm.model === _vm.label }
- ],
- attrs: {
- role: "radio",
- "aria-checked": _vm.model === _vm.label,
- "aria-disabled": _vm.isDisabled,
- tabindex: _vm.tabIndex
- },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "space", 32, $event.key, [" ", "Spacebar"])
- ) {
- return null
- }
- $event.stopPropagation()
- $event.preventDefault()
- _vm.model = _vm.isDisabled ? _vm.model : _vm.label
- }
- }
- },
- [
- _c(
- "span",
- {
- staticClass: "el-radio__input",
- class: {
- "is-disabled": _vm.isDisabled,
- "is-checked": _vm.model === _vm.label
- }
- },
- [
- _c("span", { staticClass: "el-radio__inner" }),
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.model,
- expression: "model"
- }
- ],
- staticClass: "el-radio__original",
- attrs: {
- type: "radio",
- "aria-hidden": "true",
- name: _vm.name,
- disabled: _vm.isDisabled,
- tabindex: "-1"
- },
- domProps: {
- value: _vm.label,
- checked: _vm._q(_vm.model, _vm.label)
- },
- on: {
- focus: function($event) {
- _vm.focus = true
- },
- blur: function($event) {
- _vm.focus = false
- },
- change: [
- function($event) {
- _vm.model = _vm.label
- },
- _vm.handleChange
- ]
- }
- })
- ]
- ),
- _c(
- "span",
- {
- staticClass: "el-radio__label",
- on: {
- keydown: function($event) {
- $event.stopPropagation()
- }
- }
- },
- [
- _vm._t("default"),
- !_vm.$slots.default ? [_vm._v(_vm._s(_vm.label))] : _vm._e()
- ],
- 2
- )
- ]
- )
- }
- var radiovue_type_template_id_69cd6268_staticRenderFns = []
- radiovue_type_template_id_69cd6268_render._withStripped = true
- // CONCATENATED MODULE: ./packages/radio/src/radio.vue?vue&type=template&id=69cd6268&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var radiovue_type_script_lang_js_ = ({
- name: 'ElRadio',
- mixins: [emitter_default.a],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- componentName: 'ElRadio',
- props: {
- value: {},
- label: {},
- disabled: Boolean,
- name: String,
- border: Boolean,
- size: String
- },
- data: function data() {
- return {
- focus: false
- };
- },
- computed: {
- isGroup: function isGroup() {
- var parent = this.$parent;
- while (parent) {
- if (parent.$options.componentName !== 'ElRadioGroup') {
- parent = parent.$parent;
- } else {
- this._radioGroup = parent;
- return true;
- }
- }
- return false;
- },
- model: {
- get: function get() {
- return this.isGroup ? this._radioGroup.value : this.value;
- },
- set: function set(val) {
- if (this.isGroup) {
- this.dispatch('ElRadioGroup', 'input', [val]);
- } else {
- this.$emit('input', val);
- }
- }
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- radioSize: function radioSize() {
- var temRadioSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- return this.isGroup ? this._radioGroup.radioGroupSize || temRadioSize : temRadioSize;
- },
- isDisabled: function isDisabled() {
- return this.isGroup ? this._radioGroup.disabled || this.disabled || (this.elForm || {}).disabled : this.disabled || (this.elForm || {}).disabled;
- },
- tabIndex: function tabIndex() {
- return this.isDisabled || this.isGroup && this.model !== this.label ? -1 : 0;
- }
- },
- methods: {
- handleChange: function handleChange() {
- var _this = this;
- this.$nextTick(function () {
- _this.$emit('change', _this.model);
- _this.isGroup && _this.dispatch('ElRadioGroup', 'handleChange', _this.model);
- });
- }
- }
- });
- // CONCATENATED MODULE: ./packages/radio/src/radio.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_radiovue_type_script_lang_js_ = (radiovue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/radio/src/radio.vue
- /* normalize component */
- var radio_component = normalizeComponent(
- src_radiovue_type_script_lang_js_,
- radiovue_type_template_id_69cd6268_render,
- radiovue_type_template_id_69cd6268_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var radio_api; }
- radio_component.options.__file = "packages/radio/src/radio.vue"
- /* harmony default export */ var src_radio = (radio_component.exports);
- // CONCATENATED MODULE: ./packages/radio/index.js
- /* istanbul ignore next */
- src_radio.install = function (Vue) {
- Vue.component(src_radio.name, src_radio);
- };
- /* harmony default export */ var packages_radio = (src_radio);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio-group.vue?vue&type=template&id=818a704c&
- var radio_groupvue_type_template_id_818a704c_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-radio-group",
- attrs: { role: "radiogroup" },
- on: { keydown: _vm.handleKeydown }
- },
- [_vm._t("default")],
- 2
- )
- }
- var radio_groupvue_type_template_id_818a704c_staticRenderFns = []
- radio_groupvue_type_template_id_818a704c_render._withStripped = true
- // CONCATENATED MODULE: ./packages/radio/src/radio-group.vue?vue&type=template&id=818a704c&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio-group.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var keyCode = Object.freeze({
- LEFT: 37,
- UP: 38,
- RIGHT: 39,
- DOWN: 40
- });
- /* harmony default export */ var radio_groupvue_type_script_lang_js_ = ({
- name: 'ElRadioGroup',
- componentName: 'ElRadioGroup',
- inject: {
- elFormItem: {
- default: ''
- }
- },
- mixins: [emitter_default.a],
- props: {
- value: {},
- size: String,
- fill: String,
- textColor: String,
- disabled: Boolean
- },
- computed: {
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- radioGroupSize: function radioGroupSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- }
- },
- created: function created() {
- var _this = this;
- this.$on('handleChange', function (value) {
- _this.$emit('change', value);
- });
- },
- mounted: function mounted() {
- // 当radioGroup没有默认选项时,第一个可以选中Tab导航
- var radios = this.$el.querySelectorAll('[type=radio]');
- var firstLabel = this.$el.querySelectorAll('[role=radio]')[0];
- if (![].some.call(radios, function (radio) {
- return radio.checked;
- }) && firstLabel) {
- firstLabel.tabIndex = 0;
- }
- },
- methods: {
- handleKeydown: function handleKeydown(e) {
- // 左右上下按键 可以在radio组内切换不同选项
- var target = e.target;
- var className = target.nodeName === 'INPUT' ? '[type=radio]' : '[role=radio]';
- var radios = this.$el.querySelectorAll(className);
- var length = radios.length;
- var index = [].indexOf.call(radios, target);
- var roleRadios = this.$el.querySelectorAll('[role=radio]');
- switch (e.keyCode) {
- case keyCode.LEFT:
- case keyCode.UP:
- e.stopPropagation();
- e.preventDefault();
- if (index === 0) {
- roleRadios[length - 1].click();
- roleRadios[length - 1].focus();
- } else {
- roleRadios[index - 1].click();
- roleRadios[index - 1].focus();
- }
- break;
- case keyCode.RIGHT:
- case keyCode.DOWN:
- if (index === length - 1) {
- e.stopPropagation();
- e.preventDefault();
- roleRadios[0].click();
- roleRadios[0].focus();
- } else {
- roleRadios[index + 1].click();
- roleRadios[index + 1].focus();
- }
- break;
- default:
- break;
- }
- }
- },
- watch: {
- value: function value(_value) {
- this.dispatch('ElFormItem', 'el.form.change', [this.value]);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/radio/src/radio-group.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_radio_groupvue_type_script_lang_js_ = (radio_groupvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/radio/src/radio-group.vue
- /* normalize component */
- var radio_group_component = normalizeComponent(
- src_radio_groupvue_type_script_lang_js_,
- radio_groupvue_type_template_id_818a704c_render,
- radio_groupvue_type_template_id_818a704c_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var radio_group_api; }
- radio_group_component.options.__file = "packages/radio/src/radio-group.vue"
- /* harmony default export */ var radio_group = (radio_group_component.exports);
- // CONCATENATED MODULE: ./packages/radio-group/index.js
- /* istanbul ignore next */
- radio_group.install = function (Vue) {
- Vue.component(radio_group.name, radio_group);
- };
- /* harmony default export */ var packages_radio_group = (radio_group);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio-button.vue?vue&type=template&id=18a77a32&
- var radio_buttonvue_type_template_id_18a77a32_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "label",
- {
- staticClass: "el-radio-button",
- class: [
- _vm.size ? "el-radio-button--" + _vm.size : "",
- { "is-active": _vm.value === _vm.label },
- { "is-disabled": _vm.isDisabled },
- { "is-focus": _vm.focus }
- ],
- attrs: {
- role: "radio",
- "aria-checked": _vm.value === _vm.label,
- "aria-disabled": _vm.isDisabled,
- tabindex: _vm.tabIndex
- },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "space", 32, $event.key, [" ", "Spacebar"])
- ) {
- return null
- }
- $event.stopPropagation()
- $event.preventDefault()
- _vm.value = _vm.isDisabled ? _vm.value : _vm.label
- }
- }
- },
- [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.value,
- expression: "value"
- }
- ],
- staticClass: "el-radio-button__orig-radio",
- attrs: {
- type: "radio",
- name: _vm.name,
- disabled: _vm.isDisabled,
- tabindex: "-1"
- },
- domProps: { value: _vm.label, checked: _vm._q(_vm.value, _vm.label) },
- on: {
- change: [
- function($event) {
- _vm.value = _vm.label
- },
- _vm.handleChange
- ],
- focus: function($event) {
- _vm.focus = true
- },
- blur: function($event) {
- _vm.focus = false
- }
- }
- }),
- _c(
- "span",
- {
- staticClass: "el-radio-button__inner",
- style: _vm.value === _vm.label ? _vm.activeStyle : null,
- on: {
- keydown: function($event) {
- $event.stopPropagation()
- }
- }
- },
- [
- _vm._t("default"),
- !_vm.$slots.default ? [_vm._v(_vm._s(_vm.label))] : _vm._e()
- ],
- 2
- )
- ]
- )
- }
- var radio_buttonvue_type_template_id_18a77a32_staticRenderFns = []
- radio_buttonvue_type_template_id_18a77a32_render._withStripped = true
- // CONCATENATED MODULE: ./packages/radio/src/radio-button.vue?vue&type=template&id=18a77a32&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio-button.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var radio_buttonvue_type_script_lang_js_ = ({
- name: 'ElRadioButton',
- mixins: [emitter_default.a],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- props: {
- label: {},
- disabled: Boolean,
- name: String
- },
- data: function data() {
- return {
- focus: false
- };
- },
- computed: {
- value: {
- get: function get() {
- return this._radioGroup.value;
- },
- set: function set(value) {
- this._radioGroup.$emit('input', value);
- }
- },
- _radioGroup: function _radioGroup() {
- var parent = this.$parent;
- while (parent) {
- if (parent.$options.componentName !== 'ElRadioGroup') {
- parent = parent.$parent;
- } else {
- return parent;
- }
- }
- return false;
- },
- activeStyle: function activeStyle() {
- return {
- backgroundColor: this._radioGroup.fill || '',
- borderColor: this._radioGroup.fill || '',
- boxShadow: this._radioGroup.fill ? '-1px 0 0 0 ' + this._radioGroup.fill : '',
- color: this._radioGroup.textColor || ''
- };
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- size: function size() {
- return this._radioGroup.radioGroupSize || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- isDisabled: function isDisabled() {
- return this.disabled || this._radioGroup.disabled || (this.elForm || {}).disabled;
- },
- tabIndex: function tabIndex() {
- return this.isDisabled || this._radioGroup && this.value !== this.label ? -1 : 0;
- }
- },
- methods: {
- handleChange: function handleChange() {
- var _this = this;
- this.$nextTick(function () {
- _this.dispatch('ElRadioGroup', 'handleChange', _this.value);
- });
- }
- }
- });
- // CONCATENATED MODULE: ./packages/radio/src/radio-button.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_radio_buttonvue_type_script_lang_js_ = (radio_buttonvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/radio/src/radio-button.vue
- /* normalize component */
- var radio_button_component = normalizeComponent(
- src_radio_buttonvue_type_script_lang_js_,
- radio_buttonvue_type_template_id_18a77a32_render,
- radio_buttonvue_type_template_id_18a77a32_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var radio_button_api; }
- radio_button_component.options.__file = "packages/radio/src/radio-button.vue"
- /* harmony default export */ var radio_button = (radio_button_component.exports);
- // CONCATENATED MODULE: ./packages/radio-button/index.js
- /* istanbul ignore next */
- radio_button.install = function (Vue) {
- Vue.component(radio_button.name, radio_button);
- };
- /* harmony default export */ var packages_radio_button = (radio_button);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox.vue?vue&type=template&id=d0387074&
- var checkboxvue_type_template_id_d0387074_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "label",
- {
- staticClass: "el-checkbox",
- class: [
- _vm.border && _vm.checkboxSize
- ? "el-checkbox--" + _vm.checkboxSize
- : "",
- { "is-disabled": _vm.isDisabled },
- { "is-bordered": _vm.border },
- { "is-checked": _vm.isChecked }
- ],
- attrs: {
- role: "checkbox",
- "aria-checked": _vm.indeterminate ? "mixed" : _vm.isChecked,
- "aria-disabled": _vm.isDisabled,
- id: _vm.id
- }
- },
- [
- _c(
- "span",
- {
- staticClass: "el-checkbox__input",
- class: {
- "is-disabled": _vm.isDisabled,
- "is-checked": _vm.isChecked,
- "is-indeterminate": _vm.indeterminate,
- "is-focus": _vm.focus
- },
- attrs: { "aria-checked": "mixed" }
- },
- [
- _c("span", { staticClass: "el-checkbox__inner" }),
- _vm.trueLabel || _vm.falseLabel
- ? _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.model,
- expression: "model"
- }
- ],
- staticClass: "el-checkbox__original",
- attrs: {
- type: "checkbox",
- "aria-hidden": "true",
- name: _vm.name,
- disabled: _vm.isDisabled,
- "true-value": _vm.trueLabel,
- "false-value": _vm.falseLabel
- },
- domProps: {
- checked: Array.isArray(_vm.model)
- ? _vm._i(_vm.model, null) > -1
- : _vm._q(_vm.model, _vm.trueLabel)
- },
- on: {
- change: [
- function($event) {
- var $$a = _vm.model,
- $$el = $event.target,
- $$c = $$el.checked ? _vm.trueLabel : _vm.falseLabel
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.model = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.model = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.model = $$c
- }
- },
- _vm.handleChange
- ],
- focus: function($event) {
- _vm.focus = true
- },
- blur: function($event) {
- _vm.focus = false
- }
- }
- })
- : _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.model,
- expression: "model"
- }
- ],
- staticClass: "el-checkbox__original",
- attrs: {
- type: "checkbox",
- "aria-hidden": "true",
- disabled: _vm.isDisabled,
- name: _vm.name
- },
- domProps: {
- value: _vm.label,
- checked: Array.isArray(_vm.model)
- ? _vm._i(_vm.model, _vm.label) > -1
- : _vm.model
- },
- on: {
- change: [
- function($event) {
- var $$a = _vm.model,
- $$el = $event.target,
- $$c = $$el.checked ? true : false
- if (Array.isArray($$a)) {
- var $$v = _vm.label,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.model = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.model = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.model = $$c
- }
- },
- _vm.handleChange
- ],
- focus: function($event) {
- _vm.focus = true
- },
- blur: function($event) {
- _vm.focus = false
- }
- }
- })
- ]
- ),
- _vm.$slots.default || _vm.label
- ? _c(
- "span",
- { staticClass: "el-checkbox__label" },
- [
- _vm._t("default"),
- !_vm.$slots.default ? [_vm._v(_vm._s(_vm.label))] : _vm._e()
- ],
- 2
- )
- : _vm._e()
- ]
- )
- }
- var checkboxvue_type_template_id_d0387074_staticRenderFns = []
- checkboxvue_type_template_id_d0387074_render._withStripped = true
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue?vue&type=template&id=d0387074&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var checkboxvue_type_script_lang_js_ = ({
- name: 'ElCheckbox',
- mixins: [emitter_default.a],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- componentName: 'ElCheckbox',
- data: function data() {
- return {
- selfModel: false,
- focus: false,
- isLimitExceeded: false
- };
- },
- computed: {
- model: {
- get: function get() {
- return this.isGroup ? this.store : this.value !== undefined ? this.value : this.selfModel;
- },
- set: function set(val) {
- if (this.isGroup) {
- this.isLimitExceeded = false;
- this._checkboxGroup.min !== undefined && val.length < this._checkboxGroup.min && (this.isLimitExceeded = true);
- this._checkboxGroup.max !== undefined && val.length > this._checkboxGroup.max && (this.isLimitExceeded = true);
- this.isLimitExceeded === false && this.dispatch('ElCheckboxGroup', 'input', [val]);
- } else {
- this.$emit('input', val);
- this.selfModel = val;
- }
- }
- },
- isChecked: function isChecked() {
- if ({}.toString.call(this.model) === '[object Boolean]') {
- return this.model;
- } else if (Array.isArray(this.model)) {
- return this.model.indexOf(this.label) > -1;
- } else if (this.model !== null && this.model !== undefined) {
- return this.model === this.trueLabel;
- }
- },
- isGroup: function isGroup() {
- var parent = this.$parent;
- while (parent) {
- if (parent.$options.componentName !== 'ElCheckboxGroup') {
- parent = parent.$parent;
- } else {
- this._checkboxGroup = parent;
- return true;
- }
- }
- return false;
- },
- store: function store() {
- return this._checkboxGroup ? this._checkboxGroup.value : this.value;
- },
- isDisabled: function isDisabled() {
- return this.isGroup ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled : this.disabled || (this.elForm || {}).disabled;
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- checkboxSize: function checkboxSize() {
- var temCheckboxSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- return this.isGroup ? this._checkboxGroup.checkboxGroupSize || temCheckboxSize : temCheckboxSize;
- }
- },
- props: {
- value: {},
- label: {},
- indeterminate: Boolean,
- disabled: Boolean,
- checked: Boolean,
- name: String,
- trueLabel: [String, Number],
- falseLabel: [String, Number],
- id: String, /* 当indeterminate为真时,为controls提供相关连的checkbox的id,表明元素间的控制关系*/
- controls: String, /* 当indeterminate为真时,为controls提供相关连的checkbox的id,表明元素间的控制关系*/
- border: Boolean,
- size: String
- },
- methods: {
- addToStore: function addToStore() {
- if (Array.isArray(this.model) && this.model.indexOf(this.label) === -1) {
- this.model.push(this.label);
- } else {
- this.model = this.trueLabel || true;
- }
- },
- handleChange: function handleChange(ev) {
- var _this = this;
- if (this.isLimitExceeded) return;
- var value = void 0;
- if (ev.target.checked) {
- value = this.trueLabel === undefined ? true : this.trueLabel;
- } else {
- value = this.falseLabel === undefined ? false : this.falseLabel;
- }
- this.$emit('change', value, ev);
- this.$nextTick(function () {
- if (_this.isGroup) {
- _this.dispatch('ElCheckboxGroup', 'change', [_this._checkboxGroup.value]);
- }
- });
- }
- },
- created: function created() {
- this.checked && this.addToStore();
- },
- mounted: function mounted() {
- // 为indeterminate元素 添加aria-controls 属性
- if (this.indeterminate) {
- this.$el.setAttribute('aria-controls', this.controls);
- }
- },
- watch: {
- value: function value(_value) {
- this.dispatch('ElFormItem', 'el.form.change', _value);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_checkboxvue_type_script_lang_js_ = (checkboxvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue
- /* normalize component */
- var checkbox_component = normalizeComponent(
- src_checkboxvue_type_script_lang_js_,
- checkboxvue_type_template_id_d0387074_render,
- checkboxvue_type_template_id_d0387074_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var checkbox_api; }
- checkbox_component.options.__file = "packages/checkbox/src/checkbox.vue"
- /* harmony default export */ var src_checkbox = (checkbox_component.exports);
- // CONCATENATED MODULE: ./packages/checkbox/index.js
- /* istanbul ignore next */
- src_checkbox.install = function (Vue) {
- Vue.component(src_checkbox.name, src_checkbox);
- };
- /* harmony default export */ var packages_checkbox = (src_checkbox);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-button.vue?vue&type=template&id=478e906e&
- var checkbox_buttonvue_type_template_id_478e906e_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "label",
- {
- staticClass: "el-checkbox-button",
- class: [
- _vm.size ? "el-checkbox-button--" + _vm.size : "",
- { "is-disabled": _vm.isDisabled },
- { "is-checked": _vm.isChecked },
- { "is-focus": _vm.focus }
- ],
- attrs: {
- role: "checkbox",
- "aria-checked": _vm.isChecked,
- "aria-disabled": _vm.isDisabled
- }
- },
- [
- _vm.trueLabel || _vm.falseLabel
- ? _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.model,
- expression: "model"
- }
- ],
- staticClass: "el-checkbox-button__original",
- attrs: {
- type: "checkbox",
- name: _vm.name,
- disabled: _vm.isDisabled,
- "true-value": _vm.trueLabel,
- "false-value": _vm.falseLabel
- },
- domProps: {
- checked: Array.isArray(_vm.model)
- ? _vm._i(_vm.model, null) > -1
- : _vm._q(_vm.model, _vm.trueLabel)
- },
- on: {
- change: [
- function($event) {
- var $$a = _vm.model,
- $$el = $event.target,
- $$c = $$el.checked ? _vm.trueLabel : _vm.falseLabel
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.model = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.model = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.model = $$c
- }
- },
- _vm.handleChange
- ],
- focus: function($event) {
- _vm.focus = true
- },
- blur: function($event) {
- _vm.focus = false
- }
- }
- })
- : _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.model,
- expression: "model"
- }
- ],
- staticClass: "el-checkbox-button__original",
- attrs: {
- type: "checkbox",
- name: _vm.name,
- disabled: _vm.isDisabled
- },
- domProps: {
- value: _vm.label,
- checked: Array.isArray(_vm.model)
- ? _vm._i(_vm.model, _vm.label) > -1
- : _vm.model
- },
- on: {
- change: [
- function($event) {
- var $$a = _vm.model,
- $$el = $event.target,
- $$c = $$el.checked ? true : false
- if (Array.isArray($$a)) {
- var $$v = _vm.label,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.model = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.model = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.model = $$c
- }
- },
- _vm.handleChange
- ],
- focus: function($event) {
- _vm.focus = true
- },
- blur: function($event) {
- _vm.focus = false
- }
- }
- }),
- _vm.$slots.default || _vm.label
- ? _c(
- "span",
- {
- staticClass: "el-checkbox-button__inner",
- style: _vm.isChecked ? _vm.activeStyle : null
- },
- [_vm._t("default", [_vm._v(_vm._s(_vm.label))])],
- 2
- )
- : _vm._e()
- ]
- )
- }
- var checkbox_buttonvue_type_template_id_478e906e_staticRenderFns = []
- checkbox_buttonvue_type_template_id_478e906e_render._withStripped = true
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox-button.vue?vue&type=template&id=478e906e&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-button.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var checkbox_buttonvue_type_script_lang_js_ = ({
- name: 'ElCheckboxButton',
- mixins: [emitter_default.a],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- data: function data() {
- return {
- selfModel: false,
- focus: false,
- isLimitExceeded: false
- };
- },
- props: {
- value: {},
- label: {},
- disabled: Boolean,
- checked: Boolean,
- name: String,
- trueLabel: [String, Number],
- falseLabel: [String, Number]
- },
- computed: {
- model: {
- get: function get() {
- return this._checkboxGroup ? this.store : this.value !== undefined ? this.value : this.selfModel;
- },
- set: function set(val) {
- if (this._checkboxGroup) {
- this.isLimitExceeded = false;
- this._checkboxGroup.min !== undefined && val.length < this._checkboxGroup.min && (this.isLimitExceeded = true);
- this._checkboxGroup.max !== undefined && val.length > this._checkboxGroup.max && (this.isLimitExceeded = true);
- this.isLimitExceeded === false && this.dispatch('ElCheckboxGroup', 'input', [val]);
- } else if (this.value !== undefined) {
- this.$emit('input', val);
- } else {
- this.selfModel = val;
- }
- }
- },
- isChecked: function isChecked() {
- if ({}.toString.call(this.model) === '[object Boolean]') {
- return this.model;
- } else if (Array.isArray(this.model)) {
- return this.model.indexOf(this.label) > -1;
- } else if (this.model !== null && this.model !== undefined) {
- return this.model === this.trueLabel;
- }
- },
- _checkboxGroup: function _checkboxGroup() {
- var parent = this.$parent;
- while (parent) {
- if (parent.$options.componentName !== 'ElCheckboxGroup') {
- parent = parent.$parent;
- } else {
- return parent;
- }
- }
- return false;
- },
- store: function store() {
- return this._checkboxGroup ? this._checkboxGroup.value : this.value;
- },
- activeStyle: function activeStyle() {
- return {
- backgroundColor: this._checkboxGroup.fill || '',
- borderColor: this._checkboxGroup.fill || '',
- color: this._checkboxGroup.textColor || '',
- 'box-shadow': '-1px 0 0 0 ' + this._checkboxGroup.fill
- };
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- size: function size() {
- return this._checkboxGroup.checkboxGroupSize || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- isDisabled: function isDisabled() {
- return this._checkboxGroup ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled : this.disabled || (this.elForm || {}).disabled;
- }
- },
- methods: {
- addToStore: function addToStore() {
- if (Array.isArray(this.model) && this.model.indexOf(this.label) === -1) {
- this.model.push(this.label);
- } else {
- this.model = this.trueLabel || true;
- }
- },
- handleChange: function handleChange(ev) {
- var _this = this;
- if (this.isLimitExceeded) return;
- var value = void 0;
- if (ev.target.checked) {
- value = this.trueLabel === undefined ? true : this.trueLabel;
- } else {
- value = this.falseLabel === undefined ? false : this.falseLabel;
- }
- this.$emit('change', value, ev);
- this.$nextTick(function () {
- if (_this._checkboxGroup) {
- _this.dispatch('ElCheckboxGroup', 'change', [_this._checkboxGroup.value]);
- }
- });
- }
- },
- created: function created() {
- this.checked && this.addToStore();
- }
- });
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox-button.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_checkbox_buttonvue_type_script_lang_js_ = (checkbox_buttonvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox-button.vue
- /* normalize component */
- var checkbox_button_component = normalizeComponent(
- src_checkbox_buttonvue_type_script_lang_js_,
- checkbox_buttonvue_type_template_id_478e906e_render,
- checkbox_buttonvue_type_template_id_478e906e_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var checkbox_button_api; }
- checkbox_button_component.options.__file = "packages/checkbox/src/checkbox-button.vue"
- /* harmony default export */ var checkbox_button = (checkbox_button_component.exports);
- // CONCATENATED MODULE: ./packages/checkbox-button/index.js
- /* istanbul ignore next */
- checkbox_button.install = function (Vue) {
- Vue.component(checkbox_button.name, checkbox_button);
- };
- /* harmony default export */ var packages_checkbox_button = (checkbox_button);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-group.vue?vue&type=template&id=7289a290&
- var checkbox_groupvue_type_template_id_7289a290_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-checkbox-group",
- attrs: { role: "group", "aria-label": "checkbox-group" }
- },
- [_vm._t("default")],
- 2
- )
- }
- var checkbox_groupvue_type_template_id_7289a290_staticRenderFns = []
- checkbox_groupvue_type_template_id_7289a290_render._withStripped = true
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox-group.vue?vue&type=template&id=7289a290&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-group.vue?vue&type=script&lang=js&
- /* harmony default export */ var checkbox_groupvue_type_script_lang_js_ = ({
- name: 'ElCheckboxGroup',
- componentName: 'ElCheckboxGroup',
- mixins: [emitter_default.a],
- inject: {
- elFormItem: {
- default: ''
- }
- },
- props: {
- value: {},
- disabled: Boolean,
- min: Number,
- max: Number,
- size: String,
- fill: String,
- textColor: String
- },
- computed: {
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- checkboxGroupSize: function checkboxGroupSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- }
- },
- watch: {
- value: function value(_value) {
- this.dispatch('ElFormItem', 'el.form.change', [_value]);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox-group.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_checkbox_groupvue_type_script_lang_js_ = (checkbox_groupvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/checkbox/src/checkbox-group.vue
- /* normalize component */
- var checkbox_group_component = normalizeComponent(
- src_checkbox_groupvue_type_script_lang_js_,
- checkbox_groupvue_type_template_id_7289a290_render,
- checkbox_groupvue_type_template_id_7289a290_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var checkbox_group_api; }
- checkbox_group_component.options.__file = "packages/checkbox/src/checkbox-group.vue"
- /* harmony default export */ var checkbox_group = (checkbox_group_component.exports);
- // CONCATENATED MODULE: ./packages/checkbox-group/index.js
- /* istanbul ignore next */
- checkbox_group.install = function (Vue) {
- Vue.component(checkbox_group.name, checkbox_group);
- };
- /* harmony default export */ var packages_checkbox_group = (checkbox_group);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/switch/src/component.vue?vue&type=template&id=2dcd8fbb&
- var componentvue_type_template_id_2dcd8fbb_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-switch",
- class: { "is-disabled": _vm.switchDisabled, "is-checked": _vm.checked },
- attrs: {
- role: "switch",
- "aria-checked": _vm.checked,
- "aria-disabled": _vm.switchDisabled
- },
- on: { click: _vm.switchValue }
- },
- [
- _c("input", {
- ref: "input",
- staticClass: "el-switch__input",
- attrs: {
- type: "checkbox",
- id: _vm.id,
- name: _vm.name,
- "true-value": _vm.activeValue,
- "false-value": _vm.inactiveValue,
- disabled: _vm.switchDisabled
- },
- on: {
- change: _vm.handleChange,
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
- ) {
- return null
- }
- return _vm.switchValue($event)
- }
- }
- }),
- _vm.inactiveIconClass || _vm.inactiveText
- ? _c(
- "span",
- {
- class: [
- "el-switch__label",
- "el-switch__label--left",
- !_vm.checked ? "is-active" : ""
- ]
- },
- [
- _vm.inactiveIconClass
- ? _c("i", { class: [_vm.inactiveIconClass] })
- : _vm._e(),
- !_vm.inactiveIconClass && _vm.inactiveText
- ? _c("span", { attrs: { "aria-hidden": _vm.checked } }, [
- _vm._v(_vm._s(_vm.inactiveText))
- ])
- : _vm._e()
- ]
- )
- : _vm._e(),
- _c("span", {
- ref: "core",
- staticClass: "el-switch__core",
- style: { width: _vm.coreWidth + "px" }
- }),
- _vm.activeIconClass || _vm.activeText
- ? _c(
- "span",
- {
- class: [
- "el-switch__label",
- "el-switch__label--right",
- _vm.checked ? "is-active" : ""
- ]
- },
- [
- _vm.activeIconClass
- ? _c("i", { class: [_vm.activeIconClass] })
- : _vm._e(),
- !_vm.activeIconClass && _vm.activeText
- ? _c("span", { attrs: { "aria-hidden": !_vm.checked } }, [
- _vm._v(_vm._s(_vm.activeText))
- ])
- : _vm._e()
- ]
- )
- : _vm._e()
- ]
- )
- }
- var componentvue_type_template_id_2dcd8fbb_staticRenderFns = []
- componentvue_type_template_id_2dcd8fbb_render._withStripped = true
- // CONCATENATED MODULE: ./packages/switch/src/component.vue?vue&type=template&id=2dcd8fbb&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/switch/src/component.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var switch_src_componentvue_type_script_lang_js_ = ({
- name: 'ElSwitch',
- mixins: [focus_default()('input'), migrating_default.a, emitter_default.a],
- inject: {
- elForm: {
- default: ''
- }
- },
- props: {
- value: {
- type: [Boolean, String, Number],
- default: false
- },
- disabled: {
- type: Boolean,
- default: false
- },
- width: {
- type: Number,
- default: 40
- },
- activeIconClass: {
- type: String,
- default: ''
- },
- inactiveIconClass: {
- type: String,
- default: ''
- },
- activeText: String,
- inactiveText: String,
- activeColor: {
- type: String,
- default: ''
- },
- inactiveColor: {
- type: String,
- default: ''
- },
- activeValue: {
- type: [Boolean, String, Number],
- default: true
- },
- inactiveValue: {
- type: [Boolean, String, Number],
- default: false
- },
- name: {
- type: String,
- default: ''
- },
- validateEvent: {
- type: Boolean,
- default: true
- },
- id: String
- },
- data: function data() {
- return {
- coreWidth: this.width
- };
- },
- created: function created() {
- if (!~[this.activeValue, this.inactiveValue].indexOf(this.value)) {
- this.$emit('input', this.inactiveValue);
- }
- },
- computed: {
- checked: function checked() {
- return this.value === this.activeValue;
- },
- switchDisabled: function switchDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- }
- },
- watch: {
- checked: function checked() {
- this.$refs.input.checked = this.checked;
- if (this.activeColor || this.inactiveColor) {
- this.setBackgroundColor();
- }
- if (this.validateEvent) {
- this.dispatch('ElFormItem', 'el.form.change', [this.value]);
- }
- }
- },
- methods: {
- handleChange: function handleChange(event) {
- var _this = this;
- var val = this.checked ? this.inactiveValue : this.activeValue;
- this.$emit('input', val);
- this.$emit('change', val);
- this.$nextTick(function () {
- // set input's checked property
- // in case parent refuses to change component's value
- _this.$refs.input.checked = _this.checked;
- });
- },
- setBackgroundColor: function setBackgroundColor() {
- var newColor = this.checked ? this.activeColor : this.inactiveColor;
- this.$refs.core.style.borderColor = newColor;
- this.$refs.core.style.backgroundColor = newColor;
- },
- switchValue: function switchValue() {
- !this.switchDisabled && this.handleChange();
- },
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'on-color': 'on-color is renamed to active-color.',
- 'off-color': 'off-color is renamed to inactive-color.',
- 'on-text': 'on-text is renamed to active-text.',
- 'off-text': 'off-text is renamed to inactive-text.',
- 'on-value': 'on-value is renamed to active-value.',
- 'off-value': 'off-value is renamed to inactive-value.',
- 'on-icon-class': 'on-icon-class is renamed to active-icon-class.',
- 'off-icon-class': 'off-icon-class is renamed to inactive-icon-class.'
- }
- };
- }
- },
- mounted: function mounted() {
- /* istanbul ignore if */
- this.coreWidth = this.width || 40;
- if (this.activeColor || this.inactiveColor) {
- this.setBackgroundColor();
- }
- this.$refs.input.checked = this.checked;
- }
- });
- // CONCATENATED MODULE: ./packages/switch/src/component.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_switch_src_componentvue_type_script_lang_js_ = (switch_src_componentvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/switch/src/component.vue
- /* normalize component */
- var src_component_component = normalizeComponent(
- packages_switch_src_componentvue_type_script_lang_js_,
- componentvue_type_template_id_2dcd8fbb_render,
- componentvue_type_template_id_2dcd8fbb_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_component_api; }
- src_component_component.options.__file = "packages/switch/src/component.vue"
- /* harmony default export */ var switch_src_component = (src_component_component.exports);
- // CONCATENATED MODULE: ./packages/switch/index.js
- /* istanbul ignore next */
- switch_src_component.install = function (Vue) {
- Vue.component(switch_src_component.name, switch_src_component);
- };
- /* harmony default export */ var packages_switch = (switch_src_component);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/select.vue?vue&type=template&id=0e4aade6&
- var selectvue_type_template_id_0e4aade6_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleClose,
- expression: "handleClose"
- }
- ],
- staticClass: "el-select",
- class: [_vm.selectSize ? "el-select--" + _vm.selectSize : ""],
- on: {
- click: function($event) {
- $event.stopPropagation()
- return _vm.toggleMenu($event)
- }
- }
- },
- [
- _vm.multiple
- ? _c(
- "div",
- {
- ref: "tags",
- staticClass: "el-select__tags",
- style: { "max-width": _vm.inputWidth - 32 + "px", width: "100%" }
- },
- [
- _vm.collapseTags && _vm.selected.length
- ? _c(
- "span",
- [
- _c(
- "el-tag",
- {
- attrs: {
- closable: !_vm.selectDisabled,
- size: _vm.collapseTagSize,
- hit: _vm.selected[0].hitState,
- type: "info",
- "disable-transitions": ""
- },
- on: {
- close: function($event) {
- _vm.deleteTag($event, _vm.selected[0])
- }
- }
- },
- [
- _c("span", { staticClass: "el-select__tags-text" }, [
- _vm._v(_vm._s(_vm.selected[0].currentLabel))
- ])
- ]
- ),
- _vm.selected.length > 1
- ? _c(
- "el-tag",
- {
- attrs: {
- closable: false,
- size: _vm.collapseTagSize,
- type: "info",
- "disable-transitions": ""
- }
- },
- [
- _c(
- "span",
- { staticClass: "el-select__tags-text" },
- [_vm._v("+ " + _vm._s(_vm.selected.length - 1))]
- )
- ]
- )
- : _vm._e()
- ],
- 1
- )
- : _vm._e(),
- !_vm.collapseTags
- ? _c(
- "transition-group",
- { on: { "after-leave": _vm.resetInputHeight } },
- _vm._l(_vm.selected, function(item) {
- return _c(
- "el-tag",
- {
- key: _vm.getValueKey(item),
- attrs: {
- closable: !_vm.selectDisabled,
- size: _vm.collapseTagSize,
- hit: item.hitState,
- type: "info",
- "disable-transitions": ""
- },
- on: {
- close: function($event) {
- _vm.deleteTag($event, item)
- }
- }
- },
- [
- _c("span", { staticClass: "el-select__tags-text" }, [
- _vm._v(_vm._s(item.currentLabel))
- ])
- ]
- )
- }),
- 1
- )
- : _vm._e(),
- _vm.filterable
- ? _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.query,
- expression: "query"
- }
- ],
- ref: "input",
- staticClass: "el-select__input",
- class: [_vm.selectSize ? "is-" + _vm.selectSize : ""],
- style: {
- "flex-grow": "1",
- width: _vm.inputLength / (_vm.inputWidth - 32) + "%",
- "max-width": _vm.inputWidth - 42 + "px"
- },
- attrs: {
- type: "text",
- disabled: _vm.selectDisabled,
- autocomplete: _vm.autoComplete || _vm.autocomplete
- },
- domProps: { value: _vm.query },
- on: {
- focus: _vm.handleFocus,
- blur: function($event) {
- _vm.softFocus = false
- },
- click: function($event) {
- $event.stopPropagation()
- },
- keyup: _vm.managePlaceholder,
- keydown: [
- _vm.resetInputState,
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "down", 40, $event.key, [
- "Down",
- "ArrowDown"
- ])
- ) {
- return null
- }
- $event.preventDefault()
- _vm.navigateOptions("next")
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "up", 38, $event.key, [
- "Up",
- "ArrowUp"
- ])
- ) {
- return null
- }
- $event.preventDefault()
- _vm.navigateOptions("prev")
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "enter",
- 13,
- $event.key,
- "Enter"
- )
- ) {
- return null
- }
- $event.preventDefault()
- return _vm.selectOption($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "esc", 27, $event.key, [
- "Esc",
- "Escape"
- ])
- ) {
- return null
- }
- $event.stopPropagation()
- $event.preventDefault()
- _vm.visible = false
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "delete",
- [8, 46],
- $event.key,
- ["Backspace", "Delete", "Del"]
- )
- ) {
- return null
- }
- return _vm.deletePrevTag($event)
- }
- ],
- compositionstart: _vm.handleComposition,
- compositionupdate: _vm.handleComposition,
- compositionend: _vm.handleComposition,
- input: [
- function($event) {
- if ($event.target.composing) {
- return
- }
- _vm.query = $event.target.value
- },
- _vm.debouncedQueryChange
- ]
- }
- })
- : _vm._e()
- ],
- 1
- )
- : _vm._e(),
- _c(
- "el-input",
- {
- ref: "reference",
- class: { "is-focus": _vm.visible },
- attrs: {
- type: "text",
- placeholder: _vm.currentPlaceholder,
- name: _vm.name,
- id: _vm.id,
- autocomplete: _vm.autoComplete || _vm.autocomplete,
- size: _vm.selectSize,
- disabled: _vm.selectDisabled,
- readonly: _vm.readonly,
- "validate-event": false
- },
- on: { focus: _vm.handleFocus, blur: _vm.handleBlur },
- nativeOn: {
- keyup: function($event) {
- return _vm.debouncedOnInputChange($event)
- },
- keydown: [
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "down", 40, $event.key, [
- "Down",
- "ArrowDown"
- ])
- ) {
- return null
- }
- $event.stopPropagation()
- $event.preventDefault()
- _vm.navigateOptions("next")
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "up", 38, $event.key, [
- "Up",
- "ArrowUp"
- ])
- ) {
- return null
- }
- $event.stopPropagation()
- $event.preventDefault()
- _vm.navigateOptions("prev")
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
- ) {
- return null
- }
- $event.preventDefault()
- return _vm.selectOption($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "esc", 27, $event.key, [
- "Esc",
- "Escape"
- ])
- ) {
- return null
- }
- $event.stopPropagation()
- $event.preventDefault()
- _vm.visible = false
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "tab", 9, $event.key, "Tab")
- ) {
- return null
- }
- _vm.visible = false
- }
- ],
- paste: function($event) {
- return _vm.debouncedOnInputChange($event)
- },
- mouseenter: function($event) {
- _vm.inputHovering = true
- },
- mouseleave: function($event) {
- _vm.inputHovering = false
- }
- },
- model: {
- value: _vm.selectedLabel,
- callback: function($$v) {
- _vm.selectedLabel = $$v
- },
- expression: "selectedLabel"
- }
- },
- [
- _vm.$slots.prefix
- ? _c("template", { slot: "prefix" }, [_vm._t("prefix")], 2)
- : _vm._e(),
- _c("template", { slot: "suffix" }, [
- _c("i", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: !_vm.showClose,
- expression: "!showClose"
- }
- ],
- class: [
- "el-select__caret",
- "el-input__icon",
- "el-icon-" + _vm.iconClass
- ]
- }),
- _vm.showClose
- ? _c("i", {
- staticClass:
- "el-select__caret el-input__icon el-icon-circle-close",
- on: { click: _vm.handleClearClick }
- })
- : _vm._e()
- ])
- ],
- 2
- ),
- _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: {
- "before-enter": _vm.handleMenuEnter,
- "after-leave": _vm.doDestroy
- }
- },
- [
- _c(
- "el-select-menu",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible && _vm.emptyText !== false,
- expression: "visible && emptyText !== false"
- }
- ],
- ref: "popper",
- attrs: { "append-to-body": _vm.popperAppendToBody }
- },
- [
- _c(
- "el-scrollbar",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.options.length > 0 && !_vm.loading,
- expression: "options.length > 0 && !loading"
- }
- ],
- ref: "scrollbar",
- class: {
- "is-empty":
- !_vm.allowCreate &&
- _vm.query &&
- _vm.filteredOptionsCount === 0
- },
- attrs: {
- tag: "ul",
- "wrap-class": "el-select-dropdown__wrap",
- "view-class": "el-select-dropdown__list"
- }
- },
- [
- _vm.showNewOption
- ? _c("el-option", {
- attrs: { value: _vm.query, created: "" }
- })
- : _vm._e(),
- _vm._t("default")
- ],
- 2
- ),
- _vm.emptyText &&
- (!_vm.allowCreate ||
- _vm.loading ||
- (_vm.allowCreate && _vm.options.length === 0))
- ? [
- _vm.$slots.empty
- ? _vm._t("empty")
- : _c("p", { staticClass: "el-select-dropdown__empty" }, [
- _vm._v(
- "\n " +
- _vm._s(_vm.emptyText) +
- "\n "
- )
- ])
- ]
- : _vm._e()
- ],
- 2
- )
- ],
- 1
- )
- ],
- 1
- )
- }
- var selectvue_type_template_id_0e4aade6_staticRenderFns = []
- selectvue_type_template_id_0e4aade6_render._withStripped = true
- // CONCATENATED MODULE: ./packages/select/src/select.vue?vue&type=template&id=0e4aade6&
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/select-dropdown.vue?vue&type=template&id=06828748&
- var select_dropdownvue_type_template_id_06828748_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-select-dropdown el-popper",
- class: [{ "is-multiple": _vm.$parent.multiple }, _vm.popperClass],
- style: { minWidth: _vm.minWidth }
- },
- [_vm._t("default")],
- 2
- )
- }
- var select_dropdownvue_type_template_id_06828748_staticRenderFns = []
- select_dropdownvue_type_template_id_06828748_render._withStripped = true
- // CONCATENATED MODULE: ./packages/select/src/select-dropdown.vue?vue&type=template&id=06828748&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/select-dropdown.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var select_dropdownvue_type_script_lang_js_ = ({
- name: 'ElSelectDropdown',
- componentName: 'ElSelectDropdown',
- mixins: [vue_popper_default.a],
- props: {
- placement: {
- default: 'bottom-start'
- },
- boundariesPadding: {
- default: 0
- },
- popperOptions: {
- default: function _default() {
- return {
- gpuAcceleration: false
- };
- }
- },
- visibleArrow: {
- default: true
- },
- appendToBody: {
- type: Boolean,
- default: true
- }
- },
- data: function data() {
- return {
- minWidth: ''
- };
- },
- computed: {
- popperClass: function popperClass() {
- return this.$parent.popperClass;
- }
- },
- watch: {
- '$parent.inputWidth': function $parentInputWidth() {
- this.minWidth = this.$parent.$el.getBoundingClientRect().width + 'px';
- }
- },
- mounted: function mounted() {
- var _this = this;
- this.referenceElm = this.$parent.$refs.reference.$el;
- this.$parent.popperElm = this.popperElm = this.$el;
- this.$on('updatePopper', function () {
- if (_this.$parent.visible) _this.updatePopper();
- });
- this.$on('destroyPopper', this.destroyPopper);
- }
- });
- // CONCATENATED MODULE: ./packages/select/src/select-dropdown.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_select_dropdownvue_type_script_lang_js_ = (select_dropdownvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/select/src/select-dropdown.vue
- /* normalize component */
- var select_dropdown_component = normalizeComponent(
- src_select_dropdownvue_type_script_lang_js_,
- select_dropdownvue_type_template_id_06828748_render,
- select_dropdownvue_type_template_id_06828748_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var select_dropdown_api; }
- select_dropdown_component.options.__file = "packages/select/src/select-dropdown.vue"
- /* harmony default export */ var select_dropdown = (select_dropdown_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/option.vue?vue&type=template&id=7a44c642&
- var optionvue_type_template_id_7a44c642_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "li",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-select-dropdown__item",
- class: {
- selected: _vm.itemSelected,
- "is-disabled": _vm.disabled || _vm.groupDisabled || _vm.limitReached,
- hover: _vm.hover
- },
- on: {
- mouseenter: _vm.hoverItem,
- click: function($event) {
- $event.stopPropagation()
- return _vm.selectOptionClick($event)
- }
- }
- },
- [_vm._t("default", [_c("span", [_vm._v(_vm._s(_vm.currentLabel))])])],
- 2
- )
- }
- var optionvue_type_template_id_7a44c642_staticRenderFns = []
- optionvue_type_template_id_7a44c642_render._withStripped = true
- // CONCATENATED MODULE: ./packages/select/src/option.vue?vue&type=template&id=7a44c642&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/option.vue?vue&type=script&lang=js&
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var optionvue_type_script_lang_js_ = ({
- mixins: [emitter_default.a],
- name: 'ElOption',
- componentName: 'ElOption',
- inject: ['select'],
- props: {
- value: {
- required: true
- },
- label: [String, Number],
- created: Boolean,
- disabled: {
- type: Boolean,
- default: false
- }
- },
- data: function data() {
- return {
- index: -1,
- groupDisabled: false,
- visible: true,
- hitState: false,
- hover: false
- };
- },
- computed: {
- isObject: function isObject() {
- return Object.prototype.toString.call(this.value).toLowerCase() === '[object object]';
- },
- currentLabel: function currentLabel() {
- return this.label || (this.isObject ? '' : this.value);
- },
- currentValue: function currentValue() {
- return this.value || this.label || '';
- },
- itemSelected: function itemSelected() {
- if (!this.select.multiple) {
- return this.isEqual(this.value, this.select.value);
- } else {
- return this.contains(this.select.value, this.value);
- }
- },
- limitReached: function limitReached() {
- if (this.select.multiple) {
- return !this.itemSelected && (this.select.value || []).length >= this.select.multipleLimit && this.select.multipleLimit > 0;
- } else {
- return false;
- }
- }
- },
- watch: {
- currentLabel: function currentLabel() {
- if (!this.created && !this.select.remote) this.dispatch('ElSelect', 'setSelected');
- },
- value: function value(val, oldVal) {
- var _select = this.select,
- remote = _select.remote,
- valueKey = _select.valueKey;
- if (!this.created && !remote) {
- if (valueKey && (typeof val === 'undefined' ? 'undefined' : _typeof(val)) === 'object' && (typeof oldVal === 'undefined' ? 'undefined' : _typeof(oldVal)) === 'object' && val[valueKey] === oldVal[valueKey]) {
- return;
- }
- this.dispatch('ElSelect', 'setSelected');
- }
- }
- },
- methods: {
- isEqual: function isEqual(a, b) {
- if (!this.isObject) {
- return a === b;
- } else {
- var valueKey = this.select.valueKey;
- return Object(util_["getValueByPath"])(a, valueKey) === Object(util_["getValueByPath"])(b, valueKey);
- }
- },
- contains: function contains() {
- var arr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
- var target = arguments[1];
- if (!this.isObject) {
- return arr && arr.indexOf(target) > -1;
- } else {
- var valueKey = this.select.valueKey;
- return arr && arr.some(function (item) {
- return Object(util_["getValueByPath"])(item, valueKey) === Object(util_["getValueByPath"])(target, valueKey);
- });
- }
- },
- handleGroupDisabled: function handleGroupDisabled(val) {
- this.groupDisabled = val;
- },
- hoverItem: function hoverItem() {
- if (!this.disabled && !this.groupDisabled) {
- this.select.hoverIndex = this.select.options.indexOf(this);
- }
- },
- selectOptionClick: function selectOptionClick() {
- if (this.disabled !== true && this.groupDisabled !== true) {
- this.dispatch('ElSelect', 'handleOptionClick', [this, true]);
- }
- },
- queryChange: function queryChange(query) {
- this.visible = new RegExp(Object(util_["escapeRegexpString"])(query), 'i').test(this.currentLabel) || this.created;
- if (!this.visible) {
- this.select.filteredOptionsCount--;
- }
- }
- },
- created: function created() {
- this.select.options.push(this);
- this.select.cachedOptions.push(this);
- this.select.optionsCount++;
- this.select.filteredOptionsCount++;
- this.$on('queryChange', this.queryChange);
- this.$on('handleGroupDisabled', this.handleGroupDisabled);
- },
- beforeDestroy: function beforeDestroy() {
- this.select.onOptionDestroy(this.select.options.indexOf(this));
- }
- });
- // CONCATENATED MODULE: ./packages/select/src/option.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_optionvue_type_script_lang_js_ = (optionvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/select/src/option.vue
- /* normalize component */
- var option_component = normalizeComponent(
- src_optionvue_type_script_lang_js_,
- optionvue_type_template_id_7a44c642_render,
- optionvue_type_template_id_7a44c642_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var option_api; }
- option_component.options.__file = "packages/select/src/option.vue"
- /* harmony default export */ var src_option = (option_component.exports);
- // EXTERNAL MODULE: external "element-ui/lib/tag"
- var tag_ = __webpack_require__(23);
- var tag_default = /*#__PURE__*/__webpack_require__.n(tag_);
- // EXTERNAL MODULE: external "element-ui/lib/utils/resize-event"
- var resize_event_ = __webpack_require__(13);
- // EXTERNAL MODULE: external "element-ui/lib/locale"
- var lib_locale_ = __webpack_require__(16);
- var lib_locale_default = /*#__PURE__*/__webpack_require__.n(lib_locale_);
- // EXTERNAL MODULE: external "element-ui/lib/utils/scroll-into-view"
- var scroll_into_view_ = __webpack_require__(24);
- var scroll_into_view_default = /*#__PURE__*/__webpack_require__.n(scroll_into_view_);
- // CONCATENATED MODULE: ./packages/select/src/navigation-mixin.js
- /* harmony default export */ var navigation_mixin = ({
- data: function data() {
- return {
- hoverOption: -1
- };
- },
- computed: {
- optionsAllDisabled: function optionsAllDisabled() {
- return this.options.filter(function (option) {
- return option.visible;
- }).every(function (option) {
- return option.disabled;
- });
- }
- },
- watch: {
- hoverIndex: function hoverIndex(val) {
- var _this = this;
- if (typeof val === 'number' && val > -1) {
- this.hoverOption = this.options[val] || {};
- }
- this.options.forEach(function (option) {
- option.hover = _this.hoverOption === option;
- });
- }
- },
- methods: {
- navigateOptions: function navigateOptions(direction) {
- var _this2 = this;
- if (!this.visible) {
- this.visible = true;
- return;
- }
- if (this.options.length === 0 || this.filteredOptionsCount === 0) return;
- if (!this.optionsAllDisabled) {
- if (direction === 'next') {
- this.hoverIndex++;
- if (this.hoverIndex === this.options.length) {
- this.hoverIndex = 0;
- }
- } else if (direction === 'prev') {
- this.hoverIndex--;
- if (this.hoverIndex < 0) {
- this.hoverIndex = this.options.length - 1;
- }
- }
- var option = this.options[this.hoverIndex];
- if (option.disabled === true || option.groupDisabled === true || !option.visible) {
- this.navigateOptions(direction);
- }
- this.$nextTick(function () {
- return _this2.scrollToOption(_this2.hoverOption);
- });
- }
- }
- }
- });
- // EXTERNAL MODULE: external "element-ui/lib/utils/shared"
- var shared_ = __webpack_require__(28);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/select.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var selectvue_type_script_lang_js_ = ({
- mixins: [emitter_default.a, locale_default.a, focus_default()('reference'), navigation_mixin],
- name: 'ElSelect',
- componentName: 'ElSelect',
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- provide: function provide() {
- return {
- 'select': this
- };
- },
- computed: {
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- readonly: function readonly() {
- return !this.filterable || this.multiple || !Object(util_["isIE"])() && !Object(util_["isEdge"])() && !this.visible;
- },
- showClose: function showClose() {
- var hasValue = this.multiple ? Array.isArray(this.value) && this.value.length > 0 : this.value !== undefined && this.value !== null && this.value !== '';
- var criteria = this.clearable && !this.selectDisabled && this.inputHovering && hasValue;
- return criteria;
- },
- iconClass: function iconClass() {
- return this.remote && this.filterable ? '' : this.visible ? 'arrow-up is-reverse' : 'arrow-up';
- },
- debounce: function debounce() {
- return this.remote ? 300 : 0;
- },
- emptyText: function emptyText() {
- if (this.loading) {
- return this.loadingText || this.t('el.select.loading');
- } else {
- if (this.remote && this.query === '' && this.options.length === 0) return false;
- if (this.filterable && this.query && this.options.length > 0 && this.filteredOptionsCount === 0) {
- return this.noMatchText || this.t('el.select.noMatch');
- }
- if (this.options.length === 0) {
- return this.noDataText || this.t('el.select.noData');
- }
- }
- return null;
- },
- showNewOption: function showNewOption() {
- var _this = this;
- var hasExistingOption = this.options.filter(function (option) {
- return !option.created;
- }).some(function (option) {
- return option.currentLabel === _this.query;
- });
- return this.filterable && this.allowCreate && this.query !== '' && !hasExistingOption;
- },
- selectSize: function selectSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- selectDisabled: function selectDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- },
- collapseTagSize: function collapseTagSize() {
- return ['small', 'mini'].indexOf(this.selectSize) > -1 ? 'mini' : 'small';
- }
- },
- components: {
- ElInput: input_default.a,
- ElSelectMenu: select_dropdown,
- ElOption: src_option,
- ElTag: tag_default.a,
- ElScrollbar: scrollbar_default.a
- },
- directives: { Clickoutside: clickoutside_default.a },
- props: {
- name: String,
- id: String,
- value: {
- required: true
- },
- autocomplete: {
- type: String,
- default: 'off'
- },
- /** @Deprecated in next major version */
- autoComplete: {
- type: String,
- validator: function validator(val) {
- false && false;
- return true;
- }
- },
- automaticDropdown: Boolean,
- size: String,
- disabled: Boolean,
- clearable: Boolean,
- filterable: Boolean,
- allowCreate: Boolean,
- loading: Boolean,
- popperClass: String,
- remote: Boolean,
- loadingText: String,
- noMatchText: String,
- noDataText: String,
- remoteMethod: Function,
- filterMethod: Function,
- multiple: Boolean,
- multipleLimit: {
- type: Number,
- default: 0
- },
- placeholder: {
- type: String,
- default: function _default() {
- return Object(lib_locale_["t"])('el.select.placeholder');
- }
- },
- defaultFirstOption: Boolean,
- reserveKeyword: Boolean,
- valueKey: {
- type: String,
- default: 'value'
- },
- collapseTags: Boolean,
- popperAppendToBody: {
- type: Boolean,
- default: true
- }
- },
- data: function data() {
- return {
- options: [],
- cachedOptions: [],
- createdLabel: null,
- createdSelected: false,
- selected: this.multiple ? [] : {},
- inputLength: 20,
- inputWidth: 0,
- initialInputHeight: 0,
- cachedPlaceHolder: '',
- optionsCount: 0,
- filteredOptionsCount: 0,
- visible: false,
- softFocus: false,
- selectedLabel: '',
- hoverIndex: -1,
- query: '',
- previousQuery: null,
- inputHovering: false,
- currentPlaceholder: '',
- menuVisibleOnFocus: false,
- isOnComposition: false,
- isSilentBlur: false
- };
- },
- watch: {
- selectDisabled: function selectDisabled() {
- var _this2 = this;
- this.$nextTick(function () {
- _this2.resetInputHeight();
- });
- },
- placeholder: function placeholder(val) {
- this.cachedPlaceHolder = this.currentPlaceholder = val;
- },
- value: function value(val, oldVal) {
- if (this.multiple) {
- this.resetInputHeight();
- if (val && val.length > 0 || this.$refs.input && this.query !== '') {
- this.currentPlaceholder = '';
- } else {
- this.currentPlaceholder = this.cachedPlaceHolder;
- }
- if (this.filterable && !this.reserveKeyword) {
- this.query = '';
- this.handleQueryChange(this.query);
- }
- }
- this.setSelected();
- if (this.filterable && !this.multiple) {
- this.inputLength = 20;
- }
- if (!Object(util_["valueEquals"])(val, oldVal)) {
- this.dispatch('ElFormItem', 'el.form.change', val);
- }
- },
- visible: function visible(val) {
- var _this3 = this;
- if (!val) {
- this.broadcast('ElSelectDropdown', 'destroyPopper');
- if (this.$refs.input) {
- this.$refs.input.blur();
- }
- this.query = '';
- this.previousQuery = null;
- this.selectedLabel = '';
- this.inputLength = 20;
- this.menuVisibleOnFocus = false;
- this.resetHoverIndex();
- this.$nextTick(function () {
- if (_this3.$refs.input && _this3.$refs.input.value === '' && _this3.selected.length === 0) {
- _this3.currentPlaceholder = _this3.cachedPlaceHolder;
- }
- });
- if (!this.multiple) {
- if (this.selected) {
- if (this.filterable && this.allowCreate && this.createdSelected && this.createdLabel) {
- this.selectedLabel = this.createdLabel;
- } else {
- this.selectedLabel = this.selected.currentLabel;
- }
- if (this.filterable) this.query = this.selectedLabel;
- }
- if (this.filterable) {
- this.currentPlaceholder = this.cachedPlaceHolder;
- }
- }
- } else {
- this.broadcast('ElSelectDropdown', 'updatePopper');
- if (this.filterable) {
- this.query = this.remote ? '' : this.selectedLabel;
- this.handleQueryChange(this.query);
- if (this.multiple) {
- this.$refs.input.focus();
- } else {
- if (!this.remote) {
- this.broadcast('ElOption', 'queryChange', '');
- this.broadcast('ElOptionGroup', 'queryChange');
- }
- if (this.selectedLabel) {
- this.currentPlaceholder = this.selectedLabel;
- this.selectedLabel = '';
- }
- }
- }
- }
- this.$emit('visible-change', val);
- },
- options: function options() {
- var _this4 = this;
- if (this.$isServer) return;
- this.$nextTick(function () {
- _this4.broadcast('ElSelectDropdown', 'updatePopper');
- });
- if (this.multiple) {
- this.resetInputHeight();
- }
- var inputs = this.$el.querySelectorAll('input');
- if ([].indexOf.call(inputs, document.activeElement) === -1) {
- this.setSelected();
- }
- if (this.defaultFirstOption && (this.filterable || this.remote) && this.filteredOptionsCount) {
- this.checkDefaultFirstOption();
- }
- }
- },
- methods: {
- handleComposition: function handleComposition(event) {
- var text = event.target.value;
- if (event.type === 'compositionend') {
- this.isOnComposition = false;
- this.handleQueryChange(text);
- } else {
- var lastCharacter = text[text.length - 1] || '';
- this.isOnComposition = !Object(shared_["isKorean"])(lastCharacter);
- }
- },
- handleQueryChange: function handleQueryChange(val) {
- var _this5 = this;
- if (this.previousQuery === val || this.isOnComposition) return;
- if (this.previousQuery === null && (typeof this.filterMethod === 'function' || typeof this.remoteMethod === 'function')) {
- this.previousQuery = val;
- return;
- }
- this.previousQuery = val;
- this.$nextTick(function () {
- if (_this5.visible) _this5.broadcast('ElSelectDropdown', 'updatePopper');
- });
- this.hoverIndex = -1;
- if (this.multiple && this.filterable) {
- var length = this.$refs.input.value.length * 15 + 20;
- this.inputLength = this.collapseTags ? Math.min(50, length) : length;
- this.managePlaceholder();
- this.resetInputHeight();
- }
- if (this.remote && typeof this.remoteMethod === 'function') {
- this.hoverIndex = -1;
- this.remoteMethod(val);
- } else if (typeof this.filterMethod === 'function') {
- this.filterMethod(val);
- this.broadcast('ElOptionGroup', 'queryChange');
- } else {
- this.filteredOptionsCount = this.optionsCount;
- this.broadcast('ElOption', 'queryChange', val);
- this.broadcast('ElOptionGroup', 'queryChange');
- }
- if (this.defaultFirstOption && (this.filterable || this.remote) && this.filteredOptionsCount) {
- this.checkDefaultFirstOption();
- }
- },
- scrollToOption: function scrollToOption(option) {
- var target = Array.isArray(option) && option[0] ? option[0].$el : option.$el;
- if (this.$refs.popper && target) {
- var menu = this.$refs.popper.$el.querySelector('.el-select-dropdown__wrap');
- scroll_into_view_default()(menu, target);
- }
- this.$refs.scrollbar && this.$refs.scrollbar.handleScroll();
- },
- handleMenuEnter: function handleMenuEnter() {
- var _this6 = this;
- this.$nextTick(function () {
- return _this6.scrollToOption(_this6.selected);
- });
- },
- emitChange: function emitChange(val) {
- if (!Object(util_["valueEquals"])(this.value, val)) {
- this.$emit('change', val);
- }
- },
- getOption: function getOption(value) {
- var option = void 0;
- var isObject = Object.prototype.toString.call(value).toLowerCase() === '[object object]';
- var isNull = Object.prototype.toString.call(value).toLowerCase() === '[object null]';
- for (var i = this.cachedOptions.length - 1; i >= 0; i--) {
- var cachedOption = this.cachedOptions[i];
- var isEqual = isObject ? Object(util_["getValueByPath"])(cachedOption.value, this.valueKey) === Object(util_["getValueByPath"])(value, this.valueKey) : cachedOption.value === value;
- if (isEqual) {
- option = cachedOption;
- break;
- }
- }
- if (option) return option;
- var label = !isObject && !isNull ? value : '';
- var newOption = {
- value: value,
- currentLabel: label
- };
- if (this.multiple) {
- newOption.hitState = false;
- }
- return newOption;
- },
- setSelected: function setSelected() {
- var _this7 = this;
- if (!this.multiple) {
- var option = this.getOption(this.value);
- if (option.created) {
- this.createdLabel = option.currentLabel;
- this.createdSelected = true;
- } else {
- this.createdSelected = false;
- }
- this.selectedLabel = option.currentLabel;
- this.selected = option;
- if (this.filterable) this.query = this.selectedLabel;
- return;
- }
- var result = [];
- if (Array.isArray(this.value)) {
- this.value.forEach(function (value) {
- result.push(_this7.getOption(value));
- });
- }
- this.selected = result;
- this.$nextTick(function () {
- _this7.resetInputHeight();
- });
- },
- handleFocus: function handleFocus(event) {
- if (!this.softFocus) {
- if (this.automaticDropdown || this.filterable) {
- this.visible = true;
- this.menuVisibleOnFocus = true;
- }
- this.$emit('focus', event);
- } else {
- this.softFocus = false;
- }
- },
- blur: function blur() {
- this.visible = false;
- this.$refs.reference.blur();
- },
- handleBlur: function handleBlur(event) {
- var _this8 = this;
- setTimeout(function () {
- if (_this8.isSilentBlur) {
- _this8.isSilentBlur = false;
- } else {
- _this8.$emit('blur', event);
- }
- }, 50);
- this.softFocus = false;
- },
- handleClearClick: function handleClearClick(event) {
- this.deleteSelected(event);
- },
- doDestroy: function doDestroy() {
- this.$refs.popper && this.$refs.popper.doDestroy();
- },
- handleClose: function handleClose() {
- this.visible = false;
- },
- toggleLastOptionHitState: function toggleLastOptionHitState(hit) {
- if (!Array.isArray(this.selected)) return;
- var option = this.selected[this.selected.length - 1];
- if (!option) return;
- if (hit === true || hit === false) {
- option.hitState = hit;
- return hit;
- }
- option.hitState = !option.hitState;
- return option.hitState;
- },
- deletePrevTag: function deletePrevTag(e) {
- if (e.target.value.length <= 0 && !this.toggleLastOptionHitState()) {
- var value = this.value.slice();
- value.pop();
- this.$emit('input', value);
- this.emitChange(value);
- }
- },
- managePlaceholder: function managePlaceholder() {
- if (this.currentPlaceholder !== '') {
- this.currentPlaceholder = this.$refs.input.value ? '' : this.cachedPlaceHolder;
- }
- },
- resetInputState: function resetInputState(e) {
- if (e.keyCode !== 8) this.toggleLastOptionHitState(false);
- this.inputLength = this.$refs.input.value.length * 15 + 20;
- this.resetInputHeight();
- },
- resetInputHeight: function resetInputHeight() {
- var _this9 = this;
- if (this.collapseTags && !this.filterable) return;
- this.$nextTick(function () {
- if (!_this9.$refs.reference) return;
- var inputChildNodes = _this9.$refs.reference.$el.childNodes;
- var input = [].filter.call(inputChildNodes, function (item) {
- return item.tagName === 'INPUT';
- })[0];
- var tags = _this9.$refs.tags;
- var sizeInMap = _this9.initialInputHeight || 40;
- input.style.height = _this9.selected.length === 0 ? sizeInMap + 'px' : Math.max(tags ? tags.clientHeight + (tags.clientHeight > sizeInMap ? 6 : 0) : 0, sizeInMap) + 'px';
- if (_this9.visible && _this9.emptyText !== false) {
- _this9.broadcast('ElSelectDropdown', 'updatePopper');
- }
- });
- },
- resetHoverIndex: function resetHoverIndex() {
- var _this10 = this;
- setTimeout(function () {
- if (!_this10.multiple) {
- _this10.hoverIndex = _this10.options.indexOf(_this10.selected);
- } else {
- if (_this10.selected.length > 0) {
- _this10.hoverIndex = Math.min.apply(null, _this10.selected.map(function (item) {
- return _this10.options.indexOf(item);
- }));
- } else {
- _this10.hoverIndex = -1;
- }
- }
- }, 300);
- },
- handleOptionSelect: function handleOptionSelect(option, byClick) {
- var _this11 = this;
- if (this.multiple) {
- var value = (this.value || []).slice();
- var optionIndex = this.getValueIndex(value, option.value);
- if (optionIndex > -1) {
- value.splice(optionIndex, 1);
- } else if (this.multipleLimit <= 0 || value.length < this.multipleLimit) {
- value.push(option.value);
- }
- this.$emit('input', value);
- this.emitChange(value);
- if (option.created) {
- this.query = '';
- this.handleQueryChange('');
- this.inputLength = 20;
- }
- if (this.filterable) this.$refs.input.focus();
- } else {
- this.$emit('input', option.value);
- this.emitChange(option.value);
- this.visible = false;
- }
- this.isSilentBlur = byClick;
- this.setSoftFocus();
- if (this.visible) return;
- this.$nextTick(function () {
- _this11.scrollToOption(option);
- });
- },
- setSoftFocus: function setSoftFocus() {
- this.softFocus = true;
- var input = this.$refs.input || this.$refs.reference;
- if (input) {
- input.focus();
- }
- },
- getValueIndex: function getValueIndex() {
- var arr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
- var value = arguments[1];
- var isObject = Object.prototype.toString.call(value).toLowerCase() === '[object object]';
- if (!isObject) {
- return arr.indexOf(value);
- } else {
- var valueKey = this.valueKey;
- var index = -1;
- arr.some(function (item, i) {
- if (Object(util_["getValueByPath"])(item, valueKey) === Object(util_["getValueByPath"])(value, valueKey)) {
- index = i;
- return true;
- }
- return false;
- });
- return index;
- }
- },
- toggleMenu: function toggleMenu() {
- if (!this.selectDisabled) {
- if (this.menuVisibleOnFocus) {
- this.menuVisibleOnFocus = false;
- } else {
- this.visible = !this.visible;
- }
- if (this.visible) {
- (this.$refs.input || this.$refs.reference).focus();
- }
- }
- },
- selectOption: function selectOption() {
- if (!this.visible) {
- this.toggleMenu();
- } else {
- if (this.options[this.hoverIndex]) {
- this.handleOptionSelect(this.options[this.hoverIndex]);
- }
- }
- },
- deleteSelected: function deleteSelected(event) {
- event.stopPropagation();
- var value = this.multiple ? [] : null;
- this.$emit('input', value);
- this.emitChange(value);
- this.visible = false;
- this.$emit('clear');
- },
- deleteTag: function deleteTag(event, tag) {
- var index = this.selected.indexOf(tag);
- if (index > -1 && !this.selectDisabled) {
- var value = this.value.slice();
- value.splice(index, 1);
- this.$emit('input', value);
- this.emitChange(value);
- this.$emit('remove-tag', tag.value);
- }
- event.stopPropagation();
- },
- onInputChange: function onInputChange() {
- if (this.filterable && this.query !== this.selectedLabel) {
- this.query = this.selectedLabel;
- this.handleQueryChange(this.query);
- }
- },
- onOptionDestroy: function onOptionDestroy(index) {
- if (index > -1) {
- this.optionsCount--;
- this.filteredOptionsCount--;
- this.options.splice(index, 1);
- }
- },
- resetInputWidth: function resetInputWidth() {
- this.inputWidth = this.$refs.reference.$el.getBoundingClientRect().width;
- },
- handleResize: function handleResize() {
- this.resetInputWidth();
- if (this.multiple) this.resetInputHeight();
- },
- checkDefaultFirstOption: function checkDefaultFirstOption() {
- this.hoverIndex = -1;
- // highlight the created option
- var hasCreated = false;
- for (var i = this.options.length - 1; i >= 0; i--) {
- if (this.options[i].created) {
- hasCreated = true;
- this.hoverIndex = i;
- break;
- }
- }
- if (hasCreated) return;
- for (var _i = 0; _i !== this.options.length; ++_i) {
- var option = this.options[_i];
- if (this.query) {
- // highlight first options that passes the filter
- if (!option.disabled && !option.groupDisabled && option.visible) {
- this.hoverIndex = _i;
- break;
- }
- } else {
- // highlight currently selected option
- if (option.itemSelected) {
- this.hoverIndex = _i;
- break;
- }
- }
- }
- },
- getValueKey: function getValueKey(item) {
- if (Object.prototype.toString.call(item.value).toLowerCase() !== '[object object]') {
- return item.value;
- } else {
- return Object(util_["getValueByPath"])(item.value, this.valueKey);
- }
- }
- },
- created: function created() {
- var _this12 = this;
- this.cachedPlaceHolder = this.currentPlaceholder = this.placeholder;
- if (this.multiple && !Array.isArray(this.value)) {
- this.$emit('input', []);
- }
- if (!this.multiple && Array.isArray(this.value)) {
- this.$emit('input', '');
- }
- this.debouncedOnInputChange = debounce_default()(this.debounce, function () {
- _this12.onInputChange();
- });
- this.debouncedQueryChange = debounce_default()(this.debounce, function (e) {
- _this12.handleQueryChange(e.target.value);
- });
- this.$on('handleOptionClick', this.handleOptionSelect);
- this.$on('setSelected', this.setSelected);
- },
- mounted: function mounted() {
- var _this13 = this;
- if (this.multiple && Array.isArray(this.value) && this.value.length > 0) {
- this.currentPlaceholder = '';
- }
- Object(resize_event_["addResizeListener"])(this.$el, this.handleResize);
- var reference = this.$refs.reference;
- if (reference && reference.$el) {
- var sizeMap = {
- medium: 36,
- small: 32,
- mini: 28
- };
- this.initialInputHeight = reference.$el.getBoundingClientRect().height || sizeMap[this.selectSize];
- }
- if (this.remote && this.multiple) {
- this.resetInputHeight();
- }
- this.$nextTick(function () {
- if (reference && reference.$el) {
- _this13.inputWidth = reference.$el.getBoundingClientRect().width;
- }
- });
- this.setSelected();
- },
- beforeDestroy: function beforeDestroy() {
- if (this.$el && this.handleResize) Object(resize_event_["removeResizeListener"])(this.$el, this.handleResize);
- }
- });
- // CONCATENATED MODULE: ./packages/select/src/select.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_selectvue_type_script_lang_js_ = (selectvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/select/src/select.vue
- /* normalize component */
- var select_component = normalizeComponent(
- src_selectvue_type_script_lang_js_,
- selectvue_type_template_id_0e4aade6_render,
- selectvue_type_template_id_0e4aade6_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var select_api; }
- select_component.options.__file = "packages/select/src/select.vue"
- /* harmony default export */ var src_select = (select_component.exports);
- // CONCATENATED MODULE: ./packages/select/index.js
- /* istanbul ignore next */
- src_select.install = function (Vue) {
- Vue.component(src_select.name, src_select);
- };
- /* harmony default export */ var packages_select = (src_select);
- // CONCATENATED MODULE: ./packages/option/index.js
- /* istanbul ignore next */
- src_option.install = function (Vue) {
- Vue.component(src_option.name, src_option);
- };
- /* harmony default export */ var packages_option = (src_option);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/option-group.vue?vue&type=template&id=6685e5de&
- var option_groupvue_type_template_id_6685e5de_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "ul",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-select-group__wrap"
- },
- [
- _c("li", { staticClass: "el-select-group__title" }, [
- _vm._v(_vm._s(_vm.label))
- ]),
- _c("li", [
- _c("ul", { staticClass: "el-select-group" }, [_vm._t("default")], 2)
- ])
- ]
- )
- }
- var option_groupvue_type_template_id_6685e5de_staticRenderFns = []
- option_groupvue_type_template_id_6685e5de_render._withStripped = true
- // CONCATENATED MODULE: ./packages/select/src/option-group.vue?vue&type=template&id=6685e5de&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/select/src/option-group.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var option_groupvue_type_script_lang_js_ = ({
- mixins: [emitter_default.a],
- name: 'ElOptionGroup',
- componentName: 'ElOptionGroup',
- props: {
- label: String,
- disabled: {
- type: Boolean,
- default: false
- }
- },
- data: function data() {
- return {
- visible: true
- };
- },
- watch: {
- disabled: function disabled(val) {
- this.broadcast('ElOption', 'handleGroupDisabled', val);
- }
- },
- methods: {
- queryChange: function queryChange() {
- this.visible = this.$children && Array.isArray(this.$children) && this.$children.some(function (option) {
- return option.visible === true;
- });
- }
- },
- created: function created() {
- this.$on('queryChange', this.queryChange);
- },
- mounted: function mounted() {
- if (this.disabled) {
- this.broadcast('ElOption', 'handleGroupDisabled', this.disabled);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/select/src/option-group.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_option_groupvue_type_script_lang_js_ = (option_groupvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/select/src/option-group.vue
- /* normalize component */
- var option_group_component = normalizeComponent(
- src_option_groupvue_type_script_lang_js_,
- option_groupvue_type_template_id_6685e5de_render,
- option_groupvue_type_template_id_6685e5de_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var option_group_api; }
- option_group_component.options.__file = "packages/select/src/option-group.vue"
- /* harmony default export */ var option_group = (option_group_component.exports);
- // CONCATENATED MODULE: ./packages/option-group/index.js
- /* istanbul ignore next */
- option_group.install = function (Vue) {
- Vue.component(option_group.name, option_group);
- };
- /* harmony default export */ var packages_option_group = (option_group);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button.vue?vue&type=template&id=ca859fb4&
- var buttonvue_type_template_id_ca859fb4_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "button",
- {
- staticClass: "el-button",
- class: [
- _vm.type ? "el-button--" + _vm.type : "",
- _vm.buttonSize ? "el-button--" + _vm.buttonSize : "",
- {
- "is-disabled": _vm.buttonDisabled,
- "is-loading": _vm.loading,
- "is-plain": _vm.plain,
- "is-round": _vm.round,
- "is-circle": _vm.circle
- }
- ],
- attrs: {
- disabled: _vm.buttonDisabled || _vm.loading,
- autofocus: _vm.autofocus,
- type: _vm.nativeType
- },
- on: { click: _vm.handleClick }
- },
- [
- _vm.loading ? _c("i", { staticClass: "el-icon-loading" }) : _vm._e(),
- _vm.icon && !_vm.loading ? _c("i", { class: _vm.icon }) : _vm._e(),
- _vm.$slots.default ? _c("span", [_vm._t("default")], 2) : _vm._e()
- ]
- )
- }
- var buttonvue_type_template_id_ca859fb4_staticRenderFns = []
- buttonvue_type_template_id_ca859fb4_render._withStripped = true
- // CONCATENATED MODULE: ./packages/button/src/button.vue?vue&type=template&id=ca859fb4&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var buttonvue_type_script_lang_js_ = ({
- name: 'ElButton',
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- props: {
- type: {
- type: String,
- default: 'default'
- },
- size: String,
- icon: {
- type: String,
- default: ''
- },
- nativeType: {
- type: String,
- default: 'button'
- },
- loading: Boolean,
- disabled: Boolean,
- plain: Boolean,
- autofocus: Boolean,
- round: Boolean,
- circle: Boolean
- },
- computed: {
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- buttonSize: function buttonSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- buttonDisabled: function buttonDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- }
- },
- methods: {
- handleClick: function handleClick(evt) {
- this.$emit('click', evt);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/button/src/button.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_buttonvue_type_script_lang_js_ = (buttonvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/button/src/button.vue
- /* normalize component */
- var button_component = normalizeComponent(
- src_buttonvue_type_script_lang_js_,
- buttonvue_type_template_id_ca859fb4_render,
- buttonvue_type_template_id_ca859fb4_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var button_api; }
- button_component.options.__file = "packages/button/src/button.vue"
- /* harmony default export */ var src_button = (button_component.exports);
- // CONCATENATED MODULE: ./packages/button/index.js
- /* istanbul ignore next */
- src_button.install = function (Vue) {
- Vue.component(src_button.name, src_button);
- };
- /* harmony default export */ var packages_button = (src_button);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button-group.vue?vue&type=template&id=3d8661d0&
- var button_groupvue_type_template_id_3d8661d0_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("div", { staticClass: "el-button-group" }, [_vm._t("default")], 2)
- }
- var button_groupvue_type_template_id_3d8661d0_staticRenderFns = []
- button_groupvue_type_template_id_3d8661d0_render._withStripped = true
- // CONCATENATED MODULE: ./packages/button/src/button-group.vue?vue&type=template&id=3d8661d0&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button-group.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- /* harmony default export */ var button_groupvue_type_script_lang_js_ = ({
- name: 'ElButtonGroup'
- });
- // CONCATENATED MODULE: ./packages/button/src/button-group.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_button_groupvue_type_script_lang_js_ = (button_groupvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/button/src/button-group.vue
- /* normalize component */
- var button_group_component = normalizeComponent(
- src_button_groupvue_type_script_lang_js_,
- button_groupvue_type_template_id_3d8661d0_render,
- button_groupvue_type_template_id_3d8661d0_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var button_group_api; }
- button_group_component.options.__file = "packages/button/src/button-group.vue"
- /* harmony default export */ var button_group = (button_group_component.exports);
- // CONCATENATED MODULE: ./packages/button-group/index.js
- /* istanbul ignore next */
- button_group.install = function (Vue) {
- Vue.component(button_group.name, button_group);
- };
- /* harmony default export */ var packages_button_group = (button_group);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/table/src/table.vue?vue&type=template&id=493fe34e&
- var tablevue_type_template_id_493fe34e_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-table",
- class: [
- {
- "el-table--fit": _vm.fit,
- "el-table--striped": _vm.stripe,
- "el-table--border": _vm.border || _vm.isGroup,
- "el-table--hidden": _vm.isHidden,
- "el-table--group": _vm.isGroup,
- "el-table--fluid-height": _vm.maxHeight,
- "el-table--scrollable-x": _vm.layout.scrollX,
- "el-table--scrollable-y": _vm.layout.scrollY,
- "el-table--enable-row-hover": !_vm.store.states.isComplex,
- "el-table--enable-row-transition":
- (_vm.store.states.data || []).length !== 0 &&
- (_vm.store.states.data || []).length < 100
- },
- _vm.tableSize ? "el-table--" + _vm.tableSize : ""
- ],
- on: {
- mouseleave: function($event) {
- _vm.handleMouseLeave($event)
- }
- }
- },
- [
- _c(
- "div",
- { ref: "hiddenColumns", staticClass: "hidden-columns" },
- [_vm._t("default")],
- 2
- ),
- _vm.showHeader
- ? _c(
- "div",
- {
- directives: [
- {
- name: "mousewheel",
- rawName: "v-mousewheel",
- value: _vm.handleHeaderFooterMousewheel,
- expression: "handleHeaderFooterMousewheel"
- }
- ],
- ref: "headerWrapper",
- staticClass: "el-table__header-wrapper"
- },
- [
- _c("table-header", {
- ref: "tableHeader",
- style: {
- width: _vm.layout.bodyWidth ? _vm.layout.bodyWidth + "px" : ""
- },
- attrs: {
- store: _vm.store,
- border: _vm.border,
- "default-sort": _vm.defaultSort
- }
- })
- ],
- 1
- )
- : _vm._e(),
- _c(
- "div",
- {
- ref: "bodyWrapper",
- staticClass: "el-table__body-wrapper",
- class: [
- _vm.layout.scrollX
- ? "is-scrolling-" + _vm.scrollPosition
- : "is-scrolling-none"
- ],
- style: [_vm.bodyHeight]
- },
- [
- _c("table-body", {
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- context: _vm.context,
- store: _vm.store,
- stripe: _vm.stripe,
- "row-class-name": _vm.rowClassName,
- "row-style": _vm.rowStyle,
- highlight: _vm.highlightCurrentRow
- }
- }),
- !_vm.data || _vm.data.length === 0
- ? _c(
- "div",
- {
- ref: "emptyBlock",
- staticClass: "el-table__empty-block",
- style: {
- width: _vm.bodyWidth
- }
- },
- [
- _c(
- "span",
- { staticClass: "el-table__empty-text" },
- [
- _vm._t("empty", [
- _vm._v(
- _vm._s(_vm.emptyText || _vm.t("el.table.emptyText"))
- )
- ])
- ],
- 2
- )
- ]
- )
- : _vm._e(),
- _vm.$slots.append
- ? _c(
- "div",
- {
- ref: "appendWrapper",
- staticClass: "el-table__append-wrapper"
- },
- [_vm._t("append")],
- 2
- )
- : _vm._e()
- ],
- 1
- ),
- _vm.showSummary
- ? _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.data && _vm.data.length > 0,
- expression: "data && data.length > 0"
- },
- {
- name: "mousewheel",
- rawName: "v-mousewheel",
- value: _vm.handleHeaderFooterMousewheel,
- expression: "handleHeaderFooterMousewheel"
- }
- ],
- ref: "footerWrapper",
- staticClass: "el-table__footer-wrapper"
- },
- [
- _c("table-footer", {
- style: {
- width: _vm.layout.bodyWidth ? _vm.layout.bodyWidth + "px" : ""
- },
- attrs: {
- store: _vm.store,
- border: _vm.border,
- "sum-text": _vm.sumText || _vm.t("el.table.sumText"),
- "summary-method": _vm.summaryMethod,
- "default-sort": _vm.defaultSort
- }
- })
- ],
- 1
- )
- : _vm._e(),
- _vm.fixedColumns.length > 0
- ? _c(
- "div",
- {
- directives: [
- {
- name: "mousewheel",
- rawName: "v-mousewheel",
- value: _vm.handleFixedMousewheel,
- expression: "handleFixedMousewheel"
- }
- ],
- ref: "fixedWrapper",
- staticClass: "el-table__fixed",
- style: [
- {
- width: _vm.layout.fixedWidth
- ? _vm.layout.fixedWidth + "px"
- : ""
- },
- _vm.fixedHeight
- ]
- },
- [
- _vm.showHeader
- ? _c(
- "div",
- {
- ref: "fixedHeaderWrapper",
- staticClass: "el-table__fixed-header-wrapper"
- },
- [
- _c("table-header", {
- ref: "fixedTableHeader",
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- fixed: "left",
- border: _vm.border,
- store: _vm.store
- }
- })
- ],
- 1
- )
- : _vm._e(),
- _c(
- "div",
- {
- ref: "fixedBodyWrapper",
- staticClass: "el-table__fixed-body-wrapper",
- style: [
- {
- top: _vm.layout.headerHeight + "px"
- },
- _vm.fixedBodyHeight
- ]
- },
- [
- _c("table-body", {
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- fixed: "left",
- store: _vm.store,
- stripe: _vm.stripe,
- highlight: _vm.highlightCurrentRow,
- "row-class-name": _vm.rowClassName,
- "row-style": _vm.rowStyle
- }
- }),
- _vm.$slots.append
- ? _c("div", {
- staticClass: "el-table__append-gutter",
- style: {
- height: _vm.layout.appendHeight + "px"
- }
- })
- : _vm._e()
- ],
- 1
- ),
- _vm.showSummary
- ? _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.data && _vm.data.length > 0,
- expression: "data && data.length > 0"
- }
- ],
- ref: "fixedFooterWrapper",
- staticClass: "el-table__fixed-footer-wrapper"
- },
- [
- _c("table-footer", {
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- fixed: "left",
- border: _vm.border,
- "sum-text": _vm.sumText || _vm.t("el.table.sumText"),
- "summary-method": _vm.summaryMethod,
- store: _vm.store
- }
- })
- ],
- 1
- )
- : _vm._e()
- ]
- )
- : _vm._e(),
- _vm.rightFixedColumns.length > 0
- ? _c(
- "div",
- {
- directives: [
- {
- name: "mousewheel",
- rawName: "v-mousewheel",
- value: _vm.handleFixedMousewheel,
- expression: "handleFixedMousewheel"
- }
- ],
- ref: "rightFixedWrapper",
- staticClass: "el-table__fixed-right",
- style: [
- {
- width: _vm.layout.rightFixedWidth
- ? _vm.layout.rightFixedWidth + "px"
- : "",
- right: _vm.layout.scrollY
- ? (_vm.border
- ? _vm.layout.gutterWidth
- : _vm.layout.gutterWidth || 0) + "px"
- : ""
- },
- _vm.fixedHeight
- ]
- },
- [
- _vm.showHeader
- ? _c(
- "div",
- {
- ref: "rightFixedHeaderWrapper",
- staticClass: "el-table__fixed-header-wrapper"
- },
- [
- _c("table-header", {
- ref: "rightFixedTableHeader",
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- fixed: "right",
- border: _vm.border,
- store: _vm.store
- }
- })
- ],
- 1
- )
- : _vm._e(),
- _c(
- "div",
- {
- ref: "rightFixedBodyWrapper",
- staticClass: "el-table__fixed-body-wrapper",
- style: [
- {
- top: _vm.layout.headerHeight + "px"
- },
- _vm.fixedBodyHeight
- ]
- },
- [
- _c("table-body", {
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- fixed: "right",
- store: _vm.store,
- stripe: _vm.stripe,
- "row-class-name": _vm.rowClassName,
- "row-style": _vm.rowStyle,
- highlight: _vm.highlightCurrentRow
- }
- })
- ],
- 1
- ),
- _vm.showSummary
- ? _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.data && _vm.data.length > 0,
- expression: "data && data.length > 0"
- }
- ],
- ref: "rightFixedFooterWrapper",
- staticClass: "el-table__fixed-footer-wrapper"
- },
- [
- _c("table-footer", {
- style: {
- width: _vm.bodyWidth
- },
- attrs: {
- fixed: "right",
- border: _vm.border,
- "sum-text": _vm.sumText || _vm.t("el.table.sumText"),
- "summary-method": _vm.summaryMethod,
- store: _vm.store
- }
- })
- ],
- 1
- )
- : _vm._e()
- ]
- )
- : _vm._e(),
- _vm.rightFixedColumns.length > 0
- ? _c("div", {
- ref: "rightFixedPatch",
- staticClass: "el-table__fixed-right-patch",
- style: {
- width: _vm.layout.scrollY ? _vm.layout.gutterWidth + "px" : "0",
- height: _vm.layout.headerHeight + "px"
- }
- })
- : _vm._e(),
- _c("div", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.resizeProxyVisible,
- expression: "resizeProxyVisible"
- }
- ],
- ref: "resizeProxy",
- staticClass: "el-table__column-resize-proxy"
- })
- ]
- )
- }
- var tablevue_type_template_id_493fe34e_staticRenderFns = []
- tablevue_type_template_id_493fe34e_render._withStripped = true
- // CONCATENATED MODULE: ./packages/table/src/table.vue?vue&type=template&id=493fe34e&
- // EXTERNAL MODULE: external "element-ui/lib/checkbox"
- var checkbox_ = __webpack_require__(15);
- var checkbox_default = /*#__PURE__*/__webpack_require__.n(checkbox_);
- // EXTERNAL MODULE: external "normalize-wheel"
- var external_normalize_wheel_ = __webpack_require__(36);
- var external_normalize_wheel_default = /*#__PURE__*/__webpack_require__.n(external_normalize_wheel_);
- // CONCATENATED MODULE: ./src/directives/mousewheel.js
- var isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
- var mousewheel_mousewheel = function mousewheel(element, callback) {
- if (element && element.addEventListener) {
- element.addEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', function (event) {
- var normalized = external_normalize_wheel_default()(event);
- callback && callback.apply(this, [event, normalized]);
- });
- }
- };
- /* harmony default export */ var directives_mousewheel = ({
- bind: function bind(el, binding) {
- mousewheel_mousewheel(el, binding.value);
- }
- });
- // EXTERNAL MODULE: external "vue"
- var external_vue_ = __webpack_require__(4);
- var external_vue_default = /*#__PURE__*/__webpack_require__.n(external_vue_);
- // CONCATENATED MODULE: ./packages/table/src/util.js
- var util_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- var getCell = function getCell(event) {
- var cell = event.target;
- while (cell && cell.tagName.toUpperCase() !== 'HTML') {
- if (cell.tagName.toUpperCase() === 'TD') {
- return cell;
- }
- cell = cell.parentNode;
- }
- return null;
- };
- var util_isObject = function isObject(obj) {
- return obj !== null && (typeof obj === 'undefined' ? 'undefined' : util_typeof(obj)) === 'object';
- };
- var util_orderBy = function orderBy(array, sortKey, reverse, sortMethod, sortBy) {
- if (!sortKey && !sortMethod && (!sortBy || Array.isArray(sortBy) && !sortBy.length)) {
- return array;
- }
- if (typeof reverse === 'string') {
- reverse = reverse === 'descending' ? -1 : 1;
- } else {
- reverse = reverse && reverse < 0 ? -1 : 1;
- }
- var getKey = sortMethod ? null : function (value, index) {
- if (sortBy) {
- if (!Array.isArray(sortBy)) {
- sortBy = [sortBy];
- }
- return sortBy.map(function (by) {
- if (typeof by === 'string') {
- return Object(util_["getValueByPath"])(value, by);
- } else {
- return by(value, index, array);
- }
- });
- }
- if (sortKey !== '$key') {
- if (util_isObject(value) && '$value' in value) value = value.$value;
- }
- return [util_isObject(value) ? Object(util_["getValueByPath"])(value, sortKey) : value];
- };
- var compare = function compare(a, b) {
- if (sortMethod) {
- return sortMethod(a.value, b.value);
- }
- for (var i = 0, len = a.key.length; i < len; i++) {
- if (a.key[i] < b.key[i]) {
- return -1;
- }
- if (a.key[i] > b.key[i]) {
- return 1;
- }
- }
- return 0;
- };
- return array.map(function (value, index) {
- return {
- value: value,
- index: index,
- key: getKey ? getKey(value, index) : null
- };
- }).sort(function (a, b) {
- var order = compare(a, b);
- if (!order) {
- // make stable https://en.wikipedia.org/wiki/Sorting_algorithm#Stability
- order = a.index - b.index;
- }
- return order * reverse;
- }).map(function (item) {
- return item.value;
- });
- };
- var getColumnById = function getColumnById(table, columnId) {
- var column = null;
- table.columns.forEach(function (item) {
- if (item.id === columnId) {
- column = item;
- }
- });
- return column;
- };
- var getColumnByKey = function getColumnByKey(table, columnKey) {
- var column = null;
- for (var i = 0; i < table.columns.length; i++) {
- var item = table.columns[i];
- if (item.columnKey === columnKey) {
- column = item;
- break;
- }
- }
- return column;
- };
- var getColumnByCell = function getColumnByCell(table, cell) {
- var matches = (cell.className || '').match(/el-table_[^\s]+/gm);
- if (matches) {
- return getColumnById(table, matches[0]);
- }
- return null;
- };
- var getRowIdentity = function getRowIdentity(row, rowKey) {
- if (!row) throw new Error('row is required when get row identity');
- if (typeof rowKey === 'string') {
- if (rowKey.indexOf('.') < 0) {
- return row[rowKey];
- }
- var key = rowKey.split('.');
- var current = row;
- for (var i = 0; i < key.length; i++) {
- current = current[key[i]];
- }
- return current;
- } else if (typeof rowKey === 'function') {
- return rowKey.call(null, row);
- }
- };
- // CONCATENATED MODULE: ./packages/table/src/table-store.js
- var table_store_sortData = function sortData(data, states) {
- var sortingColumn = states.sortingColumn;
- if (!sortingColumn || typeof sortingColumn.sortable === 'string') {
- return data;
- }
- if (Object.keys(states.treeData).length === 0) {
- return util_orderBy(data, states.sortProp, states.sortOrder, sortingColumn.sortMethod, sortingColumn.sortBy);
- }
- // 存在嵌套类型的数据
- var rowKey = states.rowKey;
- var filteredData = [];
- var treeDataMap = {};
- var index = 0;
- while (index < data.length) {
- var cur = data[index];
- var key = cur[rowKey];
- var treeNode = states.treeData[key];
- filteredData.push(cur);
- index++;
- if (!treeNode) {
- continue;
- }
- treeDataMap[key] = [];
- while (index < data.length) {
- cur = data[index];
- treeNode = states.treeData[cur[rowKey]];
- index++;
- if (treeNode && treeNode.level !== 0) {
- treeDataMap[key].push(cur);
- } else {
- filteredData.push(cur);
- break;
- }
- }
- }
- var sortedData = util_orderBy(filteredData, states.sortProp, states.sortOrder, sortingColumn.sortMethod, sortingColumn.sortBy);
- return sortedData.reduce(function (prev, current) {
- var treeNodes = treeDataMap[current[rowKey]] || [];
- return prev.concat(current, treeNodes);
- }, []);
- };
- var table_store_getKeysMap = function getKeysMap(array, rowKey) {
- var arrayMap = {};
- (array || []).forEach(function (row, index) {
- arrayMap[getRowIdentity(row, rowKey)] = { row: row, index: index };
- });
- return arrayMap;
- };
- var toggleRowSelection = function toggleRowSelection(states, row, selected) {
- var changed = false;
- var selection = states.selection;
- var index = selection.indexOf(row);
- if (typeof selected === 'undefined') {
- if (index === -1) {
- selection.push(row);
- changed = true;
- } else {
- selection.splice(index, 1);
- changed = true;
- }
- } else {
- if (selected && index === -1) {
- selection.push(row);
- changed = true;
- } else if (!selected && index > -1) {
- selection.splice(index, 1);
- changed = true;
- }
- }
- return changed;
- };
- var toggleRowExpansion = function toggleRowExpansion(states, row, expanded) {
- var changed = false;
- var expandRows = states.expandRows;
- if (typeof expanded !== 'undefined') {
- var index = expandRows.indexOf(row);
- if (expanded) {
- if (index === -1) {
- expandRows.push(row);
- changed = true;
- }
- } else {
- if (index !== -1) {
- expandRows.splice(index, 1);
- changed = true;
- }
- }
- } else {
- var _index = expandRows.indexOf(row);
- if (_index === -1) {
- expandRows.push(row);
- changed = true;
- } else {
- expandRows.splice(_index, 1);
- changed = true;
- }
- }
- return changed;
- };
- var table_store_TableStore = function TableStore(table) {
- var initialState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- if (!table) {
- throw new Error('Table is required.');
- }
- this.table = table;
- this.states = {
- rowKey: null,
- _columns: [],
- originColumns: [],
- columns: [],
- fixedColumns: [],
- rightFixedColumns: [],
- leafColumns: [],
- fixedLeafColumns: [],
- rightFixedLeafColumns: [],
- leafColumnsLength: 0,
- fixedLeafColumnsLength: 0,
- rightFixedLeafColumnsLength: 0,
- isComplex: false,
- filteredData: null,
- data: null,
- sortingColumn: null,
- sortProp: null,
- sortOrder: null,
- isAllSelected: false,
- selection: [],
- reserveSelection: false,
- selectable: null,
- currentRow: null,
- hoverRow: null,
- filters: {},
- expandRows: [],
- defaultExpandAll: false,
- selectOnIndeterminate: false,
- treeData: {},
- indent: 16,
- lazy: false,
- lazyTreeNodeMap: {}
- };
- this._toggleAllSelection = debounce_default()(10, function (states) {
- var data = states.data || [];
- if (data.length === 0) return;
- var selection = this.states.selection;
- // when only some rows are selected (but not all), select or deselect all of them
- // depending on the value of selectOnIndeterminate
- var value = states.selectOnIndeterminate ? !states.isAllSelected : !(states.isAllSelected || selection.length);
- var selectionChanged = false;
- data.forEach(function (item, index) {
- if (states.selectable) {
- if (states.selectable.call(null, item, index) && toggleRowSelection(states, item, value)) {
- selectionChanged = true;
- }
- } else {
- if (toggleRowSelection(states, item, value)) {
- selectionChanged = true;
- }
- }
- });
- var table = this.table;
- if (selectionChanged) {
- table.$emit('selection-change', selection ? selection.slice() : []);
- }
- table.$emit('select-all', selection);
- states.isAllSelected = value;
- });
- for (var prop in initialState) {
- if (initialState.hasOwnProperty(prop) && this.states.hasOwnProperty(prop)) {
- this.states[prop] = initialState[prop];
- }
- }
- };
- table_store_TableStore.prototype.mutations = {
- setData: function setData(states, data) {
- var _this = this;
- var dataInstanceChanged = states._data !== data;
- states._data = data;
- Object.keys(states.filters).forEach(function (columnId) {
- var values = states.filters[columnId];
- if (!values || values.length === 0) return;
- var column = getColumnById(_this.states, columnId);
- if (column && column.filterMethod) {
- data = data.filter(function (row) {
- return values.some(function (value) {
- return column.filterMethod.call(null, value, row, column);
- });
- });
- }
- });
- states.filteredData = data;
- states.data = table_store_sortData(data || [], states);
- this.updateCurrentRow();
- var rowKey = states.rowKey;
- if (!states.reserveSelection) {
- if (dataInstanceChanged) {
- this.clearSelection();
- } else {
- this.cleanSelection();
- }
- this.updateAllSelected();
- } else {
- if (rowKey) {
- var selection = states.selection;
- var selectedMap = table_store_getKeysMap(selection, rowKey);
- states.data.forEach(function (row) {
- var rowId = getRowIdentity(row, rowKey);
- var rowInfo = selectedMap[rowId];
- if (rowInfo) {
- selection[rowInfo.index] = row;
- }
- });
- this.updateAllSelected();
- } else {
- console.warn('WARN: rowKey is required when reserve-selection is enabled.');
- }
- }
- var defaultExpandAll = states.defaultExpandAll;
- if (defaultExpandAll) {
- this.states.expandRows = (states.data || []).slice(0);
- } else if (rowKey) {
- // update expandRows to new rows according to rowKey
- var ids = table_store_getKeysMap(this.states.expandRows, rowKey);
- var expandRows = [];
- for (var _iterator = states.data, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
- var _ref;
- if (_isArray) {
- if (_i >= _iterator.length) break;
- _ref = _iterator[_i++];
- } else {
- _i = _iterator.next();
- if (_i.done) break;
- _ref = _i.value;
- }
- var row = _ref;
- var rowId = getRowIdentity(row, rowKey);
- if (ids[rowId]) {
- expandRows.push(row);
- }
- }
- this.states.expandRows = expandRows;
- } else {
- // clear the old rows
- this.states.expandRows = [];
- }
- external_vue_default.a.nextTick(function () {
- return _this.table.updateScrollY();
- });
- },
- changeSortCondition: function changeSortCondition(states, options) {
- var _this2 = this;
- states.data = table_store_sortData(states.filteredData || states._data || [], states);
- if (!options || !(options.silent || options.init)) {
- this.table.$emit('sort-change', {
- column: this.states.sortingColumn,
- prop: this.states.sortProp,
- order: this.states.sortOrder
- });
- }
- external_vue_default.a.nextTick(function () {
- return _this2.table.updateScrollY();
- });
- },
- sort: function sort(states, options) {
- var _this3 = this;
- var prop = options.prop,
- order = options.order,
- init = options.init;
- if (prop) {
- states.sortProp = prop;
- states.sortOrder = order || 'ascending';
- external_vue_default.a.nextTick(function () {
- for (var i = 0, length = states.columns.length; i < length; i++) {
- var column = states.columns[i];
- if (column.property === states.sortProp) {
- column.order = states.sortOrder;
- states.sortingColumn = column;
- break;
- }
- }
- if (states.sortingColumn) {
- _this3.commit('changeSortCondition', {
- init: init
- });
- }
- });
- }
- },
- filterChange: function filterChange(states, options) {
- var _this4 = this;
- var column = options.column,
- values = options.values,
- silent = options.silent,
- multi = options.multi;
- if (values && !Array.isArray(values)) {
- values = [values];
- }
- var filters = {};
- if (multi) {
- column.forEach(function (col) {
- states.filters[col.id] = values;
- filters[col.columnKey || col.id] = values;
- });
- } else {
- var prop = column.property;
- if (prop) {
- states.filters[column.id] = values;
- filters[column.columnKey || column.id] = values;
- }
- }
- var data = states._data;
- Object.keys(states.filters).forEach(function (columnId) {
- var values = states.filters[columnId];
- if (!values || values.length === 0) return;
- var column = getColumnById(_this4.states, columnId);
- if (column && column.filterMethod) {
- data = data.filter(function (row) {
- return values.some(function (value) {
- return column.filterMethod.call(null, value, row, column);
- });
- });
- }
- });
- states.filteredData = data;
- states.data = table_store_sortData(data, states);
- if (!silent) {
- this.table.$emit('filter-change', filters);
- }
- external_vue_default.a.nextTick(function () {
- return _this4.table.updateScrollY();
- });
- },
- insertColumn: function insertColumn(states, column, index, parent) {
- var array = states._columns;
- if (parent) {
- array = parent.children;
- if (!array) array = parent.children = [];
- }
- if (typeof index !== 'undefined') {
- array.splice(index, 0, column);
- } else {
- array.push(column);
- }
- if (column.type === 'selection') {
- states.selectable = column.selectable;
- states.reserveSelection = column.reserveSelection;
- }
- if (this.table.$ready) {
- this.updateColumns(); // hack for dynamics insert column
- this.scheduleLayout();
- }
- },
- removeColumn: function removeColumn(states, column, parent) {
- var array = states._columns;
- if (parent) {
- array = parent.children;
- if (!array) array = parent.children = [];
- }
- if (array) {
- array.splice(array.indexOf(column), 1);
- }
- if (this.table.$ready) {
- this.updateColumns(); // hack for dynamics remove column
- this.scheduleLayout();
- }
- },
- setHoverRow: function setHoverRow(states, row) {
- states.hoverRow = row;
- },
- setCurrentRow: function setCurrentRow(states, row) {
- var oldCurrentRow = states.currentRow;
- states.currentRow = row;
- if (oldCurrentRow !== row) {
- this.table.$emit('current-change', row, oldCurrentRow);
- }
- },
- rowSelectedChanged: function rowSelectedChanged(states, row) {
- var changed = toggleRowSelection(states, row);
- var selection = states.selection;
- if (changed) {
- var table = this.table;
- table.$emit('selection-change', selection ? selection.slice() : []);
- table.$emit('select', selection, row);
- }
- this.updateAllSelected();
- },
- toggleAllSelection: function toggleAllSelection(state) {
- this._toggleAllSelection(state);
- }
- };
- var doFlattenColumns = function doFlattenColumns(columns) {
- var result = [];
- columns.forEach(function (column) {
- if (column.children) {
- result.push.apply(result, doFlattenColumns(column.children));
- } else {
- result.push(column);
- }
- });
- return result;
- };
- table_store_TableStore.prototype.updateColumns = function () {
- var states = this.states;
- var _columns = states._columns || [];
- states.fixedColumns = _columns.filter(function (column) {
- return column.fixed === true || column.fixed === 'left';
- });
- states.rightFixedColumns = _columns.filter(function (column) {
- return column.fixed === 'right';
- });
- if (states.fixedColumns.length > 0 && _columns[0] && _columns[0].type === 'selection' && !_columns[0].fixed) {
- _columns[0].fixed = true;
- states.fixedColumns.unshift(_columns[0]);
- }
- var notFixedColumns = _columns.filter(function (column) {
- return !column.fixed;
- });
- states.originColumns = [].concat(states.fixedColumns).concat(notFixedColumns).concat(states.rightFixedColumns);
- var leafColumns = doFlattenColumns(notFixedColumns);
- var fixedLeafColumns = doFlattenColumns(states.fixedColumns);
- var rightFixedLeafColumns = doFlattenColumns(states.rightFixedColumns);
- states.leafColumnsLength = leafColumns.length;
- states.fixedLeafColumnsLength = fixedLeafColumns.length;
- states.rightFixedLeafColumnsLength = rightFixedLeafColumns.length;
- states.columns = [].concat(fixedLeafColumns).concat(leafColumns).concat(rightFixedLeafColumns);
- states.isComplex = states.fixedColumns.length > 0 || states.rightFixedColumns.length > 0;
- };
- table_store_TableStore.prototype.isSelected = function (row) {
- return (this.states.selection || []).indexOf(row) > -1;
- };
- table_store_TableStore.prototype.clearSelection = function () {
- var states = this.states;
- states.isAllSelected = false;
- var oldSelection = states.selection;
- if (states.selection.length) {
- states.selection = [];
- }
- if (oldSelection.length > 0) {
- this.table.$emit('selection-change', states.selection ? states.selection.slice() : []);
- }
- };
- table_store_TableStore.prototype.setExpandRowKeys = function (rowKeys) {
- var expandRows = [];
- var data = this.states.data;
- var rowKey = this.states.rowKey;
- if (!rowKey) throw new Error('[Table] prop row-key should not be empty.');
- var keysMap = table_store_getKeysMap(data, rowKey);
- rowKeys.forEach(function (key) {
- var info = keysMap[key];
- if (info) {
- expandRows.push(info.row);
- }
- });
- this.states.expandRows = expandRows;
- };
- table_store_TableStore.prototype.toggleRowSelection = function (row, selected) {
- var changed = toggleRowSelection(this.states, row, selected);
- if (changed) {
- this.table.$emit('selection-change', this.states.selection ? this.states.selection.slice() : []);
- }
- };
- table_store_TableStore.prototype.toggleRowExpansion = function (row, expanded) {
- var changed = toggleRowExpansion(this.states, row, expanded);
- if (changed) {
- this.table.$emit('expand-change', row, this.states.expandRows);
- this.scheduleLayout();
- }
- };
- table_store_TableStore.prototype.isRowExpanded = function (row) {
- var _states = this.states,
- _states$expandRows = _states.expandRows,
- expandRows = _states$expandRows === undefined ? [] : _states$expandRows,
- rowKey = _states.rowKey;
- if (rowKey) {
- var expandMap = table_store_getKeysMap(expandRows, rowKey);
- return !!expandMap[getRowIdentity(row, rowKey)];
- }
- return expandRows.indexOf(row) !== -1;
- };
- table_store_TableStore.prototype.cleanSelection = function () {
- var selection = this.states.selection || [];
- var data = this.states.data;
- var rowKey = this.states.rowKey;
- var deleted = void 0;
- if (rowKey) {
- deleted = [];
- var selectedMap = table_store_getKeysMap(selection, rowKey);
- var dataMap = table_store_getKeysMap(data, rowKey);
- for (var key in selectedMap) {
- if (selectedMap.hasOwnProperty(key) && !dataMap[key]) {
- deleted.push(selectedMap[key].row);
- }
- }
- } else {
- deleted = selection.filter(function (item) {
- return data.indexOf(item) === -1;
- });
- }
- deleted.forEach(function (deletedItem) {
- selection.splice(selection.indexOf(deletedItem), 1);
- });
- if (deleted.length) {
- this.table.$emit('selection-change', selection ? selection.slice() : []);
- }
- };
- table_store_TableStore.prototype.clearFilter = function (columnKeys) {
- var states = this.states;
- var _table$$refs = this.table.$refs,
- tableHeader = _table$$refs.tableHeader,
- fixedTableHeader = _table$$refs.fixedTableHeader,
- rightFixedTableHeader = _table$$refs.rightFixedTableHeader;
- var panels = {};
- if (tableHeader) panels = merge_default()(panels, tableHeader.filterPanels);
- if (fixedTableHeader) panels = merge_default()(panels, fixedTableHeader.filterPanels);
- if (rightFixedTableHeader) panels = merge_default()(panels, rightFixedTableHeader.filterPanels);
- var keys = Object.keys(panels);
- if (!keys.length) return;
- if (typeof columnKeys === 'string') {
- columnKeys = [columnKeys];
- }
- if (Array.isArray(columnKeys)) {
- var columns = columnKeys.map(function (key) {
- return getColumnByKey(states, key);
- });
- keys.forEach(function (key) {
- var column = columns.find(function (col) {
- return col.id === key;
- });
- if (column) {
- panels[key].filteredValue = [];
- }
- });
- this.commit('filterChange', {
- column: columns,
- value: [],
- silent: true,
- multi: true
- });
- } else {
- keys.forEach(function (key) {
- panels[key].filteredValue = [];
- });
- states.filters = {};
- this.commit('filterChange', {
- column: {},
- values: [],
- silent: true
- });
- }
- };
- table_store_TableStore.prototype.clearSort = function () {
- var states = this.states;
- if (!states.sortingColumn) return;
- states.sortingColumn.order = null;
- states.sortProp = null;
- states.sortOrder = null;
- this.commit('changeSortCondition', {
- silent: true
- });
- };
- table_store_TableStore.prototype.updateAllSelected = function () {
- var states = this.states;
- var selection = states.selection,
- rowKey = states.rowKey,
- selectable = states.selectable,
- data = states.data;
- if (!data || data.length === 0) {
- states.isAllSelected = false;
- return;
- }
- var selectedMap = void 0;
- if (rowKey) {
- selectedMap = table_store_getKeysMap(states.selection, rowKey);
- }
- var isSelected = function isSelected(row) {
- if (selectedMap) {
- return !!selectedMap[getRowIdentity(row, rowKey)];
- } else {
- return selection.indexOf(row) !== -1;
- }
- };
- var isAllSelected = true;
- var selectedCount = 0;
- for (var i = 0, j = data.length; i < j; i++) {
- var item = data[i];
- var isRowSelectable = selectable && selectable.call(null, item, i);
- if (!isSelected(item)) {
- if (!selectable || isRowSelectable) {
- isAllSelected = false;
- break;
- }
- } else {
- selectedCount++;
- }
- }
- if (selectedCount === 0) isAllSelected = false;
- states.isAllSelected = isAllSelected;
- };
- table_store_TableStore.prototype.scheduleLayout = function (updateColumns) {
- if (updateColumns) {
- this.updateColumns();
- }
- this.table.debouncedUpdateLayout();
- };
- table_store_TableStore.prototype.setCurrentRowKey = function (key) {
- var states = this.states;
- var rowKey = states.rowKey;
- if (!rowKey) throw new Error('[Table] row-key should not be empty.');
- var data = states.data || [];
- var keysMap = table_store_getKeysMap(data, rowKey);
- var info = keysMap[key];
- states.currentRow = info ? info.row : null;
- };
- table_store_TableStore.prototype.updateCurrentRow = function () {
- var states = this.states;
- var table = this.table;
- var data = states.data || [];
- var oldCurrentRow = states.currentRow;
- if (data.indexOf(oldCurrentRow) === -1) {
- if (states.rowKey && oldCurrentRow) {
- var newCurrentRow = null;
- for (var i = 0; i < data.length; i++) {
- var item = data[i];
- if (item && item[states.rowKey] === oldCurrentRow[states.rowKey]) {
- newCurrentRow = item;
- break;
- }
- }
- if (newCurrentRow) {
- states.currentRow = newCurrentRow;
- return;
- }
- }
- states.currentRow = null;
- if (states.currentRow !== oldCurrentRow) {
- table.$emit('current-change', null, oldCurrentRow);
- }
- }
- };
- table_store_TableStore.prototype.commit = function (name) {
- var mutations = this.mutations;
- if (mutations[name]) {
- for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
- args[_key - 1] = arguments[_key];
- }
- mutations[name].apply(this, [this.states].concat(args));
- } else {
- throw new Error('Action not found: ' + name);
- }
- };
- table_store_TableStore.prototype.toggleTreeExpansion = function (rowKey) {
- var treeData = this.states.treeData;
- var node = treeData[rowKey];
- if (!node) return;
- if (typeof node.expanded !== 'boolean') {
- throw new Error('a leaf must have expanded property');
- }
- node.expanded = !node.expanded;
- var _traverse = null;
- if (node.expanded) {
- _traverse = function traverse(children, parent) {
- if (children && parent.expanded) {
- children.forEach(function (key) {
- treeData[key].display = true;
- _traverse(treeData[key].children, treeData[key]);
- });
- }
- };
- node.children.forEach(function (key) {
- treeData[key].display = true;
- _traverse(treeData[key].children, treeData[key]);
- });
- } else {
- var traverse = function traverse(children) {
- if (!children) return;
- children.forEach(function (key) {
- treeData[key].display = false;
- traverse(treeData[key].children);
- });
- };
- traverse(node.children);
- }
- };
- table_store_TableStore.prototype.loadData = function (row, treeNode) {
- var _this5 = this;
- var table = this.table;
- var parentRowKey = treeNode.rowKey;
- if (table.lazy && table.load) {
- table.load(row, treeNode, function (data) {
- if (!Array.isArray(data)) {
- throw new Error('data must be an array');
- }
- var treeData = _this5.states.treeData;
- data.forEach(function (item) {
- var rowKey = table.getRowKey(item);
- var parent = treeData[parentRowKey];
- parent.loaded = true;
- parent.children.push(rowKey);
- var child = {
- display: true,
- level: parent.level + 1
- };
- if (item.hasChildren) {
- child.expanded = false;
- child.hasChildren = true;
- child.children = [];
- }
- external_vue_default.a.set(treeData, rowKey, child);
- external_vue_default.a.set(_this5.states.lazyTreeNodeMap, rowKey, item);
- });
- _this5.toggleTreeExpansion(parentRowKey);
- });
- }
- };
- /* harmony default export */ var table_store = (table_store_TableStore);
- // EXTERNAL MODULE: external "element-ui/lib/utils/scrollbar-width"
- var scrollbar_width_ = __webpack_require__(29);
- var scrollbar_width_default = /*#__PURE__*/__webpack_require__.n(scrollbar_width_);
- // CONCATENATED MODULE: ./packages/table/src/table-layout.js
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var table_layout_TableLayout = function () {
- function TableLayout(options) {
- _classCallCheck(this, TableLayout);
- this.observers = [];
- this.table = null;
- this.store = null;
- this.columns = null;
- this.fit = true;
- this.showHeader = true;
- this.height = null;
- this.scrollX = false;
- this.scrollY = false;
- this.bodyWidth = null;
- this.fixedWidth = null;
- this.rightFixedWidth = null;
- this.tableHeight = null;
- this.headerHeight = 44; // Table Header Height
- this.appendHeight = 0; // Append Slot Height
- this.footerHeight = 44; // Table Footer Height
- this.viewportHeight = null; // Table Height - Scroll Bar Height
- this.bodyHeight = null; // Table Height - Table Header Height
- this.fixedBodyHeight = null; // Table Height - Table Header Height - Scroll Bar Height
- this.gutterWidth = scrollbar_width_default()();
- for (var name in options) {
- if (options.hasOwnProperty(name)) {
- this[name] = options[name];
- }
- }
- if (!this.table) {
- throw new Error('table is required for Table Layout');
- }
- if (!this.store) {
- throw new Error('store is required for Table Layout');
- }
- }
- TableLayout.prototype.updateScrollY = function updateScrollY() {
- var height = this.height;
- if (typeof height !== 'string' && typeof height !== 'number') return;
- var bodyWrapper = this.table.bodyWrapper;
- if (this.table.$el && bodyWrapper) {
- var body = bodyWrapper.querySelector('.el-table__body');
- this.scrollY = body.offsetHeight > this.bodyHeight;
- }
- };
- TableLayout.prototype.setHeight = function setHeight(value) {
- var _this = this;
- var prop = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'height';
- if (external_vue_default.a.prototype.$isServer) return;
- var el = this.table.$el;
- if (typeof value === 'string' && /^\d+$/.test(value)) {
- value = Number(value);
- }
- this.height = value;
- if (!el && (value || value === 0)) return external_vue_default.a.nextTick(function () {
- return _this.setHeight(value, prop);
- });
- if (typeof value === 'number') {
- el.style[prop] = value + 'px';
- this.updateElsHeight();
- } else if (typeof value === 'string') {
- el.style[prop] = value;
- this.updateElsHeight();
- }
- };
- TableLayout.prototype.setMaxHeight = function setMaxHeight(value) {
- return this.setHeight(value, 'max-height');
- };
- TableLayout.prototype.updateElsHeight = function updateElsHeight() {
- var _this2 = this;
- if (!this.table.$ready) return external_vue_default.a.nextTick(function () {
- return _this2.updateElsHeight();
- });
- var _table$$refs = this.table.$refs,
- headerWrapper = _table$$refs.headerWrapper,
- appendWrapper = _table$$refs.appendWrapper,
- footerWrapper = _table$$refs.footerWrapper;
- this.appendHeight = appendWrapper ? appendWrapper.offsetHeight : 0;
- if (this.showHeader && !headerWrapper) return;
- var headerHeight = this.headerHeight = !this.showHeader ? 0 : headerWrapper.offsetHeight;
- if (this.showHeader && headerWrapper.offsetWidth > 0 && (this.table.columns || []).length > 0 && headerHeight < 2) {
- return external_vue_default.a.nextTick(function () {
- return _this2.updateElsHeight();
- });
- }
- var tableHeight = this.tableHeight = this.table.$el.clientHeight;
- if (this.height !== null && (!isNaN(this.height) || typeof this.height === 'string')) {
- var footerHeight = this.footerHeight = footerWrapper ? footerWrapper.offsetHeight : 0;
- this.bodyHeight = tableHeight - headerHeight - footerHeight + (footerWrapper ? 1 : 0);
- }
- this.fixedBodyHeight = this.scrollX ? this.bodyHeight - this.gutterWidth : this.bodyHeight;
- var noData = !this.table.data || this.table.data.length === 0;
- this.viewportHeight = this.scrollX ? tableHeight - (noData ? 0 : this.gutterWidth) : tableHeight;
- this.updateScrollY();
- this.notifyObservers('scrollable');
- };
- TableLayout.prototype.getFlattenColumns = function getFlattenColumns() {
- var flattenColumns = [];
- var columns = this.table.columns;
- columns.forEach(function (column) {
- if (column.isColumnGroup) {
- flattenColumns.push.apply(flattenColumns, column.columns);
- } else {
- flattenColumns.push(column);
- }
- });
- return flattenColumns;
- };
- TableLayout.prototype.updateColumnsWidth = function updateColumnsWidth() {
- if (external_vue_default.a.prototype.$isServer) return;
- var fit = this.fit;
- var bodyWidth = this.table.$el.clientWidth;
- var bodyMinWidth = 0;
- var flattenColumns = this.getFlattenColumns();
- var flexColumns = flattenColumns.filter(function (column) {
- return typeof column.width !== 'number';
- });
- flattenColumns.forEach(function (column) {
- // Clean those columns whose width changed from flex to unflex
- if (typeof column.width === 'number' && column.realWidth) column.realWidth = null;
- });
- if (flexColumns.length > 0 && fit) {
- flattenColumns.forEach(function (column) {
- bodyMinWidth += column.width || column.minWidth || 80;
- });
- var scrollYWidth = this.scrollY ? this.gutterWidth : 0;
- if (bodyMinWidth <= bodyWidth - scrollYWidth) {
- // DON'T HAVE SCROLL BAR
- this.scrollX = false;
- var totalFlexWidth = bodyWidth - scrollYWidth - bodyMinWidth;
- if (flexColumns.length === 1) {
- flexColumns[0].realWidth = (flexColumns[0].minWidth || 80) + totalFlexWidth;
- } else {
- var allColumnsWidth = flexColumns.reduce(function (prev, column) {
- return prev + (column.minWidth || 80);
- }, 0);
- var flexWidthPerPixel = totalFlexWidth / allColumnsWidth;
- var noneFirstWidth = 0;
- flexColumns.forEach(function (column, index) {
- if (index === 0) return;
- var flexWidth = Math.floor((column.minWidth || 80) * flexWidthPerPixel);
- noneFirstWidth += flexWidth;
- column.realWidth = (column.minWidth || 80) + flexWidth;
- });
- flexColumns[0].realWidth = (flexColumns[0].minWidth || 80) + totalFlexWidth - noneFirstWidth;
- }
- } else {
- // HAVE HORIZONTAL SCROLL BAR
- this.scrollX = true;
- flexColumns.forEach(function (column) {
- column.realWidth = column.minWidth;
- });
- }
- this.bodyWidth = Math.max(bodyMinWidth, bodyWidth);
- this.table.resizeState.width = this.bodyWidth;
- } else {
- flattenColumns.forEach(function (column) {
- if (!column.width && !column.minWidth) {
- column.realWidth = 80;
- } else {
- column.realWidth = column.width || column.minWidth;
- }
- bodyMinWidth += column.realWidth;
- });
- this.scrollX = bodyMinWidth > bodyWidth;
- this.bodyWidth = bodyMinWidth;
- }
- var fixedColumns = this.store.states.fixedColumns;
- if (fixedColumns.length > 0) {
- var fixedWidth = 0;
- fixedColumns.forEach(function (column) {
- fixedWidth += column.realWidth || column.width;
- });
- this.fixedWidth = fixedWidth;
- }
- var rightFixedColumns = this.store.states.rightFixedColumns;
- if (rightFixedColumns.length > 0) {
- var rightFixedWidth = 0;
- rightFixedColumns.forEach(function (column) {
- rightFixedWidth += column.realWidth || column.width;
- });
- this.rightFixedWidth = rightFixedWidth;
- }
- this.notifyObservers('columns');
- };
- TableLayout.prototype.addObserver = function addObserver(observer) {
- this.observers.push(observer);
- };
- TableLayout.prototype.removeObserver = function removeObserver(observer) {
- var index = this.observers.indexOf(observer);
- if (index !== -1) {
- this.observers.splice(index, 1);
- }
- };
- TableLayout.prototype.notifyObservers = function notifyObservers(event) {
- var _this3 = this;
- var observers = this.observers;
- observers.forEach(function (observer) {
- switch (event) {
- case 'columns':
- observer.onColumnsChange(_this3);
- break;
- case 'scrollable':
- observer.onScrollableChange(_this3);
- break;
- default:
- throw new Error('Table Layout don\'t have event ' + event + '.');
- }
- });
- };
- return TableLayout;
- }();
- /* harmony default export */ var table_layout = (table_layout_TableLayout);
- // CONCATENATED MODULE: ./packages/table/src/layout-observer.js
- /* harmony default export */ var layout_observer = ({
- created: function created() {
- this.tableLayout.addObserver(this);
- },
- destroyed: function destroyed() {
- this.tableLayout.removeObserver(this);
- },
- computed: {
- tableLayout: function tableLayout() {
- var layout = this.layout;
- if (!layout && this.table) {
- layout = this.table.layout;
- }
- if (!layout) {
- throw new Error('Can not find table layout.');
- }
- return layout;
- }
- },
- mounted: function mounted() {
- this.onColumnsChange(this.tableLayout);
- this.onScrollableChange(this.tableLayout);
- },
- updated: function updated() {
- if (this.__updated__) return;
- this.onColumnsChange(this.tableLayout);
- this.onScrollableChange(this.tableLayout);
- this.__updated__ = true;
- },
- methods: {
- onColumnsChange: function onColumnsChange() {
- var cols = this.$el.querySelectorAll('colgroup > col');
- if (!cols.length) return;
- var flattenColumns = this.tableLayout.getFlattenColumns();
- var columnsMap = {};
- flattenColumns.forEach(function (column) {
- columnsMap[column.id] = column;
- });
- for (var i = 0, j = cols.length; i < j; i++) {
- var col = cols[i];
- var name = col.getAttribute('name');
- var column = columnsMap[name];
- if (column) {
- col.setAttribute('width', column.realWidth || column.width);
- }
- }
- },
- onScrollableChange: function onScrollableChange(layout) {
- var cols = this.$el.querySelectorAll('colgroup > col[name=gutter]');
- for (var i = 0, j = cols.length; i < j; i++) {
- var col = cols[i];
- col.setAttribute('width', layout.scrollY ? layout.gutterWidth : '0');
- }
- var ths = this.$el.querySelectorAll('th.gutter');
- for (var _i = 0, _j = ths.length; _i < _j; _i++) {
- var th = ths[_i];
- th.style.width = layout.scrollY ? layout.gutterWidth + 'px' : '0';
- th.style.display = layout.scrollY ? '' : 'none';
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/table/src/table-body.js
- var table_body_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
- /* harmony default export */ var table_body = ({
- name: 'ElTableBody',
- mixins: [layout_observer],
- components: {
- ElCheckbox: checkbox_default.a,
- ElTooltip: tooltip_default.a
- },
- props: {
- store: {
- required: true
- },
- stripe: Boolean,
- context: {},
- rowClassName: [String, Function],
- rowStyle: [Object, Function],
- fixed: String,
- highlight: Boolean
- },
- render: function render(h) {
- var _this = this;
- var columnsHidden = this.columns.map(function (column, index) {
- return _this.isColumnHidden(index);
- });
- var rows = this.data;
- if (this.store.states.lazy && Object.keys(this.store.states.lazyTreeNodeMap).length) {
- rows = rows.reduce(function (prev, item) {
- prev.push(item);
- var rowKey = _this.store.table.getRowKey(item);
- var parent = _this.store.states.treeData[rowKey];
- if (parent && parent.children && parent.hasChildren) {
- var tmp = [];
- var traverse = function traverse(children) {
- if (!children) return;
- children.forEach(function (key) {
- tmp.push(_this.store.states.lazyTreeNodeMap[key]);
- if (_this.store.states.treeData[key]) {
- traverse(_this.store.states.treeData[key].children);
- }
- });
- };
- traverse(parent.children);
- prev = prev.concat(tmp);
- }
- return prev;
- }, []);
- }
- return h(
- 'table',
- {
- 'class': 'el-table__body',
- attrs: { cellspacing: '0',
- cellpadding: '0',
- border: '0' }
- },
- [h('colgroup', [this._l(this.columns, function (column) {
- return h('col', {
- attrs: { name: column.id }
- });
- })]), h('tbody', [this._l(rows, function (row, $index) {
- var rowKey = _this.table.rowKey ? _this.getKeyOfRow(row, $index) : $index;
- var treeNode = _this.treeData[rowKey];
- var rowClasses = _this.getRowClass(row, $index);
- if (treeNode) {
- rowClasses.push('el-table__row--level-' + treeNode.level);
- }
- var tr = h(
- 'tr',
- {
- directives: [{
- name: 'show',
- value: treeNode ? treeNode.display : true
- }],
- style: _this.rowStyle ? _this.getRowStyle(row, $index) : null,
- key: rowKey,
- on: {
- 'dblclick': function dblclick($event) {
- return _this.handleDoubleClick($event, row);
- },
- 'click': function click($event) {
- return _this.handleClick($event, row);
- },
- 'contextmenu': function contextmenu($event) {
- return _this.handleContextMenu($event, row);
- },
- 'mouseenter': function mouseenter(_) {
- return _this.handleMouseEnter($index);
- },
- 'mouseleave': function mouseleave(_) {
- return _this.handleMouseLeave();
- }
- },
- 'class': rowClasses },
- [_this._l(_this.columns, function (column, cellIndex) {
- var _getSpan = _this.getSpan(row, column, $index, cellIndex),
- rowspan = _getSpan.rowspan,
- colspan = _getSpan.colspan;
- if (!rowspan || !colspan) {
- return '';
- } else {
- var columnData = _extends({}, column);
- if (colspan !== 1) {
- columnData.realWidth = columnData.realWidth * colspan;
- }
- var data = {
- store: _this.store,
- _self: _this.context || _this.table.$vnode.context,
- column: columnData,
- row: row,
- $index: $index
- };
- if (cellIndex === _this.firstDefaultColumnIndex && treeNode) {
- data.treeNode = {
- hasChildren: treeNode.hasChildren || treeNode.children && treeNode.children.length,
- expanded: treeNode.expanded,
- indent: treeNode.level * _this.treeIndent,
- level: treeNode.level,
- loaded: treeNode.loaded,
- rowKey: rowKey
- };
- }
- return h(
- 'td',
- {
- style: _this.getCellStyle($index, cellIndex, row, column),
- 'class': _this.getCellClass($index, cellIndex, row, column),
- attrs: { rowspan: rowspan,
- colspan: colspan
- },
- on: {
- 'mouseenter': function mouseenter($event) {
- return _this.handleCellMouseEnter($event, row);
- },
- 'mouseleave': _this.handleCellMouseLeave
- }
- },
- [column.renderCell.call(_this._renderProxy, h, data, columnsHidden[cellIndex])]
- );
- }
- })]
- );
- if (_this.hasExpandColumn && _this.store.isRowExpanded(row)) {
- return [tr, h('tr', [h(
- 'td',
- {
- attrs: { colspan: _this.columns.length },
- 'class': 'el-table__expanded-cell' },
- [_this.table.renderExpanded ? _this.table.renderExpanded(h, { row: row, $index: $index, store: _this.store }) : '']
- )])];
- } else {
- return tr;
- }
- }).concat(h('el-tooltip', {
- attrs: { effect: this.table.tooltipEffect, placement: 'top', content: this.tooltipContent },
- ref: 'tooltip' }))])]
- );
- },
- computed: {
- table: function table() {
- return this.$parent;
- },
- data: function data() {
- return this.store.states.data;
- },
- treeData: function treeData() {
- return this.store.states.treeData;
- },
- columnsCount: function columnsCount() {
- return this.store.states.columns.length;
- },
- leftFixedLeafCount: function leftFixedLeafCount() {
- return this.store.states.fixedLeafColumnsLength;
- },
- rightFixedLeafCount: function rightFixedLeafCount() {
- return this.store.states.rightFixedLeafColumnsLength;
- },
- leftFixedCount: function leftFixedCount() {
- return this.store.states.fixedColumns.length;
- },
- rightFixedCount: function rightFixedCount() {
- return this.store.states.rightFixedColumns.length;
- },
- columns: function columns() {
- return this.store.states.columns;
- },
- hasExpandColumn: function hasExpandColumn() {
- return this.columns.some(function (_ref) {
- var type = _ref.type;
- return type === 'expand';
- });
- },
- firstDefaultColumnIndex: function firstDefaultColumnIndex() {
- for (var index = 0; index < this.columns.length; index++) {
- if (this.columns[index].type === 'default') {
- return index;
- }
- }
- return 0;
- },
- treeIndent: function treeIndent() {
- return this.store.states.indent;
- }
- },
- watch: {
- // don't trigger getter of currentRow in getCellClass. see https://jsfiddle.net/oe2b4hqt/
- // update DOM manually. see https://github.com/ElemeFE/element/pull/13954/files#diff-9b450c00d0a9dec0ffad5a3176972e40
- 'store.states.hoverRow': function storeStatesHoverRow(newVal, oldVal) {
- if (!this.store.states.isComplex) return;
- var rows = this.$el.querySelectorAll('.el-table__row');
- var oldRow = rows[oldVal];
- var newRow = rows[newVal];
- if (oldRow) {
- Object(dom_["removeClass"])(oldRow, 'hover-row');
- }
- if (newRow) {
- Object(dom_["addClass"])(newRow, 'hover-row');
- }
- }
- },
- data: function data() {
- return {
- tooltipContent: ''
- };
- },
- created: function created() {
- this.activateTooltip = debounce_default()(50, function (tooltip) {
- return tooltip.handleShowPopper();
- });
- },
- methods: {
- getKeyOfRow: function getKeyOfRow(row, index) {
- var rowKey = this.table.rowKey;
- if (rowKey) {
- return getRowIdentity(row, rowKey);
- }
- return index;
- },
- isColumnHidden: function isColumnHidden(index) {
- if (this.fixed === true || this.fixed === 'left') {
- return index >= this.leftFixedLeafCount;
- } else if (this.fixed === 'right') {
- return index < this.columnsCount - this.rightFixedLeafCount;
- } else {
- return index < this.leftFixedLeafCount || index >= this.columnsCount - this.rightFixedLeafCount;
- }
- },
- getSpan: function getSpan(row, column, rowIndex, columnIndex) {
- var rowspan = 1;
- var colspan = 1;
- var fn = this.table.spanMethod;
- if (typeof fn === 'function') {
- var result = fn({
- row: row,
- column: column,
- rowIndex: rowIndex,
- columnIndex: columnIndex
- });
- if (Array.isArray(result)) {
- rowspan = result[0];
- colspan = result[1];
- } else if ((typeof result === 'undefined' ? 'undefined' : table_body_typeof(result)) === 'object') {
- rowspan = result.rowspan;
- colspan = result.colspan;
- }
- }
- return {
- rowspan: rowspan,
- colspan: colspan
- };
- },
- getRowStyle: function getRowStyle(row, rowIndex) {
- var rowStyle = this.table.rowStyle;
- if (typeof rowStyle === 'function') {
- return rowStyle.call(null, {
- row: row,
- rowIndex: rowIndex
- });
- }
- return rowStyle;
- },
- getRowClass: function getRowClass(row, rowIndex) {
- var classes = ['el-table__row'];
- if (this.table.highlightCurrentRow && row === this.store.states.currentRow) {
- classes.push('current-row');
- }
- if (this.stripe && rowIndex % 2 === 1) {
- classes.push('el-table__row--striped');
- }
- var rowClassName = this.table.rowClassName;
- if (typeof rowClassName === 'string') {
- classes.push(rowClassName);
- } else if (typeof rowClassName === 'function') {
- classes.push(rowClassName.call(null, {
- row: row,
- rowIndex: rowIndex
- }));
- }
- if (this.store.states.expandRows.indexOf(row) > -1) {
- classes.push('expanded');
- }
- return classes;
- },
- getCellStyle: function getCellStyle(rowIndex, columnIndex, row, column) {
- var cellStyle = this.table.cellStyle;
- if (typeof cellStyle === 'function') {
- return cellStyle.call(null, {
- rowIndex: rowIndex,
- columnIndex: columnIndex,
- row: row,
- column: column
- });
- }
- return cellStyle;
- },
- getCellClass: function getCellClass(rowIndex, columnIndex, row, column) {
- var classes = [column.id, column.align, column.className];
- if (this.isColumnHidden(columnIndex)) {
- classes.push('is-hidden');
- }
- var cellClassName = this.table.cellClassName;
- if (typeof cellClassName === 'string') {
- classes.push(cellClassName);
- } else if (typeof cellClassName === 'function') {
- classes.push(cellClassName.call(null, {
- rowIndex: rowIndex,
- columnIndex: columnIndex,
- row: row,
- column: column
- }));
- }
- return classes.join(' ');
- },
- handleCellMouseEnter: function handleCellMouseEnter(event, row) {
- var table = this.table;
- var cell = getCell(event);
- if (cell) {
- var column = getColumnByCell(table, cell);
- var hoverState = table.hoverState = { cell: cell, column: column, row: row };
- table.$emit('cell-mouse-enter', hoverState.row, hoverState.column, hoverState.cell, event);
- }
- // 判断是否text-overflow, 如果是就显示tooltip
- var cellChild = event.target.querySelector('.cell');
- if (!(Object(dom_["hasClass"])(cellChild, 'el-tooltip') && cellChild.childNodes.length)) {
- return;
- }
- // use range width instead of scrollWidth to determine whether the text is overflowing
- // to address a potential FireFox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1074543#c3
- var range = document.createRange();
- range.setStart(cellChild, 0);
- range.setEnd(cellChild, cellChild.childNodes.length);
- var rangeWidth = range.getBoundingClientRect().width;
- var padding = (parseInt(Object(dom_["getStyle"])(cellChild, 'paddingLeft'), 10) || 0) + (parseInt(Object(dom_["getStyle"])(cellChild, 'paddingRight'), 10) || 0);
- if ((rangeWidth + padding > cellChild.offsetWidth || cellChild.scrollWidth > cellChild.offsetWidth) && this.$refs.tooltip) {
- var tooltip = this.$refs.tooltip;
- // TODO 会引起整个 Table 的重新渲染,需要优化
- this.tooltipContent = cell.innerText || cell.textContent;
- tooltip.referenceElm = cell;
- tooltip.$refs.popper && (tooltip.$refs.popper.style.display = 'none');
- tooltip.doDestroy();
- tooltip.setExpectedState(true);
- this.activateTooltip(tooltip);
- }
- },
- handleCellMouseLeave: function handleCellMouseLeave(event) {
- var tooltip = this.$refs.tooltip;
- if (tooltip) {
- tooltip.setExpectedState(false);
- tooltip.handleClosePopper();
- }
- var cell = getCell(event);
- if (!cell) return;
- var oldHoverState = this.table.hoverState || {};
- this.table.$emit('cell-mouse-leave', oldHoverState.row, oldHoverState.column, oldHoverState.cell, event);
- },
- handleMouseEnter: function handleMouseEnter(index) {
- this.store.commit('setHoverRow', index);
- },
- handleMouseLeave: function handleMouseLeave() {
- this.store.commit('setHoverRow', null);
- },
- handleContextMenu: function handleContextMenu(event, row) {
- this.handleEvent(event, row, 'contextmenu');
- },
- handleDoubleClick: function handleDoubleClick(event, row) {
- this.handleEvent(event, row, 'dblclick');
- },
- handleClick: function handleClick(event, row) {
- this.store.commit('setCurrentRow', row);
- this.handleEvent(event, row, 'click');
- },
- handleEvent: function handleEvent(event, row, name) {
- var table = this.table;
- var cell = getCell(event);
- var column = void 0;
- if (cell) {
- column = getColumnByCell(table, cell);
- if (column) {
- table.$emit('cell-' + name, row, column, cell, event);
- }
- }
- table.$emit('row-' + name, row, column, event);
- },
- handleExpandClick: function handleExpandClick(row, e) {
- e.stopPropagation();
- this.store.toggleRowExpansion(row);
- }
- }
- });
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/table/src/filter-panel.vue?vue&type=template&id=7f2c919f&
- var filter_panelvue_type_template_id_7f2c919f_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("transition", { attrs: { name: "el-zoom-in-top" } }, [
- _vm.multiple
- ? _c(
- "div",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleOutsideClick,
- expression: "handleOutsideClick"
- },
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showPopper,
- expression: "showPopper"
- }
- ],
- staticClass: "el-table-filter"
- },
- [
- _c(
- "div",
- { staticClass: "el-table-filter__content" },
- [
- _c(
- "el-scrollbar",
- { attrs: { "wrap-class": "el-table-filter__wrap" } },
- [
- _c(
- "el-checkbox-group",
- {
- staticClass: "el-table-filter__checkbox-group",
- model: {
- value: _vm.filteredValue,
- callback: function($$v) {
- _vm.filteredValue = $$v
- },
- expression: "filteredValue"
- }
- },
- _vm._l(_vm.filters, function(filter) {
- return _c(
- "el-checkbox",
- { key: filter.value, attrs: { label: filter.value } },
- [_vm._v(_vm._s(filter.text))]
- )
- }),
- 1
- )
- ],
- 1
- )
- ],
- 1
- ),
- _c("div", { staticClass: "el-table-filter__bottom" }, [
- _c(
- "button",
- {
- class: { "is-disabled": _vm.filteredValue.length === 0 },
- attrs: { disabled: _vm.filteredValue.length === 0 },
- on: { click: _vm.handleConfirm }
- },
- [_vm._v(_vm._s(_vm.t("el.table.confirmFilter")))]
- ),
- _c("button", { on: { click: _vm.handleReset } }, [
- _vm._v(_vm._s(_vm.t("el.table.resetFilter")))
- ])
- ])
- ]
- )
- : _c(
- "div",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleOutsideClick,
- expression: "handleOutsideClick"
- },
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showPopper,
- expression: "showPopper"
- }
- ],
- staticClass: "el-table-filter"
- },
- [
- _c(
- "ul",
- { staticClass: "el-table-filter__list" },
- [
- _c(
- "li",
- {
- staticClass: "el-table-filter__list-item",
- class: {
- "is-active":
- _vm.filterValue === undefined ||
- _vm.filterValue === null
- },
- on: {
- click: function($event) {
- _vm.handleSelect(null)
- }
- }
- },
- [_vm._v(_vm._s(_vm.t("el.table.clearFilter")))]
- ),
- _vm._l(_vm.filters, function(filter) {
- return _c(
- "li",
- {
- key: filter.value,
- staticClass: "el-table-filter__list-item",
- class: { "is-active": _vm.isActive(filter) },
- attrs: { label: filter.value },
- on: {
- click: function($event) {
- _vm.handleSelect(filter.value)
- }
- }
- },
- [_vm._v(_vm._s(filter.text))]
- )
- })
- ],
- 2
- )
- ]
- )
- ])
- }
- var filter_panelvue_type_template_id_7f2c919f_staticRenderFns = []
- filter_panelvue_type_template_id_7f2c919f_render._withStripped = true
- // CONCATENATED MODULE: ./packages/table/src/filter-panel.vue?vue&type=template&id=7f2c919f&
- // CONCATENATED MODULE: ./packages/table/src/dropdown.js
- var dropdowns = [];
- !external_vue_default.a.prototype.$isServer && document.addEventListener('click', function (event) {
- dropdowns.forEach(function (dropdown) {
- var target = event.target;
- if (!dropdown || !dropdown.$el) return;
- if (target === dropdown.$el || dropdown.$el.contains(target)) {
- return;
- }
- dropdown.handleOutsideClick && dropdown.handleOutsideClick(event);
- });
- });
- /* harmony default export */ var src_dropdown = ({
- open: function open(instance) {
- if (instance) {
- dropdowns.push(instance);
- }
- },
- close: function close(instance) {
- var index = dropdowns.indexOf(instance);
- if (index !== -1) {
- dropdowns.splice(instance, 1);
- }
- }
- });
- // EXTERNAL MODULE: external "element-ui/lib/checkbox-group"
- var checkbox_group_ = __webpack_require__(30);
- var checkbox_group_default = /*#__PURE__*/__webpack_require__.n(checkbox_group_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/table/src/filter-panel.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var filter_panelvue_type_script_lang_js_ = ({
- name: 'ElTableFilterPanel',
- mixins: [vue_popper_default.a, locale_default.a],
- directives: {
- Clickoutside: clickoutside_default.a
- },
- components: {
- ElCheckbox: checkbox_default.a,
- ElCheckboxGroup: checkbox_group_default.a
- },
- props: {
- placement: {
- type: String,
- default: 'bottom-end'
- }
- },
- customRender: function customRender(h) {
- return h(
- 'div',
- { 'class': 'el-table-filter' },
- [h('div', { 'class': 'el-table-filter__content' }), h(
- 'div',
- { 'class': 'el-table-filter__bottom' },
- [h(
- 'button',
- {
- on: {
- 'click': this.handleConfirm
- }
- },
- [this.t('el.table.confirmFilter')]
- ), h(
- 'button',
- {
- on: {
- 'click': this.handleReset
- }
- },
- [this.t('el.table.resetFilter')]
- )]
- )]
- );
- },
- methods: {
- isActive: function isActive(filter) {
- return filter.value === this.filterValue;
- },
- handleOutsideClick: function handleOutsideClick() {
- var _this = this;
- setTimeout(function () {
- _this.showPopper = false;
- }, 16);
- },
- handleConfirm: function handleConfirm() {
- this.confirmFilter(this.filteredValue);
- this.handleOutsideClick();
- },
- handleReset: function handleReset() {
- this.filteredValue = [];
- this.confirmFilter(this.filteredValue);
- this.handleOutsideClick();
- },
- handleSelect: function handleSelect(filterValue) {
- this.filterValue = filterValue;
- if (typeof filterValue !== 'undefined' && filterValue !== null) {
- this.confirmFilter(this.filteredValue);
- } else {
- this.confirmFilter([]);
- }
- this.handleOutsideClick();
- },
- confirmFilter: function confirmFilter(filteredValue) {
- this.table.store.commit('filterChange', {
- column: this.column,
- values: filteredValue
- });
- this.table.store.updateAllSelected();
- }
- },
- data: function data() {
- return {
- table: null,
- cell: null,
- column: null
- };
- },
- computed: {
- filters: function filters() {
- return this.column && this.column.filters;
- },
- filterValue: {
- get: function get() {
- return (this.column.filteredValue || [])[0];
- },
- set: function set(value) {
- if (this.filteredValue) {
- if (typeof value !== 'undefined' && value !== null) {
- this.filteredValue.splice(0, 1, value);
- } else {
- this.filteredValue.splice(0, 1);
- }
- }
- }
- },
- filteredValue: {
- get: function get() {
- if (this.column) {
- return this.column.filteredValue || [];
- }
- return [];
- },
- set: function set(value) {
- if (this.column) {
- this.column.filteredValue = value;
- }
- }
- },
- multiple: function multiple() {
- if (this.column) {
- return this.column.filterMultiple;
- }
- return true;
- }
- },
- mounted: function mounted() {
- var _this2 = this;
- this.popperElm = this.$el;
- this.referenceElm = this.cell;
- this.table.bodyWrapper.addEventListener('scroll', function () {
- _this2.updatePopper();
- });
- this.$watch('showPopper', function (value) {
- if (_this2.column) _this2.column.filterOpened = value;
- if (value) {
- src_dropdown.open(_this2);
- } else {
- src_dropdown.close(_this2);
- }
- });
- },
- watch: {
- showPopper: function showPopper(val) {
- if (val === true && parseInt(this.popperJS._popper.style.zIndex, 10) < popup_["PopupManager"].zIndex) {
- this.popperJS._popper.style.zIndex = popup_["PopupManager"].nextZIndex();
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/table/src/filter-panel.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_filter_panelvue_type_script_lang_js_ = (filter_panelvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/table/src/filter-panel.vue
- /* normalize component */
- var filter_panel_component = normalizeComponent(
- src_filter_panelvue_type_script_lang_js_,
- filter_panelvue_type_template_id_7f2c919f_render,
- filter_panelvue_type_template_id_7f2c919f_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var filter_panel_api; }
- filter_panel_component.options.__file = "packages/table/src/filter-panel.vue"
- /* harmony default export */ var filter_panel = (filter_panel_component.exports);
- // CONCATENATED MODULE: ./packages/table/src/table-header.js
- var getAllColumns = function getAllColumns(columns) {
- var result = [];
- columns.forEach(function (column) {
- if (column.children) {
- result.push(column);
- result.push.apply(result, getAllColumns(column.children));
- } else {
- result.push(column);
- }
- });
- return result;
- };
- var convertToRows = function convertToRows(originColumns) {
- var maxLevel = 1;
- var traverse = function traverse(column, parent) {
- if (parent) {
- column.level = parent.level + 1;
- if (maxLevel < column.level) {
- maxLevel = column.level;
- }
- }
- if (column.children) {
- var colSpan = 0;
- column.children.forEach(function (subColumn) {
- traverse(subColumn, column);
- colSpan += subColumn.colSpan;
- });
- column.colSpan = colSpan;
- } else {
- column.colSpan = 1;
- }
- };
- originColumns.forEach(function (column) {
- column.level = 1;
- traverse(column);
- });
- var rows = [];
- for (var i = 0; i < maxLevel; i++) {
- rows.push([]);
- }
- var allColumns = getAllColumns(originColumns);
- allColumns.forEach(function (column) {
- if (!column.children) {
- column.rowSpan = maxLevel - column.level + 1;
- } else {
- column.rowSpan = 1;
- }
- rows[column.level - 1].push(column);
- });
- return rows;
- };
- /* harmony default export */ var table_header = ({
- name: 'ElTableHeader',
- mixins: [layout_observer],
- render: function render(h) {
- var _this = this;
- var originColumns = this.store.states.originColumns;
- var columnRows = convertToRows(originColumns, this.columns);
- // 是否拥有多级表头
- var isGroup = columnRows.length > 1;
- if (isGroup) this.$parent.isGroup = true;
- return h(
- 'table',
- {
- 'class': 'el-table__header',
- attrs: { cellspacing: '0',
- cellpadding: '0',
- border: '0' }
- },
- [h('colgroup', [this._l(this.columns, function (column) {
- return h('col', {
- attrs: { name: column.id }
- });
- }), this.hasGutter ? h('col', {
- attrs: { name: 'gutter' }
- }) : '']), h(
- 'thead',
- { 'class': [{ 'is-group': isGroup, 'has-gutter': this.hasGutter }] },
- [this._l(columnRows, function (columns, rowIndex) {
- return h(
- 'tr',
- {
- style: _this.getHeaderRowStyle(rowIndex),
- 'class': _this.getHeaderRowClass(rowIndex)
- },
- [_this._l(columns, function (column, cellIndex) {
- return h(
- 'th',
- {
- attrs: {
- colspan: column.colSpan,
- rowspan: column.rowSpan
- },
- on: {
- 'mousemove': function mousemove($event) {
- return _this.handleMouseMove($event, column);
- },
- 'mouseout': _this.handleMouseOut,
- 'mousedown': function mousedown($event) {
- return _this.handleMouseDown($event, column);
- },
- 'click': function click($event) {
- return _this.handleHeaderClick($event, column);
- },
- 'contextmenu': function contextmenu($event) {
- return _this.handleHeaderContextMenu($event, column);
- }
- },
- style: _this.getHeaderCellStyle(rowIndex, cellIndex, columns, column),
- 'class': _this.getHeaderCellClass(rowIndex, cellIndex, columns, column),
- key: column.id },
- [h(
- 'div',
- { 'class': ['cell', column.filteredValue && column.filteredValue.length > 0 ? 'highlight' : '', column.labelClassName] },
- [column.renderHeader ? column.renderHeader.call(_this._renderProxy, h, { column: column, $index: cellIndex, store: _this.store, _self: _this.$parent.$vnode.context }) : column.label, column.sortable ? h(
- 'span',
- { 'class': 'caret-wrapper', on: {
- 'click': function click($event) {
- return _this.handleSortClick($event, column);
- }
- }
- },
- [h('i', { 'class': 'sort-caret ascending', on: {
- 'click': function click($event) {
- return _this.handleSortClick($event, column, 'ascending');
- }
- }
- }), h('i', { 'class': 'sort-caret descending', on: {
- 'click': function click($event) {
- return _this.handleSortClick($event, column, 'descending');
- }
- }
- })]
- ) : '', column.filterable ? h(
- 'span',
- { 'class': 'el-table__column-filter-trigger', on: {
- 'click': function click($event) {
- return _this.handleFilterClick($event, column);
- }
- }
- },
- [h('i', { 'class': ['el-icon-arrow-down', column.filterOpened ? 'el-icon-arrow-up' : ''] })]
- ) : '']
- )]
- );
- }), _this.hasGutter ? h('th', { 'class': 'gutter' }) : '']
- );
- })]
- )]
- );
- },
- props: {
- fixed: String,
- store: {
- required: true
- },
- border: Boolean,
- defaultSort: {
- type: Object,
- default: function _default() {
- return {
- prop: '',
- order: ''
- };
- }
- }
- },
- components: {
- ElCheckbox: checkbox_default.a,
- ElTag: tag_default.a
- },
- computed: {
- table: function table() {
- return this.$parent;
- },
- isAllSelected: function isAllSelected() {
- return this.store.states.isAllSelected;
- },
- columnsCount: function columnsCount() {
- return this.store.states.columns.length;
- },
- leftFixedCount: function leftFixedCount() {
- return this.store.states.fixedColumns.length;
- },
- rightFixedCount: function rightFixedCount() {
- return this.store.states.rightFixedColumns.length;
- },
- leftFixedLeafCount: function leftFixedLeafCount() {
- return this.store.states.fixedLeafColumnsLength;
- },
- rightFixedLeafCount: function rightFixedLeafCount() {
- return this.store.states.rightFixedLeafColumnsLength;
- },
- columns: function columns() {
- return this.store.states.columns;
- },
- hasGutter: function hasGutter() {
- return !this.fixed && this.tableLayout.gutterWidth;
- }
- },
- created: function created() {
- this.filterPanels = {};
- },
- mounted: function mounted() {
- var _defaultSort = this.defaultSort,
- prop = _defaultSort.prop,
- order = _defaultSort.order;
- var init = true;
- this.store.commit('sort', { prop: prop, order: order, init: init });
- },
- beforeDestroy: function beforeDestroy() {
- var panels = this.filterPanels;
- for (var prop in panels) {
- if (panels.hasOwnProperty(prop) && panels[prop]) {
- panels[prop].$destroy(true);
- }
- }
- },
- methods: {
- isCellHidden: function isCellHidden(index, columns) {
- var start = 0;
- for (var i = 0; i < index; i++) {
- start += columns[i].colSpan;
- }
- var after = start + columns[index].colSpan - 1;
- if (this.fixed === true || this.fixed === 'left') {
- return after >= this.leftFixedLeafCount;
- } else if (this.fixed === 'right') {
- return start < this.columnsCount - this.rightFixedLeafCount;
- } else {
- return after < this.leftFixedLeafCount || start >= this.columnsCount - this.rightFixedLeafCount;
- }
- },
- getHeaderRowStyle: function getHeaderRowStyle(rowIndex) {
- var headerRowStyle = this.table.headerRowStyle;
- if (typeof headerRowStyle === 'function') {
- return headerRowStyle.call(null, { rowIndex: rowIndex });
- }
- return headerRowStyle;
- },
- getHeaderRowClass: function getHeaderRowClass(rowIndex) {
- var classes = [];
- var headerRowClassName = this.table.headerRowClassName;
- if (typeof headerRowClassName === 'string') {
- classes.push(headerRowClassName);
- } else if (typeof headerRowClassName === 'function') {
- classes.push(headerRowClassName.call(null, { rowIndex: rowIndex }));
- }
- return classes.join(' ');
- },
- getHeaderCellStyle: function getHeaderCellStyle(rowIndex, columnIndex, row, column) {
- var headerCellStyle = this.table.headerCellStyle;
- if (typeof headerCellStyle === 'function') {
- return headerCellStyle.call(null, {
- rowIndex: rowIndex,
- columnIndex: columnIndex,
- row: row,
- column: column
- });
- }
- return headerCellStyle;
- },
- getHeaderCellClass: function getHeaderCellClass(rowIndex, columnIndex, row, column) {
- var classes = [column.id, column.order, column.headerAlign, column.className, column.labelClassName];
- if (rowIndex === 0 && this.isCellHidden(columnIndex, row)) {
- classes.push('is-hidden');
- }
- if (!column.children) {
- classes.push('is-leaf');
- }
- if (column.sortable) {
- classes.push('is-sortable');
- }
- var headerCellClassName = this.table.headerCellClassName;
- if (typeof headerCellClassName === 'string') {
- classes.push(headerCellClassName);
- } else if (typeof headerCellClassName === 'function') {
- classes.push(headerCellClassName.call(null, {
- rowIndex: rowIndex,
- columnIndex: columnIndex,
- row: row,
- column: column
- }));
- }
- return classes.join(' ');
- },
- toggleAllSelection: function toggleAllSelection(event) {
- event.stopPropagation();
- this.store.commit('toggleAllSelection');
- },
- handleFilterClick: function handleFilterClick(event, column) {
- event.stopPropagation();
- var target = event.target;
- var cell = target.tagName === 'TH' ? target : target.parentNode;
- cell = cell.querySelector('.el-table__column-filter-trigger') || cell;
- var table = this.$parent;
- var filterPanel = this.filterPanels[column.id];
- if (filterPanel && column.filterOpened) {
- filterPanel.showPopper = false;
- return;
- }
- if (!filterPanel) {
- filterPanel = new external_vue_default.a(filter_panel);
- this.filterPanels[column.id] = filterPanel;
- if (column.filterPlacement) {
- filterPanel.placement = column.filterPlacement;
- }
- filterPanel.table = table;
- filterPanel.cell = cell;
- filterPanel.column = column;
- !this.$isServer && filterPanel.$mount(document.createElement('div'));
- }
- setTimeout(function () {
- filterPanel.showPopper = true;
- }, 16);
- },
- handleHeaderClick: function handleHeaderClick(event, column) {
- if (!column.filters && column.sortable) {
- this.handleSortClick(event, column);
- } else if (column.filterable && !column.sortable) {
- this.handleFilterClick(event, column);
- }
- this.$parent.$emit('header-click', column, event);
- },
- handleHeaderContextMenu: function handleHeaderContextMenu(event, column) {
- this.$parent.$emit('header-contextmenu', column, event);
- },
- handleMouseDown: function handleMouseDown(event, column) {
- var _this2 = this;
- if (this.$isServer) return;
- if (column.children && column.children.length > 0) return;
- /* istanbul ignore if */
- if (this.draggingColumn && this.border) {
- this.dragging = true;
- this.$parent.resizeProxyVisible = true;
- var table = this.$parent;
- var tableEl = table.$el;
- var tableLeft = tableEl.getBoundingClientRect().left;
- var columnEl = this.$el.querySelector('th.' + column.id);
- var columnRect = columnEl.getBoundingClientRect();
- var minLeft = columnRect.left - tableLeft + 30;
- Object(dom_["addClass"])(columnEl, 'noclick');
- this.dragState = {
- startMouseLeft: event.clientX,
- startLeft: columnRect.right - tableLeft,
- startColumnLeft: columnRect.left - tableLeft,
- tableLeft: tableLeft
- };
- var resizeProxy = table.$refs.resizeProxy;
- resizeProxy.style.left = this.dragState.startLeft + 'px';
- document.onselectstart = function () {
- return false;
- };
- document.ondragstart = function () {
- return false;
- };
- var handleMouseMove = function handleMouseMove(event) {
- var deltaLeft = event.clientX - _this2.dragState.startMouseLeft;
- var proxyLeft = _this2.dragState.startLeft + deltaLeft;
- resizeProxy.style.left = Math.max(minLeft, proxyLeft) + 'px';
- };
- var handleMouseUp = function handleMouseUp() {
- if (_this2.dragging) {
- var _dragState = _this2.dragState,
- startColumnLeft = _dragState.startColumnLeft,
- startLeft = _dragState.startLeft;
- var finalLeft = parseInt(resizeProxy.style.left, 10);
- var columnWidth = finalLeft - startColumnLeft;
- column.width = column.realWidth = columnWidth;
- table.$emit('header-dragend', column.width, startLeft - startColumnLeft, column, event);
- _this2.store.scheduleLayout();
- document.body.style.cursor = '';
- _this2.dragging = false;
- _this2.draggingColumn = null;
- _this2.dragState = {};
- table.resizeProxyVisible = false;
- }
- document.removeEventListener('mousemove', handleMouseMove);
- document.removeEventListener('mouseup', handleMouseUp);
- document.onselectstart = null;
- document.ondragstart = null;
- setTimeout(function () {
- Object(dom_["removeClass"])(columnEl, 'noclick');
- }, 0);
- };
- document.addEventListener('mousemove', handleMouseMove);
- document.addEventListener('mouseup', handleMouseUp);
- }
- },
- handleMouseMove: function handleMouseMove(event, column) {
- if (column.children && column.children.length > 0) return;
- var target = event.target;
- while (target && target.tagName !== 'TH') {
- target = target.parentNode;
- }
- if (!column || !column.resizable) return;
- if (!this.dragging && this.border) {
- var rect = target.getBoundingClientRect();
- var bodyStyle = document.body.style;
- if (rect.width > 12 && rect.right - event.pageX < 8) {
- bodyStyle.cursor = 'col-resize';
- if (Object(dom_["hasClass"])(target, 'is-sortable')) {
- target.style.cursor = 'col-resize';
- }
- this.draggingColumn = column;
- } else if (!this.dragging) {
- bodyStyle.cursor = '';
- if (Object(dom_["hasClass"])(target, 'is-sortable')) {
- target.style.cursor = 'pointer';
- }
- this.draggingColumn = null;
- }
- }
- },
- handleMouseOut: function handleMouseOut() {
- if (this.$isServer) return;
- document.body.style.cursor = '';
- },
- toggleOrder: function toggleOrder(_ref) {
- var order = _ref.order,
- sortOrders = _ref.sortOrders;
- if (order === '') return sortOrders[0];
- var index = sortOrders.indexOf(order || null);
- return sortOrders[index > sortOrders.length - 2 ? 0 : index + 1];
- },
- handleSortClick: function handleSortClick(event, column, givenOrder) {
- event.stopPropagation();
- var order = column.order === givenOrder ? null : givenOrder || this.toggleOrder(column);
- var target = event.target;
- while (target && target.tagName !== 'TH') {
- target = target.parentNode;
- }
- if (target && target.tagName === 'TH') {
- if (Object(dom_["hasClass"])(target, 'noclick')) {
- Object(dom_["removeClass"])(target, 'noclick');
- return;
- }
- }
- if (!column.sortable) return;
- var states = this.store.states;
- var sortProp = states.sortProp;
- var sortOrder = void 0;
- var sortingColumn = states.sortingColumn;
- if (sortingColumn !== column || sortingColumn === column && sortingColumn.order === null) {
- if (sortingColumn) {
- sortingColumn.order = null;
- }
- states.sortingColumn = column;
- sortProp = column.property;
- }
- if (!order) {
- sortOrder = column.order = null;
- states.sortingColumn = null;
- sortProp = null;
- } else {
- sortOrder = column.order = order;
- }
- states.sortProp = sortProp;
- states.sortOrder = sortOrder;
- this.store.commit('changeSortCondition');
- }
- },
- data: function data() {
- return {
- draggingColumn: null,
- dragging: false,
- dragState: {}
- };
- }
- });
- // CONCATENATED MODULE: ./packages/table/src/table-footer.js
- /* harmony default export */ var table_footer = ({
- name: 'ElTableFooter',
- mixins: [layout_observer],
- render: function render(h) {
- var _this = this;
- var sums = [];
- if (this.summaryMethod) {
- sums = this.summaryMethod({ columns: this.columns, data: this.store.states.data });
- } else {
- this.columns.forEach(function (column, index) {
- if (index === 0) {
- sums[index] = _this.sumText;
- return;
- }
- var values = _this.store.states.data.map(function (item) {
- return Number(item[column.property]);
- });
- var precisions = [];
- var notNumber = true;
- values.forEach(function (value) {
- if (!isNaN(value)) {
- notNumber = false;
- var decimal = ('' + value).split('.')[1];
- precisions.push(decimal ? decimal.length : 0);
- }
- });
- var precision = Math.max.apply(null, precisions);
- if (!notNumber) {
- sums[index] = values.reduce(function (prev, curr) {
- var value = Number(curr);
- if (!isNaN(value)) {
- return parseFloat((prev + curr).toFixed(Math.min(precision, 20)));
- } else {
- return prev;
- }
- }, 0);
- } else {
- sums[index] = '';
- }
- });
- }
- return h(
- 'table',
- {
- 'class': 'el-table__footer',
- attrs: { cellspacing: '0',
- cellpadding: '0',
- border: '0' }
- },
- [h('colgroup', [this._l(this.columns, function (column) {
- return h('col', {
- attrs: { name: column.id }
- });
- }), this.hasGutter ? h('col', {
- attrs: { name: 'gutter' }
- }) : '']), h(
- 'tbody',
- { 'class': [{ 'has-gutter': this.hasGutter }] },
- [h('tr', [this._l(this.columns, function (column, cellIndex) {
- return h(
- 'td',
- {
- attrs: {
- colspan: column.colSpan,
- rowspan: column.rowSpan
- },
- 'class': _this.getRowClasses(column, cellIndex) },
- [h(
- 'div',
- { 'class': ['cell', column.labelClassName] },
- [sums[cellIndex]]
- )]
- );
- }), this.hasGutter ? h('th', { 'class': 'gutter' }) : ''])]
- )]
- );
- },
- props: {
- fixed: String,
- store: {
- required: true
- },
- summaryMethod: Function,
- sumText: String,
- border: Boolean,
- defaultSort: {
- type: Object,
- default: function _default() {
- return {
- prop: '',
- order: ''
- };
- }
- }
- },
- computed: {
- table: function table() {
- return this.$parent;
- },
- isAllSelected: function isAllSelected() {
- return this.store.states.isAllSelected;
- },
- columnsCount: function columnsCount() {
- return this.store.states.columns.length;
- },
- leftFixedCount: function leftFixedCount() {
- return this.store.states.fixedColumns.length;
- },
- leftFixedLeafCount: function leftFixedLeafCount() {
- return this.store.states.fixedLeafColumnsLength;
- },
- rightFixedLeafCount: function rightFixedLeafCount() {
- return this.store.states.rightFixedLeafColumnsLength;
- },
- rightFixedCount: function rightFixedCount() {
- return this.store.states.rightFixedColumns.length;
- },
- columns: function columns() {
- return this.store.states.columns;
- },
- hasGutter: function hasGutter() {
- return !this.fixed && this.tableLayout.gutterWidth;
- }
- },
- methods: {
- isCellHidden: function isCellHidden(index, columns, column) {
- if (this.fixed === true || this.fixed === 'left') {
- return index >= this.leftFixedLeafCount;
- } else if (this.fixed === 'right') {
- var before = 0;
- for (var i = 0; i < index; i++) {
- before += columns[i].colSpan;
- }
- return before < this.columnsCount - this.rightFixedLeafCount;
- } else if (!this.fixed && column.fixed) {
- // hide cell when footer instance is not fixed and column is fixed
- return true;
- } else {
- return index < this.leftFixedCount || index >= this.columnsCount - this.rightFixedCount;
- }
- },
- getRowClasses: function getRowClasses(column, cellIndex) {
- var classes = [column.id, column.align, column.labelClassName];
- if (column.className) {
- classes.push(column.className);
- }
- if (this.isCellHidden(cellIndex, this.columns, column)) {
- classes.push('is-hidden');
- }
- if (!column.children) {
- classes.push('is-leaf');
- }
- return classes;
- }
- }
- });
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/table/src/table.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var flattenData = function flattenData(data) {
- if (!data) return data;
- var newData = [];
- var flatten = function flatten(arr) {
- arr.forEach(function (item) {
- newData.push(item);
- if (Array.isArray(item.children)) {
- flatten(item.children);
- }
- });
- };
- flatten(data);
- if (data.length === newData.length) {
- return data;
- } else {
- return newData;
- }
- };
- var tableIdSeed = 1;
- /* harmony default export */ var tablevue_type_script_lang_js_ = ({
- name: 'ElTable',
- mixins: [locale_default.a, migrating_default.a],
- directives: {
- Mousewheel: directives_mousewheel
- },
- props: {
- data: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- size: String,
- width: [String, Number],
- height: [String, Number],
- maxHeight: [String, Number],
- fit: {
- type: Boolean,
- default: true
- },
- stripe: Boolean,
- border: Boolean,
- rowKey: [String, Function],
- context: {},
- showHeader: {
- type: Boolean,
- default: true
- },
- showSummary: Boolean,
- sumText: String,
- summaryMethod: Function,
- rowClassName: [String, Function],
- rowStyle: [Object, Function],
- cellClassName: [String, Function],
- cellStyle: [Object, Function],
- headerRowClassName: [String, Function],
- headerRowStyle: [Object, Function],
- headerCellClassName: [String, Function],
- headerCellStyle: [Object, Function],
- highlightCurrentRow: Boolean,
- currentRowKey: [String, Number],
- emptyText: String,
- expandRowKeys: Array,
- defaultExpandAll: Boolean,
- defaultSort: Object,
- tooltipEffect: String,
- spanMethod: Function,
- selectOnIndeterminate: {
- type: Boolean,
- default: true
- },
- indent: {
- type: Number,
- default: 16
- },
- lazy: Boolean,
- load: Function
- },
- components: {
- TableHeader: table_header,
- TableFooter: table_footer,
- TableBody: table_body,
- ElCheckbox: checkbox_default.a
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- events: {
- expand: 'expand is renamed to expand-change'
- }
- };
- },
- setCurrentRow: function setCurrentRow(row) {
- this.store.commit('setCurrentRow', row);
- },
- toggleRowSelection: function toggleRowSelection(row, selected) {
- this.store.toggleRowSelection(row, selected);
- this.store.updateAllSelected();
- },
- toggleRowExpansion: function toggleRowExpansion(row, expanded) {
- this.store.toggleRowExpansion(row, expanded);
- },
- clearSelection: function clearSelection() {
- this.store.clearSelection();
- },
- clearFilter: function clearFilter(columnKeys) {
- this.store.clearFilter(columnKeys);
- },
- clearSort: function clearSort() {
- this.store.clearSort();
- },
- handleMouseLeave: function handleMouseLeave() {
- this.store.commit('setHoverRow', null);
- if (this.hoverState) this.hoverState = null;
- },
- updateScrollY: function updateScrollY() {
- this.layout.updateScrollY();
- this.layout.updateColumnsWidth();
- },
- handleFixedMousewheel: function handleFixedMousewheel(event, data) {
- var bodyWrapper = this.bodyWrapper;
- if (Math.abs(data.spinY) > 0) {
- var currentScrollTop = bodyWrapper.scrollTop;
- if (data.pixelY < 0 && currentScrollTop !== 0) {
- event.preventDefault();
- }
- if (data.pixelY > 0 && bodyWrapper.scrollHeight - bodyWrapper.clientHeight > currentScrollTop) {
- event.preventDefault();
- }
- bodyWrapper.scrollTop += Math.ceil(data.pixelY / 5);
- } else {
- bodyWrapper.scrollLeft += Math.ceil(data.pixelX / 5);
- }
- },
- handleHeaderFooterMousewheel: function handleHeaderFooterMousewheel(event, data) {
- var pixelX = data.pixelX,
- pixelY = data.pixelY;
- if (Math.abs(pixelX) >= Math.abs(pixelY)) {
- event.preventDefault();
- this.bodyWrapper.scrollLeft += data.pixelX / 5;
- }
- },
- bindEvents: function bindEvents() {
- var _$refs = this.$refs,
- headerWrapper = _$refs.headerWrapper,
- footerWrapper = _$refs.footerWrapper;
- var refs = this.$refs;
- var self = this;
- this.bodyWrapper.addEventListener('scroll', function () {
- if (headerWrapper) headerWrapper.scrollLeft = this.scrollLeft;
- if (footerWrapper) footerWrapper.scrollLeft = this.scrollLeft;
- if (refs.fixedBodyWrapper) refs.fixedBodyWrapper.scrollTop = this.scrollTop;
- if (refs.rightFixedBodyWrapper) refs.rightFixedBodyWrapper.scrollTop = this.scrollTop;
- var maxScrollLeftPosition = this.scrollWidth - this.offsetWidth - 1;
- var scrollLeft = this.scrollLeft;
- if (scrollLeft >= maxScrollLeftPosition) {
- self.scrollPosition = 'right';
- } else if (scrollLeft === 0) {
- self.scrollPosition = 'left';
- } else {
- self.scrollPosition = 'middle';
- }
- });
- if (this.fit) {
- Object(resize_event_["addResizeListener"])(this.$el, this.resizeListener);
- }
- },
- resizeListener: function resizeListener() {
- if (!this.$ready) return;
- var shouldUpdateLayout = false;
- var el = this.$el;
- var _resizeState = this.resizeState,
- oldWidth = _resizeState.width,
- oldHeight = _resizeState.height;
- var width = el.offsetWidth;
- if (oldWidth !== width) {
- shouldUpdateLayout = true;
- }
- var height = el.offsetHeight;
- if ((this.height || this.shouldUpdateHeight) && oldHeight !== height) {
- shouldUpdateLayout = true;
- }
- if (shouldUpdateLayout) {
- this.resizeState.width = width;
- this.resizeState.height = height;
- this.doLayout();
- }
- },
- doLayout: function doLayout() {
- this.layout.updateColumnsWidth();
- if (this.shouldUpdateHeight) {
- this.layout.updateElsHeight();
- }
- },
- sort: function sort(prop, order) {
- this.store.commit('sort', { prop: prop, order: order });
- },
- toggleAllSelection: function toggleAllSelection() {
- this.store.commit('toggleAllSelection');
- },
- getRowKey: function getRowKey(row) {
- var rowKey = getRowIdentity(row, this.store.states.rowKey);
- if (!rowKey) {
- throw new Error('if there\'s nested data, rowKey is required.');
- }
- return rowKey;
- },
- getTableTreeData: function getTableTreeData(data) {
- var _this = this;
- var treeData = {};
- var traverse = function traverse(children, parentData, level) {
- children.forEach(function (item) {
- var rowKey = _this.getRowKey(item);
- treeData[rowKey] = {
- display: false,
- level: level
- };
- parentData.children.push(rowKey);
- if (Array.isArray(item.children) && item.children.length) {
- treeData[rowKey].children = [];
- treeData[rowKey].expanded = false;
- traverse(item.children, treeData[rowKey], level + 1);
- }
- });
- };
- if (data) {
- data.forEach(function (item) {
- var containChildren = Array.isArray(item.children) && item.children.length;
- if (!(containChildren || item.hasChildren)) return;
- var rowKey = _this.getRowKey(item);
- var treeNode = {
- level: 0,
- expanded: false,
- display: true,
- children: []
- };
- if (containChildren) {
- treeData[rowKey] = treeNode;
- traverse(item.children, treeData[rowKey], 1);
- } else if (item.hasChildren && _this.lazy) {
- treeNode.hasChildren = true;
- treeNode.loaded = false;
- treeData[rowKey] = treeNode;
- }
- });
- }
- return treeData;
- }
- },
- created: function created() {
- var _this2 = this;
- this.tableId = 'el-table_' + tableIdSeed++;
- this.debouncedUpdateLayout = debounce_default()(50, function () {
- return _this2.doLayout();
- });
- },
- computed: {
- tableSize: function tableSize() {
- return this.size || (this.$ELEMENT || {}).size;
- },
- bodyWrapper: function bodyWrapper() {
- return this.$refs.bodyWrapper;
- },
- shouldUpdateHeight: function shouldUpdateHeight() {
- return this.height || this.maxHeight || this.fixedColumns.length > 0 || this.rightFixedColumns.length > 0;
- },
- selection: function selection() {
- return this.store.states.selection;
- },
- columns: function columns() {
- return this.store.states.columns;
- },
- tableData: function tableData() {
- return this.store.states.data;
- },
- fixedColumns: function fixedColumns() {
- return this.store.states.fixedColumns;
- },
- rightFixedColumns: function rightFixedColumns() {
- return this.store.states.rightFixedColumns;
- },
- bodyWidth: function bodyWidth() {
- var _layout = this.layout,
- bodyWidth = _layout.bodyWidth,
- scrollY = _layout.scrollY,
- gutterWidth = _layout.gutterWidth;
- return bodyWidth ? bodyWidth - (scrollY ? gutterWidth : 0) + 'px' : '';
- },
- bodyHeight: function bodyHeight() {
- if (this.height) {
- return {
- height: this.layout.bodyHeight ? this.layout.bodyHeight + 'px' : ''
- };
- } else if (this.maxHeight) {
- return {
- 'max-height': this.layout.bodyHeight ? this.layout.bodyHeight + 'px' : ''
- };
- }
- return {};
- },
- fixedBodyHeight: function fixedBodyHeight() {
- if (this.height) {
- return {
- height: this.layout.fixedBodyHeight ? this.layout.fixedBodyHeight + 'px' : ''
- };
- } else if (this.maxHeight) {
- var maxHeight = this.layout.scrollX ? this.maxHeight - this.layout.gutterWidth : this.maxHeight;
- if (this.showHeader) {
- maxHeight -= this.layout.headerHeight;
- }
- maxHeight -= this.layout.footerHeight;
- return {
- 'max-height': maxHeight + 'px'
- };
- }
- return {};
- },
- fixedHeight: function fixedHeight() {
- if (this.maxHeight) {
- if (this.showSummary) {
- return {
- bottom: 0
- };
- }
- return {
- bottom: this.layout.scrollX && this.data.length ? this.layout.gutterWidth + 'px' : ''
- };
- } else {
- if (this.showSummary) {
- return {
- height: this.layout.tableHeight ? this.layout.tableHeight + 'px' : ''
- };
- }
- return {
- height: this.layout.viewportHeight ? this.layout.viewportHeight + 'px' : ''
- };
- }
- }
- },
- watch: {
- height: {
- immediate: true,
- handler: function handler(value) {
- this.layout.setHeight(value);
- }
- },
- maxHeight: {
- immediate: true,
- handler: function handler(value) {
- this.layout.setMaxHeight(value);
- }
- },
- currentRowKey: function currentRowKey(newVal) {
- this.store.setCurrentRowKey(newVal);
- },
- data: {
- immediate: true,
- handler: function handler(value) {
- var _this3 = this;
- this.store.states.treeData = this.getTableTreeData(value);
- value = flattenData(value);
- this.store.commit('setData', value);
- if (this.$ready) {
- this.$nextTick(function () {
- _this3.doLayout();
- });
- }
- }
- },
- expandRowKeys: {
- immediate: true,
- handler: function handler(newVal) {
- if (newVal) {
- this.store.setExpandRowKeys(newVal);
- }
- }
- }
- },
- destroyed: function destroyed() {
- if (this.resizeListener) Object(resize_event_["removeResizeListener"])(this.$el, this.resizeListener);
- },
- mounted: function mounted() {
- var _this4 = this;
- this.bindEvents();
- this.store.updateColumns();
- this.doLayout();
- this.resizeState = {
- width: this.$el.offsetWidth,
- height: this.$el.offsetHeight
- };
- // init filters
- this.store.states.columns.forEach(function (column) {
- if (column.filteredValue && column.filteredValue.length) {
- _this4.store.commit('filterChange', {
- column: column,
- values: column.filteredValue,
- silent: true
- });
- }
- });
- this.$ready = true;
- },
- data: function data() {
- var store = new table_store(this, {
- rowKey: this.rowKey,
- defaultExpandAll: this.defaultExpandAll,
- selectOnIndeterminate: this.selectOnIndeterminate,
- indent: this.indent,
- lazy: this.lazy
- });
- var layout = new table_layout({
- store: store,
- table: this,
- fit: this.fit,
- showHeader: this.showHeader
- });
- return {
- layout: layout,
- store: store,
- isHidden: false,
- renderExpanded: null,
- resizeProxyVisible: false,
- resizeState: {
- width: null,
- height: null
- },
- // 是否拥有多级表头
- isGroup: false,
- scrollPosition: 'left'
- };
- }
- });
- // CONCATENATED MODULE: ./packages/table/src/table.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tablevue_type_script_lang_js_ = (tablevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/table/src/table.vue
- /* normalize component */
- var table_component = normalizeComponent(
- src_tablevue_type_script_lang_js_,
- tablevue_type_template_id_493fe34e_render,
- tablevue_type_template_id_493fe34e_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var table_api; }
- table_component.options.__file = "packages/table/src/table.vue"
- /* harmony default export */ var src_table = (table_component.exports);
- // CONCATENATED MODULE: ./packages/table/index.js
- /* istanbul ignore next */
- src_table.install = function (Vue) {
- Vue.component(src_table.name, src_table);
- };
- /* harmony default export */ var packages_table = (src_table);
- // CONCATENATED MODULE: ./packages/table/src/table-column.js
- var columnIdSeed = 1;
- var defaults = {
- default: {
- order: ''
- },
- selection: {
- width: 48,
- minWidth: 48,
- realWidth: 48,
- order: '',
- className: 'el-table-column--selection'
- },
- expand: {
- width: 48,
- minWidth: 48,
- realWidth: 48,
- order: ''
- },
- index: {
- width: 48,
- minWidth: 48,
- realWidth: 48,
- order: ''
- }
- };
- var forced = {
- selection: {
- renderHeader: function renderHeader(h, _ref) {
- var store = _ref.store;
- return h('el-checkbox', {
- attrs: {
- disabled: store.states.data && store.states.data.length === 0,
- indeterminate: store.states.selection.length > 0 && !this.isAllSelected,
- value: this.isAllSelected },
- nativeOn: {
- 'click': this.toggleAllSelection
- }
- });
- },
- renderCell: function renderCell(h, _ref2) {
- var row = _ref2.row,
- column = _ref2.column,
- store = _ref2.store,
- $index = _ref2.$index;
- return h('el-checkbox', {
- nativeOn: {
- 'click': function click(event) {
- return event.stopPropagation();
- }
- },
- attrs: {
- value: store.isSelected(row),
- disabled: column.selectable ? !column.selectable.call(null, row, $index) : false
- },
- on: {
- 'input': function input() {
- store.commit('rowSelectedChanged', row);
- }
- }
- });
- },
- sortable: false,
- resizable: false
- },
- index: {
- renderHeader: function renderHeader(h, _ref3) {
- var column = _ref3.column;
- return column.label || '#';
- },
- renderCell: function renderCell(h, _ref4) {
- var $index = _ref4.$index,
- column = _ref4.column;
- var i = $index + 1;
- var index = column.index;
- if (typeof index === 'number') {
- i = $index + index;
- } else if (typeof index === 'function') {
- i = index($index);
- }
- return h('div', [i]);
- },
- sortable: false
- },
- expand: {
- renderHeader: function renderHeader(h, _ref5) {
- var column = _ref5.column;
- return column.label || '';
- },
- renderCell: function renderCell(h, _ref6, proxy) {
- var row = _ref6.row,
- store = _ref6.store;
- var expanded = store.states.expandRows.indexOf(row) > -1;
- return h(
- 'div',
- { 'class': 'el-table__expand-icon ' + (expanded ? 'el-table__expand-icon--expanded' : ''),
- on: {
- 'click': function click(e) {
- return proxy.handleExpandClick(row, e);
- }
- }
- },
- [h('i', { 'class': 'el-icon el-icon-arrow-right' })]
- );
- },
- sortable: false,
- resizable: false,
- className: 'el-table__expand-column'
- }
- };
- var table_column_getDefaultColumn = function getDefaultColumn(type, options) {
- var column = {};
- merge_default()(column, defaults[type || 'default']);
- for (var name in options) {
- if (options.hasOwnProperty(name)) {
- var value = options[name];
- if (typeof value !== 'undefined') {
- column[name] = value;
- }
- }
- }
- if (!column.minWidth) {
- column.minWidth = 80;
- }
- column.realWidth = column.width === undefined ? column.minWidth : column.width;
- return column;
- };
- var table_column_DEFAULT_RENDER_CELL = function DEFAULT_RENDER_CELL(h, _ref7) {
- var row = _ref7.row,
- column = _ref7.column,
- $index = _ref7.$index;
- var property = column.property;
- var value = property && Object(util_["getPropByPath"])(row, property).v;
- if (column && column.formatter) {
- return column.formatter(row, column, value, $index);
- }
- return value;
- };
- var parseWidth = function parseWidth(width) {
- if (width !== undefined) {
- width = parseInt(width, 10);
- if (isNaN(width)) {
- width = null;
- }
- }
- return width;
- };
- var parseMinWidth = function parseMinWidth(minWidth) {
- if (minWidth !== undefined) {
- minWidth = parseInt(minWidth, 10);
- if (isNaN(minWidth)) {
- minWidth = 80;
- }
- }
- return minWidth;
- };
- /* harmony default export */ var table_column = ({
- name: 'ElTableColumn',
- props: {
- type: {
- type: String,
- default: 'default'
- },
- label: String,
- className: String,
- labelClassName: String,
- property: String,
- prop: String,
- width: {},
- minWidth: {},
- renderHeader: Function,
- sortable: {
- type: [String, Boolean],
- default: false
- },
- sortMethod: Function,
- sortBy: [String, Function, Array],
- resizable: {
- type: Boolean,
- default: true
- },
- context: {},
- columnKey: String,
- align: String,
- headerAlign: String,
- showTooltipWhenOverflow: Boolean,
- showOverflowTooltip: Boolean,
- fixed: [Boolean, String],
- formatter: Function,
- selectable: Function,
- reserveSelection: Boolean,
- filterMethod: Function,
- filteredValue: Array,
- filters: Array,
- filterPlacement: String,
- filterMultiple: {
- type: Boolean,
- default: true
- },
- index: [Number, Function],
- sortOrders: {
- type: Array,
- default: function _default() {
- return ['ascending', 'descending', null];
- },
- validator: function validator(val) {
- return val.every(function (order) {
- return ['ascending', 'descending', null].indexOf(order) > -1;
- });
- }
- }
- },
- data: function data() {
- return {
- isSubColumn: false,
- columns: []
- };
- },
- beforeCreate: function beforeCreate() {
- this.row = {};
- this.column = {};
- this.$index = 0;
- },
- components: {
- ElCheckbox: checkbox_default.a,
- ElTag: tag_default.a
- },
- computed: {
- owner: function owner() {
- var parent = this.$parent;
- while (parent && !parent.tableId) {
- parent = parent.$parent;
- }
- return parent;
- },
- columnOrTableParent: function columnOrTableParent() {
- var parent = this.$parent;
- while (parent && !parent.tableId && !parent.columnId) {
- parent = parent.$parent;
- }
- return parent;
- }
- },
- created: function created() {
- var _this = this;
- var h = this.$createElement;
- this.customRender = this.$options.render;
- this.$options.render = function (h) {
- return h('div', _this.$slots.default);
- };
- var parent = this.columnOrTableParent;
- var owner = this.owner;
- this.isSubColumn = owner !== parent;
- this.columnId = (parent.tableId || parent.columnId) + '_column_' + columnIdSeed++;
- var type = this.type;
- var width = parseWidth(this.width);
- var minWidth = parseMinWidth(this.minWidth);
- var isColumnGroup = false;
- var column = table_column_getDefaultColumn(type, {
- id: this.columnId,
- columnKey: this.columnKey,
- label: this.label,
- className: this.className,
- labelClassName: this.labelClassName,
- property: this.prop || this.property,
- type: type,
- renderCell: null,
- renderHeader: this.renderHeader,
- minWidth: minWidth,
- width: width,
- isColumnGroup: isColumnGroup,
- context: this.context,
- align: this.align ? 'is-' + this.align : null,
- headerAlign: this.headerAlign ? 'is-' + this.headerAlign : this.align ? 'is-' + this.align : null,
- sortable: this.sortable === '' ? true : this.sortable,
- sortMethod: this.sortMethod,
- sortBy: this.sortBy,
- resizable: this.resizable,
- showOverflowTooltip: this.showOverflowTooltip || this.showTooltipWhenOverflow,
- formatter: this.formatter,
- selectable: this.selectable,
- reserveSelection: this.reserveSelection,
- fixed: this.fixed === '' ? true : this.fixed,
- filterMethod: this.filterMethod,
- filters: this.filters,
- filterable: this.filters || this.filterMethod,
- filterMultiple: this.filterMultiple,
- filterOpened: false,
- filteredValue: this.filteredValue || [],
- filterPlacement: this.filterPlacement || '',
- index: this.index,
- sortOrders: this.sortOrders
- });
- var source = forced[type] || {};
- Object.keys(source).forEach(function (prop) {
- var value = source[prop];
- if (value !== undefined) {
- if (prop === 'renderHeader') {
- if (type === 'selection' && column[prop]) {
- console.warn('[Element Warn][TableColumn]Selection column doesn\'t allow to set render-header function.');
- } else {
- value = column[prop] || value;
- }
- }
- column[prop] = prop === 'className' ? column[prop] + ' ' + value : value;
- }
- });
- // Deprecation warning for renderHeader property
- if (this.renderHeader) {
- console.warn('[Element Warn][TableColumn]Comparing to render-header, scoped-slot header is easier to use. We recommend users to use scoped-slot header.');
- }
- this.columnConfig = column;
- var renderCell = column.renderCell;
- var _self = this;
- if (type === 'expand') {
- owner.renderExpanded = function (h, data) {
- return _self.$scopedSlots.default ? _self.$scopedSlots.default(data) : _self.$slots.default;
- };
- column.renderCell = function (h, data) {
- return h(
- 'div',
- { 'class': 'cell' },
- [renderCell(h, data, this._renderProxy)]
- );
- };
- return;
- }
- column.renderCell = function (h, data) {
- if (_self.$scopedSlots.default) {
- renderCell = function renderCell() {
- return _self.$scopedSlots.default(data);
- };
- }
- if (!renderCell) {
- renderCell = table_column_DEFAULT_RENDER_CELL;
- }
- var children = [_self.renderTreeCell(data), renderCell(h, data)];
- return _self.showOverflowTooltip || _self.showTooltipWhenOverflow ? h(
- 'div',
- { 'class': 'cell el-tooltip', style: { width: (data.column.realWidth || data.column.width) - 1 + 'px' } },
- [children]
- ) : h(
- 'div',
- { 'class': 'cell' },
- [children]
- );
- };
- },
- destroyed: function destroyed() {
- if (!this.$parent) return;
- var parent = this.$parent;
- this.owner.store.commit('removeColumn', this.columnConfig, this.isSubColumn ? parent.columnConfig : null);
- },
- watch: {
- label: function label(newVal) {
- if (this.columnConfig) {
- this.columnConfig.label = newVal;
- }
- },
- prop: function prop(newVal) {
- if (this.columnConfig) {
- this.columnConfig.property = newVal;
- }
- },
- property: function property(newVal) {
- if (this.columnConfig) {
- this.columnConfig.property = newVal;
- }
- },
- filters: function filters(newVal) {
- if (this.columnConfig) {
- this.columnConfig.filters = newVal;
- }
- },
- filterMultiple: function filterMultiple(newVal) {
- if (this.columnConfig) {
- this.columnConfig.filterMultiple = newVal;
- }
- },
- align: function align(newVal) {
- if (this.columnConfig) {
- this.columnConfig.align = newVal ? 'is-' + newVal : null;
- if (!this.headerAlign) {
- this.columnConfig.headerAlign = newVal ? 'is-' + newVal : null;
- }
- }
- },
- headerAlign: function headerAlign(newVal) {
- if (this.columnConfig) {
- this.columnConfig.headerAlign = 'is-' + (newVal ? newVal : this.align);
- }
- },
- width: function width(newVal) {
- if (this.columnConfig) {
- this.columnConfig.width = parseWidth(newVal);
- this.owner.store.scheduleLayout();
- }
- },
- minWidth: function minWidth(newVal) {
- if (this.columnConfig) {
- this.columnConfig.minWidth = parseMinWidth(newVal);
- this.owner.store.scheduleLayout();
- }
- },
- fixed: function fixed(newVal) {
- if (this.columnConfig) {
- this.columnConfig.fixed = newVal;
- this.owner.store.scheduleLayout(true);
- }
- },
- sortable: function sortable(newVal) {
- if (this.columnConfig) {
- this.columnConfig.sortable = newVal;
- }
- },
- index: function index(newVal) {
- if (this.columnConfig) {
- this.columnConfig.index = newVal;
- }
- },
- formatter: function formatter(newVal) {
- if (this.columnConfig) {
- this.columnConfig.formatter = newVal;
- }
- },
- className: function className(newVal) {
- if (this.columnConfig) {
- this.columnConfig.className = newVal;
- }
- },
- labelClassName: function labelClassName(newVal) {
- if (this.columnConfig) {
- this.columnConfig.labelClassName = newVal;
- }
- }
- },
- methods: {
- renderTreeCell: function renderTreeCell(data) {
- var h = this.$createElement;
- if (!data.treeNode) return null;
- var ele = [];
- ele.push(h('span', { 'class': 'el-table__indent', style: { 'padding-left': data.treeNode.indent + 'px' } }));
- if (data.treeNode.hasChildren) {
- ele.push(h(
- 'div',
- { 'class': ['el-table__expand-icon', data.treeNode.expanded ? 'el-table__expand-icon--expanded' : ''],
- on: {
- 'click': this.handleTreeExpandIconClick.bind(this, data)
- }
- },
- [h('i', { 'class': 'el-icon el-icon-arrow-right' })]
- ));
- } else {
- ele.push(h('span', { 'class': 'el-table__placeholder' }));
- }
- return ele;
- },
- handleTreeExpandIconClick: function handleTreeExpandIconClick(data, e) {
- e.stopPropagation();
- if (data.store.states.lazy && !data.treeNode.loaded) {
- data.store.loadData(data.row, data.treeNode);
- } else {
- data.store.toggleTreeExpansion(data.treeNode.rowKey);
- }
- }
- },
- mounted: function mounted() {
- var _this2 = this;
- var owner = this.owner;
- var parent = this.columnOrTableParent;
- var columnIndex = void 0;
- if (!this.isSubColumn) {
- columnIndex = [].indexOf.call(parent.$refs.hiddenColumns.children, this.$el);
- } else {
- columnIndex = [].indexOf.call(parent.$el.children, this.$el);
- }
- if (this.$scopedSlots.header) {
- if (this.type === 'selection') {
- console.warn('[Element Warn][TableColumn]Selection column doesn\'t allow to set scoped-slot header.');
- } else {
- this.columnConfig.renderHeader = function (h, scope) {
- return _this2.$scopedSlots.header(scope);
- };
- }
- }
- owner.store.commit('insertColumn', this.columnConfig, columnIndex, this.isSubColumn ? parent.columnConfig : null);
- }
- });
- // CONCATENATED MODULE: ./packages/table-column/index.js
- /* istanbul ignore next */
- table_column.install = function (Vue) {
- Vue.component(table_column.name, table_column);
- };
- /* harmony default export */ var packages_table_column = (table_column);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/picker.vue?vue&type=template&id=79ae069f&
- var pickervue_type_template_id_79ae069f_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return !_vm.ranged
- ? _c(
- "el-input",
- _vm._b(
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleClose,
- expression: "handleClose"
- }
- ],
- ref: "reference",
- staticClass: "el-date-editor",
- class: "el-date-editor--" + _vm.type,
- attrs: {
- readonly:
- !_vm.editable ||
- _vm.readonly ||
- _vm.type === "dates" ||
- _vm.type === "week",
- disabled: _vm.pickerDisabled,
- size: _vm.pickerSize,
- name: _vm.name,
- placeholder: _vm.placeholder,
- value: _vm.displayValue,
- validateEvent: false
- },
- on: {
- focus: _vm.handleFocus,
- input: function(value) {
- return (_vm.userInput = value)
- },
- change: _vm.handleChange
- },
- nativeOn: {
- keydown: function($event) {
- return _vm.handleKeydown($event)
- },
- mouseenter: function($event) {
- return _vm.handleMouseEnter($event)
- },
- mouseleave: function($event) {
- _vm.showClose = false
- }
- }
- },
- "el-input",
- _vm.firstInputId,
- false
- ),
- [
- _c("i", {
- staticClass: "el-input__icon",
- class: _vm.triggerClass,
- attrs: { slot: "prefix" },
- on: { click: _vm.handleFocus },
- slot: "prefix"
- }),
- _vm.haveTrigger
- ? _c("i", {
- staticClass: "el-input__icon",
- class: [_vm.showClose ? "" + _vm.clearIcon : ""],
- attrs: { slot: "suffix" },
- on: { click: _vm.handleClickIcon },
- slot: "suffix"
- })
- : _vm._e()
- ]
- )
- : _c(
- "div",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleClose,
- expression: "handleClose"
- }
- ],
- ref: "reference",
- staticClass: "el-date-editor el-range-editor el-input__inner",
- class: [
- "el-date-editor--" + _vm.type,
- _vm.pickerSize ? "el-range-editor--" + _vm.pickerSize : "",
- _vm.pickerDisabled ? "is-disabled" : "",
- _vm.pickerVisible ? "is-active" : ""
- ],
- on: {
- click: _vm.handleRangeClick,
- mouseenter: _vm.handleMouseEnter,
- mouseleave: function($event) {
- _vm.showClose = false
- },
- keydown: _vm.handleKeydown
- }
- },
- [
- _c("i", {
- class: ["el-input__icon", "el-range__icon", _vm.triggerClass]
- }),
- _c(
- "input",
- _vm._b(
- {
- staticClass: "el-range-input",
- attrs: {
- autocomplete: "off",
- placeholder: _vm.startPlaceholder,
- disabled: _vm.pickerDisabled,
- readonly: !_vm.editable || _vm.readonly,
- name: _vm.name && _vm.name[0]
- },
- domProps: { value: _vm.displayValue && _vm.displayValue[0] },
- on: {
- input: _vm.handleStartInput,
- change: _vm.handleStartChange,
- focus: _vm.handleFocus
- }
- },
- "input",
- _vm.firstInputId,
- false
- )
- ),
- _vm._t("range-separator", [
- _c("span", { staticClass: "el-range-separator" }, [
- _vm._v(_vm._s(_vm.rangeSeparator))
- ])
- ]),
- _c(
- "input",
- _vm._b(
- {
- staticClass: "el-range-input",
- attrs: {
- autocomplete: "off",
- placeholder: _vm.endPlaceholder,
- disabled: _vm.pickerDisabled,
- readonly: !_vm.editable || _vm.readonly,
- name: _vm.name && _vm.name[1]
- },
- domProps: { value: _vm.displayValue && _vm.displayValue[1] },
- on: {
- input: _vm.handleEndInput,
- change: _vm.handleEndChange,
- focus: _vm.handleFocus
- }
- },
- "input",
- _vm.secondInputId,
- false
- )
- ),
- _vm.haveTrigger
- ? _c("i", {
- staticClass: "el-input__icon el-range__close-icon",
- class: [_vm.showClose ? "" + _vm.clearIcon : ""],
- on: { click: _vm.handleClickIcon }
- })
- : _vm._e()
- ],
- 2
- )
- }
- var pickervue_type_template_id_79ae069f_staticRenderFns = []
- pickervue_type_template_id_79ae069f_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/picker.vue?vue&type=template&id=79ae069f&
- // EXTERNAL MODULE: external "element-ui/lib/utils/date-util"
- var date_util_ = __webpack_require__(0);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/picker.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var NewPopper = {
- props: {
- appendToBody: vue_popper_default.a.props.appendToBody,
- offset: vue_popper_default.a.props.offset,
- boundariesPadding: vue_popper_default.a.props.boundariesPadding,
- arrowOffset: vue_popper_default.a.props.arrowOffset
- },
- methods: vue_popper_default.a.methods,
- data: function data() {
- return merge_default()({ visibleArrow: true }, vue_popper_default.a.data);
- },
- beforeDestroy: vue_popper_default.a.beforeDestroy
- };
- var DEFAULT_FORMATS = {
- date: 'yyyy-MM-dd',
- month: 'yyyy-MM',
- datetime: 'yyyy-MM-dd HH:mm:ss',
- time: 'HH:mm:ss',
- week: 'yyyywWW',
- timerange: 'HH:mm:ss',
- daterange: 'yyyy-MM-dd',
- monthrange: 'yyyy-MM',
- datetimerange: 'yyyy-MM-dd HH:mm:ss',
- year: 'yyyy'
- };
- var HAVE_TRIGGER_TYPES = ['date', 'datetime', 'time', 'time-select', 'week', 'month', 'year', 'daterange', 'monthrange', 'timerange', 'datetimerange', 'dates'];
- var pickervue_type_script_lang_js_DATE_FORMATTER = function DATE_FORMATTER(value, format) {
- if (format === 'timestamp') return value.getTime();
- return Object(date_util_["formatDate"])(value, format);
- };
- var pickervue_type_script_lang_js_DATE_PARSER = function DATE_PARSER(text, format) {
- if (format === 'timestamp') return new Date(Number(text));
- return Object(date_util_["parseDate"])(text, format);
- };
- var RANGE_FORMATTER = function RANGE_FORMATTER(value, format) {
- if (Array.isArray(value) && value.length === 2) {
- var start = value[0];
- var end = value[1];
- if (start && end) {
- return [pickervue_type_script_lang_js_DATE_FORMATTER(start, format), pickervue_type_script_lang_js_DATE_FORMATTER(end, format)];
- }
- }
- return '';
- };
- var RANGE_PARSER = function RANGE_PARSER(array, format, separator) {
- if (!Array.isArray(array)) {
- array = array.split(separator);
- }
- if (array.length === 2) {
- var range1 = array[0];
- var range2 = array[1];
- return [pickervue_type_script_lang_js_DATE_PARSER(range1, format), pickervue_type_script_lang_js_DATE_PARSER(range2, format)];
- }
- return [];
- };
- var TYPE_VALUE_RESOLVER_MAP = {
- default: {
- formatter: function formatter(value) {
- if (!value) return '';
- return '' + value;
- },
- parser: function parser(text) {
- if (text === undefined || text === '') return null;
- return text;
- }
- },
- week: {
- formatter: function formatter(value, format) {
- var week = Object(date_util_["getWeekNumber"])(value);
- var month = value.getMonth();
- var trueDate = new Date(value);
- if (week === 1 && month === 11) {
- trueDate.setHours(0, 0, 0, 0);
- trueDate.setDate(trueDate.getDate() + 3 - (trueDate.getDay() + 6) % 7);
- }
- var date = Object(date_util_["formatDate"])(trueDate, format);
- date = /WW/.test(date) ? date.replace(/WW/, week < 10 ? '0' + week : week) : date.replace(/W/, week);
- return date;
- },
- parser: function parser(text, format) {
- // parse as if a normal date
- return TYPE_VALUE_RESOLVER_MAP.date.parser(text, format);
- }
- },
- date: {
- formatter: pickervue_type_script_lang_js_DATE_FORMATTER,
- parser: pickervue_type_script_lang_js_DATE_PARSER
- },
- datetime: {
- formatter: pickervue_type_script_lang_js_DATE_FORMATTER,
- parser: pickervue_type_script_lang_js_DATE_PARSER
- },
- daterange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- monthrange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- datetimerange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- timerange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- time: {
- formatter: pickervue_type_script_lang_js_DATE_FORMATTER,
- parser: pickervue_type_script_lang_js_DATE_PARSER
- },
- month: {
- formatter: pickervue_type_script_lang_js_DATE_FORMATTER,
- parser: pickervue_type_script_lang_js_DATE_PARSER
- },
- year: {
- formatter: pickervue_type_script_lang_js_DATE_FORMATTER,
- parser: pickervue_type_script_lang_js_DATE_PARSER
- },
- number: {
- formatter: function formatter(value) {
- if (!value) return '';
- return '' + value;
- },
- parser: function parser(text) {
- var result = Number(text);
- if (!isNaN(text)) {
- return result;
- } else {
- return null;
- }
- }
- },
- dates: {
- formatter: function formatter(value, format) {
- return value.map(function (date) {
- return pickervue_type_script_lang_js_DATE_FORMATTER(date, format);
- });
- },
- parser: function parser(value, format) {
- return (typeof value === 'string' ? value.split(', ') : value).map(function (date) {
- return date instanceof Date ? date : pickervue_type_script_lang_js_DATE_PARSER(date, format);
- });
- }
- }
- };
- var PLACEMENT_MAP = {
- left: 'bottom-start',
- center: 'bottom',
- right: 'bottom-end'
- };
- var parseAsFormatAndType = function parseAsFormatAndType(value, customFormat, type) {
- var rangeSeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '-';
- if (!value) return null;
- var parser = (TYPE_VALUE_RESOLVER_MAP[type] || TYPE_VALUE_RESOLVER_MAP['default']).parser;
- var format = customFormat || DEFAULT_FORMATS[type];
- return parser(value, format, rangeSeparator);
- };
- var formatAsFormatAndType = function formatAsFormatAndType(value, customFormat, type) {
- if (!value) return null;
- var formatter = (TYPE_VALUE_RESOLVER_MAP[type] || TYPE_VALUE_RESOLVER_MAP['default']).formatter;
- var format = customFormat || DEFAULT_FORMATS[type];
- return formatter(value, format);
- };
- /*
- * Considers:
- * 1. Date object
- * 2. date string
- * 3. array of 1 or 2
- */
- var valueEquals = function valueEquals(a, b) {
- // considers Date object and string
- var dateEquals = function dateEquals(a, b) {
- var aIsDate = a instanceof Date;
- var bIsDate = b instanceof Date;
- if (aIsDate && bIsDate) {
- return a.getTime() === b.getTime();
- }
- if (!aIsDate && !bIsDate) {
- return a === b;
- }
- return false;
- };
- var aIsArray = a instanceof Array;
- var bIsArray = b instanceof Array;
- if (aIsArray && bIsArray) {
- if (a.length !== b.length) {
- return false;
- }
- return a.every(function (item, index) {
- return dateEquals(item, b[index]);
- });
- }
- if (!aIsArray && !bIsArray) {
- return dateEquals(a, b);
- }
- return false;
- };
- var isString = function isString(val) {
- return typeof val === 'string' || val instanceof String;
- };
- var pickervue_type_script_lang_js_validator = function validator(val) {
- // either: String, Array of String, null / undefined
- return val === null || val === undefined || isString(val) || Array.isArray(val) && val.length === 2 && val.every(isString);
- };
- /* harmony default export */ var pickervue_type_script_lang_js_ = ({
- mixins: [emitter_default.a, NewPopper],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- props: {
- size: String,
- format: String,
- valueFormat: String,
- readonly: Boolean,
- placeholder: String,
- startPlaceholder: String,
- endPlaceholder: String,
- prefixIcon: String,
- clearIcon: {
- type: String,
- default: 'el-icon-circle-close'
- },
- name: {
- default: '',
- validator: pickervue_type_script_lang_js_validator
- },
- disabled: Boolean,
- clearable: {
- type: Boolean,
- default: true
- },
- id: {
- default: '',
- validator: pickervue_type_script_lang_js_validator
- },
- popperClass: String,
- editable: {
- type: Boolean,
- default: true
- },
- align: {
- type: String,
- default: 'left'
- },
- value: {},
- defaultValue: {},
- defaultTime: {},
- rangeSeparator: {
- default: '-'
- },
- pickerOptions: {},
- unlinkPanels: Boolean,
- validateEvent: {
- type: Boolean,
- default: true
- }
- },
- components: { ElInput: input_default.a },
- directives: { Clickoutside: clickoutside_default.a },
- data: function data() {
- return {
- pickerVisible: false,
- showClose: false,
- userInput: null,
- valueOnOpen: null, // value when picker opens, used to determine whether to emit change
- unwatchPickerOptions: null
- };
- },
- watch: {
- pickerVisible: function pickerVisible(val) {
- if (this.readonly || this.pickerDisabled) return;
- if (val) {
- this.showPicker();
- this.valueOnOpen = Array.isArray(this.value) ? [].concat(this.value) : this.value;
- } else {
- this.hidePicker();
- this.emitChange(this.value);
- this.userInput = null;
- if (this.validateEvent) {
- this.dispatch('ElFormItem', 'el.form.blur');
- }
- this.$emit('blur', this);
- this.blur();
- }
- },
- parsedValue: {
- immediate: true,
- handler: function handler(val) {
- if (this.picker) {
- this.picker.value = val;
- }
- }
- },
- defaultValue: function defaultValue(val) {
- // NOTE: should eventually move to jsx style picker + panel ?
- if (this.picker) {
- this.picker.defaultValue = val;
- }
- },
- value: function value(val, oldVal) {
- if (!valueEquals(val, oldVal) && !this.pickerVisible && this.validateEvent) {
- this.dispatch('ElFormItem', 'el.form.change', val);
- }
- }
- },
- computed: {
- ranged: function ranged() {
- return this.type.indexOf('range') > -1;
- },
- reference: function reference() {
- var reference = this.$refs.reference;
- return reference.$el || reference;
- },
- refInput: function refInput() {
- if (this.reference) {
- return [].slice.call(this.reference.querySelectorAll('input'));
- }
- return [];
- },
- valueIsEmpty: function valueIsEmpty() {
- var val = this.value;
- if (Array.isArray(val)) {
- for (var i = 0, len = val.length; i < len; i++) {
- if (val[i]) {
- return false;
- }
- }
- } else {
- if (val) {
- return false;
- }
- }
- return true;
- },
- triggerClass: function triggerClass() {
- return this.prefixIcon || (this.type.indexOf('time') !== -1 ? 'el-icon-time' : 'el-icon-date');
- },
- selectionMode: function selectionMode() {
- if (this.type === 'week') {
- return 'week';
- } else if (this.type === 'month') {
- return 'month';
- } else if (this.type === 'year') {
- return 'year';
- } else if (this.type === 'dates') {
- return 'dates';
- }
- return 'day';
- },
- haveTrigger: function haveTrigger() {
- if (typeof this.showTrigger !== 'undefined') {
- return this.showTrigger;
- }
- return HAVE_TRIGGER_TYPES.indexOf(this.type) !== -1;
- },
- displayValue: function displayValue() {
- var formattedValue = formatAsFormatAndType(this.parsedValue, this.format, this.type, this.rangeSeparator);
- if (Array.isArray(this.userInput)) {
- return [this.userInput[0] || formattedValue && formattedValue[0] || '', this.userInput[1] || formattedValue && formattedValue[1] || ''];
- } else if (this.userInput !== null) {
- return this.userInput;
- } else if (formattedValue) {
- return this.type === 'dates' ? formattedValue.join(', ') : formattedValue;
- } else {
- return '';
- }
- },
- parsedValue: function parsedValue() {
- if (!this.value) return this.value; // component value is not set
- if (this.type === 'time-select') return this.value; // time-select does not require parsing, this might change in next major version
- var valueIsDateObject = Object(date_util_["isDateObject"])(this.value) || Array.isArray(this.value) && this.value.every(date_util_["isDateObject"]);
- if (valueIsDateObject) {
- return this.value;
- }
- if (this.valueFormat) {
- return parseAsFormatAndType(this.value, this.valueFormat, this.type, this.rangeSeparator) || this.value;
- }
- // NOTE: deal with common but incorrect usage, should remove in next major version
- // user might provide string / timestamp without value-format, coerce them into date (or array of date)
- return Array.isArray(this.value) ? this.value.map(function (val) {
- return new Date(val);
- }) : new Date(this.value);
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- pickerSize: function pickerSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- pickerDisabled: function pickerDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- },
- firstInputId: function firstInputId() {
- var obj = {};
- var id = void 0;
- if (this.ranged) {
- id = this.id && this.id[0];
- } else {
- id = this.id;
- }
- if (id) obj.id = id;
- return obj;
- },
- secondInputId: function secondInputId() {
- var obj = {};
- var id = void 0;
- if (this.ranged) {
- id = this.id && this.id[1];
- }
- if (id) obj.id = id;
- return obj;
- }
- },
- created: function created() {
- // vue-popper
- this.popperOptions = {
- boundariesPadding: 0,
- gpuAcceleration: false
- };
- this.placement = PLACEMENT_MAP[this.align] || PLACEMENT_MAP.left;
- this.$on('fieldReset', this.handleFieldReset);
- },
- methods: {
- focus: function focus() {
- if (!this.ranged) {
- this.$refs.reference.focus();
- } else {
- this.handleFocus();
- }
- },
- blur: function blur() {
- this.refInput.forEach(function (input) {
- return input.blur();
- });
- },
- // {parse, formatTo} Value deals maps component value with internal Date
- parseValue: function parseValue(value) {
- var isParsed = Object(date_util_["isDateObject"])(value) || Array.isArray(value) && value.every(date_util_["isDateObject"]);
- if (this.valueFormat && !isParsed) {
- return parseAsFormatAndType(value, this.valueFormat, this.type, this.rangeSeparator) || value;
- } else {
- return value;
- }
- },
- formatToValue: function formatToValue(date) {
- var isFormattable = Object(date_util_["isDateObject"])(date) || Array.isArray(date) && date.every(date_util_["isDateObject"]);
- if (this.valueFormat && isFormattable) {
- return formatAsFormatAndType(date, this.valueFormat, this.type, this.rangeSeparator);
- } else {
- return date;
- }
- },
- // {parse, formatTo} String deals with user input
- parseString: function parseString(value) {
- var type = Array.isArray(value) ? this.type : this.type.replace('range', '');
- return parseAsFormatAndType(value, this.format, type);
- },
- formatToString: function formatToString(value) {
- var type = Array.isArray(value) ? this.type : this.type.replace('range', '');
- return formatAsFormatAndType(value, this.format, type);
- },
- handleMouseEnter: function handleMouseEnter() {
- if (this.readonly || this.pickerDisabled) return;
- if (!this.valueIsEmpty && this.clearable) {
- this.showClose = true;
- }
- },
- handleChange: function handleChange() {
- if (this.userInput) {
- var value = this.parseString(this.displayValue);
- if (value) {
- this.picker.value = value;
- if (this.isValidValue(value)) {
- this.emitInput(value);
- this.userInput = null;
- }
- }
- }
- if (this.userInput === '') {
- this.emitInput(null);
- this.emitChange(null);
- this.userInput = null;
- }
- },
- handleStartInput: function handleStartInput(event) {
- if (this.userInput) {
- this.userInput = [event.target.value, this.userInput[1]];
- } else {
- this.userInput = [event.target.value, null];
- }
- },
- handleEndInput: function handleEndInput(event) {
- if (this.userInput) {
- this.userInput = [this.userInput[0], event.target.value];
- } else {
- this.userInput = [null, event.target.value];
- }
- },
- handleStartChange: function handleStartChange(event) {
- var value = this.parseString(this.userInput && this.userInput[0]);
- if (value) {
- this.userInput = [this.formatToString(value), this.displayValue[1]];
- var newValue = [value, this.picker.value && this.picker.value[1]];
- this.picker.value = newValue;
- if (this.isValidValue(newValue)) {
- this.emitInput(newValue);
- this.userInput = null;
- }
- }
- },
- handleEndChange: function handleEndChange(event) {
- var value = this.parseString(this.userInput && this.userInput[1]);
- if (value) {
- this.userInput = [this.displayValue[0], this.formatToString(value)];
- var newValue = [this.picker.value && this.picker.value[0], value];
- this.picker.value = newValue;
- if (this.isValidValue(newValue)) {
- this.emitInput(newValue);
- this.userInput = null;
- }
- }
- },
- handleClickIcon: function handleClickIcon(event) {
- if (this.readonly || this.pickerDisabled) return;
- if (this.showClose) {
- this.valueOnOpen = this.value;
- event.stopPropagation();
- this.emitInput(null);
- this.emitChange(null);
- this.showClose = false;
- if (this.picker && typeof this.picker.handleClear === 'function') {
- this.picker.handleClear();
- }
- } else {
- this.pickerVisible = !this.pickerVisible;
- }
- },
- handleClose: function handleClose() {
- if (!this.pickerVisible) return;
- this.pickerVisible = false;
- if (this.type === 'dates') {
- // restore to former value
- var oldValue = parseAsFormatAndType(this.valueOnOpen, this.valueFormat, this.type, this.rangeSeparator) || this.valueOnOpen;
- this.emitInput(oldValue);
- }
- },
- handleFieldReset: function handleFieldReset(initialValue) {
- this.userInput = initialValue === '' ? null : initialValue;
- },
- handleFocus: function handleFocus() {
- var type = this.type;
- if (HAVE_TRIGGER_TYPES.indexOf(type) !== -1 && !this.pickerVisible) {
- this.pickerVisible = true;
- }
- this.$emit('focus', this);
- },
- handleKeydown: function handleKeydown(event) {
- var _this = this;
- var keyCode = event.keyCode;
- // ESC
- if (keyCode === 27) {
- this.pickerVisible = false;
- event.stopPropagation();
- return;
- }
- // Tab
- if (keyCode === 9) {
- if (!this.ranged) {
- this.handleChange();
- this.pickerVisible = this.picker.visible = false;
- this.blur();
- event.stopPropagation();
- } else {
- // user may change focus between two input
- setTimeout(function () {
- if (_this.refInput.indexOf(document.activeElement) === -1) {
- _this.pickerVisible = false;
- _this.blur();
- event.stopPropagation();
- }
- }, 0);
- }
- return;
- }
- // Enter
- if (keyCode === 13) {
- if (this.userInput === '' || this.isValidValue(this.parseString(this.displayValue))) {
- this.handleChange();
- this.pickerVisible = this.picker.visible = false;
- this.blur();
- }
- event.stopPropagation();
- return;
- }
- // if user is typing, do not let picker handle key input
- if (this.userInput) {
- event.stopPropagation();
- return;
- }
- // delegate other keys to panel
- if (this.picker && this.picker.handleKeydown) {
- this.picker.handleKeydown(event);
- }
- },
- handleRangeClick: function handleRangeClick() {
- var type = this.type;
- if (HAVE_TRIGGER_TYPES.indexOf(type) !== -1 && !this.pickerVisible) {
- this.pickerVisible = true;
- }
- this.$emit('focus', this);
- },
- hidePicker: function hidePicker() {
- if (this.picker) {
- this.picker.resetView && this.picker.resetView();
- this.pickerVisible = this.picker.visible = false;
- this.destroyPopper();
- }
- },
- showPicker: function showPicker() {
- var _this2 = this;
- if (this.$isServer) return;
- if (!this.picker) {
- this.mountPicker();
- }
- this.pickerVisible = this.picker.visible = true;
- this.updatePopper();
- this.picker.value = this.parsedValue;
- this.picker.resetView && this.picker.resetView();
- this.$nextTick(function () {
- _this2.picker.adjustSpinners && _this2.picker.adjustSpinners();
- });
- },
- mountPicker: function mountPicker() {
- var _this3 = this;
- this.picker = new external_vue_default.a(this.panel).$mount();
- this.picker.defaultValue = this.defaultValue;
- this.picker.defaultTime = this.defaultTime;
- this.picker.popperClass = this.popperClass;
- this.popperElm = this.picker.$el;
- this.picker.width = this.reference.getBoundingClientRect().width;
- this.picker.showTime = this.type === 'datetime' || this.type === 'datetimerange';
- this.picker.selectionMode = this.selectionMode;
- this.picker.unlinkPanels = this.unlinkPanels;
- this.picker.arrowControl = this.arrowControl || this.timeArrowControl || false;
- this.$watch('format', function (format) {
- _this3.picker.format = format;
- });
- var updateOptions = function updateOptions() {
- var options = _this3.pickerOptions;
- if (options && options.selectableRange) {
- var ranges = options.selectableRange;
- var parser = TYPE_VALUE_RESOLVER_MAP.datetimerange.parser;
- var format = DEFAULT_FORMATS.timerange;
- ranges = Array.isArray(ranges) ? ranges : [ranges];
- _this3.picker.selectableRange = ranges.map(function (range) {
- return parser(range, format, _this3.rangeSeparator);
- });
- }
- for (var option in options) {
- if (options.hasOwnProperty(option) &&
- // 忽略 time-picker 的该配置项
- option !== 'selectableRange') {
- _this3.picker[option] = options[option];
- }
- }
- // main format must prevail over undocumented pickerOptions.format
- if (_this3.format) {
- _this3.picker.format = _this3.format;
- }
- };
- updateOptions();
- this.unwatchPickerOptions = this.$watch('pickerOptions', function () {
- return updateOptions();
- }, { deep: true });
- this.$el.appendChild(this.picker.$el);
- this.picker.resetView && this.picker.resetView();
- this.picker.$on('dodestroy', this.doDestroy);
- this.picker.$on('pick', function () {
- var date = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
- var visible = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- _this3.userInput = null;
- _this3.pickerVisible = _this3.picker.visible = visible;
- _this3.emitInput(date);
- _this3.picker.resetView && _this3.picker.resetView();
- });
- this.picker.$on('select-range', function (start, end, pos) {
- if (_this3.refInput.length === 0) return;
- if (!pos || pos === 'min') {
- _this3.refInput[0].setSelectionRange(start, end);
- _this3.refInput[0].focus();
- } else if (pos === 'max') {
- _this3.refInput[1].setSelectionRange(start, end);
- _this3.refInput[1].focus();
- }
- });
- },
- unmountPicker: function unmountPicker() {
- if (this.picker) {
- this.picker.$destroy();
- this.picker.$off();
- if (typeof this.unwatchPickerOptions === 'function') {
- this.unwatchPickerOptions();
- }
- this.picker.$el.parentNode.removeChild(this.picker.$el);
- }
- },
- emitChange: function emitChange(val) {
- // determine user real change only
- if (!valueEquals(val, this.valueOnOpen)) {
- this.$emit('change', val);
- this.valueOnOpen = val;
- if (this.validateEvent) {
- this.dispatch('ElFormItem', 'el.form.change', val);
- }
- }
- },
- emitInput: function emitInput(val) {
- var formatted = this.formatToValue(val);
- if (!valueEquals(this.value, formatted)) {
- this.$emit('input', formatted);
- }
- },
- isValidValue: function isValidValue(value) {
- if (!this.picker) {
- this.mountPicker();
- }
- if (this.picker.isValidValue) {
- return value && this.picker.isValidValue(value);
- } else {
- return true;
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/picker.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_pickervue_type_script_lang_js_ = (pickervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/picker.vue
- /* normalize component */
- var picker_component = normalizeComponent(
- src_pickervue_type_script_lang_js_,
- pickervue_type_template_id_79ae069f_render,
- pickervue_type_template_id_79ae069f_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var picker_api; }
- picker_component.options.__file = "packages/date-picker/src/picker.vue"
- /* harmony default export */ var picker = (picker_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/date.vue?vue&type=template&id=2440d4ea&
- var datevue_type_template_id_2440d4ea_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: { "after-enter": _vm.handleEnter, "after-leave": _vm.handleLeave }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-picker-panel el-date-picker el-popper",
- class: [
- {
- "has-sidebar": _vm.$slots.sidebar || _vm.shortcuts,
- "has-time": _vm.showTime
- },
- _vm.popperClass
- ]
- },
- [
- _c(
- "div",
- { staticClass: "el-picker-panel__body-wrapper" },
- [
- _vm._t("sidebar"),
- _vm.shortcuts
- ? _c(
- "div",
- { staticClass: "el-picker-panel__sidebar" },
- _vm._l(_vm.shortcuts, function(shortcut, key) {
- return _c(
- "button",
- {
- key: key,
- staticClass: "el-picker-panel__shortcut",
- attrs: { type: "button" },
- on: {
- click: function($event) {
- _vm.handleShortcutClick(shortcut)
- }
- }
- },
- [_vm._v(_vm._s(shortcut.text))]
- )
- }),
- 0
- )
- : _vm._e(),
- _c("div", { staticClass: "el-picker-panel__body" }, [
- _vm.showTime
- ? _c("div", { staticClass: "el-date-picker__time-header" }, [
- _c(
- "span",
- { staticClass: "el-date-picker__editor-wrap" },
- [
- _c("el-input", {
- attrs: {
- placeholder: _vm.t("el.datepicker.selectDate"),
- value: _vm.visibleDate,
- size: "small"
- },
- on: {
- input: function(val) {
- return (_vm.userInputDate = val)
- },
- change: _vm.handleVisibleDateChange
- }
- })
- ],
- 1
- ),
- _c(
- "span",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleTimePickClose,
- expression: "handleTimePickClose"
- }
- ],
- staticClass: "el-date-picker__editor-wrap"
- },
- [
- _c("el-input", {
- ref: "input",
- attrs: {
- placeholder: _vm.t("el.datepicker.selectTime"),
- value: _vm.visibleTime,
- size: "small"
- },
- on: {
- focus: function($event) {
- _vm.timePickerVisible = true
- },
- input: function(val) {
- return (_vm.userInputTime = val)
- },
- change: _vm.handleVisibleTimeChange
- }
- }),
- _c("time-picker", {
- ref: "timepicker",
- attrs: {
- "time-arrow-control": _vm.arrowControl,
- visible: _vm.timePickerVisible
- },
- on: {
- pick: _vm.handleTimePick,
- mounted: _vm.proxyTimePickerDataProperties
- }
- })
- ],
- 1
- )
- ])
- : _vm._e(),
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView !== "time",
- expression: "currentView !== 'time'"
- }
- ],
- staticClass: "el-date-picker__header",
- class: {
- "el-date-picker__header--bordered":
- _vm.currentView === "year" ||
- _vm.currentView === "month"
- }
- },
- [
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-date-picker__prev-btn el-icon-d-arrow-left",
- attrs: {
- type: "button",
- "aria-label": _vm.t("el.datepicker.prevYear")
- },
- on: { click: _vm.prevYear }
- }),
- _c("button", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView === "date",
- expression: "currentView === 'date'"
- }
- ],
- staticClass:
- "el-picker-panel__icon-btn el-date-picker__prev-btn el-icon-arrow-left",
- attrs: {
- type: "button",
- "aria-label": _vm.t("el.datepicker.prevMonth")
- },
- on: { click: _vm.prevMonth }
- }),
- _c(
- "span",
- {
- staticClass: "el-date-picker__header-label",
- attrs: { role: "button" },
- on: { click: _vm.showYearPicker }
- },
- [_vm._v(_vm._s(_vm.yearLabel))]
- ),
- _c(
- "span",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView === "date",
- expression: "currentView === 'date'"
- }
- ],
- staticClass: "el-date-picker__header-label",
- class: { active: _vm.currentView === "month" },
- attrs: { role: "button" },
- on: { click: _vm.showMonthPicker }
- },
- [
- _vm._v(
- _vm._s(_vm.t("el.datepicker.month" + (_vm.month + 1)))
- )
- ]
- ),
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-date-picker__next-btn el-icon-d-arrow-right",
- attrs: {
- type: "button",
- "aria-label": _vm.t("el.datepicker.nextYear")
- },
- on: { click: _vm.nextYear }
- }),
- _c("button", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView === "date",
- expression: "currentView === 'date'"
- }
- ],
- staticClass:
- "el-picker-panel__icon-btn el-date-picker__next-btn el-icon-arrow-right",
- attrs: {
- type: "button",
- "aria-label": _vm.t("el.datepicker.nextMonth")
- },
- on: { click: _vm.nextMonth }
- })
- ]
- ),
- _c(
- "div",
- { staticClass: "el-picker-panel__content" },
- [
- _c("date-table", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView === "date",
- expression: "currentView === 'date'"
- }
- ],
- attrs: {
- "selection-mode": _vm.selectionMode,
- "first-day-of-week": _vm.firstDayOfWeek,
- value: _vm.value,
- "default-value": _vm.defaultValue
- ? new Date(_vm.defaultValue)
- : null,
- date: _vm.date,
- "disabled-date": _vm.disabledDate
- },
- on: { pick: _vm.handleDatePick }
- }),
- _c("year-table", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView === "year",
- expression: "currentView === 'year'"
- }
- ],
- attrs: {
- value: _vm.value,
- "default-value": _vm.defaultValue
- ? new Date(_vm.defaultValue)
- : null,
- date: _vm.date,
- "disabled-date": _vm.disabledDate
- },
- on: { pick: _vm.handleYearPick }
- }),
- _c("month-table", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.currentView === "month",
- expression: "currentView === 'month'"
- }
- ],
- attrs: {
- value: _vm.value,
- "default-value": _vm.defaultValue
- ? new Date(_vm.defaultValue)
- : null,
- date: _vm.date,
- "disabled-date": _vm.disabledDate
- },
- on: { pick: _vm.handleMonthPick }
- })
- ],
- 1
- )
- ])
- ],
- 2
- ),
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.footerVisible && _vm.currentView === "date",
- expression: "footerVisible && currentView === 'date'"
- }
- ],
- staticClass: "el-picker-panel__footer"
- },
- [
- _c(
- "el-button",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.selectionMode !== "dates",
- expression: "selectionMode !== 'dates'"
- }
- ],
- staticClass: "el-picker-panel__link-btn",
- attrs: { size: "mini", type: "text" },
- on: { click: _vm.changeToNow }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.now")) +
- "\n "
- )
- ]
- ),
- _c(
- "el-button",
- {
- staticClass: "el-picker-panel__link-btn",
- attrs: { plain: "", size: "mini" },
- on: { click: _vm.confirm }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.confirm")) +
- "\n "
- )
- ]
- )
- ],
- 1
- )
- ]
- )
- ]
- )
- }
- var datevue_type_template_id_2440d4ea_staticRenderFns = []
- datevue_type_template_id_2440d4ea_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/date.vue?vue&type=template&id=2440d4ea&
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/time.vue?vue&type=template&id=3d939089&
- var timevue_type_template_id_3d939089_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: {
- "after-leave": function($event) {
- _vm.$emit("dodestroy")
- }
- }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-time-panel el-popper",
- class: _vm.popperClass
- },
- [
- _c(
- "div",
- {
- staticClass: "el-time-panel__content",
- class: { "has-seconds": _vm.showSeconds }
- },
- [
- _c("time-spinner", {
- ref: "spinner",
- attrs: {
- "arrow-control": _vm.useArrow,
- "show-seconds": _vm.showSeconds,
- "am-pm-mode": _vm.amPmMode,
- date: _vm.date
- },
- on: {
- change: _vm.handleChange,
- "select-range": _vm.setSelectionRange
- }
- })
- ],
- 1
- ),
- _c("div", { staticClass: "el-time-panel__footer" }, [
- _c(
- "button",
- {
- staticClass: "el-time-panel__btn cancel",
- attrs: { type: "button" },
- on: { click: _vm.handleCancel }
- },
- [_vm._v(_vm._s(_vm.t("el.datepicker.cancel")))]
- ),
- _c(
- "button",
- {
- staticClass: "el-time-panel__btn",
- class: { confirm: !_vm.disabled },
- attrs: { type: "button" },
- on: {
- click: function($event) {
- _vm.handleConfirm()
- }
- }
- },
- [_vm._v(_vm._s(_vm.t("el.datepicker.confirm")))]
- )
- ])
- ]
- )
- ]
- )
- }
- var timevue_type_template_id_3d939089_staticRenderFns = []
- timevue_type_template_id_3d939089_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time.vue?vue&type=template&id=3d939089&
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/time-spinner.vue?vue&type=template&id=1facadeb&
- var time_spinnervue_type_template_id_1facadeb_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-time-spinner",
- class: { "has-seconds": _vm.showSeconds }
- },
- [
- !_vm.arrowControl
- ? [
- _c(
- "el-scrollbar",
- {
- ref: "hours",
- staticClass: "el-time-spinner__wrapper",
- attrs: {
- "wrap-style": "max-height: inherit;",
- "view-class": "el-time-spinner__list",
- noresize: "",
- tag: "ul"
- },
- nativeOn: {
- mouseenter: function($event) {
- _vm.emitSelectRange("hours")
- },
- mousemove: function($event) {
- _vm.adjustCurrentSpinner("hours")
- }
- }
- },
- _vm._l(_vm.hoursList, function(disabled, hour) {
- return _c(
- "li",
- {
- key: hour,
- staticClass: "el-time-spinner__item",
- class: { active: hour === _vm.hours, disabled: disabled },
- on: {
- click: function($event) {
- _vm.handleClick("hours", {
- value: hour,
- disabled: disabled
- })
- }
- }
- },
- [
- _vm._v(
- _vm._s(
- ("0" + (_vm.amPmMode ? hour % 12 || 12 : hour)).slice(
- -2
- )
- ) + _vm._s(_vm.amPm(hour))
- )
- ]
- )
- }),
- 0
- ),
- _c(
- "el-scrollbar",
- {
- ref: "minutes",
- staticClass: "el-time-spinner__wrapper",
- attrs: {
- "wrap-style": "max-height: inherit;",
- "view-class": "el-time-spinner__list",
- noresize: "",
- tag: "ul"
- },
- nativeOn: {
- mouseenter: function($event) {
- _vm.emitSelectRange("minutes")
- },
- mousemove: function($event) {
- _vm.adjustCurrentSpinner("minutes")
- }
- }
- },
- _vm._l(_vm.minutesList, function(enabled, key) {
- return _c(
- "li",
- {
- key: key,
- staticClass: "el-time-spinner__item",
- class: { active: key === _vm.minutes, disabled: !enabled },
- on: {
- click: function($event) {
- _vm.handleClick("minutes", {
- value: key,
- disabled: false
- })
- }
- }
- },
- [_vm._v(_vm._s(("0" + key).slice(-2)))]
- )
- }),
- 0
- ),
- _c(
- "el-scrollbar",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showSeconds,
- expression: "showSeconds"
- }
- ],
- ref: "seconds",
- staticClass: "el-time-spinner__wrapper",
- attrs: {
- "wrap-style": "max-height: inherit;",
- "view-class": "el-time-spinner__list",
- noresize: "",
- tag: "ul"
- },
- nativeOn: {
- mouseenter: function($event) {
- _vm.emitSelectRange("seconds")
- },
- mousemove: function($event) {
- _vm.adjustCurrentSpinner("seconds")
- }
- }
- },
- _vm._l(60, function(second, key) {
- return _c(
- "li",
- {
- key: key,
- staticClass: "el-time-spinner__item",
- class: { active: key === _vm.seconds },
- on: {
- click: function($event) {
- _vm.handleClick("seconds", {
- value: key,
- disabled: false
- })
- }
- }
- },
- [_vm._v(_vm._s(("0" + key).slice(-2)))]
- )
- }),
- 0
- )
- ]
- : _vm._e(),
- _vm.arrowControl
- ? [
- _c(
- "div",
- {
- staticClass: "el-time-spinner__wrapper is-arrow",
- on: {
- mouseenter: function($event) {
- _vm.emitSelectRange("hours")
- }
- }
- },
- [
- _c("i", {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.decrease,
- expression: "decrease"
- }
- ],
- staticClass: "el-time-spinner__arrow el-icon-arrow-up"
- }),
- _c("i", {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.increase,
- expression: "increase"
- }
- ],
- staticClass: "el-time-spinner__arrow el-icon-arrow-down"
- }),
- _c(
- "ul",
- { ref: "hours", staticClass: "el-time-spinner__list" },
- _vm._l(_vm.arrowHourList, function(hour, key) {
- return _c(
- "li",
- {
- key: key,
- staticClass: "el-time-spinner__item",
- class: {
- active: hour === _vm.hours,
- disabled: _vm.hoursList[hour]
- }
- },
- [
- _vm._v(
- _vm._s(
- hour === undefined
- ? ""
- : (
- "0" + (_vm.amPmMode ? hour % 12 || 12 : hour)
- ).slice(-2) + _vm.amPm(hour)
- )
- )
- ]
- )
- }),
- 0
- )
- ]
- ),
- _c(
- "div",
- {
- staticClass: "el-time-spinner__wrapper is-arrow",
- on: {
- mouseenter: function($event) {
- _vm.emitSelectRange("minutes")
- }
- }
- },
- [
- _c("i", {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.decrease,
- expression: "decrease"
- }
- ],
- staticClass: "el-time-spinner__arrow el-icon-arrow-up"
- }),
- _c("i", {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.increase,
- expression: "increase"
- }
- ],
- staticClass: "el-time-spinner__arrow el-icon-arrow-down"
- }),
- _c(
- "ul",
- { ref: "minutes", staticClass: "el-time-spinner__list" },
- _vm._l(_vm.arrowMinuteList, function(minute, key) {
- return _c(
- "li",
- {
- key: key,
- staticClass: "el-time-spinner__item",
- class: { active: minute === _vm.minutes }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(
- minute === undefined
- ? ""
- : ("0" + minute).slice(-2)
- ) +
- "\n "
- )
- ]
- )
- }),
- 0
- )
- ]
- ),
- _vm.showSeconds
- ? _c(
- "div",
- {
- staticClass: "el-time-spinner__wrapper is-arrow",
- on: {
- mouseenter: function($event) {
- _vm.emitSelectRange("seconds")
- }
- }
- },
- [
- _c("i", {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.decrease,
- expression: "decrease"
- }
- ],
- staticClass: "el-time-spinner__arrow el-icon-arrow-up"
- }),
- _c("i", {
- directives: [
- {
- name: "repeat-click",
- rawName: "v-repeat-click",
- value: _vm.increase,
- expression: "increase"
- }
- ],
- staticClass: "el-time-spinner__arrow el-icon-arrow-down"
- }),
- _c(
- "ul",
- { ref: "seconds", staticClass: "el-time-spinner__list" },
- _vm._l(_vm.arrowSecondList, function(second, key) {
- return _c(
- "li",
- {
- key: key,
- staticClass: "el-time-spinner__item",
- class: { active: second === _vm.seconds }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(
- second === undefined
- ? ""
- : ("0" + second).slice(-2)
- ) +
- "\n "
- )
- ]
- )
- }),
- 0
- )
- ]
- )
- : _vm._e()
- ]
- : _vm._e()
- ],
- 2
- )
- }
- var time_spinnervue_type_template_id_1facadeb_staticRenderFns = []
- time_spinnervue_type_template_id_1facadeb_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/time-spinner.vue?vue&type=template&id=1facadeb&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/time-spinner.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var time_spinnervue_type_script_lang_js_ = ({
- components: { ElScrollbar: scrollbar_default.a },
- directives: {
- repeatClick: repeat_click
- },
- props: {
- date: {},
- defaultValue: {}, // reserved for future use
- showSeconds: {
- type: Boolean,
- default: true
- },
- arrowControl: Boolean,
- amPmMode: {
- type: String,
- default: '' // 'a': am/pm; 'A': AM/PM
- }
- },
- computed: {
- hours: function hours() {
- return this.date.getHours();
- },
- minutes: function minutes() {
- return this.date.getMinutes();
- },
- seconds: function seconds() {
- return this.date.getSeconds();
- },
- hoursList: function hoursList() {
- return Object(date_util_["getRangeHours"])(this.selectableRange);
- },
- minutesList: function minutesList() {
- return Object(date_util_["getRangeMinutes"])(this.selectableRange, this.hours);
- },
- arrowHourList: function arrowHourList() {
- var hours = this.hours;
- return [hours > 0 ? hours - 1 : undefined, hours, hours < 23 ? hours + 1 : undefined];
- },
- arrowMinuteList: function arrowMinuteList() {
- var minutes = this.minutes;
- return [minutes > 0 ? minutes - 1 : undefined, minutes, minutes < 59 ? minutes + 1 : undefined];
- },
- arrowSecondList: function arrowSecondList() {
- var seconds = this.seconds;
- return [seconds > 0 ? seconds - 1 : undefined, seconds, seconds < 59 ? seconds + 1 : undefined];
- }
- },
- data: function data() {
- return {
- selectableRange: [],
- currentScrollbar: null
- };
- },
- mounted: function mounted() {
- var _this = this;
- this.$nextTick(function () {
- !_this.arrowControl && _this.bindScrollEvent();
- });
- },
- methods: {
- increase: function increase() {
- this.scrollDown(1);
- },
- decrease: function decrease() {
- this.scrollDown(-1);
- },
- modifyDateField: function modifyDateField(type, value) {
- switch (type) {
- case 'hours':
- this.$emit('change', Object(date_util_["modifyTime"])(this.date, value, this.minutes, this.seconds));break;
- case 'minutes':
- this.$emit('change', Object(date_util_["modifyTime"])(this.date, this.hours, value, this.seconds));break;
- case 'seconds':
- this.$emit('change', Object(date_util_["modifyTime"])(this.date, this.hours, this.minutes, value));break;
- }
- },
- handleClick: function handleClick(type, _ref) {
- var value = _ref.value,
- disabled = _ref.disabled;
- if (!disabled) {
- this.modifyDateField(type, value);
- this.emitSelectRange(type);
- this.adjustSpinner(type, value);
- }
- },
- emitSelectRange: function emitSelectRange(type) {
- if (type === 'hours') {
- this.$emit('select-range', 0, 2);
- } else if (type === 'minutes') {
- this.$emit('select-range', 3, 5);
- } else if (type === 'seconds') {
- this.$emit('select-range', 6, 8);
- }
- this.currentScrollbar = type;
- },
- bindScrollEvent: function bindScrollEvent() {
- var _this2 = this;
- var bindFuntion = function bindFuntion(type) {
- _this2.$refs[type].wrap.onscroll = function (e) {
- // TODO: scroll is emitted when set scrollTop programatically
- // should find better solutions in the future!
- _this2.handleScroll(type, e);
- };
- };
- bindFuntion('hours');
- bindFuntion('minutes');
- bindFuntion('seconds');
- },
- handleScroll: function handleScroll(type) {
- var value = Math.min(Math.floor((this.$refs[type].wrap.scrollTop - (this.scrollBarHeight(type) * 0.5 - 10) / this.typeItemHeight(type) + 3) / this.typeItemHeight(type)), type === 'hours' ? 23 : 59);
- this.modifyDateField(type, value);
- },
- // NOTE: used by datetime / date-range panel
- // renamed from adjustScrollTop
- // should try to refactory it
- adjustSpinners: function adjustSpinners() {
- this.adjustSpinner('hours', this.hours);
- this.adjustSpinner('minutes', this.minutes);
- this.adjustSpinner('seconds', this.seconds);
- },
- adjustCurrentSpinner: function adjustCurrentSpinner(type) {
- this.adjustSpinner(type, this[type]);
- },
- adjustSpinner: function adjustSpinner(type, value) {
- if (this.arrowControl) return;
- var el = this.$refs[type].wrap;
- if (el) {
- el.scrollTop = Math.max(0, value * this.typeItemHeight(type));
- }
- },
- scrollDown: function scrollDown(step) {
- if (!this.currentScrollbar) {
- this.emitSelectRange('hours');
- }
- var label = this.currentScrollbar;
- var hoursList = this.hoursList;
- var now = this[label];
- if (this.currentScrollbar === 'hours') {
- var total = Math.abs(step);
- step = step > 0 ? 1 : -1;
- var length = hoursList.length;
- while (length-- && total) {
- now = (now + step + hoursList.length) % hoursList.length;
- if (hoursList[now]) {
- continue;
- }
- total--;
- }
- if (hoursList[now]) return;
- } else {
- now = (now + step + 60) % 60;
- }
- this.modifyDateField(label, now);
- this.adjustSpinner(label, now);
- },
- amPm: function amPm(hour) {
- var shouldShowAmPm = this.amPmMode.toLowerCase() === 'a';
- if (!shouldShowAmPm) return '';
- var isCapital = this.amPmMode === 'A';
- var content = hour < 12 ? ' am' : ' pm';
- if (isCapital) content = content.toUpperCase();
- return content;
- },
- typeItemHeight: function typeItemHeight(type) {
- return this.$refs[type].$el.querySelector('li').offsetHeight;
- },
- scrollBarHeight: function scrollBarHeight(type) {
- return this.$refs[type].$el.offsetHeight;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/time-spinner.vue?vue&type=script&lang=js&
- /* harmony default export */ var basic_time_spinnervue_type_script_lang_js_ = (time_spinnervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/time-spinner.vue
- /* normalize component */
- var time_spinner_component = normalizeComponent(
- basic_time_spinnervue_type_script_lang_js_,
- time_spinnervue_type_template_id_1facadeb_render,
- time_spinnervue_type_template_id_1facadeb_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var time_spinner_api; }
- time_spinner_component.options.__file = "packages/date-picker/src/basic/time-spinner.vue"
- /* harmony default export */ var time_spinner = (time_spinner_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/time.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var timevue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- components: {
- TimeSpinner: time_spinner
- },
- props: {
- visible: Boolean,
- timeArrowControl: Boolean
- },
- watch: {
- visible: function visible(val) {
- var _this = this;
- if (val) {
- this.oldValue = this.value;
- this.$nextTick(function () {
- return _this.$refs.spinner.emitSelectRange('hours');
- });
- } else {
- this.needInitAdjust = true;
- }
- },
- value: function value(newVal) {
- var _this2 = this;
- var date = void 0;
- if (newVal instanceof Date) {
- date = Object(date_util_["limitTimeRange"])(newVal, this.selectableRange, this.format);
- } else if (!newVal) {
- date = this.defaultValue ? new Date(this.defaultValue) : new Date();
- }
- this.date = date;
- if (this.visible && this.needInitAdjust) {
- this.$nextTick(function (_) {
- return _this2.adjustSpinners();
- });
- this.needInitAdjust = false;
- }
- },
- selectableRange: function selectableRange(val) {
- this.$refs.spinner.selectableRange = val;
- },
- defaultValue: function defaultValue(val) {
- if (!Object(date_util_["isDate"])(this.value)) {
- this.date = val ? new Date(val) : new Date();
- }
- }
- },
- data: function data() {
- return {
- popperClass: '',
- format: 'HH:mm:ss',
- value: '',
- defaultValue: null,
- date: new Date(),
- oldValue: new Date(),
- selectableRange: [],
- selectionRange: [0, 2],
- disabled: false,
- arrowControl: false,
- needInitAdjust: true
- };
- },
- computed: {
- showSeconds: function showSeconds() {
- return (this.format || '').indexOf('ss') !== -1;
- },
- useArrow: function useArrow() {
- return this.arrowControl || this.timeArrowControl || false;
- },
- amPmMode: function amPmMode() {
- if ((this.format || '').indexOf('A') !== -1) return 'A';
- if ((this.format || '').indexOf('a') !== -1) return 'a';
- return '';
- }
- },
- methods: {
- handleCancel: function handleCancel() {
- this.$emit('pick', this.oldValue, false);
- },
- handleChange: function handleChange(date) {
- // this.visible avoids edge cases, when use scrolls during panel closing animation
- if (this.visible) {
- this.date = Object(date_util_["clearMilliseconds"])(date);
- // if date is out of range, do not emit
- if (this.isValidValue(this.date)) {
- this.$emit('pick', this.date, true);
- }
- }
- },
- setSelectionRange: function setSelectionRange(start, end) {
- this.$emit('select-range', start, end);
- this.selectionRange = [start, end];
- },
- handleConfirm: function handleConfirm() {
- var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- var first = arguments[1];
- if (first) return;
- var date = Object(date_util_["clearMilliseconds"])(Object(date_util_["limitTimeRange"])(this.date, this.selectableRange, this.format));
- this.$emit('pick', date, visible, first);
- },
- handleKeydown: function handleKeydown(event) {
- var keyCode = event.keyCode;
- var mapping = { 38: -1, 40: 1, 37: -1, 39: 1 };
- // Left or Right
- if (keyCode === 37 || keyCode === 39) {
- var step = mapping[keyCode];
- this.changeSelectionRange(step);
- event.preventDefault();
- return;
- }
- // Up or Down
- if (keyCode === 38 || keyCode === 40) {
- var _step = mapping[keyCode];
- this.$refs.spinner.scrollDown(_step);
- event.preventDefault();
- return;
- }
- },
- isValidValue: function isValidValue(date) {
- return Object(date_util_["timeWithinRange"])(date, this.selectableRange, this.format);
- },
- adjustSpinners: function adjustSpinners() {
- return this.$refs.spinner.adjustSpinners();
- },
- changeSelectionRange: function changeSelectionRange(step) {
- var list = [0, 3].concat(this.showSeconds ? [6] : []);
- var mapping = ['hours', 'minutes'].concat(this.showSeconds ? ['seconds'] : []);
- var index = list.indexOf(this.selectionRange[0]);
- var next = (index + step + list.length) % list.length;
- this.$refs.spinner.emitSelectRange(mapping[next]);
- }
- },
- mounted: function mounted() {
- var _this3 = this;
- this.$nextTick(function () {
- return _this3.handleConfirm(true, true);
- });
- this.$emit('mounted');
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time.vue?vue&type=script&lang=js&
- /* harmony default export */ var panel_timevue_type_script_lang_js_ = (timevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time.vue
- /* normalize component */
- var time_component = normalizeComponent(
- panel_timevue_type_script_lang_js_,
- timevue_type_template_id_3d939089_render,
- timevue_type_template_id_3d939089_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var time_api; }
- time_component.options.__file = "packages/date-picker/src/panel/time.vue"
- /* harmony default export */ var panel_time = (time_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/year-table.vue?vue&type=template&id=c86ab5e0&
- var year_tablevue_type_template_id_c86ab5e0_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "table",
- { staticClass: "el-year-table", on: { click: _vm.handleYearTableClick } },
- [
- _c("tbody", [
- _c("tr", [
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 0)
- },
- [_c("a", { staticClass: "cell" }, [_vm._v(_vm._s(_vm.startYear))])]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 1)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 1))
- ])
- ]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 2)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 2))
- ])
- ]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 3)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 3))
- ])
- ]
- )
- ]),
- _c("tr", [
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 4)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 4))
- ])
- ]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 5)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 5))
- ])
- ]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 6)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 6))
- ])
- ]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 7)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 7))
- ])
- ]
- )
- ]),
- _c("tr", [
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 8)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 8))
- ])
- ]
- ),
- _c(
- "td",
- {
- staticClass: "available",
- class: _vm.getCellStyle(_vm.startYear + 9)
- },
- [
- _c("a", { staticClass: "cell" }, [
- _vm._v(_vm._s(_vm.startYear + 9))
- ])
- ]
- ),
- _c("td"),
- _c("td")
- ])
- ])
- ]
- )
- }
- var year_tablevue_type_template_id_c86ab5e0_staticRenderFns = []
- year_tablevue_type_template_id_c86ab5e0_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/year-table.vue?vue&type=template&id=c86ab5e0&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/year-table.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var year_tablevue_type_script_lang_js_datesInYear = function datesInYear(year) {
- var numOfDays = Object(date_util_["getDayCountOfYear"])(year);
- var firstDay = new Date(year, 0, 1);
- return Object(date_util_["range"])(numOfDays).map(function (n) {
- return Object(date_util_["nextDate"])(firstDay, n);
- });
- };
- /* harmony default export */ var year_tablevue_type_script_lang_js_ = ({
- props: {
- disabledDate: {},
- value: {},
- defaultValue: {
- validator: function validator(val) {
- // null or valid Date Object
- return val === null || val instanceof Date && Object(date_util_["isDate"])(val);
- }
- },
- date: {}
- },
- computed: {
- startYear: function startYear() {
- return Math.floor(this.date.getFullYear() / 10) * 10;
- }
- },
- methods: {
- getCellStyle: function getCellStyle(year) {
- var style = {};
- var today = new Date();
- style.disabled = typeof this.disabledDate === 'function' ? year_tablevue_type_script_lang_js_datesInYear(year).every(this.disabledDate) : false;
- style.current = Object(util_["arrayFindIndex"])(Object(util_["coerceTruthyValueToArray"])(this.value), function (date) {
- return date.getFullYear() === year;
- }) >= 0;
- style.today = today.getFullYear() === year;
- style.default = this.defaultValue && this.defaultValue.getFullYear() === year;
- return style;
- },
- handleYearTableClick: function handleYearTableClick(event) {
- var target = event.target;
- if (target.tagName === 'A') {
- if (Object(dom_["hasClass"])(target.parentNode, 'disabled')) return;
- var year = target.textContent || target.innerText;
- this.$emit('pick', Number(year));
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/year-table.vue?vue&type=script&lang=js&
- /* harmony default export */ var basic_year_tablevue_type_script_lang_js_ = (year_tablevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/year-table.vue
- /* normalize component */
- var year_table_component = normalizeComponent(
- basic_year_tablevue_type_script_lang_js_,
- year_tablevue_type_template_id_c86ab5e0_render,
- year_tablevue_type_template_id_c86ab5e0_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var year_table_api; }
- year_table_component.options.__file = "packages/date-picker/src/basic/year-table.vue"
- /* harmony default export */ var year_table = (year_table_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/month-table.vue?vue&type=template&id=654d4f42&
- var month_tablevue_type_template_id_654d4f42_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "table",
- {
- staticClass: "el-month-table",
- on: { click: _vm.handleMonthTableClick, mousemove: _vm.handleMouseMove }
- },
- [
- _c(
- "tbody",
- _vm._l(_vm.rows, function(row, key) {
- return _c(
- "tr",
- { key: key },
- _vm._l(row, function(cell, key) {
- return _c("td", { key: key, class: _vm.getCellStyle(cell) }, [
- _c("div", [
- _c("a", { staticClass: "cell" }, [
- _vm._v(
- _vm._s(
- _vm.t("el.datepicker.months." + _vm.months[cell.text])
- )
- )
- ])
- ])
- ])
- }),
- 0
- )
- }),
- 0
- )
- ]
- )
- }
- var month_tablevue_type_template_id_654d4f42_staticRenderFns = []
- month_tablevue_type_template_id_654d4f42_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/month-table.vue?vue&type=template&id=654d4f42&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/month-table.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var month_tablevue_type_script_lang_js_datesInMonth = function datesInMonth(year, month) {
- var numOfDays = Object(date_util_["getDayCountOfMonth"])(year, month);
- var firstDay = new Date(year, month, 1);
- return Object(date_util_["range"])(numOfDays).map(function (n) {
- return Object(date_util_["nextDate"])(firstDay, n);
- });
- };
- var clearDate = function clearDate(date) {
- return new Date(date.getFullYear(), date.getMonth());
- };
- var getMonthTimestamp = function getMonthTimestamp(time) {
- if (typeof time === 'number' || typeof time === 'string') {
- return clearDate(new Date(time)).getTime();
- } else if (time instanceof Date) {
- return clearDate(time).getTime();
- } else {
- return NaN;
- }
- };
- /* harmony default export */ var month_tablevue_type_script_lang_js_ = ({
- props: {
- disabledDate: {},
- value: {},
- selectionMode: {
- default: 'month'
- },
- minDate: {},
- maxDate: {},
- defaultValue: {
- validator: function validator(val) {
- // null or valid Date Object
- return val === null || Object(date_util_["isDate"])(val) || Array.isArray(val) && val.every(date_util_["isDate"]);
- }
- },
- date: {},
- rangeState: {
- default: function _default() {
- return {
- endDate: null,
- selecting: false
- };
- }
- }
- },
- mixins: [locale_default.a],
- watch: {
- 'rangeState.endDate': function rangeStateEndDate(newVal) {
- this.markRange(this.minDate, newVal);
- },
- minDate: function minDate(newVal, oldVal) {
- if (getMonthTimestamp(newVal) !== getMonthTimestamp(oldVal)) {
- this.markRange(this.minDate, this.maxDate);
- }
- },
- maxDate: function maxDate(newVal, oldVal) {
- if (getMonthTimestamp(newVal) !== getMonthTimestamp(oldVal)) {
- this.markRange(this.minDate, this.maxDate);
- }
- }
- },
- data: function data() {
- return {
- months: ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'],
- tableRows: [[], [], []],
- lastRow: null,
- lastColumn: null
- };
- },
- methods: {
- cellMatchesDate: function cellMatchesDate(cell, date) {
- var value = new Date(date);
- return this.date.getFullYear() === value.getFullYear() && Number(cell.text) === value.getMonth();
- },
- getCellStyle: function getCellStyle(cell) {
- var _this = this;
- var style = {};
- var year = this.date.getFullYear();
- var today = new Date();
- var month = cell.text;
- var defaultValue = this.defaultValue ? Array.isArray(this.defaultValue) ? this.defaultValue : [this.defaultValue] : [];
- style.disabled = typeof this.disabledDate === 'function' ? month_tablevue_type_script_lang_js_datesInMonth(year, month).every(this.disabledDate) : false;
- style.current = Object(util_["arrayFindIndex"])(Object(util_["coerceTruthyValueToArray"])(this.value), function (date) {
- return date.getFullYear() === year && date.getMonth() === month;
- }) >= 0;
- style.today = today.getFullYear() === year && today.getMonth() === month;
- style.default = defaultValue.some(function (date) {
- return _this.cellMatchesDate(cell, date);
- });
- if (cell.inRange) {
- style['in-range'] = true;
- if (cell.start) {
- style['start-date'] = true;
- }
- if (cell.end) {
- style['end-date'] = true;
- }
- }
- return style;
- },
- getMonthOfCell: function getMonthOfCell(month) {
- var year = this.date.getFullYear();
- return new Date(year, month, 1);
- },
- markRange: function markRange(minDate, maxDate) {
- minDate = getMonthTimestamp(minDate);
- maxDate = getMonthTimestamp(maxDate) || minDate;
- var _ref = [Math.min(minDate, maxDate), Math.max(minDate, maxDate)];
- minDate = _ref[0];
- maxDate = _ref[1];
- var rows = this.rows;
- for (var i = 0, k = rows.length; i < k; i++) {
- var row = rows[i];
- for (var j = 0, l = row.length; j < l; j++) {
- var cell = row[j];
- var index = i * 4 + j;
- var time = new Date(this.date.getFullYear(), index).getTime();
- cell.inRange = minDate && time >= minDate && time <= maxDate;
- cell.start = minDate && time === minDate;
- cell.end = maxDate && time === maxDate;
- }
- }
- },
- handleMouseMove: function handleMouseMove(event) {
- if (!this.rangeState.selecting) return;
- var target = event.target;
- if (target.tagName === 'A') {
- target = target.parentNode.parentNode;
- }
- if (target.tagName === 'DIV') {
- target = target.parentNode;
- }
- if (target.tagName !== 'TD') return;
- var row = target.parentNode.rowIndex;
- var column = target.cellIndex;
- // can not select disabled date
- if (this.rows[row][column].disabled) return;
- // only update rangeState when mouse moves to a new cell
- // this avoids frequent Date object creation and improves performance
- if (row !== this.lastRow || column !== this.lastColumn) {
- this.lastRow = row;
- this.lastColumn = column;
- this.$emit('changerange', {
- minDate: this.minDate,
- maxDate: this.maxDate,
- rangeState: {
- selecting: true,
- endDate: this.getMonthOfCell(row * 4 + column)
- }
- });
- }
- },
- handleMonthTableClick: function handleMonthTableClick(event) {
- var target = event.target;
- if (target.tagName === 'A') {
- target = target.parentNode.parentNode;
- }
- if (target.tagName === 'DIV') {
- target = target.parentNode;
- }
- if (target.tagName !== 'TD') return;
- if (Object(dom_["hasClass"])(target, 'disabled')) return;
- var column = target.cellIndex;
- var row = target.parentNode.rowIndex;
- var month = row * 4 + column;
- var newDate = this.getMonthOfCell(month);
- if (this.selectionMode === 'range') {
- if (!this.rangeState.selecting) {
- this.$emit('pick', { minDate: newDate, maxDate: null });
- this.rangeState.selecting = true;
- } else {
- if (newDate >= this.minDate) {
- this.$emit('pick', { minDate: this.minDate, maxDate: newDate });
- } else {
- this.$emit('pick', { minDate: newDate, maxDate: this.minDate });
- }
- this.rangeState.selecting = false;
- }
- } else {
- this.$emit('pick', month);
- }
- }
- },
- computed: {
- rows: function rows() {
- var _this2 = this;
- // TODO: refactory rows / getCellClasses
- var rows = this.tableRows;
- var disabledDate = this.disabledDate;
- var selectedDate = [];
- var now = getMonthTimestamp(new Date());
- for (var i = 0; i < 3; i++) {
- var row = rows[i];
- var _loop = function _loop(j) {
- var cell = row[j];
- if (!cell) {
- cell = { row: i, column: j, type: 'normal', inRange: false, start: false, end: false };
- }
- cell.type = 'normal';
- var index = i * 4 + j;
- var time = new Date(_this2.date.getFullYear(), index).getTime();
- cell.inRange = time >= getMonthTimestamp(_this2.minDate) && time <= getMonthTimestamp(_this2.maxDate);
- cell.start = _this2.minDate && time === getMonthTimestamp(_this2.minDate);
- cell.end = _this2.maxDate && time === getMonthTimestamp(_this2.maxDate);
- var isToday = time === now;
- if (isToday) {
- cell.type = 'today';
- }
- cell.text = index;
- var cellDate = new Date(time);
- cell.disabled = typeof disabledDate === 'function' && disabledDate(cellDate);
- cell.selected = Object(util_["arrayFind"])(selectedDate, function (date) {
- return date.getTime() === cellDate.getTime();
- });
- _this2.$set(row, j, cell);
- };
- for (var j = 0; j < 4; j++) {
- _loop(j);
- }
- }
- return rows;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/month-table.vue?vue&type=script&lang=js&
- /* harmony default export */ var basic_month_tablevue_type_script_lang_js_ = (month_tablevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/month-table.vue
- /* normalize component */
- var month_table_component = normalizeComponent(
- basic_month_tablevue_type_script_lang_js_,
- month_tablevue_type_template_id_654d4f42_render,
- month_tablevue_type_template_id_654d4f42_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var month_table_api; }
- month_table_component.options.__file = "packages/date-picker/src/basic/month-table.vue"
- /* harmony default export */ var month_table = (month_table_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/date-table.vue?vue&type=template&id=5d1f3341&
- var date_tablevue_type_template_id_5d1f3341_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "table",
- {
- staticClass: "el-date-table",
- class: { "is-week-mode": _vm.selectionMode === "week" },
- attrs: { cellspacing: "0", cellpadding: "0" },
- on: { click: _vm.handleClick, mousemove: _vm.handleMouseMove }
- },
- [
- _c(
- "tbody",
- [
- _c(
- "tr",
- [
- _vm.showWeekNumber
- ? _c("th", [_vm._v(_vm._s(_vm.t("el.datepicker.week")))])
- : _vm._e(),
- _vm._l(_vm.WEEKS, function(week, key) {
- return _c("th", { key: key }, [
- _vm._v(_vm._s(_vm.t("el.datepicker.weeks." + week)))
- ])
- })
- ],
- 2
- ),
- _vm._l(_vm.rows, function(row, key) {
- return _c(
- "tr",
- {
- key: key,
- staticClass: "el-date-table__row",
- class: { current: _vm.isWeekActive(row[1]) }
- },
- _vm._l(row, function(cell, key) {
- return _c("td", { key: key, class: _vm.getCellClasses(cell) }, [
- _c("div", [
- _c("span", [
- _vm._v("\n " + _vm._s(cell.text) + "\n ")
- ])
- ])
- ])
- }),
- 0
- )
- })
- ],
- 2
- )
- ]
- )
- }
- var date_tablevue_type_template_id_5d1f3341_staticRenderFns = []
- date_tablevue_type_template_id_5d1f3341_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/date-table.vue?vue&type=template&id=5d1f3341&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/basic/date-table.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var _WEEKS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'];
- var date_tablevue_type_script_lang_js_getDateTimestamp = function getDateTimestamp(time) {
- if (typeof time === 'number' || typeof time === 'string') {
- return Object(date_util_["clearTime"])(new Date(time)).getTime();
- } else if (time instanceof Date) {
- return Object(date_util_["clearTime"])(time).getTime();
- } else {
- return NaN;
- }
- };
- // remove the first element that satisfies `pred` from arr
- // return a new array if modification occurs
- // return the original array otherwise
- var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray(arr, pred) {
- var idx = typeof pred === 'function' ? Object(util_["arrayFindIndex"])(arr, pred) : arr.indexOf(pred);
- return idx >= 0 ? [].concat(arr.slice(0, idx), arr.slice(idx + 1)) : arr;
- };
- /* harmony default export */ var date_tablevue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- props: {
- firstDayOfWeek: {
- default: 7,
- type: Number,
- validator: function validator(val) {
- return val >= 1 && val <= 7;
- }
- },
- value: {},
- defaultValue: {
- validator: function validator(val) {
- // either: null, valid Date object, Array of valid Date objects
- return val === null || Object(date_util_["isDate"])(val) || Array.isArray(val) && val.every(date_util_["isDate"]);
- }
- },
- date: {},
- selectionMode: {
- default: 'day'
- },
- showWeekNumber: {
- type: Boolean,
- default: false
- },
- disabledDate: {},
- minDate: {},
- maxDate: {},
- rangeState: {
- default: function _default() {
- return {
- endDate: null,
- selecting: false
- };
- }
- }
- },
- computed: {
- offsetDay: function offsetDay() {
- var week = this.firstDayOfWeek;
- // 周日为界限,左右偏移的天数,3217654 例如周一就是 -1,目的是调整前两行日期的位置
- return week > 3 ? 7 - week : -week;
- },
- WEEKS: function WEEKS() {
- var week = this.firstDayOfWeek;
- return _WEEKS.concat(_WEEKS).slice(week, week + 7);
- },
- year: function year() {
- return this.date.getFullYear();
- },
- month: function month() {
- return this.date.getMonth();
- },
- startDate: function startDate() {
- return Object(date_util_["getStartDateOfMonth"])(this.year, this.month);
- },
- rows: function rows() {
- var _this = this;
- // TODO: refactory rows / getCellClasses
- var date = new Date(this.year, this.month, 1);
- var day = Object(date_util_["getFirstDayOfMonth"])(date); // day of first day
- var dateCountOfMonth = Object(date_util_["getDayCountOfMonth"])(date.getFullYear(), date.getMonth());
- var dateCountOfLastMonth = Object(date_util_["getDayCountOfMonth"])(date.getFullYear(), date.getMonth() === 0 ? 11 : date.getMonth() - 1);
- day = day === 0 ? 7 : day;
- var offset = this.offsetDay;
- var rows = this.tableRows;
- var count = 1;
- var startDate = this.startDate;
- var disabledDate = this.disabledDate;
- var selectedDate = this.selectionMode === 'dates' ? Object(util_["coerceTruthyValueToArray"])(this.value) : [];
- var now = date_tablevue_type_script_lang_js_getDateTimestamp(new Date());
- for (var i = 0; i < 6; i++) {
- var row = rows[i];
- if (this.showWeekNumber) {
- if (!row[0]) {
- row[0] = { type: 'week', text: Object(date_util_["getWeekNumber"])(Object(date_util_["nextDate"])(startDate, i * 7 + 1)) };
- }
- }
- var _loop = function _loop(j) {
- var cell = row[_this.showWeekNumber ? j + 1 : j];
- if (!cell) {
- cell = { row: i, column: j, type: 'normal', inRange: false, start: false, end: false };
- }
- cell.type = 'normal';
- var index = i * 7 + j;
- var time = Object(date_util_["nextDate"])(startDate, index - offset).getTime();
- cell.inRange = time >= date_tablevue_type_script_lang_js_getDateTimestamp(_this.minDate) && time <= date_tablevue_type_script_lang_js_getDateTimestamp(_this.maxDate);
- cell.start = _this.minDate && time === date_tablevue_type_script_lang_js_getDateTimestamp(_this.minDate);
- cell.end = _this.maxDate && time === date_tablevue_type_script_lang_js_getDateTimestamp(_this.maxDate);
- var isToday = time === now;
- if (isToday) {
- cell.type = 'today';
- }
- if (i >= 0 && i <= 1) {
- var numberOfDaysFromPreviousMonth = day + offset < 0 ? 7 + day + offset : day + offset;
- if (j + i * 7 >= numberOfDaysFromPreviousMonth) {
- cell.text = count++;
- } else {
- cell.text = dateCountOfLastMonth - (numberOfDaysFromPreviousMonth - j % 7) + 1 + i * 7;
- cell.type = 'prev-month';
- }
- } else {
- if (count <= dateCountOfMonth) {
- cell.text = count++;
- } else {
- cell.text = count++ - dateCountOfMonth;
- cell.type = 'next-month';
- }
- }
- var cellDate = new Date(time);
- cell.disabled = typeof disabledDate === 'function' && disabledDate(cellDate);
- cell.selected = Object(util_["arrayFind"])(selectedDate, function (date) {
- return date.getTime() === cellDate.getTime();
- });
- _this.$set(row, _this.showWeekNumber ? j + 1 : j, cell);
- };
- for (var j = 0; j < 7; j++) {
- _loop(j);
- }
- if (this.selectionMode === 'week') {
- var start = this.showWeekNumber ? 1 : 0;
- var end = this.showWeekNumber ? 7 : 6;
- var isWeekActive = this.isWeekActive(row[start + 1]);
- row[start].inRange = isWeekActive;
- row[start].start = isWeekActive;
- row[end].inRange = isWeekActive;
- row[end].end = isWeekActive;
- }
- }
- return rows;
- }
- },
- watch: {
- 'rangeState.endDate': function rangeStateEndDate(newVal) {
- this.markRange(this.minDate, newVal);
- },
- minDate: function minDate(newVal, oldVal) {
- if (date_tablevue_type_script_lang_js_getDateTimestamp(newVal) !== date_tablevue_type_script_lang_js_getDateTimestamp(oldVal)) {
- this.markRange(this.minDate, this.maxDate);
- }
- },
- maxDate: function maxDate(newVal, oldVal) {
- if (date_tablevue_type_script_lang_js_getDateTimestamp(newVal) !== date_tablevue_type_script_lang_js_getDateTimestamp(oldVal)) {
- this.markRange(this.minDate, this.maxDate);
- }
- }
- },
- data: function data() {
- return {
- tableRows: [[], [], [], [], [], []],
- lastRow: null,
- lastColumn: null
- };
- },
- methods: {
- cellMatchesDate: function cellMatchesDate(cell, date) {
- var value = new Date(date);
- return this.year === value.getFullYear() && this.month === value.getMonth() && Number(cell.text) === value.getDate();
- },
- getCellClasses: function getCellClasses(cell) {
- var _this2 = this;
- var selectionMode = this.selectionMode;
- var defaultValue = this.defaultValue ? Array.isArray(this.defaultValue) ? this.defaultValue : [this.defaultValue] : [];
- var classes = [];
- if ((cell.type === 'normal' || cell.type === 'today') && !cell.disabled) {
- classes.push('available');
- if (cell.type === 'today') {
- classes.push('today');
- }
- } else {
- classes.push(cell.type);
- }
- if (cell.type === 'normal' && defaultValue.some(function (date) {
- return _this2.cellMatchesDate(cell, date);
- })) {
- classes.push('default');
- }
- if (selectionMode === 'day' && (cell.type === 'normal' || cell.type === 'today') && this.cellMatchesDate(cell, this.value)) {
- classes.push('current');
- }
- if (cell.inRange && (cell.type === 'normal' || cell.type === 'today' || this.selectionMode === 'week')) {
- classes.push('in-range');
- if (cell.start) {
- classes.push('start-date');
- }
- if (cell.end) {
- classes.push('end-date');
- }
- }
- if (cell.disabled) {
- classes.push('disabled');
- }
- if (cell.selected) {
- classes.push('selected');
- }
- return classes.join(' ');
- },
- getDateOfCell: function getDateOfCell(row, column) {
- var offsetFromStart = row * 7 + (column - (this.showWeekNumber ? 1 : 0)) - this.offsetDay;
- return Object(date_util_["nextDate"])(this.startDate, offsetFromStart);
- },
- isWeekActive: function isWeekActive(cell) {
- if (this.selectionMode !== 'week') return false;
- var newDate = new Date(this.year, this.month, 1);
- var year = newDate.getFullYear();
- var month = newDate.getMonth();
- if (cell.type === 'prev-month') {
- newDate.setMonth(month === 0 ? 11 : month - 1);
- newDate.setFullYear(month === 0 ? year - 1 : year);
- }
- if (cell.type === 'next-month') {
- newDate.setMonth(month === 11 ? 0 : month + 1);
- newDate.setFullYear(month === 11 ? year + 1 : year);
- }
- newDate.setDate(parseInt(cell.text, 10));
- if (Object(date_util_["isDate"])(this.value)) {
- var dayOffset = (this.value.getDay() - this.firstDayOfWeek + 7) % 7 - 1;
- var weekDate = Object(date_util_["prevDate"])(this.value, dayOffset);
- return weekDate.getTime() === newDate.getTime();
- }
- return false;
- },
- markRange: function markRange(minDate, maxDate) {
- minDate = date_tablevue_type_script_lang_js_getDateTimestamp(minDate);
- maxDate = date_tablevue_type_script_lang_js_getDateTimestamp(maxDate) || minDate;
- var _ref = [Math.min(minDate, maxDate), Math.max(minDate, maxDate)];
- minDate = _ref[0];
- maxDate = _ref[1];
- var startDate = this.startDate;
- var rows = this.rows;
- for (var i = 0, k = rows.length; i < k; i++) {
- var row = rows[i];
- for (var j = 0, l = row.length; j < l; j++) {
- if (this.showWeekNumber && j === 0) continue;
- var _cell = row[j];
- var index = i * 7 + j + (this.showWeekNumber ? -1 : 0);
- var time = Object(date_util_["nextDate"])(startDate, index - this.offsetDay).getTime();
- _cell.inRange = minDate && time >= minDate && time <= maxDate;
- _cell.start = minDate && time === minDate;
- _cell.end = maxDate && time === maxDate;
- }
- }
- },
- handleMouseMove: function handleMouseMove(event) {
- if (!this.rangeState.selecting) return;
- var target = event.target;
- if (target.tagName === 'SPAN') {
- target = target.parentNode.parentNode;
- }
- if (target.tagName === 'DIV') {
- target = target.parentNode;
- }
- if (target.tagName !== 'TD') return;
- var row = target.parentNode.rowIndex - 1;
- var column = target.cellIndex;
- // can not select disabled date
- if (this.rows[row][column].disabled) return;
- // only update rangeState when mouse moves to a new cell
- // this avoids frequent Date object creation and improves performance
- if (row !== this.lastRow || column !== this.lastColumn) {
- this.lastRow = row;
- this.lastColumn = column;
- this.$emit('changerange', {
- minDate: this.minDate,
- maxDate: this.maxDate,
- rangeState: {
- selecting: true,
- endDate: this.getDateOfCell(row, column)
- }
- });
- }
- },
- handleClick: function handleClick(event) {
- var target = event.target;
- if (target.tagName === 'SPAN') {
- target = target.parentNode.parentNode;
- }
- if (target.tagName === 'DIV') {
- target = target.parentNode;
- }
- if (target.tagName !== 'TD') return;
- var row = target.parentNode.rowIndex - 1;
- var column = this.selectionMode === 'week' ? 1 : target.cellIndex;
- var cell = this.rows[row][column];
- if (cell.disabled || cell.type === 'week') return;
- var newDate = this.getDateOfCell(row, column);
- if (this.selectionMode === 'range') {
- if (!this.rangeState.selecting) {
- this.$emit('pick', { minDate: newDate, maxDate: null });
- this.rangeState.selecting = true;
- } else {
- if (newDate >= this.minDate) {
- this.$emit('pick', { minDate: this.minDate, maxDate: newDate });
- } else {
- this.$emit('pick', { minDate: newDate, maxDate: this.minDate });
- }
- this.rangeState.selecting = false;
- }
- } else if (this.selectionMode === 'day') {
- this.$emit('pick', newDate);
- } else if (this.selectionMode === 'week') {
- var weekNumber = Object(date_util_["getWeekNumber"])(newDate);
- var value = newDate.getFullYear() + 'w' + weekNumber;
- this.$emit('pick', {
- year: newDate.getFullYear(),
- week: weekNumber,
- value: value,
- date: newDate
- });
- } else if (this.selectionMode === 'dates') {
- var _value = this.value || [];
- var newValue = cell.selected ? date_tablevue_type_script_lang_js_removeFromArray(_value, function (date) {
- return date.getTime() === newDate.getTime();
- }) : [].concat(_value, [newDate]);
- this.$emit('pick', newValue);
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/date-table.vue?vue&type=script&lang=js&
- /* harmony default export */ var basic_date_tablevue_type_script_lang_js_ = (date_tablevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/basic/date-table.vue
- /* normalize component */
- var date_table_component = normalizeComponent(
- basic_date_tablevue_type_script_lang_js_,
- date_tablevue_type_template_id_5d1f3341_render,
- date_tablevue_type_template_id_5d1f3341_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var date_table_api; }
- date_table_component.options.__file = "packages/date-picker/src/basic/date-table.vue"
- /* harmony default export */ var date_table = (date_table_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/date.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var datevue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- directives: { Clickoutside: clickoutside_default.a },
- watch: {
- showTime: function showTime(val) {
- var _this = this;
- /* istanbul ignore if */
- if (!val) return;
- this.$nextTick(function (_) {
- var inputElm = _this.$refs.input.$el;
- if (inputElm) {
- _this.pickerWidth = inputElm.getBoundingClientRect().width + 10;
- }
- });
- },
- value: function value(val) {
- if (this.selectionMode === 'dates' && this.value) return;
- if (Object(date_util_["isDate"])(val)) {
- this.date = new Date(val);
- } else {
- this.date = this.getDefaultValue();
- }
- },
- defaultValue: function defaultValue(val) {
- if (!Object(date_util_["isDate"])(this.value)) {
- this.date = val ? new Date(val) : new Date();
- }
- },
- timePickerVisible: function timePickerVisible(val) {
- var _this2 = this;
- if (val) this.$nextTick(function () {
- return _this2.$refs.timepicker.adjustSpinners();
- });
- },
- selectionMode: function selectionMode(newVal) {
- if (newVal === 'month') {
- /* istanbul ignore next */
- if (this.currentView !== 'year' || this.currentView !== 'month') {
- this.currentView = 'month';
- }
- } else if (newVal === 'dates') {
- this.currentView = 'date';
- }
- }
- },
- methods: {
- proxyTimePickerDataProperties: function proxyTimePickerDataProperties() {
- var _this3 = this;
- var format = function format(timeFormat) {
- _this3.$refs.timepicker.format = timeFormat;
- };
- var value = function value(_value) {
- _this3.$refs.timepicker.value = _value;
- };
- var date = function date(_date) {
- _this3.$refs.timepicker.date = _date;
- };
- var selectableRange = function selectableRange(_selectableRange) {
- _this3.$refs.timepicker.selectableRange = _selectableRange;
- };
- this.$watch('value', value);
- this.$watch('date', date);
- this.$watch('selectableRange', selectableRange);
- format(this.timeFormat);
- value(this.value);
- date(this.date);
- selectableRange(this.selectableRange);
- },
- handleClear: function handleClear() {
- this.date = this.getDefaultValue();
- this.$emit('pick', null);
- },
- emit: function emit(value) {
- var _this4 = this;
- for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
- args[_key - 1] = arguments[_key];
- }
- if (!value) {
- this.$emit.apply(this, ['pick', value].concat(args));
- } else if (Array.isArray(value)) {
- var dates = value.map(function (date) {
- return _this4.showTime ? Object(date_util_["clearMilliseconds"])(date) : Object(date_util_["clearTime"])(date);
- });
- this.$emit.apply(this, ['pick', dates].concat(args));
- } else {
- this.$emit.apply(this, ['pick', this.showTime ? Object(date_util_["clearMilliseconds"])(value) : Object(date_util_["clearTime"])(value)].concat(args));
- }
- this.userInputDate = null;
- this.userInputTime = null;
- },
- // resetDate() {
- // this.date = new Date(this.date);
- // },
- showMonthPicker: function showMonthPicker() {
- this.currentView = 'month';
- },
- showYearPicker: function showYearPicker() {
- this.currentView = 'year';
- },
- // XXX: 没用到
- // handleLabelClick() {
- // if (this.currentView === 'date') {
- // this.showMonthPicker();
- // } else if (this.currentView === 'month') {
- // this.showYearPicker();
- // }
- // },
- prevMonth: function prevMonth() {
- this.date = Object(date_util_["prevMonth"])(this.date);
- },
- nextMonth: function nextMonth() {
- this.date = Object(date_util_["nextMonth"])(this.date);
- },
- prevYear: function prevYear() {
- if (this.currentView === 'year') {
- this.date = Object(date_util_["prevYear"])(this.date, 10);
- } else {
- this.date = Object(date_util_["prevYear"])(this.date);
- }
- },
- nextYear: function nextYear() {
- if (this.currentView === 'year') {
- this.date = Object(date_util_["nextYear"])(this.date, 10);
- } else {
- this.date = Object(date_util_["nextYear"])(this.date);
- }
- },
- handleShortcutClick: function handleShortcutClick(shortcut) {
- if (shortcut.onClick) {
- shortcut.onClick(this);
- }
- },
- handleTimePick: function handleTimePick(value, visible, first) {
- if (Object(date_util_["isDate"])(value)) {
- var newDate = this.value ? Object(date_util_["modifyTime"])(this.value, value.getHours(), value.getMinutes(), value.getSeconds()) : Object(date_util_["modifyWithTimeString"])(this.getDefaultValue(), this.defaultTime);
- this.date = newDate;
- this.emit(this.date, true);
- } else {
- this.emit(value, true);
- }
- if (!first) {
- this.timePickerVisible = visible;
- }
- },
- handleTimePickClose: function handleTimePickClose() {
- this.timePickerVisible = false;
- },
- handleMonthPick: function handleMonthPick(month) {
- if (this.selectionMode === 'month') {
- this.date = Object(date_util_["modifyDate"])(this.date, this.year, month, 1);
- this.emit(this.date);
- } else {
- this.date = Object(date_util_["changeYearMonthAndClampDate"])(this.date, this.year, month);
- // TODO: should emit intermediate value ??
- // this.emit(this.date);
- this.currentView = 'date';
- }
- },
- handleDatePick: function handleDatePick(value) {
- if (this.selectionMode === 'day') {
- var newDate = this.value ? Object(date_util_["modifyDate"])(this.value, value.getFullYear(), value.getMonth(), value.getDate()) : Object(date_util_["modifyWithTimeString"])(value, this.defaultTime);
- // change default time while out of selectableRange
- if (!this.checkDateWithinRange(newDate)) {
- newDate = Object(date_util_["modifyDate"])(this.selectableRange[0][0], value.getFullYear(), value.getMonth(), value.getDate());
- }
- this.date = newDate;
- this.emit(this.date, this.showTime);
- } else if (this.selectionMode === 'week') {
- this.emit(value.date);
- } else if (this.selectionMode === 'dates') {
- this.emit(value, true); // set false to keep panel open
- }
- },
- handleYearPick: function handleYearPick(year) {
- if (this.selectionMode === 'year') {
- this.date = Object(date_util_["modifyDate"])(this.date, year, 0, 1);
- this.emit(this.date);
- } else {
- this.date = Object(date_util_["changeYearMonthAndClampDate"])(this.date, year, this.month);
- // TODO: should emit intermediate value ??
- // this.emit(this.date, true);
- this.currentView = 'month';
- }
- },
- changeToNow: function changeToNow() {
- // NOTE: not a permanent solution
- // consider disable "now" button in the future
- if ((!this.disabledDate || !this.disabledDate(new Date())) && this.checkDateWithinRange(new Date())) {
- this.date = new Date();
- this.emit(this.date);
- }
- },
- confirm: function confirm() {
- if (this.selectionMode === 'dates') {
- this.emit(this.value);
- } else {
- // value were emitted in handle{Date,Time}Pick, nothing to update here
- // deal with the scenario where: user opens the picker, then confirm without doing anything
- var value = this.value ? this.value : Object(date_util_["modifyWithTimeString"])(this.getDefaultValue(), this.defaultTime);
- this.date = new Date(value); // refresh date
- this.emit(value);
- }
- },
- resetView: function resetView() {
- if (this.selectionMode === 'month') {
- this.currentView = 'month';
- } else if (this.selectionMode === 'year') {
- this.currentView = 'year';
- } else {
- this.currentView = 'date';
- }
- },
- handleEnter: function handleEnter() {
- document.body.addEventListener('keydown', this.handleKeydown);
- },
- handleLeave: function handleLeave() {
- this.$emit('dodestroy');
- document.body.removeEventListener('keydown', this.handleKeydown);
- },
- handleKeydown: function handleKeydown(event) {
- var keyCode = event.keyCode;
- var list = [38, 40, 37, 39];
- if (this.visible && !this.timePickerVisible) {
- if (list.indexOf(keyCode) !== -1) {
- this.handleKeyControl(keyCode);
- event.stopPropagation();
- event.preventDefault();
- }
- if (keyCode === 13 && this.userInputDate === null && this.userInputTime === null) {
- // Enter
- this.emit(this.date, false);
- }
- }
- },
- handleKeyControl: function handleKeyControl(keyCode) {
- var mapping = {
- 'year': {
- 38: -4, 40: 4, 37: -1, 39: 1, offset: function offset(date, step) {
- return date.setFullYear(date.getFullYear() + step);
- }
- },
- 'month': {
- 38: -4, 40: 4, 37: -1, 39: 1, offset: function offset(date, step) {
- return date.setMonth(date.getMonth() + step);
- }
- },
- 'week': {
- 38: -1, 40: 1, 37: -1, 39: 1, offset: function offset(date, step) {
- return date.setDate(date.getDate() + step * 7);
- }
- },
- 'day': {
- 38: -7, 40: 7, 37: -1, 39: 1, offset: function offset(date, step) {
- return date.setDate(date.getDate() + step);
- }
- }
- };
- var mode = this.selectionMode;
- var year = 3.1536e10;
- var now = this.date.getTime();
- var newDate = new Date(this.date.getTime());
- while (Math.abs(now - newDate.getTime()) <= year) {
- var map = mapping[mode];
- map.offset(newDate, map[keyCode]);
- if (typeof this.disabledDate === 'function' && this.disabledDate(newDate)) {
- continue;
- }
- this.date = newDate;
- this.$emit('pick', newDate, true);
- break;
- }
- },
- handleVisibleTimeChange: function handleVisibleTimeChange(value) {
- var time = Object(date_util_["parseDate"])(value, this.timeFormat);
- if (time && this.checkDateWithinRange(time)) {
- this.date = Object(date_util_["modifyDate"])(time, this.year, this.month, this.monthDate);
- this.userInputTime = null;
- this.$refs.timepicker.value = this.date;
- this.timePickerVisible = false;
- this.emit(this.date, true);
- }
- },
- handleVisibleDateChange: function handleVisibleDateChange(value) {
- var date = Object(date_util_["parseDate"])(value, this.dateFormat);
- if (date) {
- if (typeof this.disabledDate === 'function' && this.disabledDate(date)) {
- return;
- }
- this.date = Object(date_util_["modifyTime"])(date, this.date.getHours(), this.date.getMinutes(), this.date.getSeconds());
- this.userInputDate = null;
- this.resetView();
- this.emit(this.date, true);
- }
- },
- isValidValue: function isValidValue(value) {
- return value && !isNaN(value) && (typeof this.disabledDate === 'function' ? !this.disabledDate(value) : true) && this.checkDateWithinRange(value);
- },
- getDefaultValue: function getDefaultValue() {
- // if default-value is set, return it
- // otherwise, return now (the moment this method gets called)
- return this.defaultValue ? new Date(this.defaultValue) : new Date();
- },
- checkDateWithinRange: function checkDateWithinRange(date) {
- return this.selectableRange.length > 0 ? Object(date_util_["timeWithinRange"])(date, this.selectableRange, this.format || 'HH:mm:ss') : true;
- }
- },
- components: {
- TimePicker: panel_time, YearTable: year_table, MonthTable: month_table, DateTable: date_table, ElInput: input_default.a, ElButton: button_default.a
- },
- data: function data() {
- return {
- popperClass: '',
- date: new Date(),
- value: '',
- defaultValue: null, // use getDefaultValue() for time computation
- defaultTime: null,
- showTime: false,
- selectionMode: 'day',
- shortcuts: '',
- visible: false,
- currentView: 'date',
- disabledDate: '',
- selectableRange: [],
- firstDayOfWeek: 7,
- showWeekNumber: false,
- timePickerVisible: false,
- format: '',
- arrowControl: false,
- userInputDate: null,
- userInputTime: null
- };
- },
- computed: {
- year: function year() {
- return this.date.getFullYear();
- },
- month: function month() {
- return this.date.getMonth();
- },
- week: function week() {
- return Object(date_util_["getWeekNumber"])(this.date);
- },
- monthDate: function monthDate() {
- return this.date.getDate();
- },
- footerVisible: function footerVisible() {
- return this.showTime || this.selectionMode === 'dates';
- },
- visibleTime: function visibleTime() {
- if (this.userInputTime !== null) {
- return this.userInputTime;
- } else {
- return Object(date_util_["formatDate"])(this.value || this.defaultValue, this.timeFormat);
- }
- },
- visibleDate: function visibleDate() {
- if (this.userInputDate !== null) {
- return this.userInputDate;
- } else {
- return Object(date_util_["formatDate"])(this.value || this.defaultValue, this.dateFormat);
- }
- },
- yearLabel: function yearLabel() {
- var yearTranslation = this.t('el.datepicker.year');
- if (this.currentView === 'year') {
- var startYear = Math.floor(this.year / 10) * 10;
- if (yearTranslation) {
- return startYear + ' ' + yearTranslation + ' - ' + (startYear + 9) + ' ' + yearTranslation;
- }
- return startYear + ' - ' + (startYear + 9);
- }
- return this.year + ' ' + yearTranslation;
- },
- timeFormat: function timeFormat() {
- if (this.format) {
- return Object(date_util_["extractTimeFormat"])(this.format);
- } else {
- return 'HH:mm:ss';
- }
- },
- dateFormat: function dateFormat() {
- if (this.format) {
- return Object(date_util_["extractDateFormat"])(this.format);
- } else {
- return 'yyyy-MM-dd';
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/date.vue?vue&type=script&lang=js&
- /* harmony default export */ var panel_datevue_type_script_lang_js_ = (datevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/date.vue
- /* normalize component */
- var date_component = normalizeComponent(
- panel_datevue_type_script_lang_js_,
- datevue_type_template_id_2440d4ea_render,
- datevue_type_template_id_2440d4ea_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var date_api; }
- date_component.options.__file = "packages/date-picker/src/panel/date.vue"
- /* harmony default export */ var panel_date = (date_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/date-range.vue?vue&type=template&id=2652849a&
- var date_rangevue_type_template_id_2652849a_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: {
- "after-leave": function($event) {
- _vm.$emit("dodestroy")
- }
- }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-picker-panel el-date-range-picker el-popper",
- class: [
- {
- "has-sidebar": _vm.$slots.sidebar || _vm.shortcuts,
- "has-time": _vm.showTime
- },
- _vm.popperClass
- ]
- },
- [
- _c(
- "div",
- { staticClass: "el-picker-panel__body-wrapper" },
- [
- _vm._t("sidebar"),
- _vm.shortcuts
- ? _c(
- "div",
- { staticClass: "el-picker-panel__sidebar" },
- _vm._l(_vm.shortcuts, function(shortcut, key) {
- return _c(
- "button",
- {
- key: key,
- staticClass: "el-picker-panel__shortcut",
- attrs: { type: "button" },
- on: {
- click: function($event) {
- _vm.handleShortcutClick(shortcut)
- }
- }
- },
- [_vm._v(_vm._s(shortcut.text))]
- )
- }),
- 0
- )
- : _vm._e(),
- _c("div", { staticClass: "el-picker-panel__body" }, [
- _vm.showTime
- ? _c(
- "div",
- { staticClass: "el-date-range-picker__time-header" },
- [
- _c(
- "span",
- { staticClass: "el-date-range-picker__editors-wrap" },
- [
- _c(
- "span",
- {
- staticClass:
- "el-date-range-picker__time-picker-wrap"
- },
- [
- _c("el-input", {
- ref: "minInput",
- staticClass: "el-date-range-picker__editor",
- attrs: {
- size: "small",
- disabled: _vm.rangeState.selecting,
- placeholder: _vm.t(
- "el.datepicker.startDate"
- ),
- value: _vm.minVisibleDate
- },
- on: {
- input: function(val) {
- return _vm.handleDateInput(val, "min")
- },
- change: function(val) {
- return _vm.handleDateChange(val, "min")
- }
- }
- })
- ],
- 1
- ),
- _c(
- "span",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleMinTimeClose,
- expression: "handleMinTimeClose"
- }
- ],
- staticClass:
- "el-date-range-picker__time-picker-wrap"
- },
- [
- _c("el-input", {
- staticClass: "el-date-range-picker__editor",
- attrs: {
- size: "small",
- disabled: _vm.rangeState.selecting,
- placeholder: _vm.t(
- "el.datepicker.startTime"
- ),
- value: _vm.minVisibleTime
- },
- on: {
- focus: function($event) {
- _vm.minTimePickerVisible = true
- },
- input: function(val) {
- return _vm.handleTimeInput(val, "min")
- },
- change: function(val) {
- return _vm.handleTimeChange(val, "min")
- }
- }
- }),
- _c("time-picker", {
- ref: "minTimePicker",
- attrs: {
- "time-arrow-control": _vm.arrowControl,
- visible: _vm.minTimePickerVisible
- },
- on: {
- pick: _vm.handleMinTimePick,
- mounted: function($event) {
- _vm.$refs.minTimePicker.format =
- _vm.timeFormat
- }
- }
- })
- ],
- 1
- )
- ]
- ),
- _c("span", { staticClass: "el-icon-arrow-right" }),
- _c(
- "span",
- {
- staticClass:
- "el-date-range-picker__editors-wrap is-right"
- },
- [
- _c(
- "span",
- {
- staticClass:
- "el-date-range-picker__time-picker-wrap"
- },
- [
- _c("el-input", {
- staticClass: "el-date-range-picker__editor",
- attrs: {
- size: "small",
- disabled: _vm.rangeState.selecting,
- placeholder: _vm.t("el.datepicker.endDate"),
- value: _vm.maxVisibleDate,
- readonly: !_vm.minDate
- },
- on: {
- input: function(val) {
- return _vm.handleDateInput(val, "max")
- },
- change: function(val) {
- return _vm.handleDateChange(val, "max")
- }
- }
- })
- ],
- 1
- ),
- _c(
- "span",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleMaxTimeClose,
- expression: "handleMaxTimeClose"
- }
- ],
- staticClass:
- "el-date-range-picker__time-picker-wrap"
- },
- [
- _c("el-input", {
- staticClass: "el-date-range-picker__editor",
- attrs: {
- size: "small",
- disabled: _vm.rangeState.selecting,
- placeholder: _vm.t("el.datepicker.endTime"),
- value: _vm.maxVisibleTime,
- readonly: !_vm.minDate
- },
- on: {
- focus: function($event) {
- _vm.minDate &&
- (_vm.maxTimePickerVisible = true)
- },
- input: function(val) {
- return _vm.handleTimeInput(val, "max")
- },
- change: function(val) {
- return _vm.handleTimeChange(val, "max")
- }
- }
- }),
- _c("time-picker", {
- ref: "maxTimePicker",
- attrs: {
- "time-arrow-control": _vm.arrowControl,
- visible: _vm.maxTimePickerVisible
- },
- on: {
- pick: _vm.handleMaxTimePick,
- mounted: function($event) {
- _vm.$refs.maxTimePicker.format =
- _vm.timeFormat
- }
- }
- })
- ],
- 1
- )
- ]
- )
- ]
- )
- : _vm._e(),
- _c(
- "div",
- {
- staticClass:
- "el-picker-panel__content el-date-range-picker__content is-left"
- },
- [
- _c("div", { staticClass: "el-date-range-picker__header" }, [
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-left",
- attrs: { type: "button" },
- on: { click: _vm.leftPrevYear }
- }),
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-arrow-left",
- attrs: { type: "button" },
- on: { click: _vm.leftPrevMonth }
- }),
- _vm.unlinkPanels
- ? _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-right",
- class: { "is-disabled": !_vm.enableYearArrow },
- attrs: {
- type: "button",
- disabled: !_vm.enableYearArrow
- },
- on: { click: _vm.leftNextYear }
- })
- : _vm._e(),
- _vm.unlinkPanels
- ? _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-arrow-right",
- class: { "is-disabled": !_vm.enableMonthArrow },
- attrs: {
- type: "button",
- disabled: !_vm.enableMonthArrow
- },
- on: { click: _vm.leftNextMonth }
- })
- : _vm._e(),
- _c("div", [_vm._v(_vm._s(_vm.leftLabel))])
- ]),
- _c("date-table", {
- attrs: {
- "selection-mode": "range",
- date: _vm.leftDate,
- "default-value": _vm.defaultValue,
- "min-date": _vm.minDate,
- "max-date": _vm.maxDate,
- "range-state": _vm.rangeState,
- "disabled-date": _vm.disabledDate,
- "first-day-of-week": _vm.firstDayOfWeek
- },
- on: {
- changerange: _vm.handleChangeRange,
- pick: _vm.handleRangePick
- }
- })
- ],
- 1
- ),
- _c(
- "div",
- {
- staticClass:
- "el-picker-panel__content el-date-range-picker__content is-right"
- },
- [
- _c("div", { staticClass: "el-date-range-picker__header" }, [
- _vm.unlinkPanels
- ? _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-left",
- class: { "is-disabled": !_vm.enableYearArrow },
- attrs: {
- type: "button",
- disabled: !_vm.enableYearArrow
- },
- on: { click: _vm.rightPrevYear }
- })
- : _vm._e(),
- _vm.unlinkPanels
- ? _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-arrow-left",
- class: { "is-disabled": !_vm.enableMonthArrow },
- attrs: {
- type: "button",
- disabled: !_vm.enableMonthArrow
- },
- on: { click: _vm.rightPrevMonth }
- })
- : _vm._e(),
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-right",
- attrs: { type: "button" },
- on: { click: _vm.rightNextYear }
- }),
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-arrow-right",
- attrs: { type: "button" },
- on: { click: _vm.rightNextMonth }
- }),
- _c("div", [_vm._v(_vm._s(_vm.rightLabel))])
- ]),
- _c("date-table", {
- attrs: {
- "selection-mode": "range",
- date: _vm.rightDate,
- "default-value": _vm.defaultValue,
- "min-date": _vm.minDate,
- "max-date": _vm.maxDate,
- "range-state": _vm.rangeState,
- "disabled-date": _vm.disabledDate,
- "first-day-of-week": _vm.firstDayOfWeek
- },
- on: {
- changerange: _vm.handleChangeRange,
- pick: _vm.handleRangePick
- }
- })
- ],
- 1
- )
- ])
- ],
- 2
- ),
- _vm.showTime
- ? _c(
- "div",
- { staticClass: "el-picker-panel__footer" },
- [
- _c(
- "el-button",
- {
- staticClass: "el-picker-panel__link-btn",
- attrs: { size: "mini", type: "text" },
- on: { click: _vm.handleClear }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.clear")) +
- "\n "
- )
- ]
- ),
- _c(
- "el-button",
- {
- staticClass: "el-picker-panel__link-btn",
- attrs: {
- plain: "",
- size: "mini",
- disabled: _vm.btnDisabled
- },
- on: {
- click: function($event) {
- _vm.handleConfirm(false)
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.confirm")) +
- "\n "
- )
- ]
- )
- ],
- 1
- )
- : _vm._e()
- ]
- )
- ]
- )
- }
- var date_rangevue_type_template_id_2652849a_staticRenderFns = []
- date_rangevue_type_template_id_2652849a_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/date-range.vue?vue&type=template&id=2652849a&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/date-range.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultValue(defaultValue) {
- if (Array.isArray(defaultValue)) {
- return [new Date(defaultValue[0]), new Date(defaultValue[1])];
- } else if (defaultValue) {
- return [new Date(defaultValue), Object(date_util_["nextDate"])(new Date(defaultValue), 1)];
- } else {
- return [new Date(), Object(date_util_["nextDate"])(new Date(), 1)];
- }
- };
- /* harmony default export */ var date_rangevue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- directives: { Clickoutside: clickoutside_default.a },
- computed: {
- btnDisabled: function btnDisabled() {
- return !(this.minDate && this.maxDate && !this.selecting && this.isValidValue([this.minDate, this.maxDate]));
- },
- leftLabel: function leftLabel() {
- return this.leftDate.getFullYear() + ' ' + this.t('el.datepicker.year') + ' ' + this.t('el.datepicker.month' + (this.leftDate.getMonth() + 1));
- },
- rightLabel: function rightLabel() {
- return this.rightDate.getFullYear() + ' ' + this.t('el.datepicker.year') + ' ' + this.t('el.datepicker.month' + (this.rightDate.getMonth() + 1));
- },
- leftYear: function leftYear() {
- return this.leftDate.getFullYear();
- },
- leftMonth: function leftMonth() {
- return this.leftDate.getMonth();
- },
- leftMonthDate: function leftMonthDate() {
- return this.leftDate.getDate();
- },
- rightYear: function rightYear() {
- return this.rightDate.getFullYear();
- },
- rightMonth: function rightMonth() {
- return this.rightDate.getMonth();
- },
- rightMonthDate: function rightMonthDate() {
- return this.rightDate.getDate();
- },
- minVisibleDate: function minVisibleDate() {
- if (this.dateUserInput.min !== null) return this.dateUserInput.min;
- if (this.minDate) return Object(date_util_["formatDate"])(this.minDate, this.dateFormat);
- return '';
- },
- maxVisibleDate: function maxVisibleDate() {
- if (this.dateUserInput.max !== null) return this.dateUserInput.max;
- if (this.maxDate || this.minDate) return Object(date_util_["formatDate"])(this.maxDate || this.minDate, this.dateFormat);
- return '';
- },
- minVisibleTime: function minVisibleTime() {
- if (this.timeUserInput.min !== null) return this.timeUserInput.min;
- if (this.minDate) return Object(date_util_["formatDate"])(this.minDate, this.timeFormat);
- return '';
- },
- maxVisibleTime: function maxVisibleTime() {
- if (this.timeUserInput.max !== null) return this.timeUserInput.max;
- if (this.maxDate || this.minDate) return Object(date_util_["formatDate"])(this.maxDate || this.minDate, this.timeFormat);
- return '';
- },
- timeFormat: function timeFormat() {
- if (this.format) {
- return Object(date_util_["extractTimeFormat"])(this.format);
- } else {
- return 'HH:mm:ss';
- }
- },
- dateFormat: function dateFormat() {
- if (this.format) {
- return Object(date_util_["extractDateFormat"])(this.format);
- } else {
- return 'yyyy-MM-dd';
- }
- },
- enableMonthArrow: function enableMonthArrow() {
- var nextMonth = (this.leftMonth + 1) % 12;
- var yearOffset = this.leftMonth + 1 >= 12 ? 1 : 0;
- return this.unlinkPanels && new Date(this.leftYear + yearOffset, nextMonth) < new Date(this.rightYear, this.rightMonth);
- },
- enableYearArrow: function enableYearArrow() {
- return this.unlinkPanels && this.rightYear * 12 + this.rightMonth - (this.leftYear * 12 + this.leftMonth + 1) >= 12;
- }
- },
- data: function data() {
- return {
- popperClass: '',
- value: [],
- defaultValue: null,
- defaultTime: null,
- minDate: '',
- maxDate: '',
- leftDate: new Date(),
- rightDate: Object(date_util_["nextMonth"])(new Date()),
- rangeState: {
- endDate: null,
- selecting: false,
- row: null,
- column: null
- },
- showTime: false,
- shortcuts: '',
- visible: '',
- disabledDate: '',
- firstDayOfWeek: 7,
- minTimePickerVisible: false,
- maxTimePickerVisible: false,
- format: '',
- arrowControl: false,
- unlinkPanels: false,
- dateUserInput: {
- min: null,
- max: null
- },
- timeUserInput: {
- min: null,
- max: null
- }
- };
- },
- watch: {
- minDate: function minDate(val) {
- var _this = this;
- this.dateUserInput.min = null;
- this.timeUserInput.min = null;
- this.$nextTick(function () {
- if (_this.$refs.maxTimePicker && _this.maxDate && _this.maxDate < _this.minDate) {
- var format = 'HH:mm:ss';
- _this.$refs.maxTimePicker.selectableRange = [[Object(date_util_["parseDate"])(Object(date_util_["formatDate"])(_this.minDate, format), format), Object(date_util_["parseDate"])('23:59:59', format)]];
- }
- });
- if (val && this.$refs.minTimePicker) {
- this.$refs.minTimePicker.date = val;
- this.$refs.minTimePicker.value = val;
- }
- },
- maxDate: function maxDate(val) {
- this.dateUserInput.max = null;
- this.timeUserInput.max = null;
- if (val && this.$refs.maxTimePicker) {
- this.$refs.maxTimePicker.date = val;
- this.$refs.maxTimePicker.value = val;
- }
- },
- minTimePickerVisible: function minTimePickerVisible(val) {
- var _this2 = this;
- if (val) {
- this.$nextTick(function () {
- _this2.$refs.minTimePicker.date = _this2.minDate;
- _this2.$refs.minTimePicker.value = _this2.minDate;
- _this2.$refs.minTimePicker.adjustSpinners();
- });
- }
- },
- maxTimePickerVisible: function maxTimePickerVisible(val) {
- var _this3 = this;
- if (val) {
- this.$nextTick(function () {
- _this3.$refs.maxTimePicker.date = _this3.maxDate;
- _this3.$refs.maxTimePicker.value = _this3.maxDate;
- _this3.$refs.maxTimePicker.adjustSpinners();
- });
- }
- },
- value: function value(newVal) {
- if (!newVal) {
- this.minDate = null;
- this.maxDate = null;
- } else if (Array.isArray(newVal)) {
- this.minDate = Object(date_util_["isDate"])(newVal[0]) ? new Date(newVal[0]) : null;
- this.maxDate = Object(date_util_["isDate"])(newVal[1]) ? new Date(newVal[1]) : null;
- if (this.minDate) {
- this.leftDate = this.minDate;
- if (this.unlinkPanels && this.maxDate) {
- var minDateYear = this.minDate.getFullYear();
- var minDateMonth = this.minDate.getMonth();
- var maxDateYear = this.maxDate.getFullYear();
- var maxDateMonth = this.maxDate.getMonth();
- this.rightDate = minDateYear === maxDateYear && minDateMonth === maxDateMonth ? Object(date_util_["nextMonth"])(this.maxDate) : this.maxDate;
- } else {
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- }
- } else {
- this.leftDate = date_rangevue_type_script_lang_js_calcDefaultValue(this.defaultValue)[0];
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- }
- }
- },
- defaultValue: function defaultValue(val) {
- if (!Array.isArray(this.value)) {
- var _calcDefaultValue = date_rangevue_type_script_lang_js_calcDefaultValue(val),
- left = _calcDefaultValue[0],
- right = _calcDefaultValue[1];
- this.leftDate = left;
- this.rightDate = val && val[1] && this.unlinkPanels ? right : Object(date_util_["nextMonth"])(this.leftDate);
- }
- }
- },
- methods: {
- handleClear: function handleClear() {
- this.minDate = null;
- this.maxDate = null;
- this.leftDate = date_rangevue_type_script_lang_js_calcDefaultValue(this.defaultValue)[0];
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- this.$emit('pick', null);
- },
- handleChangeRange: function handleChangeRange(val) {
- this.minDate = val.minDate;
- this.maxDate = val.maxDate;
- this.rangeState = val.rangeState;
- },
- handleDateInput: function handleDateInput(value, type) {
- this.dateUserInput[type] = value;
- if (value.length !== this.dateFormat.length) return;
- var parsedValue = Object(date_util_["parseDate"])(value, this.dateFormat);
- if (parsedValue) {
- if (typeof this.disabledDate === 'function' && this.disabledDate(new Date(parsedValue))) {
- return;
- }
- if (type === 'min') {
- this.minDate = Object(date_util_["modifyDate"])(this.minDate || new Date(), parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
- this.leftDate = new Date(parsedValue);
- if (!this.unlinkPanels) {
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- }
- } else {
- this.maxDate = Object(date_util_["modifyDate"])(this.maxDate || new Date(), parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
- this.rightDate = new Date(parsedValue);
- if (!this.unlinkPanels) {
- this.leftDate = Object(date_util_["prevMonth"])(parsedValue);
- }
- }
- }
- },
- handleDateChange: function handleDateChange(value, type) {
- var parsedValue = Object(date_util_["parseDate"])(value, this.dateFormat);
- if (parsedValue) {
- if (type === 'min') {
- this.minDate = Object(date_util_["modifyDate"])(this.minDate, parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
- if (this.minDate > this.maxDate) {
- this.maxDate = this.minDate;
- }
- } else {
- this.maxDate = Object(date_util_["modifyDate"])(this.maxDate, parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
- if (this.maxDate < this.minDate) {
- this.minDate = this.maxDate;
- }
- }
- }
- },
- handleTimeInput: function handleTimeInput(value, type) {
- var _this4 = this;
- this.timeUserInput[type] = value;
- if (value.length !== this.timeFormat.length) return;
- var parsedValue = Object(date_util_["parseDate"])(value, this.timeFormat);
- if (parsedValue) {
- if (type === 'min') {
- this.minDate = Object(date_util_["modifyTime"])(this.minDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
- this.$nextTick(function (_) {
- return _this4.$refs.minTimePicker.adjustSpinners();
- });
- } else {
- this.maxDate = Object(date_util_["modifyTime"])(this.maxDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
- this.$nextTick(function (_) {
- return _this4.$refs.maxTimePicker.adjustSpinners();
- });
- }
- }
- },
- handleTimeChange: function handleTimeChange(value, type) {
- var parsedValue = Object(date_util_["parseDate"])(value, this.timeFormat);
- if (parsedValue) {
- if (type === 'min') {
- this.minDate = Object(date_util_["modifyTime"])(this.minDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
- if (this.minDate > this.maxDate) {
- this.maxDate = this.minDate;
- }
- this.$refs.minTimePicker.value = this.minDate;
- this.minTimePickerVisible = false;
- } else {
- this.maxDate = Object(date_util_["modifyTime"])(this.maxDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
- if (this.maxDate < this.minDate) {
- this.minDate = this.maxDate;
- }
- this.$refs.maxTimePicker.value = this.minDate;
- this.maxTimePickerVisible = false;
- }
- }
- },
- handleRangePick: function handleRangePick(val) {
- var _this5 = this;
- var close = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
- var defaultTime = this.defaultTime || [];
- var minDate = Object(date_util_["modifyWithTimeString"])(val.minDate, defaultTime[0]);
- var maxDate = Object(date_util_["modifyWithTimeString"])(val.maxDate, defaultTime[1]);
- if (this.maxDate === maxDate && this.minDate === minDate) {
- return;
- }
- this.onPick && this.onPick(val);
- this.maxDate = maxDate;
- this.minDate = minDate;
- // workaround for https://github.com/ElemeFE/element/issues/7539, should remove this block when we don't have to care about Chromium 55 - 57
- setTimeout(function () {
- _this5.maxDate = maxDate;
- _this5.minDate = minDate;
- }, 10);
- if (!close || this.showTime) return;
- this.handleConfirm();
- },
- handleShortcutClick: function handleShortcutClick(shortcut) {
- if (shortcut.onClick) {
- shortcut.onClick(this);
- }
- },
- handleMinTimePick: function handleMinTimePick(value, visible, first) {
- this.minDate = this.minDate || new Date();
- if (value) {
- this.minDate = Object(date_util_["modifyTime"])(this.minDate, value.getHours(), value.getMinutes(), value.getSeconds());
- }
- if (!first) {
- this.minTimePickerVisible = visible;
- }
- if (!this.maxDate || this.maxDate && this.maxDate.getTime() < this.minDate.getTime()) {
- this.maxDate = new Date(this.minDate);
- }
- },
- handleMinTimeClose: function handleMinTimeClose() {
- this.minTimePickerVisible = false;
- },
- handleMaxTimePick: function handleMaxTimePick(value, visible, first) {
- if (this.maxDate && value) {
- this.maxDate = Object(date_util_["modifyTime"])(this.maxDate, value.getHours(), value.getMinutes(), value.getSeconds());
- }
- if (!first) {
- this.maxTimePickerVisible = visible;
- }
- if (this.maxDate && this.minDate && this.minDate.getTime() > this.maxDate.getTime()) {
- this.minDate = new Date(this.maxDate);
- }
- },
- handleMaxTimeClose: function handleMaxTimeClose() {
- this.maxTimePickerVisible = false;
- },
- // leftPrev*, rightNext* need to take care of `unlinkPanels`
- leftPrevYear: function leftPrevYear() {
- this.leftDate = Object(date_util_["prevYear"])(this.leftDate);
- if (!this.unlinkPanels) {
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- }
- },
- leftPrevMonth: function leftPrevMonth() {
- this.leftDate = Object(date_util_["prevMonth"])(this.leftDate);
- if (!this.unlinkPanels) {
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- }
- },
- rightNextYear: function rightNextYear() {
- if (!this.unlinkPanels) {
- this.leftDate = Object(date_util_["nextYear"])(this.leftDate);
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- } else {
- this.rightDate = Object(date_util_["nextYear"])(this.rightDate);
- }
- },
- rightNextMonth: function rightNextMonth() {
- if (!this.unlinkPanels) {
- this.leftDate = Object(date_util_["nextMonth"])(this.leftDate);
- this.rightDate = Object(date_util_["nextMonth"])(this.leftDate);
- } else {
- this.rightDate = Object(date_util_["nextMonth"])(this.rightDate);
- }
- },
- // leftNext*, rightPrev* are called when `unlinkPanels` is true
- leftNextYear: function leftNextYear() {
- this.leftDate = Object(date_util_["nextYear"])(this.leftDate);
- },
- leftNextMonth: function leftNextMonth() {
- this.leftDate = Object(date_util_["nextMonth"])(this.leftDate);
- },
- rightPrevYear: function rightPrevYear() {
- this.rightDate = Object(date_util_["prevYear"])(this.rightDate);
- },
- rightPrevMonth: function rightPrevMonth() {
- this.rightDate = Object(date_util_["prevMonth"])(this.rightDate);
- },
- handleConfirm: function handleConfirm() {
- var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- if (this.isValidValue([this.minDate, this.maxDate])) {
- this.$emit('pick', [this.minDate, this.maxDate], visible);
- }
- },
- isValidValue: function isValidValue(value) {
- return Array.isArray(value) && value && value[0] && value[1] && Object(date_util_["isDate"])(value[0]) && Object(date_util_["isDate"])(value[1]) && value[0].getTime() <= value[1].getTime() && (typeof this.disabledDate === 'function' ? !this.disabledDate(value[0]) && !this.disabledDate(value[1]) : true);
- },
- resetView: function resetView() {
- // NOTE: this is a hack to reset {min, max}Date on picker open.
- // TODO: correct way of doing so is to refactor {min, max}Date to be dependent on value and internal selection state
- // an alternative would be resetView whenever picker becomes visible, should also investigate date-panel's resetView
- this.minDate = this.value && Object(date_util_["isDate"])(this.value[0]) ? new Date(this.value[0]) : null;
- this.maxDate = this.value && Object(date_util_["isDate"])(this.value[0]) ? new Date(this.value[1]) : null;
- }
- },
- components: { TimePicker: panel_time, DateTable: date_table, ElInput: input_default.a, ElButton: button_default.a }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/date-range.vue?vue&type=script&lang=js&
- /* harmony default export */ var panel_date_rangevue_type_script_lang_js_ = (date_rangevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/date-range.vue
- /* normalize component */
- var date_range_component = normalizeComponent(
- panel_date_rangevue_type_script_lang_js_,
- date_rangevue_type_template_id_2652849a_render,
- date_rangevue_type_template_id_2652849a_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var date_range_api; }
- date_range_component.options.__file = "packages/date-picker/src/panel/date-range.vue"
- /* harmony default export */ var date_range = (date_range_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/month-range.vue?vue&type=template&id=f2645fb8&
- var month_rangevue_type_template_id_f2645fb8_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: {
- "after-leave": function($event) {
- _vm.$emit("dodestroy")
- }
- }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-picker-panel el-date-range-picker el-popper",
- class: [
- {
- "has-sidebar": _vm.$slots.sidebar || _vm.shortcuts
- },
- _vm.popperClass
- ]
- },
- [
- _c(
- "div",
- { staticClass: "el-picker-panel__body-wrapper" },
- [
- _vm._t("sidebar"),
- _vm.shortcuts
- ? _c(
- "div",
- { staticClass: "el-picker-panel__sidebar" },
- _vm._l(_vm.shortcuts, function(shortcut, key) {
- return _c(
- "button",
- {
- key: key,
- staticClass: "el-picker-panel__shortcut",
- attrs: { type: "button" },
- on: {
- click: function($event) {
- _vm.handleShortcutClick(shortcut)
- }
- }
- },
- [_vm._v(_vm._s(shortcut.text))]
- )
- }),
- 0
- )
- : _vm._e(),
- _c("div", { staticClass: "el-picker-panel__body" }, [
- _c(
- "div",
- {
- staticClass:
- "el-picker-panel__content el-date-range-picker__content is-left"
- },
- [
- _c("div", { staticClass: "el-date-range-picker__header" }, [
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-left",
- attrs: { type: "button" },
- on: { click: _vm.leftPrevYear }
- }),
- _vm.unlinkPanels
- ? _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-right",
- class: { "is-disabled": !_vm.enableYearArrow },
- attrs: {
- type: "button",
- disabled: !_vm.enableYearArrow
- },
- on: { click: _vm.leftNextYear }
- })
- : _vm._e(),
- _c("div", [_vm._v(_vm._s(_vm.leftLabel))])
- ]),
- _c("month-table", {
- attrs: {
- "selection-mode": "range",
- date: _vm.leftDate,
- "default-value": _vm.defaultValue,
- "min-date": _vm.minDate,
- "max-date": _vm.maxDate,
- "range-state": _vm.rangeState,
- "disabled-date": _vm.disabledDate
- },
- on: {
- changerange: _vm.handleChangeRange,
- pick: _vm.handleRangePick
- }
- })
- ],
- 1
- ),
- _c(
- "div",
- {
- staticClass:
- "el-picker-panel__content el-date-range-picker__content is-right"
- },
- [
- _c("div", { staticClass: "el-date-range-picker__header" }, [
- _vm.unlinkPanels
- ? _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-left",
- class: { "is-disabled": !_vm.enableYearArrow },
- attrs: {
- type: "button",
- disabled: !_vm.enableYearArrow
- },
- on: { click: _vm.rightPrevYear }
- })
- : _vm._e(),
- _c("button", {
- staticClass:
- "el-picker-panel__icon-btn el-icon-d-arrow-right",
- attrs: { type: "button" },
- on: { click: _vm.rightNextYear }
- }),
- _c("div", [_vm._v(_vm._s(_vm.rightLabel))])
- ]),
- _c("month-table", {
- attrs: {
- "selection-mode": "range",
- date: _vm.rightDate,
- "default-value": _vm.defaultValue,
- "min-date": _vm.minDate,
- "max-date": _vm.maxDate,
- "range-state": _vm.rangeState,
- "disabled-date": _vm.disabledDate
- },
- on: {
- changerange: _vm.handleChangeRange,
- pick: _vm.handleRangePick
- }
- })
- ],
- 1
- )
- ])
- ],
- 2
- )
- ]
- )
- ]
- )
- }
- var month_rangevue_type_template_id_f2645fb8_staticRenderFns = []
- month_rangevue_type_template_id_f2645fb8_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/month-range.vue?vue&type=template&id=f2645fb8&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/month-range.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var month_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultValue(defaultValue) {
- if (Array.isArray(defaultValue)) {
- return [new Date(defaultValue[0]), new Date(defaultValue[1])];
- } else if (defaultValue) {
- return [new Date(defaultValue), Object(date_util_["nextMonth"])(new Date(defaultValue))];
- } else {
- return [new Date(), Object(date_util_["nextMonth"])(new Date())];
- }
- };
- /* harmony default export */ var month_rangevue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- directives: { Clickoutside: clickoutside_default.a },
- computed: {
- btnDisabled: function btnDisabled() {
- return !(this.minDate && this.maxDate && !this.selecting && this.isValidValue([this.minDate, this.maxDate]));
- },
- leftLabel: function leftLabel() {
- return this.leftDate.getFullYear() + ' ' + this.t('el.datepicker.year');
- },
- rightLabel: function rightLabel() {
- return this.rightDate.getFullYear() + ' ' + this.t('el.datepicker.year');
- },
- leftYear: function leftYear() {
- return this.leftDate.getFullYear();
- },
- rightYear: function rightYear() {
- return this.rightDate.getFullYear() === this.leftDate.getFullYear() ? this.leftDate.getFullYear() + 1 : this.rightDate.getFullYear();
- },
- enableYearArrow: function enableYearArrow() {
- return this.unlinkPanels && this.rightYear > this.leftYear + 1;
- }
- },
- data: function data() {
- return {
- popperClass: '',
- value: [],
- defaultValue: null,
- defaultTime: null,
- minDate: '',
- maxDate: '',
- leftDate: new Date(),
- rightDate: Object(date_util_["nextYear"])(new Date()),
- rangeState: {
- endDate: null,
- selecting: false,
- row: null,
- column: null
- },
- shortcuts: '',
- visible: '',
- disabledDate: '',
- format: '',
- arrowControl: false,
- unlinkPanels: false
- };
- },
- watch: {
- value: function value(newVal) {
- if (!newVal) {
- this.minDate = null;
- this.maxDate = null;
- } else if (Array.isArray(newVal)) {
- this.minDate = Object(date_util_["isDate"])(newVal[0]) ? new Date(newVal[0]) : null;
- this.maxDate = Object(date_util_["isDate"])(newVal[1]) ? new Date(newVal[1]) : null;
- if (this.minDate) {
- this.leftDate = this.minDate;
- if (this.unlinkPanels && this.maxDate) {
- var minDateYear = this.minDate.getFullYear();
- var maxDateYear = this.maxDate.getFullYear();
- this.rightDate = minDateYear === maxDateYear ? Object(date_util_["nextYear"])(this.maxDate) : this.maxDate;
- } else {
- this.rightDate = Object(date_util_["nextYear"])(this.leftDate);
- }
- } else {
- this.leftDate = month_rangevue_type_script_lang_js_calcDefaultValue(this.defaultValue)[0];
- this.rightDate = Object(date_util_["nextYear"])(this.leftDate);
- }
- }
- },
- defaultValue: function defaultValue(val) {
- if (!Array.isArray(this.value)) {
- var _calcDefaultValue = month_rangevue_type_script_lang_js_calcDefaultValue(val),
- left = _calcDefaultValue[0],
- right = _calcDefaultValue[1];
- this.leftDate = left;
- this.rightDate = val && val[1] && left.getFullYear() !== right.getFullYear() && this.unlinkPanels ? right : Object(date_util_["nextYear"])(this.leftDate);
- }
- }
- },
- methods: {
- handleClear: function handleClear() {
- this.minDate = null;
- this.maxDate = null;
- this.leftDate = month_rangevue_type_script_lang_js_calcDefaultValue(this.defaultValue)[0];
- this.rightDate = Object(date_util_["nextYear"])(this.leftDate);
- this.$emit('pick', null);
- },
- handleChangeRange: function handleChangeRange(val) {
- this.minDate = val.minDate;
- this.maxDate = val.maxDate;
- this.rangeState = val.rangeState;
- },
- handleRangePick: function handleRangePick(val) {
- var _this = this;
- var close = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
- var defaultTime = this.defaultTime || [];
- var minDate = Object(date_util_["modifyWithTimeString"])(val.minDate, defaultTime[0]);
- var maxDate = Object(date_util_["modifyWithTimeString"])(val.maxDate, defaultTime[1]);
- if (this.maxDate === maxDate && this.minDate === minDate) {
- return;
- }
- this.onPick && this.onPick(val);
- this.maxDate = maxDate;
- this.minDate = minDate;
- // workaround for https://github.com/ElemeFE/element/issues/7539, should remove this block when we don't have to care about Chromium 55 - 57
- setTimeout(function () {
- _this.maxDate = maxDate;
- _this.minDate = minDate;
- }, 10);
- if (!close) return;
- this.handleConfirm();
- },
- handleShortcutClick: function handleShortcutClick(shortcut) {
- if (shortcut.onClick) {
- shortcut.onClick(this);
- }
- },
- // leftPrev*, rightNext* need to take care of `unlinkPanels`
- leftPrevYear: function leftPrevYear() {
- this.leftDate = Object(date_util_["prevYear"])(this.leftDate);
- if (!this.unlinkPanels) {
- this.rightDate = Object(date_util_["prevYear"])(this.rightDate);
- }
- },
- rightNextYear: function rightNextYear() {
- if (!this.unlinkPanels) {
- this.leftDate = Object(date_util_["nextYear"])(this.leftDate);
- }
- this.rightDate = Object(date_util_["nextYear"])(this.rightDate);
- },
- // leftNext*, rightPrev* are called when `unlinkPanels` is true
- leftNextYear: function leftNextYear() {
- this.leftDate = Object(date_util_["nextYear"])(this.leftDate);
- },
- rightPrevYear: function rightPrevYear() {
- this.rightDate = Object(date_util_["prevYear"])(this.rightDate);
- },
- handleConfirm: function handleConfirm() {
- var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- if (this.isValidValue([this.minDate, this.maxDate])) {
- this.$emit('pick', [this.minDate, this.maxDate], visible);
- }
- },
- isValidValue: function isValidValue(value) {
- return Array.isArray(value) && value && value[0] && value[1] && Object(date_util_["isDate"])(value[0]) && Object(date_util_["isDate"])(value[1]) && value[0].getTime() <= value[1].getTime() && (typeof this.disabledDate === 'function' ? !this.disabledDate(value[0]) && !this.disabledDate(value[1]) : true);
- },
- resetView: function resetView() {
- // NOTE: this is a hack to reset {min, max}Date on picker open.
- // TODO: correct way of doing so is to refactor {min, max}Date to be dependent on value and internal selection state
- // an alternative would be resetView whenever picker becomes visible, should also investigate date-panel's resetView
- this.minDate = this.value && Object(date_util_["isDate"])(this.value[0]) ? new Date(this.value[0]) : null;
- this.maxDate = this.value && Object(date_util_["isDate"])(this.value[0]) ? new Date(this.value[1]) : null;
- }
- },
- components: { MonthTable: month_table, ElInput: input_default.a, ElButton: button_default.a }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/month-range.vue?vue&type=script&lang=js&
- /* harmony default export */ var panel_month_rangevue_type_script_lang_js_ = (month_rangevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/month-range.vue
- /* normalize component */
- var month_range_component = normalizeComponent(
- panel_month_rangevue_type_script_lang_js_,
- month_rangevue_type_template_id_f2645fb8_render,
- month_rangevue_type_template_id_f2645fb8_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var month_range_api; }
- month_range_component.options.__file = "packages/date-picker/src/panel/month-range.vue"
- /* harmony default export */ var month_range = (month_range_component.exports);
- // CONCATENATED MODULE: ./packages/date-picker/src/picker/date-picker.js
- var date_picker_getPanel = function getPanel(type) {
- if (type === 'daterange' || type === 'datetimerange') {
- return date_range;
- } else if (type === 'monthrange') {
- return month_range;
- }
- return panel_date;
- };
- /* harmony default export */ var date_picker = ({
- mixins: [picker],
- name: 'ElDatePicker',
- props: {
- type: {
- type: String,
- default: 'date'
- },
- timeArrowControl: Boolean
- },
- watch: {
- type: function type(_type) {
- if (this.picker) {
- this.unmountPicker();
- this.panel = date_picker_getPanel(_type);
- this.mountPicker();
- } else {
- this.panel = date_picker_getPanel(_type);
- }
- }
- },
- created: function created() {
- this.panel = date_picker_getPanel(this.type);
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/index.js
- /* istanbul ignore next */
- date_picker.install = function install(Vue) {
- Vue.component(date_picker.name, date_picker);
- };
- /* harmony default export */ var packages_date_picker = (date_picker);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/time-select.vue?vue&type=template&id=51ab9320&
- var time_selectvue_type_template_id_51ab9320_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: {
- "before-enter": _vm.handleMenuEnter,
- "after-leave": function($event) {
- _vm.$emit("dodestroy")
- }
- }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- ref: "popper",
- staticClass: "el-picker-panel time-select el-popper",
- class: _vm.popperClass,
- style: { width: _vm.width + "px" }
- },
- [
- _c(
- "el-scrollbar",
- {
- attrs: { noresize: "", "wrap-class": "el-picker-panel__content" }
- },
- _vm._l(_vm.items, function(item) {
- return _c(
- "div",
- {
- key: item.value,
- staticClass: "time-select-item",
- class: {
- selected: _vm.value === item.value,
- disabled: item.disabled,
- default: item.value === _vm.defaultValue
- },
- attrs: { disabled: item.disabled },
- on: {
- click: function($event) {
- _vm.handleClick(item)
- }
- }
- },
- [_vm._v(_vm._s(item.value))]
- )
- }),
- 0
- )
- ],
- 1
- )
- ]
- )
- }
- var time_selectvue_type_template_id_51ab9320_staticRenderFns = []
- time_selectvue_type_template_id_51ab9320_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time-select.vue?vue&type=template&id=51ab9320&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/time-select.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var parseTime = function parseTime(time) {
- var values = (time || '').split(':');
- if (values.length >= 2) {
- var hours = parseInt(values[0], 10);
- var minutes = parseInt(values[1], 10);
- return {
- hours: hours,
- minutes: minutes
- };
- }
- /* istanbul ignore next */
- return null;
- };
- var compareTime = function compareTime(time1, time2) {
- var value1 = parseTime(time1);
- var value2 = parseTime(time2);
- var minutes1 = value1.minutes + value1.hours * 60;
- var minutes2 = value2.minutes + value2.hours * 60;
- if (minutes1 === minutes2) {
- return 0;
- }
- return minutes1 > minutes2 ? 1 : -1;
- };
- var formatTime = function formatTime(time) {
- return (time.hours < 10 ? '0' + time.hours : time.hours) + ':' + (time.minutes < 10 ? '0' + time.minutes : time.minutes);
- };
- var nextTime = function nextTime(time, step) {
- var timeValue = parseTime(time);
- var stepValue = parseTime(step);
- var next = {
- hours: timeValue.hours,
- minutes: timeValue.minutes
- };
- next.minutes += stepValue.minutes;
- next.hours += stepValue.hours;
- next.hours += Math.floor(next.minutes / 60);
- next.minutes = next.minutes % 60;
- return formatTime(next);
- };
- /* harmony default export */ var time_selectvue_type_script_lang_js_ = ({
- components: { ElScrollbar: scrollbar_default.a },
- watch: {
- value: function value(val) {
- var _this = this;
- if (!val) return;
- this.$nextTick(function () {
- return _this.scrollToOption();
- });
- }
- },
- methods: {
- handleClick: function handleClick(item) {
- if (!item.disabled) {
- this.$emit('pick', item.value);
- }
- },
- handleClear: function handleClear() {
- this.$emit('pick', null);
- },
- scrollToOption: function scrollToOption() {
- var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '.selected';
- var menu = this.$refs.popper.querySelector('.el-picker-panel__content');
- scroll_into_view_default()(menu, menu.querySelector(selector));
- },
- handleMenuEnter: function handleMenuEnter() {
- var _this2 = this;
- var selected = this.items.map(function (item) {
- return item.value;
- }).indexOf(this.value) !== -1;
- var hasDefault = this.items.map(function (item) {
- return item.value;
- }).indexOf(this.defaultValue) !== -1;
- var option = selected && '.selected' || hasDefault && '.default' || '.time-select-item:not(.disabled)';
- this.$nextTick(function () {
- return _this2.scrollToOption(option);
- });
- },
- scrollDown: function scrollDown(step) {
- var items = this.items;
- var length = items.length;
- var total = items.length;
- var index = items.map(function (item) {
- return item.value;
- }).indexOf(this.value);
- while (total--) {
- index = (index + step + length) % length;
- if (!items[index].disabled) {
- this.$emit('pick', items[index].value, true);
- return;
- }
- }
- },
- isValidValue: function isValidValue(date) {
- return this.items.filter(function (item) {
- return !item.disabled;
- }).map(function (item) {
- return item.value;
- }).indexOf(date) !== -1;
- },
- handleKeydown: function handleKeydown(event) {
- var keyCode = event.keyCode;
- if (keyCode === 38 || keyCode === 40) {
- var mapping = { 40: 1, 38: -1 };
- var offset = mapping[keyCode.toString()];
- this.scrollDown(offset);
- event.stopPropagation();
- return;
- }
- }
- },
- data: function data() {
- return {
- popperClass: '',
- start: '09:00',
- end: '18:00',
- step: '00:30',
- value: '',
- defaultValue: '',
- visible: false,
- minTime: '',
- maxTime: '',
- width: 0
- };
- },
- computed: {
- items: function items() {
- var start = this.start;
- var end = this.end;
- var step = this.step;
- var result = [];
- if (start && end && step) {
- var current = start;
- while (compareTime(current, end) <= 0) {
- result.push({
- value: current,
- disabled: compareTime(current, this.minTime || '-1:-1') <= 0 || compareTime(current, this.maxTime || '100:100') >= 0
- });
- current = nextTime(current, step);
- }
- }
- return result;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time-select.vue?vue&type=script&lang=js&
- /* harmony default export */ var panel_time_selectvue_type_script_lang_js_ = (time_selectvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time-select.vue
- /* normalize component */
- var time_select_component = normalizeComponent(
- panel_time_selectvue_type_script_lang_js_,
- time_selectvue_type_template_id_51ab9320_render,
- time_selectvue_type_template_id_51ab9320_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var time_select_api; }
- time_select_component.options.__file = "packages/date-picker/src/panel/time-select.vue"
- /* harmony default export */ var time_select = (time_select_component.exports);
- // CONCATENATED MODULE: ./packages/date-picker/src/picker/time-select.js
- /* harmony default export */ var picker_time_select = ({
- mixins: [picker],
- name: 'ElTimeSelect',
- componentName: 'ElTimeSelect',
- props: {
- type: {
- type: String,
- default: 'time-select'
- }
- },
- beforeCreate: function beforeCreate() {
- this.panel = time_select;
- }
- });
- // CONCATENATED MODULE: ./packages/time-select/index.js
- /* istanbul ignore next */
- picker_time_select.install = function (Vue) {
- Vue.component(picker_time_select.name, picker_time_select);
- };
- /* harmony default export */ var packages_time_select = (picker_time_select);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/time-range.vue?vue&type=template&id=fb28660e&
- var time_rangevue_type_template_id_fb28660e_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-zoom-in-top" },
- on: {
- "after-leave": function($event) {
- _vm.$emit("dodestroy")
- }
- }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-time-range-picker el-picker-panel el-popper",
- class: _vm.popperClass
- },
- [
- _c("div", { staticClass: "el-time-range-picker__content" }, [
- _c("div", { staticClass: "el-time-range-picker__cell" }, [
- _c("div", { staticClass: "el-time-range-picker__header" }, [
- _vm._v(_vm._s(_vm.t("el.datepicker.startTime")))
- ]),
- _c(
- "div",
- {
- staticClass:
- "el-time-range-picker__body el-time-panel__content",
- class: {
- "has-seconds": _vm.showSeconds,
- "is-arrow": _vm.arrowControl
- }
- },
- [
- _c("time-spinner", {
- ref: "minSpinner",
- attrs: {
- "show-seconds": _vm.showSeconds,
- "am-pm-mode": _vm.amPmMode,
- "arrow-control": _vm.arrowControl,
- date: _vm.minDate
- },
- on: {
- change: _vm.handleMinChange,
- "select-range": _vm.setMinSelectionRange
- }
- })
- ],
- 1
- )
- ]),
- _c("div", { staticClass: "el-time-range-picker__cell" }, [
- _c("div", { staticClass: "el-time-range-picker__header" }, [
- _vm._v(_vm._s(_vm.t("el.datepicker.endTime")))
- ]),
- _c(
- "div",
- {
- staticClass:
- "el-time-range-picker__body el-time-panel__content",
- class: {
- "has-seconds": _vm.showSeconds,
- "is-arrow": _vm.arrowControl
- }
- },
- [
- _c("time-spinner", {
- ref: "maxSpinner",
- attrs: {
- "show-seconds": _vm.showSeconds,
- "am-pm-mode": _vm.amPmMode,
- "arrow-control": _vm.arrowControl,
- date: _vm.maxDate
- },
- on: {
- change: _vm.handleMaxChange,
- "select-range": _vm.setMaxSelectionRange
- }
- })
- ],
- 1
- )
- ])
- ]),
- _c("div", { staticClass: "el-time-panel__footer" }, [
- _c(
- "button",
- {
- staticClass: "el-time-panel__btn cancel",
- attrs: { type: "button" },
- on: {
- click: function($event) {
- _vm.handleCancel()
- }
- }
- },
- [_vm._v(_vm._s(_vm.t("el.datepicker.cancel")))]
- ),
- _c(
- "button",
- {
- staticClass: "el-time-panel__btn confirm",
- attrs: { type: "button", disabled: _vm.btnDisabled },
- on: {
- click: function($event) {
- _vm.handleConfirm()
- }
- }
- },
- [_vm._v(_vm._s(_vm.t("el.datepicker.confirm")))]
- )
- ])
- ]
- )
- ]
- )
- }
- var time_rangevue_type_template_id_fb28660e_staticRenderFns = []
- time_rangevue_type_template_id_fb28660e_render._withStripped = true
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time-range.vue?vue&type=template&id=fb28660e&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/date-picker/src/panel/time-range.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var MIN_TIME = Object(date_util_["parseDate"])('00:00:00', 'HH:mm:ss');
- var MAX_TIME = Object(date_util_["parseDate"])('23:59:59', 'HH:mm:ss');
- var time_rangevue_type_script_lang_js_minTimeOfDay = function minTimeOfDay(date) {
- return Object(date_util_["modifyDate"])(MIN_TIME, date.getFullYear(), date.getMonth(), date.getDate());
- };
- var time_rangevue_type_script_lang_js_maxTimeOfDay = function maxTimeOfDay(date) {
- return Object(date_util_["modifyDate"])(MAX_TIME, date.getFullYear(), date.getMonth(), date.getDate());
- };
- // increase time by amount of milliseconds, but within the range of day
- var advanceTime = function advanceTime(date, amount) {
- return new Date(Math.min(date.getTime() + amount, time_rangevue_type_script_lang_js_maxTimeOfDay(date).getTime()));
- };
- /* harmony default export */ var time_rangevue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- components: { TimeSpinner: time_spinner },
- computed: {
- showSeconds: function showSeconds() {
- return (this.format || '').indexOf('ss') !== -1;
- },
- offset: function offset() {
- return this.showSeconds ? 11 : 8;
- },
- spinner: function spinner() {
- return this.selectionRange[0] < this.offset ? this.$refs.minSpinner : this.$refs.maxSpinner;
- },
- btnDisabled: function btnDisabled() {
- return this.minDate.getTime() > this.maxDate.getTime();
- },
- amPmMode: function amPmMode() {
- if ((this.format || '').indexOf('A') !== -1) return 'A';
- if ((this.format || '').indexOf('a') !== -1) return 'a';
- return '';
- }
- },
- data: function data() {
- return {
- popperClass: '',
- minDate: new Date(),
- maxDate: new Date(),
- value: [],
- oldValue: [new Date(), new Date()],
- defaultValue: null,
- format: 'HH:mm:ss',
- visible: false,
- selectionRange: [0, 2],
- arrowControl: false
- };
- },
- watch: {
- value: function value(_value) {
- if (Array.isArray(_value)) {
- this.minDate = new Date(_value[0]);
- this.maxDate = new Date(_value[1]);
- } else {
- if (Array.isArray(this.defaultValue)) {
- this.minDate = new Date(this.defaultValue[0]);
- this.maxDate = new Date(this.defaultValue[1]);
- } else if (this.defaultValue) {
- this.minDate = new Date(this.defaultValue);
- this.maxDate = advanceTime(new Date(this.defaultValue), 60 * 60 * 1000);
- } else {
- this.minDate = new Date();
- this.maxDate = advanceTime(new Date(), 60 * 60 * 1000);
- }
- }
- },
- visible: function visible(val) {
- var _this = this;
- if (val) {
- this.oldValue = this.value;
- this.$nextTick(function () {
- return _this.$refs.minSpinner.emitSelectRange('hours');
- });
- }
- }
- },
- methods: {
- handleClear: function handleClear() {
- this.$emit('pick', null);
- },
- handleCancel: function handleCancel() {
- this.$emit('pick', this.oldValue);
- },
- handleMinChange: function handleMinChange(date) {
- this.minDate = Object(date_util_["clearMilliseconds"])(date);
- this.handleChange();
- },
- handleMaxChange: function handleMaxChange(date) {
- this.maxDate = Object(date_util_["clearMilliseconds"])(date);
- this.handleChange();
- },
- handleChange: function handleChange() {
- if (this.isValidValue([this.minDate, this.maxDate])) {
- this.$refs.minSpinner.selectableRange = [[time_rangevue_type_script_lang_js_minTimeOfDay(this.minDate), this.maxDate]];
- this.$refs.maxSpinner.selectableRange = [[this.minDate, time_rangevue_type_script_lang_js_maxTimeOfDay(this.maxDate)]];
- this.$emit('pick', [this.minDate, this.maxDate], true);
- }
- },
- setMinSelectionRange: function setMinSelectionRange(start, end) {
- this.$emit('select-range', start, end, 'min');
- this.selectionRange = [start, end];
- },
- setMaxSelectionRange: function setMaxSelectionRange(start, end) {
- this.$emit('select-range', start, end, 'max');
- this.selectionRange = [start + this.offset, end + this.offset];
- },
- handleConfirm: function handleConfirm() {
- var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- var minSelectableRange = this.$refs.minSpinner.selectableRange;
- var maxSelectableRange = this.$refs.maxSpinner.selectableRange;
- this.minDate = Object(date_util_["limitTimeRange"])(this.minDate, minSelectableRange, this.format);
- this.maxDate = Object(date_util_["limitTimeRange"])(this.maxDate, maxSelectableRange, this.format);
- this.$emit('pick', [this.minDate, this.maxDate], visible);
- },
- adjustSpinners: function adjustSpinners() {
- this.$refs.minSpinner.adjustSpinners();
- this.$refs.maxSpinner.adjustSpinners();
- },
- changeSelectionRange: function changeSelectionRange(step) {
- var list = this.showSeconds ? [0, 3, 6, 11, 14, 17] : [0, 3, 8, 11];
- var mapping = ['hours', 'minutes'].concat(this.showSeconds ? ['seconds'] : []);
- var index = list.indexOf(this.selectionRange[0]);
- var next = (index + step + list.length) % list.length;
- var half = list.length / 2;
- if (next < half) {
- this.$refs.minSpinner.emitSelectRange(mapping[next]);
- } else {
- this.$refs.maxSpinner.emitSelectRange(mapping[next - half]);
- }
- },
- isValidValue: function isValidValue(date) {
- return Array.isArray(date) && Object(date_util_["timeWithinRange"])(this.minDate, this.$refs.minSpinner.selectableRange) && Object(date_util_["timeWithinRange"])(this.maxDate, this.$refs.maxSpinner.selectableRange);
- },
- handleKeydown: function handleKeydown(event) {
- var keyCode = event.keyCode;
- var mapping = { 38: -1, 40: 1, 37: -1, 39: 1 };
- // Left or Right
- if (keyCode === 37 || keyCode === 39) {
- var step = mapping[keyCode];
- this.changeSelectionRange(step);
- event.preventDefault();
- return;
- }
- // Up or Down
- if (keyCode === 38 || keyCode === 40) {
- var _step = mapping[keyCode];
- this.spinner.scrollDown(_step);
- event.preventDefault();
- return;
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time-range.vue?vue&type=script&lang=js&
- /* harmony default export */ var panel_time_rangevue_type_script_lang_js_ = (time_rangevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/date-picker/src/panel/time-range.vue
- /* normalize component */
- var time_range_component = normalizeComponent(
- panel_time_rangevue_type_script_lang_js_,
- time_rangevue_type_template_id_fb28660e_render,
- time_rangevue_type_template_id_fb28660e_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var time_range_api; }
- time_range_component.options.__file = "packages/date-picker/src/panel/time-range.vue"
- /* harmony default export */ var time_range = (time_range_component.exports);
- // CONCATENATED MODULE: ./packages/date-picker/src/picker/time-picker.js
- /* harmony default export */ var time_picker = ({
- mixins: [picker],
- name: 'ElTimePicker',
- props: {
- isRange: Boolean,
- arrowControl: Boolean
- },
- data: function data() {
- return {
- type: ''
- };
- },
- watch: {
- isRange: function isRange(_isRange) {
- if (this.picker) {
- this.unmountPicker();
- this.type = _isRange ? 'timerange' : 'time';
- this.panel = _isRange ? time_range : panel_time;
- this.mountPicker();
- } else {
- this.type = _isRange ? 'timerange' : 'time';
- this.panel = _isRange ? time_range : panel_time;
- }
- }
- },
- created: function created() {
- this.type = this.isRange ? 'timerange' : 'time';
- this.panel = this.isRange ? time_range : panel_time;
- }
- });
- // CONCATENATED MODULE: ./packages/time-picker/index.js
- /* istanbul ignore next */
- time_picker.install = function (Vue) {
- Vue.component(time_picker.name, time_picker);
- };
- /* harmony default export */ var packages_time_picker = (time_picker);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/popover/src/main.vue?vue&type=template&id=52060272&
- var mainvue_type_template_id_52060272_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "span",
- [
- _c(
- "transition",
- {
- attrs: { name: _vm.transition },
- on: {
- "after-enter": _vm.handleAfterEnter,
- "after-leave": _vm.handleAfterLeave
- }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: !_vm.disabled && _vm.showPopper,
- expression: "!disabled && showPopper"
- }
- ],
- ref: "popper",
- staticClass: "el-popover el-popper",
- class: [_vm.popperClass, _vm.content && "el-popover--plain"],
- style: { width: _vm.width + "px" },
- attrs: {
- role: "tooltip",
- id: _vm.tooltipId,
- "aria-hidden":
- _vm.disabled || !_vm.showPopper ? "true" : "false"
- }
- },
- [
- _vm.title
- ? _c("div", {
- staticClass: "el-popover__title",
- domProps: { textContent: _vm._s(_vm.title) }
- })
- : _vm._e(),
- _vm._t("default", [_vm._v(_vm._s(_vm.content))])
- ],
- 2
- )
- ]
- ),
- _vm._t("reference")
- ],
- 2
- )
- }
- var mainvue_type_template_id_52060272_staticRenderFns = []
- mainvue_type_template_id_52060272_render._withStripped = true
- // CONCATENATED MODULE: ./packages/popover/src/main.vue?vue&type=template&id=52060272&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/popover/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var mainvue_type_script_lang_js_ = ({
- name: 'ElPopover',
- mixins: [vue_popper_default.a],
- props: {
- trigger: {
- type: String,
- default: 'click',
- validator: function validator(value) {
- return ['click', 'focus', 'hover', 'manual'].indexOf(value) > -1;
- }
- },
- openDelay: {
- type: Number,
- default: 0
- },
- title: String,
- disabled: Boolean,
- content: String,
- reference: {},
- popperClass: String,
- width: {},
- visibleArrow: {
- default: true
- },
- arrowOffset: {
- type: Number,
- default: 0
- },
- transition: {
- type: String,
- default: 'fade-in-linear'
- },
- tabindex: {
- type: Number,
- default: 0
- }
- },
- computed: {
- tooltipId: function tooltipId() {
- return 'el-popover-' + Object(util_["generateId"])();
- }
- },
- watch: {
- showPopper: function showPopper(val) {
- if (this.disabled) {
- return;
- }
- val ? this.$emit('show') : this.$emit('hide');
- }
- },
- mounted: function mounted() {
- var _this = this;
- var reference = this.referenceElm = this.reference || this.$refs.reference;
- var popper = this.popper || this.$refs.popper;
- if (!reference && this.$slots.reference && this.$slots.reference[0]) {
- reference = this.referenceElm = this.$slots.reference[0].elm;
- }
- // 可访问性
- if (reference) {
- Object(dom_["addClass"])(reference, 'el-popover__reference');
- reference.setAttribute('aria-describedby', this.tooltipId);
- reference.setAttribute('tabindex', this.tabindex); // tab序列
- popper.setAttribute('tabindex', 0);
- if (this.trigger !== 'click') {
- Object(dom_["on"])(reference, 'focusin', function () {
- _this.handleFocus();
- var instance = reference.__vue__;
- if (instance && typeof instance.focus === 'function') {
- instance.focus();
- }
- });
- Object(dom_["on"])(popper, 'focusin', this.handleFocus);
- Object(dom_["on"])(reference, 'focusout', this.handleBlur);
- Object(dom_["on"])(popper, 'focusout', this.handleBlur);
- }
- Object(dom_["on"])(reference, 'keydown', this.handleKeydown);
- Object(dom_["on"])(reference, 'click', this.handleClick);
- }
- if (this.trigger === 'click') {
- Object(dom_["on"])(reference, 'click', this.doToggle);
- Object(dom_["on"])(document, 'click', this.handleDocumentClick);
- } else if (this.trigger === 'hover') {
- Object(dom_["on"])(reference, 'mouseenter', this.handleMouseEnter);
- Object(dom_["on"])(popper, 'mouseenter', this.handleMouseEnter);
- Object(dom_["on"])(reference, 'mouseleave', this.handleMouseLeave);
- Object(dom_["on"])(popper, 'mouseleave', this.handleMouseLeave);
- } else if (this.trigger === 'focus') {
- if (this.tabindex < 0) {
- console.warn('[Element Warn][Popover]a negative taindex means that the element cannot be focused by tab key');
- }
- if (reference.querySelector('input, textarea')) {
- Object(dom_["on"])(reference, 'focusin', this.doShow);
- Object(dom_["on"])(reference, 'focusout', this.doClose);
- } else {
- Object(dom_["on"])(reference, 'mousedown', this.doShow);
- Object(dom_["on"])(reference, 'mouseup', this.doClose);
- }
- }
- },
- beforeDestroy: function beforeDestroy() {
- this.cleanup();
- },
- deactivated: function deactivated() {
- this.cleanup();
- },
- methods: {
- doToggle: function doToggle() {
- this.showPopper = !this.showPopper;
- },
- doShow: function doShow() {
- this.showPopper = true;
- },
- doClose: function doClose() {
- this.showPopper = false;
- },
- handleFocus: function handleFocus() {
- Object(dom_["addClass"])(this.referenceElm, 'focusing');
- if (this.trigger === 'click' || this.trigger === 'focus') this.showPopper = true;
- },
- handleClick: function handleClick() {
- Object(dom_["removeClass"])(this.referenceElm, 'focusing');
- },
- handleBlur: function handleBlur() {
- Object(dom_["removeClass"])(this.referenceElm, 'focusing');
- if (this.trigger === 'click' || this.trigger === 'focus') this.showPopper = false;
- },
- handleMouseEnter: function handleMouseEnter() {
- var _this2 = this;
- clearTimeout(this._timer);
- if (this.openDelay) {
- this._timer = setTimeout(function () {
- _this2.showPopper = true;
- }, this.openDelay);
- } else {
- this.showPopper = true;
- }
- },
- handleKeydown: function handleKeydown(ev) {
- if (ev.keyCode === 27 && this.trigger !== 'manual') {
- // esc
- this.doClose();
- }
- },
- handleMouseLeave: function handleMouseLeave() {
- var _this3 = this;
- clearTimeout(this._timer);
- this._timer = setTimeout(function () {
- _this3.showPopper = false;
- }, 200);
- },
- handleDocumentClick: function handleDocumentClick(e) {
- var reference = this.reference || this.$refs.reference;
- var popper = this.popper || this.$refs.popper;
- if (!reference && this.$slots.reference && this.$slots.reference[0]) {
- reference = this.referenceElm = this.$slots.reference[0].elm;
- }
- if (!this.$el || !reference || this.$el.contains(e.target) || reference.contains(e.target) || !popper || popper.contains(e.target)) return;
- this.showPopper = false;
- },
- handleAfterEnter: function handleAfterEnter() {
- this.$emit('after-enter');
- },
- handleAfterLeave: function handleAfterLeave() {
- this.$emit('after-leave');
- this.doDestroy();
- },
- cleanup: function cleanup() {
- if (this.openDelay) {
- clearTimeout(this._timer);
- }
- }
- },
- destroyed: function destroyed() {
- var reference = this.reference;
- Object(dom_["off"])(reference, 'click', this.doToggle);
- Object(dom_["off"])(reference, 'mouseup', this.doClose);
- Object(dom_["off"])(reference, 'mousedown', this.doShow);
- Object(dom_["off"])(reference, 'focusin', this.doShow);
- Object(dom_["off"])(reference, 'focusout', this.doClose);
- Object(dom_["off"])(reference, 'mousedown', this.doShow);
- Object(dom_["off"])(reference, 'mouseup', this.doClose);
- Object(dom_["off"])(reference, 'mouseleave', this.handleMouseLeave);
- Object(dom_["off"])(reference, 'mouseenter', this.handleMouseEnter);
- Object(dom_["off"])(document, 'click', this.handleDocumentClick);
- }
- });
- // CONCATENATED MODULE: ./packages/popover/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/popover/src/main.vue
- /* normalize component */
- var main_component = normalizeComponent(
- src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_52060272_render,
- mainvue_type_template_id_52060272_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var main_api; }
- main_component.options.__file = "packages/popover/src/main.vue"
- /* harmony default export */ var main = (main_component.exports);
- // CONCATENATED MODULE: ./packages/popover/src/directive.js
- var getReference = function getReference(el, binding, vnode) {
- var _ref = binding.expression ? binding.value : binding.arg;
- var popper = vnode.context.$refs[_ref];
- if (popper) {
- if (Array.isArray(popper)) {
- popper[0].$refs.reference = el;
- } else {
- popper.$refs.reference = el;
- }
- }
- };
- /* harmony default export */ var directive = ({
- bind: function bind(el, binding, vnode) {
- getReference(el, binding, vnode);
- },
- inserted: function inserted(el, binding, vnode) {
- getReference(el, binding, vnode);
- }
- });
- // CONCATENATED MODULE: ./packages/popover/index.js
- external_vue_default.a.directive('popover', directive);
- /* istanbul ignore next */
- main.install = function (Vue) {
- Vue.directive('popover', directive);
- Vue.component(main.name, main);
- };
- main.directive = directive;
- /* harmony default export */ var popover = (main);
- // CONCATENATED MODULE: ./packages/tooltip/src/main.js
- /* harmony default export */ var src_main = ({
- name: 'ElTooltip',
- mixins: [vue_popper_default.a],
- props: {
- openDelay: {
- type: Number,
- default: 0
- },
- disabled: Boolean,
- manual: Boolean,
- effect: {
- type: String,
- default: 'dark'
- },
- arrowOffset: {
- type: Number,
- default: 0
- },
- popperClass: String,
- content: String,
- visibleArrow: {
- default: true
- },
- transition: {
- type: String,
- default: 'el-fade-in-linear'
- },
- popperOptions: {
- default: function _default() {
- return {
- boundariesPadding: 10,
- gpuAcceleration: false
- };
- }
- },
- enterable: {
- type: Boolean,
- default: true
- },
- hideAfter: {
- type: Number,
- default: 0
- },
- tabindex: {
- type: Number,
- default: 0
- }
- },
- data: function data() {
- return {
- tooltipId: 'el-tooltip-' + Object(util_["generateId"])(),
- timeoutPending: null,
- focusing: false
- };
- },
- beforeCreate: function beforeCreate() {
- var _this = this;
- if (this.$isServer) return;
- this.popperVM = new external_vue_default.a({
- data: { node: '' },
- render: function render(h) {
- return this.node;
- }
- }).$mount();
- this.debounceClose = debounce_default()(200, function () {
- return _this.handleClosePopper();
- });
- },
- render: function render(h) {
- var _this2 = this;
- if (this.popperVM) {
- this.popperVM.node = h(
- 'transition',
- {
- attrs: {
- name: this.transition
- },
- on: {
- 'afterLeave': this.doDestroy
- }
- },
- [h(
- 'div',
- {
- on: {
- 'mouseleave': function mouseleave() {
- _this2.setExpectedState(false);_this2.debounceClose();
- },
- 'mouseenter': function mouseenter() {
- _this2.setExpectedState(true);
- }
- },
- ref: 'popper',
- attrs: { role: 'tooltip',
- id: this.tooltipId,
- 'aria-hidden': this.disabled || !this.showPopper ? 'true' : 'false'
- },
- directives: [{
- name: 'show',
- value: !this.disabled && this.showPopper
- }],
- 'class': ['el-tooltip__popper', 'is-' + this.effect, this.popperClass] },
- [this.$slots.content || this.content]
- )]
- );
- }
- var firstElement = this.getFirstElement();
- if (!firstElement) return null;
- var data = firstElement.data = firstElement.data || {};
- data.staticClass = this.addTooltipClass(data.staticClass);
- return firstElement;
- },
- mounted: function mounted() {
- var _this3 = this;
- this.referenceElm = this.$el;
- if (this.$el.nodeType === 1) {
- this.$el.setAttribute('aria-describedby', this.tooltipId);
- this.$el.setAttribute('tabindex', 0);
- Object(dom_["on"])(this.referenceElm, 'mouseenter', this.show);
- Object(dom_["on"])(this.referenceElm, 'mouseleave', this.hide);
- Object(dom_["on"])(this.referenceElm, 'focus', function () {
- if (!_this3.$slots.default || !_this3.$slots.default.length) {
- _this3.handleFocus();
- return;
- }
- var instance = _this3.$slots.default[0].componentInstance;
- if (instance && instance.focus) {
- instance.focus();
- } else {
- _this3.handleFocus();
- }
- });
- Object(dom_["on"])(this.referenceElm, 'blur', this.handleBlur);
- Object(dom_["on"])(this.referenceElm, 'click', this.removeFocusing);
- }
- // fix issue https://github.com/ElemeFE/element/issues/14424
- if (this.value && this.popperVM) {
- this.popperVM.$nextTick(function () {
- if (_this3.value) {
- _this3.updatePopper();
- }
- });
- }
- },
- watch: {
- focusing: function focusing(val) {
- if (val) {
- Object(dom_["addClass"])(this.referenceElm, 'focusing');
- } else {
- Object(dom_["removeClass"])(this.referenceElm, 'focusing');
- }
- }
- },
- methods: {
- show: function show() {
- this.setExpectedState(true);
- this.handleShowPopper();
- },
- hide: function hide() {
- this.setExpectedState(false);
- this.debounceClose();
- },
- handleFocus: function handleFocus() {
- this.focusing = true;
- this.show();
- },
- handleBlur: function handleBlur() {
- this.focusing = false;
- this.hide();
- },
- removeFocusing: function removeFocusing() {
- this.focusing = false;
- },
- addTooltipClass: function addTooltipClass(prev) {
- if (!prev) {
- return 'el-tooltip';
- } else {
- return 'el-tooltip ' + prev.replace('el-tooltip', '');
- }
- },
- handleShowPopper: function handleShowPopper() {
- var _this4 = this;
- if (!this.expectedState || this.manual) return;
- clearTimeout(this.timeout);
- this.timeout = setTimeout(function () {
- _this4.showPopper = true;
- }, this.openDelay);
- if (this.hideAfter > 0) {
- this.timeoutPending = setTimeout(function () {
- _this4.showPopper = false;
- }, this.hideAfter);
- }
- },
- handleClosePopper: function handleClosePopper() {
- if (this.enterable && this.expectedState || this.manual) return;
- clearTimeout(this.timeout);
- if (this.timeoutPending) {
- clearTimeout(this.timeoutPending);
- }
- this.showPopper = false;
- if (this.disabled) {
- this.doDestroy();
- }
- },
- setExpectedState: function setExpectedState(expectedState) {
- if (expectedState === false) {
- clearTimeout(this.timeoutPending);
- }
- this.expectedState = expectedState;
- },
- getFirstElement: function getFirstElement() {
- var slots = this.$slots.default;
- if (!Array.isArray(slots)) return null;
- var element = null;
- for (var index = 0; index < slots.length; index++) {
- if (slots[index] && slots[index].tag) {
- element = slots[index];
- };
- }
- return element;
- }
- },
- beforeDestroy: function beforeDestroy() {
- this.popperVM && this.popperVM.$destroy();
- },
- destroyed: function destroyed() {
- var reference = this.referenceElm;
- if (reference.nodeType === 1) {
- Object(dom_["off"])(reference, 'mouseenter', this.show);
- Object(dom_["off"])(reference, 'mouseleave', this.hide);
- Object(dom_["off"])(reference, 'focus', this.handleFocus);
- Object(dom_["off"])(reference, 'blur', this.handleBlur);
- Object(dom_["off"])(reference, 'click', this.removeFocusing);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/tooltip/index.js
- /* istanbul ignore next */
- src_main.install = function (Vue) {
- Vue.component(src_main.name, src_main);
- };
- /* harmony default export */ var packages_tooltip = (src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/message-box/src/main.vue?vue&type=template&id=6b29b012&
- var mainvue_type_template_id_6b29b012_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("transition", { attrs: { name: "msgbox-fade" } }, [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-message-box__wrapper",
- attrs: {
- tabindex: "-1",
- role: "dialog",
- "aria-modal": "true",
- "aria-label": _vm.title || "dialog"
- },
- on: {
- click: function($event) {
- if ($event.target !== $event.currentTarget) {
- return null
- }
- return _vm.handleWrapperClick($event)
- }
- }
- },
- [
- _c(
- "div",
- {
- staticClass: "el-message-box",
- class: [_vm.customClass, _vm.center && "el-message-box--center"]
- },
- [
- _vm.title !== null
- ? _c("div", { staticClass: "el-message-box__header" }, [
- _c("div", { staticClass: "el-message-box__title" }, [
- _vm.icon && _vm.center
- ? _c("div", {
- class: ["el-message-box__status", _vm.icon]
- })
- : _vm._e(),
- _c("span", [_vm._v(_vm._s(_vm.title))])
- ]),
- _vm.showClose
- ? _c(
- "button",
- {
- staticClass: "el-message-box__headerbtn",
- attrs: { type: "button", "aria-label": "Close" },
- on: {
- click: function($event) {
- _vm.handleAction(
- _vm.distinguishCancelAndClose
- ? "close"
- : "cancel"
- )
- },
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "enter",
- 13,
- $event.key,
- "Enter"
- )
- ) {
- return null
- }
- _vm.handleAction(
- _vm.distinguishCancelAndClose
- ? "close"
- : "cancel"
- )
- }
- }
- },
- [
- _c("i", {
- staticClass: "el-message-box__close el-icon-close"
- })
- ]
- )
- : _vm._e()
- ])
- : _vm._e(),
- _c("div", { staticClass: "el-message-box__content" }, [
- _vm.icon && !_vm.center && _vm.message !== ""
- ? _c("div", { class: ["el-message-box__status", _vm.icon] })
- : _vm._e(),
- _vm.message !== ""
- ? _c(
- "div",
- { staticClass: "el-message-box__message" },
- [
- _vm._t("default", [
- !_vm.dangerouslyUseHTMLString
- ? _c("p", [_vm._v(_vm._s(_vm.message))])
- : _c("p", {
- domProps: { innerHTML: _vm._s(_vm.message) }
- })
- ])
- ],
- 2
- )
- : _vm._e(),
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showInput,
- expression: "showInput"
- }
- ],
- staticClass: "el-message-box__input"
- },
- [
- _c("el-input", {
- ref: "input",
- attrs: {
- type: _vm.inputType,
- placeholder: _vm.inputPlaceholder
- },
- nativeOn: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "enter",
- 13,
- $event.key,
- "Enter"
- )
- ) {
- return null
- }
- return _vm.handleInputEnter($event)
- }
- },
- model: {
- value: _vm.inputValue,
- callback: function($$v) {
- _vm.inputValue = $$v
- },
- expression: "inputValue"
- }
- }),
- _c(
- "div",
- {
- staticClass: "el-message-box__errormsg",
- style: {
- visibility: !!_vm.editorErrorMessage
- ? "visible"
- : "hidden"
- }
- },
- [_vm._v(_vm._s(_vm.editorErrorMessage))]
- )
- ],
- 1
- )
- ]),
- _c(
- "div",
- { staticClass: "el-message-box__btns" },
- [
- _vm.showCancelButton
- ? _c(
- "el-button",
- {
- class: [_vm.cancelButtonClasses],
- attrs: {
- loading: _vm.cancelButtonLoading,
- round: _vm.roundButton,
- size: "small"
- },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "enter",
- 13,
- $event.key,
- "Enter"
- )
- ) {
- return null
- }
- _vm.handleAction("cancel")
- }
- },
- nativeOn: {
- click: function($event) {
- _vm.handleAction("cancel")
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(
- _vm.cancelButtonText ||
- _vm.t("el.messagebox.cancel")
- ) +
- "\n "
- )
- ]
- )
- : _vm._e(),
- _c(
- "el-button",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showConfirmButton,
- expression: "showConfirmButton"
- }
- ],
- ref: "confirm",
- class: [_vm.confirmButtonClasses],
- attrs: {
- loading: _vm.confirmButtonLoading,
- round: _vm.roundButton,
- size: "small"
- },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "enter",
- 13,
- $event.key,
- "Enter"
- )
- ) {
- return null
- }
- _vm.handleAction("confirm")
- }
- },
- nativeOn: {
- click: function($event) {
- _vm.handleAction("confirm")
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(
- _vm.confirmButtonText ||
- _vm.t("el.messagebox.confirm")
- ) +
- "\n "
- )
- ]
- )
- ],
- 1
- )
- ]
- )
- ]
- )
- ])
- }
- var mainvue_type_template_id_6b29b012_staticRenderFns = []
- mainvue_type_template_id_6b29b012_render._withStripped = true
- // CONCATENATED MODULE: ./packages/message-box/src/main.vue?vue&type=template&id=6b29b012&
- // EXTERNAL MODULE: external "element-ui/lib/utils/aria-dialog"
- var aria_dialog_ = __webpack_require__(37);
- var aria_dialog_default = /*#__PURE__*/__webpack_require__.n(aria_dialog_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/message-box/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var messageBox = void 0;
- var typeMap = {
- success: 'success',
- info: 'info',
- warning: 'warning',
- error: 'error'
- };
- /* harmony default export */ var message_box_src_mainvue_type_script_lang_js_ = ({
- mixins: [popup_default.a, locale_default.a],
- props: {
- modal: {
- default: true
- },
- lockScroll: {
- default: true
- },
- showClose: {
- type: Boolean,
- default: true
- },
- closeOnClickModal: {
- default: true
- },
- closeOnPressEscape: {
- default: true
- },
- closeOnHashChange: {
- default: true
- },
- center: {
- default: false,
- type: Boolean
- },
- roundButton: {
- default: false,
- type: Boolean
- }
- },
- components: {
- ElInput: input_default.a,
- ElButton: button_default.a
- },
- computed: {
- icon: function icon() {
- var type = this.type,
- iconClass = this.iconClass;
- return iconClass || (type && typeMap[type] ? 'el-icon-' + typeMap[type] : '');
- },
- confirmButtonClasses: function confirmButtonClasses() {
- return 'el-button--primary ' + this.confirmButtonClass;
- },
- cancelButtonClasses: function cancelButtonClasses() {
- return '' + this.cancelButtonClass;
- }
- },
- methods: {
- getSafeClose: function getSafeClose() {
- var _this = this;
- var currentId = this.uid;
- return function () {
- _this.$nextTick(function () {
- if (currentId === _this.uid) _this.doClose();
- });
- };
- },
- doClose: function doClose() {
- var _this2 = this;
- if (!this.visible) return;
- this.visible = false;
- this._closing = true;
- this.onClose && this.onClose();
- messageBox.closeDialog(); // 解绑
- if (this.lockScroll) {
- setTimeout(this.restoreBodyStyle, 200);
- }
- this.opened = false;
- this.doAfterClose();
- setTimeout(function () {
- if (_this2.action) _this2.callback(_this2.action, _this2);
- });
- },
- handleWrapperClick: function handleWrapperClick() {
- if (this.closeOnClickModal) {
- this.handleAction(this.distinguishCancelAndClose ? 'close' : 'cancel');
- }
- },
- handleInputEnter: function handleInputEnter() {
- if (this.inputType !== 'textarea') {
- return this.handleAction('confirm');
- }
- },
- handleAction: function handleAction(action) {
- if (this.$type === 'prompt' && action === 'confirm' && !this.validate()) {
- return;
- }
- this.action = action;
- if (typeof this.beforeClose === 'function') {
- this.close = this.getSafeClose();
- this.beforeClose(action, this, this.close);
- } else {
- this.doClose();
- }
- },
- validate: function validate() {
- if (this.$type === 'prompt') {
- var inputPattern = this.inputPattern;
- if (inputPattern && !inputPattern.test(this.inputValue || '')) {
- this.editorErrorMessage = this.inputErrorMessage || Object(lib_locale_["t"])('el.messagebox.error');
- Object(dom_["addClass"])(this.getInputElement(), 'invalid');
- return false;
- }
- var inputValidator = this.inputValidator;
- if (typeof inputValidator === 'function') {
- var validateResult = inputValidator(this.inputValue);
- if (validateResult === false) {
- this.editorErrorMessage = this.inputErrorMessage || Object(lib_locale_["t"])('el.messagebox.error');
- Object(dom_["addClass"])(this.getInputElement(), 'invalid');
- return false;
- }
- if (typeof validateResult === 'string') {
- this.editorErrorMessage = validateResult;
- Object(dom_["addClass"])(this.getInputElement(), 'invalid');
- return false;
- }
- }
- }
- this.editorErrorMessage = '';
- Object(dom_["removeClass"])(this.getInputElement(), 'invalid');
- return true;
- },
- getFirstFocus: function getFirstFocus() {
- var btn = this.$el.querySelector('.el-message-box__btns .el-button');
- var title = this.$el.querySelector('.el-message-box__btns .el-message-box__title');
- return btn || title;
- },
- getInputElement: function getInputElement() {
- var inputRefs = this.$refs.input.$refs;
- return inputRefs.input || inputRefs.textarea;
- }
- },
- watch: {
- inputValue: {
- immediate: true,
- handler: function handler(val) {
- var _this3 = this;
- this.$nextTick(function (_) {
- if (_this3.$type === 'prompt' && val !== null) {
- _this3.validate();
- }
- });
- }
- },
- visible: function visible(val) {
- var _this4 = this;
- if (val) {
- this.uid++;
- if (this.$type === 'alert' || this.$type === 'confirm') {
- this.$nextTick(function () {
- _this4.$refs.confirm.$el.focus();
- });
- }
- this.focusAfterClosed = document.activeElement;
- messageBox = new aria_dialog_default.a(this.$el, this.focusAfterClosed, this.getFirstFocus());
- }
- // prompt
- if (this.$type !== 'prompt') return;
- if (val) {
- setTimeout(function () {
- if (_this4.$refs.input && _this4.$refs.input.$el) {
- _this4.getInputElement().focus();
- }
- }, 500);
- } else {
- this.editorErrorMessage = '';
- Object(dom_["removeClass"])(this.getInputElement(), 'invalid');
- }
- }
- },
- mounted: function mounted() {
- var _this5 = this;
- this.$nextTick(function () {
- if (_this5.closeOnHashChange) {
- window.addEventListener('hashchange', _this5.close);
- }
- });
- },
- beforeDestroy: function beforeDestroy() {
- if (this.closeOnHashChange) {
- window.removeEventListener('hashchange', this.close);
- }
- setTimeout(function () {
- messageBox.closeDialog();
- });
- },
- data: function data() {
- return {
- uid: 1,
- title: undefined,
- message: '',
- type: '',
- iconClass: '',
- customClass: '',
- showInput: false,
- inputValue: null,
- inputPlaceholder: '',
- inputType: 'text',
- inputPattern: null,
- inputValidator: null,
- inputErrorMessage: '',
- showConfirmButton: true,
- showCancelButton: false,
- action: '',
- confirmButtonText: '',
- cancelButtonText: '',
- confirmButtonLoading: false,
- cancelButtonLoading: false,
- confirmButtonClass: '',
- confirmButtonDisabled: false,
- cancelButtonClass: '',
- editorErrorMessage: null,
- callback: null,
- dangerouslyUseHTMLString: false,
- focusAfterClosed: null,
- isOnComposition: false,
- distinguishCancelAndClose: false
- };
- }
- });
- // CONCATENATED MODULE: ./packages/message-box/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_message_box_src_mainvue_type_script_lang_js_ = (message_box_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/message-box/src/main.vue
- /* normalize component */
- var src_main_component = normalizeComponent(
- packages_message_box_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_6b29b012_render,
- mainvue_type_template_id_6b29b012_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_main_api; }
- src_main_component.options.__file = "packages/message-box/src/main.vue"
- /* harmony default export */ var message_box_src_main = (src_main_component.exports);
- // EXTERNAL MODULE: external "element-ui/lib/utils/vdom"
- var vdom_ = __webpack_require__(21);
- // CONCATENATED MODULE: ./packages/message-box/src/main.js
- var main_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- var main_defaults = {
- title: null,
- message: '',
- type: '',
- iconClass: '',
- showInput: false,
- showClose: true,
- modalFade: true,
- lockScroll: true,
- closeOnClickModal: true,
- closeOnPressEscape: true,
- closeOnHashChange: true,
- inputValue: null,
- inputPlaceholder: '',
- inputType: 'text',
- inputPattern: null,
- inputValidator: null,
- inputErrorMessage: '',
- showConfirmButton: true,
- showCancelButton: false,
- confirmButtonPosition: 'right',
- confirmButtonHighlight: false,
- cancelButtonHighlight: false,
- confirmButtonText: '',
- cancelButtonText: '',
- confirmButtonClass: '',
- cancelButtonClass: '',
- customClass: '',
- beforeClose: null,
- dangerouslyUseHTMLString: false,
- center: false,
- roundButton: false,
- distinguishCancelAndClose: false
- };
- var MessageBoxConstructor = external_vue_default.a.extend(message_box_src_main);
- var currentMsg = void 0,
- main_instance = void 0;
- var msgQueue = [];
- var defaultCallback = function defaultCallback(action) {
- if (currentMsg) {
- var callback = currentMsg.callback;
- if (typeof callback === 'function') {
- if (main_instance.showInput) {
- callback(main_instance.inputValue, action);
- } else {
- callback(action);
- }
- }
- if (currentMsg.resolve) {
- if (action === 'confirm') {
- if (main_instance.showInput) {
- currentMsg.resolve({ value: main_instance.inputValue, action: action });
- } else {
- currentMsg.resolve(action);
- }
- } else if (currentMsg.reject && (action === 'cancel' || action === 'close')) {
- currentMsg.reject(action);
- }
- }
- }
- };
- var initInstance = function initInstance() {
- main_instance = new MessageBoxConstructor({
- el: document.createElement('div')
- });
- main_instance.callback = defaultCallback;
- };
- var main_showNextMsg = function showNextMsg() {
- if (!main_instance) {
- initInstance();
- }
- main_instance.action = '';
- if (!main_instance.visible || main_instance.closeTimer) {
- if (msgQueue.length > 0) {
- currentMsg = msgQueue.shift();
- var options = currentMsg.options;
- for (var prop in options) {
- if (options.hasOwnProperty(prop)) {
- main_instance[prop] = options[prop];
- }
- }
- if (options.callback === undefined) {
- main_instance.callback = defaultCallback;
- }
- var oldCb = main_instance.callback;
- main_instance.callback = function (action, instance) {
- oldCb(action, instance);
- showNextMsg();
- };
- if (Object(vdom_["isVNode"])(main_instance.message)) {
- main_instance.$slots.default = [main_instance.message];
- main_instance.message = null;
- } else {
- delete main_instance.$slots.default;
- }
- ['modal', 'showClose', 'closeOnClickModal', 'closeOnPressEscape', 'closeOnHashChange'].forEach(function (prop) {
- if (main_instance[prop] === undefined) {
- main_instance[prop] = true;
- }
- });
- document.body.appendChild(main_instance.$el);
- external_vue_default.a.nextTick(function () {
- main_instance.visible = true;
- });
- }
- }
- };
- var main_MessageBox = function MessageBox(options, callback) {
- if (external_vue_default.a.prototype.$isServer) return;
- if (typeof options === 'string' || Object(vdom_["isVNode"])(options)) {
- options = {
- message: options
- };
- if (typeof arguments[1] === 'string') {
- options.title = arguments[1];
- }
- } else if (options.callback && !callback) {
- callback = options.callback;
- }
- if (typeof Promise !== 'undefined') {
- return new Promise(function (resolve, reject) {
- // eslint-disable-line
- msgQueue.push({
- options: merge_default()({}, main_defaults, MessageBox.defaults, options),
- callback: callback,
- resolve: resolve,
- reject: reject
- });
- main_showNextMsg();
- });
- } else {
- msgQueue.push({
- options: merge_default()({}, main_defaults, MessageBox.defaults, options),
- callback: callback
- });
- main_showNextMsg();
- }
- };
- main_MessageBox.setDefaults = function (defaults) {
- main_MessageBox.defaults = defaults;
- };
- main_MessageBox.alert = function (message, title, options) {
- if ((typeof title === 'undefined' ? 'undefined' : main_typeof(title)) === 'object') {
- options = title;
- title = '';
- } else if (title === undefined) {
- title = '';
- }
- return main_MessageBox(merge_default()({
- title: title,
- message: message,
- $type: 'alert',
- closeOnPressEscape: false,
- closeOnClickModal: false
- }, options));
- };
- main_MessageBox.confirm = function (message, title, options) {
- if ((typeof title === 'undefined' ? 'undefined' : main_typeof(title)) === 'object') {
- options = title;
- title = '';
- } else if (title === undefined) {
- title = '';
- }
- return main_MessageBox(merge_default()({
- title: title,
- message: message,
- $type: 'confirm',
- showCancelButton: true
- }, options));
- };
- main_MessageBox.prompt = function (message, title, options) {
- if ((typeof title === 'undefined' ? 'undefined' : main_typeof(title)) === 'object') {
- options = title;
- title = '';
- } else if (title === undefined) {
- title = '';
- }
- return main_MessageBox(merge_default()({
- title: title,
- message: message,
- showCancelButton: true,
- showInput: true,
- $type: 'prompt'
- }, options));
- };
- main_MessageBox.close = function () {
- main_instance.doClose();
- main_instance.visible = false;
- msgQueue = [];
- currentMsg = null;
- };
- /* harmony default export */ var packages_message_box_src_main = (main_MessageBox);
- // CONCATENATED MODULE: ./packages/message-box/index.js
- /* harmony default export */ var message_box = (packages_message_box_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb.vue?vue&type=template&id=4b464c06&
- var breadcrumbvue_type_template_id_4b464c06_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-breadcrumb",
- attrs: { "aria-label": "Breadcrumb", role: "navigation" }
- },
- [_vm._t("default")],
- 2
- )
- }
- var breadcrumbvue_type_template_id_4b464c06_staticRenderFns = []
- breadcrumbvue_type_template_id_4b464c06_render._withStripped = true
- // CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb.vue?vue&type=template&id=4b464c06&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- /* harmony default export */ var breadcrumbvue_type_script_lang_js_ = ({
- name: 'ElBreadcrumb',
- props: {
- separator: {
- type: String,
- default: '/'
- },
- separatorClass: {
- type: String,
- default: ''
- }
- },
- provide: function provide() {
- return {
- elBreadcrumb: this
- };
- },
- mounted: function mounted() {
- var items = this.$el.querySelectorAll('.el-breadcrumb__item');
- if (items.length) {
- items[items.length - 1].setAttribute('aria-current', 'page');
- }
- }
- });
- // CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_breadcrumbvue_type_script_lang_js_ = (breadcrumbvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb.vue
- /* normalize component */
- var breadcrumb_component = normalizeComponent(
- src_breadcrumbvue_type_script_lang_js_,
- breadcrumbvue_type_template_id_4b464c06_render,
- breadcrumbvue_type_template_id_4b464c06_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var breadcrumb_api; }
- breadcrumb_component.options.__file = "packages/breadcrumb/src/breadcrumb.vue"
- /* harmony default export */ var breadcrumb = (breadcrumb_component.exports);
- // CONCATENATED MODULE: ./packages/breadcrumb/index.js
- /* istanbul ignore next */
- breadcrumb.install = function (Vue) {
- Vue.component(breadcrumb.name, breadcrumb);
- };
- /* harmony default export */ var packages_breadcrumb = (breadcrumb);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=template&id=fcf9eaac&
- var breadcrumb_itemvue_type_template_id_fcf9eaac_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("span", { staticClass: "el-breadcrumb__item" }, [
- _c(
- "span",
- {
- ref: "link",
- class: ["el-breadcrumb__inner", _vm.to ? "is-link" : ""],
- attrs: { role: "link" }
- },
- [_vm._t("default")],
- 2
- ),
- _vm.separatorClass
- ? _c("i", {
- staticClass: "el-breadcrumb__separator",
- class: _vm.separatorClass
- })
- : _c(
- "span",
- {
- staticClass: "el-breadcrumb__separator",
- attrs: { role: "presentation" }
- },
- [_vm._v(_vm._s(_vm.separator))]
- )
- ])
- }
- var breadcrumb_itemvue_type_template_id_fcf9eaac_staticRenderFns = []
- breadcrumb_itemvue_type_template_id_fcf9eaac_render._withStripped = true
- // CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=template&id=fcf9eaac&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var breadcrumb_itemvue_type_script_lang_js_ = ({
- name: 'ElBreadcrumbItem',
- props: {
- to: {},
- replace: Boolean
- },
- data: function data() {
- return {
- separator: '',
- separatorClass: ''
- };
- },
- inject: ['elBreadcrumb'],
- mounted: function mounted() {
- var _this = this;
- this.separator = this.elBreadcrumb.separator;
- this.separatorClass = this.elBreadcrumb.separatorClass;
- var link = this.$refs.link;
- link.setAttribute('role', 'link');
- link.addEventListener('click', function (_) {
- var to = _this.to,
- $router = _this.$router;
- if (!to || !$router) return;
- _this.replace ? $router.replace(to) : $router.push(to);
- });
- }
- });
- // CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_breadcrumb_itemvue_type_script_lang_js_ = (breadcrumb_itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb-item.vue
- /* normalize component */
- var breadcrumb_item_component = normalizeComponent(
- src_breadcrumb_itemvue_type_script_lang_js_,
- breadcrumb_itemvue_type_template_id_fcf9eaac_render,
- breadcrumb_itemvue_type_template_id_fcf9eaac_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var breadcrumb_item_api; }
- breadcrumb_item_component.options.__file = "packages/breadcrumb/src/breadcrumb-item.vue"
- /* harmony default export */ var breadcrumb_item = (breadcrumb_item_component.exports);
- // CONCATENATED MODULE: ./packages/breadcrumb-item/index.js
- /* istanbul ignore next */
- breadcrumb_item.install = function (Vue) {
- Vue.component(breadcrumb_item.name, breadcrumb_item);
- };
- /* harmony default export */ var packages_breadcrumb_item = (breadcrumb_item);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form.vue?vue&type=template&id=a1b5ff34&
- var formvue_type_template_id_a1b5ff34_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "form",
- {
- staticClass: "el-form",
- class: [
- _vm.labelPosition ? "el-form--label-" + _vm.labelPosition : "",
- { "el-form--inline": _vm.inline }
- ]
- },
- [_vm._t("default")],
- 2
- )
- }
- var formvue_type_template_id_a1b5ff34_staticRenderFns = []
- formvue_type_template_id_a1b5ff34_render._withStripped = true
- // CONCATENATED MODULE: ./packages/form/src/form.vue?vue&type=template&id=a1b5ff34&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var formvue_type_script_lang_js_ = ({
- name: 'ElForm',
- componentName: 'ElForm',
- provide: function provide() {
- return {
- elForm: this
- };
- },
- props: {
- model: Object,
- rules: Object,
- labelPosition: String,
- labelWidth: String,
- labelSuffix: {
- type: String,
- default: ''
- },
- inline: Boolean,
- inlineMessage: Boolean,
- statusIcon: Boolean,
- showMessage: {
- type: Boolean,
- default: true
- },
- size: String,
- disabled: Boolean,
- validateOnRuleChange: {
- type: Boolean,
- default: true
- },
- hideRequiredAsterisk: {
- type: Boolean,
- default: false
- }
- },
- watch: {
- rules: function rules() {
- // remove then add event listeners on form-item after form rules change
- this.fields.forEach(function (field) {
- field.removeValidateEvents();
- field.addValidateEvents();
- });
- if (this.validateOnRuleChange) {
- this.validate(function () {});
- }
- }
- },
- computed: {
- autoLabelWidth: function autoLabelWidth() {
- if (!this.potentialLabelWidthArr.length) return 0;
- var max = Math.max.apply(Math, this.potentialLabelWidthArr);
- return max ? max + 'px' : '';
- }
- },
- data: function data() {
- return {
- fields: [],
- potentialLabelWidthArr: [] // use this array to calculate auto width
- };
- },
- created: function created() {
- var _this = this;
- this.$on('el.form.addField', function (field) {
- if (field) {
- _this.fields.push(field);
- }
- });
- /* istanbul ignore next */
- this.$on('el.form.removeField', function (field) {
- if (field.prop) {
- _this.fields.splice(_this.fields.indexOf(field), 1);
- }
- });
- },
- methods: {
- resetFields: function resetFields() {
- if (!this.model) {
- console.warn('[Element Warn][Form]model is required for resetFields to work.');
- return;
- }
- this.fields.forEach(function (field) {
- field.resetField();
- });
- },
- clearValidate: function clearValidate() {
- var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
- var fields = props.length ? typeof props === 'string' ? this.fields.filter(function (field) {
- return props === field.prop;
- }) : this.fields.filter(function (field) {
- return props.indexOf(field.prop) > -1;
- }) : this.fields;
- fields.forEach(function (field) {
- field.clearValidate();
- });
- },
- validate: function validate(callback) {
- var _this2 = this;
- if (!this.model) {
- console.warn('[Element Warn][Form]model is required for validate to work!');
- return;
- }
- var promise = void 0;
- // if no callback, return promise
- if (typeof callback !== 'function' && window.Promise) {
- promise = new window.Promise(function (resolve, reject) {
- callback = function callback(valid) {
- valid ? resolve(valid) : reject(valid);
- };
- });
- }
- var valid = true;
- var count = 0;
- // 如果需要验证的fields为空,调用验证时立刻返回callback
- if (this.fields.length === 0 && callback) {
- callback(true);
- }
- var invalidFields = {};
- this.fields.forEach(function (field) {
- field.validate('', function (message, field) {
- if (message) {
- valid = false;
- }
- invalidFields = merge_default()({}, invalidFields, field);
- if (typeof callback === 'function' && ++count === _this2.fields.length) {
- callback(valid, invalidFields);
- }
- });
- });
- if (promise) {
- return promise;
- }
- },
- validateField: function validateField(props, cb) {
- props = [].concat(props);
- var fields = this.fields.filter(function (field) {
- return props.indexOf(field.prop) !== -1;
- });
- if (!fields.length) {
- console.warn('[Element Warn]please pass correct props!');
- return;
- }
- fields.forEach(function (field) {
- field.validate('', cb);
- });
- },
- getLabelWidthIndex: function getLabelWidthIndex(width) {
- var index = this.potentialLabelWidthArr.indexOf(width);
- // it's impossible
- if (index === -1) {
- throw new Error('[ElementForm]unpected width ', width);
- }
- return index;
- },
- registerLabelWidth: function registerLabelWidth(val, oldVal) {
- if (val && oldVal) {
- var index = this.getLabelWidthIndex(oldVal);
- this.potentialLabelWidthArr.splice(index, 1, val);
- } else if (val) {
- this.potentialLabelWidthArr.push(val);
- }
- },
- deregisterLabelWidth: function deregisterLabelWidth(val) {
- var index = this.getLabelWidthIndex(val);
- this.potentialLabelWidthArr.splice(index, 1);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/form/src/form.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_formvue_type_script_lang_js_ = (formvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/form/src/form.vue
- /* normalize component */
- var form_component = normalizeComponent(
- src_formvue_type_script_lang_js_,
- formvue_type_template_id_a1b5ff34_render,
- formvue_type_template_id_a1b5ff34_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var form_api; }
- form_component.options.__file = "packages/form/src/form.vue"
- /* harmony default export */ var src_form = (form_component.exports);
- // CONCATENATED MODULE: ./packages/form/index.js
- /* istanbul ignore next */
- src_form.install = function (Vue) {
- Vue.component(src_form.name, src_form);
- };
- /* harmony default export */ var packages_form = (src_form);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form-item.vue?vue&type=template&id=b6f3db6c&
- var form_itemvue_type_template_id_b6f3db6c_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-form-item",
- class: [
- {
- "el-form-item--feedback": _vm.elForm && _vm.elForm.statusIcon,
- "is-error": _vm.validateState === "error",
- "is-validating": _vm.validateState === "validating",
- "is-success": _vm.validateState === "success",
- "is-required": _vm.isRequired || _vm.required,
- "is-no-asterisk": _vm.elForm && _vm.elForm.hideRequiredAsterisk
- },
- _vm.sizeClass ? "el-form-item--" + _vm.sizeClass : ""
- ]
- },
- [
- _c(
- "label-wrap",
- {
- attrs: {
- "is-auto-width": _vm.labelStyle && _vm.labelStyle.width === "auto",
- "update-all": _vm.form.labelWidth === "auto"
- }
- },
- [
- _vm.label || _vm.$slots.label
- ? _c(
- "label",
- {
- staticClass: "el-form-item__label",
- style: _vm.labelStyle,
- attrs: { for: _vm.labelFor }
- },
- [
- _vm._t("label", [
- _vm._v(_vm._s(_vm.label + _vm.form.labelSuffix))
- ])
- ],
- 2
- )
- : _vm._e()
- ]
- ),
- _c(
- "div",
- { staticClass: "el-form-item__content", style: _vm.contentStyle },
- [
- _vm._t("default"),
- _c(
- "transition",
- { attrs: { name: "el-zoom-in-top" } },
- [
- _vm.validateState === "error" &&
- _vm.showMessage &&
- _vm.form.showMessage
- ? _vm._t(
- "error",
- [
- _c(
- "div",
- {
- staticClass: "el-form-item__error",
- class: {
- "el-form-item__error--inline":
- typeof _vm.inlineMessage === "boolean"
- ? _vm.inlineMessage
- : (_vm.elForm && _vm.elForm.inlineMessage) ||
- false
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.validateMessage) +
- "\n "
- )
- ]
- )
- ],
- { error: _vm.validateMessage }
- )
- : _vm._e()
- ],
- 2
- )
- ],
- 2
- )
- ],
- 1
- )
- }
- var form_itemvue_type_template_id_b6f3db6c_staticRenderFns = []
- form_itemvue_type_template_id_b6f3db6c_render._withStripped = true
- // CONCATENATED MODULE: ./packages/form/src/form-item.vue?vue&type=template&id=b6f3db6c&
- // EXTERNAL MODULE: external "async-validator"
- var external_async_validator_ = __webpack_require__(38);
- var external_async_validator_default = /*#__PURE__*/__webpack_require__.n(external_async_validator_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/label-wrap.vue?vue&type=script&lang=js&
- /* harmony default export */ var label_wrapvue_type_script_lang_js_ = ({
- props: {
- isAutoWidth: Boolean,
- updateAll: Boolean
- },
- inject: ['elForm', 'elFormItem'],
- render: function render() {
- var h = arguments[0];
- var slots = this.$slots.default;
- if (!slots) return null;
- if (this.isAutoWidth) {
- var autoLabelWidth = this.elForm.autoLabelWidth;
- var style = {};
- if (autoLabelWidth && autoLabelWidth !== 'auto') {
- var marginLeft = parseInt(autoLabelWidth, 10) - this.computedWidth;
- if (marginLeft) {
- style.marginLeft = marginLeft + 'px';
- }
- }
- return h(
- 'div',
- { 'class': 'el-form-item__label-wrap', style: style },
- [slots]
- );
- } else {
- return slots[0];
- }
- },
- methods: {
- getLabelWidth: function getLabelWidth() {
- if (this.$el && this.$el.firstElementChild) {
- var computedWidth = window.getComputedStyle(this.$el.firstElementChild).width;
- return Math.ceil(parseFloat(computedWidth));
- } else {
- return 0;
- }
- },
- updateLabelWidth: function updateLabelWidth() {
- var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'update';
- if (this.$slots.default && this.isAutoWidth && this.$el.firstElementChild) {
- if (action === 'update') {
- this.computedWidth = this.getLabelWidth();
- } else if (action === 'remove') {
- this.elForm.deregisterLabelWidth(this.computedWidth);
- }
- }
- }
- },
- watch: {
- computedWidth: function computedWidth(val, oldVal) {
- if (this.updateAll) {
- this.elForm.registerLabelWidth(val, oldVal);
- this.elFormItem.updateComputedLabelWidth(val);
- }
- }
- },
- data: function data() {
- return {
- computedWidth: 0
- };
- },
- mounted: function mounted() {
- this.updateLabelWidth('update');
- },
- updated: function updated() {
- this.updateLabelWidth('update');
- },
- beforeDestroy: function beforeDestroy() {
- this.updateLabelWidth('remove');
- }
- });
- // CONCATENATED MODULE: ./packages/form/src/label-wrap.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_label_wrapvue_type_script_lang_js_ = (label_wrapvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/form/src/label-wrap.vue
- var label_wrap_render, label_wrap_staticRenderFns
- /* normalize component */
- var label_wrap_component = normalizeComponent(
- src_label_wrapvue_type_script_lang_js_,
- label_wrap_render,
- label_wrap_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var label_wrap_api; }
- label_wrap_component.options.__file = "packages/form/src/label-wrap.vue"
- /* harmony default export */ var label_wrap = (label_wrap_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form-item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var form_itemvue_type_script_lang_js_ = ({
- name: 'ElFormItem',
- componentName: 'ElFormItem',
- mixins: [emitter_default.a],
- provide: function provide() {
- return {
- elFormItem: this
- };
- },
- inject: ['elForm'],
- props: {
- label: String,
- labelWidth: String,
- prop: String,
- required: {
- type: Boolean,
- default: undefined
- },
- rules: [Object, Array],
- error: String,
- validateStatus: String,
- for: String,
- inlineMessage: {
- type: [String, Boolean],
- default: ''
- },
- showMessage: {
- type: Boolean,
- default: true
- },
- size: String
- },
- components: {
- // use this component to calculate auto width
- LabelWrap: label_wrap
- },
- watch: {
- error: {
- immediate: true,
- handler: function handler(value) {
- this.validateMessage = value;
- this.validateState = value ? 'error' : '';
- }
- },
- validateStatus: function validateStatus(value) {
- this.validateState = value;
- }
- },
- computed: {
- labelFor: function labelFor() {
- return this.for || this.prop;
- },
- labelStyle: function labelStyle() {
- var ret = {};
- if (this.form.labelPosition === 'top') return ret;
- var labelWidth = this.labelWidth || this.form.labelWidth;
- if (labelWidth) {
- ret.width = labelWidth;
- }
- return ret;
- },
- contentStyle: function contentStyle() {
- var ret = {};
- var label = this.label;
- if (this.form.labelPosition === 'top' || this.form.inline) return ret;
- if (!label && !this.labelWidth && this.isNested) return ret;
- var labelWidth = this.labelWidth || this.form.labelWidth;
- if (labelWidth === 'auto') {
- if (this.labelWidth === 'auto') {
- ret.marginLeft = this.computedLabelWidth;
- } else if (this.form.labelWidth === 'auto') {
- ret.marginLeft = this.elForm.autoLabelWidth;
- }
- } else {
- ret.marginLeft = labelWidth;
- }
- return ret;
- },
- form: function form() {
- var parent = this.$parent;
- var parentName = parent.$options.componentName;
- while (parentName !== 'ElForm') {
- if (parentName === 'ElFormItem') {
- this.isNested = true;
- }
- parent = parent.$parent;
- parentName = parent.$options.componentName;
- }
- return parent;
- },
- fieldValue: function fieldValue() {
- var model = this.form.model;
- if (!model || !this.prop) {
- return;
- }
- var path = this.prop;
- if (path.indexOf(':') !== -1) {
- path = path.replace(/:/, '.');
- }
- return Object(util_["getPropByPath"])(model, path, true).v;
- },
- isRequired: function isRequired() {
- var rules = this.getRules();
- var isRequired = false;
- if (rules && rules.length) {
- rules.every(function (rule) {
- if (rule.required) {
- isRequired = true;
- return false;
- }
- return true;
- });
- }
- return isRequired;
- },
- _formSize: function _formSize() {
- return this.elForm.size;
- },
- elFormItemSize: function elFormItemSize() {
- return this.size || this._formSize;
- },
- sizeClass: function sizeClass() {
- return this.elFormItemSize || (this.$ELEMENT || {}).size;
- }
- },
- data: function data() {
- return {
- validateState: '',
- validateMessage: '',
- validateDisabled: false,
- validator: {},
- isNested: false,
- computedLabelWidth: ''
- };
- },
- methods: {
- validate: function validate(trigger) {
- var _this = this;
- var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : util_["noop"];
- this.validateDisabled = false;
- var rules = this.getFilteredRule(trigger);
- if ((!rules || rules.length === 0) && this.required === undefined) {
- callback();
- return true;
- }
- this.validateState = 'validating';
- var descriptor = {};
- if (rules && rules.length > 0) {
- rules.forEach(function (rule) {
- delete rule.trigger;
- });
- }
- descriptor[this.prop] = rules;
- var validator = new external_async_validator_default.a(descriptor);
- var model = {};
- model[this.prop] = this.fieldValue;
- validator.validate(model, { firstFields: true }, function (errors, invalidFields) {
- _this.validateState = !errors ? 'success' : 'error';
- _this.validateMessage = errors ? errors[0].message : '';
- callback(_this.validateMessage, invalidFields);
- _this.elForm && _this.elForm.$emit('validate', _this.prop, !errors, _this.validateMessage || null);
- });
- },
- clearValidate: function clearValidate() {
- this.validateState = '';
- this.validateMessage = '';
- this.validateDisabled = false;
- },
- resetField: function resetField() {
- this.validateState = '';
- this.validateMessage = '';
- var model = this.form.model;
- var value = this.fieldValue;
- var path = this.prop;
- if (path.indexOf(':') !== -1) {
- path = path.replace(/:/, '.');
- }
- var prop = Object(util_["getPropByPath"])(model, path, true);
- this.validateDisabled = true;
- if (Array.isArray(value)) {
- prop.o[prop.k] = [].concat(this.initialValue);
- } else {
- prop.o[prop.k] = this.initialValue;
- }
- this.broadcast('ElTimeSelect', 'fieldReset', this.initialValue);
- },
- getRules: function getRules() {
- var formRules = this.form.rules;
- var selfRules = this.rules;
- var requiredRule = this.required !== undefined ? { required: !!this.required } : [];
- var prop = Object(util_["getPropByPath"])(formRules, this.prop || '');
- formRules = formRules ? prop.o[this.prop || ''] || prop.v : [];
- return [].concat(selfRules || formRules || []).concat(requiredRule);
- },
- getFilteredRule: function getFilteredRule(trigger) {
- var rules = this.getRules();
- return rules.filter(function (rule) {
- if (!rule.trigger || trigger === '') return true;
- if (Array.isArray(rule.trigger)) {
- return rule.trigger.indexOf(trigger) > -1;
- } else {
- return rule.trigger === trigger;
- }
- }).map(function (rule) {
- return merge_default()({}, rule);
- });
- },
- onFieldBlur: function onFieldBlur() {
- this.validate('blur');
- },
- onFieldChange: function onFieldChange() {
- if (this.validateDisabled) {
- this.validateDisabled = false;
- return;
- }
- this.validate('change');
- },
- updateComputedLabelWidth: function updateComputedLabelWidth(width) {
- this.computedLabelWidth = width ? width + 'px' : '';
- },
- addValidateEvents: function addValidateEvents() {
- var rules = this.getRules();
- if (rules.length || this.required !== undefined) {
- this.$on('el.form.blur', this.onFieldBlur);
- this.$on('el.form.change', this.onFieldChange);
- }
- },
- removeValidateEvents: function removeValidateEvents() {
- this.$off();
- }
- },
- mounted: function mounted() {
- if (this.prop) {
- this.dispatch('ElForm', 'el.form.addField', [this]);
- var initialValue = this.fieldValue;
- if (Array.isArray(initialValue)) {
- initialValue = [].concat(initialValue);
- }
- Object.defineProperty(this, 'initialValue', {
- value: initialValue
- });
- this.addValidateEvents();
- }
- },
- beforeDestroy: function beforeDestroy() {
- this.dispatch('ElForm', 'el.form.removeField', [this]);
- }
- });
- // CONCATENATED MODULE: ./packages/form/src/form-item.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_form_itemvue_type_script_lang_js_ = (form_itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/form/src/form-item.vue
- /* normalize component */
- var form_item_component = normalizeComponent(
- src_form_itemvue_type_script_lang_js_,
- form_itemvue_type_template_id_b6f3db6c_render,
- form_itemvue_type_template_id_b6f3db6c_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var form_item_api; }
- form_item_component.options.__file = "packages/form/src/form-item.vue"
- /* harmony default export */ var form_item = (form_item_component.exports);
- // CONCATENATED MODULE: ./packages/form-item/index.js
- /* istanbul ignore next */
- form_item.install = function (Vue) {
- Vue.component(form_item.name, form_item);
- };
- /* harmony default export */ var packages_form_item = (form_item);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-bar.vue?vue&type=template&id=2031f33a&
- var tab_barvue_type_template_id_2031f33a_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("div", {
- staticClass: "el-tabs__active-bar",
- class: "is-" + _vm.rootTabs.tabPosition,
- style: _vm.barStyle
- })
- }
- var tab_barvue_type_template_id_2031f33a_staticRenderFns = []
- tab_barvue_type_template_id_2031f33a_render._withStripped = true
- // CONCATENATED MODULE: ./packages/tabs/src/tab-bar.vue?vue&type=template&id=2031f33a&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-bar.vue?vue&type=script&lang=js&
- //
- //
- //
- /* harmony default export */ var tab_barvue_type_script_lang_js_ = ({
- name: 'TabBar',
- props: {
- tabs: Array
- },
- inject: ['rootTabs'],
- computed: {
- barStyle: {
- get: function get() {
- var _this = this;
- var style = {};
- var offset = 0;
- var tabSize = 0;
- var sizeName = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'width' : 'height';
- var sizeDir = sizeName === 'width' ? 'x' : 'y';
- var firstUpperCase = function firstUpperCase(str) {
- return str.toLowerCase().replace(/( |^)[a-z]/g, function (L) {
- return L.toUpperCase();
- });
- };
- this.tabs.every(function (tab, index) {
- var $el = Object(util_["arrayFind"])(_this.$parent.$refs.tabs || [], function (t) {
- return t.id.replace('tab-', '') === tab.paneName;
- });
- if (!$el) {
- return false;
- }
- if (!tab.active) {
- offset += $el['client' + firstUpperCase(sizeName)];
- return true;
- } else {
- tabSize = $el['client' + firstUpperCase(sizeName)];
- if (sizeName === 'width' && _this.tabs.length > 1) {
- tabSize -= index === 0 || index === _this.tabs.length - 1 ? 20 : 40;
- }
- return false;
- }
- });
- if (sizeName === 'width' && offset !== 0) {
- offset += 20;
- }
- var transform = 'translate' + firstUpperCase(sizeDir) + '(' + offset + 'px)';
- style[sizeName] = tabSize + 'px';
- style.transform = transform;
- style.msTransform = transform;
- style.webkitTransform = transform;
- return style;
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/tabs/src/tab-bar.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tab_barvue_type_script_lang_js_ = (tab_barvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tabs/src/tab-bar.vue
- /* normalize component */
- var tab_bar_component = normalizeComponent(
- src_tab_barvue_type_script_lang_js_,
- tab_barvue_type_template_id_2031f33a_render,
- tab_barvue_type_template_id_2031f33a_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tab_bar_api; }
- tab_bar_component.options.__file = "packages/tabs/src/tab-bar.vue"
- /* harmony default export */ var tab_bar = (tab_bar_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-nav.vue?vue&type=script&lang=js&
- function noop() {}
- var tab_navvue_type_script_lang_js_firstUpperCase = function firstUpperCase(str) {
- return str.toLowerCase().replace(/( |^)[a-z]/g, function (L) {
- return L.toUpperCase();
- });
- };
- /* harmony default export */ var tab_navvue_type_script_lang_js_ = ({
- name: 'TabNav',
- components: {
- TabBar: tab_bar
- },
- inject: ['rootTabs'],
- props: {
- panes: Array,
- currentName: String,
- editable: Boolean,
- onTabClick: {
- type: Function,
- default: noop
- },
- onTabRemove: {
- type: Function,
- default: noop
- },
- type: String,
- stretch: Boolean
- },
- data: function data() {
- return {
- scrollable: false,
- navOffset: 0,
- isFocus: false,
- focusable: true
- };
- },
- computed: {
- navStyle: function navStyle() {
- var dir = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'X' : 'Y';
- return {
- transform: 'translate' + dir + '(-' + this.navOffset + 'px)'
- };
- },
- sizeName: function sizeName() {
- return ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'width' : 'height';
- }
- },
- methods: {
- scrollPrev: function scrollPrev() {
- var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
- var currentOffset = this.navOffset;
- if (!currentOffset) return;
- var newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;
- this.navOffset = newOffset;
- },
- scrollNext: function scrollNext() {
- var navSize = this.$refs.nav['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
- var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
- var currentOffset = this.navOffset;
- if (navSize - currentOffset <= containerSize) return;
- var newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;
- this.navOffset = newOffset;
- },
- scrollToActiveTab: function scrollToActiveTab() {
- if (!this.scrollable) return;
- var nav = this.$refs.nav;
- var activeTab = this.$el.querySelector('.is-active');
- if (!activeTab) return;
- var navScroll = this.$refs.navScroll;
- var activeTabBounding = activeTab.getBoundingClientRect();
- var navScrollBounding = navScroll.getBoundingClientRect();
- var maxOffset = nav.offsetWidth - navScrollBounding.width;
- var currentOffset = this.navOffset;
- var newOffset = currentOffset;
- if (activeTabBounding.left < navScrollBounding.left) {
- newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);
- }
- if (activeTabBounding.right > navScrollBounding.right) {
- newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;
- }
- newOffset = Math.max(newOffset, 0);
- this.navOffset = Math.min(newOffset, maxOffset);
- },
- update: function update() {
- if (!this.$refs.nav) return;
- var sizeName = this.sizeName;
- var navSize = this.$refs.nav['offset' + tab_navvue_type_script_lang_js_firstUpperCase(sizeName)];
- var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(sizeName)];
- var currentOffset = this.navOffset;
- if (containerSize < navSize) {
- var _currentOffset = this.navOffset;
- this.scrollable = this.scrollable || {};
- this.scrollable.prev = _currentOffset;
- this.scrollable.next = _currentOffset + containerSize < navSize;
- if (navSize - _currentOffset < containerSize) {
- this.navOffset = navSize - containerSize;
- }
- } else {
- this.scrollable = false;
- if (currentOffset > 0) {
- this.navOffset = 0;
- }
- }
- },
- changeTab: function changeTab(e) {
- var keyCode = e.keyCode;
- var nextIndex = void 0;
- var currentIndex = void 0,
- tabList = void 0;
- if ([37, 38, 39, 40].indexOf(keyCode) !== -1) {
- // 左右上下键更换tab
- tabList = e.currentTarget.querySelectorAll('[role=tab]');
- currentIndex = Array.prototype.indexOf.call(tabList, e.target);
- } else {
- return;
- }
- if (keyCode === 37 || keyCode === 38) {
- // left
- if (currentIndex === 0) {
- // first
- nextIndex = tabList.length - 1;
- } else {
- nextIndex = currentIndex - 1;
- }
- } else {
- // right
- if (currentIndex < tabList.length - 1) {
- // not last
- nextIndex = currentIndex + 1;
- } else {
- nextIndex = 0;
- }
- }
- tabList[nextIndex].focus(); // 改变焦点元素
- tabList[nextIndex].click(); // 选中下一个tab
- this.setFocus();
- },
- setFocus: function setFocus() {
- if (this.focusable) {
- this.isFocus = true;
- }
- },
- removeFocus: function removeFocus() {
- this.isFocus = false;
- },
- visibilityChangeHandler: function visibilityChangeHandler() {
- var _this = this;
- var visibility = document.visibilityState;
- if (visibility === 'hidden') {
- this.focusable = false;
- } else if (visibility === 'visible') {
- setTimeout(function () {
- _this.focusable = true;
- }, 50);
- }
- },
- windowBlurHandler: function windowBlurHandler() {
- this.focusable = false;
- },
- windowFocusHandler: function windowFocusHandler() {
- var _this2 = this;
- setTimeout(function () {
- _this2.focusable = true;
- }, 50);
- }
- },
- updated: function updated() {
- this.update();
- },
- render: function render(h) {
- var _this3 = this;
- var type = this.type,
- panes = this.panes,
- editable = this.editable,
- stretch = this.stretch,
- onTabClick = this.onTabClick,
- onTabRemove = this.onTabRemove,
- navStyle = this.navStyle,
- scrollable = this.scrollable,
- scrollNext = this.scrollNext,
- scrollPrev = this.scrollPrev,
- changeTab = this.changeTab,
- setFocus = this.setFocus,
- removeFocus = this.removeFocus;
- var scrollBtn = scrollable ? [h(
- 'span',
- { 'class': ['el-tabs__nav-prev', scrollable.prev ? '' : 'is-disabled'], on: {
- 'click': scrollPrev
- }
- },
- [h('i', { 'class': 'el-icon-arrow-left' })]
- ), h(
- 'span',
- { 'class': ['el-tabs__nav-next', scrollable.next ? '' : 'is-disabled'], on: {
- 'click': scrollNext
- }
- },
- [h('i', { 'class': 'el-icon-arrow-right' })]
- )] : null;
- var tabs = this._l(panes, function (pane, index) {
- var _ref;
- var tabName = pane.name || pane.index || index;
- var closable = pane.isClosable || editable;
- pane.index = '' + index;
- var btnClose = closable ? h('span', { 'class': 'el-icon-close', on: {
- 'click': function click(ev) {
- onTabRemove(pane, ev);
- }
- }
- }) : null;
- var tabLabelContent = pane.$slots.label || pane.label;
- var tabindex = pane.active ? 0 : -1;
- return h(
- 'div',
- {
- 'class': (_ref = {
- 'el-tabs__item': true
- }, _ref['is-' + _this3.rootTabs.tabPosition] = true, _ref['is-active'] = pane.active, _ref['is-disabled'] = pane.disabled, _ref['is-closable'] = closable, _ref['is-focus'] = _this3.isFocus, _ref),
- attrs: { id: 'tab-' + tabName,
- 'aria-controls': 'pane-' + tabName,
- role: 'tab',
- 'aria-selected': pane.active,
- tabindex: tabindex
- },
- key: 'tab-' + tabName, ref: 'tabs', refInFor: true,
- on: {
- 'focus': function focus() {
- setFocus();
- },
- 'blur': function blur() {
- removeFocus();
- },
- 'click': function click(ev) {
- removeFocus();onTabClick(pane, tabName, ev);
- },
- 'keydown': function keydown(ev) {
- if (closable && (ev.keyCode === 46 || ev.keyCode === 8)) {
- onTabRemove(pane, ev);
- }
- }
- }
- },
- [tabLabelContent, btnClose]
- );
- });
- return h(
- 'div',
- { 'class': ['el-tabs__nav-wrap', scrollable ? 'is-scrollable' : '', 'is-' + this.rootTabs.tabPosition] },
- [scrollBtn, h(
- 'div',
- { 'class': ['el-tabs__nav-scroll'], ref: 'navScroll' },
- [h(
- 'div',
- {
- 'class': ['el-tabs__nav', 'is-' + this.rootTabs.tabPosition, stretch && ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'is-stretch' : ''],
- ref: 'nav',
- style: navStyle,
- attrs: { role: 'tablist'
- },
- on: {
- 'keydown': changeTab
- }
- },
- [!type ? h('tab-bar', {
- attrs: { tabs: panes }
- }) : null, tabs]
- )]
- )]
- );
- },
- mounted: function mounted() {
- var _this4 = this;
- Object(resize_event_["addResizeListener"])(this.$el, this.update);
- document.addEventListener('visibilitychange', this.visibilityChangeHandler);
- window.addEventListener('blur', this.windowBlurHandler);
- window.addEventListener('focus', this.windowFocusHandler);
- setTimeout(function () {
- _this4.scrollToActiveTab();
- }, 0);
- },
- beforeDestroy: function beforeDestroy() {
- if (this.$el && this.update) Object(resize_event_["removeResizeListener"])(this.$el, this.update);
- document.removeEventListener('visibilitychange', this.visibilityChangeHandler);
- window.removeEventListener('blur', this.windowBlurHandler);
- window.removeEventListener('focus', this.windowFocusHandler);
- }
- });
- // CONCATENATED MODULE: ./packages/tabs/src/tab-nav.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tab_navvue_type_script_lang_js_ = (tab_navvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tabs/src/tab-nav.vue
- var tab_nav_render, tab_nav_staticRenderFns
- /* normalize component */
- var tab_nav_component = normalizeComponent(
- src_tab_navvue_type_script_lang_js_,
- tab_nav_render,
- tab_nav_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tab_nav_api; }
- tab_nav_component.options.__file = "packages/tabs/src/tab-nav.vue"
- /* harmony default export */ var tab_nav = (tab_nav_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tabs.vue?vue&type=script&lang=js&
- /* harmony default export */ var tabsvue_type_script_lang_js_ = ({
- name: 'ElTabs',
- components: {
- TabNav: tab_nav
- },
- props: {
- type: String,
- activeName: String,
- closable: Boolean,
- addable: Boolean,
- value: {},
- editable: Boolean,
- tabPosition: {
- type: String,
- default: 'top'
- },
- beforeLeave: Function,
- stretch: Boolean
- },
- provide: function provide() {
- return {
- rootTabs: this
- };
- },
- data: function data() {
- return {
- currentName: this.value || this.activeName,
- panes: []
- };
- },
- watch: {
- activeName: function activeName(value) {
- this.setCurrentName(value);
- },
- value: function value(_value) {
- this.setCurrentName(_value);
- },
- currentName: function currentName(value) {
- var _this = this;
- if (this.$refs.nav) {
- this.$nextTick(function () {
- _this.$refs.nav.$nextTick(function (_) {
- _this.$refs.nav.scrollToActiveTab();
- });
- });
- }
- }
- },
- methods: {
- calcPaneInstances: function calcPaneInstances() {
- var _this2 = this;
- var isForceUpdate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- if (this.$slots.default) {
- var paneSlots = this.$slots.default.filter(function (vnode) {
- return vnode.tag && vnode.componentOptions && vnode.componentOptions.Ctor.options.name === 'ElTabPane';
- });
- // update indeed
- var panes = paneSlots.map(function (_ref) {
- var componentInstance = _ref.componentInstance;
- return componentInstance;
- });
- var panesChanged = !(panes.length === this.panes.length && panes.every(function (pane, index) {
- return pane === _this2.panes[index];
- }));
- if (isForceUpdate || panesChanged) {
- this.panes = panes;
- }
- } else if (this.panes.length !== 0) {
- this.panes = [];
- }
- },
- handleTabClick: function handleTabClick(tab, tabName, event) {
- if (tab.disabled) return;
- this.setCurrentName(tabName);
- this.$emit('tab-click', tab, event);
- },
- handleTabRemove: function handleTabRemove(pane, ev) {
- if (pane.disabled) return;
- ev.stopPropagation();
- this.$emit('edit', pane.name, 'remove');
- this.$emit('tab-remove', pane.name);
- },
- handleTabAdd: function handleTabAdd() {
- this.$emit('edit', null, 'add');
- this.$emit('tab-add');
- },
- setCurrentName: function setCurrentName(value) {
- var _this3 = this;
- var changeCurrentName = function changeCurrentName() {
- _this3.currentName = value;
- _this3.$emit('input', value);
- };
- if (this.currentName !== value && this.beforeLeave) {
- var before = this.beforeLeave(value, this.currentName);
- if (before && before.then) {
- before.then(function () {
- changeCurrentName();
- _this3.$refs.nav && _this3.$refs.nav.removeFocus();
- }, function () {
- // https://github.com/ElemeFE/element/pull/14816
- // ignore promise rejection in `before-leave` hook
- });
- } else if (before !== false) {
- changeCurrentName();
- }
- } else {
- changeCurrentName();
- }
- }
- },
- render: function render(h) {
- var _ref2;
- var type = this.type,
- handleTabClick = this.handleTabClick,
- handleTabRemove = this.handleTabRemove,
- handleTabAdd = this.handleTabAdd,
- currentName = this.currentName,
- panes = this.panes,
- editable = this.editable,
- addable = this.addable,
- tabPosition = this.tabPosition,
- stretch = this.stretch;
- var newButton = editable || addable ? h(
- 'span',
- {
- 'class': 'el-tabs__new-tab',
- on: {
- 'click': handleTabAdd,
- 'keydown': function keydown(ev) {
- if (ev.keyCode === 13) {
- handleTabAdd();
- }
- }
- },
- attrs: {
- tabindex: '0'
- }
- },
- [h('i', { 'class': 'el-icon-plus' })]
- ) : null;
- var navData = {
- props: {
- currentName: currentName,
- onTabClick: handleTabClick,
- onTabRemove: handleTabRemove,
- editable: editable,
- type: type,
- panes: panes,
- stretch: stretch
- },
- ref: 'nav'
- };
- var header = h(
- 'div',
- { 'class': ['el-tabs__header', 'is-' + tabPosition] },
- [newButton, h('tab-nav', navData)]
- );
- var panels = h(
- 'div',
- { 'class': 'el-tabs__content' },
- [this.$slots.default]
- );
- return h(
- 'div',
- { 'class': (_ref2 = {
- 'el-tabs': true,
- 'el-tabs--card': type === 'card'
- }, _ref2['el-tabs--' + tabPosition] = true, _ref2['el-tabs--border-card'] = type === 'border-card', _ref2) },
- [tabPosition !== 'bottom' ? [header, panels] : [panels, header]]
- );
- },
- created: function created() {
- if (!this.currentName) {
- this.setCurrentName('0');
- }
- this.$on('tab-nav-update', this.calcPaneInstances.bind(null, true));
- },
- mounted: function mounted() {
- this.calcPaneInstances();
- },
- updated: function updated() {
- this.calcPaneInstances();
- }
- });
- // CONCATENATED MODULE: ./packages/tabs/src/tabs.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tabsvue_type_script_lang_js_ = (tabsvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tabs/src/tabs.vue
- var tabs_render, tabs_staticRenderFns
- /* normalize component */
- var tabs_component = normalizeComponent(
- src_tabsvue_type_script_lang_js_,
- tabs_render,
- tabs_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tabs_api; }
- tabs_component.options.__file = "packages/tabs/src/tabs.vue"
- /* harmony default export */ var tabs = (tabs_component.exports);
- // CONCATENATED MODULE: ./packages/tabs/index.js
- /* istanbul ignore next */
- tabs.install = function (Vue) {
- Vue.component(tabs.name, tabs);
- };
- /* harmony default export */ var packages_tabs = (tabs);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-pane.vue?vue&type=template&id=9145a070&
- var tab_panevue_type_template_id_9145a070_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return !_vm.lazy || _vm.loaded || _vm.active
- ? _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.active,
- expression: "active"
- }
- ],
- staticClass: "el-tab-pane",
- attrs: {
- role: "tabpanel",
- "aria-hidden": !_vm.active,
- id: "pane-" + _vm.paneName,
- "aria-labelledby": "tab-" + _vm.paneName
- }
- },
- [_vm._t("default")],
- 2
- )
- : _vm._e()
- }
- var tab_panevue_type_template_id_9145a070_staticRenderFns = []
- tab_panevue_type_template_id_9145a070_render._withStripped = true
- // CONCATENATED MODULE: ./packages/tabs/src/tab-pane.vue?vue&type=template&id=9145a070&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-pane.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var tab_panevue_type_script_lang_js_ = ({
- name: 'ElTabPane',
- componentName: 'ElTabPane',
- props: {
- label: String,
- labelContent: Function,
- name: String,
- closable: Boolean,
- disabled: Boolean,
- lazy: Boolean
- },
- data: function data() {
- return {
- index: null,
- loaded: false
- };
- },
- computed: {
- isClosable: function isClosable() {
- return this.closable || this.$parent.closable;
- },
- active: function active() {
- var active = this.$parent.currentName === (this.name || this.index);
- if (active) {
- this.loaded = true;
- }
- return active;
- },
- paneName: function paneName() {
- return this.name || this.index;
- }
- },
- updated: function updated() {
- this.$parent.$emit('tab-nav-update');
- }
- });
- // CONCATENATED MODULE: ./packages/tabs/src/tab-pane.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tab_panevue_type_script_lang_js_ = (tab_panevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tabs/src/tab-pane.vue
- /* normalize component */
- var tab_pane_component = normalizeComponent(
- src_tab_panevue_type_script_lang_js_,
- tab_panevue_type_template_id_9145a070_render,
- tab_panevue_type_template_id_9145a070_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tab_pane_api; }
- tab_pane_component.options.__file = "packages/tabs/src/tab-pane.vue"
- /* harmony default export */ var tab_pane = (tab_pane_component.exports);
- // CONCATENATED MODULE: ./packages/tab-pane/index.js
- /* istanbul ignore next */
- tab_pane.install = function (Vue) {
- Vue.component(tab_pane.name, tab_pane);
- };
- /* harmony default export */ var packages_tab_pane = (tab_pane);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tag/src/tag.vue?vue&type=script&lang=js&
- /* harmony default export */ var tagvue_type_script_lang_js_ = ({
- name: 'ElTag',
- props: {
- text: String,
- closable: Boolean,
- type: String,
- hit: Boolean,
- disableTransitions: Boolean,
- color: String,
- size: String
- },
- methods: {
- handleClose: function handleClose(event) {
- event.stopPropagation();
- this.$emit('close', event);
- },
- handleClick: function handleClick(event) {
- event.stopPropagation();
- this.$emit('click', event);
- }
- },
- computed: {
- tagSize: function tagSize() {
- return this.size || (this.$ELEMENT || {}).size;
- }
- },
- render: function render(h) {
- var classes = ['el-tag', this.type ? 'el-tag--' + this.type : '', this.tagSize ? 'el-tag--' + this.tagSize : '', { 'is-hit': this.hit }];
- var tagEl = h(
- 'span',
- { 'class': classes, style: { backgroundColor: this.color }, on: {
- 'click': this.handleClick
- }
- },
- [this.$slots.default, this.closable && h('i', { 'class': 'el-tag__close el-icon-close', on: {
- 'click': this.handleClose
- }
- })]
- );
- return this.disableTransitions ? tagEl : h(
- 'transition',
- {
- attrs: { name: 'el-zoom-in-center' }
- },
- [tagEl]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/tag/src/tag.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tagvue_type_script_lang_js_ = (tagvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tag/src/tag.vue
- var tag_render, tag_staticRenderFns
- /* normalize component */
- var tag_component = normalizeComponent(
- src_tagvue_type_script_lang_js_,
- tag_render,
- tag_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tag_api; }
- tag_component.options.__file = "packages/tag/src/tag.vue"
- /* harmony default export */ var tag = (tag_component.exports);
- // CONCATENATED MODULE: ./packages/tag/index.js
- /* istanbul ignore next */
- tag.install = function (Vue) {
- Vue.component(tag.name, tag);
- };
- /* harmony default export */ var packages_tag = (tag);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/tree/src/tree.vue?vue&type=template&id=547575a6&
- var treevue_type_template_id_547575a6_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-tree",
- class: {
- "el-tree--highlight-current": _vm.highlightCurrent,
- "is-dragging": !!_vm.dragState.draggingNode,
- "is-drop-not-allow": !_vm.dragState.allowDrop,
- "is-drop-inner": _vm.dragState.dropType === "inner"
- },
- attrs: { role: "tree" }
- },
- [
- _vm._l(_vm.root.childNodes, function(child) {
- return _c("el-tree-node", {
- key: _vm.getNodeKey(child),
- attrs: {
- node: child,
- props: _vm.props,
- "render-after-expand": _vm.renderAfterExpand,
- "show-checkbox": _vm.showCheckbox,
- "render-content": _vm.renderContent
- },
- on: { "node-expand": _vm.handleNodeExpand }
- })
- }),
- _vm.isEmpty
- ? _c("div", { staticClass: "el-tree__empty-block" }, [
- _c("span", { staticClass: "el-tree__empty-text" }, [
- _vm._v(_vm._s(_vm.emptyText))
- ])
- ])
- : _vm._e(),
- _c("div", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.dragState.showDropIndicator,
- expression: "dragState.showDropIndicator"
- }
- ],
- ref: "dropIndicator",
- staticClass: "el-tree__drop-indicator"
- })
- ],
- 2
- )
- }
- var treevue_type_template_id_547575a6_staticRenderFns = []
- treevue_type_template_id_547575a6_render._withStripped = true
- // CONCATENATED MODULE: ./packages/tree/src/tree.vue?vue&type=template&id=547575a6&
- // CONCATENATED MODULE: ./packages/tree/src/model/util.js
- var NODE_KEY = '$treeNodeId';
- var markNodeData = function markNodeData(node, data) {
- if (!data || data[NODE_KEY]) return;
- Object.defineProperty(data, NODE_KEY, {
- value: node.id,
- enumerable: false,
- configurable: false,
- writable: false
- });
- };
- var util_getNodeKey = function getNodeKey(key, data) {
- if (!key) return data[NODE_KEY];
- return data[key];
- };
- var findNearestComponent = function findNearestComponent(element, componentName) {
- var target = element;
- while (target && target.tagName !== 'BODY') {
- if (target.__vue__ && target.__vue__.$options.name === componentName) {
- return target.__vue__;
- }
- target = target.parentNode;
- }
- return null;
- };
- // CONCATENATED MODULE: ./packages/tree/src/model/node.js
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- function node_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var getChildState = function getChildState(node) {
- var all = true;
- var none = true;
- var allWithoutDisable = true;
- for (var i = 0, j = node.length; i < j; i++) {
- var n = node[i];
- if (n.checked !== true || n.indeterminate) {
- all = false;
- if (!n.disabled) {
- allWithoutDisable = false;
- }
- }
- if (n.checked !== false || n.indeterminate) {
- none = false;
- }
- }
- return { all: all, none: none, allWithoutDisable: allWithoutDisable, half: !all && !none };
- };
- var reInitChecked = function reInitChecked(node) {
- if (node.childNodes.length === 0) return;
- var _getChildState = getChildState(node.childNodes),
- all = _getChildState.all,
- none = _getChildState.none,
- half = _getChildState.half;
- if (all) {
- node.checked = true;
- node.indeterminate = false;
- } else if (half) {
- node.checked = false;
- node.indeterminate = true;
- } else if (none) {
- node.checked = false;
- node.indeterminate = false;
- }
- var parent = node.parent;
- if (!parent || parent.level === 0) return;
- if (!node.store.checkStrictly) {
- reInitChecked(parent);
- }
- };
- var getPropertyFromData = function getPropertyFromData(node, prop) {
- var props = node.store.props;
- var data = node.data || {};
- var config = props[prop];
- if (typeof config === 'function') {
- return config(data, node);
- } else if (typeof config === 'string') {
- return data[config];
- } else if (typeof config === 'undefined') {
- var dataProp = data[prop];
- return dataProp === undefined ? '' : dataProp;
- }
- };
- var nodeIdSeed = 0;
- var node_Node = function () {
- function Node(options) {
- node_classCallCheck(this, Node);
- this.id = nodeIdSeed++;
- this.text = null;
- this.checked = false;
- this.indeterminate = false;
- this.data = null;
- this.expanded = false;
- this.parent = null;
- this.visible = true;
- this.isCurrent = false;
- for (var name in options) {
- if (options.hasOwnProperty(name)) {
- this[name] = options[name];
- }
- }
- // internal
- this.level = 0;
- this.loaded = false;
- this.childNodes = [];
- this.loading = false;
- if (this.parent) {
- this.level = this.parent.level + 1;
- }
- var store = this.store;
- if (!store) {
- throw new Error('[Node]store is required!');
- }
- store.registerNode(this);
- var props = store.props;
- if (props && typeof props.isLeaf !== 'undefined') {
- var isLeaf = getPropertyFromData(this, 'isLeaf');
- if (typeof isLeaf === 'boolean') {
- this.isLeafByUser = isLeaf;
- }
- }
- if (store.lazy !== true && this.data) {
- this.setData(this.data);
- if (store.defaultExpandAll) {
- this.expanded = true;
- }
- } else if (this.level > 0 && store.lazy && store.defaultExpandAll) {
- this.expand();
- }
- if (!Array.isArray(this.data)) {
- markNodeData(this, this.data);
- }
- if (!this.data) return;
- var defaultExpandedKeys = store.defaultExpandedKeys;
- var key = store.key;
- if (key && defaultExpandedKeys && defaultExpandedKeys.indexOf(this.key) !== -1) {
- this.expand(null, store.autoExpandParent);
- }
- if (key && store.currentNodeKey !== undefined && this.key === store.currentNodeKey) {
- store.currentNode = this;
- store.currentNode.isCurrent = true;
- }
- if (store.lazy) {
- store._initDefaultCheckedNode(this);
- }
- this.updateLeafState();
- }
- Node.prototype.setData = function setData(data) {
- if (!Array.isArray(data)) {
- markNodeData(this, data);
- }
- this.data = data;
- this.childNodes = [];
- var children = void 0;
- if (this.level === 0 && this.data instanceof Array) {
- children = this.data;
- } else {
- children = getPropertyFromData(this, 'children') || [];
- }
- for (var i = 0, j = children.length; i < j; i++) {
- this.insertChild({ data: children[i] });
- }
- };
- Node.prototype.contains = function contains(target) {
- var deep = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
- var walk = function walk(parent) {
- var children = parent.childNodes || [];
- var result = false;
- for (var i = 0, j = children.length; i < j; i++) {
- var child = children[i];
- if (child === target || deep && walk(child)) {
- result = true;
- break;
- }
- }
- return result;
- };
- return walk(this);
- };
- Node.prototype.remove = function remove() {
- var parent = this.parent;
- if (parent) {
- parent.removeChild(this);
- }
- };
- Node.prototype.insertChild = function insertChild(child, index, batch) {
- if (!child) throw new Error('insertChild error: child is required.');
- if (!(child instanceof Node)) {
- if (!batch) {
- var children = this.getChildren(true);
- if (children.indexOf(child.data) === -1) {
- if (typeof index === 'undefined' || index < 0) {
- children.push(child.data);
- } else {
- children.splice(index, 0, child.data);
- }
- }
- }
- merge_default()(child, {
- parent: this,
- store: this.store
- });
- child = new Node(child);
- }
- child.level = this.level + 1;
- if (typeof index === 'undefined' || index < 0) {
- this.childNodes.push(child);
- } else {
- this.childNodes.splice(index, 0, child);
- }
- this.updateLeafState();
- };
- Node.prototype.insertBefore = function insertBefore(child, ref) {
- var index = void 0;
- if (ref) {
- index = this.childNodes.indexOf(ref);
- }
- this.insertChild(child, index);
- };
- Node.prototype.insertAfter = function insertAfter(child, ref) {
- var index = void 0;
- if (ref) {
- index = this.childNodes.indexOf(ref);
- if (index !== -1) index += 1;
- }
- this.insertChild(child, index);
- };
- Node.prototype.removeChild = function removeChild(child) {
- var children = this.getChildren() || [];
- var dataIndex = children.indexOf(child.data);
- if (dataIndex > -1) {
- children.splice(dataIndex, 1);
- }
- var index = this.childNodes.indexOf(child);
- if (index > -1) {
- this.store && this.store.deregisterNode(child);
- child.parent = null;
- this.childNodes.splice(index, 1);
- }
- this.updateLeafState();
- };
- Node.prototype.removeChildByData = function removeChildByData(data) {
- var targetNode = null;
- for (var i = 0; i < this.childNodes.length; i++) {
- if (this.childNodes[i].data === data) {
- targetNode = this.childNodes[i];
- break;
- }
- }
- if (targetNode) {
- this.removeChild(targetNode);
- }
- };
- Node.prototype.expand = function expand(callback, expandParent) {
- var _this = this;
- var done = function done() {
- if (expandParent) {
- var parent = _this.parent;
- while (parent.level > 0) {
- parent.expanded = true;
- parent = parent.parent;
- }
- }
- _this.expanded = true;
- if (callback) callback();
- };
- if (this.shouldLoadData()) {
- this.loadData(function (data) {
- if (data instanceof Array) {
- if (_this.checked) {
- _this.setChecked(true, true);
- } else if (!_this.store.checkStrictly) {
- reInitChecked(_this);
- }
- done();
- }
- });
- } else {
- done();
- }
- };
- Node.prototype.doCreateChildren = function doCreateChildren(array) {
- var _this2 = this;
- var defaultProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- array.forEach(function (item) {
- _this2.insertChild(merge_default()({ data: item }, defaultProps), undefined, true);
- });
- };
- Node.prototype.collapse = function collapse() {
- this.expanded = false;
- };
- Node.prototype.shouldLoadData = function shouldLoadData() {
- return this.store.lazy === true && this.store.load && !this.loaded;
- };
- Node.prototype.updateLeafState = function updateLeafState() {
- if (this.store.lazy === true && this.loaded !== true && typeof this.isLeafByUser !== 'undefined') {
- this.isLeaf = this.isLeafByUser;
- return;
- }
- var childNodes = this.childNodes;
- if (!this.store.lazy || this.store.lazy === true && this.loaded === true) {
- this.isLeaf = !childNodes || childNodes.length === 0;
- return;
- }
- this.isLeaf = false;
- };
- Node.prototype.setChecked = function setChecked(value, deep, recursion, passValue) {
- var _this3 = this;
- this.indeterminate = value === 'half';
- this.checked = value === true;
- if (this.store.checkStrictly) return;
- if (!(this.shouldLoadData() && !this.store.checkDescendants)) {
- var _getChildState2 = getChildState(this.childNodes),
- all = _getChildState2.all,
- allWithoutDisable = _getChildState2.allWithoutDisable;
- if (!this.isLeaf && !all && allWithoutDisable) {
- this.checked = false;
- value = false;
- }
- var handleDescendants = function handleDescendants() {
- if (deep) {
- var childNodes = _this3.childNodes;
- for (var i = 0, j = childNodes.length; i < j; i++) {
- var child = childNodes[i];
- passValue = passValue || value !== false;
- var isCheck = child.disabled ? child.checked : passValue;
- child.setChecked(isCheck, deep, true, passValue);
- }
- var _getChildState3 = getChildState(childNodes),
- half = _getChildState3.half,
- _all = _getChildState3.all;
- if (!_all) {
- _this3.checked = _all;
- _this3.indeterminate = half;
- }
- }
- };
- if (this.shouldLoadData()) {
- // Only work on lazy load data.
- this.loadData(function () {
- handleDescendants();
- reInitChecked(_this3);
- }, {
- checked: value !== false
- });
- return;
- } else {
- handleDescendants();
- }
- }
- var parent = this.parent;
- if (!parent || parent.level === 0) return;
- if (!recursion) {
- reInitChecked(parent);
- }
- };
- Node.prototype.getChildren = function getChildren() {
- var forceInit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- // this is data
- if (this.level === 0) return this.data;
- var data = this.data;
- if (!data) return null;
- var props = this.store.props;
- var children = 'children';
- if (props) {
- children = props.children || 'children';
- }
- if (data[children] === undefined) {
- data[children] = null;
- }
- if (forceInit && !data[children]) {
- data[children] = [];
- }
- return data[children];
- };
- Node.prototype.updateChildren = function updateChildren() {
- var _this4 = this;
- var newData = this.getChildren() || [];
- var oldData = this.childNodes.map(function (node) {
- return node.data;
- });
- var newDataMap = {};
- var newNodes = [];
- newData.forEach(function (item, index) {
- if (item[NODE_KEY]) {
- newDataMap[item[NODE_KEY]] = { index: index, data: item };
- } else {
- newNodes.push({ index: index, data: item });
- }
- });
- if (!this.store.lazy) {
- oldData.forEach(function (item) {
- if (!newDataMap[item[NODE_KEY]]) _this4.removeChildByData(item);
- });
- }
- newNodes.forEach(function (_ref) {
- var index = _ref.index,
- data = _ref.data;
- _this4.insertChild({ data: data }, index);
- });
- this.updateLeafState();
- };
- Node.prototype.loadData = function loadData(callback) {
- var _this5 = this;
- var defaultProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- if (this.store.lazy === true && this.store.load && !this.loaded && (!this.loading || Object.keys(defaultProps).length)) {
- this.loading = true;
- var resolve = function resolve(children) {
- _this5.loaded = true;
- _this5.loading = false;
- _this5.childNodes = [];
- _this5.doCreateChildren(children, defaultProps);
- _this5.updateLeafState();
- if (callback) {
- callback.call(_this5, children);
- }
- };
- this.store.load(this, resolve);
- } else {
- if (callback) {
- callback.call(this);
- }
- }
- };
- _createClass(Node, [{
- key: 'label',
- get: function get() {
- return getPropertyFromData(this, 'label');
- }
- }, {
- key: 'key',
- get: function get() {
- var nodeKey = this.store.key;
- if (this.data) return this.data[nodeKey];
- return null;
- }
- }, {
- key: 'disabled',
- get: function get() {
- return getPropertyFromData(this, 'disabled');
- }
- }, {
- key: 'nextSibling',
- get: function get() {
- var parent = this.parent;
- if (parent) {
- var index = parent.childNodes.indexOf(this);
- if (index > -1) {
- return parent.childNodes[index + 1];
- }
- }
- return null;
- }
- }, {
- key: 'previousSibling',
- get: function get() {
- var parent = this.parent;
- if (parent) {
- var index = parent.childNodes.indexOf(this);
- if (index > -1) {
- return index > 0 ? parent.childNodes[index - 1] : null;
- }
- }
- return null;
- }
- }]);
- return Node;
- }();
- /* harmony default export */ var model_node = (node_Node);
- // CONCATENATED MODULE: ./packages/tree/src/model/tree-store.js
- var tree_store_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- function tree_store_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var tree_store_TreeStore = function () {
- function TreeStore(options) {
- var _this = this;
- tree_store_classCallCheck(this, TreeStore);
- this.currentNode = null;
- this.currentNodeKey = null;
- for (var option in options) {
- if (options.hasOwnProperty(option)) {
- this[option] = options[option];
- }
- }
- this.nodesMap = {};
- this.root = new model_node({
- data: this.data,
- store: this
- });
- if (this.lazy && this.load) {
- var loadFn = this.load;
- loadFn(this.root, function (data) {
- _this.root.doCreateChildren(data);
- _this._initDefaultCheckedNodes();
- });
- } else {
- this._initDefaultCheckedNodes();
- }
- }
- TreeStore.prototype.filter = function filter(value) {
- var filterNodeMethod = this.filterNodeMethod;
- var lazy = this.lazy;
- var traverse = function traverse(node) {
- var childNodes = node.root ? node.root.childNodes : node.childNodes;
- childNodes.forEach(function (child) {
- child.visible = filterNodeMethod.call(child, value, child.data, child);
- traverse(child);
- });
- if (!node.visible && childNodes.length) {
- var allHidden = true;
- childNodes.forEach(function (child) {
- if (child.visible) allHidden = false;
- });
- if (node.root) {
- node.root.visible = allHidden === false;
- } else {
- node.visible = allHidden === false;
- }
- }
- if (!value) return;
- if (node.visible && !node.isLeaf && !lazy) node.expand();
- };
- traverse(this);
- };
- TreeStore.prototype.setData = function setData(newVal) {
- var instanceChanged = newVal !== this.root.data;
- if (instanceChanged) {
- this.root.setData(newVal);
- this._initDefaultCheckedNodes();
- } else {
- this.root.updateChildren();
- }
- };
- TreeStore.prototype.getNode = function getNode(data) {
- if (data instanceof model_node) return data;
- var key = (typeof data === 'undefined' ? 'undefined' : tree_store_typeof(data)) !== 'object' ? data : util_getNodeKey(this.key, data);
- return this.nodesMap[key] || null;
- };
- TreeStore.prototype.insertBefore = function insertBefore(data, refData) {
- var refNode = this.getNode(refData);
- refNode.parent.insertBefore({ data: data }, refNode);
- };
- TreeStore.prototype.insertAfter = function insertAfter(data, refData) {
- var refNode = this.getNode(refData);
- refNode.parent.insertAfter({ data: data }, refNode);
- };
- TreeStore.prototype.remove = function remove(data) {
- var node = this.getNode(data);
- if (node && node.parent) {
- if (node === this.currentNode) {
- this.currentNode = null;
- }
- node.parent.removeChild(node);
- }
- };
- TreeStore.prototype.append = function append(data, parentData) {
- var parentNode = parentData ? this.getNode(parentData) : this.root;
- if (parentNode) {
- parentNode.insertChild({ data: data });
- }
- };
- TreeStore.prototype._initDefaultCheckedNodes = function _initDefaultCheckedNodes() {
- var _this2 = this;
- var defaultCheckedKeys = this.defaultCheckedKeys || [];
- var nodesMap = this.nodesMap;
- defaultCheckedKeys.forEach(function (checkedKey) {
- var node = nodesMap[checkedKey];
- if (node) {
- node.setChecked(true, !_this2.checkStrictly);
- }
- });
- };
- TreeStore.prototype._initDefaultCheckedNode = function _initDefaultCheckedNode(node) {
- var defaultCheckedKeys = this.defaultCheckedKeys || [];
- if (defaultCheckedKeys.indexOf(node.key) !== -1) {
- node.setChecked(true, !this.checkStrictly);
- }
- };
- TreeStore.prototype.setDefaultCheckedKey = function setDefaultCheckedKey(newVal) {
- if (newVal !== this.defaultCheckedKeys) {
- this.defaultCheckedKeys = newVal;
- this._initDefaultCheckedNodes();
- }
- };
- TreeStore.prototype.registerNode = function registerNode(node) {
- var key = this.key;
- if (!key || !node || !node.data) return;
- var nodeKey = node.key;
- if (nodeKey !== undefined) this.nodesMap[node.key] = node;
- };
- TreeStore.prototype.deregisterNode = function deregisterNode(node) {
- var _this3 = this;
- var key = this.key;
- if (!key || !node || !node.data) return;
- node.childNodes.forEach(function (child) {
- _this3.deregisterNode(child);
- });
- delete this.nodesMap[node.key];
- };
- TreeStore.prototype.getCheckedNodes = function getCheckedNodes() {
- var leafOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- var includeHalfChecked = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- var checkedNodes = [];
- var traverse = function traverse(node) {
- var childNodes = node.root ? node.root.childNodes : node.childNodes;
- childNodes.forEach(function (child) {
- if ((child.checked || includeHalfChecked && child.indeterminate) && (!leafOnly || leafOnly && child.isLeaf)) {
- checkedNodes.push(child.data);
- }
- traverse(child);
- });
- };
- traverse(this);
- return checkedNodes;
- };
- TreeStore.prototype.getCheckedKeys = function getCheckedKeys() {
- var _this4 = this;
- var leafOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- return this.getCheckedNodes(leafOnly).map(function (data) {
- return (data || {})[_this4.key];
- });
- };
- TreeStore.prototype.getHalfCheckedNodes = function getHalfCheckedNodes() {
- var nodes = [];
- var traverse = function traverse(node) {
- var childNodes = node.root ? node.root.childNodes : node.childNodes;
- childNodes.forEach(function (child) {
- if (child.indeterminate) {
- nodes.push(child.data);
- }
- traverse(child);
- });
- };
- traverse(this);
- return nodes;
- };
- TreeStore.prototype.getHalfCheckedKeys = function getHalfCheckedKeys() {
- var _this5 = this;
- return this.getHalfCheckedNodes().map(function (data) {
- return (data || {})[_this5.key];
- });
- };
- TreeStore.prototype._getAllNodes = function _getAllNodes() {
- var allNodes = [];
- var nodesMap = this.nodesMap;
- for (var nodeKey in nodesMap) {
- if (nodesMap.hasOwnProperty(nodeKey)) {
- allNodes.push(nodesMap[nodeKey]);
- }
- }
- return allNodes;
- };
- TreeStore.prototype.updateChildren = function updateChildren(key, data) {
- var node = this.nodesMap[key];
- if (!node) return;
- var childNodes = node.childNodes;
- for (var i = childNodes.length - 1; i >= 0; i--) {
- var child = childNodes[i];
- this.remove(child.data);
- }
- for (var _i = 0, j = data.length; _i < j; _i++) {
- var _child = data[_i];
- this.append(_child, node.data);
- }
- };
- TreeStore.prototype._setCheckedKeys = function _setCheckedKeys(key) {
- var leafOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- var checkedKeys = arguments[2];
- var allNodes = this._getAllNodes().sort(function (a, b) {
- return b.level - a.level;
- });
- var cache = Object.create(null);
- var keys = Object.keys(checkedKeys);
- allNodes.forEach(function (node) {
- return node.setChecked(false, false);
- });
- for (var i = 0, j = allNodes.length; i < j; i++) {
- var node = allNodes[i];
- var nodeKey = node.data[key].toString();
- var checked = keys.indexOf(nodeKey) > -1;
- if (!checked) {
- if (node.checked && !cache[nodeKey]) {
- node.setChecked(false, false);
- }
- continue;
- }
- var parent = node.parent;
- while (parent && parent.level > 0) {
- cache[parent.data[key]] = true;
- parent = parent.parent;
- }
- if (node.isLeaf || this.checkStrictly) {
- node.setChecked(true, false);
- continue;
- }
- node.setChecked(true, true);
- if (leafOnly) {
- (function () {
- node.setChecked(false, false);
- var traverse = function traverse(node) {
- var childNodes = node.childNodes;
- childNodes.forEach(function (child) {
- if (!child.isLeaf) {
- child.setChecked(false, false);
- }
- traverse(child);
- });
- };
- traverse(node);
- })();
- }
- }
- };
- TreeStore.prototype.setCheckedNodes = function setCheckedNodes(array) {
- var leafOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- var key = this.key;
- var checkedKeys = {};
- array.forEach(function (item) {
- checkedKeys[(item || {})[key]] = true;
- });
- this._setCheckedKeys(key, leafOnly, checkedKeys);
- };
- TreeStore.prototype.setCheckedKeys = function setCheckedKeys(keys) {
- var leafOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- this.defaultCheckedKeys = keys;
- var key = this.key;
- var checkedKeys = {};
- keys.forEach(function (key) {
- checkedKeys[key] = true;
- });
- this._setCheckedKeys(key, leafOnly, checkedKeys);
- };
- TreeStore.prototype.setDefaultExpandedKeys = function setDefaultExpandedKeys(keys) {
- var _this6 = this;
- keys = keys || [];
- this.defaultExpandedKeys = keys;
- keys.forEach(function (key) {
- var node = _this6.getNode(key);
- if (node) node.expand(null, _this6.autoExpandParent);
- });
- };
- TreeStore.prototype.setChecked = function setChecked(data, checked, deep) {
- var node = this.getNode(data);
- if (node) {
- node.setChecked(!!checked, deep);
- }
- };
- TreeStore.prototype.getCurrentNode = function getCurrentNode() {
- return this.currentNode;
- };
- TreeStore.prototype.setCurrentNode = function setCurrentNode(currentNode) {
- var prevCurrentNode = this.currentNode;
- if (prevCurrentNode) {
- prevCurrentNode.isCurrent = false;
- }
- this.currentNode = currentNode;
- this.currentNode.isCurrent = true;
- };
- TreeStore.prototype.setUserCurrentNode = function setUserCurrentNode(node) {
- var key = node[this.key];
- var currNode = this.nodesMap[key];
- this.setCurrentNode(currNode);
- };
- TreeStore.prototype.setCurrentNodeKey = function setCurrentNodeKey(key) {
- if (key === null) {
- this.currentNode = null;
- return;
- }
- var node = this.getNode(key);
- if (node) {
- this.setCurrentNode(node);
- }
- };
- return TreeStore;
- }();
- /* harmony default export */ var tree_store = (tree_store_TreeStore);
- ;
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/tree/src/tree-node.vue?vue&type=template&id=3ba3ef0e&
- var tree_nodevue_type_template_id_3ba3ef0e_render = function() {
- var this$1 = this
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.node.visible,
- expression: "node.visible"
- }
- ],
- ref: "node",
- staticClass: "el-tree-node",
- class: {
- "is-expanded": _vm.expanded,
- "is-current": _vm.node.isCurrent,
- "is-hidden": !_vm.node.visible,
- "is-focusable": !_vm.node.disabled,
- "is-checked": !_vm.node.disabled && _vm.node.checked
- },
- attrs: {
- role: "treeitem",
- tabindex: "-1",
- "aria-expanded": _vm.expanded,
- "aria-disabled": _vm.node.disabled,
- "aria-checked": _vm.node.checked,
- draggable: _vm.tree.draggable
- },
- on: {
- click: function($event) {
- $event.stopPropagation()
- return _vm.handleClick($event)
- },
- contextmenu: function($event) {
- return this$1.handleContextMenu($event)
- },
- dragstart: function($event) {
- $event.stopPropagation()
- return _vm.handleDragStart($event)
- },
- dragover: function($event) {
- $event.stopPropagation()
- return _vm.handleDragOver($event)
- },
- dragend: function($event) {
- $event.stopPropagation()
- return _vm.handleDragEnd($event)
- },
- drop: function($event) {
- $event.stopPropagation()
- return _vm.handleDrop($event)
- }
- }
- },
- [
- _c(
- "div",
- {
- staticClass: "el-tree-node__content",
- style: {
- "padding-left": (_vm.node.level - 1) * _vm.tree.indent + "px"
- }
- },
- [
- _c("span", {
- class: [
- {
- "is-leaf": _vm.node.isLeaf,
- expanded: !_vm.node.isLeaf && _vm.expanded
- },
- "el-tree-node__expand-icon",
- _vm.tree.iconClass ? _vm.tree.iconClass : "el-icon-caret-right"
- ],
- on: {
- click: function($event) {
- $event.stopPropagation()
- return _vm.handleExpandIconClick($event)
- }
- }
- }),
- _vm.showCheckbox
- ? _c("el-checkbox", {
- attrs: {
- indeterminate: _vm.node.indeterminate,
- disabled: !!_vm.node.disabled
- },
- on: { change: _vm.handleCheckChange },
- nativeOn: {
- click: function($event) {
- $event.stopPropagation()
- }
- },
- model: {
- value: _vm.node.checked,
- callback: function($$v) {
- _vm.$set(_vm.node, "checked", $$v)
- },
- expression: "node.checked"
- }
- })
- : _vm._e(),
- _vm.node.loading
- ? _c("span", {
- staticClass: "el-tree-node__loading-icon el-icon-loading"
- })
- : _vm._e(),
- _c("node-content", { attrs: { node: _vm.node } })
- ],
- 1
- ),
- _c("el-collapse-transition", [
- !_vm.renderAfterExpand || _vm.childNodeRendered
- ? _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.expanded,
- expression: "expanded"
- }
- ],
- staticClass: "el-tree-node__children",
- attrs: { role: "group", "aria-expanded": _vm.expanded }
- },
- _vm._l(_vm.node.childNodes, function(child) {
- return _c("el-tree-node", {
- key: _vm.getNodeKey(child),
- attrs: {
- "render-content": _vm.renderContent,
- "render-after-expand": _vm.renderAfterExpand,
- "show-checkbox": _vm.showCheckbox,
- node: child
- },
- on: { "node-expand": _vm.handleChildNodeExpand }
- })
- }),
- 1
- )
- : _vm._e()
- ])
- ],
- 1
- )
- }
- var tree_nodevue_type_template_id_3ba3ef0e_staticRenderFns = []
- tree_nodevue_type_template_id_3ba3ef0e_render._withStripped = true
- // CONCATENATED MODULE: ./packages/tree/src/tree-node.vue?vue&type=template&id=3ba3ef0e&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tree/src/tree-node.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var tree_nodevue_type_script_lang_js_ = ({
- name: 'ElTreeNode',
- componentName: 'ElTreeNode',
- mixins: [emitter_default.a],
- props: {
- node: {
- default: function _default() {
- return {};
- }
- },
- props: {},
- renderContent: Function,
- renderAfterExpand: {
- type: Boolean,
- default: true
- },
- showCheckbox: {
- type: Boolean,
- default: false
- }
- },
- components: {
- ElCollapseTransition: collapse_transition_default.a,
- ElCheckbox: checkbox_default.a,
- NodeContent: {
- props: {
- node: {
- required: true
- }
- },
- render: function render(h) {
- var parent = this.$parent;
- var tree = parent.tree;
- var node = this.node;
- var data = node.data,
- store = node.store;
- return parent.renderContent ? parent.renderContent.call(parent._renderProxy, h, { _self: tree.$vnode.context, node: node, data: data, store: store }) : tree.$scopedSlots.default ? tree.$scopedSlots.default({ node: node, data: data }) : h(
- 'span',
- { 'class': 'el-tree-node__label' },
- [node.label]
- );
- }
- }
- },
- data: function data() {
- return {
- tree: null,
- expanded: false,
- childNodeRendered: false,
- oldChecked: null,
- oldIndeterminate: null
- };
- },
- watch: {
- 'node.indeterminate': function nodeIndeterminate(val) {
- this.handleSelectChange(this.node.checked, val);
- },
- 'node.checked': function nodeChecked(val) {
- this.handleSelectChange(val, this.node.indeterminate);
- },
- 'node.expanded': function nodeExpanded(val) {
- var _this = this;
- this.$nextTick(function () {
- return _this.expanded = val;
- });
- if (val) {
- this.childNodeRendered = true;
- }
- }
- },
- methods: {
- getNodeKey: function getNodeKey(node) {
- return util_getNodeKey(this.tree.nodeKey, node.data);
- },
- handleSelectChange: function handleSelectChange(checked, indeterminate) {
- if (this.oldChecked !== checked && this.oldIndeterminate !== indeterminate) {
- this.tree.$emit('check-change', this.node.data, checked, indeterminate);
- }
- this.oldChecked = checked;
- this.indeterminate = indeterminate;
- },
- handleClick: function handleClick() {
- var store = this.tree.store;
- store.setCurrentNode(this.node);
- this.tree.$emit('current-change', store.currentNode ? store.currentNode.data : null, store.currentNode);
- this.tree.currentNode = this;
- if (this.tree.expandOnClickNode) {
- this.handleExpandIconClick();
- }
- if (this.tree.checkOnClickNode && !this.node.disabled) {
- this.handleCheckChange(null, {
- target: { checked: !this.node.checked }
- });
- }
- this.tree.$emit('node-click', this.node.data, this.node, this);
- },
- handleContextMenu: function handleContextMenu(event) {
- if (this.tree._events['node-contextmenu'] && this.tree._events['node-contextmenu'].length > 0) {
- event.stopPropagation();
- event.preventDefault();
- }
- this.tree.$emit('node-contextmenu', event, this.node.data, this.node, this);
- },
- handleExpandIconClick: function handleExpandIconClick() {
- if (this.node.isLeaf) return;
- if (this.expanded) {
- this.tree.$emit('node-collapse', this.node.data, this.node, this);
- this.node.collapse();
- } else {
- this.node.expand();
- this.$emit('node-expand', this.node.data, this.node, this);
- }
- },
- handleCheckChange: function handleCheckChange(value, ev) {
- var _this2 = this;
- this.node.setChecked(ev.target.checked, !this.tree.checkStrictly);
- this.$nextTick(function () {
- var store = _this2.tree.store;
- _this2.tree.$emit('check', _this2.node.data, {
- checkedNodes: store.getCheckedNodes(),
- checkedKeys: store.getCheckedKeys(),
- halfCheckedNodes: store.getHalfCheckedNodes(),
- halfCheckedKeys: store.getHalfCheckedKeys()
- });
- });
- },
- handleChildNodeExpand: function handleChildNodeExpand(nodeData, node, instance) {
- this.broadcast('ElTreeNode', 'tree-node-expand', node);
- this.tree.$emit('node-expand', nodeData, node, instance);
- },
- handleDragStart: function handleDragStart(event) {
- if (!this.tree.draggable) return;
- this.tree.$emit('tree-node-drag-start', event, this);
- },
- handleDragOver: function handleDragOver(event) {
- if (!this.tree.draggable) return;
- this.tree.$emit('tree-node-drag-over', event, this);
- event.preventDefault();
- },
- handleDrop: function handleDrop(event) {
- event.preventDefault();
- },
- handleDragEnd: function handleDragEnd(event) {
- if (!this.tree.draggable) return;
- this.tree.$emit('tree-node-drag-end', event, this);
- }
- },
- created: function created() {
- var _this3 = this;
- var parent = this.$parent;
- if (parent.isTree) {
- this.tree = parent;
- } else {
- this.tree = parent.tree;
- }
- var tree = this.tree;
- if (!tree) {
- console.warn('Can not find node\'s tree.');
- }
- var props = tree.props || {};
- var childrenKey = props['children'] || 'children';
- this.$watch('node.data.' + childrenKey, function () {
- _this3.node.updateChildren();
- });
- if (this.node.expanded) {
- this.expanded = true;
- this.childNodeRendered = true;
- }
- if (this.tree.accordion) {
- this.$on('tree-node-expand', function (node) {
- if (_this3.node !== node) {
- _this3.node.collapse();
- }
- });
- }
- }
- });
- // CONCATENATED MODULE: ./packages/tree/src/tree-node.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_tree_nodevue_type_script_lang_js_ = (tree_nodevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tree/src/tree-node.vue
- /* normalize component */
- var tree_node_component = normalizeComponent(
- src_tree_nodevue_type_script_lang_js_,
- tree_nodevue_type_template_id_3ba3ef0e_render,
- tree_nodevue_type_template_id_3ba3ef0e_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tree_node_api; }
- tree_node_component.options.__file = "packages/tree/src/tree-node.vue"
- /* harmony default export */ var tree_node = (tree_node_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/tree/src/tree.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var treevue_type_script_lang_js_ = ({
- name: 'ElTree',
- mixins: [emitter_default.a],
- components: {
- ElTreeNode: tree_node
- },
- data: function data() {
- return {
- store: null,
- root: null,
- currentNode: null,
- treeItems: null,
- checkboxItems: [],
- dragState: {
- showDropIndicator: false,
- draggingNode: null,
- dropNode: null,
- allowDrop: true
- }
- };
- },
- props: {
- data: {
- type: Array
- },
- emptyText: {
- type: String,
- default: function _default() {
- return Object(lib_locale_["t"])('el.tree.emptyText');
- }
- },
- renderAfterExpand: {
- type: Boolean,
- default: true
- },
- nodeKey: String,
- checkStrictly: Boolean,
- defaultExpandAll: Boolean,
- expandOnClickNode: {
- type: Boolean,
- default: true
- },
- checkOnClickNode: Boolean,
- checkDescendants: {
- type: Boolean,
- default: false
- },
- autoExpandParent: {
- type: Boolean,
- default: true
- },
- defaultCheckedKeys: Array,
- defaultExpandedKeys: Array,
- currentNodeKey: [String, Number],
- renderContent: Function,
- showCheckbox: {
- type: Boolean,
- default: false
- },
- draggable: {
- type: Boolean,
- default: false
- },
- allowDrag: Function,
- allowDrop: Function,
- props: {
- default: function _default() {
- return {
- children: 'children',
- label: 'label',
- disabled: 'disabled'
- };
- }
- },
- lazy: {
- type: Boolean,
- default: false
- },
- highlightCurrent: Boolean,
- load: Function,
- filterNodeMethod: Function,
- accordion: Boolean,
- indent: {
- type: Number,
- default: 18
- },
- iconClass: String
- },
- computed: {
- children: {
- set: function set(value) {
- this.data = value;
- },
- get: function get() {
- return this.data;
- }
- },
- treeItemArray: function treeItemArray() {
- return Array.prototype.slice.call(this.treeItems);
- },
- isEmpty: function isEmpty() {
- var childNodes = this.root.childNodes;
- return !childNodes || childNodes.length === 0 || childNodes.every(function (_ref) {
- var visible = _ref.visible;
- return !visible;
- });
- }
- },
- watch: {
- defaultCheckedKeys: function defaultCheckedKeys(newVal) {
- this.store.setDefaultCheckedKey(newVal);
- },
- defaultExpandedKeys: function defaultExpandedKeys(newVal) {
- this.store.defaultExpandedKeys = newVal;
- this.store.setDefaultExpandedKeys(newVal);
- },
- data: function data(newVal) {
- this.store.setData(newVal);
- },
- checkboxItems: function checkboxItems(val) {
- Array.prototype.forEach.call(val, function (checkbox) {
- checkbox.setAttribute('tabindex', -1);
- });
- },
- checkStrictly: function checkStrictly(newVal) {
- this.store.checkStrictly = newVal;
- }
- },
- methods: {
- filter: function filter(value) {
- if (!this.filterNodeMethod) throw new Error('[Tree] filterNodeMethod is required when filter');
- this.store.filter(value);
- },
- getNodeKey: function getNodeKey(node) {
- return util_getNodeKey(this.nodeKey, node.data);
- },
- getNodePath: function getNodePath(data) {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in getNodePath');
- var node = this.store.getNode(data);
- if (!node) return [];
- var path = [node.data];
- var parent = node.parent;
- while (parent && parent !== this.root) {
- path.push(parent.data);
- parent = parent.parent;
- }
- return path.reverse();
- },
- getCheckedNodes: function getCheckedNodes(leafOnly, includeHalfChecked) {
- return this.store.getCheckedNodes(leafOnly, includeHalfChecked);
- },
- getCheckedKeys: function getCheckedKeys(leafOnly) {
- return this.store.getCheckedKeys(leafOnly);
- },
- getCurrentNode: function getCurrentNode() {
- var currentNode = this.store.getCurrentNode();
- return currentNode ? currentNode.data : null;
- },
- getCurrentKey: function getCurrentKey() {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in getCurrentKey');
- var currentNode = this.getCurrentNode();
- return currentNode ? currentNode[this.nodeKey] : null;
- },
- setCheckedNodes: function setCheckedNodes(nodes, leafOnly) {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in setCheckedNodes');
- this.store.setCheckedNodes(nodes, leafOnly);
- },
- setCheckedKeys: function setCheckedKeys(keys, leafOnly) {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in setCheckedKeys');
- this.store.setCheckedKeys(keys, leafOnly);
- },
- setChecked: function setChecked(data, checked, deep) {
- this.store.setChecked(data, checked, deep);
- },
- getHalfCheckedNodes: function getHalfCheckedNodes() {
- return this.store.getHalfCheckedNodes();
- },
- getHalfCheckedKeys: function getHalfCheckedKeys() {
- return this.store.getHalfCheckedKeys();
- },
- setCurrentNode: function setCurrentNode(node) {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in setCurrentNode');
- this.store.setUserCurrentNode(node);
- },
- setCurrentKey: function setCurrentKey(key) {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in setCurrentKey');
- this.store.setCurrentNodeKey(key);
- },
- getNode: function getNode(data) {
- return this.store.getNode(data);
- },
- remove: function remove(data) {
- this.store.remove(data);
- },
- append: function append(data, parentNode) {
- this.store.append(data, parentNode);
- },
- insertBefore: function insertBefore(data, refNode) {
- this.store.insertBefore(data, refNode);
- },
- insertAfter: function insertAfter(data, refNode) {
- this.store.insertAfter(data, refNode);
- },
- handleNodeExpand: function handleNodeExpand(nodeData, node, instance) {
- this.broadcast('ElTreeNode', 'tree-node-expand', node);
- this.$emit('node-expand', nodeData, node, instance);
- },
- updateKeyChildren: function updateKeyChildren(key, data) {
- if (!this.nodeKey) throw new Error('[Tree] nodeKey is required in updateKeyChild');
- this.store.updateChildren(key, data);
- },
- initTabIndex: function initTabIndex() {
- this.treeItems = this.$el.querySelectorAll('.is-focusable[role=treeitem]');
- this.checkboxItems = this.$el.querySelectorAll('input[type=checkbox]');
- var checkedItem = this.$el.querySelectorAll('.is-checked[role=treeitem]');
- if (checkedItem.length) {
- checkedItem[0].setAttribute('tabindex', 0);
- return;
- }
- this.treeItems[0] && this.treeItems[0].setAttribute('tabindex', 0);
- },
- handleKeydown: function handleKeydown(ev) {
- var currentItem = ev.target;
- if (currentItem.className.indexOf('el-tree-node') === -1) return;
- var keyCode = ev.keyCode;
- this.treeItems = this.$el.querySelectorAll('.is-focusable[role=treeitem]');
- var currentIndex = this.treeItemArray.indexOf(currentItem);
- var nextIndex = void 0;
- if ([38, 40].indexOf(keyCode) > -1) {
- // up、down
- ev.preventDefault();
- if (keyCode === 38) {
- // up
- nextIndex = currentIndex !== 0 ? currentIndex - 1 : 0;
- } else {
- nextIndex = currentIndex < this.treeItemArray.length - 1 ? currentIndex + 1 : 0;
- }
- this.treeItemArray[nextIndex].focus(); // 选中
- }
- if ([37, 39].indexOf(keyCode) > -1) {
- // left、right 展开
- ev.preventDefault();
- currentItem.click(); // 选中
- }
- var hasInput = currentItem.querySelector('[type="checkbox"]');
- if ([13, 32].indexOf(keyCode) > -1 && hasInput) {
- // space enter选中checkbox
- ev.preventDefault();
- hasInput.click();
- }
- }
- },
- created: function created() {
- var _this = this;
- this.isTree = true;
- this.store = new tree_store({
- key: this.nodeKey,
- data: this.data,
- lazy: this.lazy,
- props: this.props,
- load: this.load,
- currentNodeKey: this.currentNodeKey,
- checkStrictly: this.checkStrictly,
- checkDescendants: this.checkDescendants,
- defaultCheckedKeys: this.defaultCheckedKeys,
- defaultExpandedKeys: this.defaultExpandedKeys,
- autoExpandParent: this.autoExpandParent,
- defaultExpandAll: this.defaultExpandAll,
- filterNodeMethod: this.filterNodeMethod
- });
- this.root = this.store.root;
- var dragState = this.dragState;
- this.$on('tree-node-drag-start', function (event, treeNode) {
- if (typeof _this.allowDrag === 'function' && !_this.allowDrag(treeNode.node)) {
- event.preventDefault();
- return false;
- }
- event.dataTransfer.effectAllowed = 'move';
- // wrap in try catch to address IE's error when first param is 'text/plain'
- try {
- // setData is required for draggable to work in FireFox
- // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox
- event.dataTransfer.setData('text/plain', '');
- } catch (e) {}
- dragState.draggingNode = treeNode;
- _this.$emit('node-drag-start', treeNode.node, event);
- });
- this.$on('tree-node-drag-over', function (event, treeNode) {
- var dropNode = findNearestComponent(event.target, 'ElTreeNode');
- var oldDropNode = dragState.dropNode;
- if (oldDropNode && oldDropNode !== dropNode) {
- Object(dom_["removeClass"])(oldDropNode.$el, 'is-drop-inner');
- }
- var draggingNode = dragState.draggingNode;
- if (!draggingNode || !dropNode) return;
- var dropPrev = true;
- var dropInner = true;
- var dropNext = true;
- var userAllowDropInner = true;
- if (typeof _this.allowDrop === 'function') {
- dropPrev = _this.allowDrop(draggingNode.node, dropNode.node, 'prev');
- userAllowDropInner = dropInner = _this.allowDrop(draggingNode.node, dropNode.node, 'inner');
- dropNext = _this.allowDrop(draggingNode.node, dropNode.node, 'next');
- }
- event.dataTransfer.dropEffect = dropInner ? 'move' : 'none';
- if ((dropPrev || dropInner || dropNext) && oldDropNode !== dropNode) {
- if (oldDropNode) {
- _this.$emit('node-drag-leave', draggingNode.node, oldDropNode.node, event);
- }
- _this.$emit('node-drag-enter', draggingNode.node, dropNode.node, event);
- }
- if (dropPrev || dropInner || dropNext) {
- dragState.dropNode = dropNode;
- }
- if (dropNode.node.nextSibling === draggingNode.node) {
- dropNext = false;
- }
- if (dropNode.node.previousSibling === draggingNode.node) {
- dropPrev = false;
- }
- if (dropNode.node.contains(draggingNode.node, false)) {
- dropInner = false;
- }
- if (draggingNode.node === dropNode.node || draggingNode.node.contains(dropNode.node)) {
- dropPrev = false;
- dropInner = false;
- dropNext = false;
- }
- var targetPosition = dropNode.$el.getBoundingClientRect();
- var treePosition = _this.$el.getBoundingClientRect();
- var dropType = void 0;
- var prevPercent = dropPrev ? dropInner ? 0.25 : dropNext ? 0.45 : 1 : -1;
- var nextPercent = dropNext ? dropInner ? 0.75 : dropPrev ? 0.55 : 0 : 1;
- var indicatorTop = -9999;
- var distance = event.clientY - targetPosition.top;
- if (distance < targetPosition.height * prevPercent) {
- dropType = 'before';
- } else if (distance > targetPosition.height * nextPercent) {
- dropType = 'after';
- } else if (dropInner) {
- dropType = 'inner';
- } else {
- dropType = 'none';
- }
- var iconPosition = dropNode.$el.querySelector('.el-tree-node__expand-icon').getBoundingClientRect();
- var dropIndicator = _this.$refs.dropIndicator;
- if (dropType === 'before') {
- indicatorTop = iconPosition.top - treePosition.top;
- } else if (dropType === 'after') {
- indicatorTop = iconPosition.bottom - treePosition.top;
- }
- dropIndicator.style.top = indicatorTop + 'px';
- dropIndicator.style.left = iconPosition.right - treePosition.left + 'px';
- if (dropType === 'inner') {
- Object(dom_["addClass"])(dropNode.$el, 'is-drop-inner');
- } else {
- Object(dom_["removeClass"])(dropNode.$el, 'is-drop-inner');
- }
- dragState.showDropIndicator = dropType === 'before' || dropType === 'after';
- dragState.allowDrop = dragState.showDropIndicator || userAllowDropInner;
- dragState.dropType = dropType;
- _this.$emit('node-drag-over', draggingNode.node, dropNode.node, event);
- });
- this.$on('tree-node-drag-end', function (event) {
- var draggingNode = dragState.draggingNode,
- dropType = dragState.dropType,
- dropNode = dragState.dropNode;
- event.preventDefault();
- event.dataTransfer.dropEffect = 'move';
- if (draggingNode && dropNode) {
- var draggingNodeCopy = { data: draggingNode.node.data };
- if (dropType !== 'none') {
- draggingNode.node.remove();
- }
- if (dropType === 'before') {
- dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node);
- } else if (dropType === 'after') {
- dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node);
- } else if (dropType === 'inner') {
- dropNode.node.insertChild(draggingNodeCopy);
- }
- if (dropType !== 'none') {
- _this.store.registerNode(draggingNodeCopy);
- }
- Object(dom_["removeClass"])(dropNode.$el, 'is-drop-inner');
- _this.$emit('node-drag-end', draggingNode.node, dropNode.node, dropType, event);
- if (dropType !== 'none') {
- _this.$emit('node-drop', draggingNode.node, dropNode.node, dropType, event);
- }
- }
- if (draggingNode && !dropNode) {
- _this.$emit('node-drag-end', draggingNode.node, null, dropType, event);
- }
- dragState.showDropIndicator = false;
- dragState.draggingNode = null;
- dragState.dropNode = null;
- dragState.allowDrop = true;
- });
- },
- mounted: function mounted() {
- this.initTabIndex();
- this.$el.addEventListener('keydown', this.handleKeydown);
- },
- updated: function updated() {
- this.treeItems = this.$el.querySelectorAll('[role=treeitem]');
- this.checkboxItems = this.$el.querySelectorAll('input[type=checkbox]');
- }
- });
- // CONCATENATED MODULE: ./packages/tree/src/tree.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_treevue_type_script_lang_js_ = (treevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/tree/src/tree.vue
- /* normalize component */
- var tree_component = normalizeComponent(
- src_treevue_type_script_lang_js_,
- treevue_type_template_id_547575a6_render,
- treevue_type_template_id_547575a6_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var tree_api; }
- tree_component.options.__file = "packages/tree/src/tree.vue"
- /* harmony default export */ var tree = (tree_component.exports);
- // CONCATENATED MODULE: ./packages/tree/index.js
- /* istanbul ignore next */
- tree.install = function (Vue) {
- Vue.component(tree.name, tree);
- };
- /* harmony default export */ var packages_tree = (tree);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/alert/src/main.vue?vue&type=template&id=6e53341b&
- var mainvue_type_template_id_6e53341b_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("transition", { attrs: { name: "el-alert-fade" } }, [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-alert",
- class: [
- _vm.typeClass,
- _vm.center ? "is-center" : "",
- "is-" + _vm.effect
- ],
- attrs: { role: "alert" }
- },
- [
- _vm.showIcon
- ? _c("i", {
- staticClass: "el-alert__icon",
- class: [_vm.iconClass, _vm.isBigIcon]
- })
- : _vm._e(),
- _c("div", { staticClass: "el-alert__content" }, [
- _vm.title || _vm.$slots.title
- ? _c(
- "span",
- { staticClass: "el-alert__title", class: [_vm.isBoldTitle] },
- [_vm._t("title", [_vm._v(_vm._s(_vm.title))])],
- 2
- )
- : _vm._e(),
- _vm.$slots.default && !_vm.description
- ? _c(
- "p",
- { staticClass: "el-alert__description" },
- [_vm._t("default")],
- 2
- )
- : _vm._e(),
- _vm.description && !_vm.$slots.default
- ? _c("p", { staticClass: "el-alert__description" }, [
- _vm._v(_vm._s(_vm.description))
- ])
- : _vm._e(),
- _c(
- "i",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.closable,
- expression: "closable"
- }
- ],
- staticClass: "el-alert__closebtn",
- class: {
- "is-customed": _vm.closeText !== "",
- "el-icon-close": _vm.closeText === ""
- },
- on: {
- click: function($event) {
- _vm.close()
- }
- }
- },
- [_vm._v(_vm._s(_vm.closeText))]
- )
- ])
- ]
- )
- ])
- }
- var mainvue_type_template_id_6e53341b_staticRenderFns = []
- mainvue_type_template_id_6e53341b_render._withStripped = true
- // CONCATENATED MODULE: ./packages/alert/src/main.vue?vue&type=template&id=6e53341b&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/alert/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var TYPE_CLASSES_MAP = {
- 'success': 'el-icon-success',
- 'warning': 'el-icon-warning',
- 'error': 'el-icon-error'
- };
- /* harmony default export */ var alert_src_mainvue_type_script_lang_js_ = ({
- name: 'ElAlert',
- props: {
- title: {
- type: String,
- default: ''
- },
- description: {
- type: String,
- default: ''
- },
- type: {
- type: String,
- default: 'info'
- },
- closable: {
- type: Boolean,
- default: true
- },
- closeText: {
- type: String,
- default: ''
- },
- showIcon: Boolean,
- center: Boolean,
- effect: {
- type: String,
- default: 'light',
- validator: function validator(value) {
- return ['light', 'dark'].indexOf(value) !== -1;
- }
- }
- },
- data: function data() {
- return {
- visible: true
- };
- },
- methods: {
- close: function close() {
- this.visible = false;
- this.$emit('close');
- }
- },
- computed: {
- typeClass: function typeClass() {
- return 'el-alert--' + this.type;
- },
- iconClass: function iconClass() {
- return TYPE_CLASSES_MAP[this.type] || 'el-icon-info';
- },
- isBigIcon: function isBigIcon() {
- return this.description || this.$slots.default ? 'is-big' : '';
- },
- isBoldTitle: function isBoldTitle() {
- return this.description || this.$slots.default ? 'is-bold' : '';
- }
- }
- });
- // CONCATENATED MODULE: ./packages/alert/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_alert_src_mainvue_type_script_lang_js_ = (alert_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/alert/src/main.vue
- /* normalize component */
- var alert_src_main_component = normalizeComponent(
- packages_alert_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_6e53341b_render,
- mainvue_type_template_id_6e53341b_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var alert_src_main_api; }
- alert_src_main_component.options.__file = "packages/alert/src/main.vue"
- /* harmony default export */ var alert_src_main = (alert_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/alert/index.js
- /* istanbul ignore next */
- alert_src_main.install = function (Vue) {
- Vue.component(alert_src_main.name, alert_src_main);
- };
- /* harmony default export */ var packages_alert = (alert_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/notification/src/main.vue?vue&type=template&id=43dbc3d8&
- var mainvue_type_template_id_43dbc3d8_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("transition", { attrs: { name: "el-notification-fade" } }, [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- class: ["el-notification", _vm.customClass, _vm.horizontalClass],
- style: _vm.positionStyle,
- attrs: { role: "alert" },
- on: {
- mouseenter: function($event) {
- _vm.clearTimer()
- },
- mouseleave: function($event) {
- _vm.startTimer()
- },
- click: _vm.click
- }
- },
- [
- _vm.type || _vm.iconClass
- ? _c("i", {
- staticClass: "el-notification__icon",
- class: [_vm.typeClass, _vm.iconClass]
- })
- : _vm._e(),
- _c(
- "div",
- {
- staticClass: "el-notification__group",
- class: { "is-with-icon": _vm.typeClass || _vm.iconClass }
- },
- [
- _c("h2", {
- staticClass: "el-notification__title",
- domProps: { textContent: _vm._s(_vm.title) }
- }),
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.message,
- expression: "message"
- }
- ],
- staticClass: "el-notification__content"
- },
- [
- _vm._t("default", [
- !_vm.dangerouslyUseHTMLString
- ? _c("p", [_vm._v(_vm._s(_vm.message))])
- : _c("p", { domProps: { innerHTML: _vm._s(_vm.message) } })
- ])
- ],
- 2
- ),
- _vm.showClose
- ? _c("div", {
- staticClass: "el-notification__closeBtn el-icon-close",
- on: {
- click: function($event) {
- $event.stopPropagation()
- return _vm.close($event)
- }
- }
- })
- : _vm._e()
- ]
- )
- ]
- )
- ])
- }
- var mainvue_type_template_id_43dbc3d8_staticRenderFns = []
- mainvue_type_template_id_43dbc3d8_render._withStripped = true
- // CONCATENATED MODULE: ./packages/notification/src/main.vue?vue&type=template&id=43dbc3d8&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/notification/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var mainvue_type_script_lang_js_typeMap = {
- success: 'success',
- info: 'info',
- warning: 'warning',
- error: 'error'
- };
- /* harmony default export */ var notification_src_mainvue_type_script_lang_js_ = ({
- data: function data() {
- return {
- visible: false,
- title: '',
- message: '',
- duration: 4500,
- type: '',
- showClose: true,
- customClass: '',
- iconClass: '',
- onClose: null,
- onClick: null,
- closed: false,
- verticalOffset: 0,
- timer: null,
- dangerouslyUseHTMLString: false,
- position: 'top-right'
- };
- },
- computed: {
- typeClass: function typeClass() {
- return this.type && mainvue_type_script_lang_js_typeMap[this.type] ? 'el-icon-' + mainvue_type_script_lang_js_typeMap[this.type] : '';
- },
- horizontalClass: function horizontalClass() {
- return this.position.indexOf('right') > -1 ? 'right' : 'left';
- },
- verticalProperty: function verticalProperty() {
- return (/^top-/.test(this.position) ? 'top' : 'bottom'
- );
- },
- positionStyle: function positionStyle() {
- var _ref;
- return _ref = {}, _ref[this.verticalProperty] = this.verticalOffset + 'px', _ref;
- }
- },
- watch: {
- closed: function closed(newVal) {
- if (newVal) {
- this.visible = false;
- this.$el.addEventListener('transitionend', this.destroyElement);
- }
- }
- },
- methods: {
- destroyElement: function destroyElement() {
- this.$el.removeEventListener('transitionend', this.destroyElement);
- this.$destroy(true);
- this.$el.parentNode.removeChild(this.$el);
- },
- click: function click() {
- if (typeof this.onClick === 'function') {
- this.onClick();
- }
- },
- close: function close() {
- this.closed = true;
- if (typeof this.onClose === 'function') {
- this.onClose();
- }
- },
- clearTimer: function clearTimer() {
- clearTimeout(this.timer);
- },
- startTimer: function startTimer() {
- var _this = this;
- if (this.duration > 0) {
- this.timer = setTimeout(function () {
- if (!_this.closed) {
- _this.close();
- }
- }, this.duration);
- }
- },
- keydown: function keydown(e) {
- if (e.keyCode === 46 || e.keyCode === 8) {
- this.clearTimer(); // detele 取消倒计时
- } else if (e.keyCode === 27) {
- // esc关闭消息
- if (!this.closed) {
- this.close();
- }
- } else {
- this.startTimer(); // 恢复倒计时
- }
- }
- },
- mounted: function mounted() {
- var _this2 = this;
- if (this.duration > 0) {
- this.timer = setTimeout(function () {
- if (!_this2.closed) {
- _this2.close();
- }
- }, this.duration);
- }
- document.addEventListener('keydown', this.keydown);
- },
- beforeDestroy: function beforeDestroy() {
- document.removeEventListener('keydown', this.keydown);
- }
- });
- // CONCATENATED MODULE: ./packages/notification/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_notification_src_mainvue_type_script_lang_js_ = (notification_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/notification/src/main.vue
- /* normalize component */
- var notification_src_main_component = normalizeComponent(
- packages_notification_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_43dbc3d8_render,
- mainvue_type_template_id_43dbc3d8_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var notification_src_main_api; }
- notification_src_main_component.options.__file = "packages/notification/src/main.vue"
- /* harmony default export */ var notification_src_main = (notification_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/notification/src/main.js
- var NotificationConstructor = external_vue_default.a.extend(notification_src_main);
- var src_main_instance = void 0;
- var instances = [];
- var seed = 1;
- var main_Notification = function Notification(options) {
- if (external_vue_default.a.prototype.$isServer) return;
- options = options || {};
- var userOnClose = options.onClose;
- var id = 'notification_' + seed++;
- var position = options.position || 'top-right';
- options.onClose = function () {
- Notification.close(id, userOnClose);
- };
- src_main_instance = new NotificationConstructor({
- data: options
- });
- if (Object(vdom_["isVNode"])(options.message)) {
- src_main_instance.$slots.default = [options.message];
- options.message = 'REPLACED_BY_VNODE';
- }
- src_main_instance.id = id;
- src_main_instance.$mount();
- document.body.appendChild(src_main_instance.$el);
- src_main_instance.visible = true;
- src_main_instance.dom = src_main_instance.$el;
- src_main_instance.dom.style.zIndex = popup_["PopupManager"].nextZIndex();
- var verticalOffset = options.offset || 0;
- instances.filter(function (item) {
- return item.position === position;
- }).forEach(function (item) {
- verticalOffset += item.$el.offsetHeight + 16;
- });
- verticalOffset += 16;
- src_main_instance.verticalOffset = verticalOffset;
- instances.push(src_main_instance);
- return src_main_instance;
- };
- ['success', 'warning', 'info', 'error'].forEach(function (type) {
- main_Notification[type] = function (options) {
- if (typeof options === 'string' || Object(vdom_["isVNode"])(options)) {
- options = {
- message: options
- };
- }
- options.type = type;
- return main_Notification(options);
- };
- });
- main_Notification.close = function (id, userOnClose) {
- var index = -1;
- var len = instances.length;
- var instance = instances.filter(function (instance, i) {
- if (instance.id === id) {
- index = i;
- return true;
- }
- return false;
- })[0];
- if (!instance) return;
- if (typeof userOnClose === 'function') {
- userOnClose(instance);
- }
- instances.splice(index, 1);
- if (len <= 1) return;
- var position = instance.position;
- var removedHeight = instance.dom.offsetHeight;
- for (var i = index; i < len - 1; i++) {
- if (instances[i].position === position) {
- instances[i].dom.style[instance.verticalProperty] = parseInt(instances[i].dom.style[instance.verticalProperty], 10) - removedHeight - 16 + 'px';
- }
- }
- };
- main_Notification.closeAll = function () {
- for (var i = instances.length - 1; i >= 0; i--) {
- instances[i].close();
- }
- };
- /* harmony default export */ var packages_notification_src_main = (main_Notification);
- // CONCATENATED MODULE: ./packages/notification/index.js
- /* harmony default export */ var notification = (packages_notification_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/slider/src/main.vue?vue&type=template&id=32708644&
- var mainvue_type_template_id_32708644_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-slider",
- class: {
- "is-vertical": _vm.vertical,
- "el-slider--with-input": _vm.showInput
- },
- attrs: {
- role: "slider",
- "aria-valuemin": _vm.min,
- "aria-valuemax": _vm.max,
- "aria-orientation": _vm.vertical ? "vertical" : "horizontal",
- "aria-disabled": _vm.sliderDisabled
- }
- },
- [
- _vm.showInput && !_vm.range
- ? _c("el-input-number", {
- ref: "input",
- staticClass: "el-slider__input",
- attrs: {
- step: _vm.step,
- disabled: _vm.sliderDisabled,
- controls: _vm.showInputControls,
- min: _vm.min,
- max: _vm.max,
- debounce: _vm.debounce,
- size: _vm.inputSize
- },
- on: {
- change: function($event) {
- _vm.$nextTick(_vm.emitChange)
- }
- },
- model: {
- value: _vm.firstValue,
- callback: function($$v) {
- _vm.firstValue = $$v
- },
- expression: "firstValue"
- }
- })
- : _vm._e(),
- _c(
- "div",
- {
- ref: "slider",
- staticClass: "el-slider__runway",
- class: { "show-input": _vm.showInput, disabled: _vm.sliderDisabled },
- style: _vm.runwayStyle,
- on: { click: _vm.onSliderClick }
- },
- [
- _c("div", { staticClass: "el-slider__bar", style: _vm.barStyle }),
- _c("slider-button", {
- ref: "button1",
- attrs: {
- vertical: _vm.vertical,
- "tooltip-class": _vm.tooltipClass
- },
- model: {
- value: _vm.firstValue,
- callback: function($$v) {
- _vm.firstValue = $$v
- },
- expression: "firstValue"
- }
- }),
- _vm.range
- ? _c("slider-button", {
- ref: "button2",
- attrs: {
- vertical: _vm.vertical,
- "tooltip-class": _vm.tooltipClass
- },
- model: {
- value: _vm.secondValue,
- callback: function($$v) {
- _vm.secondValue = $$v
- },
- expression: "secondValue"
- }
- })
- : _vm._e(),
- _vm._l(_vm.stops, function(item, key) {
- return _vm.showStops
- ? _c("div", {
- key: key,
- staticClass: "el-slider__stop",
- style: _vm.getStopStyle(item)
- })
- : _vm._e()
- }),
- _vm.markList.length > 0
- ? [
- _c(
- "div",
- _vm._l(_vm.markList, function(item, key) {
- return _c("div", {
- key: key,
- staticClass: "el-slider__stop el-slider__marks-stop",
- style: _vm.getStopStyle(item.position)
- })
- }),
- 0
- ),
- _c(
- "div",
- { staticClass: "el-slider__marks" },
- _vm._l(_vm.markList, function(item, key) {
- return _c("slider-marker", {
- key: key,
- style: _vm.getStopStyle(item.position),
- attrs: { mark: item.mark }
- })
- }),
- 1
- )
- ]
- : _vm._e()
- ],
- 2
- )
- ],
- 1
- )
- }
- var mainvue_type_template_id_32708644_staticRenderFns = []
- mainvue_type_template_id_32708644_render._withStripped = true
- // CONCATENATED MODULE: ./packages/slider/src/main.vue?vue&type=template&id=32708644&
- // EXTERNAL MODULE: external "element-ui/lib/input-number"
- var input_number_ = __webpack_require__(39);
- var input_number_default = /*#__PURE__*/__webpack_require__.n(input_number_);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/slider/src/button.vue?vue&type=template&id=e72d2ad2&
- var buttonvue_type_template_id_e72d2ad2_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- ref: "button",
- staticClass: "el-slider__button-wrapper",
- class: { hover: _vm.hovering, dragging: _vm.dragging },
- style: _vm.wrapperStyle,
- attrs: { tabindex: "0" },
- on: {
- mouseenter: _vm.handleMouseEnter,
- mouseleave: _vm.handleMouseLeave,
- mousedown: _vm.onButtonDown,
- touchstart: _vm.onButtonDown,
- focus: _vm.handleMouseEnter,
- blur: _vm.handleMouseLeave,
- keydown: [
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "left", 37, $event.key, [
- "Left",
- "ArrowLeft"
- ])
- ) {
- return null
- }
- if ("button" in $event && $event.button !== 0) {
- return null
- }
- return _vm.onLeftKeyDown($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "right", 39, $event.key, [
- "Right",
- "ArrowRight"
- ])
- ) {
- return null
- }
- if ("button" in $event && $event.button !== 2) {
- return null
- }
- return _vm.onRightKeyDown($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "down", 40, $event.key, [
- "Down",
- "ArrowDown"
- ])
- ) {
- return null
- }
- $event.preventDefault()
- return _vm.onLeftKeyDown($event)
- },
- function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "up", 38, $event.key, ["Up", "ArrowUp"])
- ) {
- return null
- }
- $event.preventDefault()
- return _vm.onRightKeyDown($event)
- }
- ]
- }
- },
- [
- _c(
- "el-tooltip",
- {
- ref: "tooltip",
- attrs: {
- placement: "top",
- "popper-class": _vm.tooltipClass,
- disabled: !_vm.showTooltip
- }
- },
- [
- _c("span", { attrs: { slot: "content" }, slot: "content" }, [
- _vm._v(_vm._s(_vm.formatValue))
- ]),
- _c("div", {
- staticClass: "el-slider__button",
- class: { hover: _vm.hovering, dragging: _vm.dragging }
- })
- ]
- )
- ],
- 1
- )
- }
- var buttonvue_type_template_id_e72d2ad2_staticRenderFns = []
- buttonvue_type_template_id_e72d2ad2_render._withStripped = true
- // CONCATENATED MODULE: ./packages/slider/src/button.vue?vue&type=template&id=e72d2ad2&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/slider/src/button.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var slider_src_buttonvue_type_script_lang_js_ = ({
- name: 'ElSliderButton',
- components: {
- ElTooltip: tooltip_default.a
- },
- props: {
- value: {
- type: Number,
- default: 0
- },
- vertical: {
- type: Boolean,
- default: false
- },
- tooltipClass: String
- },
- data: function data() {
- return {
- hovering: false,
- dragging: false,
- isClick: false,
- startX: 0,
- currentX: 0,
- startY: 0,
- currentY: 0,
- startPosition: 0,
- newPosition: null,
- oldValue: this.value
- };
- },
- computed: {
- disabled: function disabled() {
- return this.$parent.sliderDisabled;
- },
- max: function max() {
- return this.$parent.max;
- },
- min: function min() {
- return this.$parent.min;
- },
- step: function step() {
- return this.$parent.step;
- },
- showTooltip: function showTooltip() {
- return this.$parent.showTooltip;
- },
- precision: function precision() {
- return this.$parent.precision;
- },
- currentPosition: function currentPosition() {
- return (this.value - this.min) / (this.max - this.min) * 100 + '%';
- },
- enableFormat: function enableFormat() {
- return this.$parent.formatTooltip instanceof Function;
- },
- formatValue: function formatValue() {
- return this.enableFormat && this.$parent.formatTooltip(this.value) || this.value;
- },
- wrapperStyle: function wrapperStyle() {
- return this.vertical ? { bottom: this.currentPosition } : { left: this.currentPosition };
- }
- },
- watch: {
- dragging: function dragging(val) {
- this.$parent.dragging = val;
- }
- },
- methods: {
- displayTooltip: function displayTooltip() {
- this.$refs.tooltip && (this.$refs.tooltip.showPopper = true);
- },
- hideTooltip: function hideTooltip() {
- this.$refs.tooltip && (this.$refs.tooltip.showPopper = false);
- },
- handleMouseEnter: function handleMouseEnter() {
- this.hovering = true;
- this.displayTooltip();
- },
- handleMouseLeave: function handleMouseLeave() {
- this.hovering = false;
- this.hideTooltip();
- },
- onButtonDown: function onButtonDown(event) {
- if (this.disabled) return;
- event.preventDefault();
- this.onDragStart(event);
- window.addEventListener('mousemove', this.onDragging);
- window.addEventListener('touchmove', this.onDragging);
- window.addEventListener('mouseup', this.onDragEnd);
- window.addEventListener('touchend', this.onDragEnd);
- window.addEventListener('contextmenu', this.onDragEnd);
- },
- onLeftKeyDown: function onLeftKeyDown() {
- if (this.disabled) return;
- this.newPosition = parseFloat(this.currentPosition) - this.step / (this.max - this.min) * 100;
- this.setPosition(this.newPosition);
- this.$parent.emitChange();
- },
- onRightKeyDown: function onRightKeyDown() {
- if (this.disabled) return;
- this.newPosition = parseFloat(this.currentPosition) + this.step / (this.max - this.min) * 100;
- this.setPosition(this.newPosition);
- this.$parent.emitChange();
- },
- onDragStart: function onDragStart(event) {
- this.dragging = true;
- this.isClick = true;
- if (event.type === 'touchstart') {
- event.clientY = event.touches[0].clientY;
- event.clientX = event.touches[0].clientX;
- }
- if (this.vertical) {
- this.startY = event.clientY;
- } else {
- this.startX = event.clientX;
- }
- this.startPosition = parseFloat(this.currentPosition);
- this.newPosition = this.startPosition;
- },
- onDragging: function onDragging(event) {
- if (this.dragging) {
- this.isClick = false;
- this.displayTooltip();
- this.$parent.resetSize();
- var diff = 0;
- if (event.type === 'touchmove') {
- event.clientY = event.touches[0].clientY;
- event.clientX = event.touches[0].clientX;
- }
- if (this.vertical) {
- this.currentY = event.clientY;
- diff = (this.startY - this.currentY) / this.$parent.sliderSize * 100;
- } else {
- this.currentX = event.clientX;
- diff = (this.currentX - this.startX) / this.$parent.sliderSize * 100;
- }
- this.newPosition = this.startPosition + diff;
- this.setPosition(this.newPosition);
- }
- },
- onDragEnd: function onDragEnd() {
- var _this = this;
- if (this.dragging) {
- /*
- * 防止在 mouseup 后立即触发 click,导致滑块有几率产生一小段位移
- * 不使用 preventDefault 是因为 mouseup 和 click 没有注册在同一个 DOM 上
- */
- setTimeout(function () {
- _this.dragging = false;
- _this.hideTooltip();
- if (!_this.isClick) {
- _this.setPosition(_this.newPosition);
- _this.$parent.emitChange();
- }
- }, 0);
- window.removeEventListener('mousemove', this.onDragging);
- window.removeEventListener('touchmove', this.onDragging);
- window.removeEventListener('mouseup', this.onDragEnd);
- window.removeEventListener('touchend', this.onDragEnd);
- window.removeEventListener('contextmenu', this.onDragEnd);
- }
- },
- setPosition: function setPosition(newPosition) {
- var _this2 = this;
- if (newPosition === null || isNaN(newPosition)) return;
- if (newPosition < 0) {
- newPosition = 0;
- } else if (newPosition > 100) {
- newPosition = 100;
- }
- var lengthPerStep = 100 / ((this.max - this.min) / this.step);
- var steps = Math.round(newPosition / lengthPerStep);
- var value = steps * lengthPerStep * (this.max - this.min) * 0.01 + this.min;
- value = parseFloat(value.toFixed(this.precision));
- this.$emit('input', value);
- this.$nextTick(function () {
- _this2.$refs.tooltip && _this2.$refs.tooltip.updatePopper();
- });
- if (!this.dragging && this.value !== this.oldValue) {
- this.oldValue = this.value;
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/slider/src/button.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_slider_src_buttonvue_type_script_lang_js_ = (slider_src_buttonvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/slider/src/button.vue
- /* normalize component */
- var src_button_component = normalizeComponent(
- packages_slider_src_buttonvue_type_script_lang_js_,
- buttonvue_type_template_id_e72d2ad2_render,
- buttonvue_type_template_id_e72d2ad2_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_button_api; }
- src_button_component.options.__file = "packages/slider/src/button.vue"
- /* harmony default export */ var slider_src_button = (src_button_component.exports);
- // CONCATENATED MODULE: ./packages/slider/src/marker.js
- /* harmony default export */ var marker = ({
- name: 'ElMarker',
- props: {
- mark: {
- type: [String, Object]
- }
- },
- render: function render() {
- var h = arguments[0];
- var label = typeof this.mark === 'string' ? this.mark : this.mark.label;
- return h(
- 'div',
- { 'class': 'el-slider__marks-text', style: this.mark.style || {} },
- [label]
- );
- }
- });
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/slider/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var slider_src_mainvue_type_script_lang_js_ = ({
- name: 'ElSlider',
- mixins: [emitter_default.a],
- inject: {
- elForm: {
- default: ''
- }
- },
- props: {
- min: {
- type: Number,
- default: 0
- },
- max: {
- type: Number,
- default: 100
- },
- step: {
- type: Number,
- default: 1
- },
- value: {
- type: [Number, Array],
- default: 0
- },
- showInput: {
- type: Boolean,
- default: false
- },
- showInputControls: {
- type: Boolean,
- default: true
- },
- inputSize: {
- type: String,
- default: 'small'
- },
- showStops: {
- type: Boolean,
- default: false
- },
- showTooltip: {
- type: Boolean,
- default: true
- },
- formatTooltip: Function,
- disabled: {
- type: Boolean,
- default: false
- },
- range: {
- type: Boolean,
- default: false
- },
- vertical: {
- type: Boolean,
- default: false
- },
- height: {
- type: String
- },
- debounce: {
- type: Number,
- default: 300
- },
- label: {
- type: String
- },
- tooltipClass: String,
- marks: Object
- },
- components: {
- ElInputNumber: input_number_default.a,
- SliderButton: slider_src_button,
- SliderMarker: marker
- },
- data: function data() {
- return {
- firstValue: null,
- secondValue: null,
- oldValue: null,
- dragging: false,
- sliderSize: 1
- };
- },
- watch: {
- value: function value(val, oldVal) {
- if (this.dragging || Array.isArray(val) && Array.isArray(oldVal) && val.every(function (item, index) {
- return item === oldVal[index];
- })) {
- return;
- }
- this.setValues();
- },
- dragging: function dragging(val) {
- if (!val) {
- this.setValues();
- }
- },
- firstValue: function firstValue(val) {
- if (this.range) {
- this.$emit('input', [this.minValue, this.maxValue]);
- } else {
- this.$emit('input', val);
- }
- },
- secondValue: function secondValue() {
- if (this.range) {
- this.$emit('input', [this.minValue, this.maxValue]);
- }
- },
- min: function min() {
- this.setValues();
- },
- max: function max() {
- this.setValues();
- }
- },
- methods: {
- valueChanged: function valueChanged() {
- var _this = this;
- if (this.range) {
- return ![this.minValue, this.maxValue].every(function (item, index) {
- return item === _this.oldValue[index];
- });
- } else {
- return this.value !== this.oldValue;
- }
- },
- setValues: function setValues() {
- if (this.min > this.max) {
- console.error('[Element Error][Slider]min should not be greater than max.');
- return;
- }
- var val = this.value;
- if (this.range && Array.isArray(val)) {
- if (val[1] < this.min) {
- this.$emit('input', [this.min, this.min]);
- } else if (val[0] > this.max) {
- this.$emit('input', [this.max, this.max]);
- } else if (val[0] < this.min) {
- this.$emit('input', [this.min, val[1]]);
- } else if (val[1] > this.max) {
- this.$emit('input', [val[0], this.max]);
- } else {
- this.firstValue = val[0];
- this.secondValue = val[1];
- if (this.valueChanged()) {
- this.dispatch('ElFormItem', 'el.form.change', [this.minValue, this.maxValue]);
- this.oldValue = val.slice();
- }
- }
- } else if (!this.range && typeof val === 'number' && !isNaN(val)) {
- if (val < this.min) {
- this.$emit('input', this.min);
- } else if (val > this.max) {
- this.$emit('input', this.max);
- } else {
- this.firstValue = val;
- if (this.valueChanged()) {
- this.dispatch('ElFormItem', 'el.form.change', val);
- this.oldValue = val;
- }
- }
- }
- },
- setPosition: function setPosition(percent) {
- var targetValue = this.min + percent * (this.max - this.min) / 100;
- if (!this.range) {
- this.$refs.button1.setPosition(percent);
- return;
- }
- var button = void 0;
- if (Math.abs(this.minValue - targetValue) < Math.abs(this.maxValue - targetValue)) {
- button = this.firstValue < this.secondValue ? 'button1' : 'button2';
- } else {
- button = this.firstValue > this.secondValue ? 'button1' : 'button2';
- }
- this.$refs[button].setPosition(percent);
- },
- onSliderClick: function onSliderClick(event) {
- if (this.sliderDisabled || this.dragging) return;
- this.resetSize();
- if (this.vertical) {
- var sliderOffsetBottom = this.$refs.slider.getBoundingClientRect().bottom;
- this.setPosition((sliderOffsetBottom - event.clientY) / this.sliderSize * 100);
- } else {
- var sliderOffsetLeft = this.$refs.slider.getBoundingClientRect().left;
- this.setPosition((event.clientX - sliderOffsetLeft) / this.sliderSize * 100);
- }
- this.emitChange();
- },
- resetSize: function resetSize() {
- if (this.$refs.slider) {
- this.sliderSize = this.$refs.slider['client' + (this.vertical ? 'Height' : 'Width')];
- }
- },
- emitChange: function emitChange() {
- var _this2 = this;
- this.$nextTick(function () {
- _this2.$emit('change', _this2.range ? [_this2.minValue, _this2.maxValue] : _this2.value);
- });
- },
- getStopStyle: function getStopStyle(position) {
- return this.vertical ? { 'bottom': position + '%' } : { 'left': position + '%' };
- }
- },
- computed: {
- stops: function stops() {
- var _this3 = this;
- if (!this.showStops || this.min > this.max) return [];
- if (this.step === 0) {
- false && false;
- return [];
- }
- var stopCount = (this.max - this.min) / this.step;
- var stepWidth = 100 * this.step / (this.max - this.min);
- var result = [];
- for (var i = 1; i < stopCount; i++) {
- result.push(i * stepWidth);
- }
- if (this.range) {
- return result.filter(function (step) {
- return step < 100 * (_this3.minValue - _this3.min) / (_this3.max - _this3.min) || step > 100 * (_this3.maxValue - _this3.min) / (_this3.max - _this3.min);
- });
- } else {
- return result.filter(function (step) {
- return step > 100 * (_this3.firstValue - _this3.min) / (_this3.max - _this3.min);
- });
- }
- },
- markList: function markList() {
- var _this4 = this;
- if (!this.marks) {
- return [];
- }
- var marksKeys = Object.keys(this.marks);
- return marksKeys.map(parseFloat).sort(function (a, b) {
- return a - b;
- }).filter(function (point) {
- return point <= _this4.max && point >= _this4.min;
- }).map(function (point) {
- return {
- point: point,
- position: (point - _this4.min) * 100 / (_this4.max - _this4.min),
- mark: _this4.marks[point]
- };
- });
- },
- minValue: function minValue() {
- return Math.min(this.firstValue, this.secondValue);
- },
- maxValue: function maxValue() {
- return Math.max(this.firstValue, this.secondValue);
- },
- barSize: function barSize() {
- return this.range ? 100 * (this.maxValue - this.minValue) / (this.max - this.min) + '%' : 100 * (this.firstValue - this.min) / (this.max - this.min) + '%';
- },
- barStart: function barStart() {
- return this.range ? 100 * (this.minValue - this.min) / (this.max - this.min) + '%' : '0%';
- },
- precision: function precision() {
- var precisions = [this.min, this.max, this.step].map(function (item) {
- var decimal = ('' + item).split('.')[1];
- return decimal ? decimal.length : 0;
- });
- return Math.max.apply(null, precisions);
- },
- runwayStyle: function runwayStyle() {
- return this.vertical ? { height: this.height } : {};
- },
- barStyle: function barStyle() {
- return this.vertical ? {
- height: this.barSize,
- bottom: this.barStart
- } : {
- width: this.barSize,
- left: this.barStart
- };
- },
- sliderDisabled: function sliderDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- }
- },
- mounted: function mounted() {
- var valuetext = void 0;
- if (this.range) {
- if (Array.isArray(this.value)) {
- this.firstValue = Math.max(this.min, this.value[0]);
- this.secondValue = Math.min(this.max, this.value[1]);
- } else {
- this.firstValue = this.min;
- this.secondValue = this.max;
- }
- this.oldValue = [this.firstValue, this.secondValue];
- valuetext = this.firstValue + '-' + this.secondValue;
- } else {
- if (typeof this.value !== 'number' || isNaN(this.value)) {
- this.firstValue = this.min;
- } else {
- this.firstValue = Math.min(this.max, Math.max(this.min, this.value));
- }
- this.oldValue = this.firstValue;
- valuetext = this.firstValue;
- }
- this.$el.setAttribute('aria-valuetext', valuetext);
- // label screen reader
- this.$el.setAttribute('aria-label', this.label ? this.label : 'slider between ' + this.min + ' and ' + this.max);
- this.resetSize();
- window.addEventListener('resize', this.resetSize);
- },
- beforeDestroy: function beforeDestroy() {
- window.removeEventListener('resize', this.resetSize);
- }
- });
- // CONCATENATED MODULE: ./packages/slider/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_slider_src_mainvue_type_script_lang_js_ = (slider_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/slider/src/main.vue
- /* normalize component */
- var slider_src_main_component = normalizeComponent(
- packages_slider_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_32708644_render,
- mainvue_type_template_id_32708644_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var slider_src_main_api; }
- slider_src_main_component.options.__file = "packages/slider/src/main.vue"
- /* harmony default export */ var slider_src_main = (slider_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/slider/index.js
- /* istanbul ignore next */
- slider_src_main.install = function (Vue) {
- Vue.component(slider_src_main.name, slider_src_main);
- };
- /* harmony default export */ var slider = (slider_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/loading/src/loading.vue?vue&type=template&id=eee0a7ac&
- var loadingvue_type_template_id_eee0a7ac_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-loading-fade" },
- on: { "after-leave": _vm.handleAfterLeave }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- staticClass: "el-loading-mask",
- class: [_vm.customClass, { "is-fullscreen": _vm.fullscreen }],
- style: { backgroundColor: _vm.background || "" }
- },
- [
- _c("div", { staticClass: "el-loading-spinner" }, [
- !_vm.spinner
- ? _c(
- "svg",
- {
- staticClass: "circular",
- attrs: { viewBox: "25 25 50 50" }
- },
- [
- _c("circle", {
- staticClass: "path",
- attrs: { cx: "50", cy: "50", r: "20", fill: "none" }
- })
- ]
- )
- : _c("i", { class: _vm.spinner }),
- _vm.text
- ? _c("p", { staticClass: "el-loading-text" }, [
- _vm._v(_vm._s(_vm.text))
- ])
- : _vm._e()
- ])
- ]
- )
- ]
- )
- }
- var loadingvue_type_template_id_eee0a7ac_staticRenderFns = []
- loadingvue_type_template_id_eee0a7ac_render._withStripped = true
- // CONCATENATED MODULE: ./packages/loading/src/loading.vue?vue&type=template&id=eee0a7ac&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/loading/src/loading.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var loadingvue_type_script_lang_js_ = ({
- data: function data() {
- return {
- text: null,
- spinner: null,
- background: null,
- fullscreen: true,
- visible: false,
- customClass: ''
- };
- },
- methods: {
- handleAfterLeave: function handleAfterLeave() {
- this.$emit('after-leave');
- },
- setText: function setText(text) {
- this.text = text;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/loading/src/loading.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_loadingvue_type_script_lang_js_ = (loadingvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/loading/src/loading.vue
- /* normalize component */
- var loading_component = normalizeComponent(
- src_loadingvue_type_script_lang_js_,
- loadingvue_type_template_id_eee0a7ac_render,
- loadingvue_type_template_id_eee0a7ac_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var loading_api; }
- loading_component.options.__file = "packages/loading/src/loading.vue"
- /* harmony default export */ var loading = (loading_component.exports);
- // EXTERNAL MODULE: external "element-ui/lib/utils/after-leave"
- var after_leave_ = __webpack_require__(31);
- var after_leave_default = /*#__PURE__*/__webpack_require__.n(after_leave_);
- // CONCATENATED MODULE: ./packages/loading/src/directive.js
- var Mask = external_vue_default.a.extend(loading);
- var loadingDirective = {};
- loadingDirective.install = function (Vue) {
- if (Vue.prototype.$isServer) return;
- var toggleLoading = function toggleLoading(el, binding) {
- if (binding.value) {
- Vue.nextTick(function () {
- if (binding.modifiers.fullscreen) {
- el.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
- el.originalOverflow = Object(dom_["getStyle"])(document.body, 'overflow');
- el.maskStyle.zIndex = popup_["PopupManager"].nextZIndex();
- Object(dom_["addClass"])(el.mask, 'is-fullscreen');
- insertDom(document.body, el, binding);
- } else {
- Object(dom_["removeClass"])(el.mask, 'is-fullscreen');
- if (binding.modifiers.body) {
- el.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
- ['top', 'left'].forEach(function (property) {
- var scroll = property === 'top' ? 'scrollTop' : 'scrollLeft';
- el.maskStyle[property] = el.getBoundingClientRect()[property] + document.body[scroll] + document.documentElement[scroll] - parseInt(Object(dom_["getStyle"])(document.body, 'margin-' + property), 10) + 'px';
- });
- ['height', 'width'].forEach(function (property) {
- el.maskStyle[property] = el.getBoundingClientRect()[property] + 'px';
- });
- insertDom(document.body, el, binding);
- } else {
- el.originalPosition = Object(dom_["getStyle"])(el, 'position');
- insertDom(el, el, binding);
- }
- }
- });
- } else {
- after_leave_default()(el.instance, function (_) {
- el.domVisible = false;
- var target = binding.modifiers.fullscreen || binding.modifiers.body ? document.body : el;
- Object(dom_["removeClass"])(target, 'el-loading-parent--relative');
- Object(dom_["removeClass"])(target, 'el-loading-parent--hidden');
- el.instance.hiding = false;
- }, 300, true);
- el.instance.visible = false;
- el.instance.hiding = true;
- }
- };
- var insertDom = function insertDom(parent, el, binding) {
- if (!el.domVisible && Object(dom_["getStyle"])(el, 'display') !== 'none' && Object(dom_["getStyle"])(el, 'visibility') !== 'hidden') {
- Object.keys(el.maskStyle).forEach(function (property) {
- el.mask.style[property] = el.maskStyle[property];
- });
- if (el.originalPosition !== 'absolute' && el.originalPosition !== 'fixed') {
- Object(dom_["addClass"])(parent, 'el-loading-parent--relative');
- }
- if (binding.modifiers.fullscreen && binding.modifiers.lock) {
- Object(dom_["addClass"])(parent, 'el-loading-parent--hidden');
- }
- el.domVisible = true;
- parent.appendChild(el.mask);
- Vue.nextTick(function () {
- if (el.instance.hiding) {
- el.instance.$emit('after-leave');
- } else {
- el.instance.visible = true;
- }
- });
- el.domInserted = true;
- }
- };
- Vue.directive('loading', {
- bind: function bind(el, binding, vnode) {
- var textExr = el.getAttribute('element-loading-text');
- var spinnerExr = el.getAttribute('element-loading-spinner');
- var backgroundExr = el.getAttribute('element-loading-background');
- var customClassExr = el.getAttribute('element-loading-custom-class');
- var vm = vnode.context;
- var mask = new Mask({
- el: document.createElement('div'),
- data: {
- text: vm && vm[textExr] || textExr,
- spinner: vm && vm[spinnerExr] || spinnerExr,
- background: vm && vm[backgroundExr] || backgroundExr,
- customClass: vm && vm[customClassExr] || customClassExr,
- fullscreen: !!binding.modifiers.fullscreen
- }
- });
- el.instance = mask;
- el.mask = mask.$el;
- el.maskStyle = {};
- binding.value && toggleLoading(el, binding);
- },
- update: function update(el, binding) {
- el.instance.setText(el.getAttribute('element-loading-text'));
- if (binding.oldValue !== binding.value) {
- toggleLoading(el, binding);
- }
- },
- unbind: function unbind(el, binding) {
- if (el.domInserted) {
- el.mask && el.mask.parentNode && el.mask.parentNode.removeChild(el.mask);
- toggleLoading(el, { value: false, modifiers: binding.modifiers });
- }
- el.instance && el.instance.$destroy();
- }
- });
- };
- /* harmony default export */ var src_directive = (loadingDirective);
- // CONCATENATED MODULE: ./packages/loading/src/index.js
- var LoadingConstructor = external_vue_default.a.extend(loading);
- var src_defaults = {
- text: null,
- fullscreen: true,
- body: false,
- lock: false,
- customClass: ''
- };
- var fullscreenLoading = void 0;
- LoadingConstructor.prototype.originalPosition = '';
- LoadingConstructor.prototype.originalOverflow = '';
- LoadingConstructor.prototype.close = function () {
- var _this = this;
- if (this.fullscreen) {
- fullscreenLoading = undefined;
- }
- after_leave_default()(this, function (_) {
- var target = _this.fullscreen || _this.body ? document.body : _this.target;
- Object(dom_["removeClass"])(target, 'el-loading-parent--relative');
- Object(dom_["removeClass"])(target, 'el-loading-parent--hidden');
- if (_this.$el && _this.$el.parentNode) {
- _this.$el.parentNode.removeChild(_this.$el);
- }
- _this.$destroy();
- }, 300);
- this.visible = false;
- };
- var src_addStyle = function addStyle(options, parent, instance) {
- var maskStyle = {};
- if (options.fullscreen) {
- instance.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
- instance.originalOverflow = Object(dom_["getStyle"])(document.body, 'overflow');
- maskStyle.zIndex = popup_["PopupManager"].nextZIndex();
- } else if (options.body) {
- instance.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
- ['top', 'left'].forEach(function (property) {
- var scroll = property === 'top' ? 'scrollTop' : 'scrollLeft';
- maskStyle[property] = options.target.getBoundingClientRect()[property] + document.body[scroll] + document.documentElement[scroll] + 'px';
- });
- ['height', 'width'].forEach(function (property) {
- maskStyle[property] = options.target.getBoundingClientRect()[property] + 'px';
- });
- } else {
- instance.originalPosition = Object(dom_["getStyle"])(parent, 'position');
- }
- Object.keys(maskStyle).forEach(function (property) {
- instance.$el.style[property] = maskStyle[property];
- });
- };
- var src_Loading = function Loading() {
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- if (external_vue_default.a.prototype.$isServer) return;
- options = merge_default()({}, src_defaults, options);
- if (typeof options.target === 'string') {
- options.target = document.querySelector(options.target);
- }
- options.target = options.target || document.body;
- if (options.target !== document.body) {
- options.fullscreen = false;
- } else {
- options.body = true;
- }
- if (options.fullscreen && fullscreenLoading) {
- return fullscreenLoading;
- }
- var parent = options.body ? document.body : options.target;
- var instance = new LoadingConstructor({
- el: document.createElement('div'),
- data: options
- });
- src_addStyle(options, parent, instance);
- if (instance.originalPosition !== 'absolute' && instance.originalPosition !== 'fixed') {
- Object(dom_["addClass"])(parent, 'el-loading-parent--relative');
- }
- if (options.fullscreen && options.lock) {
- Object(dom_["addClass"])(parent, 'el-loading-parent--hidden');
- }
- parent.appendChild(instance.$el);
- external_vue_default.a.nextTick(function () {
- instance.visible = true;
- });
- if (options.fullscreen) {
- fullscreenLoading = instance;
- }
- return instance;
- };
- /* harmony default export */ var src = (src_Loading);
- // CONCATENATED MODULE: ./packages/loading/index.js
- /* harmony default export */ var packages_loading = ({
- install: function install(Vue) {
- Vue.use(src_directive);
- Vue.prototype.$loading = src;
- },
- directive: src_directive,
- service: src
- });
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/icon/src/icon.vue?vue&type=template&id=cb3fe7f4&
- var iconvue_type_template_id_cb3fe7f4_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("i", { class: "el-icon-" + _vm.name })
- }
- var iconvue_type_template_id_cb3fe7f4_staticRenderFns = []
- iconvue_type_template_id_cb3fe7f4_render._withStripped = true
- // CONCATENATED MODULE: ./packages/icon/src/icon.vue?vue&type=template&id=cb3fe7f4&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/icon/src/icon.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- /* harmony default export */ var iconvue_type_script_lang_js_ = ({
- name: 'ElIcon',
- props: {
- name: String
- }
- });
- // CONCATENATED MODULE: ./packages/icon/src/icon.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_iconvue_type_script_lang_js_ = (iconvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/icon/src/icon.vue
- /* normalize component */
- var icon_component = normalizeComponent(
- src_iconvue_type_script_lang_js_,
- iconvue_type_template_id_cb3fe7f4_render,
- iconvue_type_template_id_cb3fe7f4_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var icon_api; }
- icon_component.options.__file = "packages/icon/src/icon.vue"
- /* harmony default export */ var icon = (icon_component.exports);
- // CONCATENATED MODULE: ./packages/icon/index.js
- /* istanbul ignore next */
- icon.install = function (Vue) {
- Vue.component(icon.name, icon);
- };
- /* harmony default export */ var packages_icon = (icon);
- // CONCATENATED MODULE: ./packages/row/src/row.js
- /* harmony default export */ var src_row = ({
- name: 'ElRow',
- componentName: 'ElRow',
- props: {
- tag: {
- type: String,
- default: 'div'
- },
- gutter: Number,
- type: String,
- justify: {
- type: String,
- default: 'start'
- },
- align: {
- type: String,
- default: 'top'
- }
- },
- computed: {
- style: function style() {
- var ret = {};
- if (this.gutter) {
- ret.marginLeft = '-' + this.gutter / 2 + 'px';
- ret.marginRight = ret.marginLeft;
- }
- return ret;
- }
- },
- render: function render(h) {
- return h(this.tag, {
- class: ['el-row', this.justify !== 'start' ? 'is-justify-' + this.justify : '', this.align !== 'top' ? 'is-align-' + this.align : '', { 'el-row--flex': this.type === 'flex' }],
- style: this.style
- }, this.$slots.default);
- }
- });
- // CONCATENATED MODULE: ./packages/row/index.js
- /* istanbul ignore next */
- src_row.install = function (Vue) {
- Vue.component(src_row.name, src_row);
- };
- /* harmony default export */ var packages_row = (src_row);
- // CONCATENATED MODULE: ./packages/col/src/col.js
- var col_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- /* harmony default export */ var col = ({
- name: 'ElCol',
- props: {
- span: {
- type: Number,
- default: 24
- },
- tag: {
- type: String,
- default: 'div'
- },
- offset: Number,
- pull: Number,
- push: Number,
- xs: [Number, Object],
- sm: [Number, Object],
- md: [Number, Object],
- lg: [Number, Object],
- xl: [Number, Object]
- },
- computed: {
- gutter: function gutter() {
- var parent = this.$parent;
- while (parent && parent.$options.componentName !== 'ElRow') {
- parent = parent.$parent;
- }
- return parent ? parent.gutter : 0;
- }
- },
- render: function render(h) {
- var _this = this;
- var classList = [];
- var style = {};
- if (this.gutter) {
- style.paddingLeft = this.gutter / 2 + 'px';
- style.paddingRight = style.paddingLeft;
- }
- ['span', 'offset', 'pull', 'push'].forEach(function (prop) {
- if (_this[prop] || _this[prop] === 0) {
- classList.push(prop !== 'span' ? 'el-col-' + prop + '-' + _this[prop] : 'el-col-' + _this[prop]);
- }
- });
- ['xs', 'sm', 'md', 'lg', 'xl'].forEach(function (size) {
- if (typeof _this[size] === 'number') {
- classList.push('el-col-' + size + '-' + _this[size]);
- } else if (col_typeof(_this[size]) === 'object') {
- var props = _this[size];
- Object.keys(props).forEach(function (prop) {
- classList.push(prop !== 'span' ? 'el-col-' + size + '-' + prop + '-' + props[prop] : 'el-col-' + size + '-' + props[prop]);
- });
- }
- });
- return h(this.tag, {
- class: ['el-col', classList],
- style: style
- }, this.$slots.default);
- }
- });
- // CONCATENATED MODULE: ./packages/col/index.js
- /* istanbul ignore next */
- col.install = function (Vue) {
- Vue.component(col.name, col);
- };
- /* harmony default export */ var packages_col = (col);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/upload/src/upload-list.vue?vue&type=template&id=173fedf5&
- var upload_listvue_type_template_id_173fedf5_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition-group",
- {
- class: [
- "el-upload-list",
- "el-upload-list--" + _vm.listType,
- { "is-disabled": _vm.disabled }
- ],
- attrs: { tag: "ul", name: "el-list" }
- },
- _vm._l(_vm.files, function(file) {
- return _c(
- "li",
- {
- key: file.uid,
- class: [
- "el-upload-list__item",
- "is-" + file.status,
- _vm.focusing ? "focusing" : ""
- ],
- attrs: { tabindex: "0" },
- on: {
- keydown: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "delete", [8, 46], $event.key, [
- "Backspace",
- "Delete",
- "Del"
- ])
- ) {
- return null
- }
- !_vm.disabled && _vm.$emit("remove", file)
- },
- focus: function($event) {
- _vm.focusing = true
- },
- blur: function($event) {
- _vm.focusing = false
- },
- click: function($event) {
- _vm.focusing = false
- }
- }
- },
- [
- file.status !== "uploading" &&
- ["picture-card", "picture"].indexOf(_vm.listType) > -1
- ? _c("img", {
- staticClass: "el-upload-list__item-thumbnail",
- attrs: { src: file.url, alt: "" }
- })
- : _vm._e(),
- _c(
- "a",
- {
- staticClass: "el-upload-list__item-name",
- on: {
- click: function($event) {
- _vm.handleClick(file)
- }
- }
- },
- [
- _c("i", { staticClass: "el-icon-document" }),
- _vm._v(_vm._s(file.name) + "\n ")
- ]
- ),
- _c("label", { staticClass: "el-upload-list__item-status-label" }, [
- _c("i", {
- class: {
- "el-icon-upload-success": true,
- "el-icon-circle-check": _vm.listType === "text",
- "el-icon-check":
- ["picture-card", "picture"].indexOf(_vm.listType) > -1
- }
- })
- ]),
- !_vm.disabled
- ? _c("i", {
- staticClass: "el-icon-close",
- on: {
- click: function($event) {
- _vm.$emit("remove", file)
- }
- }
- })
- : _vm._e(),
- !_vm.disabled
- ? _c("i", { staticClass: "el-icon-close-tip" }, [
- _vm._v(_vm._s(_vm.t("el.upload.deleteTip")))
- ])
- : _vm._e(),
- file.status === "uploading"
- ? _c("el-progress", {
- attrs: {
- type: _vm.listType === "picture-card" ? "circle" : "line",
- "stroke-width": _vm.listType === "picture-card" ? 6 : 2,
- percentage: _vm.parsePercentage(file.percentage)
- }
- })
- : _vm._e(),
- _vm.listType === "picture-card"
- ? _c("span", { staticClass: "el-upload-list__item-actions" }, [
- _vm.handlePreview && _vm.listType === "picture-card"
- ? _c(
- "span",
- {
- staticClass: "el-upload-list__item-preview",
- on: {
- click: function($event) {
- _vm.handlePreview(file)
- }
- }
- },
- [_c("i", { staticClass: "el-icon-zoom-in" })]
- )
- : _vm._e(),
- !_vm.disabled
- ? _c(
- "span",
- {
- staticClass: "el-upload-list__item-delete",
- on: {
- click: function($event) {
- _vm.$emit("remove", file)
- }
- }
- },
- [_c("i", { staticClass: "el-icon-delete" })]
- )
- : _vm._e()
- ])
- : _vm._e()
- ],
- 1
- )
- }),
- 0
- )
- }
- var upload_listvue_type_template_id_173fedf5_staticRenderFns = []
- upload_listvue_type_template_id_173fedf5_render._withStripped = true
- // CONCATENATED MODULE: ./packages/upload/src/upload-list.vue?vue&type=template&id=173fedf5&
- // EXTERNAL MODULE: external "element-ui/lib/progress"
- var progress_ = __webpack_require__(32);
- var progress_default = /*#__PURE__*/__webpack_require__.n(progress_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/upload/src/upload-list.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var upload_listvue_type_script_lang_js_ = ({
- name: 'ElUploadList',
- mixins: [locale_default.a],
- data: function data() {
- return {
- focusing: false
- };
- },
- components: { ElProgress: progress_default.a },
- props: {
- files: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- disabled: {
- type: Boolean,
- default: false
- },
- handlePreview: Function,
- listType: String
- },
- methods: {
- parsePercentage: function parsePercentage(val) {
- return parseInt(val, 10);
- },
- handleClick: function handleClick(file) {
- this.handlePreview && this.handlePreview(file);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/upload/src/upload-list.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_upload_listvue_type_script_lang_js_ = (upload_listvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/upload/src/upload-list.vue
- /* normalize component */
- var upload_list_component = normalizeComponent(
- src_upload_listvue_type_script_lang_js_,
- upload_listvue_type_template_id_173fedf5_render,
- upload_listvue_type_template_id_173fedf5_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var upload_list_api; }
- upload_list_component.options.__file = "packages/upload/src/upload-list.vue"
- /* harmony default export */ var upload_list = (upload_list_component.exports);
- // EXTERNAL MODULE: external "babel-helper-vue-jsx-merge-props"
- var external_babel_helper_vue_jsx_merge_props_ = __webpack_require__(26);
- var external_babel_helper_vue_jsx_merge_props_default = /*#__PURE__*/__webpack_require__.n(external_babel_helper_vue_jsx_merge_props_);
- // CONCATENATED MODULE: ./packages/upload/src/ajax.js
- function getError(action, option, xhr) {
- var msg = void 0;
- if (xhr.response) {
- msg = '' + (xhr.response.error || xhr.response);
- } else if (xhr.responseText) {
- msg = '' + xhr.responseText;
- } else {
- msg = 'fail to post ' + action + ' ' + xhr.status;
- }
- var err = new Error(msg);
- err.status = xhr.status;
- err.method = 'post';
- err.url = action;
- return err;
- }
- function getBody(xhr) {
- var text = xhr.responseText || xhr.response;
- if (!text) {
- return text;
- }
- try {
- return JSON.parse(text);
- } catch (e) {
- return text;
- }
- }
- function upload(option) {
- if (typeof XMLHttpRequest === 'undefined') {
- return;
- }
- var xhr = new XMLHttpRequest();
- var action = option.action;
- if (xhr.upload) {
- xhr.upload.onprogress = function progress(e) {
- if (e.total > 0) {
- e.percent = e.loaded / e.total * 100;
- }
- option.onProgress(e);
- };
- }
- var formData = new FormData();
- if (option.data) {
- Object.keys(option.data).forEach(function (key) {
- formData.append(key, option.data[key]);
- });
- }
- formData.append(option.filename, option.file, option.file.name);
- xhr.onerror = function error(e) {
- option.onError(e);
- };
- xhr.onload = function onload() {
- if (xhr.status < 200 || xhr.status >= 300) {
- return option.onError(getError(action, option, xhr));
- }
- option.onSuccess(getBody(xhr));
- };
- xhr.open('post', action, true);
- if (option.withCredentials && 'withCredentials' in xhr) {
- xhr.withCredentials = true;
- }
- var headers = option.headers || {};
- for (var item in headers) {
- if (headers.hasOwnProperty(item) && headers[item] !== null) {
- xhr.setRequestHeader(item, headers[item]);
- }
- }
- xhr.send(formData);
- return xhr;
- }
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/upload/src/upload-dragger.vue?vue&type=template&id=7ebbf219&
- var upload_draggervue_type_template_id_7ebbf219_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-upload-dragger",
- class: {
- "is-dragover": _vm.dragover
- },
- on: {
- drop: function($event) {
- $event.preventDefault()
- return _vm.onDrop($event)
- },
- dragover: function($event) {
- $event.preventDefault()
- return _vm.onDragover($event)
- },
- dragleave: function($event) {
- $event.preventDefault()
- _vm.dragover = false
- }
- }
- },
- [_vm._t("default")],
- 2
- )
- }
- var upload_draggervue_type_template_id_7ebbf219_staticRenderFns = []
- upload_draggervue_type_template_id_7ebbf219_render._withStripped = true
- // CONCATENATED MODULE: ./packages/upload/src/upload-dragger.vue?vue&type=template&id=7ebbf219&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/upload/src/upload-dragger.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var upload_draggervue_type_script_lang_js_ = ({
- name: 'ElUploadDrag',
- props: {
- disabled: Boolean
- },
- inject: {
- uploader: {
- default: ''
- }
- },
- data: function data() {
- return {
- dragover: false
- };
- },
- methods: {
- onDragover: function onDragover() {
- if (!this.disabled) {
- this.dragover = true;
- }
- },
- onDrop: function onDrop(e) {
- if (this.disabled || !this.uploader) return;
- var accept = this.uploader.accept;
- this.dragover = false;
- if (!accept) {
- this.$emit('file', e.dataTransfer.files);
- return;
- }
- this.$emit('file', [].slice.call(e.dataTransfer.files).filter(function (file) {
- var type = file.type,
- name = file.name;
- var extension = name.indexOf('.') > -1 ? '.' + name.split('.').pop() : '';
- var baseType = type.replace(/\/.*$/, '');
- return accept.split(',').map(function (type) {
- return type.trim();
- }).filter(function (type) {
- return type;
- }).some(function (acceptedType) {
- if (/\..+$/.test(acceptedType)) {
- return extension === acceptedType;
- }
- if (/\/\*$/.test(acceptedType)) {
- return baseType === acceptedType.replace(/\/\*$/, '');
- }
- if (/^[^\/]+\/[^\/]+$/.test(acceptedType)) {
- return type === acceptedType;
- }
- return false;
- });
- }));
- }
- }
- });
- // CONCATENATED MODULE: ./packages/upload/src/upload-dragger.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_upload_draggervue_type_script_lang_js_ = (upload_draggervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/upload/src/upload-dragger.vue
- /* normalize component */
- var upload_dragger_component = normalizeComponent(
- src_upload_draggervue_type_script_lang_js_,
- upload_draggervue_type_template_id_7ebbf219_render,
- upload_draggervue_type_template_id_7ebbf219_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var upload_dragger_api; }
- upload_dragger_component.options.__file = "packages/upload/src/upload-dragger.vue"
- /* harmony default export */ var upload_dragger = (upload_dragger_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/upload/src/upload.vue?vue&type=script&lang=js&
- /* harmony default export */ var uploadvue_type_script_lang_js_ = ({
- inject: ['uploader'],
- components: {
- UploadDragger: upload_dragger
- },
- props: {
- type: String,
- action: {
- type: String,
- required: true
- },
- name: {
- type: String,
- default: 'file'
- },
- data: Object,
- headers: Object,
- withCredentials: Boolean,
- multiple: Boolean,
- accept: String,
- onStart: Function,
- onProgress: Function,
- onSuccess: Function,
- onError: Function,
- beforeUpload: Function,
- drag: Boolean,
- onPreview: {
- type: Function,
- default: function _default() {}
- },
- onRemove: {
- type: Function,
- default: function _default() {}
- },
- fileList: Array,
- autoUpload: Boolean,
- listType: String,
- httpRequest: {
- type: Function,
- default: upload
- },
- disabled: Boolean,
- limit: Number,
- onExceed: Function
- },
- data: function data() {
- return {
- mouseover: false,
- reqs: {}
- };
- },
- methods: {
- isImage: function isImage(str) {
- return str.indexOf('image') !== -1;
- },
- handleChange: function handleChange(ev) {
- var files = ev.target.files;
- if (!files) return;
- this.uploadFiles(files);
- },
- uploadFiles: function uploadFiles(files) {
- var _this = this;
- if (this.limit && this.fileList.length + files.length > this.limit) {
- this.onExceed && this.onExceed(files, this.fileList);
- return;
- }
- var postFiles = Array.prototype.slice.call(files);
- if (!this.multiple) {
- postFiles = postFiles.slice(0, 1);
- }
- if (postFiles.length === 0) {
- return;
- }
- postFiles.forEach(function (rawFile) {
- _this.onStart(rawFile);
- if (_this.autoUpload) _this.upload(rawFile);
- });
- },
- upload: function upload(rawFile) {
- var _this2 = this;
- this.$refs.input.value = null;
- if (!this.beforeUpload) {
- return this.post(rawFile);
- }
- var before = this.beforeUpload(rawFile);
- if (before && before.then) {
- before.then(function (processedFile) {
- var fileType = Object.prototype.toString.call(processedFile);
- if (fileType === '[object File]' || fileType === '[object Blob]') {
- if (fileType === '[object Blob]') {
- processedFile = new File([processedFile], rawFile.name, {
- type: rawFile.type
- });
- }
- for (var p in rawFile) {
- if (rawFile.hasOwnProperty(p)) {
- processedFile[p] = rawFile[p];
- }
- }
- _this2.post(processedFile);
- } else {
- _this2.post(rawFile);
- }
- }, function () {
- _this2.onRemove(null, rawFile);
- });
- } else if (before !== false) {
- this.post(rawFile);
- } else {
- this.onRemove(null, rawFile);
- }
- },
- abort: function abort(file) {
- var reqs = this.reqs;
- if (file) {
- var uid = file;
- if (file.uid) uid = file.uid;
- if (reqs[uid]) {
- reqs[uid].abort();
- }
- } else {
- Object.keys(reqs).forEach(function (uid) {
- if (reqs[uid]) reqs[uid].abort();
- delete reqs[uid];
- });
- }
- },
- post: function post(rawFile) {
- var _this3 = this;
- var uid = rawFile.uid;
- var options = {
- headers: this.headers,
- withCredentials: this.withCredentials,
- file: rawFile,
- data: this.data,
- filename: this.name,
- action: this.action,
- onProgress: function onProgress(e) {
- _this3.onProgress(e, rawFile);
- },
- onSuccess: function onSuccess(res) {
- _this3.onSuccess(res, rawFile);
- delete _this3.reqs[uid];
- },
- onError: function onError(err) {
- _this3.onError(err, rawFile);
- delete _this3.reqs[uid];
- }
- };
- var req = this.httpRequest(options);
- this.reqs[uid] = req;
- if (req && req.then) {
- req.then(options.onSuccess, options.onError);
- }
- },
- handleClick: function handleClick() {
- if (!this.disabled) {
- this.$refs.input.value = null;
- this.$refs.input.click();
- }
- },
- handleKeydown: function handleKeydown(e) {
- if (e.target !== e.currentTarget) return;
- if (e.keyCode === 13 || e.keyCode === 32) {
- this.handleClick();
- }
- }
- },
- render: function render(h) {
- var handleClick = this.handleClick,
- drag = this.drag,
- name = this.name,
- handleChange = this.handleChange,
- multiple = this.multiple,
- accept = this.accept,
- listType = this.listType,
- uploadFiles = this.uploadFiles,
- disabled = this.disabled,
- handleKeydown = this.handleKeydown;
- var data = {
- class: {
- 'el-upload': true
- },
- on: {
- click: handleClick,
- keydown: handleKeydown
- }
- };
- data.class['el-upload--' + listType] = true;
- return h(
- 'div',
- external_babel_helper_vue_jsx_merge_props_default()([data, {
- attrs: { tabindex: '0' }
- }]),
- [drag ? h(
- 'upload-dragger',
- {
- attrs: { disabled: disabled },
- on: {
- 'file': uploadFiles
- }
- },
- [this.$slots.default]
- ) : this.$slots.default, h('input', { 'class': 'el-upload__input', attrs: { type: 'file', name: name, multiple: multiple, accept: accept },
- ref: 'input', on: {
- 'change': handleChange
- }
- })]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/upload/src/upload.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_uploadvue_type_script_lang_js_ = (uploadvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/upload/src/upload.vue
- var upload_render, upload_staticRenderFns
- /* normalize component */
- var upload_component = normalizeComponent(
- src_uploadvue_type_script_lang_js_,
- upload_render,
- upload_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var upload_api; }
- upload_component.options.__file = "packages/upload/src/upload.vue"
- /* harmony default export */ var src_upload = (upload_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/upload/src/index.vue?vue&type=script&lang=js&
- function srcvue_type_script_lang_js_noop() {}
- /* harmony default export */ var srcvue_type_script_lang_js_ = ({
- name: 'ElUpload',
- mixins: [migrating_default.a],
- components: {
- ElProgress: progress_default.a,
- UploadList: upload_list,
- Upload: src_upload
- },
- provide: function provide() {
- return {
- uploader: this
- };
- },
- inject: {
- elForm: {
- default: ''
- }
- },
- props: {
- action: {
- type: String,
- required: true
- },
- headers: {
- type: Object,
- default: function _default() {
- return {};
- }
- },
- data: Object,
- multiple: Boolean,
- name: {
- type: String,
- default: 'file'
- },
- drag: Boolean,
- dragger: Boolean,
- withCredentials: Boolean,
- showFileList: {
- type: Boolean,
- default: true
- },
- accept: String,
- type: {
- type: String,
- default: 'select'
- },
- beforeUpload: Function,
- beforeRemove: Function,
- onRemove: {
- type: Function,
- default: srcvue_type_script_lang_js_noop
- },
- onChange: {
- type: Function,
- default: srcvue_type_script_lang_js_noop
- },
- onPreview: {
- type: Function
- },
- onSuccess: {
- type: Function,
- default: srcvue_type_script_lang_js_noop
- },
- onProgress: {
- type: Function,
- default: srcvue_type_script_lang_js_noop
- },
- onError: {
- type: Function,
- default: srcvue_type_script_lang_js_noop
- },
- fileList: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- autoUpload: {
- type: Boolean,
- default: true
- },
- listType: {
- type: String,
- default: 'text' // text,picture,picture-card
- },
- httpRequest: Function,
- disabled: Boolean,
- limit: Number,
- onExceed: {
- type: Function,
- default: srcvue_type_script_lang_js_noop
- }
- },
- data: function data() {
- return {
- uploadFiles: [],
- dragOver: false,
- draging: false,
- tempIndex: 1
- };
- },
- computed: {
- uploadDisabled: function uploadDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- }
- },
- watch: {
- listType: function listType(type) {
- if (type === 'picture-card' || type === 'picture') {
- this.uploadFiles = this.uploadFiles.map(function (file) {
- if (!file.url && file.raw) {
- try {
- file.url = URL.createObjectURL(file.raw);
- } catch (err) {
- console.error('[Element Error][Upload]', err);
- }
- }
- return file;
- });
- }
- },
- fileList: {
- immediate: true,
- handler: function handler(fileList) {
- var _this = this;
- this.uploadFiles = fileList.map(function (item) {
- item.uid = item.uid || Date.now() + _this.tempIndex++;
- item.status = item.status || 'success';
- return item;
- });
- }
- }
- },
- methods: {
- handleStart: function handleStart(rawFile) {
- rawFile.uid = Date.now() + this.tempIndex++;
- var file = {
- status: 'ready',
- name: rawFile.name,
- size: rawFile.size,
- percentage: 0,
- uid: rawFile.uid,
- raw: rawFile
- };
- if (this.listType === 'picture-card' || this.listType === 'picture') {
- try {
- file.url = URL.createObjectURL(rawFile);
- } catch (err) {
- console.error('[Element Error][Upload]', err);
- return;
- }
- }
- this.uploadFiles.push(file);
- this.onChange(file, this.uploadFiles);
- },
- handleProgress: function handleProgress(ev, rawFile) {
- var file = this.getFile(rawFile);
- this.onProgress(ev, file, this.uploadFiles);
- file.status = 'uploading';
- file.percentage = ev.percent || 0;
- },
- handleSuccess: function handleSuccess(res, rawFile) {
- var file = this.getFile(rawFile);
- if (file) {
- file.status = 'success';
- file.response = res;
- this.onSuccess(res, file, this.uploadFiles);
- this.onChange(file, this.uploadFiles);
- }
- },
- handleError: function handleError(err, rawFile) {
- var file = this.getFile(rawFile);
- var fileList = this.uploadFiles;
- file.status = 'fail';
- fileList.splice(fileList.indexOf(file), 1);
- this.onError(err, file, this.uploadFiles);
- this.onChange(file, this.uploadFiles);
- },
- handleRemove: function handleRemove(file, raw) {
- var _this2 = this;
- if (raw) {
- file = this.getFile(raw);
- }
- var doRemove = function doRemove() {
- _this2.abort(file);
- var fileList = _this2.uploadFiles;
- fileList.splice(fileList.indexOf(file), 1);
- _this2.onRemove(file, fileList);
- };
- if (!this.beforeRemove) {
- doRemove();
- } else if (typeof this.beforeRemove === 'function') {
- var before = this.beforeRemove(file, this.uploadFiles);
- if (before && before.then) {
- before.then(function () {
- doRemove();
- }, srcvue_type_script_lang_js_noop);
- } else if (before !== false) {
- doRemove();
- }
- }
- },
- getFile: function getFile(rawFile) {
- var fileList = this.uploadFiles;
- var target = void 0;
- fileList.every(function (item) {
- target = rawFile.uid === item.uid ? item : null;
- return !target;
- });
- return target;
- },
- abort: function abort(file) {
- this.$refs['upload-inner'].abort(file);
- },
- clearFiles: function clearFiles() {
- this.uploadFiles = [];
- },
- submit: function submit() {
- var _this3 = this;
- this.uploadFiles.filter(function (file) {
- return file.status === 'ready';
- }).forEach(function (file) {
- _this3.$refs['upload-inner'].upload(file.raw);
- });
- },
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'default-file-list': 'default-file-list is renamed to file-list.',
- 'show-upload-list': 'show-upload-list is renamed to show-file-list.',
- 'thumbnail-mode': 'thumbnail-mode has been deprecated, you can implement the same effect according to this case: http://element.eleme.io/#/zh-CN/component/upload#yong-hu-tou-xiang-shang-chuan'
- }
- };
- }
- },
- beforeDestroy: function beforeDestroy() {
- this.uploadFiles.forEach(function (file) {
- if (file.url && file.url.indexOf('blob:') === 0) {
- URL.revokeObjectURL(file.url);
- }
- });
- },
- render: function render(h) {
- var uploadList = void 0;
- if (this.showFileList) {
- uploadList = h(upload_list, {
- attrs: {
- disabled: this.uploadDisabled,
- listType: this.listType,
- files: this.uploadFiles,
- handlePreview: this.onPreview },
- on: {
- 'remove': this.handleRemove
- }
- });
- }
- var uploadData = {
- props: {
- type: this.type,
- drag: this.drag,
- action: this.action,
- multiple: this.multiple,
- 'before-upload': this.beforeUpload,
- 'with-credentials': this.withCredentials,
- headers: this.headers,
- name: this.name,
- data: this.data,
- accept: this.accept,
- fileList: this.uploadFiles,
- autoUpload: this.autoUpload,
- listType: this.listType,
- disabled: this.uploadDisabled,
- limit: this.limit,
- 'on-exceed': this.onExceed,
- 'on-start': this.handleStart,
- 'on-progress': this.handleProgress,
- 'on-success': this.handleSuccess,
- 'on-error': this.handleError,
- 'on-preview': this.onPreview,
- 'on-remove': this.handleRemove,
- 'http-request': this.httpRequest
- },
- ref: 'upload-inner'
- };
- var trigger = this.$slots.trigger || this.$slots.default;
- var uploadComponent = h(
- 'upload',
- uploadData,
- [trigger]
- );
- return h('div', [this.listType === 'picture-card' ? uploadList : '', this.$slots.trigger ? [uploadComponent, this.$slots.default] : uploadComponent, this.$slots.tip, this.listType !== 'picture-card' ? uploadList : '']);
- }
- });
- // CONCATENATED MODULE: ./packages/upload/src/index.vue?vue&type=script&lang=js&
- /* harmony default export */ var upload_srcvue_type_script_lang_js_ = (srcvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/upload/src/index.vue
- var src_render, src_staticRenderFns
- /* normalize component */
- var upload_src_component = normalizeComponent(
- upload_srcvue_type_script_lang_js_,
- src_render,
- src_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_api; }
- upload_src_component.options.__file = "packages/upload/src/index.vue"
- /* harmony default export */ var upload_src = (upload_src_component.exports);
- // CONCATENATED MODULE: ./packages/upload/index.js
- /* istanbul ignore next */
- upload_src.install = function (Vue) {
- Vue.component(upload_src.name, upload_src);
- };
- /* harmony default export */ var packages_upload = (upload_src);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/progress/src/progress.vue?vue&type=template&id=229ee406&
- var progressvue_type_template_id_229ee406_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-progress",
- class: [
- "el-progress--" + _vm.type,
- _vm.status ? "is-" + _vm.status : "",
- {
- "el-progress--without-text": !_vm.showText,
- "el-progress--text-inside": _vm.textInside
- }
- ],
- attrs: {
- role: "progressbar",
- "aria-valuenow": _vm.percentage,
- "aria-valuemin": "0",
- "aria-valuemax": "100"
- }
- },
- [
- _vm.type === "line"
- ? _c("div", { staticClass: "el-progress-bar" }, [
- _c(
- "div",
- {
- staticClass: "el-progress-bar__outer",
- style: { height: _vm.strokeWidth + "px" }
- },
- [
- _c(
- "div",
- {
- staticClass: "el-progress-bar__inner",
- style: _vm.barStyle
- },
- [
- _vm.showText && _vm.textInside
- ? _c(
- "div",
- { staticClass: "el-progress-bar__innerText" },
- [_vm._v(_vm._s(_vm.percentage) + "%")]
- )
- : _vm._e()
- ]
- )
- ]
- )
- ])
- : _c(
- "div",
- {
- staticClass: "el-progress-circle",
- style: { height: _vm.width + "px", width: _vm.width + "px" }
- },
- [
- _c("svg", { attrs: { viewBox: "0 0 100 100" } }, [
- _c("path", {
- staticClass: "el-progress-circle__track",
- attrs: {
- d: _vm.trackPath,
- stroke: "#e5e9f2",
- "stroke-width": _vm.relativeStrokeWidth,
- fill: "none"
- }
- }),
- _c("path", {
- staticClass: "el-progress-circle__path",
- style: _vm.circlePathStyle,
- attrs: {
- d: _vm.trackPath,
- "stroke-linecap": "round",
- stroke: _vm.stroke,
- "stroke-width": _vm.relativeStrokeWidth,
- fill: "none"
- }
- })
- ])
- ]
- ),
- _vm.showText && !_vm.textInside
- ? _c(
- "div",
- {
- staticClass: "el-progress__text",
- style: { fontSize: _vm.progressTextSize + "px" }
- },
- [
- !_vm.status
- ? [_vm._v(_vm._s(_vm.percentage) + "%")]
- : [
- _vm.status === "text"
- ? _vm._t("default")
- : _c("i", { class: _vm.iconClass })
- ]
- ],
- 2
- )
- : _vm._e()
- ]
- )
- }
- var progressvue_type_template_id_229ee406_staticRenderFns = []
- progressvue_type_template_id_229ee406_render._withStripped = true
- // CONCATENATED MODULE: ./packages/progress/src/progress.vue?vue&type=template&id=229ee406&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/progress/src/progress.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var progressvue_type_script_lang_js_ = ({
- name: 'ElProgress',
- props: {
- type: {
- type: String,
- default: 'line',
- validator: function validator(val) {
- return ['line', 'circle'].indexOf(val) > -1;
- }
- },
- percentage: {
- type: Number,
- default: 0,
- required: true,
- validator: function validator(val) {
- return val >= 0 && val <= 100;
- }
- },
- status: {
- type: String,
- validator: function validator(val) {
- return ['text', 'success', 'exception'].indexOf(val) > -1;
- }
- },
- strokeWidth: {
- type: Number,
- default: 6
- },
- textInside: {
- type: Boolean,
- default: false
- },
- width: {
- type: Number,
- default: 126
- },
- showText: {
- type: Boolean,
- default: true
- },
- color: {
- type: String,
- default: ''
- }
- },
- computed: {
- barStyle: function barStyle() {
- var style = {};
- style.width = this.percentage + '%';
- style.backgroundColor = this.color;
- return style;
- },
- relativeStrokeWidth: function relativeStrokeWidth() {
- return (this.strokeWidth / this.width * 100).toFixed(1);
- },
- trackPath: function trackPath() {
- var radius = parseInt(50 - parseFloat(this.relativeStrokeWidth) / 2, 10);
- return 'M 50 50 m 0 -' + radius + ' a ' + radius + ' ' + radius + ' 0 1 1 0 ' + radius * 2 + ' a ' + radius + ' ' + radius + ' 0 1 1 0 -' + radius * 2;
- },
- perimeter: function perimeter() {
- var radius = 50 - parseFloat(this.relativeStrokeWidth) / 2;
- return 2 * Math.PI * radius;
- },
- circlePathStyle: function circlePathStyle() {
- var perimeter = this.perimeter;
- return {
- strokeDasharray: perimeter + 'px,' + perimeter + 'px',
- strokeDashoffset: (1 - this.percentage / 100) * perimeter + 'px',
- transition: 'stroke-dashoffset 0.6s ease 0s, stroke 0.6s ease'
- };
- },
- stroke: function stroke() {
- var ret = void 0;
- if (this.color) {
- ret = this.color;
- } else {
- switch (this.status) {
- case 'success':
- ret = '#13ce66';
- break;
- case 'exception':
- ret = '#ff4949';
- break;
- default:
- ret = '#20a0ff';
- }
- }
- return ret;
- },
- iconClass: function iconClass() {
- if (this.type === 'line') {
- return this.status === 'success' ? 'el-icon-circle-check' : 'el-icon-circle-close';
- } else {
- return this.status === 'success' ? 'el-icon-check' : 'el-icon-close';
- }
- },
- progressTextSize: function progressTextSize() {
- return this.type === 'line' ? 12 + this.strokeWidth * 0.4 : this.width * 0.111111 + 2;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/progress/src/progress.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_progressvue_type_script_lang_js_ = (progressvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/progress/src/progress.vue
- /* normalize component */
- var progress_component = normalizeComponent(
- src_progressvue_type_script_lang_js_,
- progressvue_type_template_id_229ee406_render,
- progressvue_type_template_id_229ee406_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var progress_api; }
- progress_component.options.__file = "packages/progress/src/progress.vue"
- /* harmony default export */ var progress = (progress_component.exports);
- // CONCATENATED MODULE: ./packages/progress/index.js
- /* istanbul ignore next */
- progress.install = function (Vue) {
- Vue.component(progress.name, progress);
- };
- /* harmony default export */ var packages_progress = (progress);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/spinner/src/spinner.vue?vue&type=template&id=697b8538&
- var spinnervue_type_template_id_697b8538_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("span", { staticClass: "el-spinner" }, [
- _c(
- "svg",
- {
- staticClass: "el-spinner-inner",
- style: { width: _vm.radius / 2 + "px", height: _vm.radius / 2 + "px" },
- attrs: { viewBox: "0 0 50 50" }
- },
- [
- _c("circle", {
- staticClass: "path",
- attrs: {
- cx: "25",
- cy: "25",
- r: "20",
- fill: "none",
- stroke: _vm.strokeColor,
- "stroke-width": _vm.strokeWidth
- }
- })
- ]
- )
- ])
- }
- var spinnervue_type_template_id_697b8538_staticRenderFns = []
- spinnervue_type_template_id_697b8538_render._withStripped = true
- // CONCATENATED MODULE: ./packages/spinner/src/spinner.vue?vue&type=template&id=697b8538&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/spinner/src/spinner.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var spinnervue_type_script_lang_js_ = ({
- name: 'ElSpinner',
- props: {
- type: String,
- radius: {
- type: Number,
- default: 100
- },
- strokeWidth: {
- type: Number,
- default: 5
- },
- strokeColor: {
- type: String,
- default: '#efefef'
- }
- }
- });
- // CONCATENATED MODULE: ./packages/spinner/src/spinner.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_spinnervue_type_script_lang_js_ = (spinnervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/spinner/src/spinner.vue
- /* normalize component */
- var spinner_component = normalizeComponent(
- src_spinnervue_type_script_lang_js_,
- spinnervue_type_template_id_697b8538_render,
- spinnervue_type_template_id_697b8538_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var spinner_api; }
- spinner_component.options.__file = "packages/spinner/src/spinner.vue"
- /* harmony default export */ var spinner = (spinner_component.exports);
- // CONCATENATED MODULE: ./packages/spinner/index.js
- /* istanbul ignore next */
- spinner.install = function (Vue) {
- Vue.component(spinner.name, spinner);
- };
- /* harmony default export */ var packages_spinner = (spinner);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/message/src/main.vue?vue&type=template&id=455b9f60&
- var mainvue_type_template_id_455b9f60_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- {
- attrs: { name: "el-message-fade" },
- on: { "after-leave": _vm.handleAfterLeave }
- },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.visible,
- expression: "visible"
- }
- ],
- class: [
- "el-message",
- _vm.type && !_vm.iconClass ? "el-message--" + _vm.type : "",
- _vm.center ? "is-center" : "",
- _vm.showClose ? "is-closable" : "",
- _vm.customClass
- ],
- attrs: { role: "alert" },
- on: { mouseenter: _vm.clearTimer, mouseleave: _vm.startTimer }
- },
- [
- _vm.iconClass
- ? _c("i", { class: _vm.iconClass })
- : _c("i", { class: _vm.typeClass }),
- _vm._t("default", [
- !_vm.dangerouslyUseHTMLString
- ? _c("p", { staticClass: "el-message__content" }, [
- _vm._v(_vm._s(_vm.message))
- ])
- : _c("p", {
- staticClass: "el-message__content",
- domProps: { innerHTML: _vm._s(_vm.message) }
- })
- ]),
- _vm.showClose
- ? _c("i", {
- staticClass: "el-message__closeBtn el-icon-close",
- on: { click: _vm.close }
- })
- : _vm._e()
- ],
- 2
- )
- ]
- )
- }
- var mainvue_type_template_id_455b9f60_staticRenderFns = []
- mainvue_type_template_id_455b9f60_render._withStripped = true
- // CONCATENATED MODULE: ./packages/message/src/main.vue?vue&type=template&id=455b9f60&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/message/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var src_mainvue_type_script_lang_js_typeMap = {
- success: 'success',
- info: 'info',
- warning: 'warning',
- error: 'error'
- };
- /* harmony default export */ var message_src_mainvue_type_script_lang_js_ = ({
- data: function data() {
- return {
- visible: false,
- message: '',
- duration: 3000,
- type: 'info',
- iconClass: '',
- customClass: '',
- onClose: null,
- showClose: false,
- closed: false,
- timer: null,
- dangerouslyUseHTMLString: false,
- center: false
- };
- },
- computed: {
- typeClass: function typeClass() {
- return this.type && !this.iconClass ? 'el-message__icon el-icon-' + src_mainvue_type_script_lang_js_typeMap[this.type] : '';
- }
- },
- watch: {
- closed: function closed(newVal) {
- if (newVal) {
- this.visible = false;
- }
- }
- },
- methods: {
- handleAfterLeave: function handleAfterLeave() {
- this.$destroy(true);
- this.$el.parentNode.removeChild(this.$el);
- },
- close: function close() {
- this.closed = true;
- if (typeof this.onClose === 'function') {
- this.onClose(this);
- }
- },
- clearTimer: function clearTimer() {
- clearTimeout(this.timer);
- },
- startTimer: function startTimer() {
- var _this = this;
- if (this.duration > 0) {
- this.timer = setTimeout(function () {
- if (!_this.closed) {
- _this.close();
- }
- }, this.duration);
- }
- },
- keydown: function keydown(e) {
- if (e.keyCode === 27) {
- // esc关闭消息
- if (!this.closed) {
- this.close();
- }
- }
- }
- },
- mounted: function mounted() {
- this.startTimer();
- document.addEventListener('keydown', this.keydown);
- },
- beforeDestroy: function beforeDestroy() {
- document.removeEventListener('keydown', this.keydown);
- }
- });
- // CONCATENATED MODULE: ./packages/message/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_message_src_mainvue_type_script_lang_js_ = (message_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/message/src/main.vue
- /* normalize component */
- var message_src_main_component = normalizeComponent(
- packages_message_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_455b9f60_render,
- mainvue_type_template_id_455b9f60_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var message_src_main_api; }
- message_src_main_component.options.__file = "packages/message/src/main.vue"
- /* harmony default export */ var message_src_main = (message_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/message/src/main.js
- var MessageConstructor = external_vue_default.a.extend(message_src_main);
- var message_src_main_instance = void 0;
- var main_instances = [];
- var main_seed = 1;
- var main_Message = function Message(options) {
- if (external_vue_default.a.prototype.$isServer) return;
- options = options || {};
- if (typeof options === 'string') {
- options = {
- message: options
- };
- }
- var userOnClose = options.onClose;
- var id = 'message_' + main_seed++;
- options.onClose = function () {
- Message.close(id, userOnClose);
- };
- message_src_main_instance = new MessageConstructor({
- data: options
- });
- message_src_main_instance.id = id;
- if (Object(vdom_["isVNode"])(message_src_main_instance.message)) {
- message_src_main_instance.$slots.default = [message_src_main_instance.message];
- message_src_main_instance.message = null;
- }
- message_src_main_instance.vm = message_src_main_instance.$mount();
- document.body.appendChild(message_src_main_instance.vm.$el);
- message_src_main_instance.vm.visible = true;
- message_src_main_instance.dom = message_src_main_instance.vm.$el;
- message_src_main_instance.dom.style.zIndex = popup_["PopupManager"].nextZIndex();
- main_instances.push(message_src_main_instance);
- return message_src_main_instance.vm;
- };
- ['success', 'warning', 'info', 'error'].forEach(function (type) {
- main_Message[type] = function (options) {
- if (typeof options === 'string') {
- options = {
- message: options
- };
- }
- options.type = type;
- return main_Message(options);
- };
- });
- main_Message.close = function (id, userOnClose) {
- for (var i = 0, len = main_instances.length; i < len; i++) {
- if (id === main_instances[i].id) {
- if (typeof userOnClose === 'function') {
- userOnClose(main_instances[i]);
- }
- main_instances.splice(i, 1);
- break;
- }
- }
- };
- main_Message.closeAll = function () {
- for (var i = main_instances.length - 1; i >= 0; i--) {
- main_instances[i].close();
- }
- };
- /* harmony default export */ var packages_message_src_main = (main_Message);
- // CONCATENATED MODULE: ./packages/message/index.js
- /* harmony default export */ var packages_message = (packages_message_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/badge/src/main.vue?vue&type=template&id=7ccb6598&
- var mainvue_type_template_id_7ccb6598_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- { staticClass: "el-badge" },
- [
- _vm._t("default"),
- _c("transition", { attrs: { name: "el-zoom-in-center" } }, [
- _c("sup", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value:
- !_vm.hidden && (_vm.content || _vm.content === 0 || _vm.isDot),
- expression: "!hidden && (content || content === 0 || isDot)"
- }
- ],
- staticClass: "el-badge__content",
- class: [
- "el-badge__content--" + _vm.type,
- {
- "is-fixed": _vm.$slots.default,
- "is-dot": _vm.isDot
- }
- ],
- domProps: { textContent: _vm._s(_vm.content) }
- })
- ])
- ],
- 2
- )
- }
- var mainvue_type_template_id_7ccb6598_staticRenderFns = []
- mainvue_type_template_id_7ccb6598_render._withStripped = true
- // CONCATENATED MODULE: ./packages/badge/src/main.vue?vue&type=template&id=7ccb6598&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/badge/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var badge_src_mainvue_type_script_lang_js_ = ({
- name: 'ElBadge',
- props: {
- value: {},
- max: Number,
- isDot: Boolean,
- hidden: Boolean,
- type: {
- type: String,
- validator: function validator(val) {
- return ['primary', 'success', 'warning', 'info', 'danger'].indexOf(val) > -1;
- }
- }
- },
- computed: {
- content: function content() {
- if (this.isDot) return;
- var value = this.value;
- var max = this.max;
- if (typeof value === 'number' && typeof max === 'number') {
- return max < value ? max + '+' : value;
- }
- return value;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/badge/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_badge_src_mainvue_type_script_lang_js_ = (badge_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/badge/src/main.vue
- /* normalize component */
- var badge_src_main_component = normalizeComponent(
- packages_badge_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_7ccb6598_render,
- mainvue_type_template_id_7ccb6598_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var badge_src_main_api; }
- badge_src_main_component.options.__file = "packages/badge/src/main.vue"
- /* harmony default export */ var badge_src_main = (badge_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/badge/index.js
- /* istanbul ignore next */
- badge_src_main.install = function (Vue) {
- Vue.component(badge_src_main.name, badge_src_main);
- };
- /* harmony default export */ var badge = (badge_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/card/src/main.vue?vue&type=template&id=59a4a40f&
- var mainvue_type_template_id_59a4a40f_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-card",
- class: _vm.shadow ? "is-" + _vm.shadow + "-shadow" : "is-always-shadow"
- },
- [
- _vm.$slots.header || _vm.header
- ? _c(
- "div",
- { staticClass: "el-card__header" },
- [_vm._t("header", [_vm._v(_vm._s(_vm.header))])],
- 2
- )
- : _vm._e(),
- _c(
- "div",
- { staticClass: "el-card__body", style: _vm.bodyStyle },
- [_vm._t("default")],
- 2
- )
- ]
- )
- }
- var mainvue_type_template_id_59a4a40f_staticRenderFns = []
- mainvue_type_template_id_59a4a40f_render._withStripped = true
- // CONCATENATED MODULE: ./packages/card/src/main.vue?vue&type=template&id=59a4a40f&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/card/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var card_src_mainvue_type_script_lang_js_ = ({
- name: 'ElCard',
- props: {
- header: {},
- bodyStyle: {},
- shadow: {
- type: String
- }
- }
- });
- // CONCATENATED MODULE: ./packages/card/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_card_src_mainvue_type_script_lang_js_ = (card_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/card/src/main.vue
- /* normalize component */
- var card_src_main_component = normalizeComponent(
- packages_card_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_59a4a40f_render,
- mainvue_type_template_id_59a4a40f_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var card_src_main_api; }
- card_src_main_component.options.__file = "packages/card/src/main.vue"
- /* harmony default export */ var card_src_main = (card_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/card/index.js
- /* istanbul ignore next */
- card_src_main.install = function (Vue) {
- Vue.component(card_src_main.name, card_src_main);
- };
- /* harmony default export */ var card = (card_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/rate/src/main.vue?vue&type=template&id=ada57782&
- var mainvue_type_template_id_ada57782_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-rate",
- attrs: {
- role: "slider",
- "aria-valuenow": _vm.currentValue,
- "aria-valuetext": _vm.text,
- "aria-valuemin": "0",
- "aria-valuemax": _vm.max,
- tabindex: "0"
- },
- on: { keydown: _vm.handleKey }
- },
- [
- _vm._l(_vm.max, function(item, key) {
- return _c(
- "span",
- {
- key: key,
- staticClass: "el-rate__item",
- style: { cursor: _vm.rateDisabled ? "auto" : "pointer" },
- on: {
- mousemove: function($event) {
- _vm.setCurrentValue(item, $event)
- },
- mouseleave: _vm.resetCurrentValue,
- click: function($event) {
- _vm.selectValue(item)
- }
- }
- },
- [
- _c(
- "i",
- {
- staticClass: "el-rate__icon",
- class: [
- _vm.classes[item - 1],
- { hover: _vm.hoverIndex === item }
- ],
- style: _vm.getIconStyle(item)
- },
- [
- _vm.showDecimalIcon(item)
- ? _c("i", {
- staticClass: "el-rate__decimal",
- class: _vm.decimalIconClass,
- style: _vm.decimalStyle
- })
- : _vm._e()
- ]
- )
- ]
- )
- }),
- _vm.showText || _vm.showScore
- ? _c(
- "span",
- { staticClass: "el-rate__text", style: { color: _vm.textColor } },
- [_vm._v(_vm._s(_vm.text))]
- )
- : _vm._e()
- ],
- 2
- )
- }
- var mainvue_type_template_id_ada57782_staticRenderFns = []
- mainvue_type_template_id_ada57782_render._withStripped = true
- // CONCATENATED MODULE: ./packages/rate/src/main.vue?vue&type=template&id=ada57782&
- // EXTERNAL MODULE: external "element-ui/lib/utils/types"
- var types_ = __webpack_require__(25);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/rate/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var rate_src_mainvue_type_script_lang_js_ = ({
- name: 'ElRate',
- mixins: [migrating_default.a],
- inject: {
- elForm: {
- default: ''
- }
- },
- data: function data() {
- return {
- pointerAtLeftHalf: true,
- currentValue: this.value,
- hoverIndex: -1
- };
- },
- props: {
- value: {
- type: Number,
- default: 0
- },
- lowThreshold: {
- type: Number,
- default: 2
- },
- highThreshold: {
- type: Number,
- default: 4
- },
- max: {
- type: Number,
- default: 5
- },
- colors: {
- type: [Array, Object],
- default: function _default() {
- return ['#F7BA2A', '#F7BA2A', '#F7BA2A'];
- }
- },
- voidColor: {
- type: String,
- default: '#C6D1DE'
- },
- disabledVoidColor: {
- type: String,
- default: '#EFF2F7'
- },
- iconClasses: {
- type: [Array, Object],
- default: function _default() {
- return ['el-icon-star-on', 'el-icon-star-on', 'el-icon-star-on'];
- }
- },
- voidIconClass: {
- type: String,
- default: 'el-icon-star-off'
- },
- disabledVoidIconClass: {
- type: String,
- default: 'el-icon-star-on'
- },
- disabled: {
- type: Boolean,
- default: false
- },
- allowHalf: {
- type: Boolean,
- default: false
- },
- showText: {
- type: Boolean,
- default: false
- },
- showScore: {
- type: Boolean,
- default: false
- },
- textColor: {
- type: String,
- default: '#1f2d3d'
- },
- texts: {
- type: Array,
- default: function _default() {
- return ['极差', '失望', '一般', '满意', '惊喜'];
- }
- },
- scoreTemplate: {
- type: String,
- default: '{value}'
- }
- },
- computed: {
- text: function text() {
- var result = '';
- if (this.showScore) {
- result = this.scoreTemplate.replace(/\{\s*value\s*\}/, this.rateDisabled ? this.value : this.currentValue);
- } else if (this.showText) {
- result = this.texts[Math.ceil(this.currentValue) - 1];
- }
- return result;
- },
- decimalStyle: function decimalStyle() {
- var width = '';
- if (this.rateDisabled) {
- width = this.valueDecimal + '%';
- } else if (this.allowHalf) {
- width = '50%';
- }
- return {
- color: this.activeColor,
- width: width
- };
- },
- valueDecimal: function valueDecimal() {
- return this.value * 100 - Math.floor(this.value) * 100;
- },
- classMap: function classMap() {
- var _ref;
- return Array.isArray(this.iconClasses) ? (_ref = {}, _ref[this.lowThreshold] = this.iconClasses[0], _ref[this.highThreshold] = { value: this.iconClasses[1], excluded: true }, _ref[this.max] = this.iconClasses[2], _ref) : this.iconClasses;
- },
- decimalIconClass: function decimalIconClass() {
- return this.getValueFromMap(this.value, this.classMap);
- },
- voidClass: function voidClass() {
- return this.rateDisabled ? this.disabledVoidIconClass : this.voidIconClass;
- },
- activeClass: function activeClass() {
- return this.getValueFromMap(this.currentValue, this.classMap);
- },
- colorMap: function colorMap() {
- var _ref2;
- return Array.isArray(this.colors) ? (_ref2 = {}, _ref2[this.lowThreshold] = this.colors[0], _ref2[this.highThreshold] = { value: this.colors[1], excluded: true }, _ref2[this.max] = this.colors[2], _ref2) : this.colors;
- },
- activeColor: function activeColor() {
- return this.getValueFromMap(this.currentValue, this.colorMap);
- },
- classes: function classes() {
- var result = [];
- var i = 0;
- var threshold = this.currentValue;
- if (this.allowHalf && this.currentValue !== Math.floor(this.currentValue)) {
- threshold--;
- }
- for (; i < threshold; i++) {
- result.push(this.activeClass);
- }
- for (; i < this.max; i++) {
- result.push(this.voidClass);
- }
- return result;
- },
- rateDisabled: function rateDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- }
- },
- watch: {
- value: function value(val) {
- this.currentValue = val;
- this.pointerAtLeftHalf = this.value !== Math.floor(this.value);
- }
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'text-template': 'text-template is renamed to score-template.'
- }
- };
- },
- getValueFromMap: function getValueFromMap(value, map) {
- var matchedKeys = Object.keys(map).filter(function (key) {
- var val = map[key];
- var excluded = Object(types_["isObject"])(val) ? val.excluded : false;
- return excluded ? value < key : value <= key;
- }).sort(function (a, b) {
- return a - b;
- });
- var matchedValue = map[matchedKeys[0]];
- return Object(types_["isObject"])(matchedValue) ? matchedValue.value : matchedValue || '';
- },
- showDecimalIcon: function showDecimalIcon(item) {
- var showWhenDisabled = this.rateDisabled && this.valueDecimal > 0 && item - 1 < this.value && item > this.value;
- /* istanbul ignore next */
- var showWhenAllowHalf = this.allowHalf && this.pointerAtLeftHalf && item - 0.5 <= this.currentValue && item > this.currentValue;
- return showWhenDisabled || showWhenAllowHalf;
- },
- getIconStyle: function getIconStyle(item) {
- var voidColor = this.rateDisabled ? this.disabledVoidColor : this.voidColor;
- return {
- color: item <= this.currentValue ? this.activeColor : voidColor
- };
- },
- selectValue: function selectValue(value) {
- if (this.rateDisabled) {
- return;
- }
- if (this.allowHalf && this.pointerAtLeftHalf) {
- this.$emit('input', this.currentValue);
- this.$emit('change', this.currentValue);
- } else {
- this.$emit('input', value);
- this.$emit('change', value);
- }
- },
- handleKey: function handleKey(e) {
- if (this.rateDisabled) {
- return;
- }
- var currentValue = this.currentValue;
- var keyCode = e.keyCode;
- if (keyCode === 38 || keyCode === 39) {
- // left / down
- if (this.allowHalf) {
- currentValue += 0.5;
- } else {
- currentValue += 1;
- }
- e.stopPropagation();
- e.preventDefault();
- } else if (keyCode === 37 || keyCode === 40) {
- if (this.allowHalf) {
- currentValue -= 0.5;
- } else {
- currentValue -= 1;
- }
- e.stopPropagation();
- e.preventDefault();
- }
- currentValue = currentValue < 0 ? 0 : currentValue;
- currentValue = currentValue > this.max ? this.max : currentValue;
- this.$emit('input', currentValue);
- this.$emit('change', currentValue);
- },
- setCurrentValue: function setCurrentValue(value, event) {
- if (this.rateDisabled) {
- return;
- }
- /* istanbul ignore if */
- if (this.allowHalf) {
- var target = event.target;
- if (Object(dom_["hasClass"])(target, 'el-rate__item')) {
- target = target.querySelector('.el-rate__icon');
- }
- if (Object(dom_["hasClass"])(target, 'el-rate__decimal')) {
- target = target.parentNode;
- }
- this.pointerAtLeftHalf = event.offsetX * 2 <= target.clientWidth;
- this.currentValue = this.pointerAtLeftHalf ? value - 0.5 : value;
- } else {
- this.currentValue = value;
- }
- this.hoverIndex = value;
- },
- resetCurrentValue: function resetCurrentValue() {
- if (this.rateDisabled) {
- return;
- }
- if (this.allowHalf) {
- this.pointerAtLeftHalf = this.value !== Math.floor(this.value);
- }
- this.currentValue = this.value;
- this.hoverIndex = -1;
- }
- },
- created: function created() {
- if (!this.value) {
- this.$emit('input', 0);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/rate/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_rate_src_mainvue_type_script_lang_js_ = (rate_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/rate/src/main.vue
- /* normalize component */
- var rate_src_main_component = normalizeComponent(
- packages_rate_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_ada57782_render,
- mainvue_type_template_id_ada57782_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var rate_src_main_api; }
- rate_src_main_component.options.__file = "packages/rate/src/main.vue"
- /* harmony default export */ var rate_src_main = (rate_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/rate/index.js
- /* istanbul ignore next */
- rate_src_main.install = function (Vue) {
- Vue.component(rate_src_main.name, rate_src_main);
- };
- /* harmony default export */ var rate = (rate_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/steps/src/steps.vue?vue&type=template&id=3c6b6dc0&
- var stepsvue_type_template_id_3c6b6dc0_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-steps",
- class: [
- !_vm.simple && "el-steps--" + _vm.direction,
- _vm.simple && "el-steps--simple"
- ]
- },
- [_vm._t("default")],
- 2
- )
- }
- var stepsvue_type_template_id_3c6b6dc0_staticRenderFns = []
- stepsvue_type_template_id_3c6b6dc0_render._withStripped = true
- // CONCATENATED MODULE: ./packages/steps/src/steps.vue?vue&type=template&id=3c6b6dc0&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/steps/src/steps.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var stepsvue_type_script_lang_js_ = ({
- name: 'ElSteps',
- mixins: [migrating_default.a],
- props: {
- space: [Number, String],
- active: Number,
- direction: {
- type: String,
- default: 'horizontal'
- },
- alignCenter: Boolean,
- simple: Boolean,
- finishStatus: {
- type: String,
- default: 'finish'
- },
- processStatus: {
- type: String,
- default: 'process'
- }
- },
- data: function data() {
- return {
- steps: [],
- stepOffset: 0
- };
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'center': 'center is removed.'
- }
- };
- }
- },
- watch: {
- active: function active(newVal, oldVal) {
- this.$emit('change', newVal, oldVal);
- },
- steps: function steps(_steps) {
- _steps.forEach(function (child, index) {
- child.index = index;
- });
- }
- }
- });
- // CONCATENATED MODULE: ./packages/steps/src/steps.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_stepsvue_type_script_lang_js_ = (stepsvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/steps/src/steps.vue
- /* normalize component */
- var steps_component = normalizeComponent(
- src_stepsvue_type_script_lang_js_,
- stepsvue_type_template_id_3c6b6dc0_render,
- stepsvue_type_template_id_3c6b6dc0_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var steps_api; }
- steps_component.options.__file = "packages/steps/src/steps.vue"
- /* harmony default export */ var steps = (steps_component.exports);
- // CONCATENATED MODULE: ./packages/steps/index.js
- /* istanbul ignore next */
- steps.install = function (Vue) {
- Vue.component(steps.name, steps);
- };
- /* harmony default export */ var packages_steps = (steps);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/steps/src/step.vue?vue&type=template&id=f414a87a&
- var stepvue_type_template_id_f414a87a_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-step",
- class: [
- !_vm.isSimple && "is-" + _vm.$parent.direction,
- _vm.isSimple && "is-simple",
- _vm.isLast && !_vm.space && !_vm.isCenter && "is-flex",
- _vm.isCenter && !_vm.isVertical && !_vm.isSimple && "is-center"
- ],
- style: _vm.style
- },
- [
- _c(
- "div",
- { staticClass: "el-step__head", class: "is-" + _vm.currentStatus },
- [
- _c(
- "div",
- {
- staticClass: "el-step__line",
- style: _vm.isLast
- ? ""
- : { marginRight: _vm.$parent.stepOffset + "px" }
- },
- [
- _c("i", {
- staticClass: "el-step__line-inner",
- style: _vm.lineStyle
- })
- ]
- ),
- _c(
- "div",
- {
- staticClass: "el-step__icon",
- class: "is-" + (_vm.icon ? "icon" : "text")
- },
- [
- _vm.currentStatus !== "success" && _vm.currentStatus !== "error"
- ? _vm._t("icon", [
- _vm.icon
- ? _c("i", {
- staticClass: "el-step__icon-inner",
- class: [_vm.icon]
- })
- : _vm._e(),
- !_vm.icon && !_vm.isSimple
- ? _c("div", { staticClass: "el-step__icon-inner" }, [
- _vm._v(_vm._s(_vm.index + 1))
- ])
- : _vm._e()
- ])
- : _c("i", {
- staticClass: "el-step__icon-inner is-status",
- class: [
- "el-icon-" +
- (_vm.currentStatus === "success" ? "check" : "close")
- ]
- })
- ],
- 2
- )
- ]
- ),
- _c("div", { staticClass: "el-step__main" }, [
- _c(
- "div",
- {
- ref: "title",
- staticClass: "el-step__title",
- class: ["is-" + _vm.currentStatus]
- },
- [_vm._t("title", [_vm._v(_vm._s(_vm.title))])],
- 2
- ),
- _vm.isSimple
- ? _c("div", { staticClass: "el-step__arrow" })
- : _c(
- "div",
- {
- staticClass: "el-step__description",
- class: ["is-" + _vm.currentStatus]
- },
- [_vm._t("description", [_vm._v(_vm._s(_vm.description))])],
- 2
- )
- ])
- ]
- )
- }
- var stepvue_type_template_id_f414a87a_staticRenderFns = []
- stepvue_type_template_id_f414a87a_render._withStripped = true
- // CONCATENATED MODULE: ./packages/steps/src/step.vue?vue&type=template&id=f414a87a&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/steps/src/step.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var stepvue_type_script_lang_js_ = ({
- name: 'ElStep',
- props: {
- title: String,
- icon: String,
- description: String,
- status: String
- },
- data: function data() {
- return {
- index: -1,
- lineStyle: {},
- internalStatus: ''
- };
- },
- beforeCreate: function beforeCreate() {
- this.$parent.steps.push(this);
- },
- beforeDestroy: function beforeDestroy() {
- var steps = this.$parent.steps;
- var index = steps.indexOf(this);
- if (index >= 0) {
- steps.splice(index, 1);
- }
- },
- computed: {
- currentStatus: function currentStatus() {
- return this.status || this.internalStatus;
- },
- prevStatus: function prevStatus() {
- var prevStep = this.$parent.steps[this.index - 1];
- return prevStep ? prevStep.currentStatus : 'wait';
- },
- isCenter: function isCenter() {
- return this.$parent.alignCenter;
- },
- isVertical: function isVertical() {
- return this.$parent.direction === 'vertical';
- },
- isSimple: function isSimple() {
- return this.$parent.simple;
- },
- isLast: function isLast() {
- var parent = this.$parent;
- return parent.steps[parent.steps.length - 1] === this;
- },
- stepsCount: function stepsCount() {
- return this.$parent.steps.length;
- },
- space: function space() {
- var isSimple = this.isSimple,
- space = this.$parent.space;
- return isSimple ? '' : space;
- },
- style: function style() {
- var style = {};
- var parent = this.$parent;
- var len = parent.steps.length;
- var space = typeof this.space === 'number' ? this.space + 'px' : this.space ? this.space : 100 / (len - (this.isCenter ? 0 : 1)) + '%';
- style.flexBasis = space;
- if (this.isVertical) return style;
- if (this.isLast) {
- style.maxWidth = 100 / this.stepsCount + '%';
- } else {
- style.marginRight = -this.$parent.stepOffset + 'px';
- }
- return style;
- }
- },
- methods: {
- updateStatus: function updateStatus(val) {
- var prevChild = this.$parent.$children[this.index - 1];
- if (val > this.index) {
- this.internalStatus = this.$parent.finishStatus;
- } else if (val === this.index && this.prevStatus !== 'error') {
- this.internalStatus = this.$parent.processStatus;
- } else {
- this.internalStatus = 'wait';
- }
- if (prevChild) prevChild.calcProgress(this.internalStatus);
- },
- calcProgress: function calcProgress(status) {
- var step = 100;
- var style = {};
- style.transitionDelay = 150 * this.index + 'ms';
- if (status === this.$parent.processStatus) {
- step = this.currentStatus !== 'error' ? 0 : 0;
- } else if (status === 'wait') {
- step = 0;
- style.transitionDelay = -150 * this.index + 'ms';
- }
- style.borderWidth = step && !this.isSimple ? '1px' : 0;
- this.$parent.direction === 'vertical' ? style.height = step + '%' : style.width = step + '%';
- this.lineStyle = style;
- }
- },
- mounted: function mounted() {
- var _this = this;
- var unwatch = this.$watch('index', function (val) {
- _this.$watch('$parent.active', _this.updateStatus, { immediate: true });
- _this.$watch('$parent.processStatus', function () {
- var activeIndex = _this.$parent.active;
- _this.updateStatus(activeIndex);
- }, { immediate: true });
- unwatch();
- });
- }
- });
- // CONCATENATED MODULE: ./packages/steps/src/step.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_stepvue_type_script_lang_js_ = (stepvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/steps/src/step.vue
- /* normalize component */
- var step_component = normalizeComponent(
- src_stepvue_type_script_lang_js_,
- stepvue_type_template_id_f414a87a_render,
- stepvue_type_template_id_f414a87a_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var step_api; }
- step_component.options.__file = "packages/steps/src/step.vue"
- /* harmony default export */ var step = (step_component.exports);
- // CONCATENATED MODULE: ./packages/step/index.js
- /* istanbul ignore next */
- step.install = function (Vue) {
- Vue.component(step.name, step);
- };
- /* harmony default export */ var packages_step = (step);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/main.vue?vue&type=template&id=5d5d1482&
- var mainvue_type_template_id_5d5d1482_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- class: _vm.carouselClasses,
- on: {
- mouseenter: function($event) {
- $event.stopPropagation()
- return _vm.handleMouseEnter($event)
- },
- mouseleave: function($event) {
- $event.stopPropagation()
- return _vm.handleMouseLeave($event)
- }
- }
- },
- [
- _c(
- "div",
- {
- staticClass: "el-carousel__container",
- style: { height: _vm.height }
- },
- [
- _vm.arrowDisplay
- ? _c("transition", { attrs: { name: "carousel-arrow-left" } }, [
- _c(
- "button",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value:
- (_vm.arrow === "always" || _vm.hover) &&
- (_vm.loop || _vm.activeIndex > 0),
- expression:
- "(arrow === 'always' || hover) && (loop || activeIndex > 0)"
- }
- ],
- staticClass: "el-carousel__arrow el-carousel__arrow--left",
- attrs: { type: "button" },
- on: {
- mouseenter: function($event) {
- _vm.handleButtonEnter("left")
- },
- mouseleave: _vm.handleButtonLeave,
- click: function($event) {
- $event.stopPropagation()
- _vm.throttledArrowClick(_vm.activeIndex - 1)
- }
- }
- },
- [_c("i", { staticClass: "el-icon-arrow-left" })]
- )
- ])
- : _vm._e(),
- _vm.arrowDisplay
- ? _c("transition", { attrs: { name: "carousel-arrow-right" } }, [
- _c(
- "button",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value:
- (_vm.arrow === "always" || _vm.hover) &&
- (_vm.loop || _vm.activeIndex < _vm.items.length - 1),
- expression:
- "(arrow === 'always' || hover) && (loop || activeIndex < items.length - 1)"
- }
- ],
- staticClass: "el-carousel__arrow el-carousel__arrow--right",
- attrs: { type: "button" },
- on: {
- mouseenter: function($event) {
- _vm.handleButtonEnter("right")
- },
- mouseleave: _vm.handleButtonLeave,
- click: function($event) {
- $event.stopPropagation()
- _vm.throttledArrowClick(_vm.activeIndex + 1)
- }
- }
- },
- [_c("i", { staticClass: "el-icon-arrow-right" })]
- )
- ])
- : _vm._e(),
- _vm._t("default")
- ],
- 2
- ),
- _vm.indicatorPosition !== "none"
- ? _c(
- "ul",
- { class: _vm.indicatorsClasses },
- _vm._l(_vm.items, function(item, index) {
- return _c(
- "li",
- {
- key: index,
- class: [
- "el-carousel__indicator",
- "el-carousel__indicator--" + _vm.direction,
- { "is-active": index === _vm.activeIndex }
- ],
- on: {
- mouseenter: function($event) {
- _vm.throttledIndicatorHover(index)
- },
- click: function($event) {
- $event.stopPropagation()
- _vm.handleIndicatorClick(index)
- }
- }
- },
- [
- _c("button", { staticClass: "el-carousel__button" }, [
- _vm.hasLabel
- ? _c("span", [_vm._v(_vm._s(item.label))])
- : _vm._e()
- ])
- ]
- )
- }),
- 0
- )
- : _vm._e()
- ]
- )
- }
- var mainvue_type_template_id_5d5d1482_staticRenderFns = []
- mainvue_type_template_id_5d5d1482_render._withStripped = true
- // CONCATENATED MODULE: ./packages/carousel/src/main.vue?vue&type=template&id=5d5d1482&
- // EXTERNAL MODULE: external "throttle-debounce/throttle"
- var throttle_ = __webpack_require__(27);
- var throttle_default = /*#__PURE__*/__webpack_require__.n(throttle_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var carousel_src_mainvue_type_script_lang_js_ = ({
- name: 'ElCarousel',
- props: {
- initialIndex: {
- type: Number,
- default: 0
- },
- height: String,
- trigger: {
- type: String,
- default: 'hover'
- },
- autoplay: {
- type: Boolean,
- default: true
- },
- interval: {
- type: Number,
- default: 3000
- },
- indicatorPosition: String,
- indicator: {
- type: Boolean,
- default: true
- },
- arrow: {
- type: String,
- default: 'hover'
- },
- type: String,
- loop: {
- type: Boolean,
- default: true
- },
- direction: {
- type: String,
- default: 'horizontal',
- validator: function validator(val) {
- return ['horizontal', 'vertical'].indexOf(val) !== -1;
- }
- }
- },
- data: function data() {
- return {
- items: [],
- activeIndex: -1,
- containerWidth: 0,
- timer: null,
- hover: false
- };
- },
- computed: {
- arrowDisplay: function arrowDisplay() {
- return this.arrow !== 'never' && this.direction !== 'vertical';
- },
- hasLabel: function hasLabel() {
- return this.items.some(function (item) {
- return item.label.toString().length > 0;
- });
- },
- carouselClasses: function carouselClasses() {
- var classes = ['el-carousel', 'el-carousel--' + this.direction];
- if (this.type === 'card') {
- classes.push('el-carousel--card');
- }
- return classes;
- },
- indicatorsClasses: function indicatorsClasses() {
- var classes = ['el-carousel__indicators', 'el-carousel__indicators--' + this.direction];
- if (this.hasLabel) {
- classes.push('el-carousel__indicators--labels');
- }
- if (this.indicatorPosition === 'outside' || this.type === 'card') {
- classes.push('el-carousel__indicators--outside');
- }
- return classes;
- }
- },
- watch: {
- items: function items(val) {
- if (val.length > 0) this.setActiveItem(this.initialIndex);
- },
- activeIndex: function activeIndex(val, oldVal) {
- this.resetItemPosition(oldVal);
- this.$emit('change', val, oldVal);
- },
- autoplay: function autoplay(val) {
- val ? this.startTimer() : this.pauseTimer();
- },
- loop: function loop() {
- this.setActiveItem(this.activeIndex);
- }
- },
- methods: {
- handleMouseEnter: function handleMouseEnter() {
- this.hover = true;
- this.pauseTimer();
- },
- handleMouseLeave: function handleMouseLeave() {
- this.hover = false;
- this.startTimer();
- },
- itemInStage: function itemInStage(item, index) {
- var length = this.items.length;
- if (index === length - 1 && item.inStage && this.items[0].active || item.inStage && this.items[index + 1] && this.items[index + 1].active) {
- return 'left';
- } else if (index === 0 && item.inStage && this.items[length - 1].active || item.inStage && this.items[index - 1] && this.items[index - 1].active) {
- return 'right';
- }
- return false;
- },
- handleButtonEnter: function handleButtonEnter(arrow) {
- var _this = this;
- if (this.direction === 'vertical') return;
- this.items.forEach(function (item, index) {
- if (arrow === _this.itemInStage(item, index)) {
- item.hover = true;
- }
- });
- },
- handleButtonLeave: function handleButtonLeave() {
- if (this.direction === 'vertical') return;
- this.items.forEach(function (item) {
- item.hover = false;
- });
- },
- updateItems: function updateItems() {
- this.items = this.$children.filter(function (child) {
- return child.$options.name === 'ElCarouselItem';
- });
- },
- resetItemPosition: function resetItemPosition(oldIndex) {
- var _this2 = this;
- this.items.forEach(function (item, index) {
- item.translateItem(index, _this2.activeIndex, oldIndex);
- });
- },
- playSlides: function playSlides() {
- if (this.activeIndex < this.items.length - 1) {
- this.activeIndex++;
- } else if (this.loop) {
- this.activeIndex = 0;
- }
- },
- pauseTimer: function pauseTimer() {
- if (this.timer) {
- clearInterval(this.timer);
- this.timer = null;
- }
- },
- startTimer: function startTimer() {
- if (this.interval <= 0 || !this.autoplay || this.timer) return;
- this.timer = setInterval(this.playSlides, this.interval);
- },
- setActiveItem: function setActiveItem(index) {
- if (typeof index === 'string') {
- var filteredItems = this.items.filter(function (item) {
- return item.name === index;
- });
- if (filteredItems.length > 0) {
- index = this.items.indexOf(filteredItems[0]);
- }
- }
- index = Number(index);
- if (isNaN(index) || index !== Math.floor(index)) {
- console.warn('[Element Warn][Carousel]index must be an integer.');
- return;
- }
- var length = this.items.length;
- var oldIndex = this.activeIndex;
- if (index < 0) {
- this.activeIndex = this.loop ? length - 1 : 0;
- } else if (index >= length) {
- this.activeIndex = this.loop ? 0 : length - 1;
- } else {
- this.activeIndex = index;
- }
- if (oldIndex === this.activeIndex) {
- this.resetItemPosition(oldIndex);
- }
- },
- prev: function prev() {
- this.setActiveItem(this.activeIndex - 1);
- },
- next: function next() {
- this.setActiveItem(this.activeIndex + 1);
- },
- handleIndicatorClick: function handleIndicatorClick(index) {
- this.activeIndex = index;
- },
- handleIndicatorHover: function handleIndicatorHover(index) {
- if (this.trigger === 'hover' && index !== this.activeIndex) {
- this.activeIndex = index;
- }
- }
- },
- created: function created() {
- var _this3 = this;
- this.throttledArrowClick = throttle_default()(300, true, function (index) {
- _this3.setActiveItem(index);
- });
- this.throttledIndicatorHover = throttle_default()(300, function (index) {
- _this3.handleIndicatorHover(index);
- });
- },
- mounted: function mounted() {
- var _this4 = this;
- this.updateItems();
- this.$nextTick(function () {
- Object(resize_event_["addResizeListener"])(_this4.$el, _this4.resetItemPosition);
- if (_this4.initialIndex < _this4.items.length && _this4.initialIndex >= 0) {
- _this4.activeIndex = _this4.initialIndex;
- }
- _this4.startTimer();
- });
- },
- beforeDestroy: function beforeDestroy() {
- if (this.$el) Object(resize_event_["removeResizeListener"])(this.$el, this.resetItemPosition);
- this.pauseTimer();
- }
- });
- // CONCATENATED MODULE: ./packages/carousel/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_carousel_src_mainvue_type_script_lang_js_ = (carousel_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/carousel/src/main.vue
- /* normalize component */
- var carousel_src_main_component = normalizeComponent(
- packages_carousel_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_5d5d1482_render,
- mainvue_type_template_id_5d5d1482_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var carousel_src_main_api; }
- carousel_src_main_component.options.__file = "packages/carousel/src/main.vue"
- /* harmony default export */ var carousel_src_main = (carousel_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/carousel/index.js
- /* istanbul ignore next */
- carousel_src_main.install = function (Vue) {
- Vue.component(carousel_src_main.name, carousel_src_main);
- };
- /* harmony default export */ var carousel = (carousel_src_main);
- // CONCATENATED MODULE: ./packages/scrollbar/src/util.js
- var BAR_MAP = {
- vertical: {
- offset: 'offsetHeight',
- scroll: 'scrollTop',
- scrollSize: 'scrollHeight',
- size: 'height',
- key: 'vertical',
- axis: 'Y',
- client: 'clientY',
- direction: 'top'
- },
- horizontal: {
- offset: 'offsetWidth',
- scroll: 'scrollLeft',
- scrollSize: 'scrollWidth',
- size: 'width',
- key: 'horizontal',
- axis: 'X',
- client: 'clientX',
- direction: 'left'
- }
- };
- function renderThumbStyle(_ref) {
- var move = _ref.move,
- size = _ref.size,
- bar = _ref.bar;
- var style = {};
- var translate = 'translate' + bar.axis + '(' + move + '%)';
- style[bar.size] = size;
- style.transform = translate;
- style.msTransform = translate;
- style.webkitTransform = translate;
- return style;
- };
- // CONCATENATED MODULE: ./packages/scrollbar/src/bar.js
- /* istanbul ignore next */
- /* harmony default export */ var src_bar = ({
- name: 'Bar',
- props: {
- vertical: Boolean,
- size: String,
- move: Number
- },
- computed: {
- bar: function bar() {
- return BAR_MAP[this.vertical ? 'vertical' : 'horizontal'];
- },
- wrap: function wrap() {
- return this.$parent.wrap;
- }
- },
- render: function render(h) {
- var size = this.size,
- move = this.move,
- bar = this.bar;
- return h(
- 'div',
- {
- 'class': ['el-scrollbar__bar', 'is-' + bar.key],
- on: {
- 'mousedown': this.clickTrackHandler
- }
- },
- [h('div', {
- ref: 'thumb',
- 'class': 'el-scrollbar__thumb',
- on: {
- 'mousedown': this.clickThumbHandler
- },
- style: renderThumbStyle({ size: size, move: move, bar: bar }) })]
- );
- },
- methods: {
- clickThumbHandler: function clickThumbHandler(e) {
- // prevent click event of right button
- if (e.ctrlKey || e.button === 2) {
- return;
- }
- this.startDrag(e);
- this[this.bar.axis] = e.currentTarget[this.bar.offset] - (e[this.bar.client] - e.currentTarget.getBoundingClientRect()[this.bar.direction]);
- },
- clickTrackHandler: function clickTrackHandler(e) {
- var offset = Math.abs(e.target.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]);
- var thumbHalf = this.$refs.thumb[this.bar.offset] / 2;
- var thumbPositionPercentage = (offset - thumbHalf) * 100 / this.$el[this.bar.offset];
- this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
- },
- startDrag: function startDrag(e) {
- e.stopImmediatePropagation();
- this.cursorDown = true;
- Object(dom_["on"])(document, 'mousemove', this.mouseMoveDocumentHandler);
- Object(dom_["on"])(document, 'mouseup', this.mouseUpDocumentHandler);
- document.onselectstart = function () {
- return false;
- };
- },
- mouseMoveDocumentHandler: function mouseMoveDocumentHandler(e) {
- if (this.cursorDown === false) return;
- var prevPage = this[this.bar.axis];
- if (!prevPage) return;
- var offset = (this.$el.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]) * -1;
- var thumbClickPosition = this.$refs.thumb[this.bar.offset] - prevPage;
- var thumbPositionPercentage = (offset - thumbClickPosition) * 100 / this.$el[this.bar.offset];
- this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
- },
- mouseUpDocumentHandler: function mouseUpDocumentHandler(e) {
- this.cursorDown = false;
- this[this.bar.axis] = 0;
- Object(dom_["off"])(document, 'mousemove', this.mouseMoveDocumentHandler);
- document.onselectstart = null;
- }
- },
- destroyed: function destroyed() {
- Object(dom_["off"])(document, 'mouseup', this.mouseUpDocumentHandler);
- }
- });
- // CONCATENATED MODULE: ./packages/scrollbar/src/main.js
- // reference https://github.com/noeldelgado/gemini-scrollbar/blob/master/index.js
- /* istanbul ignore next */
- /* harmony default export */ var scrollbar_src_main = ({
- name: 'ElScrollbar',
- components: { Bar: src_bar },
- props: {
- native: Boolean,
- wrapStyle: {},
- wrapClass: {},
- viewClass: {},
- viewStyle: {},
- noresize: Boolean, // 如果 container 尺寸不会发生变化,最好设置它可以优化性能
- tag: {
- type: String,
- default: 'div'
- }
- },
- data: function data() {
- return {
- sizeWidth: '0',
- sizeHeight: '0',
- moveX: 0,
- moveY: 0
- };
- },
- computed: {
- wrap: function wrap() {
- return this.$refs.wrap;
- }
- },
- render: function render(h) {
- var gutter = scrollbar_width_default()();
- var style = this.wrapStyle;
- if (gutter) {
- var gutterWith = '-' + gutter + 'px';
- var gutterStyle = 'margin-bottom: ' + gutterWith + '; margin-right: ' + gutterWith + ';';
- if (Array.isArray(this.wrapStyle)) {
- style = Object(util_["toObject"])(this.wrapStyle);
- style.marginRight = style.marginBottom = gutterWith;
- } else if (typeof this.wrapStyle === 'string') {
- style += gutterStyle;
- } else {
- style = gutterStyle;
- }
- }
- var view = h(this.tag, {
- class: ['el-scrollbar__view', this.viewClass],
- style: this.viewStyle,
- ref: 'resize'
- }, this.$slots.default);
- var wrap = h(
- 'div',
- {
- ref: 'wrap',
- style: style,
- on: {
- 'scroll': this.handleScroll
- },
- 'class': [this.wrapClass, 'el-scrollbar__wrap', gutter ? '' : 'el-scrollbar__wrap--hidden-default'] },
- [[view]]
- );
- var nodes = void 0;
- if (!this.native) {
- nodes = [wrap, h(src_bar, {
- attrs: {
- move: this.moveX,
- size: this.sizeWidth }
- }), h(src_bar, {
- attrs: {
- vertical: true,
- move: this.moveY,
- size: this.sizeHeight }
- })];
- } else {
- nodes = [h(
- 'div',
- {
- ref: 'wrap',
- 'class': [this.wrapClass, 'el-scrollbar__wrap'],
- style: style },
- [[view]]
- )];
- }
- return h('div', { class: 'el-scrollbar' }, nodes);
- },
- methods: {
- handleScroll: function handleScroll() {
- var wrap = this.wrap;
- this.moveY = wrap.scrollTop * 100 / wrap.clientHeight;
- this.moveX = wrap.scrollLeft * 100 / wrap.clientWidth;
- },
- update: function update() {
- var heightPercentage = void 0,
- widthPercentage = void 0;
- var wrap = this.wrap;
- if (!wrap) return;
- heightPercentage = wrap.clientHeight * 100 / wrap.scrollHeight;
- widthPercentage = wrap.clientWidth * 100 / wrap.scrollWidth;
- this.sizeHeight = heightPercentage < 100 ? heightPercentage + '%' : '';
- this.sizeWidth = widthPercentage < 100 ? widthPercentage + '%' : '';
- }
- },
- mounted: function mounted() {
- if (this.native) return;
- this.$nextTick(this.update);
- !this.noresize && Object(resize_event_["addResizeListener"])(this.$refs.resize, this.update);
- },
- beforeDestroy: function beforeDestroy() {
- if (this.native) return;
- !this.noresize && Object(resize_event_["removeResizeListener"])(this.$refs.resize, this.update);
- }
- });
- // CONCATENATED MODULE: ./packages/scrollbar/index.js
- /* istanbul ignore next */
- scrollbar_src_main.install = function (Vue) {
- Vue.component(scrollbar_src_main.name, scrollbar_src_main);
- };
- /* harmony default export */ var scrollbar = (scrollbar_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/item.vue?vue&type=template&id=1801ae19&
- var itemvue_type_template_id_1801ae19_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.ready,
- expression: "ready"
- }
- ],
- staticClass: "el-carousel__item",
- class: {
- "is-active": _vm.active,
- "el-carousel__item--card": _vm.$parent.type === "card",
- "is-in-stage": _vm.inStage,
- "is-hover": _vm.hover,
- "is-animating": _vm.animating
- },
- style: _vm.itemStyle,
- on: { click: _vm.handleItemClick }
- },
- [
- _vm.$parent.type === "card"
- ? _c("div", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: !_vm.active,
- expression: "!active"
- }
- ],
- staticClass: "el-carousel__mask"
- })
- : _vm._e(),
- _vm._t("default")
- ],
- 2
- )
- }
- var itemvue_type_template_id_1801ae19_staticRenderFns = []
- itemvue_type_template_id_1801ae19_render._withStripped = true
- // CONCATENATED MODULE: ./packages/carousel/src/item.vue?vue&type=template&id=1801ae19&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var CARD_SCALE = 0.83;
- /* harmony default export */ var itemvue_type_script_lang_js_ = ({
- name: 'ElCarouselItem',
- props: {
- name: String,
- label: {
- type: [String, Number],
- default: ''
- }
- },
- data: function data() {
- return {
- hover: false,
- translate: 0,
- scale: 1,
- active: false,
- ready: false,
- inStage: false,
- animating: false
- };
- },
- methods: {
- processIndex: function processIndex(index, activeIndex, length) {
- if (activeIndex === 0 && index === length - 1) {
- return -1;
- } else if (activeIndex === length - 1 && index === 0) {
- return length;
- } else if (index < activeIndex - 1 && activeIndex - index >= length / 2) {
- return length + 1;
- } else if (index > activeIndex + 1 && index - activeIndex >= length / 2) {
- return -2;
- }
- return index;
- },
- calcCardTranslate: function calcCardTranslate(index, activeIndex) {
- var parentWidth = this.$parent.$el.offsetWidth;
- if (this.inStage) {
- return parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1) / 4;
- } else if (index < activeIndex) {
- return -(1 + CARD_SCALE) * parentWidth / 4;
- } else {
- return (3 + CARD_SCALE) * parentWidth / 4;
- }
- },
- calcTranslate: function calcTranslate(index, activeIndex, isVertical) {
- var distance = this.$parent.$el[isVertical ? 'offsetHeight' : 'offsetWidth'];
- return distance * (index - activeIndex);
- },
- translateItem: function translateItem(index, activeIndex, oldIndex) {
- var parentType = this.$parent.type;
- var parentDirection = this.parentDirection;
- var length = this.$parent.items.length;
- if (parentType !== 'card' && oldIndex !== undefined) {
- this.animating = index === activeIndex || index === oldIndex;
- }
- if (index !== activeIndex && length > 2 && this.$parent.loop) {
- index = this.processIndex(index, activeIndex, length);
- }
- if (parentType === 'card') {
- if (parentDirection === 'vertical') {
- console.warn('[Element Warn][Carousel]vertical directionis not supported in card mode');
- }
- this.inStage = Math.round(Math.abs(index - activeIndex)) <= 1;
- this.active = index === activeIndex;
- this.translate = this.calcCardTranslate(index, activeIndex);
- this.scale = this.active ? 1 : CARD_SCALE;
- } else {
- this.active = index === activeIndex;
- var isVertical = parentDirection === 'vertical';
- this.translate = this.calcTranslate(index, activeIndex, isVertical);
- }
- this.ready = true;
- },
- handleItemClick: function handleItemClick() {
- var parent = this.$parent;
- if (parent && parent.type === 'card') {
- var index = parent.items.indexOf(this);
- parent.setActiveItem(index);
- }
- }
- },
- computed: {
- parentDirection: function parentDirection() {
- return this.$parent.direction;
- },
- itemStyle: function itemStyle() {
- var translateType = this.parentDirection === 'vertical' ? 'translateY' : 'translateX';
- var value = translateType + '(' + this.translate + 'px) scale(' + this.scale + ')';
- var style = {
- transform: value
- };
- return Object(util_["autoprefixer"])(style);
- }
- },
- created: function created() {
- this.$parent && this.$parent.updateItems();
- },
- destroyed: function destroyed() {
- this.$parent && this.$parent.updateItems();
- }
- });
- // CONCATENATED MODULE: ./packages/carousel/src/item.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_itemvue_type_script_lang_js_ = (itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/carousel/src/item.vue
- /* normalize component */
- var item_component = normalizeComponent(
- src_itemvue_type_script_lang_js_,
- itemvue_type_template_id_1801ae19_render,
- itemvue_type_template_id_1801ae19_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var item_api; }
- item_component.options.__file = "packages/carousel/src/item.vue"
- /* harmony default export */ var src_item = (item_component.exports);
- // CONCATENATED MODULE: ./packages/carousel-item/index.js
- /* istanbul ignore next */
- src_item.install = function (Vue) {
- Vue.component(src_item.name, src_item);
- };
- /* harmony default export */ var carousel_item = (src_item);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse.vue?vue&type=template&id=461d57f4&
- var collapsevue_type_template_id_461d57f4_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-collapse",
- attrs: { role: "tablist", "aria-multiselectable": "true" }
- },
- [_vm._t("default")],
- 2
- )
- }
- var collapsevue_type_template_id_461d57f4_staticRenderFns = []
- collapsevue_type_template_id_461d57f4_render._withStripped = true
- // CONCATENATED MODULE: ./packages/collapse/src/collapse.vue?vue&type=template&id=461d57f4&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- /* harmony default export */ var collapsevue_type_script_lang_js_ = ({
- name: 'ElCollapse',
- componentName: 'ElCollapse',
- props: {
- accordion: Boolean,
- value: {
- type: [Array, String, Number],
- default: function _default() {
- return [];
- }
- }
- },
- data: function data() {
- return {
- activeNames: [].concat(this.value)
- };
- },
- provide: function provide() {
- return {
- collapse: this
- };
- },
- watch: {
- value: function value(_value) {
- this.activeNames = [].concat(_value);
- }
- },
- methods: {
- setActiveNames: function setActiveNames(activeNames) {
- activeNames = [].concat(activeNames);
- var value = this.accordion ? activeNames[0] : activeNames;
- this.activeNames = activeNames;
- this.$emit('input', value);
- this.$emit('change', value);
- },
- handleItemClick: function handleItemClick(item) {
- if (this.accordion) {
- this.setActiveNames((this.activeNames[0] || this.activeNames[0] === 0) && this.activeNames[0] === item.name ? '' : item.name);
- } else {
- var activeNames = this.activeNames.slice(0);
- var index = activeNames.indexOf(item.name);
- if (index > -1) {
- activeNames.splice(index, 1);
- } else {
- activeNames.push(item.name);
- }
- this.setActiveNames(activeNames);
- }
- }
- },
- created: function created() {
- this.$on('item-click', this.handleItemClick);
- }
- });
- // CONCATENATED MODULE: ./packages/collapse/src/collapse.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_collapsevue_type_script_lang_js_ = (collapsevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/collapse/src/collapse.vue
- /* normalize component */
- var collapse_component = normalizeComponent(
- src_collapsevue_type_script_lang_js_,
- collapsevue_type_template_id_461d57f4_render,
- collapsevue_type_template_id_461d57f4_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var collapse_api; }
- collapse_component.options.__file = "packages/collapse/src/collapse.vue"
- /* harmony default export */ var collapse = (collapse_component.exports);
- // CONCATENATED MODULE: ./packages/collapse/index.js
- /* istanbul ignore next */
- collapse.install = function (Vue) {
- Vue.component(collapse.name, collapse);
- };
- /* harmony default export */ var packages_collapse = (collapse);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse-item.vue?vue&type=template&id=2d05faac&
- var collapse_itemvue_type_template_id_2d05faac_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-collapse-item",
- class: { "is-active": _vm.isActive, "is-disabled": _vm.disabled }
- },
- [
- _c(
- "div",
- {
- attrs: {
- role: "tab",
- "aria-expanded": _vm.isActive,
- "aria-controls": "el-collapse-content-" + _vm.id,
- "aria-describedby": "el-collapse-content-" + _vm.id
- }
- },
- [
- _c(
- "div",
- {
- staticClass: "el-collapse-item__header",
- class: {
- focusing: _vm.focusing,
- "is-active": _vm.isActive
- },
- attrs: {
- role: "button",
- id: "el-collapse-head-" + _vm.id,
- tabindex: _vm.disabled ? undefined : 0
- },
- on: {
- click: _vm.handleHeaderClick,
- keyup: function($event) {
- if (
- !("button" in $event) &&
- _vm._k($event.keyCode, "space", 32, $event.key, [
- " ",
- "Spacebar"
- ]) &&
- _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
- ) {
- return null
- }
- $event.stopPropagation()
- return _vm.handleEnterClick($event)
- },
- focus: _vm.handleFocus,
- blur: function($event) {
- _vm.focusing = false
- }
- }
- },
- [
- _vm._t("title", [_vm._v(_vm._s(_vm.title))]),
- _c("i", {
- staticClass: "el-collapse-item__arrow el-icon-arrow-right",
- class: { "is-active": _vm.isActive }
- })
- ],
- 2
- )
- ]
- ),
- _c("el-collapse-transition", [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.isActive,
- expression: "isActive"
- }
- ],
- staticClass: "el-collapse-item__wrap",
- attrs: {
- role: "tabpanel",
- "aria-hidden": !_vm.isActive,
- "aria-labelledby": "el-collapse-head-" + _vm.id,
- id: "el-collapse-content-" + _vm.id
- }
- },
- [
- _c(
- "div",
- { staticClass: "el-collapse-item__content" },
- [_vm._t("default")],
- 2
- )
- ]
- )
- ])
- ],
- 1
- )
- }
- var collapse_itemvue_type_template_id_2d05faac_staticRenderFns = []
- collapse_itemvue_type_template_id_2d05faac_render._withStripped = true
- // CONCATENATED MODULE: ./packages/collapse/src/collapse-item.vue?vue&type=template&id=2d05faac&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse-item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var collapse_itemvue_type_script_lang_js_ = ({
- name: 'ElCollapseItem',
- componentName: 'ElCollapseItem',
- mixins: [emitter_default.a],
- components: { ElCollapseTransition: collapse_transition_default.a },
- data: function data() {
- return {
- contentWrapStyle: {
- height: 'auto',
- display: 'block'
- },
- contentHeight: 0,
- focusing: false,
- isClick: false,
- id: Object(util_["generateId"])()
- };
- },
- inject: ['collapse'],
- props: {
- title: String,
- name: {
- type: [String, Number],
- default: function _default() {
- return this._uid;
- }
- },
- disabled: Boolean
- },
- computed: {
- isActive: function isActive() {
- return this.collapse.activeNames.indexOf(this.name) > -1;
- }
- },
- methods: {
- handleFocus: function handleFocus() {
- var _this = this;
- setTimeout(function () {
- if (!_this.isClick) {
- _this.focusing = true;
- } else {
- _this.isClick = false;
- }
- }, 50);
- },
- handleHeaderClick: function handleHeaderClick() {
- if (this.disabled) return;
- this.dispatch('ElCollapse', 'item-click', this);
- this.focusing = false;
- this.isClick = true;
- },
- handleEnterClick: function handleEnterClick() {
- this.dispatch('ElCollapse', 'item-click', this);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/collapse/src/collapse-item.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_collapse_itemvue_type_script_lang_js_ = (collapse_itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/collapse/src/collapse-item.vue
- /* normalize component */
- var collapse_item_component = normalizeComponent(
- src_collapse_itemvue_type_script_lang_js_,
- collapse_itemvue_type_template_id_2d05faac_render,
- collapse_itemvue_type_template_id_2d05faac_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var collapse_item_api; }
- collapse_item_component.options.__file = "packages/collapse/src/collapse-item.vue"
- /* harmony default export */ var collapse_item = (collapse_item_component.exports);
- // CONCATENATED MODULE: ./packages/collapse-item/index.js
- /* istanbul ignore next */
- collapse_item.install = function (Vue) {
- Vue.component(collapse_item.name, collapse_item);
- };
- /* harmony default export */ var packages_collapse_item = (collapse_item);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/main.vue?vue&type=template&id=2e869fa1&
- var mainvue_type_template_id_2e869fa1_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "span",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.handleClickoutside,
- expression: "handleClickoutside"
- }
- ],
- ref: "reference",
- staticClass: "el-cascader",
- class: [
- {
- "is-opened": _vm.menuVisible,
- "is-disabled": _vm.cascaderDisabled
- },
- _vm.cascaderSize ? "el-cascader--" + _vm.cascaderSize : ""
- ],
- on: {
- click: _vm.handleClick,
- mouseenter: function($event) {
- _vm.inputHover = true
- },
- focus: function($event) {
- _vm.inputHover = true
- },
- mouseleave: function($event) {
- _vm.inputHover = false
- },
- blur: function($event) {
- _vm.inputHover = false
- },
- keydown: _vm.handleKeydown
- }
- },
- [
- _c(
- "el-input",
- {
- ref: "input",
- class: { "is-focus": _vm.menuVisible },
- attrs: {
- readonly: _vm.readonly,
- placeholder: _vm.currentLabels.length ? undefined : _vm.placeholder,
- "validate-event": false,
- size: _vm.size,
- disabled: _vm.cascaderDisabled
- },
- on: {
- input: _vm.debouncedInputChange,
- focus: _vm.handleFocus,
- blur: _vm.handleBlur
- },
- nativeOn: {
- compositionstart: function($event) {
- return _vm.handleComposition($event)
- },
- compositionend: function($event) {
- return _vm.handleComposition($event)
- }
- },
- model: {
- value: _vm.inputValue,
- callback: function($$v) {
- _vm.inputValue = $$v
- },
- expression: "inputValue"
- }
- },
- [
- _c("template", { slot: "suffix" }, [
- _vm.clearable && _vm.inputHover && _vm.currentLabels.length
- ? _c("i", {
- key: "1",
- staticClass:
- "el-input__icon el-icon-circle-close el-cascader__clearIcon",
- on: { click: _vm.clearValue }
- })
- : _c("i", {
- key: "2",
- staticClass: "el-input__icon el-icon-arrow-down",
- class: { "is-reverse": _vm.menuVisible }
- })
- ])
- ],
- 2
- ),
- _c(
- "span",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.inputValue === "" && !_vm.isOnComposition,
- expression: "inputValue === '' && !isOnComposition"
- }
- ],
- staticClass: "el-cascader__label"
- },
- [
- _vm.showAllLevels
- ? [
- _vm._l(_vm.currentLabels, function(label, index) {
- return [
- _vm._v("\n " + _vm._s(label) + "\n "),
- index < _vm.currentLabels.length - 1
- ? _c("span", { key: index }, [
- _vm._v(" " + _vm._s(_vm.separator) + " ")
- ])
- : _vm._e()
- ]
- })
- ]
- : [
- _vm._v(
- "\n " +
- _vm._s(_vm.currentLabels[_vm.currentLabels.length - 1]) +
- "\n "
- )
- ]
- ],
- 2
- )
- ],
- 1
- )
- }
- var mainvue_type_template_id_2e869fa1_staticRenderFns = []
- mainvue_type_template_id_2e869fa1_render._withStripped = true
- // CONCATENATED MODULE: ./packages/cascader/src/main.vue?vue&type=template&id=2e869fa1&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/menu.vue?vue&type=script&lang=js&
- var copyArray = function copyArray(arr, props) {
- if (!arr || !Array.isArray(arr) || !props) return arr;
- var result = [];
- var configurableProps = ['__IS__FLAT__OPTIONS', 'label', 'value', 'disabled'];
- var childrenProp = props.children || 'children';
- arr.forEach(function (item) {
- var itemCopy = {};
- configurableProps.forEach(function (prop) {
- var name = props[prop];
- var value = item[name];
- if (value === undefined) {
- name = prop;
- value = item[name];
- }
- if (value !== undefined) itemCopy[name] = value;
- });
- if (Array.isArray(item[childrenProp])) {
- itemCopy[childrenProp] = copyArray(item[childrenProp], props);
- }
- result.push(itemCopy);
- });
- return result;
- };
- /* harmony default export */ var cascader_src_menuvue_type_script_lang_js_ = ({
- name: 'ElCascaderMenu',
- data: function data() {
- return {
- inputWidth: 0,
- options: [],
- props: {},
- visible: false,
- activeValue: [],
- value: [],
- expandTrigger: 'click',
- changeOnSelect: false,
- popperClass: '',
- hoverTimer: 0,
- clicking: false,
- id: Object(util_["generateId"])()
- };
- },
- watch: {
- visible: function visible(value) {
- if (value) {
- this.activeValue = this.value;
- }
- },
- value: {
- immediate: true,
- handler: function handler(value) {
- this.activeValue = value;
- }
- }
- },
- computed: {
- activeOptions: {
- get: function get() {
- var _this = this;
- var activeValue = this.activeValue;
- var configurableProps = ['label', 'value', 'children', 'disabled'];
- var formatOptions = function formatOptions(options) {
- options.forEach(function (option) {
- if (option.__IS__FLAT__OPTIONS) return;
- configurableProps.forEach(function (prop) {
- var value = option[_this.props[prop] || prop];
- if (value !== undefined) option[prop] = value;
- });
- if (Array.isArray(option.children)) {
- formatOptions(option.children);
- }
- });
- };
- var loadActiveOptions = function loadActiveOptions(options) {
- var activeOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
- var level = activeOptions.length;
- activeOptions[level] = options;
- var active = activeValue[level];
- if (Object(shared_["isDef"])(active)) {
- options = options.filter(function (option) {
- return option.value === active;
- })[0];
- if (options && options.children) {
- loadActiveOptions(options.children, activeOptions);
- }
- }
- return activeOptions;
- };
- var optionsCopy = copyArray(this.options, this.props);
- formatOptions(optionsCopy);
- return loadActiveOptions(optionsCopy);
- }
- }
- },
- methods: {
- select: function select(item, menuIndex) {
- if (item.__IS__FLAT__OPTIONS) {
- this.activeValue = item.value;
- } else if (menuIndex) {
- this.activeValue.splice(menuIndex, this.activeValue.length - 1, item.value);
- } else {
- this.activeValue = [item.value];
- }
- this.$emit('pick', this.activeValue.slice());
- },
- handleMenuLeave: function handleMenuLeave() {
- this.$emit('menuLeave');
- },
- activeItem: function activeItem(item, menuIndex) {
- var len = this.activeOptions.length;
- this.activeValue.splice(menuIndex, len, item.value);
- this.activeOptions.splice(menuIndex + 1, len, item.children);
- if (this.changeOnSelect) {
- this.$emit('pick', this.activeValue.slice(), false);
- } else {
- this.$emit('activeItemChange', this.activeValue);
- }
- },
- scrollMenu: function scrollMenu(menu) {
- scroll_into_view_default()(menu, menu.getElementsByClassName('is-active')[0]);
- },
- handleMenuEnter: function handleMenuEnter() {
- var _this2 = this;
- this.$nextTick(function () {
- return _this2.$refs.menus.forEach(function (menu) {
- return _this2.scrollMenu(menu);
- });
- });
- }
- },
- render: function render(h) {
- var _this3 = this;
- var activeValue = this.activeValue,
- activeOptions = this.activeOptions,
- visible = this.visible,
- expandTrigger = this.expandTrigger,
- popperClass = this.popperClass,
- hoverThreshold = this.hoverThreshold;
- var itemId = null;
- var itemIndex = 0;
- var hoverMenuRefs = {};
- var hoverMenuHandler = function hoverMenuHandler(e) {
- var activeMenu = hoverMenuRefs.activeMenu;
- if (!activeMenu) return;
- var offsetX = e.offsetX;
- var width = activeMenu.offsetWidth;
- var height = activeMenu.offsetHeight;
- if (e.target === hoverMenuRefs.activeItem) {
- clearTimeout(_this3.hoverTimer);
- var _hoverMenuRefs = hoverMenuRefs,
- activeItem = _hoverMenuRefs.activeItem;
- var offsetY_top = activeItem.offsetTop;
- var offsetY_Bottom = offsetY_top + activeItem.offsetHeight;
- hoverMenuRefs.hoverZone.innerHTML = '\n <path style="pointer-events: auto;" fill="transparent" d="M' + offsetX + ' ' + offsetY_top + ' L' + width + ' 0 V' + offsetY_top + ' Z" />\n <path style="pointer-events: auto;" fill="transparent" d="M' + offsetX + ' ' + offsetY_Bottom + ' L' + width + ' ' + height + ' V' + offsetY_Bottom + ' Z" />\n ';
- } else {
- if (!_this3.hoverTimer) {
- _this3.hoverTimer = setTimeout(function () {
- hoverMenuRefs.hoverZone.innerHTML = '';
- }, hoverThreshold);
- }
- }
- };
- var menus = this._l(activeOptions, function (menu, menuIndex) {
- var isFlat = false;
- var menuId = 'menu-' + _this3.id + '-' + menuIndex;
- var ownsId = 'menu-' + _this3.id + '-' + (menuIndex + 1);
- var items = _this3._l(menu, function (item) {
- var events = {
- on: {}
- };
- if (item.__IS__FLAT__OPTIONS) isFlat = true;
- if (!item.disabled) {
- // keydown up/down/left/right/enter
- events.on.keydown = function (ev) {
- var keyCode = ev.keyCode;
- if ([37, 38, 39, 40, 13, 9, 27].indexOf(keyCode) < 0) {
- return;
- }
- var currentEle = ev.target;
- var parentEle = _this3.$refs.menus[menuIndex];
- var menuItemList = parentEle.querySelectorAll("[tabindex='-1']");
- var currentIndex = Array.prototype.indexOf.call(menuItemList, currentEle); // 当前索引
- var nextIndex = void 0,
- nextMenu = void 0;
- if ([38, 40].indexOf(keyCode) > -1) {
- if (keyCode === 38) {
- // up键
- nextIndex = currentIndex !== 0 ? currentIndex - 1 : currentIndex;
- } else if (keyCode === 40) {
- // down
- nextIndex = currentIndex !== menuItemList.length - 1 ? currentIndex + 1 : currentIndex;
- }
- menuItemList[nextIndex].focus();
- } else if (keyCode === 37) {
- // left键
- if (menuIndex !== 0) {
- var previousMenu = _this3.$refs.menus[menuIndex - 1];
- previousMenu.querySelector('[aria-expanded=true]').focus();
- }
- } else if (keyCode === 39) {
- // right
- if (item.children) {
- // 有子menu 选择子menu的第一个menuitem
- nextMenu = _this3.$refs.menus[menuIndex + 1];
- nextMenu.querySelectorAll("[tabindex='-1']")[0].focus();
- }
- } else if (keyCode === 13) {
- if (!item.children) {
- var id = currentEle.getAttribute('id');
- parentEle.setAttribute('aria-activedescendant', id);
- _this3.select(item, menuIndex);
- _this3.$nextTick(function () {
- return _this3.scrollMenu(_this3.$refs.menus[menuIndex]);
- });
- }
- } else if (keyCode === 9 || keyCode === 27) {
- // esc tab
- _this3.$emit('closeInside');
- }
- };
- if (item.children) {
- var triggerEvent = {
- click: 'click',
- hover: 'mouseenter'
- }[expandTrigger];
- var triggerHandler = function triggerHandler() {
- if (_this3.visible) {
- _this3.activeItem(item, menuIndex);
- _this3.$nextTick(function () {
- // adjust self and next level
- _this3.scrollMenu(_this3.$refs.menus[menuIndex]);
- _this3.scrollMenu(_this3.$refs.menus[menuIndex + 1]);
- });
- }
- };
- events.on[triggerEvent] = triggerHandler;
- if (triggerEvent === 'mouseenter' && _this3.changeOnSelect) {
- events.on.click = function () {
- if (_this3.activeValue.indexOf(item.value) !== -1) {
- _this3.$emit('closeInside', true);
- }
- };
- }
- events.on['mousedown'] = function () {
- _this3.clicking = true;
- };
- events.on['focus'] = function () {
- // focus 选中
- if (_this3.clicking) {
- _this3.clicking = false;
- return;
- }
- triggerHandler();
- };
- } else {
- events.on.click = function () {
- _this3.select(item, menuIndex);
- _this3.$nextTick(function () {
- return _this3.scrollMenu(_this3.$refs.menus[menuIndex]);
- });
- };
- }
- }
- if (!item.disabled && !item.children) {
- // no children set id
- itemId = menuId + '-' + itemIndex;
- itemIndex++;
- }
- return h(
- 'li',
- external_babel_helper_vue_jsx_merge_props_default()([{
- 'class': {
- 'el-cascader-menu__item': true,
- 'el-cascader-menu__item--extensible': item.children,
- 'is-active': item.value === activeValue[menuIndex],
- 'is-disabled': item.disabled
- },
- ref: item.value === activeValue[menuIndex] ? 'activeItem' : null
- }, events, {
- attrs: {
- tabindex: item.disabled ? null : -1,
- role: 'menuitem',
- 'aria-haspopup': !!item.children,
- 'aria-expanded': item.value === activeValue[menuIndex],
- id: itemId,
- 'aria-owns': !item.children ? null : ownsId
- }
- }]),
- [h('span', [item.label])]
- );
- });
- var menuStyle = {};
- if (isFlat) {
- menuStyle.minWidth = _this3.inputWidth + 'px';
- }
- var isHoveredMenu = expandTrigger === 'hover' && activeValue.length - 1 === menuIndex;
- var hoverMenuEvent = {
- on: {}
- };
- if (isHoveredMenu) {
- hoverMenuEvent.on.mousemove = hoverMenuHandler;
- menuStyle.position = 'relative';
- }
- return h(
- 'ul',
- external_babel_helper_vue_jsx_merge_props_default()([{
- 'class': {
- 'el-cascader-menu': true,
- 'el-cascader-menu--flexible': isFlat
- }
- }, hoverMenuEvent, {
- style: menuStyle,
- refInFor: true,
- ref: 'menus',
- attrs: { role: 'menu',
- id: menuId
- }
- }]),
- [items, isHoveredMenu ? h('svg', {
- ref: 'hoverZone',
- style: {
- position: 'absolute',
- top: 0,
- height: '100%',
- width: '100%',
- left: 0,
- pointerEvents: 'none'
- }
- }) : null]
- );
- });
- if (expandTrigger === 'hover') {
- this.$nextTick(function () {
- var activeItem = _this3.$refs.activeItem;
- if (activeItem) {
- var activeMenu = activeItem.parentElement;
- var hoverZone = _this3.$refs.hoverZone;
- hoverMenuRefs = {
- activeMenu: activeMenu,
- activeItem: activeItem,
- hoverZone: hoverZone
- };
- } else {
- hoverMenuRefs = {};
- }
- });
- }
- return h(
- 'transition',
- {
- attrs: { name: 'el-zoom-in-top' },
- on: {
- 'before-enter': this.handleMenuEnter,
- 'after-leave': this.handleMenuLeave
- }
- },
- [h(
- 'div',
- {
- directives: [{
- name: 'show',
- value: visible
- }],
- 'class': ['el-cascader-menus el-popper', popperClass],
- ref: 'wrapper'
- },
- [h('div', {
- attrs: { 'x-arrow': true },
- 'class': 'popper__arrow' }), menus]
- )]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/cascader/src/menu.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_cascader_src_menuvue_type_script_lang_js_ = (cascader_src_menuvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/cascader/src/menu.vue
- var src_menu_render, src_menu_staticRenderFns
- /* normalize component */
- var src_menu_component = normalizeComponent(
- packages_cascader_src_menuvue_type_script_lang_js_,
- src_menu_render,
- src_menu_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_menu_api; }
- src_menu_component.options.__file = "packages/cascader/src/menu.vue"
- /* harmony default export */ var cascader_src_menu = (src_menu_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cascader/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var popperMixin = {
- props: {
- placement: {
- type: String,
- default: 'bottom-start'
- },
- appendToBody: vue_popper_default.a.props.appendToBody,
- arrowOffset: vue_popper_default.a.props.arrowOffset,
- offset: vue_popper_default.a.props.offset,
- boundariesPadding: vue_popper_default.a.props.boundariesPadding,
- popperOptions: vue_popper_default.a.props.popperOptions
- },
- methods: vue_popper_default.a.methods,
- data: vue_popper_default.a.data,
- beforeDestroy: vue_popper_default.a.beforeDestroy
- };
- /* harmony default export */ var cascader_src_mainvue_type_script_lang_js_ = ({
- name: 'ElCascader',
- directives: { Clickoutside: clickoutside_default.a },
- mixins: [popperMixin, emitter_default.a, locale_default.a],
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- components: {
- ElInput: input_default.a
- },
- props: {
- options: {
- type: Array,
- required: true
- },
- props: {
- type: Object,
- default: function _default() {
- return {
- children: 'children',
- label: 'label',
- value: 'value',
- disabled: 'disabled'
- };
- }
- },
- value: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- separator: {
- type: String,
- default: '/'
- },
- placeholder: {
- type: String,
- default: function _default() {
- return Object(lib_locale_["t"])('el.cascader.placeholder');
- }
- },
- disabled: Boolean,
- clearable: {
- type: Boolean,
- default: false
- },
- changeOnSelect: Boolean,
- popperClass: String,
- expandTrigger: {
- type: String,
- default: 'click'
- },
- filterable: Boolean,
- size: String,
- showAllLevels: {
- type: Boolean,
- default: true
- },
- debounce: {
- type: Number,
- default: 300
- },
- beforeFilter: {
- type: Function,
- default: function _default() {
- return function () {};
- }
- },
- hoverThreshold: {
- type: Number,
- default: 500
- }
- },
- data: function data() {
- return {
- currentValue: this.value || [],
- menu: null,
- debouncedInputChange: function debouncedInputChange() {},
- menuVisible: false,
- inputHover: false,
- inputValue: '',
- flatOptions: null,
- id: Object(util_["generateId"])(),
- needFocus: true,
- isOnComposition: false
- };
- },
- computed: {
- labelKey: function labelKey() {
- return this.props.label || 'label';
- },
- valueKey: function valueKey() {
- return this.props.value || 'value';
- },
- childrenKey: function childrenKey() {
- return this.props.children || 'children';
- },
- disabledKey: function disabledKey() {
- return this.props.disabled || 'disabled';
- },
- currentLabels: function currentLabels() {
- var _this = this;
- var options = this.options;
- var labels = [];
- this.currentValue.forEach(function (value) {
- var targetOption = options && options.filter(function (option) {
- return option[_this.valueKey] === value;
- })[0];
- if (targetOption) {
- labels.push(targetOption[_this.labelKey]);
- options = targetOption[_this.childrenKey];
- }
- });
- return labels;
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- cascaderSize: function cascaderSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- cascaderDisabled: function cascaderDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- },
- readonly: function readonly() {
- return !this.filterable || !Object(util_["isIE"])() && !Object(util_["isEdge"])() && !this.menuVisible;
- }
- },
- watch: {
- menuVisible: function menuVisible(value) {
- this.$refs.input.$refs.input.setAttribute('aria-expanded', value);
- value ? this.showMenu() : this.hideMenu();
- this.$emit('visible-change', value);
- },
- value: function value(_value) {
- this.currentValue = _value;
- },
- currentValue: function currentValue(value) {
- this.dispatch('ElFormItem', 'el.form.change', [value]);
- },
- options: {
- deep: true,
- handler: function handler(value) {
- if (!this.menu) {
- this.initMenu();
- }
- this.flatOptions = this.flattenOptions(this.options);
- this.menu.options = value;
- }
- }
- },
- methods: {
- initMenu: function initMenu() {
- this.menu = new external_vue_default.a(cascader_src_menu).$mount();
- this.menu.options = this.options;
- this.menu.props = this.props;
- this.menu.expandTrigger = this.expandTrigger;
- this.menu.changeOnSelect = this.changeOnSelect;
- this.menu.popperClass = this.popperClass;
- this.menu.hoverThreshold = this.hoverThreshold;
- this.popperElm = this.menu.$el;
- this.menu.$refs.menus[0].setAttribute('id', 'cascader-menu-' + this.id);
- this.menu.$on('pick', this.handlePick);
- this.menu.$on('activeItemChange', this.handleActiveItemChange);
- this.menu.$on('menuLeave', this.doDestroy);
- this.menu.$on('closeInside', this.handleClickoutside);
- },
- showMenu: function showMenu() {
- var _this2 = this;
- if (!this.menu) {
- this.initMenu();
- }
- this.menu.value = this.currentValue.slice(0);
- this.menu.visible = true;
- this.menu.options = this.options;
- this.$nextTick(function (_) {
- _this2.updatePopper();
- _this2.menu.inputWidth = _this2.$refs.input.$el.offsetWidth - 2;
- });
- },
- hideMenu: function hideMenu() {
- this.inputValue = '';
- this.menu.visible = false;
- if (this.needFocus) {
- this.$refs.input.focus();
- } else {
- this.needFocus = true;
- }
- },
- handleActiveItemChange: function handleActiveItemChange(value) {
- var _this3 = this;
- this.$nextTick(function (_) {
- _this3.updatePopper();
- });
- this.$emit('active-item-change', value);
- },
- handleKeydown: function handleKeydown(e) {
- var _this4 = this;
- var keyCode = e.keyCode;
- if (keyCode === 13) {
- this.handleClick();
- } else if (keyCode === 40) {
- // down
- this.menuVisible = true; // 打开
- setTimeout(function () {
- var firstMenu = _this4.popperElm.querySelectorAll('.el-cascader-menu')[0];
- firstMenu.querySelectorAll("[tabindex='-1']")[0].focus();
- });
- e.stopPropagation();
- e.preventDefault();
- } else if (keyCode === 27 || keyCode === 9) {
- // esc tab
- this.inputValue = '';
- if (this.menu) this.menu.visible = false;
- }
- },
- handlePick: function handlePick(value) {
- var close = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
- this.currentValue = value;
- this.$emit('input', value);
- this.$emit('change', value);
- if (close) {
- this.menuVisible = false;
- } else {
- this.$nextTick(this.updatePopper);
- }
- },
- handleInputChange: function handleInputChange(value) {
- var _this5 = this;
- if (!this.menuVisible) return;
- var flatOptions = this.flatOptions;
- if (!value) {
- this.menu.options = this.options;
- this.$nextTick(this.updatePopper);
- return;
- }
- var filteredFlatOptions = flatOptions.filter(function (optionsStack) {
- return optionsStack.some(function (option) {
- return new RegExp(Object(util_["escapeRegexpString"])(value), 'i').test(option[_this5.labelKey]);
- });
- });
- if (filteredFlatOptions.length > 0) {
- filteredFlatOptions = filteredFlatOptions.map(function (optionStack) {
- return {
- __IS__FLAT__OPTIONS: true,
- value: optionStack.map(function (item) {
- return item[_this5.valueKey];
- }),
- label: _this5.renderFilteredOptionLabel(value, optionStack),
- disabled: optionStack.some(function (item) {
- return item[_this5.disabledKey];
- })
- };
- });
- } else {
- filteredFlatOptions = [{
- __IS__FLAT__OPTIONS: true,
- label: this.t('el.cascader.noMatch'),
- value: '',
- disabled: true
- }];
- }
- this.menu.options = filteredFlatOptions;
- this.$nextTick(this.updatePopper);
- },
- renderFilteredOptionLabel: function renderFilteredOptionLabel(inputValue, optionsStack) {
- var _this6 = this;
- return optionsStack.map(function (option, index) {
- var label = option[_this6.labelKey];
- var keywordIndex = label.toLowerCase().indexOf(inputValue.toLowerCase());
- var labelPart = label.slice(keywordIndex, inputValue.length + keywordIndex);
- var node = keywordIndex > -1 ? _this6.highlightKeyword(label, labelPart) : label;
- return index === 0 ? node : [' ' + _this6.separator + ' ', node];
- });
- },
- highlightKeyword: function highlightKeyword(label, keyword) {
- var _this7 = this;
- var h = this._c;
- return label.split(keyword).map(function (node, index) {
- return index === 0 ? node : [h('span', { class: { 'el-cascader-menu__item__keyword': true } }, [_this7._v(keyword)]), node];
- });
- },
- flattenOptions: function flattenOptions(options) {
- var _this8 = this;
- var ancestor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
- var flatOptions = [];
- options.forEach(function (option) {
- var optionsStack = ancestor.concat(option);
- if (!option[_this8.childrenKey]) {
- flatOptions.push(optionsStack);
- } else {
- if (_this8.changeOnSelect) {
- flatOptions.push(optionsStack);
- }
- flatOptions = flatOptions.concat(_this8.flattenOptions(option[_this8.childrenKey], optionsStack));
- }
- });
- return flatOptions;
- },
- clearValue: function clearValue(ev) {
- ev.stopPropagation();
- this.handlePick([], true);
- },
- handleClickoutside: function handleClickoutside() {
- var pickFinished = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- if (this.menuVisible && !pickFinished) {
- this.needFocus = false;
- }
- this.menuVisible = false;
- },
- handleClick: function handleClick() {
- if (this.cascaderDisabled) return;
- this.$refs.input.focus();
- if (this.filterable) {
- this.menuVisible = true;
- return;
- }
- this.menuVisible = !this.menuVisible;
- },
- handleFocus: function handleFocus(event) {
- this.$emit('focus', event);
- },
- handleBlur: function handleBlur(event) {
- this.$emit('blur', event);
- },
- handleComposition: function handleComposition(event) {
- this.isOnComposition = event.type !== 'compositionend';
- }
- },
- created: function created() {
- var _this9 = this;
- this.debouncedInputChange = debounce_default()(this.debounce, function (value) {
- var before = _this9.beforeFilter(value);
- if (before && before.then) {
- _this9.menu.options = [{
- __IS__FLAT__OPTIONS: true,
- label: _this9.t('el.cascader.loading'),
- value: '',
- disabled: true
- }];
- before.then(function () {
- _this9.$nextTick(function () {
- _this9.handleInputChange(value);
- });
- });
- } else if (before !== false) {
- _this9.$nextTick(function () {
- _this9.handleInputChange(value);
- });
- }
- });
- },
- mounted: function mounted() {
- this.flatOptions = this.flattenOptions(this.options);
- }
- });
- // CONCATENATED MODULE: ./packages/cascader/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_cascader_src_mainvue_type_script_lang_js_ = (cascader_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/cascader/src/main.vue
- /* normalize component */
- var cascader_src_main_component = normalizeComponent(
- packages_cascader_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_2e869fa1_render,
- mainvue_type_template_id_2e869fa1_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var cascader_src_main_api; }
- cascader_src_main_component.options.__file = "packages/cascader/src/main.vue"
- /* harmony default export */ var cascader_src_main = (cascader_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/cascader/index.js
- /* istanbul ignore next */
- cascader_src_main.install = function (Vue) {
- Vue.component(cascader_src_main.name, cascader_src_main);
- };
- /* harmony default export */ var cascader = (cascader_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/main.vue?vue&type=template&id=55c8ade7&
- var mainvue_type_template_id_55c8ade7_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- directives: [
- {
- name: "clickoutside",
- rawName: "v-clickoutside",
- value: _vm.hide,
- expression: "hide"
- }
- ],
- class: [
- "el-color-picker",
- _vm.colorDisabled ? "is-disabled" : "",
- _vm.colorSize ? "el-color-picker--" + _vm.colorSize : ""
- ]
- },
- [
- _vm.colorDisabled
- ? _c("div", { staticClass: "el-color-picker__mask" })
- : _vm._e(),
- _c(
- "div",
- {
- staticClass: "el-color-picker__trigger",
- on: { click: _vm.handleTrigger }
- },
- [
- _c(
- "span",
- {
- staticClass: "el-color-picker__color",
- class: { "is-alpha": _vm.showAlpha }
- },
- [
- _c("span", {
- staticClass: "el-color-picker__color-inner",
- style: {
- backgroundColor: _vm.displayedColor
- }
- }),
- !_vm.value && !_vm.showPanelColor
- ? _c("span", {
- staticClass: "el-color-picker__empty el-icon-close"
- })
- : _vm._e()
- ]
- ),
- _c("span", {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.value || _vm.showPanelColor,
- expression: "value || showPanelColor"
- }
- ],
- staticClass: "el-color-picker__icon el-icon-arrow-down"
- })
- ]
- ),
- _c("picker-dropdown", {
- ref: "dropdown",
- class: ["el-color-picker__panel", _vm.popperClass || ""],
- attrs: {
- color: _vm.color,
- "show-alpha": _vm.showAlpha,
- predefine: _vm.predefine
- },
- on: { pick: _vm.confirmValue, clear: _vm.clearValue },
- model: {
- value: _vm.showPicker,
- callback: function($$v) {
- _vm.showPicker = $$v
- },
- expression: "showPicker"
- }
- })
- ],
- 1
- )
- }
- var mainvue_type_template_id_55c8ade7_staticRenderFns = []
- mainvue_type_template_id_55c8ade7_render._withStripped = true
- // CONCATENATED MODULE: ./packages/color-picker/src/main.vue?vue&type=template&id=55c8ade7&
- // CONCATENATED MODULE: ./packages/color-picker/src/color.js
- var color_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- function color_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var hsv2hsl = function hsv2hsl(hue, sat, val) {
- return [hue, sat * val / ((hue = (2 - sat) * val) < 1 ? hue : 2 - hue) || 0, hue / 2];
- };
- // Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1
- // <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>
- var isOnePointZero = function isOnePointZero(n) {
- return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;
- };
- var isPercentage = function isPercentage(n) {
- return typeof n === 'string' && n.indexOf('%') !== -1;
- };
- // Take input from [0, n] and return it as [0, 1]
- var bound01 = function bound01(value, max) {
- if (isOnePointZero(value)) value = '100%';
- var processPercent = isPercentage(value);
- value = Math.min(max, Math.max(0, parseFloat(value)));
- // Automatically convert percentage into number
- if (processPercent) {
- value = parseInt(value * max, 10) / 100;
- }
- // Handle floating point rounding errors
- if (Math.abs(value - max) < 0.000001) {
- return 1;
- }
- // Convert into [0, 1] range if it isn't already
- return value % max / parseFloat(max);
- };
- var INT_HEX_MAP = { 10: 'A', 11: 'B', 12: 'C', 13: 'D', 14: 'E', 15: 'F' };
- var toHex = function toHex(_ref) {
- var r = _ref.r,
- g = _ref.g,
- b = _ref.b;
- var hexOne = function hexOne(value) {
- value = Math.min(Math.round(value), 255);
- var high = Math.floor(value / 16);
- var low = value % 16;
- return '' + (INT_HEX_MAP[high] || high) + (INT_HEX_MAP[low] || low);
- };
- if (isNaN(r) || isNaN(g) || isNaN(b)) return '';
- return '#' + hexOne(r) + hexOne(g) + hexOne(b);
- };
- var HEX_INT_MAP = { A: 10, B: 11, C: 12, D: 13, E: 14, F: 15 };
- var parseHexChannel = function parseHexChannel(hex) {
- if (hex.length === 2) {
- return (HEX_INT_MAP[hex[0].toUpperCase()] || +hex[0]) * 16 + (HEX_INT_MAP[hex[1].toUpperCase()] || +hex[1]);
- }
- return HEX_INT_MAP[hex[1].toUpperCase()] || +hex[1];
- };
- var hsl2hsv = function hsl2hsv(hue, sat, light) {
- sat = sat / 100;
- light = light / 100;
- var smin = sat;
- var lmin = Math.max(light, 0.01);
- var sv = void 0;
- var v = void 0;
- light *= 2;
- sat *= light <= 1 ? light : 2 - light;
- smin *= lmin <= 1 ? lmin : 2 - lmin;
- v = (light + sat) / 2;
- sv = light === 0 ? 2 * smin / (lmin + smin) : 2 * sat / (light + sat);
- return {
- h: hue,
- s: sv * 100,
- v: v * 100
- };
- };
- // `rgbToHsv`
- // Converts an RGB color value to HSV
- // *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
- // *Returns:* { h, s, v } in [0,1]
- var rgb2hsv = function rgb2hsv(r, g, b) {
- r = bound01(r, 255);
- g = bound01(g, 255);
- b = bound01(b, 255);
- var max = Math.max(r, g, b);
- var min = Math.min(r, g, b);
- var h = void 0,
- s = void 0;
- var v = max;
- var d = max - min;
- s = max === 0 ? 0 : d / max;
- if (max === min) {
- h = 0; // achromatic
- } else {
- switch (max) {
- case r:
- h = (g - b) / d + (g < b ? 6 : 0);
- break;
- case g:
- h = (b - r) / d + 2;
- break;
- case b:
- h = (r - g) / d + 4;
- break;
- }
- h /= 6;
- }
- return { h: h * 360, s: s * 100, v: v * 100 };
- };
- // `hsvToRgb`
- // Converts an HSV color value to RGB.
- // *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
- // *Returns:* { r, g, b } in the set [0, 255]
- var hsv2rgb = function hsv2rgb(h, s, v) {
- h = bound01(h, 360) * 6;
- s = bound01(s, 100);
- v = bound01(v, 100);
- var i = Math.floor(h);
- var f = h - i;
- var p = v * (1 - s);
- var q = v * (1 - f * s);
- var t = v * (1 - (1 - f) * s);
- var mod = i % 6;
- var r = [v, q, p, p, t, v][mod];
- var g = [t, v, v, q, p, p][mod];
- var b = [p, p, t, v, v, q][mod];
- return {
- r: Math.round(r * 255),
- g: Math.round(g * 255),
- b: Math.round(b * 255)
- };
- };
- var Color = function () {
- function Color(options) {
- color_classCallCheck(this, Color);
- this._hue = 0;
- this._saturation = 100;
- this._value = 100;
- this._alpha = 100;
- this.enableAlpha = false;
- this.format = 'hex';
- this.value = '';
- options = options || {};
- for (var option in options) {
- if (options.hasOwnProperty(option)) {
- this[option] = options[option];
- }
- }
- this.doOnChange();
- }
- Color.prototype.set = function set(prop, value) {
- if (arguments.length === 1 && (typeof prop === 'undefined' ? 'undefined' : color_typeof(prop)) === 'object') {
- for (var p in prop) {
- if (prop.hasOwnProperty(p)) {
- this.set(p, prop[p]);
- }
- }
- return;
- }
- this['_' + prop] = value;
- this.doOnChange();
- };
- Color.prototype.get = function get(prop) {
- return this['_' + prop];
- };
- Color.prototype.toRgb = function toRgb() {
- return hsv2rgb(this._hue, this._saturation, this._value);
- };
- Color.prototype.fromString = function fromString(value) {
- var _this = this;
- if (!value) {
- this._hue = 0;
- this._saturation = 100;
- this._value = 100;
- this.doOnChange();
- return;
- }
- var fromHSV = function fromHSV(h, s, v) {
- _this._hue = Math.max(0, Math.min(360, h));
- _this._saturation = Math.max(0, Math.min(100, s));
- _this._value = Math.max(0, Math.min(100, v));
- _this.doOnChange();
- };
- if (value.indexOf('hsl') !== -1) {
- var parts = value.replace(/hsla|hsl|\(|\)/gm, '').split(/\s|,/g).filter(function (val) {
- return val !== '';
- }).map(function (val, index) {
- return index > 2 ? parseFloat(val) : parseInt(val, 10);
- });
- if (parts.length === 4) {
- this._alpha = Math.floor(parseFloat(parts[3]) * 100);
- } else if (parts.length === 3) {
- this._alpha = 100;
- }
- if (parts.length >= 3) {
- var _hsl2hsv = hsl2hsv(parts[0], parts[1], parts[2]),
- h = _hsl2hsv.h,
- s = _hsl2hsv.s,
- v = _hsl2hsv.v;
- fromHSV(h, s, v);
- }
- } else if (value.indexOf('hsv') !== -1) {
- var _parts = value.replace(/hsva|hsv|\(|\)/gm, '').split(/\s|,/g).filter(function (val) {
- return val !== '';
- }).map(function (val, index) {
- return index > 2 ? parseFloat(val) : parseInt(val, 10);
- });
- if (_parts.length === 4) {
- this._alpha = Math.floor(parseFloat(_parts[3]) * 100);
- } else if (_parts.length === 3) {
- this._alpha = 100;
- }
- if (_parts.length >= 3) {
- fromHSV(_parts[0], _parts[1], _parts[2]);
- }
- } else if (value.indexOf('rgb') !== -1) {
- var _parts2 = value.replace(/rgba|rgb|\(|\)/gm, '').split(/\s|,/g).filter(function (val) {
- return val !== '';
- }).map(function (val, index) {
- return index > 2 ? parseFloat(val) : parseInt(val, 10);
- });
- if (_parts2.length === 4) {
- this._alpha = Math.floor(parseFloat(_parts2[3]) * 100);
- } else if (_parts2.length === 3) {
- this._alpha = 100;
- }
- if (_parts2.length >= 3) {
- var _rgb2hsv = rgb2hsv(_parts2[0], _parts2[1], _parts2[2]),
- _h = _rgb2hsv.h,
- _s = _rgb2hsv.s,
- _v = _rgb2hsv.v;
- fromHSV(_h, _s, _v);
- }
- } else if (value.indexOf('#') !== -1) {
- var hex = value.replace('#', '').trim();
- if (!/^(?:[0-9a-fA-F]{3}){1,2}$/.test(hex)) return;
- var r = void 0,
- g = void 0,
- b = void 0;
- if (hex.length === 3) {
- r = parseHexChannel(hex[0] + hex[0]);
- g = parseHexChannel(hex[1] + hex[1]);
- b = parseHexChannel(hex[2] + hex[2]);
- } else if (hex.length === 6 || hex.length === 8) {
- r = parseHexChannel(hex.substring(0, 2));
- g = parseHexChannel(hex.substring(2, 4));
- b = parseHexChannel(hex.substring(4, 6));
- }
- if (hex.length === 8) {
- this._alpha = Math.floor(parseHexChannel(hex.substring(6)) / 255 * 100);
- } else if (hex.length === 3 || hex.length === 6) {
- this._alpha = 100;
- }
- var _rgb2hsv2 = rgb2hsv(r, g, b),
- _h2 = _rgb2hsv2.h,
- _s2 = _rgb2hsv2.s,
- _v2 = _rgb2hsv2.v;
- fromHSV(_h2, _s2, _v2);
- }
- };
- Color.prototype.compare = function compare(color) {
- return Math.abs(color._hue - this._hue) < 2 && Math.abs(color._saturation - this._saturation) < 1 && Math.abs(color._value - this._value) < 1 && Math.abs(color._alpha - this._alpha) < 1;
- };
- Color.prototype.doOnChange = function doOnChange() {
- var _hue = this._hue,
- _saturation = this._saturation,
- _value = this._value,
- _alpha = this._alpha,
- format = this.format;
- if (this.enableAlpha) {
- switch (format) {
- case 'hsl':
- var hsl = hsv2hsl(_hue, _saturation / 100, _value / 100);
- this.value = 'hsla(' + _hue + ', ' + Math.round(hsl[1] * 100) + '%, ' + Math.round(hsl[2] * 100) + '%, ' + _alpha / 100 + ')';
- break;
- case 'hsv':
- this.value = 'hsva(' + _hue + ', ' + Math.round(_saturation) + '%, ' + Math.round(_value) + '%, ' + _alpha / 100 + ')';
- break;
- default:
- var _hsv2rgb = hsv2rgb(_hue, _saturation, _value),
- r = _hsv2rgb.r,
- g = _hsv2rgb.g,
- b = _hsv2rgb.b;
- this.value = 'rgba(' + r + ', ' + g + ', ' + b + ', ' + _alpha / 100 + ')';
- }
- } else {
- switch (format) {
- case 'hsl':
- var _hsl = hsv2hsl(_hue, _saturation / 100, _value / 100);
- this.value = 'hsl(' + _hue + ', ' + Math.round(_hsl[1] * 100) + '%, ' + Math.round(_hsl[2] * 100) + '%)';
- break;
- case 'hsv':
- this.value = 'hsv(' + _hue + ', ' + Math.round(_saturation) + '%, ' + Math.round(_value) + '%)';
- break;
- case 'rgb':
- var _hsv2rgb2 = hsv2rgb(_hue, _saturation, _value),
- _r = _hsv2rgb2.r,
- _g = _hsv2rgb2.g,
- _b = _hsv2rgb2.b;
- this.value = 'rgb(' + _r + ', ' + _g + ', ' + _b + ')';
- break;
- default:
- this.value = toHex(hsv2rgb(_hue, _saturation, _value));
- }
- }
- };
- return Color;
- }();
- /* harmony default export */ var src_color = (Color);
- ;
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/picker-dropdown.vue?vue&type=template&id=06601625&
- var picker_dropdownvue_type_template_id_06601625_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "transition",
- { attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
- [
- _c(
- "div",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showPopper,
- expression: "showPopper"
- }
- ],
- staticClass: "el-color-dropdown"
- },
- [
- _c(
- "div",
- { staticClass: "el-color-dropdown__main-wrapper" },
- [
- _c("hue-slider", {
- ref: "hue",
- staticStyle: { float: "right" },
- attrs: { color: _vm.color, vertical: "" }
- }),
- _c("sv-panel", { ref: "sl", attrs: { color: _vm.color } })
- ],
- 1
- ),
- _vm.showAlpha
- ? _c("alpha-slider", { ref: "alpha", attrs: { color: _vm.color } })
- : _vm._e(),
- _vm.predefine
- ? _c("predefine", {
- attrs: { color: _vm.color, colors: _vm.predefine }
- })
- : _vm._e(),
- _c(
- "div",
- { staticClass: "el-color-dropdown__btns" },
- [
- _c(
- "span",
- { staticClass: "el-color-dropdown__value" },
- [
- _c("el-input", {
- attrs: { "validate-event": false, size: "mini" },
- on: { blur: _vm.handleConfirm },
- nativeOn: {
- keyup: function($event) {
- if (
- !("button" in $event) &&
- _vm._k(
- $event.keyCode,
- "enter",
- 13,
- $event.key,
- "Enter"
- )
- ) {
- return null
- }
- return _vm.handleConfirm($event)
- }
- },
- model: {
- value: _vm.customInput,
- callback: function($$v) {
- _vm.customInput = $$v
- },
- expression: "customInput"
- }
- })
- ],
- 1
- ),
- _c(
- "el-button",
- {
- staticClass: "el-color-dropdown__link-btn",
- attrs: { size: "mini", type: "text" },
- on: {
- click: function($event) {
- _vm.$emit("clear")
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.colorpicker.clear")) +
- "\n "
- )
- ]
- ),
- _c(
- "el-button",
- {
- staticClass: "el-color-dropdown__btn",
- attrs: { plain: "", size: "mini" },
- on: { click: _vm.confirmValue }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.colorpicker.confirm")) +
- "\n "
- )
- ]
- )
- ],
- 1
- )
- ],
- 1
- )
- ]
- )
- }
- var picker_dropdownvue_type_template_id_06601625_staticRenderFns = []
- picker_dropdownvue_type_template_id_06601625_render._withStripped = true
- // CONCATENATED MODULE: ./packages/color-picker/src/components/picker-dropdown.vue?vue&type=template&id=06601625&
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/sv-panel.vue?vue&type=template&id=d8583596&
- var sv_panelvue_type_template_id_d8583596_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-color-svpanel",
- style: {
- backgroundColor: _vm.background
- }
- },
- [
- _c("div", { staticClass: "el-color-svpanel__white" }),
- _c("div", { staticClass: "el-color-svpanel__black" }),
- _c(
- "div",
- {
- staticClass: "el-color-svpanel__cursor",
- style: {
- top: _vm.cursorTop + "px",
- left: _vm.cursorLeft + "px"
- }
- },
- [_c("div")]
- )
- ]
- )
- }
- var sv_panelvue_type_template_id_d8583596_staticRenderFns = []
- sv_panelvue_type_template_id_d8583596_render._withStripped = true
- // CONCATENATED MODULE: ./packages/color-picker/src/components/sv-panel.vue?vue&type=template&id=d8583596&
- // CONCATENATED MODULE: ./packages/color-picker/src/draggable.js
- var isDragging = false;
- /* harmony default export */ var draggable = (function (element, options) {
- if (external_vue_default.a.prototype.$isServer) return;
- var moveFn = function moveFn(event) {
- if (options.drag) {
- options.drag(event);
- }
- };
- var upFn = function upFn(event) {
- document.removeEventListener('mousemove', moveFn);
- document.removeEventListener('mouseup', upFn);
- document.onselectstart = null;
- document.ondragstart = null;
- isDragging = false;
- if (options.end) {
- options.end(event);
- }
- };
- element.addEventListener('mousedown', function (event) {
- if (isDragging) return;
- document.onselectstart = function () {
- return false;
- };
- document.ondragstart = function () {
- return false;
- };
- document.addEventListener('mousemove', moveFn);
- document.addEventListener('mouseup', upFn);
- isDragging = true;
- if (options.start) {
- options.start(event);
- }
- });
- });
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/sv-panel.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var sv_panelvue_type_script_lang_js_ = ({
- name: 'el-sl-panel',
- props: {
- color: {
- required: true
- }
- },
- computed: {
- colorValue: function colorValue() {
- var hue = this.color.get('hue');
- var value = this.color.get('value');
- return { hue: hue, value: value };
- }
- },
- watch: {
- colorValue: function colorValue() {
- this.update();
- }
- },
- methods: {
- update: function update() {
- var saturation = this.color.get('saturation');
- var value = this.color.get('value');
- var el = this.$el;
- var width = el.clientWidth,
- height = el.clientHeight;
- this.cursorLeft = saturation * width / 100;
- this.cursorTop = (100 - value) * height / 100;
- this.background = 'hsl(' + this.color.get('hue') + ', 100%, 50%)';
- },
- handleDrag: function handleDrag(event) {
- var el = this.$el;
- var rect = el.getBoundingClientRect();
- var left = event.clientX - rect.left;
- var top = event.clientY - rect.top;
- left = Math.max(0, left);
- left = Math.min(left, rect.width);
- top = Math.max(0, top);
- top = Math.min(top, rect.height);
- this.cursorLeft = left;
- this.cursorTop = top;
- this.color.set({
- saturation: left / rect.width * 100,
- value: 100 - top / rect.height * 100
- });
- }
- },
- mounted: function mounted() {
- var _this = this;
- draggable(this.$el, {
- drag: function drag(event) {
- _this.handleDrag(event);
- },
- end: function end(event) {
- _this.handleDrag(event);
- }
- });
- this.update();
- },
- data: function data() {
- return {
- cursorTop: 0,
- cursorLeft: 0,
- background: 'hsl(0, 100%, 50%)'
- };
- }
- });
- // CONCATENATED MODULE: ./packages/color-picker/src/components/sv-panel.vue?vue&type=script&lang=js&
- /* harmony default export */ var components_sv_panelvue_type_script_lang_js_ = (sv_panelvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/color-picker/src/components/sv-panel.vue
- /* normalize component */
- var sv_panel_component = normalizeComponent(
- components_sv_panelvue_type_script_lang_js_,
- sv_panelvue_type_template_id_d8583596_render,
- sv_panelvue_type_template_id_d8583596_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var sv_panel_api; }
- sv_panel_component.options.__file = "packages/color-picker/src/components/sv-panel.vue"
- /* harmony default export */ var sv_panel = (sv_panel_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/hue-slider.vue?vue&type=template&id=5cdc43b1&
- var hue_slidervue_type_template_id_5cdc43b1_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-color-hue-slider",
- class: { "is-vertical": _vm.vertical }
- },
- [
- _c("div", {
- ref: "bar",
- staticClass: "el-color-hue-slider__bar",
- on: { click: _vm.handleClick }
- }),
- _c("div", {
- ref: "thumb",
- staticClass: "el-color-hue-slider__thumb",
- style: {
- left: _vm.thumbLeft + "px",
- top: _vm.thumbTop + "px"
- }
- })
- ]
- )
- }
- var hue_slidervue_type_template_id_5cdc43b1_staticRenderFns = []
- hue_slidervue_type_template_id_5cdc43b1_render._withStripped = true
- // CONCATENATED MODULE: ./packages/color-picker/src/components/hue-slider.vue?vue&type=template&id=5cdc43b1&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/hue-slider.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var hue_slidervue_type_script_lang_js_ = ({
- name: 'el-color-hue-slider',
- props: {
- color: {
- required: true
- },
- vertical: Boolean
- },
- data: function data() {
- return {
- thumbLeft: 0,
- thumbTop: 0
- };
- },
- computed: {
- hueValue: function hueValue() {
- var hue = this.color.get('hue');
- return hue;
- }
- },
- watch: {
- hueValue: function hueValue() {
- this.update();
- }
- },
- methods: {
- handleClick: function handleClick(event) {
- var thumb = this.$refs.thumb;
- var target = event.target;
- if (target !== thumb) {
- this.handleDrag(event);
- }
- },
- handleDrag: function handleDrag(event) {
- var rect = this.$el.getBoundingClientRect();
- var thumb = this.$refs.thumb;
- var hue = void 0;
- if (!this.vertical) {
- var left = event.clientX - rect.left;
- left = Math.min(left, rect.width - thumb.offsetWidth / 2);
- left = Math.max(thumb.offsetWidth / 2, left);
- hue = Math.round((left - thumb.offsetWidth / 2) / (rect.width - thumb.offsetWidth) * 360);
- } else {
- var top = event.clientY - rect.top;
- top = Math.min(top, rect.height - thumb.offsetHeight / 2);
- top = Math.max(thumb.offsetHeight / 2, top);
- hue = Math.round((top - thumb.offsetHeight / 2) / (rect.height - thumb.offsetHeight) * 360);
- }
- this.color.set('hue', hue);
- },
- getThumbLeft: function getThumbLeft() {
- if (this.vertical) return 0;
- var el = this.$el;
- var hue = this.color.get('hue');
- if (!el) return 0;
- var thumb = this.$refs.thumb;
- return Math.round(hue * (el.offsetWidth - thumb.offsetWidth / 2) / 360);
- },
- getThumbTop: function getThumbTop() {
- if (!this.vertical) return 0;
- var el = this.$el;
- var hue = this.color.get('hue');
- if (!el) return 0;
- var thumb = this.$refs.thumb;
- return Math.round(hue * (el.offsetHeight - thumb.offsetHeight / 2) / 360);
- },
- update: function update() {
- this.thumbLeft = this.getThumbLeft();
- this.thumbTop = this.getThumbTop();
- }
- },
- mounted: function mounted() {
- var _this = this;
- var _$refs = this.$refs,
- bar = _$refs.bar,
- thumb = _$refs.thumb;
- var dragConfig = {
- drag: function drag(event) {
- _this.handleDrag(event);
- },
- end: function end(event) {
- _this.handleDrag(event);
- }
- };
- draggable(bar, dragConfig);
- draggable(thumb, dragConfig);
- this.update();
- }
- });
- // CONCATENATED MODULE: ./packages/color-picker/src/components/hue-slider.vue?vue&type=script&lang=js&
- /* harmony default export */ var components_hue_slidervue_type_script_lang_js_ = (hue_slidervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/color-picker/src/components/hue-slider.vue
- /* normalize component */
- var hue_slider_component = normalizeComponent(
- components_hue_slidervue_type_script_lang_js_,
- hue_slidervue_type_template_id_5cdc43b1_render,
- hue_slidervue_type_template_id_5cdc43b1_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var hue_slider_api; }
- hue_slider_component.options.__file = "packages/color-picker/src/components/hue-slider.vue"
- /* harmony default export */ var hue_slider = (hue_slider_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/alpha-slider.vue?vue&type=template&id=068c66cb&
- var alpha_slidervue_type_template_id_068c66cb_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "el-color-alpha-slider",
- class: { "is-vertical": _vm.vertical }
- },
- [
- _c("div", {
- ref: "bar",
- staticClass: "el-color-alpha-slider__bar",
- style: {
- background: _vm.background
- },
- on: { click: _vm.handleClick }
- }),
- _c("div", {
- ref: "thumb",
- staticClass: "el-color-alpha-slider__thumb",
- style: {
- left: _vm.thumbLeft + "px",
- top: _vm.thumbTop + "px"
- }
- })
- ]
- )
- }
- var alpha_slidervue_type_template_id_068c66cb_staticRenderFns = []
- alpha_slidervue_type_template_id_068c66cb_render._withStripped = true
- // CONCATENATED MODULE: ./packages/color-picker/src/components/alpha-slider.vue?vue&type=template&id=068c66cb&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/alpha-slider.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var alpha_slidervue_type_script_lang_js_ = ({
- name: 'el-color-alpha-slider',
- props: {
- color: {
- required: true
- },
- vertical: Boolean
- },
- watch: {
- 'color._alpha': function color_alpha() {
- this.update();
- },
- 'color.value': function colorValue() {
- this.update();
- }
- },
- methods: {
- handleClick: function handleClick(event) {
- var thumb = this.$refs.thumb;
- var target = event.target;
- if (target !== thumb) {
- this.handleDrag(event);
- }
- },
- handleDrag: function handleDrag(event) {
- var rect = this.$el.getBoundingClientRect();
- var thumb = this.$refs.thumb;
- if (!this.vertical) {
- var left = event.clientX - rect.left;
- left = Math.max(thumb.offsetWidth / 2, left);
- left = Math.min(left, rect.width - thumb.offsetWidth / 2);
- this.color.set('alpha', Math.round((left - thumb.offsetWidth / 2) / (rect.width - thumb.offsetWidth) * 100));
- } else {
- var top = event.clientY - rect.top;
- top = Math.max(thumb.offsetHeight / 2, top);
- top = Math.min(top, rect.height - thumb.offsetHeight / 2);
- this.color.set('alpha', Math.round((top - thumb.offsetHeight / 2) / (rect.height - thumb.offsetHeight) * 100));
- }
- },
- getThumbLeft: function getThumbLeft() {
- if (this.vertical) return 0;
- var el = this.$el;
- var alpha = this.color._alpha;
- if (!el) return 0;
- var thumb = this.$refs.thumb;
- return Math.round(alpha * (el.offsetWidth - thumb.offsetWidth / 2) / 100);
- },
- getThumbTop: function getThumbTop() {
- if (!this.vertical) return 0;
- var el = this.$el;
- var alpha = this.color._alpha;
- if (!el) return 0;
- var thumb = this.$refs.thumb;
- return Math.round(alpha * (el.offsetHeight - thumb.offsetHeight / 2) / 100);
- },
- getBackground: function getBackground() {
- if (this.color && this.color.value) {
- var _color$toRgb = this.color.toRgb(),
- r = _color$toRgb.r,
- g = _color$toRgb.g,
- b = _color$toRgb.b;
- return 'linear-gradient(to right, rgba(' + r + ', ' + g + ', ' + b + ', 0) 0%, rgba(' + r + ', ' + g + ', ' + b + ', 1) 100%)';
- }
- return null;
- },
- update: function update() {
- this.thumbLeft = this.getThumbLeft();
- this.thumbTop = this.getThumbTop();
- this.background = this.getBackground();
- }
- },
- data: function data() {
- return {
- thumbLeft: 0,
- thumbTop: 0,
- background: null
- };
- },
- mounted: function mounted() {
- var _this = this;
- var _$refs = this.$refs,
- bar = _$refs.bar,
- thumb = _$refs.thumb;
- var dragConfig = {
- drag: function drag(event) {
- _this.handleDrag(event);
- },
- end: function end(event) {
- _this.handleDrag(event);
- }
- };
- draggable(bar, dragConfig);
- draggable(thumb, dragConfig);
- this.update();
- }
- });
- // CONCATENATED MODULE: ./packages/color-picker/src/components/alpha-slider.vue?vue&type=script&lang=js&
- /* harmony default export */ var components_alpha_slidervue_type_script_lang_js_ = (alpha_slidervue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/color-picker/src/components/alpha-slider.vue
- /* normalize component */
- var alpha_slider_component = normalizeComponent(
- components_alpha_slidervue_type_script_lang_js_,
- alpha_slidervue_type_template_id_068c66cb_render,
- alpha_slidervue_type_template_id_068c66cb_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var alpha_slider_api; }
- alpha_slider_component.options.__file = "packages/color-picker/src/components/alpha-slider.vue"
- /* harmony default export */ var alpha_slider = (alpha_slider_component.exports);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/predefine.vue?vue&type=template&id=06e03093&
- var predefinevue_type_template_id_06e03093_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("div", { staticClass: "el-color-predefine" }, [
- _c(
- "div",
- { staticClass: "el-color-predefine__colors" },
- _vm._l(_vm.rgbaColors, function(item, index) {
- return _c(
- "div",
- {
- key: _vm.colors[index],
- staticClass: "el-color-predefine__color-selector",
- class: { selected: item.selected, "is-alpha": item._alpha < 100 },
- on: {
- click: function($event) {
- _vm.handleSelect(index)
- }
- }
- },
- [_c("div", { style: { "background-color": item.value } })]
- )
- }),
- 0
- )
- ])
- }
- var predefinevue_type_template_id_06e03093_staticRenderFns = []
- predefinevue_type_template_id_06e03093_render._withStripped = true
- // CONCATENATED MODULE: ./packages/color-picker/src/components/predefine.vue?vue&type=template&id=06e03093&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/predefine.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var predefinevue_type_script_lang_js_ = ({
- props: {
- colors: { type: Array, required: true },
- color: { required: true }
- },
- data: function data() {
- return {
- rgbaColors: this.parseColors(this.colors, this.color)
- };
- },
- methods: {
- handleSelect: function handleSelect(index) {
- this.color.fromString(this.colors[index]);
- },
- parseColors: function parseColors(colors, color) {
- return colors.map(function (value) {
- var c = new src_color();
- c.enableAlpha = true;
- c.format = 'rgba';
- c.fromString(value);
- c.selected = c.value === color.value;
- return c;
- });
- }
- },
- watch: {
- '$parent.currentColor': function $parentCurrentColor(val) {
- var color = new src_color();
- color.fromString(val);
- this.rgbaColors.forEach(function (item) {
- item.selected = color.compare(item);
- });
- },
- colors: function colors(newVal) {
- this.rgbaColors = this.parseColors(newVal, this.color);
- },
- color: function color(newVal) {
- this.rgbaColors = this.parseColors(this.colors, newVal);
- }
- }
- });
- // CONCATENATED MODULE: ./packages/color-picker/src/components/predefine.vue?vue&type=script&lang=js&
- /* harmony default export */ var components_predefinevue_type_script_lang_js_ = (predefinevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/color-picker/src/components/predefine.vue
- /* normalize component */
- var predefine_component = normalizeComponent(
- components_predefinevue_type_script_lang_js_,
- predefinevue_type_template_id_06e03093_render,
- predefinevue_type_template_id_06e03093_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var predefine_api; }
- predefine_component.options.__file = "packages/color-picker/src/components/predefine.vue"
- /* harmony default export */ var predefine = (predefine_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/picker-dropdown.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var picker_dropdownvue_type_script_lang_js_ = ({
- name: 'el-color-picker-dropdown',
- mixins: [vue_popper_default.a, locale_default.a],
- components: {
- SvPanel: sv_panel,
- HueSlider: hue_slider,
- AlphaSlider: alpha_slider,
- ElInput: input_default.a,
- ElButton: button_default.a,
- Predefine: predefine
- },
- props: {
- color: {
- required: true
- },
- showAlpha: Boolean,
- predefine: Array
- },
- data: function data() {
- return {
- customInput: ''
- };
- },
- computed: {
- currentColor: function currentColor() {
- var parent = this.$parent;
- return !parent.value && !parent.showPanelColor ? '' : parent.color.value;
- }
- },
- methods: {
- confirmValue: function confirmValue() {
- this.$emit('pick');
- },
- handleConfirm: function handleConfirm() {
- this.color.fromString(this.customInput);
- }
- },
- mounted: function mounted() {
- this.$parent.popperElm = this.popperElm = this.$el;
- this.referenceElm = this.$parent.$el;
- },
- watch: {
- showPopper: function showPopper(val) {
- var _this = this;
- if (val === true) {
- this.$nextTick(function () {
- var _$refs = _this.$refs,
- sl = _$refs.sl,
- hue = _$refs.hue,
- alpha = _$refs.alpha;
- sl && sl.update();
- hue && hue.update();
- alpha && alpha.update();
- });
- }
- },
- currentColor: {
- immediate: true,
- handler: function handler(val) {
- this.customInput = val;
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/color-picker/src/components/picker-dropdown.vue?vue&type=script&lang=js&
- /* harmony default export */ var components_picker_dropdownvue_type_script_lang_js_ = (picker_dropdownvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/color-picker/src/components/picker-dropdown.vue
- /* normalize component */
- var picker_dropdown_component = normalizeComponent(
- components_picker_dropdownvue_type_script_lang_js_,
- picker_dropdownvue_type_template_id_06601625_render,
- picker_dropdownvue_type_template_id_06601625_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var picker_dropdown_api; }
- picker_dropdown_component.options.__file = "packages/color-picker/src/components/picker-dropdown.vue"
- /* harmony default export */ var picker_dropdown = (picker_dropdown_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var color_picker_src_mainvue_type_script_lang_js_ = ({
- name: 'ElColorPicker',
- mixins: [emitter_default.a],
- props: {
- value: String,
- showAlpha: Boolean,
- colorFormat: String,
- disabled: Boolean,
- size: String,
- popperClass: String,
- predefine: Array
- },
- inject: {
- elForm: {
- default: ''
- },
- elFormItem: {
- default: ''
- }
- },
- directives: { Clickoutside: clickoutside_default.a },
- computed: {
- displayedColor: function displayedColor() {
- if (!this.value && !this.showPanelColor) {
- return 'transparent';
- }
- return this.displayedRgb(this.color, this.showAlpha);
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- colorSize: function colorSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- },
- colorDisabled: function colorDisabled() {
- return this.disabled || (this.elForm || {}).disabled;
- }
- },
- watch: {
- value: function value(val) {
- if (!val) {
- this.showPanelColor = false;
- } else if (val && val !== this.color.value) {
- this.color.fromString(val);
- }
- },
- color: {
- deep: true,
- handler: function handler() {
- this.showPanelColor = true;
- }
- },
- displayedColor: function displayedColor(val) {
- if (!this.showPicker) return;
- var currentValueColor = new src_color({
- enableAlpha: this.showAlpha,
- format: this.colorFormat
- });
- currentValueColor.fromString(this.value);
- var currentValueColorRgb = this.displayedRgb(currentValueColor, this.showAlpha);
- if (val !== currentValueColorRgb) {
- this.$emit('active-change', val);
- }
- }
- },
- methods: {
- handleTrigger: function handleTrigger() {
- if (this.colorDisabled) return;
- this.showPicker = !this.showPicker;
- },
- confirmValue: function confirmValue() {
- var value = this.color.value;
- this.$emit('input', value);
- this.$emit('change', value);
- this.dispatch('ElFormItem', 'el.form.change', value);
- this.showPicker = false;
- },
- clearValue: function clearValue() {
- this.$emit('input', null);
- this.$emit('change', null);
- if (this.value !== null) {
- this.dispatch('ElFormItem', 'el.form.change', null);
- }
- this.showPanelColor = false;
- this.showPicker = false;
- this.resetColor();
- },
- hide: function hide() {
- this.showPicker = false;
- this.resetColor();
- },
- resetColor: function resetColor() {
- var _this = this;
- this.$nextTick(function (_) {
- if (_this.value) {
- _this.color.fromString(_this.value);
- } else {
- _this.showPanelColor = false;
- }
- });
- },
- displayedRgb: function displayedRgb(color, showAlpha) {
- if (!(color instanceof src_color)) {
- throw Error('color should be instance of Color Class');
- }
- var _color$toRgb = color.toRgb(),
- r = _color$toRgb.r,
- g = _color$toRgb.g,
- b = _color$toRgb.b;
- return showAlpha ? 'rgba(' + r + ', ' + g + ', ' + b + ', ' + color.get('alpha') / 100 + ')' : 'rgb(' + r + ', ' + g + ', ' + b + ')';
- }
- },
- mounted: function mounted() {
- var value = this.value;
- if (value) {
- this.color.fromString(value);
- }
- this.popperElm = this.$refs.dropdown.$el;
- },
- data: function data() {
- var color = new src_color({
- enableAlpha: this.showAlpha,
- format: this.colorFormat
- });
- return {
- color: color,
- showPicker: false,
- showPanelColor: false
- };
- },
- components: {
- PickerDropdown: picker_dropdown
- }
- });
- // CONCATENATED MODULE: ./packages/color-picker/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_color_picker_src_mainvue_type_script_lang_js_ = (color_picker_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/color-picker/src/main.vue
- /* normalize component */
- var color_picker_src_main_component = normalizeComponent(
- packages_color_picker_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_55c8ade7_render,
- mainvue_type_template_id_55c8ade7_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var color_picker_src_main_api; }
- color_picker_src_main_component.options.__file = "packages/color-picker/src/main.vue"
- /* harmony default export */ var color_picker_src_main = (color_picker_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/color-picker/index.js
- /* istanbul ignore next */
- color_picker_src_main.install = function (Vue) {
- Vue.component(color_picker_src_main.name, color_picker_src_main);
- };
- /* harmony default export */ var color_picker = (color_picker_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/main.vue?vue&type=template&id=5c654dd8&
- var mainvue_type_template_id_5c654dd8_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- { staticClass: "el-transfer" },
- [
- _c(
- "transfer-panel",
- _vm._b(
- {
- ref: "leftPanel",
- attrs: {
- data: _vm.sourceData,
- title: _vm.titles[0] || _vm.t("el.transfer.titles.0"),
- "default-checked": _vm.leftDefaultChecked,
- placeholder:
- _vm.filterPlaceholder || _vm.t("el.transfer.filterPlaceholder")
- },
- on: { "checked-change": _vm.onSourceCheckedChange }
- },
- "transfer-panel",
- _vm.$props,
- false
- ),
- [_vm._t("left-footer")],
- 2
- ),
- _c(
- "div",
- { staticClass: "el-transfer__buttons" },
- [
- _c(
- "el-button",
- {
- class: [
- "el-transfer__button",
- _vm.hasButtonTexts ? "is-with-texts" : ""
- ],
- attrs: {
- type: "primary",
- disabled: _vm.rightChecked.length === 0
- },
- nativeOn: {
- click: function($event) {
- return _vm.addToLeft($event)
- }
- }
- },
- [
- _c("i", { staticClass: "el-icon-arrow-left" }),
- _vm.buttonTexts[0] !== undefined
- ? _c("span", [_vm._v(_vm._s(_vm.buttonTexts[0]))])
- : _vm._e()
- ]
- ),
- _c(
- "el-button",
- {
- class: [
- "el-transfer__button",
- _vm.hasButtonTexts ? "is-with-texts" : ""
- ],
- attrs: {
- type: "primary",
- disabled: _vm.leftChecked.length === 0
- },
- nativeOn: {
- click: function($event) {
- return _vm.addToRight($event)
- }
- }
- },
- [
- _vm.buttonTexts[1] !== undefined
- ? _c("span", [_vm._v(_vm._s(_vm.buttonTexts[1]))])
- : _vm._e(),
- _c("i", { staticClass: "el-icon-arrow-right" })
- ]
- )
- ],
- 1
- ),
- _c(
- "transfer-panel",
- _vm._b(
- {
- ref: "rightPanel",
- attrs: {
- data: _vm.targetData,
- title: _vm.titles[1] || _vm.t("el.transfer.titles.1"),
- "default-checked": _vm.rightDefaultChecked,
- placeholder:
- _vm.filterPlaceholder || _vm.t("el.transfer.filterPlaceholder")
- },
- on: { "checked-change": _vm.onTargetCheckedChange }
- },
- "transfer-panel",
- _vm.$props,
- false
- ),
- [_vm._t("right-footer")],
- 2
- )
- ],
- 1
- )
- }
- var mainvue_type_template_id_5c654dd8_staticRenderFns = []
- mainvue_type_template_id_5c654dd8_render._withStripped = true
- // CONCATENATED MODULE: ./packages/transfer/src/main.vue?vue&type=template&id=5c654dd8&
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/transfer-panel.vue?vue&type=template&id=2ddab8bd&
- var transfer_panelvue_type_template_id_2ddab8bd_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("div", { staticClass: "el-transfer-panel" }, [
- _c(
- "p",
- { staticClass: "el-transfer-panel__header" },
- [
- _c(
- "el-checkbox",
- {
- attrs: { indeterminate: _vm.isIndeterminate },
- on: { change: _vm.handleAllCheckedChange },
- model: {
- value: _vm.allChecked,
- callback: function($$v) {
- _vm.allChecked = $$v
- },
- expression: "allChecked"
- }
- },
- [
- _vm._v("\n " + _vm._s(_vm.title) + "\n "),
- _c("span", [_vm._v(_vm._s(_vm.checkedSummary))])
- ]
- )
- ],
- 1
- ),
- _c(
- "div",
- {
- class: [
- "el-transfer-panel__body",
- _vm.hasFooter ? "is-with-footer" : ""
- ]
- },
- [
- _vm.filterable
- ? _c(
- "el-input",
- {
- staticClass: "el-transfer-panel__filter",
- attrs: { size: "small", placeholder: _vm.placeholder },
- nativeOn: {
- mouseenter: function($event) {
- _vm.inputHover = true
- },
- mouseleave: function($event) {
- _vm.inputHover = false
- }
- },
- model: {
- value: _vm.query,
- callback: function($$v) {
- _vm.query = $$v
- },
- expression: "query"
- }
- },
- [
- _c("i", {
- class: ["el-input__icon", "el-icon-" + _vm.inputIcon],
- attrs: { slot: "prefix" },
- on: { click: _vm.clearQuery },
- slot: "prefix"
- })
- ]
- )
- : _vm._e(),
- _c(
- "el-checkbox-group",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: !_vm.hasNoMatch && _vm.data.length > 0,
- expression: "!hasNoMatch && data.length > 0"
- }
- ],
- staticClass: "el-transfer-panel__list",
- class: { "is-filterable": _vm.filterable },
- model: {
- value: _vm.checked,
- callback: function($$v) {
- _vm.checked = $$v
- },
- expression: "checked"
- }
- },
- _vm._l(_vm.filteredData, function(item) {
- return _c(
- "el-checkbox",
- {
- key: item[_vm.keyProp],
- staticClass: "el-transfer-panel__item",
- attrs: {
- label: item[_vm.keyProp],
- disabled: item[_vm.disabledProp]
- }
- },
- [_c("option-content", { attrs: { option: item } })],
- 1
- )
- }),
- 1
- ),
- _c(
- "p",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.hasNoMatch,
- expression: "hasNoMatch"
- }
- ],
- staticClass: "el-transfer-panel__empty"
- },
- [_vm._v(_vm._s(_vm.t("el.transfer.noMatch")))]
- ),
- _c(
- "p",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.data.length === 0 && !_vm.hasNoMatch,
- expression: "data.length === 0 && !hasNoMatch"
- }
- ],
- staticClass: "el-transfer-panel__empty"
- },
- [_vm._v(_vm._s(_vm.t("el.transfer.noData")))]
- )
- ],
- 1
- ),
- _vm.hasFooter
- ? _c(
- "p",
- { staticClass: "el-transfer-panel__footer" },
- [_vm._t("default")],
- 2
- )
- : _vm._e()
- ])
- }
- var transfer_panelvue_type_template_id_2ddab8bd_staticRenderFns = []
- transfer_panelvue_type_template_id_2ddab8bd_render._withStripped = true
- // CONCATENATED MODULE: ./packages/transfer/src/transfer-panel.vue?vue&type=template&id=2ddab8bd&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/transfer-panel.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var transfer_panelvue_type_script_lang_js_ = ({
- mixins: [locale_default.a],
- name: 'ElTransferPanel',
- componentName: 'ElTransferPanel',
- components: {
- ElCheckboxGroup: checkbox_group_default.a,
- ElCheckbox: checkbox_default.a,
- ElInput: input_default.a,
- OptionContent: {
- props: {
- option: Object
- },
- render: function render(h) {
- var getParent = function getParent(vm) {
- if (vm.$options.componentName === 'ElTransferPanel') {
- return vm;
- } else if (vm.$parent) {
- return getParent(vm.$parent);
- } else {
- return vm;
- }
- };
- var panel = getParent(this);
- var transfer = panel.$parent || panel;
- return panel.renderContent ? panel.renderContent(h, this.option) : transfer.$scopedSlots.default ? transfer.$scopedSlots.default({ option: this.option }) : h('span', [this.option[panel.labelProp] || this.option[panel.keyProp]]);
- }
- }
- },
- props: {
- data: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- renderContent: Function,
- placeholder: String,
- title: String,
- filterable: Boolean,
- format: Object,
- filterMethod: Function,
- defaultChecked: Array,
- props: Object
- },
- data: function data() {
- return {
- checked: [],
- allChecked: false,
- query: '',
- inputHover: false,
- checkChangeByUser: true
- };
- },
- watch: {
- checked: function checked(val, oldVal) {
- this.updateAllChecked();
- if (this.checkChangeByUser) {
- var movedKeys = val.concat(oldVal).filter(function (v) {
- return val.indexOf(v) === -1 || oldVal.indexOf(v) === -1;
- });
- this.$emit('checked-change', val, movedKeys);
- } else {
- this.$emit('checked-change', val);
- this.checkChangeByUser = true;
- }
- },
- data: function data() {
- var _this = this;
- var checked = [];
- var filteredDataKeys = this.filteredData.map(function (item) {
- return item[_this.keyProp];
- });
- this.checked.forEach(function (item) {
- if (filteredDataKeys.indexOf(item) > -1) {
- checked.push(item);
- }
- });
- this.checkChangeByUser = false;
- this.checked = checked;
- },
- checkableData: function checkableData() {
- this.updateAllChecked();
- },
- defaultChecked: {
- immediate: true,
- handler: function handler(val, oldVal) {
- var _this2 = this;
- if (oldVal && val.length === oldVal.length && val.every(function (item) {
- return oldVal.indexOf(item) > -1;
- })) return;
- var checked = [];
- var checkableDataKeys = this.checkableData.map(function (item) {
- return item[_this2.keyProp];
- });
- val.forEach(function (item) {
- if (checkableDataKeys.indexOf(item) > -1) {
- checked.push(item);
- }
- });
- this.checkChangeByUser = false;
- this.checked = checked;
- }
- }
- },
- computed: {
- filteredData: function filteredData() {
- var _this3 = this;
- return this.data.filter(function (item) {
- if (typeof _this3.filterMethod === 'function') {
- return _this3.filterMethod(_this3.query, item);
- } else {
- var label = item[_this3.labelProp] || item[_this3.keyProp].toString();
- return label.toLowerCase().indexOf(_this3.query.toLowerCase()) > -1;
- }
- });
- },
- checkableData: function checkableData() {
- var _this4 = this;
- return this.filteredData.filter(function (item) {
- return !item[_this4.disabledProp];
- });
- },
- checkedSummary: function checkedSummary() {
- var checkedLength = this.checked.length;
- var dataLength = this.data.length;
- var _format = this.format,
- noChecked = _format.noChecked,
- hasChecked = _format.hasChecked;
- if (noChecked && hasChecked) {
- return checkedLength > 0 ? hasChecked.replace(/\${checked}/g, checkedLength).replace(/\${total}/g, dataLength) : noChecked.replace(/\${total}/g, dataLength);
- } else {
- return checkedLength + '/' + dataLength;
- }
- },
- isIndeterminate: function isIndeterminate() {
- var checkedLength = this.checked.length;
- return checkedLength > 0 && checkedLength < this.checkableData.length;
- },
- hasNoMatch: function hasNoMatch() {
- return this.query.length > 0 && this.filteredData.length === 0;
- },
- inputIcon: function inputIcon() {
- return this.query.length > 0 && this.inputHover ? 'circle-close' : 'search';
- },
- labelProp: function labelProp() {
- return this.props.label || 'label';
- },
- keyProp: function keyProp() {
- return this.props.key || 'key';
- },
- disabledProp: function disabledProp() {
- return this.props.disabled || 'disabled';
- },
- hasFooter: function hasFooter() {
- return !!this.$slots.default;
- }
- },
- methods: {
- updateAllChecked: function updateAllChecked() {
- var _this5 = this;
- var checkableDataKeys = this.checkableData.map(function (item) {
- return item[_this5.keyProp];
- });
- this.allChecked = checkableDataKeys.length > 0 && checkableDataKeys.every(function (item) {
- return _this5.checked.indexOf(item) > -1;
- });
- },
- handleAllCheckedChange: function handleAllCheckedChange(value) {
- var _this6 = this;
- this.checked = value ? this.checkableData.map(function (item) {
- return item[_this6.keyProp];
- }) : [];
- },
- clearQuery: function clearQuery() {
- if (this.inputIcon === 'circle-close') {
- this.query = '';
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/transfer/src/transfer-panel.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_transfer_panelvue_type_script_lang_js_ = (transfer_panelvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/transfer/src/transfer-panel.vue
- /* normalize component */
- var transfer_panel_component = normalizeComponent(
- src_transfer_panelvue_type_script_lang_js_,
- transfer_panelvue_type_template_id_2ddab8bd_render,
- transfer_panelvue_type_template_id_2ddab8bd_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var transfer_panel_api; }
- transfer_panel_component.options.__file = "packages/transfer/src/transfer-panel.vue"
- /* harmony default export */ var transfer_panel = (transfer_panel_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var transfer_src_mainvue_type_script_lang_js_ = ({
- name: 'ElTransfer',
- mixins: [emitter_default.a, locale_default.a, migrating_default.a],
- components: {
- TransferPanel: transfer_panel,
- ElButton: button_default.a
- },
- props: {
- data: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- titles: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- buttonTexts: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- filterPlaceholder: {
- type: String,
- default: ''
- },
- filterMethod: Function,
- leftDefaultChecked: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- rightDefaultChecked: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- renderContent: Function,
- value: {
- type: Array,
- default: function _default() {
- return [];
- }
- },
- format: {
- type: Object,
- default: function _default() {
- return {};
- }
- },
- filterable: Boolean,
- props: {
- type: Object,
- default: function _default() {
- return {
- label: 'label',
- key: 'key',
- disabled: 'disabled'
- };
- }
- },
- targetOrder: {
- type: String,
- default: 'original'
- }
- },
- data: function data() {
- return {
- leftChecked: [],
- rightChecked: []
- };
- },
- computed: {
- dataObj: function dataObj() {
- var key = this.props.key;
- return this.data.reduce(function (o, cur) {
- return (o[cur[key]] = cur) && o;
- }, {});
- },
- sourceData: function sourceData() {
- var _this = this;
- return this.data.filter(function (item) {
- return _this.value.indexOf(item[_this.props.key]) === -1;
- });
- },
- targetData: function targetData() {
- var _this2 = this;
- if (this.targetOrder === 'original') {
- return this.data.filter(function (item) {
- return _this2.value.indexOf(item[_this2.props.key]) > -1;
- });
- } else {
- return this.value.reduce(function (arr, cur) {
- var val = _this2.dataObj[cur];
- if (val) {
- arr.push(val);
- }
- return arr;
- }, []);
- }
- },
- hasButtonTexts: function hasButtonTexts() {
- return this.buttonTexts.length === 2;
- }
- },
- watch: {
- value: function value(val) {
- this.dispatch('ElFormItem', 'el.form.change', val);
- }
- },
- methods: {
- getMigratingConfig: function getMigratingConfig() {
- return {
- props: {
- 'footer-format': 'footer-format is renamed to format.'
- }
- };
- },
- onSourceCheckedChange: function onSourceCheckedChange(val, movedKeys) {
- this.leftChecked = val;
- if (movedKeys === undefined) return;
- this.$emit('left-check-change', val, movedKeys);
- },
- onTargetCheckedChange: function onTargetCheckedChange(val, movedKeys) {
- this.rightChecked = val;
- if (movedKeys === undefined) return;
- this.$emit('right-check-change', val, movedKeys);
- },
- addToLeft: function addToLeft() {
- var currentValue = this.value.slice();
- this.rightChecked.forEach(function (item) {
- var index = currentValue.indexOf(item);
- if (index > -1) {
- currentValue.splice(index, 1);
- }
- });
- this.$emit('input', currentValue);
- this.$emit('change', currentValue, 'left', this.rightChecked);
- },
- addToRight: function addToRight() {
- var _this3 = this;
- var currentValue = this.value.slice();
- var itemsToBeMoved = [];
- var key = this.props.key;
- this.data.forEach(function (item) {
- var itemKey = item[key];
- if (_this3.leftChecked.indexOf(itemKey) > -1 && _this3.value.indexOf(itemKey) === -1) {
- itemsToBeMoved.push(itemKey);
- }
- });
- currentValue = this.targetOrder === 'unshift' ? itemsToBeMoved.concat(currentValue) : currentValue.concat(itemsToBeMoved);
- this.$emit('input', currentValue);
- this.$emit('change', currentValue, 'right', this.leftChecked);
- },
- clearQuery: function clearQuery(which) {
- if (which === 'left') {
- this.$refs.leftPanel.query = '';
- } else if (which === 'right') {
- this.$refs.rightPanel.query = '';
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/transfer/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_transfer_src_mainvue_type_script_lang_js_ = (transfer_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/transfer/src/main.vue
- /* normalize component */
- var transfer_src_main_component = normalizeComponent(
- packages_transfer_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_5c654dd8_render,
- mainvue_type_template_id_5c654dd8_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var transfer_src_main_api; }
- transfer_src_main_component.options.__file = "packages/transfer/src/main.vue"
- /* harmony default export */ var transfer_src_main = (transfer_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/transfer/index.js
- /* istanbul ignore next */
- transfer_src_main.install = function (Vue) {
- Vue.component(transfer_src_main.name, transfer_src_main);
- };
- /* harmony default export */ var transfer = (transfer_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/container/src/main.vue?vue&type=template&id=5bf181d4&
- var mainvue_type_template_id_5bf181d4_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "section",
- { staticClass: "el-container", class: { "is-vertical": _vm.isVertical } },
- [_vm._t("default")],
- 2
- )
- }
- var mainvue_type_template_id_5bf181d4_staticRenderFns = []
- mainvue_type_template_id_5bf181d4_render._withStripped = true
- // CONCATENATED MODULE: ./packages/container/src/main.vue?vue&type=template&id=5bf181d4&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/container/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var container_src_mainvue_type_script_lang_js_ = ({
- name: 'ElContainer',
- componentName: 'ElContainer',
- props: {
- direction: String
- },
- computed: {
- isVertical: function isVertical() {
- if (this.direction === 'vertical') {
- return true;
- } else if (this.direction === 'horizontal') {
- return false;
- }
- return this.$slots && this.$slots.default ? this.$slots.default.some(function (vnode) {
- var tag = vnode.componentOptions && vnode.componentOptions.tag;
- return tag === 'el-header' || tag === 'el-footer';
- }) : false;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/container/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_container_src_mainvue_type_script_lang_js_ = (container_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/container/src/main.vue
- /* normalize component */
- var container_src_main_component = normalizeComponent(
- packages_container_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_5bf181d4_render,
- mainvue_type_template_id_5bf181d4_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var container_src_main_api; }
- container_src_main_component.options.__file = "packages/container/src/main.vue"
- /* harmony default export */ var container_src_main = (container_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/container/index.js
- /* istanbul ignore next */
- container_src_main.install = function (Vue) {
- Vue.component(container_src_main.name, container_src_main);
- };
- /* harmony default export */ var container = (container_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/header/src/main.vue?vue&type=template&id=2b296ab2&
- var mainvue_type_template_id_2b296ab2_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "header",
- { staticClass: "el-header", style: { height: _vm.height } },
- [_vm._t("default")],
- 2
- )
- }
- var mainvue_type_template_id_2b296ab2_staticRenderFns = []
- mainvue_type_template_id_2b296ab2_render._withStripped = true
- // CONCATENATED MODULE: ./packages/header/src/main.vue?vue&type=template&id=2b296ab2&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/header/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var header_src_mainvue_type_script_lang_js_ = ({
- name: 'ElHeader',
- componentName: 'ElHeader',
- props: {
- height: {
- type: String,
- default: '60px'
- }
- }
- });
- // CONCATENATED MODULE: ./packages/header/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_header_src_mainvue_type_script_lang_js_ = (header_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/header/src/main.vue
- /* normalize component */
- var header_src_main_component = normalizeComponent(
- packages_header_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_2b296ab2_render,
- mainvue_type_template_id_2b296ab2_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var header_src_main_api; }
- header_src_main_component.options.__file = "packages/header/src/main.vue"
- /* harmony default export */ var header_src_main = (header_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/header/index.js
- /* istanbul ignore next */
- header_src_main.install = function (Vue) {
- Vue.component(header_src_main.name, header_src_main);
- };
- /* harmony default export */ var header = (header_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/aside/src/main.vue?vue&type=template&id=03411dbf&
- var mainvue_type_template_id_03411dbf_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "aside",
- { staticClass: "el-aside", style: { width: _vm.width } },
- [_vm._t("default")],
- 2
- )
- }
- var mainvue_type_template_id_03411dbf_staticRenderFns = []
- mainvue_type_template_id_03411dbf_render._withStripped = true
- // CONCATENATED MODULE: ./packages/aside/src/main.vue?vue&type=template&id=03411dbf&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/aside/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var aside_src_mainvue_type_script_lang_js_ = ({
- name: 'ElAside',
- componentName: 'ElAside',
- props: {
- width: {
- type: String,
- default: '300px'
- }
- }
- });
- // CONCATENATED MODULE: ./packages/aside/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_aside_src_mainvue_type_script_lang_js_ = (aside_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/aside/src/main.vue
- /* normalize component */
- var aside_src_main_component = normalizeComponent(
- packages_aside_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_03411dbf_render,
- mainvue_type_template_id_03411dbf_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var aside_src_main_api; }
- aside_src_main_component.options.__file = "packages/aside/src/main.vue"
- /* harmony default export */ var aside_src_main = (aside_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/aside/index.js
- /* istanbul ignore next */
- aside_src_main.install = function (Vue) {
- Vue.component(aside_src_main.name, aside_src_main);
- };
- /* harmony default export */ var aside = (aside_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/main.vue?vue&type=template&id=2a3a7406&
- var mainvue_type_template_id_2a3a7406_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("main", { staticClass: "el-main" }, [_vm._t("default")], 2)
- }
- var mainvue_type_template_id_2a3a7406_staticRenderFns = []
- mainvue_type_template_id_2a3a7406_render._withStripped = true
- // CONCATENATED MODULE: ./packages/main/src/main.vue?vue&type=template&id=2a3a7406&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var main_src_mainvue_type_script_lang_js_ = ({
- name: 'ElMain',
- componentName: 'ElMain'
- });
- // CONCATENATED MODULE: ./packages/main/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_main_src_mainvue_type_script_lang_js_ = (main_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/main/src/main.vue
- /* normalize component */
- var main_src_main_component = normalizeComponent(
- packages_main_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_2a3a7406_render,
- mainvue_type_template_id_2a3a7406_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var main_src_main_api; }
- main_src_main_component.options.__file = "packages/main/src/main.vue"
- /* harmony default export */ var main_src_main = (main_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/main/index.js
- /* istanbul ignore next */
- main_src_main.install = function (Vue) {
- Vue.component(main_src_main.name, main_src_main);
- };
- /* harmony default export */ var packages_main = (main_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/footer/src/main.vue?vue&type=template&id=80210338&
- var mainvue_type_template_id_80210338_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "footer",
- { staticClass: "el-footer", style: { height: _vm.height } },
- [_vm._t("default")],
- 2
- )
- }
- var mainvue_type_template_id_80210338_staticRenderFns = []
- mainvue_type_template_id_80210338_render._withStripped = true
- // CONCATENATED MODULE: ./packages/footer/src/main.vue?vue&type=template&id=80210338&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/footer/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var footer_src_mainvue_type_script_lang_js_ = ({
- name: 'ElFooter',
- componentName: 'ElFooter',
- props: {
- height: {
- type: String,
- default: '60px'
- }
- }
- });
- // CONCATENATED MODULE: ./packages/footer/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_footer_src_mainvue_type_script_lang_js_ = (footer_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/footer/src/main.vue
- /* normalize component */
- var footer_src_main_component = normalizeComponent(
- packages_footer_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_80210338_render,
- mainvue_type_template_id_80210338_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var footer_src_main_api; }
- footer_src_main_component.options.__file = "packages/footer/src/main.vue"
- /* harmony default export */ var footer_src_main = (footer_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/footer/index.js
- /* istanbul ignore next */
- footer_src_main.install = function (Vue) {
- Vue.component(footer_src_main.name, footer_src_main);
- };
- /* harmony default export */ var footer = (footer_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/timeline/src/main.vue?vue&type=template&id=ef070f04&
- var mainvue_type_template_id_ef070f04_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "ul",
- {
- staticClass: "el-timeline",
- class: {
- "is-reverse": _vm.reverse
- }
- },
- [_vm._t("default")],
- 2
- )
- }
- var mainvue_type_template_id_ef070f04_staticRenderFns = []
- mainvue_type_template_id_ef070f04_render._withStripped = true
- // CONCATENATED MODULE: ./packages/timeline/src/main.vue?vue&type=template&id=ef070f04&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/timeline/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var timeline_src_mainvue_type_script_lang_js_ = ({
- name: 'ElTimeline',
- props: {
- reverse: {
- type: Boolean,
- default: false
- }
- },
- provide: function provide() {
- return {
- timeline: this
- };
- },
- watch: {
- reverse: {
- handler: function handler(newVal) {
- if (newVal) {
- this.$slots.default = [].concat(this.$slots.default).reverse();
- }
- },
- immediate: true
- }
- }
- });
- // CONCATENATED MODULE: ./packages/timeline/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_timeline_src_mainvue_type_script_lang_js_ = (timeline_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/timeline/src/main.vue
- /* normalize component */
- var timeline_src_main_component = normalizeComponent(
- packages_timeline_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_ef070f04_render,
- mainvue_type_template_id_ef070f04_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var timeline_src_main_api; }
- timeline_src_main_component.options.__file = "packages/timeline/src/main.vue"
- /* harmony default export */ var timeline_src_main = (timeline_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/timeline/index.js
- /* istanbul ignore next */
- timeline_src_main.install = function (Vue) {
- Vue.component(timeline_src_main.name, timeline_src_main);
- };
- /* harmony default export */ var timeline = (timeline_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/timeline/src/item.vue?vue&type=template&id=61a69e50&
- var itemvue_type_template_id_61a69e50_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("li", { staticClass: "el-timeline-item" }, [
- _c("div", { staticClass: "el-timeline-item__tail" }),
- !_vm.$slots.dot
- ? _c(
- "div",
- {
- staticClass: "el-timeline-item__node",
- class: [
- "el-timeline-item__node--" + (_vm.size || ""),
- "el-timeline-item__node--" + (_vm.type || "")
- ],
- style: {
- backgroundColor: _vm.color
- }
- },
- [
- _vm.icon
- ? _c("i", {
- staticClass: "el-timeline-item__icon",
- class: _vm.icon
- })
- : _vm._e()
- ]
- )
- : _vm._e(),
- _vm.$slots.dot
- ? _c("div", { staticClass: "el-timeline-item__dot" }, [_vm._t("dot")], 2)
- : _vm._e(),
- _c("div", { staticClass: "el-timeline-item__wrapper" }, [
- !_vm.hideTimestamp && _vm.placement === "top"
- ? _c("div", { staticClass: "el-timeline-item__timestamp is-top" }, [
- _vm._v("\n " + _vm._s(_vm.timestamp) + "\n ")
- ])
- : _vm._e(),
- _c(
- "div",
- { staticClass: "el-timeline-item__content" },
- [_vm._t("default")],
- 2
- ),
- !_vm.hideTimestamp && _vm.placement === "bottom"
- ? _c("div", { staticClass: "el-timeline-item__timestamp is-bottom" }, [
- _vm._v("\n " + _vm._s(_vm.timestamp) + "\n ")
- ])
- : _vm._e()
- ])
- ])
- }
- var itemvue_type_template_id_61a69e50_staticRenderFns = []
- itemvue_type_template_id_61a69e50_render._withStripped = true
- // CONCATENATED MODULE: ./packages/timeline/src/item.vue?vue&type=template&id=61a69e50&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/timeline/src/item.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var timeline_src_itemvue_type_script_lang_js_ = ({
- name: 'ElTimelineItem',
- inject: ['timeline'],
- props: {
- timestamp: String,
- hideTimestamp: {
- type: Boolean,
- default: false
- },
- placement: {
- type: String,
- default: 'bottom'
- },
- type: String,
- color: String,
- size: {
- type: String,
- default: 'normal'
- },
- icon: String
- }
- });
- // CONCATENATED MODULE: ./packages/timeline/src/item.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_timeline_src_itemvue_type_script_lang_js_ = (timeline_src_itemvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/timeline/src/item.vue
- /* normalize component */
- var src_item_component = normalizeComponent(
- packages_timeline_src_itemvue_type_script_lang_js_,
- itemvue_type_template_id_61a69e50_render,
- itemvue_type_template_id_61a69e50_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_item_api; }
- src_item_component.options.__file = "packages/timeline/src/item.vue"
- /* harmony default export */ var timeline_src_item = (src_item_component.exports);
- // CONCATENATED MODULE: ./packages/timeline-item/index.js
- /* istanbul ignore next */
- timeline_src_item.install = function (Vue) {
- Vue.component(timeline_src_item.name, timeline_src_item);
- };
- /* harmony default export */ var timeline_item = (timeline_src_item);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/link/src/main.vue?vue&type=template&id=01cf3b65&
- var mainvue_type_template_id_01cf3b65_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "a",
- _vm._b(
- {
- class: [
- "el-link",
- _vm.type ? "el-link--" + _vm.type : "",
- _vm.disabled && "is-disabled",
- _vm.underline && !_vm.disabled && "is-underline"
- ],
- attrs: { href: _vm.href },
- on: { click: _vm.handleClick }
- },
- "a",
- _vm.$attrs,
- false
- ),
- [
- _vm.icon ? _c("el-icon", { class: _vm.icon }) : _vm._e(),
- _vm.$slots.default
- ? _c("span", { staticClass: "el-link--inner" }, [_vm._t("default")], 2)
- : _vm._e(),
- _vm.$slots.icon ? [_vm.$slots.icon ? _vm._t("icon") : _vm._e()] : _vm._e()
- ],
- 2
- )
- }
- var mainvue_type_template_id_01cf3b65_staticRenderFns = []
- mainvue_type_template_id_01cf3b65_render._withStripped = true
- // CONCATENATED MODULE: ./packages/link/src/main.vue?vue&type=template&id=01cf3b65&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/link/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var link_src_mainvue_type_script_lang_js_ = ({
- name: 'ElLink',
- props: {
- type: {
- type: String,
- default: 'default'
- },
- underline: {
- type: Boolean,
- default: true
- },
- disabled: Boolean,
- href: String,
- icon: String
- },
- methods: {
- handleClick: function handleClick(event) {
- if (!this.disabled) {
- if (!this.href) {
- this.$emit('click', event);
- }
- }
- }
- }
- });
- // CONCATENATED MODULE: ./packages/link/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_link_src_mainvue_type_script_lang_js_ = (link_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/link/src/main.vue
- /* normalize component */
- var link_src_main_component = normalizeComponent(
- packages_link_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_01cf3b65_render,
- mainvue_type_template_id_01cf3b65_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var link_src_main_api; }
- link_src_main_component.options.__file = "packages/link/src/main.vue"
- /* harmony default export */ var link_src_main = (link_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/link/index.js
- /* istanbul ignore next */
- link_src_main.install = function (Vue) {
- Vue.component(link_src_main.name, link_src_main);
- };
- /* harmony default export */ var packages_link = (link_src_main);
- // CONCATENATED MODULE: ./packages/divider/src/main.js
- /* harmony default export */ var divider_src_main = ({
- functional: true,
- name: 'ElDivider',
- props: {
- direction: {
- type: String,
- default: 'horizontal',
- validator: function validator(val) {
- return ['horizontal', 'vertical'].indexOf(val) !== -1;
- }
- },
- contentPosition: {
- type: String,
- default: 'center',
- validator: function validator(val) {
- return ['left', 'center', 'right'].indexOf(val) !== -1;
- }
- }
- },
- render: function render(h, context) {
- var $slots = context.slots();
- var _context$props = context.props,
- direction = _context$props.direction,
- contentPosition = _context$props.contentPosition;
- return h(
- 'div',
- { 'class': ['el-divider', 'el-divider--' + direction] },
- [$slots.default && direction !== 'vertical' ? h(
- 'div',
- { 'class': ['el-divider__text', 'is-' + contentPosition] },
- [$slots.default]
- ) : null]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/divider/index.js
- /* istanbul ignore next */
- divider_src_main.install = function (Vue) {
- Vue.component(divider_src_main.name, divider_src_main);
- };
- /* harmony default export */ var divider = (divider_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/image/src/main.vue?vue&type=template&id=44d84a7c&
- var mainvue_type_template_id_44d84a7c_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- { staticClass: "el-image" },
- [
- _vm.loading
- ? _vm._t("placeholder", [
- _c("div", { staticClass: "el-image__placeholder" })
- ])
- : _vm.error
- ? _vm._t("error", [
- _c("div", { staticClass: "el-image__error" }, [
- _vm._v(_vm._s(_vm.t("el.image.error")))
- ])
- ])
- : _c("img", {
- staticClass: "el-image__inner",
- style: { "object-fit": _vm.fit },
- attrs: { src: _vm.src, alt: _vm.alt }
- })
- ],
- 2
- )
- }
- var mainvue_type_template_id_44d84a7c_staticRenderFns = []
- mainvue_type_template_id_44d84a7c_render._withStripped = true
- // CONCATENATED MODULE: ./packages/image/src/main.vue?vue&type=template&id=44d84a7c&
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/image/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ var image_src_mainvue_type_script_lang_js_ = ({
- name: 'ElImage',
- mixins: [locale_default.a],
- props: {
- src: String,
- fit: String,
- lazy: Boolean,
- scrollContainer: [String, HTMLElement],
- alt: String
- },
- data: function data() {
- return {
- loading: true,
- error: false,
- show: !this.lazy
- };
- },
- watch: {
- src: {
- handler: function handler(val) {
- this.show && this.loadImage(val);
- },
- immediate: true
- },
- show: function show(val) {
- val && this.loadImage(this.src);
- }
- },
- mounted: function mounted() {
- this.lazy && this.addLazyLoadListener();
- },
- beforeDestroy: function beforeDestroy() {
- this.lazy && this.removeLazyLoadListener();
- },
- methods: {
- loadImage: function loadImage(val) {
- // reset status
- this.loading = true;
- this.error = false;
- var img = new Image();
- img.onload = this.handleLoad.bind(this);
- img.onerror = this.handleError.bind(this);
- img.src = val;
- },
- handleLoad: function handleLoad(e) {
- this.loading = false;
- this.$emit('load', e);
- },
- handleError: function handleError(e) {
- this.loading = false;
- this.error = true;
- this.$emit('error', e);
- },
- handleLazyLoad: function handleLazyLoad() {
- if (Object(dom_["isInContainer"])(this.$el, this._scrollContainer)) {
- this.show = true;
- this.removeLazyLoadListener();
- }
- },
- addLazyLoadListener: function addLazyLoadListener() {
- if (this.$isServer) return;
- var scrollContainer = this.scrollContainer;
- var _scrollContainer = null;
- if (Object(types_["isHtmlElement"])(scrollContainer)) {
- _scrollContainer = scrollContainer;
- } else if (Object(types_["isString"])(scrollContainer)) {
- _scrollContainer = document.querySelector(scrollContainer);
- } else {
- _scrollContainer = Object(dom_["getScrollContainer"])(this.$el);
- }
- if (_scrollContainer) {
- this._scrollContainer = _scrollContainer;
- this._lazyLoadHandler = throttle_default()(200, this.handleLazyLoad);
- Object(dom_["on"])(_scrollContainer, 'scroll', this._lazyLoadHandler);
- this.handleLazyLoad();
- }
- },
- removeLazyLoadListener: function removeLazyLoadListener() {
- var _scrollContainer = this._scrollContainer,
- _lazyLoadHandler = this._lazyLoadHandler;
- if (this.$isServer || !_scrollContainer || !_lazyLoadHandler) return;
- Object(dom_["off"])(_scrollContainer, 'scroll', _lazyLoadHandler);
- this._scrollContainer = null;
- this._lazyLoadHandler = null;
- }
- }
- });
- // CONCATENATED MODULE: ./packages/image/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_image_src_mainvue_type_script_lang_js_ = (image_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/image/src/main.vue
- /* normalize component */
- var image_src_main_component = normalizeComponent(
- packages_image_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_44d84a7c_render,
- mainvue_type_template_id_44d84a7c_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var image_src_main_api; }
- image_src_main_component.options.__file = "packages/image/src/main.vue"
- /* harmony default export */ var image_src_main = (image_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/image/index.js
- /* istanbul ignore next */
- image_src_main.install = function (Vue) {
- Vue.component(image_src_main.name, image_src_main);
- };
- /* harmony default export */ var packages_image = (image_src_main);
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/calendar/src/main.vue?vue&type=template&id=6d9756be&
- var mainvue_type_template_id_6d9756be_render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("div", { staticClass: "el-calendar" }, [
- _c("div", { staticClass: "el-calendar__header" }, [
- _c("div", { staticClass: "el-calendar__title" }, [
- _vm._v("\n " + _vm._s(_vm.i18nDate) + "\n ")
- ]),
- _vm.validatedRange.length === 0
- ? _c(
- "div",
- { staticClass: "el-calendar__button-group" },
- [
- _c(
- "el-button-group",
- [
- _c(
- "el-button",
- {
- attrs: { type: "plain", size: "mini" },
- on: {
- click: function($event) {
- _vm.selectDate("prev-month")
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.prevMonth")) +
- "\n "
- )
- ]
- ),
- _c(
- "el-button",
- {
- attrs: { type: "plain", size: "mini" },
- on: {
- click: function($event) {
- _vm.selectDate("today")
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.today")) +
- "\n "
- )
- ]
- ),
- _c(
- "el-button",
- {
- attrs: { type: "plain", size: "mini" },
- on: {
- click: function($event) {
- _vm.selectDate("next-month")
- }
- }
- },
- [
- _vm._v(
- "\n " +
- _vm._s(_vm.t("el.datepicker.nextMonth")) +
- "\n "
- )
- ]
- )
- ],
- 1
- )
- ],
- 1
- )
- : _vm._e()
- ]),
- _vm.validatedRange.length === 0
- ? _c(
- "div",
- { key: "no-range", staticClass: "el-calendar__body" },
- [
- _c("date-table", {
- attrs: { date: _vm.date, "selected-day": _vm.realSelectedDay },
- on: { pick: _vm.pickDay }
- })
- ],
- 1
- )
- : _c(
- "div",
- { key: "has-range", staticClass: "el-calendar__body" },
- _vm._l(_vm.validatedRange, function(range, index) {
- return _c("date-table", {
- key: index,
- attrs: {
- date: range[0],
- "selected-day": _vm.realSelectedDay,
- range: range,
- "hide-header": index !== 0
- },
- on: { pick: _vm.pickDay }
- })
- }),
- 1
- )
- ])
- }
- var mainvue_type_template_id_6d9756be_staticRenderFns = []
- mainvue_type_template_id_6d9756be_render._withStripped = true
- // CONCATENATED MODULE: ./packages/calendar/src/main.vue?vue&type=template&id=6d9756be&
- // EXTERNAL MODULE: external "element-ui/lib/utils/date"
- var date_ = __webpack_require__(17);
- var date_default = /*#__PURE__*/__webpack_require__.n(date_);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/calendar/src/date-table.vue?vue&type=script&lang=js&
- /* harmony default export */ var src_date_tablevue_type_script_lang_js_ = ({
- props: {
- selectedDay: String, // formated date yyyy-MM-dd
- range: {
- type: Array,
- validator: function validator(val) {
- if (!(val && val.length)) return true;
- var start = val[0],
- end = val[1];
- return Object(date_util_["validateRangeInOneMonth"])(start, end);
- }
- },
- date: Date,
- hideHeader: Boolean
- },
- inject: ['elCalendar'],
- methods: {
- toNestedArr: function toNestedArr(days) {
- return Object(date_util_["range"])(days.length / 7).map(function (_, index) {
- var start = index * 7;
- return days.slice(start, start + 7);
- });
- },
- getFormateDate: function getFormateDate(day, type) {
- if (!day || ['prev', 'current', 'next'].indexOf(type) === -1) {
- throw new Error('invalid day or type');
- }
- var prefix = this.curMonthDatePrefix;
- if (type === 'prev') {
- prefix = this.prevMonthDatePrefix;
- } else if (type === 'next') {
- prefix = this.nextMonthDatePrefix;
- }
- day = ('00' + day).slice(-2);
- return prefix + '-' + day;
- },
- getCellClass: function getCellClass(_ref) {
- var text = _ref.text,
- type = _ref.type;
- var classes = [type];
- if (type === 'current') {
- var date = this.getFormateDate(text, type);
- if (date === this.selectedDay) {
- classes.push('is-selected');
- }
- if (date === this.formatedToday) {
- classes.push('is-today');
- }
- }
- return classes;
- },
- pickDay: function pickDay(_ref2) {
- var text = _ref2.text,
- type = _ref2.type;
- var date = this.getFormateDate(text, type);
- this.$emit('pick', date);
- },
- cellRenderProxy: function cellRenderProxy(_ref3) {
- var text = _ref3.text,
- type = _ref3.type;
- var h = this.$createElement;
- var render = this.elCalendar.$scopedSlots.dateCell;
- if (!render) return h('span', [text]);
- var day = this.getFormateDate(text, type);
- var date = new Date(day);
- var data = {
- isSelected: this.selectedDay === day,
- type: type + '-month',
- day: day
- };
- return render({ date: date, data: data });
- }
- },
- computed: {
- prevMonthDatePrefix: function prevMonthDatePrefix() {
- var temp = new Date(this.date.getTime());
- temp.setDate(0);
- return date_default.a.format(temp, 'yyyy-MM');
- },
- curMonthDatePrefix: function curMonthDatePrefix() {
- return date_default.a.format(this.date, 'yyyy-MM');
- },
- nextMonthDatePrefix: function nextMonthDatePrefix() {
- var temp = new Date(this.date.getFullYear(), this.date.getMonth() + 1, 1);
- return date_default.a.format(temp, 'yyyy-MM');
- },
- formatedToday: function formatedToday() {
- return this.elCalendar.formatedToday;
- },
- isInRange: function isInRange() {
- return this.range && this.range.length;
- },
- rows: function rows() {
- var days = [];
- // if range exists, should render days in range.
- if (this.isInRange) {
- var _range = this.range,
- start = _range[0],
- end = _range[1];
- var currentMonthRange = Object(date_util_["range"])(end.getDate() - start.getDate() + 1).map(function (_, index) {
- return {
- text: start.getDate() + index,
- type: 'current'
- };
- });
- var remaining = currentMonthRange.length % 7;
- remaining = remaining === 0 ? 0 : 7 - remaining;
- var nextMonthRange = Object(date_util_["range"])(remaining).map(function (_, index) {
- return {
- text: index + 1,
- type: 'next'
- };
- });
- days = currentMonthRange.concat(nextMonthRange);
- } else {
- var date = this.date;
- var firstDay = Object(date_util_["getFirstDayOfMonth"])(date);
- var prevMonthDays = Object(date_util_["getPrevMonthLastDays"])(date, firstDay - 1).map(function (day) {
- return {
- text: day,
- type: 'prev'
- };
- });
- var currentMonthDays = Object(date_util_["getMonthDays"])(date).map(function (day) {
- return {
- text: day,
- type: 'current'
- };
- });
- days = [].concat(prevMonthDays, currentMonthDays);
- var nextMonthDays = Object(date_util_["range"])(42 - days.length).map(function (_, index) {
- return {
- text: index + 1,
- type: 'next'
- };
- });
- days = days.concat(nextMonthDays);
- }
- return this.toNestedArr(days);
- }
- },
- data: function data() {
- var dayNames = Object(date_util_["getI18nSettings"])().dayNames;
- return {
- DAYS: dayNames.slice(1).concat(dayNames[0])
- };
- },
- render: function render() {
- var _this = this;
- var h = arguments[0];
- var thead = this.hideHeader ? null : h('thead', [this.DAYS.map(function (day) {
- return h(
- 'th',
- { key: day },
- [day]
- );
- })]);
- return h(
- 'table',
- {
- 'class': {
- 'el-calendar-table': true,
- 'is-range': this.isInRange
- },
- attrs: { cellspacing: '0',
- cellpadding: '0' }
- },
- [thead, h('tbody', [this.rows.map(function (row, index) {
- return h(
- 'tr',
- {
- 'class': {
- 'el-calendar-table__row': true,
- 'el-calendar-table__row--hide-border': index === 0 && _this.hideHeader
- },
- key: index },
- [row.map(function (cell, key) {
- return h(
- 'td',
- { key: key,
- 'class': _this.getCellClass(cell),
- on: {
- 'click': _this.pickDay.bind(_this, cell)
- }
- },
- [h(
- 'div',
- { 'class': 'el-calendar-day' },
- [_this.cellRenderProxy(cell)]
- )]
- );
- })]
- );
- })])]
- );
- }
- });
- // CONCATENATED MODULE: ./packages/calendar/src/date-table.vue?vue&type=script&lang=js&
- /* harmony default export */ var calendar_src_date_tablevue_type_script_lang_js_ = (src_date_tablevue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/calendar/src/date-table.vue
- var date_table_render, date_table_staticRenderFns
- /* normalize component */
- var src_date_table_component = normalizeComponent(
- calendar_src_date_tablevue_type_script_lang_js_,
- date_table_render,
- date_table_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var src_date_table_api; }
- src_date_table_component.options.__file = "packages/calendar/src/date-table.vue"
- /* harmony default export */ var src_date_table = (src_date_table_component.exports);
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/calendar/src/main.vue?vue&type=script&lang=js&
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var validTypes = ['prev-month', 'today', 'next-month'];
- var oneDay = 86400000;
- /* harmony default export */ var calendar_src_mainvue_type_script_lang_js_ = ({
- name: 'ElCalendar',
- mixins: [locale_default.a],
- components: {
- DateTable: src_date_table
- },
- props: {
- value: [Date, String, Number],
- range: {
- type: Array,
- validator: function validator(range) {
- if (Array.isArray(range)) {
- return range.length === 2 && range.every(function (item) {
- return typeof item === 'string' || typeof item === 'number' || item instanceof Date;
- });
- } else {
- return true;
- }
- }
- }
- },
- provide: function provide() {
- return {
- elCalendar: this
- };
- },
- methods: {
- pickDay: function pickDay(day) {
- this.realSelectedDay = day;
- },
- selectDate: function selectDate(type) {
- if (validTypes.indexOf(type) === -1) {
- throw new Error('invalid type ' + type);
- }
- var day = '';
- if (type === 'prev-month') {
- day = this.prevMonthDatePrefix + '-01';
- } else if (type === 'next-month') {
- day = this.nextMonthDatePrefix + '-01';
- } else {
- day = this.formatedToday;
- }
- if (day === this.formatedDate) return;
- this.pickDay(day);
- },
- toDate: function toDate(val) {
- if (!val) {
- throw new Error('invalid val');
- }
- return val instanceof Date ? val : new Date(val);
- }
- },
- computed: {
- prevMonthDatePrefix: function prevMonthDatePrefix() {
- var temp = new Date(this.date.getTime());
- temp.setDate(0);
- return date_default.a.format(temp, 'yyyy-MM');
- },
- curMonthDatePrefix: function curMonthDatePrefix() {
- return date_default.a.format(this.date, 'yyyy-MM');
- },
- nextMonthDatePrefix: function nextMonthDatePrefix() {
- var temp = new Date(this.date.getFullYear(), this.date.getMonth() + 1, 1);
- return date_default.a.format(temp, 'yyyy-MM');
- },
- formatedDate: function formatedDate() {
- return date_default.a.format(this.date, 'yyyy-MM-dd');
- },
- i18nDate: function i18nDate() {
- var year = this.formatedDate.slice(0, 4);
- var month = this.formatedDate.slice(5, 7).replace('0', '');
- return year + ' ' + this.t('el.datepicker.year') + ' ' + this.t('el.datepicker.month' + month);
- },
- formatedToday: function formatedToday() {
- return date_default.a.format(this.now, 'yyyy-MM-dd');
- },
- realSelectedDay: {
- get: function get() {
- if (!this.value) return this.selectedDay;
- return this.formatedDate;
- },
- set: function set(val) {
- this.selectedDay = val;
- var date = new Date(val);
- this.$emit('input', date);
- }
- },
- date: function date() {
- if (!this.value) {
- if (this.realSelectedDay) {
- return new Date(this.selectedDay);
- } else if (this.validatedRange.length) {
- return this.validatedRange[0][0];
- }
- return this.now;
- } else {
- return this.toDate(this.value);
- }
- },
- // if range is valid, we get a two-digit array
- validatedRange: function validatedRange() {
- var _this = this;
- var range = this.range;
- if (!range) return [];
- var expetedMap = {
- 0: {
- value: 1,
- message: 'start of range should be Monday.'
- },
- 1: {
- value: 0,
- message: 'end of range should be Sunday.'
- }
- };
- range = range.reduce(function (prev, val, index) {
- var date = _this.toDate(val);
- if (date.getDay() !== expetedMap[index].value) {
- console.warn('[ElementCalendar]', expetedMap[index].message, ' invalid range will be ignored');
- } else {
- prev = prev.concat(date);
- }
- return prev;
- }, []);
- if (range.length === 2) {
- var _range = range,
- start = _range[0],
- end = _range[1];
- if (start > end) {
- console.warn('[ElementCalendar]end time should be greater than start time');
- return [];
- }
- // start time and end time in one month
- if (Object(date_util_["validateRangeInOneMonth"])(start, end)) {
- return [[start, end]];
- }
- var data = [];
- var startDay = new Date(start.getFullYear(), start.getMonth() + 1, 1);
- var lastDay = this.toDate(startDay.getTime() - oneDay);
- if (!Object(date_util_["validateRangeInOneMonth"])(startDay, end)) {
- console.warn('[ElementCalendar]start time and end time interval must not exceed two months');
- return [];
- }
- data.push([start, lastDay]);
- var interval = startDay.getDay();
- interval = interval <= 1 ? Math.abs(interval - 1) : 8 - interval;
- startDay = this.toDate(startDay.getTime() + interval * oneDay);
- if (startDay.getDate() < end.getDate()) {
- data.push([startDay, end]);
- }
- return data;
- }
- return [];
- }
- },
- data: function data() {
- return {
- selectedDay: '',
- now: new Date()
- };
- }
- });
- // CONCATENATED MODULE: ./packages/calendar/src/main.vue?vue&type=script&lang=js&
- /* harmony default export */ var packages_calendar_src_mainvue_type_script_lang_js_ = (calendar_src_mainvue_type_script_lang_js_);
- // CONCATENATED MODULE: ./packages/calendar/src/main.vue
- /* normalize component */
- var calendar_src_main_component = normalizeComponent(
- packages_calendar_src_mainvue_type_script_lang_js_,
- mainvue_type_template_id_6d9756be_render,
- mainvue_type_template_id_6d9756be_staticRenderFns,
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var calendar_src_main_api; }
- calendar_src_main_component.options.__file = "packages/calendar/src/main.vue"
- /* harmony default export */ var calendar_src_main = (calendar_src_main_component.exports);
- // CONCATENATED MODULE: ./packages/calendar/index.js
- /* istanbul ignore next */
- calendar_src_main.install = function (Vue) {
- Vue.component(calendar_src_main.name, calendar_src_main);
- };
- /* harmony default export */ var calendar = (calendar_src_main);
- // CONCATENATED MODULE: ./src/index.js
- /* Automatically generated by './build/bin/build-entry.js' */
- var components = [packages_pagination, dialog, packages_autocomplete, packages_dropdown, packages_dropdown_menu, packages_dropdown_item, packages_menu, packages_submenu, packages_menu_item, packages_menu_item_group, packages_input, packages_input_number, packages_radio, packages_radio_group, packages_radio_button, packages_checkbox, packages_checkbox_button, packages_checkbox_group, packages_switch, packages_select, packages_option, packages_option_group, packages_button, packages_button_group, packages_table, packages_table_column, packages_date_picker, packages_time_select, packages_time_picker, popover, packages_tooltip, packages_breadcrumb, packages_breadcrumb_item, packages_form, packages_form_item, packages_tabs, packages_tab_pane, packages_tag, packages_tree, packages_alert, slider, packages_icon, packages_row, packages_col, packages_upload, packages_progress, packages_spinner, badge, card, rate, packages_steps, packages_step, carousel, scrollbar, carousel_item, packages_collapse, packages_collapse_item, cascader, color_picker, transfer, container, header, aside, packages_main, footer, timeline, timeline_item, packages_link, divider, packages_image, calendar, collapse_transition_default.a];
- var src_install = function install(Vue) {
- var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- lib_locale_default.a.use(opts.locale);
- lib_locale_default.a.i18n(opts.i18n);
- components.forEach(function (component) {
- Vue.component(component.name, component);
- });
- Vue.use(packages_loading.directive);
- Vue.prototype.$ELEMENT = {
- size: opts.size || '',
- zIndex: opts.zIndex || 2000
- };
- Vue.prototype.$loading = packages_loading.service;
- Vue.prototype.$msgbox = message_box;
- Vue.prototype.$alert = message_box.alert;
- Vue.prototype.$confirm = message_box.confirm;
- Vue.prototype.$prompt = message_box.prompt;
- Vue.prototype.$notify = notification;
- Vue.prototype.$message = packages_message;
- };
- /* istanbul ignore if */
- if (typeof window !== 'undefined' && window.Vue) {
- src_install(window.Vue);
- }
- /* harmony default export */ var src_0 = __webpack_exports__["default"] = ({
- version: '2.8.2',
- locale: lib_locale_default.a.use,
- i18n: lib_locale_default.a.i18n,
- install: src_install,
- CollapseTransition: collapse_transition_default.a,
- Loading: packages_loading,
- Pagination: packages_pagination,
- Dialog: dialog,
- Autocomplete: packages_autocomplete,
- Dropdown: packages_dropdown,
- DropdownMenu: packages_dropdown_menu,
- DropdownItem: packages_dropdown_item,
- Menu: packages_menu,
- Submenu: packages_submenu,
- MenuItem: packages_menu_item,
- MenuItemGroup: packages_menu_item_group,
- Input: packages_input,
- InputNumber: packages_input_number,
- Radio: packages_radio,
- RadioGroup: packages_radio_group,
- RadioButton: packages_radio_button,
- Checkbox: packages_checkbox,
- CheckboxButton: packages_checkbox_button,
- CheckboxGroup: packages_checkbox_group,
- Switch: packages_switch,
- Select: packages_select,
- Option: packages_option,
- OptionGroup: packages_option_group,
- Button: packages_button,
- ButtonGroup: packages_button_group,
- Table: packages_table,
- TableColumn: packages_table_column,
- DatePicker: packages_date_picker,
- TimeSelect: packages_time_select,
- TimePicker: packages_time_picker,
- Popover: popover,
- Tooltip: packages_tooltip,
- MessageBox: message_box,
- Breadcrumb: packages_breadcrumb,
- BreadcrumbItem: packages_breadcrumb_item,
- Form: packages_form,
- FormItem: packages_form_item,
- Tabs: packages_tabs,
- TabPane: packages_tab_pane,
- Tag: packages_tag,
- Tree: packages_tree,
- Alert: packages_alert,
- Notification: notification,
- Slider: slider,
- Icon: packages_icon,
- Row: packages_row,
- Col: packages_col,
- Upload: packages_upload,
- Progress: packages_progress,
- Spinner: packages_spinner,
- Message: packages_message,
- Badge: badge,
- Card: card,
- Rate: rate,
- Steps: packages_steps,
- Step: packages_step,
- Carousel: carousel,
- Scrollbar: scrollbar,
- CarouselItem: carousel_item,
- Collapse: packages_collapse,
- CollapseItem: packages_collapse_item,
- Cascader: cascader,
- ColorPicker: color_picker,
- Transfer: transfer,
- Container: container,
- Header: header,
- Aside: aside,
- Main: packages_main,
- Footer: footer,
- Timeline: timeline,
- TimelineItem: timeline_item,
- Link: packages_link,
- Divider: divider,
- Image: packages_image,
- Calendar: calendar
- });
- /***/ })
- /******/ ])["default"];
|