vendor.js 603 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102
  1. (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/vendor"],[
  2. /* 0 */,
  3. /* 1 */
  4. /*!*********************************************************!*\
  5. !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js ***!
  6. \*********************************************************/
  7. /*! no static exports found */
  8. /***/ (function(module, exports, __webpack_require__) {
  9. "use strict";
  10. Object.defineProperty(exports, "__esModule", {
  11. value: true
  12. });
  13. exports.default = void 0;
  14. var objectKeys = ['qy', 'env', 'error', 'version', 'lanDebug', 'cloud', 'serviceMarket', 'router', 'worklet', '__webpack_require_UNI_MP_PLUGIN__'];
  15. var singlePageDisableKey = ['lanDebug', 'router', 'worklet'];
  16. var target = typeof globalThis !== 'undefined' ? globalThis : function () {
  17. return this;
  18. }();
  19. var key = ['w', 'x'].join('');
  20. var oldWx = target[key];
  21. var launchOption = oldWx.getLaunchOptionsSync ? oldWx.getLaunchOptionsSync() : null;
  22. function isWxKey(key) {
  23. if (launchOption && launchOption.scene === 1154 && singlePageDisableKey.includes(key)) {
  24. return false;
  25. }
  26. return objectKeys.indexOf(key) > -1 || typeof oldWx[key] === 'function';
  27. }
  28. function initWx() {
  29. var newWx = {};
  30. for (var _key in oldWx) {
  31. if (isWxKey(_key)) {
  32. // TODO wrapper function
  33. newWx[_key] = oldWx[_key];
  34. }
  35. }
  36. return newWx;
  37. }
  38. target[key] = initWx();
  39. var _default = target[key];
  40. exports.default = _default;
  41. /***/ }),
  42. /* 2 */
  43. /*!************************************************************!*\
  44. !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js ***!
  45. \************************************************************/
  46. /*! no static exports found */
  47. /***/ (function(module, exports, __webpack_require__) {
  48. "use strict";
  49. /* WEBPACK VAR INJECTION */(function(wx, global) {
  50. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  51. Object.defineProperty(exports, "__esModule", {
  52. value: true
  53. });
  54. exports.createApp = createApp;
  55. exports.createComponent = createComponent;
  56. exports.createPage = createPage;
  57. exports.createPlugin = createPlugin;
  58. exports.createSubpackageApp = createSubpackageApp;
  59. exports.default = void 0;
  60. var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 5));
  61. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  62. var _construct2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/construct */ 15));
  63. var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
  64. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  65. var _uniI18n = __webpack_require__(/*! @dcloudio/uni-i18n */ 22);
  66. var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 25));
  67. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  68. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  69. var realAtob;
  70. var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
  71. var b64re = /^(?:[A-Za-z\d+/]{4})*?(?:[A-Za-z\d+/]{2}(?:==)?|[A-Za-z\d+/]{3}=?)?$/;
  72. if (typeof atob !== 'function') {
  73. realAtob = function realAtob(str) {
  74. str = String(str).replace(/[\t\n\f\r ]+/g, '');
  75. if (!b64re.test(str)) {
  76. throw new Error("Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.");
  77. }
  78. // Adding the padding if missing, for semplicity
  79. str += '=='.slice(2 - (str.length & 3));
  80. var bitmap;
  81. var result = '';
  82. var r1;
  83. var r2;
  84. var i = 0;
  85. for (; i < str.length;) {
  86. bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 | (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));
  87. result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255) : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255) : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);
  88. }
  89. return result;
  90. };
  91. } else {
  92. // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法
  93. realAtob = atob;
  94. }
  95. function b64DecodeUnicode(str) {
  96. return decodeURIComponent(realAtob(str).split('').map(function (c) {
  97. return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
  98. }).join(''));
  99. }
  100. function getCurrentUserInfo() {
  101. var token = wx.getStorageSync('uni_id_token') || '';
  102. var tokenArr = token.split('.');
  103. if (!token || tokenArr.length !== 3) {
  104. return {
  105. uid: null,
  106. role: [],
  107. permission: [],
  108. tokenExpired: 0
  109. };
  110. }
  111. var userInfo;
  112. try {
  113. userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));
  114. } catch (error) {
  115. throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message);
  116. }
  117. userInfo.tokenExpired = userInfo.exp * 1000;
  118. delete userInfo.exp;
  119. delete userInfo.iat;
  120. return userInfo;
  121. }
  122. function uniIdMixin(Vue) {
  123. Vue.prototype.uniIDHasRole = function (roleId) {
  124. var _getCurrentUserInfo = getCurrentUserInfo(),
  125. role = _getCurrentUserInfo.role;
  126. return role.indexOf(roleId) > -1;
  127. };
  128. Vue.prototype.uniIDHasPermission = function (permissionId) {
  129. var _getCurrentUserInfo2 = getCurrentUserInfo(),
  130. permission = _getCurrentUserInfo2.permission;
  131. return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1;
  132. };
  133. Vue.prototype.uniIDTokenValid = function () {
  134. var _getCurrentUserInfo3 = getCurrentUserInfo(),
  135. tokenExpired = _getCurrentUserInfo3.tokenExpired;
  136. return tokenExpired > Date.now();
  137. };
  138. }
  139. var _toString = Object.prototype.toString;
  140. var hasOwnProperty = Object.prototype.hasOwnProperty;
  141. function isFn(fn) {
  142. return typeof fn === 'function';
  143. }
  144. function isStr(str) {
  145. return typeof str === 'string';
  146. }
  147. function isObject(obj) {
  148. return obj !== null && (0, _typeof2.default)(obj) === 'object';
  149. }
  150. function isPlainObject(obj) {
  151. return _toString.call(obj) === '[object Object]';
  152. }
  153. function hasOwn(obj, key) {
  154. return hasOwnProperty.call(obj, key);
  155. }
  156. function noop() {}
  157. /**
  158. * Create a cached version of a pure function.
  159. */
  160. function cached(fn) {
  161. var cache = Object.create(null);
  162. return function cachedFn(str) {
  163. var hit = cache[str];
  164. return hit || (cache[str] = fn(str));
  165. };
  166. }
  167. /**
  168. * Camelize a hyphen-delimited string.
  169. */
  170. var camelizeRE = /-(\w)/g;
  171. var camelize = cached(function (str) {
  172. return str.replace(camelizeRE, function (_, c) {
  173. return c ? c.toUpperCase() : '';
  174. });
  175. });
  176. function sortObject(obj) {
  177. var sortObj = {};
  178. if (isPlainObject(obj)) {
  179. Object.keys(obj).sort().forEach(function (key) {
  180. sortObj[key] = obj[key];
  181. });
  182. }
  183. return !Object.keys(sortObj) ? obj : sortObj;
  184. }
  185. var HOOKS = ['invoke', 'success', 'fail', 'complete', 'returnValue'];
  186. var globalInterceptors = {};
  187. var scopedInterceptors = {};
  188. function mergeHook(parentVal, childVal) {
  189. var res = childVal ? parentVal ? parentVal.concat(childVal) : Array.isArray(childVal) ? childVal : [childVal] : parentVal;
  190. return res ? dedupeHooks(res) : res;
  191. }
  192. function dedupeHooks(hooks) {
  193. var res = [];
  194. for (var i = 0; i < hooks.length; i++) {
  195. if (res.indexOf(hooks[i]) === -1) {
  196. res.push(hooks[i]);
  197. }
  198. }
  199. return res;
  200. }
  201. function removeHook(hooks, hook) {
  202. var index = hooks.indexOf(hook);
  203. if (index !== -1) {
  204. hooks.splice(index, 1);
  205. }
  206. }
  207. function mergeInterceptorHook(interceptor, option) {
  208. Object.keys(option).forEach(function (hook) {
  209. if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
  210. interceptor[hook] = mergeHook(interceptor[hook], option[hook]);
  211. }
  212. });
  213. }
  214. function removeInterceptorHook(interceptor, option) {
  215. if (!interceptor || !option) {
  216. return;
  217. }
  218. Object.keys(option).forEach(function (hook) {
  219. if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
  220. removeHook(interceptor[hook], option[hook]);
  221. }
  222. });
  223. }
  224. function addInterceptor(method, option) {
  225. if (typeof method === 'string' && isPlainObject(option)) {
  226. mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);
  227. } else if (isPlainObject(method)) {
  228. mergeInterceptorHook(globalInterceptors, method);
  229. }
  230. }
  231. function removeInterceptor(method, option) {
  232. if (typeof method === 'string') {
  233. if (isPlainObject(option)) {
  234. removeInterceptorHook(scopedInterceptors[method], option);
  235. } else {
  236. delete scopedInterceptors[method];
  237. }
  238. } else if (isPlainObject(method)) {
  239. removeInterceptorHook(globalInterceptors, method);
  240. }
  241. }
  242. function wrapperHook(hook, params) {
  243. return function (data) {
  244. return hook(data, params) || data;
  245. };
  246. }
  247. function isPromise(obj) {
  248. return !!obj && ((0, _typeof2.default)(obj) === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
  249. }
  250. function queue(hooks, data, params) {
  251. var promise = false;
  252. for (var i = 0; i < hooks.length; i++) {
  253. var hook = hooks[i];
  254. if (promise) {
  255. promise = Promise.resolve(wrapperHook(hook, params));
  256. } else {
  257. var res = hook(data, params);
  258. if (isPromise(res)) {
  259. promise = Promise.resolve(res);
  260. }
  261. if (res === false) {
  262. return {
  263. then: function then() {}
  264. };
  265. }
  266. }
  267. }
  268. return promise || {
  269. then: function then(callback) {
  270. return callback(data);
  271. }
  272. };
  273. }
  274. function wrapperOptions(interceptor) {
  275. var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  276. ['success', 'fail', 'complete'].forEach(function (name) {
  277. if (Array.isArray(interceptor[name])) {
  278. var oldCallback = options[name];
  279. options[name] = function callbackInterceptor(res) {
  280. queue(interceptor[name], res, options).then(function (res) {
  281. /* eslint-disable no-mixed-operators */
  282. return isFn(oldCallback) && oldCallback(res) || res;
  283. });
  284. };
  285. }
  286. });
  287. return options;
  288. }
  289. function wrapperReturnValue(method, returnValue) {
  290. var returnValueHooks = [];
  291. if (Array.isArray(globalInterceptors.returnValue)) {
  292. returnValueHooks.push.apply(returnValueHooks, (0, _toConsumableArray2.default)(globalInterceptors.returnValue));
  293. }
  294. var interceptor = scopedInterceptors[method];
  295. if (interceptor && Array.isArray(interceptor.returnValue)) {
  296. returnValueHooks.push.apply(returnValueHooks, (0, _toConsumableArray2.default)(interceptor.returnValue));
  297. }
  298. returnValueHooks.forEach(function (hook) {
  299. returnValue = hook(returnValue) || returnValue;
  300. });
  301. return returnValue;
  302. }
  303. function getApiInterceptorHooks(method) {
  304. var interceptor = Object.create(null);
  305. Object.keys(globalInterceptors).forEach(function (hook) {
  306. if (hook !== 'returnValue') {
  307. interceptor[hook] = globalInterceptors[hook].slice();
  308. }
  309. });
  310. var scopedInterceptor = scopedInterceptors[method];
  311. if (scopedInterceptor) {
  312. Object.keys(scopedInterceptor).forEach(function (hook) {
  313. if (hook !== 'returnValue') {
  314. interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);
  315. }
  316. });
  317. }
  318. return interceptor;
  319. }
  320. function invokeApi(method, api, options) {
  321. for (var _len = arguments.length, params = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
  322. params[_key - 3] = arguments[_key];
  323. }
  324. var interceptor = getApiInterceptorHooks(method);
  325. if (interceptor && Object.keys(interceptor).length) {
  326. if (Array.isArray(interceptor.invoke)) {
  327. var res = queue(interceptor.invoke, options);
  328. return res.then(function (options) {
  329. // 重新访问 getApiInterceptorHooks, 允许 invoke 中再次调用 addInterceptor,removeInterceptor
  330. return api.apply(void 0, [wrapperOptions(getApiInterceptorHooks(method), options)].concat(params));
  331. });
  332. } else {
  333. return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
  334. }
  335. }
  336. return api.apply(void 0, [options].concat(params));
  337. }
  338. var promiseInterceptor = {
  339. returnValue: function returnValue(res) {
  340. if (!isPromise(res)) {
  341. return res;
  342. }
  343. return new Promise(function (resolve, reject) {
  344. res.then(function (res) {
  345. if (res[0]) {
  346. reject(res[0]);
  347. } else {
  348. resolve(res[1]);
  349. }
  350. });
  351. });
  352. }
  353. };
  354. var SYNC_API_RE = /^\$|Window$|WindowStyle$|sendHostEvent|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getLocale|setLocale|invokePushCallback|getWindowInfo|getDeviceInfo|getAppBaseInfo|getSystemSetting|getAppAuthorizeSetting|initUTS|requireUTS|registerUTS/;
  355. var CONTEXT_API_RE = /^create|Manager$/;
  356. // Context例外情况
  357. var CONTEXT_API_RE_EXC = ['createBLEConnection'];
  358. // 同步例外情况
  359. var ASYNC_API = ['createBLEConnection', 'createPushMessage'];
  360. var CALLBACK_API_RE = /^on|^off/;
  361. function isContextApi(name) {
  362. return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1;
  363. }
  364. function isSyncApi(name) {
  365. return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;
  366. }
  367. function isCallbackApi(name) {
  368. return CALLBACK_API_RE.test(name) && name !== 'onPush';
  369. }
  370. function handlePromise(promise) {
  371. return promise.then(function (data) {
  372. return [null, data];
  373. }).catch(function (err) {
  374. return [err];
  375. });
  376. }
  377. function shouldPromise(name) {
  378. if (isContextApi(name) || isSyncApi(name) || isCallbackApi(name)) {
  379. return false;
  380. }
  381. return true;
  382. }
  383. /* eslint-disable no-extend-native */
  384. if (!Promise.prototype.finally) {
  385. Promise.prototype.finally = function (callback) {
  386. var promise = this.constructor;
  387. return this.then(function (value) {
  388. return promise.resolve(callback()).then(function () {
  389. return value;
  390. });
  391. }, function (reason) {
  392. return promise.resolve(callback()).then(function () {
  393. throw reason;
  394. });
  395. });
  396. };
  397. }
  398. function promisify(name, api) {
  399. if (!shouldPromise(name) || !isFn(api)) {
  400. return api;
  401. }
  402. return function promiseApi() {
  403. var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  404. for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
  405. params[_key2 - 1] = arguments[_key2];
  406. }
  407. if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {
  408. return wrapperReturnValue(name, invokeApi.apply(void 0, [name, api, options].concat(params)));
  409. }
  410. return wrapperReturnValue(name, handlePromise(new Promise(function (resolve, reject) {
  411. invokeApi.apply(void 0, [name, api, Object.assign({}, options, {
  412. success: resolve,
  413. fail: reject
  414. })].concat(params));
  415. })));
  416. };
  417. }
  418. var EPS = 1e-4;
  419. var BASE_DEVICE_WIDTH = 750;
  420. var isIOS = false;
  421. var deviceWidth = 0;
  422. var deviceDPR = 0;
  423. function checkDeviceWidth() {
  424. var _wx$getSystemInfoSync = wx.getSystemInfoSync(),
  425. platform = _wx$getSystemInfoSync.platform,
  426. pixelRatio = _wx$getSystemInfoSync.pixelRatio,
  427. windowWidth = _wx$getSystemInfoSync.windowWidth; // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni
  428. deviceWidth = windowWidth;
  429. deviceDPR = pixelRatio;
  430. isIOS = platform === 'ios';
  431. }
  432. function upx2px(number, newDeviceWidth) {
  433. if (deviceWidth === 0) {
  434. checkDeviceWidth();
  435. }
  436. number = Number(number);
  437. if (number === 0) {
  438. return 0;
  439. }
  440. var result = number / BASE_DEVICE_WIDTH * (newDeviceWidth || deviceWidth);
  441. if (result < 0) {
  442. result = -result;
  443. }
  444. result = Math.floor(result + EPS);
  445. if (result === 0) {
  446. if (deviceDPR === 1 || !isIOS) {
  447. result = 1;
  448. } else {
  449. result = 0.5;
  450. }
  451. }
  452. return number < 0 ? -result : result;
  453. }
  454. var LOCALE_ZH_HANS = 'zh-Hans';
  455. var LOCALE_ZH_HANT = 'zh-Hant';
  456. var LOCALE_EN = 'en';
  457. var LOCALE_FR = 'fr';
  458. var LOCALE_ES = 'es';
  459. var messages = {};
  460. var locale;
  461. {
  462. locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
  463. }
  464. function initI18nMessages() {
  465. if (!isEnableLocale()) {
  466. return;
  467. }
  468. var localeKeys = Object.keys(__uniConfig.locales);
  469. if (localeKeys.length) {
  470. localeKeys.forEach(function (locale) {
  471. var curMessages = messages[locale];
  472. var userMessages = __uniConfig.locales[locale];
  473. if (curMessages) {
  474. Object.assign(curMessages, userMessages);
  475. } else {
  476. messages[locale] = userMessages;
  477. }
  478. });
  479. }
  480. }
  481. initI18nMessages();
  482. var i18n = (0, _uniI18n.initVueI18n)(locale, {});
  483. var t = i18n.t;
  484. var i18nMixin = i18n.mixin = {
  485. beforeCreate: function beforeCreate() {
  486. var _this = this;
  487. var unwatch = i18n.i18n.watchLocale(function () {
  488. _this.$forceUpdate();
  489. });
  490. this.$once('hook:beforeDestroy', function () {
  491. unwatch();
  492. });
  493. },
  494. methods: {
  495. $$t: function $$t(key, values) {
  496. return t(key, values);
  497. }
  498. }
  499. };
  500. var setLocale = i18n.setLocale;
  501. var getLocale = i18n.getLocale;
  502. function initAppLocale(Vue, appVm, locale) {
  503. var state = Vue.observable({
  504. locale: locale || i18n.getLocale()
  505. });
  506. var localeWatchers = [];
  507. appVm.$watchLocale = function (fn) {
  508. localeWatchers.push(fn);
  509. };
  510. Object.defineProperty(appVm, '$locale', {
  511. get: function get() {
  512. return state.locale;
  513. },
  514. set: function set(v) {
  515. state.locale = v;
  516. localeWatchers.forEach(function (watch) {
  517. return watch(v);
  518. });
  519. }
  520. });
  521. }
  522. function isEnableLocale() {
  523. return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length;
  524. }
  525. function include(str, parts) {
  526. return !!parts.find(function (part) {
  527. return str.indexOf(part) !== -1;
  528. });
  529. }
  530. function startsWith(str, parts) {
  531. return parts.find(function (part) {
  532. return str.indexOf(part) === 0;
  533. });
  534. }
  535. function normalizeLocale(locale, messages) {
  536. if (!locale) {
  537. return;
  538. }
  539. locale = locale.trim().replace(/_/g, '-');
  540. if (messages && messages[locale]) {
  541. return locale;
  542. }
  543. locale = locale.toLowerCase();
  544. if (locale === 'chinese') {
  545. // 支付宝
  546. return LOCALE_ZH_HANS;
  547. }
  548. if (locale.indexOf('zh') === 0) {
  549. if (locale.indexOf('-hans') > -1) {
  550. return LOCALE_ZH_HANS;
  551. }
  552. if (locale.indexOf('-hant') > -1) {
  553. return LOCALE_ZH_HANT;
  554. }
  555. if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {
  556. return LOCALE_ZH_HANT;
  557. }
  558. return LOCALE_ZH_HANS;
  559. }
  560. var lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);
  561. if (lang) {
  562. return lang;
  563. }
  564. }
  565. // export function initI18n() {
  566. // const localeKeys = Object.keys(__uniConfig.locales || {})
  567. // if (localeKeys.length) {
  568. // localeKeys.forEach((locale) =>
  569. // i18n.add(locale, __uniConfig.locales[locale])
  570. // )
  571. // }
  572. // }
  573. function getLocale$1() {
  574. // 优先使用 $locale
  575. if (isFn(getApp)) {
  576. var app = getApp({
  577. allowDefault: true
  578. });
  579. if (app && app.$vm) {
  580. return app.$vm.$locale;
  581. }
  582. }
  583. return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
  584. }
  585. function setLocale$1(locale) {
  586. var app = isFn(getApp) ? getApp() : false;
  587. if (!app) {
  588. return false;
  589. }
  590. var oldLocale = app.$vm.$locale;
  591. if (oldLocale !== locale) {
  592. app.$vm.$locale = locale;
  593. onLocaleChangeCallbacks.forEach(function (fn) {
  594. return fn({
  595. locale: locale
  596. });
  597. });
  598. return true;
  599. }
  600. return false;
  601. }
  602. var onLocaleChangeCallbacks = [];
  603. function onLocaleChange(fn) {
  604. if (onLocaleChangeCallbacks.indexOf(fn) === -1) {
  605. onLocaleChangeCallbacks.push(fn);
  606. }
  607. }
  608. if (typeof global !== 'undefined') {
  609. global.getLocale = getLocale$1;
  610. }
  611. var interceptors = {
  612. promiseInterceptor: promiseInterceptor
  613. };
  614. var baseApi = /*#__PURE__*/Object.freeze({
  615. __proto__: null,
  616. upx2px: upx2px,
  617. getLocale: getLocale$1,
  618. setLocale: setLocale$1,
  619. onLocaleChange: onLocaleChange,
  620. addInterceptor: addInterceptor,
  621. removeInterceptor: removeInterceptor,
  622. interceptors: interceptors
  623. });
  624. function findExistsPageIndex(url) {
  625. var pages = getCurrentPages();
  626. var len = pages.length;
  627. while (len--) {
  628. var page = pages[len];
  629. if (page.$page && page.$page.fullPath === url) {
  630. return len;
  631. }
  632. }
  633. return -1;
  634. }
  635. var redirectTo = {
  636. name: function name(fromArgs) {
  637. if (fromArgs.exists === 'back' && fromArgs.delta) {
  638. return 'navigateBack';
  639. }
  640. return 'redirectTo';
  641. },
  642. args: function args(fromArgs) {
  643. if (fromArgs.exists === 'back' && fromArgs.url) {
  644. var existsPageIndex = findExistsPageIndex(fromArgs.url);
  645. if (existsPageIndex !== -1) {
  646. var delta = getCurrentPages().length - 1 - existsPageIndex;
  647. if (delta > 0) {
  648. fromArgs.delta = delta;
  649. }
  650. }
  651. }
  652. }
  653. };
  654. var previewImage = {
  655. args: function args(fromArgs) {
  656. var currentIndex = parseInt(fromArgs.current);
  657. if (isNaN(currentIndex)) {
  658. return;
  659. }
  660. var urls = fromArgs.urls;
  661. if (!Array.isArray(urls)) {
  662. return;
  663. }
  664. var len = urls.length;
  665. if (!len) {
  666. return;
  667. }
  668. if (currentIndex < 0) {
  669. currentIndex = 0;
  670. } else if (currentIndex >= len) {
  671. currentIndex = len - 1;
  672. }
  673. if (currentIndex > 0) {
  674. fromArgs.current = urls[currentIndex];
  675. fromArgs.urls = urls.filter(function (item, index) {
  676. return index < currentIndex ? item !== urls[currentIndex] : true;
  677. });
  678. } else {
  679. fromArgs.current = urls[0];
  680. }
  681. return {
  682. indicator: false,
  683. loop: false
  684. };
  685. }
  686. };
  687. var UUID_KEY = '__DC_STAT_UUID';
  688. var deviceId;
  689. function useDeviceId(result) {
  690. deviceId = deviceId || wx.getStorageSync(UUID_KEY);
  691. if (!deviceId) {
  692. deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);
  693. wx.setStorage({
  694. key: UUID_KEY,
  695. data: deviceId
  696. });
  697. }
  698. result.deviceId = deviceId;
  699. }
  700. function addSafeAreaInsets(result) {
  701. if (result.safeArea) {
  702. var safeArea = result.safeArea;
  703. result.safeAreaInsets = {
  704. top: safeArea.top,
  705. left: safeArea.left,
  706. right: result.windowWidth - safeArea.right,
  707. bottom: result.screenHeight - safeArea.bottom
  708. };
  709. }
  710. }
  711. function populateParameters(result) {
  712. var _result$brand = result.brand,
  713. brand = _result$brand === void 0 ? '' : _result$brand,
  714. _result$model = result.model,
  715. model = _result$model === void 0 ? '' : _result$model,
  716. _result$system = result.system,
  717. system = _result$system === void 0 ? '' : _result$system,
  718. _result$language = result.language,
  719. language = _result$language === void 0 ? '' : _result$language,
  720. theme = result.theme,
  721. version = result.version,
  722. platform = result.platform,
  723. fontSizeSetting = result.fontSizeSetting,
  724. SDKVersion = result.SDKVersion,
  725. pixelRatio = result.pixelRatio,
  726. deviceOrientation = result.deviceOrientation;
  727. // const isQuickApp = "mp-weixin".indexOf('quickapp-webview') !== -1
  728. var extraParam = {};
  729. // osName osVersion
  730. var osName = '';
  731. var osVersion = '';
  732. {
  733. osName = system.split(' ')[0] || '';
  734. osVersion = system.split(' ')[1] || '';
  735. }
  736. var hostVersion = version;
  737. // deviceType
  738. var deviceType = getGetDeviceType(result, model);
  739. // deviceModel
  740. var deviceBrand = getDeviceBrand(brand);
  741. // hostName
  742. var _hostName = getHostName(result);
  743. // deviceOrientation
  744. var _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持
  745. // devicePixelRatio
  746. var _devicePixelRatio = pixelRatio;
  747. // SDKVersion
  748. var _SDKVersion = SDKVersion;
  749. // hostLanguage
  750. var hostLanguage = language.replace(/_/g, '-');
  751. // wx.getAccountInfoSync
  752. var parameters = {
  753. appId: "__UNI__EEB3904",
  754. appName: "shoppingTemplate",
  755. appVersion: "1.0.0",
  756. appVersionCode: "100",
  757. appLanguage: getAppLanguage(hostLanguage),
  758. uniCompileVersion: "3.8.7",
  759. uniRuntimeVersion: "3.8.7",
  760. uniPlatform: undefined || "mp-weixin",
  761. deviceBrand: deviceBrand,
  762. deviceModel: model,
  763. deviceType: deviceType,
  764. devicePixelRatio: _devicePixelRatio,
  765. deviceOrientation: _deviceOrientation,
  766. osName: osName.toLocaleLowerCase(),
  767. osVersion: osVersion,
  768. hostTheme: theme,
  769. hostVersion: hostVersion,
  770. hostLanguage: hostLanguage,
  771. hostName: _hostName,
  772. hostSDKVersion: _SDKVersion,
  773. hostFontSizeSetting: fontSizeSetting,
  774. windowTop: 0,
  775. windowBottom: 0,
  776. // TODO
  777. osLanguage: undefined,
  778. osTheme: undefined,
  779. ua: undefined,
  780. hostPackageName: undefined,
  781. browserName: undefined,
  782. browserVersion: undefined
  783. };
  784. Object.assign(result, parameters, extraParam);
  785. }
  786. function getGetDeviceType(result, model) {
  787. var deviceType = result.deviceType || 'phone';
  788. {
  789. var deviceTypeMaps = {
  790. ipad: 'pad',
  791. windows: 'pc',
  792. mac: 'pc'
  793. };
  794. var deviceTypeMapsKeys = Object.keys(deviceTypeMaps);
  795. var _model = model.toLocaleLowerCase();
  796. for (var index = 0; index < deviceTypeMapsKeys.length; index++) {
  797. var _m = deviceTypeMapsKeys[index];
  798. if (_model.indexOf(_m) !== -1) {
  799. deviceType = deviceTypeMaps[_m];
  800. break;
  801. }
  802. }
  803. }
  804. return deviceType;
  805. }
  806. function getDeviceBrand(brand) {
  807. var deviceBrand = brand;
  808. if (deviceBrand) {
  809. deviceBrand = brand.toLocaleLowerCase();
  810. }
  811. return deviceBrand;
  812. }
  813. function getAppLanguage(defaultLanguage) {
  814. return getLocale$1 ? getLocale$1() : defaultLanguage;
  815. }
  816. function getHostName(result) {
  817. var _platform = 'WeChat';
  818. var _hostName = result.hostName || _platform; // mp-jd
  819. {
  820. if (result.environment) {
  821. _hostName = result.environment;
  822. } else if (result.host && result.host.env) {
  823. _hostName = result.host.env;
  824. }
  825. }
  826. return _hostName;
  827. }
  828. var getSystemInfo = {
  829. returnValue: function returnValue(result) {
  830. useDeviceId(result);
  831. addSafeAreaInsets(result);
  832. populateParameters(result);
  833. }
  834. };
  835. var showActionSheet = {
  836. args: function args(fromArgs) {
  837. if ((0, _typeof2.default)(fromArgs) === 'object') {
  838. fromArgs.alertText = fromArgs.title;
  839. }
  840. }
  841. };
  842. var getAppBaseInfo = {
  843. returnValue: function returnValue(result) {
  844. var _result = result,
  845. version = _result.version,
  846. language = _result.language,
  847. SDKVersion = _result.SDKVersion,
  848. theme = _result.theme;
  849. var _hostName = getHostName(result);
  850. var hostLanguage = language.replace('_', '-');
  851. result = sortObject(Object.assign(result, {
  852. appId: "__UNI__EEB3904",
  853. appName: "shoppingTemplate",
  854. appVersion: "1.0.0",
  855. appVersionCode: "100",
  856. appLanguage: getAppLanguage(hostLanguage),
  857. hostVersion: version,
  858. hostLanguage: hostLanguage,
  859. hostName: _hostName,
  860. hostSDKVersion: SDKVersion,
  861. hostTheme: theme
  862. }));
  863. }
  864. };
  865. var getDeviceInfo = {
  866. returnValue: function returnValue(result) {
  867. var _result2 = result,
  868. brand = _result2.brand,
  869. model = _result2.model;
  870. var deviceType = getGetDeviceType(result, model);
  871. var deviceBrand = getDeviceBrand(brand);
  872. useDeviceId(result);
  873. result = sortObject(Object.assign(result, {
  874. deviceType: deviceType,
  875. deviceBrand: deviceBrand,
  876. deviceModel: model
  877. }));
  878. }
  879. };
  880. var getWindowInfo = {
  881. returnValue: function returnValue(result) {
  882. addSafeAreaInsets(result);
  883. result = sortObject(Object.assign(result, {
  884. windowTop: 0,
  885. windowBottom: 0
  886. }));
  887. }
  888. };
  889. var getAppAuthorizeSetting = {
  890. returnValue: function returnValue(result) {
  891. var locationReducedAccuracy = result.locationReducedAccuracy;
  892. result.locationAccuracy = 'unsupported';
  893. if (locationReducedAccuracy === true) {
  894. result.locationAccuracy = 'reduced';
  895. } else if (locationReducedAccuracy === false) {
  896. result.locationAccuracy = 'full';
  897. }
  898. }
  899. };
  900. // import navigateTo from 'uni-helpers/navigate-to'
  901. var compressImage = {
  902. args: function args(fromArgs) {
  903. // https://developers.weixin.qq.com/community/develop/doc/000c08940c865011298e0a43256800?highLine=compressHeight
  904. if (fromArgs.compressedHeight && !fromArgs.compressHeight) {
  905. fromArgs.compressHeight = fromArgs.compressedHeight;
  906. }
  907. if (fromArgs.compressedWidth && !fromArgs.compressWidth) {
  908. fromArgs.compressWidth = fromArgs.compressedWidth;
  909. }
  910. }
  911. };
  912. var protocols = {
  913. redirectTo: redirectTo,
  914. // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP
  915. previewImage: previewImage,
  916. getSystemInfo: getSystemInfo,
  917. getSystemInfoSync: getSystemInfo,
  918. showActionSheet: showActionSheet,
  919. getAppBaseInfo: getAppBaseInfo,
  920. getDeviceInfo: getDeviceInfo,
  921. getWindowInfo: getWindowInfo,
  922. getAppAuthorizeSetting: getAppAuthorizeSetting,
  923. compressImage: compressImage
  924. };
  925. var todos = ['vibrate', 'preloadPage', 'unPreloadPage', 'loadSubPackage'];
  926. var canIUses = [];
  927. var CALLBACKS = ['success', 'fail', 'cancel', 'complete'];
  928. function processCallback(methodName, method, returnValue) {
  929. return function (res) {
  930. return method(processReturnValue(methodName, res, returnValue));
  931. };
  932. }
  933. function processArgs(methodName, fromArgs) {
  934. var argsOption = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  935. var returnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
  936. var keepFromArgs = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
  937. if (isPlainObject(fromArgs)) {
  938. // 一般 api 的参数解析
  939. var toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值
  940. if (isFn(argsOption)) {
  941. argsOption = argsOption(fromArgs, toArgs) || {};
  942. }
  943. for (var key in fromArgs) {
  944. if (hasOwn(argsOption, key)) {
  945. var keyOption = argsOption[key];
  946. if (isFn(keyOption)) {
  947. keyOption = keyOption(fromArgs[key], fromArgs, toArgs);
  948. }
  949. if (!keyOption) {
  950. // 不支持的参数
  951. console.warn("The '".concat(methodName, "' method of platform '\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F' does not support option '").concat(key, "'"));
  952. } else if (isStr(keyOption)) {
  953. // 重写参数 key
  954. toArgs[keyOption] = fromArgs[key];
  955. } else if (isPlainObject(keyOption)) {
  956. // {name:newName,value:value}可重新指定参数 key:value
  957. toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;
  958. }
  959. } else if (CALLBACKS.indexOf(key) !== -1) {
  960. if (isFn(fromArgs[key])) {
  961. toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);
  962. }
  963. } else {
  964. if (!keepFromArgs) {
  965. toArgs[key] = fromArgs[key];
  966. }
  967. }
  968. }
  969. return toArgs;
  970. } else if (isFn(fromArgs)) {
  971. fromArgs = processCallback(methodName, fromArgs, returnValue);
  972. }
  973. return fromArgs;
  974. }
  975. function processReturnValue(methodName, res, returnValue) {
  976. var keepReturnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
  977. if (isFn(protocols.returnValue)) {
  978. // 处理通用 returnValue
  979. res = protocols.returnValue(methodName, res);
  980. }
  981. return processArgs(methodName, res, returnValue, {}, keepReturnValue);
  982. }
  983. function wrapper(methodName, method) {
  984. if (hasOwn(protocols, methodName)) {
  985. var protocol = protocols[methodName];
  986. if (!protocol) {
  987. // 暂不支持的 api
  988. return function () {
  989. console.error("Platform '\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F' does not support '".concat(methodName, "'."));
  990. };
  991. }
  992. return function (arg1, arg2) {
  993. // 目前 api 最多两个参数
  994. var options = protocol;
  995. if (isFn(protocol)) {
  996. options = protocol(arg1);
  997. }
  998. arg1 = processArgs(methodName, arg1, options.args, options.returnValue);
  999. var args = [arg1];
  1000. if (typeof arg2 !== 'undefined') {
  1001. args.push(arg2);
  1002. }
  1003. if (isFn(options.name)) {
  1004. methodName = options.name(arg1);
  1005. } else if (isStr(options.name)) {
  1006. methodName = options.name;
  1007. }
  1008. var returnValue = wx[methodName].apply(wx, args);
  1009. if (isSyncApi(methodName)) {
  1010. // 同步 api
  1011. return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));
  1012. }
  1013. return returnValue;
  1014. };
  1015. }
  1016. return method;
  1017. }
  1018. var todoApis = Object.create(null);
  1019. var TODOS = ['onTabBarMidButtonTap', 'subscribePush', 'unsubscribePush', 'onPush', 'offPush', 'share'];
  1020. function createTodoApi(name) {
  1021. return function todoApi(_ref) {
  1022. var fail = _ref.fail,
  1023. complete = _ref.complete;
  1024. var res = {
  1025. errMsg: "".concat(name, ":fail method '").concat(name, "' not supported")
  1026. };
  1027. isFn(fail) && fail(res);
  1028. isFn(complete) && complete(res);
  1029. };
  1030. }
  1031. TODOS.forEach(function (name) {
  1032. todoApis[name] = createTodoApi(name);
  1033. });
  1034. var providers = {
  1035. oauth: ['weixin'],
  1036. share: ['weixin'],
  1037. payment: ['wxpay'],
  1038. push: ['weixin']
  1039. };
  1040. function getProvider(_ref2) {
  1041. var service = _ref2.service,
  1042. success = _ref2.success,
  1043. fail = _ref2.fail,
  1044. complete = _ref2.complete;
  1045. var res = false;
  1046. if (providers[service]) {
  1047. res = {
  1048. errMsg: 'getProvider:ok',
  1049. service: service,
  1050. provider: providers[service]
  1051. };
  1052. isFn(success) && success(res);
  1053. } else {
  1054. res = {
  1055. errMsg: 'getProvider:fail service not found'
  1056. };
  1057. isFn(fail) && fail(res);
  1058. }
  1059. isFn(complete) && complete(res);
  1060. }
  1061. var extraApi = /*#__PURE__*/Object.freeze({
  1062. __proto__: null,
  1063. getProvider: getProvider
  1064. });
  1065. var getEmitter = function () {
  1066. var Emitter;
  1067. return function getUniEmitter() {
  1068. if (!Emitter) {
  1069. Emitter = new _vue.default();
  1070. }
  1071. return Emitter;
  1072. };
  1073. }();
  1074. function apply(ctx, method, args) {
  1075. return ctx[method].apply(ctx, args);
  1076. }
  1077. function $on() {
  1078. return apply(getEmitter(), '$on', Array.prototype.slice.call(arguments));
  1079. }
  1080. function $off() {
  1081. return apply(getEmitter(), '$off', Array.prototype.slice.call(arguments));
  1082. }
  1083. function $once() {
  1084. return apply(getEmitter(), '$once', Array.prototype.slice.call(arguments));
  1085. }
  1086. function $emit() {
  1087. return apply(getEmitter(), '$emit', Array.prototype.slice.call(arguments));
  1088. }
  1089. var eventApi = /*#__PURE__*/Object.freeze({
  1090. __proto__: null,
  1091. $on: $on,
  1092. $off: $off,
  1093. $once: $once,
  1094. $emit: $emit
  1095. });
  1096. /**
  1097. * 框架内 try-catch
  1098. */
  1099. /**
  1100. * 开发者 try-catch
  1101. */
  1102. function tryCatch(fn) {
  1103. return function () {
  1104. try {
  1105. return fn.apply(fn, arguments);
  1106. } catch (e) {
  1107. // TODO
  1108. console.error(e);
  1109. }
  1110. };
  1111. }
  1112. function getApiCallbacks(params) {
  1113. var apiCallbacks = {};
  1114. for (var name in params) {
  1115. var param = params[name];
  1116. if (isFn(param)) {
  1117. apiCallbacks[name] = tryCatch(param);
  1118. delete params[name];
  1119. }
  1120. }
  1121. return apiCallbacks;
  1122. }
  1123. var cid;
  1124. var cidErrMsg;
  1125. var enabled;
  1126. function normalizePushMessage(message) {
  1127. try {
  1128. return JSON.parse(message);
  1129. } catch (e) {}
  1130. return message;
  1131. }
  1132. function invokePushCallback(args) {
  1133. if (args.type === 'enabled') {
  1134. enabled = true;
  1135. } else if (args.type === 'clientId') {
  1136. cid = args.cid;
  1137. cidErrMsg = args.errMsg;
  1138. invokeGetPushCidCallbacks(cid, args.errMsg);
  1139. } else if (args.type === 'pushMsg') {
  1140. var message = {
  1141. type: 'receive',
  1142. data: normalizePushMessage(args.message)
  1143. };
  1144. for (var i = 0; i < onPushMessageCallbacks.length; i++) {
  1145. var callback = onPushMessageCallbacks[i];
  1146. callback(message);
  1147. // 该消息已被阻止
  1148. if (message.stopped) {
  1149. break;
  1150. }
  1151. }
  1152. } else if (args.type === 'click') {
  1153. onPushMessageCallbacks.forEach(function (callback) {
  1154. callback({
  1155. type: 'click',
  1156. data: normalizePushMessage(args.message)
  1157. });
  1158. });
  1159. }
  1160. }
  1161. var getPushCidCallbacks = [];
  1162. function invokeGetPushCidCallbacks(cid, errMsg) {
  1163. getPushCidCallbacks.forEach(function (callback) {
  1164. callback(cid, errMsg);
  1165. });
  1166. getPushCidCallbacks.length = 0;
  1167. }
  1168. function getPushClientId(args) {
  1169. if (!isPlainObject(args)) {
  1170. args = {};
  1171. }
  1172. var _getApiCallbacks = getApiCallbacks(args),
  1173. success = _getApiCallbacks.success,
  1174. fail = _getApiCallbacks.fail,
  1175. complete = _getApiCallbacks.complete;
  1176. var hasSuccess = isFn(success);
  1177. var hasFail = isFn(fail);
  1178. var hasComplete = isFn(complete);
  1179. Promise.resolve().then(function () {
  1180. if (typeof enabled === 'undefined') {
  1181. enabled = false;
  1182. cid = '';
  1183. cidErrMsg = 'uniPush is not enabled';
  1184. }
  1185. getPushCidCallbacks.push(function (cid, errMsg) {
  1186. var res;
  1187. if (cid) {
  1188. res = {
  1189. errMsg: 'getPushClientId:ok',
  1190. cid: cid
  1191. };
  1192. hasSuccess && success(res);
  1193. } else {
  1194. res = {
  1195. errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')
  1196. };
  1197. hasFail && fail(res);
  1198. }
  1199. hasComplete && complete(res);
  1200. });
  1201. if (typeof cid !== 'undefined') {
  1202. invokeGetPushCidCallbacks(cid, cidErrMsg);
  1203. }
  1204. });
  1205. }
  1206. var onPushMessageCallbacks = [];
  1207. // 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现
  1208. var onPushMessage = function onPushMessage(fn) {
  1209. if (onPushMessageCallbacks.indexOf(fn) === -1) {
  1210. onPushMessageCallbacks.push(fn);
  1211. }
  1212. };
  1213. var offPushMessage = function offPushMessage(fn) {
  1214. if (!fn) {
  1215. onPushMessageCallbacks.length = 0;
  1216. } else {
  1217. var index = onPushMessageCallbacks.indexOf(fn);
  1218. if (index > -1) {
  1219. onPushMessageCallbacks.splice(index, 1);
  1220. }
  1221. }
  1222. };
  1223. var baseInfo = wx.getAppBaseInfo && wx.getAppBaseInfo();
  1224. if (!baseInfo) {
  1225. baseInfo = wx.getSystemInfoSync();
  1226. }
  1227. var host = baseInfo ? baseInfo.host : null;
  1228. var shareVideoMessage = host && host.env === 'SAAASDK' ? wx.miniapp.shareVideoMessage : wx.shareVideoMessage;
  1229. var api = /*#__PURE__*/Object.freeze({
  1230. __proto__: null,
  1231. shareVideoMessage: shareVideoMessage,
  1232. getPushClientId: getPushClientId,
  1233. onPushMessage: onPushMessage,
  1234. offPushMessage: offPushMessage,
  1235. invokePushCallback: invokePushCallback
  1236. });
  1237. var mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];
  1238. function findVmByVueId(vm, vuePid) {
  1239. var $children = vm.$children;
  1240. // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)
  1241. for (var i = $children.length - 1; i >= 0; i--) {
  1242. var childVm = $children[i];
  1243. if (childVm.$scope._$vueId === vuePid) {
  1244. return childVm;
  1245. }
  1246. }
  1247. // 反向递归查找
  1248. var parentVm;
  1249. for (var _i = $children.length - 1; _i >= 0; _i--) {
  1250. parentVm = findVmByVueId($children[_i], vuePid);
  1251. if (parentVm) {
  1252. return parentVm;
  1253. }
  1254. }
  1255. }
  1256. function initBehavior(options) {
  1257. return Behavior(options);
  1258. }
  1259. function isPage() {
  1260. return !!this.route;
  1261. }
  1262. function initRelation(detail) {
  1263. this.triggerEvent('__l', detail);
  1264. }
  1265. function selectAllComponents(mpInstance, selector, $refs) {
  1266. var components = mpInstance.selectAllComponents(selector) || [];
  1267. components.forEach(function (component) {
  1268. var ref = component.dataset.ref;
  1269. $refs[ref] = component.$vm || toSkip(component);
  1270. {
  1271. if (component.dataset.vueGeneric === 'scoped') {
  1272. component.selectAllComponents('.scoped-ref').forEach(function (scopedComponent) {
  1273. selectAllComponents(scopedComponent, selector, $refs);
  1274. });
  1275. }
  1276. }
  1277. });
  1278. }
  1279. function syncRefs(refs, newRefs) {
  1280. var oldKeys = (0, _construct2.default)(Set, (0, _toConsumableArray2.default)(Object.keys(refs)));
  1281. var newKeys = Object.keys(newRefs);
  1282. newKeys.forEach(function (key) {
  1283. var oldValue = refs[key];
  1284. var newValue = newRefs[key];
  1285. if (Array.isArray(oldValue) && Array.isArray(newValue) && oldValue.length === newValue.length && newValue.every(function (value) {
  1286. return oldValue.includes(value);
  1287. })) {
  1288. return;
  1289. }
  1290. refs[key] = newValue;
  1291. oldKeys.delete(key);
  1292. });
  1293. oldKeys.forEach(function (key) {
  1294. delete refs[key];
  1295. });
  1296. return refs;
  1297. }
  1298. function initRefs(vm) {
  1299. var mpInstance = vm.$scope;
  1300. var refs = {};
  1301. Object.defineProperty(vm, '$refs', {
  1302. get: function get() {
  1303. var $refs = {};
  1304. selectAllComponents(mpInstance, '.vue-ref', $refs);
  1305. // TODO 暂不考虑 for 中的 scoped
  1306. var forComponents = mpInstance.selectAllComponents('.vue-ref-in-for') || [];
  1307. forComponents.forEach(function (component) {
  1308. var ref = component.dataset.ref;
  1309. if (!$refs[ref]) {
  1310. $refs[ref] = [];
  1311. }
  1312. $refs[ref].push(component.$vm || toSkip(component));
  1313. });
  1314. return syncRefs(refs, $refs);
  1315. }
  1316. });
  1317. }
  1318. function handleLink(event) {
  1319. var _ref3 = event.detail || event.value,
  1320. vuePid = _ref3.vuePid,
  1321. vueOptions = _ref3.vueOptions; // detail 是微信,value 是百度(dipatch)
  1322. var parentVm;
  1323. if (vuePid) {
  1324. parentVm = findVmByVueId(this.$vm, vuePid);
  1325. }
  1326. if (!parentVm) {
  1327. parentVm = this.$vm;
  1328. }
  1329. vueOptions.parent = parentVm;
  1330. }
  1331. function markMPComponent(component) {
  1332. // 在 Vue 中标记为小程序组件
  1333. var IS_MP = '__v_isMPComponent';
  1334. Object.defineProperty(component, IS_MP, {
  1335. configurable: true,
  1336. enumerable: false,
  1337. value: true
  1338. });
  1339. return component;
  1340. }
  1341. function toSkip(obj) {
  1342. var OB = '__ob__';
  1343. var SKIP = '__v_skip';
  1344. if (isObject(obj) && Object.isExtensible(obj)) {
  1345. // 避免被 @vue/composition-api 观测
  1346. Object.defineProperty(obj, OB, {
  1347. configurable: true,
  1348. enumerable: false,
  1349. value: (0, _defineProperty2.default)({}, SKIP, true)
  1350. });
  1351. }
  1352. return obj;
  1353. }
  1354. var WORKLET_RE = /_(.*)_worklet_factory_/;
  1355. function initWorkletMethods(mpMethods, vueMethods) {
  1356. if (vueMethods) {
  1357. Object.keys(vueMethods).forEach(function (name) {
  1358. var matches = name.match(WORKLET_RE);
  1359. if (matches) {
  1360. var workletName = matches[1];
  1361. mpMethods[name] = vueMethods[name];
  1362. mpMethods[workletName] = vueMethods[workletName];
  1363. }
  1364. });
  1365. }
  1366. }
  1367. var MPPage = Page;
  1368. var MPComponent = Component;
  1369. var customizeRE = /:/g;
  1370. var customize = cached(function (str) {
  1371. return camelize(str.replace(customizeRE, '-'));
  1372. });
  1373. function initTriggerEvent(mpInstance) {
  1374. var oldTriggerEvent = mpInstance.triggerEvent;
  1375. var newTriggerEvent = function newTriggerEvent(event) {
  1376. for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
  1377. args[_key3 - 1] = arguments[_key3];
  1378. }
  1379. // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件
  1380. if (this.$vm || this.dataset && this.dataset.comType) {
  1381. event = customize(event);
  1382. } else {
  1383. // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目
  1384. var newEvent = customize(event);
  1385. if (newEvent !== event) {
  1386. oldTriggerEvent.apply(this, [newEvent].concat(args));
  1387. }
  1388. }
  1389. return oldTriggerEvent.apply(this, [event].concat(args));
  1390. };
  1391. try {
  1392. // 京东小程序 triggerEvent 为只读
  1393. mpInstance.triggerEvent = newTriggerEvent;
  1394. } catch (error) {
  1395. mpInstance._triggerEvent = newTriggerEvent;
  1396. }
  1397. }
  1398. function initHook(name, options, isComponent) {
  1399. var oldHook = options[name];
  1400. options[name] = function () {
  1401. markMPComponent(this);
  1402. initTriggerEvent(this);
  1403. if (oldHook) {
  1404. for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
  1405. args[_key4] = arguments[_key4];
  1406. }
  1407. return oldHook.apply(this, args);
  1408. }
  1409. };
  1410. }
  1411. if (!MPPage.__$wrappered) {
  1412. MPPage.__$wrappered = true;
  1413. Page = function Page() {
  1414. var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  1415. initHook('onLoad', options);
  1416. return MPPage(options);
  1417. };
  1418. Page.after = MPPage.after;
  1419. Component = function Component() {
  1420. var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  1421. initHook('created', options);
  1422. return MPComponent(options);
  1423. };
  1424. }
  1425. var PAGE_EVENT_HOOKS = ['onPullDownRefresh', 'onReachBottom', 'onAddToFavorites', 'onShareTimeline', 'onShareAppMessage', 'onPageScroll', 'onResize', 'onTabItemTap'];
  1426. function initMocks(vm, mocks) {
  1427. var mpInstance = vm.$mp[vm.mpType];
  1428. mocks.forEach(function (mock) {
  1429. if (hasOwn(mpInstance, mock)) {
  1430. vm[mock] = mpInstance[mock];
  1431. }
  1432. });
  1433. }
  1434. function hasHook(hook, vueOptions) {
  1435. if (!vueOptions) {
  1436. return true;
  1437. }
  1438. if (_vue.default.options && Array.isArray(_vue.default.options[hook])) {
  1439. return true;
  1440. }
  1441. vueOptions = vueOptions.default || vueOptions;
  1442. if (isFn(vueOptions)) {
  1443. if (isFn(vueOptions.extendOptions[hook])) {
  1444. return true;
  1445. }
  1446. if (vueOptions.super && vueOptions.super.options && Array.isArray(vueOptions.super.options[hook])) {
  1447. return true;
  1448. }
  1449. return false;
  1450. }
  1451. if (isFn(vueOptions[hook]) || Array.isArray(vueOptions[hook])) {
  1452. return true;
  1453. }
  1454. var mixins = vueOptions.mixins;
  1455. if (Array.isArray(mixins)) {
  1456. return !!mixins.find(function (mixin) {
  1457. return hasHook(hook, mixin);
  1458. });
  1459. }
  1460. }
  1461. function initHooks(mpOptions, hooks, vueOptions) {
  1462. hooks.forEach(function (hook) {
  1463. if (hasHook(hook, vueOptions)) {
  1464. mpOptions[hook] = function (args) {
  1465. return this.$vm && this.$vm.__call_hook(hook, args);
  1466. };
  1467. }
  1468. });
  1469. }
  1470. function initUnknownHooks(mpOptions, vueOptions) {
  1471. var excludes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
  1472. findHooks(vueOptions).forEach(function (hook) {
  1473. return initHook$1(mpOptions, hook, excludes);
  1474. });
  1475. }
  1476. function findHooks(vueOptions) {
  1477. var hooks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
  1478. if (vueOptions) {
  1479. Object.keys(vueOptions).forEach(function (name) {
  1480. if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {
  1481. hooks.push(name);
  1482. }
  1483. });
  1484. }
  1485. return hooks;
  1486. }
  1487. function initHook$1(mpOptions, hook, excludes) {
  1488. if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {
  1489. mpOptions[hook] = function (args) {
  1490. return this.$vm && this.$vm.__call_hook(hook, args);
  1491. };
  1492. }
  1493. }
  1494. function initVueComponent(Vue, vueOptions) {
  1495. vueOptions = vueOptions.default || vueOptions;
  1496. var VueComponent;
  1497. if (isFn(vueOptions)) {
  1498. VueComponent = vueOptions;
  1499. } else {
  1500. VueComponent = Vue.extend(vueOptions);
  1501. }
  1502. vueOptions = VueComponent.options;
  1503. return [VueComponent, vueOptions];
  1504. }
  1505. function initSlots(vm, vueSlots) {
  1506. if (Array.isArray(vueSlots) && vueSlots.length) {
  1507. var $slots = Object.create(null);
  1508. vueSlots.forEach(function (slotName) {
  1509. $slots[slotName] = true;
  1510. });
  1511. vm.$scopedSlots = vm.$slots = $slots;
  1512. }
  1513. }
  1514. function initVueIds(vueIds, mpInstance) {
  1515. vueIds = (vueIds || '').split(',');
  1516. var len = vueIds.length;
  1517. if (len === 1) {
  1518. mpInstance._$vueId = vueIds[0];
  1519. } else if (len === 2) {
  1520. mpInstance._$vueId = vueIds[0];
  1521. mpInstance._$vuePid = vueIds[1];
  1522. }
  1523. }
  1524. function initData(vueOptions, context) {
  1525. var data = vueOptions.data || {};
  1526. var methods = vueOptions.methods || {};
  1527. if (typeof data === 'function') {
  1528. try {
  1529. data = data.call(context); // 支持 Vue.prototype 上挂的数据
  1530. } catch (e) {
  1531. if (Object({"VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"shoppingTemplate","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
  1532. console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);
  1533. }
  1534. }
  1535. } else {
  1536. try {
  1537. // 对 data 格式化
  1538. data = JSON.parse(JSON.stringify(data));
  1539. } catch (e) {}
  1540. }
  1541. if (!isPlainObject(data)) {
  1542. data = {};
  1543. }
  1544. Object.keys(methods).forEach(function (methodName) {
  1545. if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {
  1546. data[methodName] = methods[methodName];
  1547. }
  1548. });
  1549. return data;
  1550. }
  1551. var PROP_TYPES = [String, Number, Boolean, Object, Array, null];
  1552. function createObserver(name) {
  1553. return function observer(newVal, oldVal) {
  1554. if (this.$vm) {
  1555. this.$vm[name] = newVal; // 为了触发其他非 render watcher
  1556. }
  1557. };
  1558. }
  1559. function initBehaviors(vueOptions, initBehavior) {
  1560. var vueBehaviors = vueOptions.behaviors;
  1561. var vueExtends = vueOptions.extends;
  1562. var vueMixins = vueOptions.mixins;
  1563. var vueProps = vueOptions.props;
  1564. if (!vueProps) {
  1565. vueOptions.props = vueProps = [];
  1566. }
  1567. var behaviors = [];
  1568. if (Array.isArray(vueBehaviors)) {
  1569. vueBehaviors.forEach(function (behavior) {
  1570. behaviors.push(behavior.replace('uni://', "wx".concat("://")));
  1571. if (behavior === 'uni://form-field') {
  1572. if (Array.isArray(vueProps)) {
  1573. vueProps.push('name');
  1574. vueProps.push('value');
  1575. } else {
  1576. vueProps.name = {
  1577. type: String,
  1578. default: ''
  1579. };
  1580. vueProps.value = {
  1581. type: [String, Number, Boolean, Array, Object, Date],
  1582. default: ''
  1583. };
  1584. }
  1585. }
  1586. });
  1587. }
  1588. if (isPlainObject(vueExtends) && vueExtends.props) {
  1589. behaviors.push(initBehavior({
  1590. properties: initProperties(vueExtends.props, true)
  1591. }));
  1592. }
  1593. if (Array.isArray(vueMixins)) {
  1594. vueMixins.forEach(function (vueMixin) {
  1595. if (isPlainObject(vueMixin) && vueMixin.props) {
  1596. behaviors.push(initBehavior({
  1597. properties: initProperties(vueMixin.props, true)
  1598. }));
  1599. }
  1600. });
  1601. }
  1602. return behaviors;
  1603. }
  1604. function parsePropType(key, type, defaultValue, file) {
  1605. // [String]=>String
  1606. if (Array.isArray(type) && type.length === 1) {
  1607. return type[0];
  1608. }
  1609. return type;
  1610. }
  1611. function initProperties(props) {
  1612. var isBehavior = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  1613. var file = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
  1614. var options = arguments.length > 3 ? arguments[3] : undefined;
  1615. var properties = {};
  1616. if (!isBehavior) {
  1617. properties.vueId = {
  1618. type: String,
  1619. value: ''
  1620. };
  1621. {
  1622. if (options.virtualHost) {
  1623. properties.virtualHostStyle = {
  1624. type: null,
  1625. value: ''
  1626. };
  1627. properties.virtualHostClass = {
  1628. type: null,
  1629. value: ''
  1630. };
  1631. }
  1632. }
  1633. // scopedSlotsCompiler auto
  1634. properties.scopedSlotsCompiler = {
  1635. type: String,
  1636. value: ''
  1637. };
  1638. properties.vueSlots = {
  1639. // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots
  1640. type: null,
  1641. value: [],
  1642. observer: function observer(newVal, oldVal) {
  1643. var $slots = Object.create(null);
  1644. newVal.forEach(function (slotName) {
  1645. $slots[slotName] = true;
  1646. });
  1647. this.setData({
  1648. $slots: $slots
  1649. });
  1650. }
  1651. };
  1652. }
  1653. if (Array.isArray(props)) {
  1654. // ['title']
  1655. props.forEach(function (key) {
  1656. properties[key] = {
  1657. type: null,
  1658. observer: createObserver(key)
  1659. };
  1660. });
  1661. } else if (isPlainObject(props)) {
  1662. // {title:{type:String,default:''},content:String}
  1663. Object.keys(props).forEach(function (key) {
  1664. var opts = props[key];
  1665. if (isPlainObject(opts)) {
  1666. // title:{type:String,default:''}
  1667. var value = opts.default;
  1668. if (isFn(value)) {
  1669. value = value();
  1670. }
  1671. opts.type = parsePropType(key, opts.type);
  1672. properties[key] = {
  1673. type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,
  1674. value: value,
  1675. observer: createObserver(key)
  1676. };
  1677. } else {
  1678. // content:String
  1679. var type = parsePropType(key, opts);
  1680. properties[key] = {
  1681. type: PROP_TYPES.indexOf(type) !== -1 ? type : null,
  1682. observer: createObserver(key)
  1683. };
  1684. }
  1685. });
  1686. }
  1687. return properties;
  1688. }
  1689. function wrapper$1(event) {
  1690. // TODO 又得兼容 mpvue 的 mp 对象
  1691. try {
  1692. event.mp = JSON.parse(JSON.stringify(event));
  1693. } catch (e) {}
  1694. event.stopPropagation = noop;
  1695. event.preventDefault = noop;
  1696. event.target = event.target || {};
  1697. if (!hasOwn(event, 'detail')) {
  1698. event.detail = {};
  1699. }
  1700. if (hasOwn(event, 'markerId')) {
  1701. event.detail = (0, _typeof2.default)(event.detail) === 'object' ? event.detail : {};
  1702. event.detail.markerId = event.markerId;
  1703. }
  1704. if (isPlainObject(event.detail)) {
  1705. event.target = Object.assign({}, event.target, event.detail);
  1706. }
  1707. return event;
  1708. }
  1709. function getExtraValue(vm, dataPathsArray) {
  1710. var context = vm;
  1711. dataPathsArray.forEach(function (dataPathArray) {
  1712. var dataPath = dataPathArray[0];
  1713. var value = dataPathArray[2];
  1714. if (dataPath || typeof value !== 'undefined') {
  1715. // ['','',index,'disable']
  1716. var propPath = dataPathArray[1];
  1717. var valuePath = dataPathArray[3];
  1718. var vFor;
  1719. if (Number.isInteger(dataPath)) {
  1720. vFor = dataPath;
  1721. } else if (!dataPath) {
  1722. vFor = context;
  1723. } else if (typeof dataPath === 'string' && dataPath) {
  1724. if (dataPath.indexOf('#s#') === 0) {
  1725. vFor = dataPath.substr(3);
  1726. } else {
  1727. vFor = vm.__get_value(dataPath, context);
  1728. }
  1729. }
  1730. if (Number.isInteger(vFor)) {
  1731. context = value;
  1732. } else if (!propPath) {
  1733. context = vFor[value];
  1734. } else {
  1735. if (Array.isArray(vFor)) {
  1736. context = vFor.find(function (vForItem) {
  1737. return vm.__get_value(propPath, vForItem) === value;
  1738. });
  1739. } else if (isPlainObject(vFor)) {
  1740. context = Object.keys(vFor).find(function (vForKey) {
  1741. return vm.__get_value(propPath, vFor[vForKey]) === value;
  1742. });
  1743. } else {
  1744. console.error('v-for 暂不支持循环数据:', vFor);
  1745. }
  1746. }
  1747. if (valuePath) {
  1748. context = vm.__get_value(valuePath, context);
  1749. }
  1750. }
  1751. });
  1752. return context;
  1753. }
  1754. function processEventExtra(vm, extra, event, __args__) {
  1755. var extraObj = {};
  1756. if (Array.isArray(extra) && extra.length) {
  1757. /**
  1758. *[
  1759. * ['data.items', 'data.id', item.data.id],
  1760. * ['metas', 'id', meta.id]
  1761. *],
  1762. *[
  1763. * ['data.items', 'data.id', item.data.id],
  1764. * ['metas', 'id', meta.id]
  1765. *],
  1766. *'test'
  1767. */
  1768. extra.forEach(function (dataPath, index) {
  1769. if (typeof dataPath === 'string') {
  1770. if (!dataPath) {
  1771. // model,prop.sync
  1772. extraObj['$' + index] = vm;
  1773. } else {
  1774. if (dataPath === '$event') {
  1775. // $event
  1776. extraObj['$' + index] = event;
  1777. } else if (dataPath === 'arguments') {
  1778. extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;
  1779. } else if (dataPath.indexOf('$event.') === 0) {
  1780. // $event.target.value
  1781. extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);
  1782. } else {
  1783. extraObj['$' + index] = vm.__get_value(dataPath);
  1784. }
  1785. }
  1786. } else {
  1787. extraObj['$' + index] = getExtraValue(vm, dataPath);
  1788. }
  1789. });
  1790. }
  1791. return extraObj;
  1792. }
  1793. function getObjByArray(arr) {
  1794. var obj = {};
  1795. for (var i = 1; i < arr.length; i++) {
  1796. var element = arr[i];
  1797. obj[element[0]] = element[1];
  1798. }
  1799. return obj;
  1800. }
  1801. function processEventArgs(vm, event) {
  1802. var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
  1803. var extra = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
  1804. var isCustom = arguments.length > 4 ? arguments[4] : undefined;
  1805. var methodName = arguments.length > 5 ? arguments[5] : undefined;
  1806. var isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象
  1807. // fixed 用户直接触发 mpInstance.triggerEvent
  1808. var __args__ = isPlainObject(event.detail) ? event.detail.__args__ || [event.detail] : [event.detail];
  1809. if (isCustom) {
  1810. // 自定义事件
  1811. isCustomMPEvent = event.currentTarget && event.currentTarget.dataset && event.currentTarget.dataset.comType === 'wx';
  1812. if (!args.length) {
  1813. // 无参数,直接传入 event 或 detail 数组
  1814. if (isCustomMPEvent) {
  1815. return [event];
  1816. }
  1817. return __args__;
  1818. }
  1819. }
  1820. var extraObj = processEventExtra(vm, extra, event, __args__);
  1821. var ret = [];
  1822. args.forEach(function (arg) {
  1823. if (arg === '$event') {
  1824. if (methodName === '__set_model' && !isCustom) {
  1825. // input v-model value
  1826. ret.push(event.target.value);
  1827. } else {
  1828. if (isCustom && !isCustomMPEvent) {
  1829. ret.push(__args__[0]);
  1830. } else {
  1831. // wxcomponent 组件或内置组件
  1832. ret.push(event);
  1833. }
  1834. }
  1835. } else {
  1836. if (Array.isArray(arg) && arg[0] === 'o') {
  1837. ret.push(getObjByArray(arg));
  1838. } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {
  1839. ret.push(extraObj[arg]);
  1840. } else {
  1841. ret.push(arg);
  1842. }
  1843. }
  1844. });
  1845. return ret;
  1846. }
  1847. var ONCE = '~';
  1848. var CUSTOM = '^';
  1849. function isMatchEventType(eventType, optType) {
  1850. return eventType === optType || optType === 'regionchange' && (eventType === 'begin' || eventType === 'end');
  1851. }
  1852. function getContextVm(vm) {
  1853. var $parent = vm.$parent;
  1854. // 父组件是 scoped slots 或者其他自定义组件时继续查找
  1855. while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {
  1856. $parent = $parent.$parent;
  1857. }
  1858. return $parent && $parent.$parent;
  1859. }
  1860. function handleEvent(event) {
  1861. var _this2 = this;
  1862. event = wrapper$1(event);
  1863. // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]
  1864. var dataset = (event.currentTarget || event.target).dataset;
  1865. if (!dataset) {
  1866. return console.warn('事件信息不存在');
  1867. }
  1868. var eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰
  1869. if (!eventOpts) {
  1870. return console.warn('事件信息不存在');
  1871. }
  1872. // [['handle',[1,2,a]],['handle1',[1,2,a]]]
  1873. var eventType = event.type;
  1874. var ret = [];
  1875. eventOpts.forEach(function (eventOpt) {
  1876. var type = eventOpt[0];
  1877. var eventsArray = eventOpt[1];
  1878. var isCustom = type.charAt(0) === CUSTOM;
  1879. type = isCustom ? type.slice(1) : type;
  1880. var isOnce = type.charAt(0) === ONCE;
  1881. type = isOnce ? type.slice(1) : type;
  1882. if (eventsArray && isMatchEventType(eventType, type)) {
  1883. eventsArray.forEach(function (eventArray) {
  1884. var methodName = eventArray[0];
  1885. if (methodName) {
  1886. var handlerCtx = _this2.$vm;
  1887. if (handlerCtx.$options.generic) {
  1888. // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots
  1889. handlerCtx = getContextVm(handlerCtx) || handlerCtx;
  1890. }
  1891. if (methodName === '$emit') {
  1892. handlerCtx.$emit.apply(handlerCtx, processEventArgs(_this2.$vm, event, eventArray[1], eventArray[2], isCustom, methodName));
  1893. return;
  1894. }
  1895. var handler = handlerCtx[methodName];
  1896. if (!isFn(handler)) {
  1897. var _type = _this2.$vm.mpType === 'page' ? 'Page' : 'Component';
  1898. var path = _this2.route || _this2.is;
  1899. throw new Error("".concat(_type, " \"").concat(path, "\" does not have a method \"").concat(methodName, "\""));
  1900. }
  1901. if (isOnce) {
  1902. if (handler.once) {
  1903. return;
  1904. }
  1905. handler.once = true;
  1906. }
  1907. var params = processEventArgs(_this2.$vm, event, eventArray[1], eventArray[2], isCustom, methodName);
  1908. params = Array.isArray(params) ? params : [];
  1909. // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据
  1910. if (/=\s*\S+\.eventParams\s*\|\|\s*\S+\[['"]event-params['"]\]/.test(handler.toString())) {
  1911. // eslint-disable-next-line no-sparse-arrays
  1912. params = params.concat([,,,,,,,,,, event]);
  1913. }
  1914. ret.push(handler.apply(handlerCtx, params));
  1915. }
  1916. });
  1917. }
  1918. });
  1919. if (eventType === 'input' && ret.length === 1 && typeof ret[0] !== 'undefined') {
  1920. return ret[0];
  1921. }
  1922. }
  1923. var eventChannels = {};
  1924. function getEventChannel(id) {
  1925. var eventChannel = eventChannels[id];
  1926. delete eventChannels[id];
  1927. return eventChannel;
  1928. }
  1929. var hooks = ['onShow', 'onHide', 'onError', 'onPageNotFound', 'onThemeChange', 'onUnhandledRejection'];
  1930. function initEventChannel() {
  1931. _vue.default.prototype.getOpenerEventChannel = function () {
  1932. // 微信小程序使用自身getOpenerEventChannel
  1933. {
  1934. return this.$scope.getOpenerEventChannel();
  1935. }
  1936. };
  1937. var callHook = _vue.default.prototype.__call_hook;
  1938. _vue.default.prototype.__call_hook = function (hook, args) {
  1939. if (hook === 'onLoad' && args && args.__id__) {
  1940. this.__eventChannel__ = getEventChannel(args.__id__);
  1941. delete args.__id__;
  1942. }
  1943. return callHook.call(this, hook, args);
  1944. };
  1945. }
  1946. function initScopedSlotsParams() {
  1947. var center = {};
  1948. var parents = {};
  1949. function currentId(fn) {
  1950. var vueIds = this.$options.propsData.vueId;
  1951. if (vueIds) {
  1952. var vueId = vueIds.split(',')[0];
  1953. fn(vueId);
  1954. }
  1955. }
  1956. _vue.default.prototype.$hasSSP = function (vueId) {
  1957. var slot = center[vueId];
  1958. if (!slot) {
  1959. parents[vueId] = this;
  1960. this.$on('hook:destroyed', function () {
  1961. delete parents[vueId];
  1962. });
  1963. }
  1964. return slot;
  1965. };
  1966. _vue.default.prototype.$getSSP = function (vueId, name, needAll) {
  1967. var slot = center[vueId];
  1968. if (slot) {
  1969. var params = slot[name] || [];
  1970. if (needAll) {
  1971. return params;
  1972. }
  1973. return params[0];
  1974. }
  1975. };
  1976. _vue.default.prototype.$setSSP = function (name, value) {
  1977. var index = 0;
  1978. currentId.call(this, function (vueId) {
  1979. var slot = center[vueId];
  1980. var params = slot[name] = slot[name] || [];
  1981. params.push(value);
  1982. index = params.length - 1;
  1983. });
  1984. return index;
  1985. };
  1986. _vue.default.prototype.$initSSP = function () {
  1987. currentId.call(this, function (vueId) {
  1988. center[vueId] = {};
  1989. });
  1990. };
  1991. _vue.default.prototype.$callSSP = function () {
  1992. currentId.call(this, function (vueId) {
  1993. if (parents[vueId]) {
  1994. parents[vueId].$forceUpdate();
  1995. }
  1996. });
  1997. };
  1998. _vue.default.mixin({
  1999. destroyed: function destroyed() {
  2000. var propsData = this.$options.propsData;
  2001. var vueId = propsData && propsData.vueId;
  2002. if (vueId) {
  2003. delete center[vueId];
  2004. delete parents[vueId];
  2005. }
  2006. }
  2007. });
  2008. }
  2009. function parseBaseApp(vm, _ref4) {
  2010. var mocks = _ref4.mocks,
  2011. initRefs = _ref4.initRefs;
  2012. initEventChannel();
  2013. {
  2014. initScopedSlotsParams();
  2015. }
  2016. if (vm.$options.store) {
  2017. _vue.default.prototype.$store = vm.$options.store;
  2018. }
  2019. uniIdMixin(_vue.default);
  2020. _vue.default.prototype.mpHost = "mp-weixin";
  2021. _vue.default.mixin({
  2022. beforeCreate: function beforeCreate() {
  2023. if (!this.$options.mpType) {
  2024. return;
  2025. }
  2026. this.mpType = this.$options.mpType;
  2027. this.$mp = (0, _defineProperty2.default)({
  2028. data: {}
  2029. }, this.mpType, this.$options.mpInstance);
  2030. this.$scope = this.$options.mpInstance;
  2031. delete this.$options.mpType;
  2032. delete this.$options.mpInstance;
  2033. if (this.mpType === 'page' && typeof getApp === 'function') {
  2034. // hack vue-i18n
  2035. var app = getApp();
  2036. if (app.$vm && app.$vm.$i18n) {
  2037. this._i18n = app.$vm.$i18n;
  2038. }
  2039. }
  2040. if (this.mpType !== 'app') {
  2041. initRefs(this);
  2042. initMocks(this, mocks);
  2043. }
  2044. }
  2045. });
  2046. var appOptions = {
  2047. onLaunch: function onLaunch(args) {
  2048. if (this.$vm) {
  2049. // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前
  2050. return;
  2051. }
  2052. {
  2053. if (wx.canIUse && !wx.canIUse('nextTick')) {
  2054. // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断
  2055. console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');
  2056. }
  2057. }
  2058. this.$vm = vm;
  2059. this.$vm.$mp = {
  2060. app: this
  2061. };
  2062. this.$vm.$scope = this;
  2063. // vm 上也挂载 globalData
  2064. this.$vm.globalData = this.globalData;
  2065. this.$vm._isMounted = true;
  2066. this.$vm.__call_hook('mounted', args);
  2067. this.$vm.__call_hook('onLaunch', args);
  2068. }
  2069. };
  2070. // 兼容旧版本 globalData
  2071. appOptions.globalData = vm.$options.globalData || {};
  2072. // 将 methods 中的方法挂在 getApp() 中
  2073. var methods = vm.$options.methods;
  2074. if (methods) {
  2075. Object.keys(methods).forEach(function (name) {
  2076. appOptions[name] = methods[name];
  2077. });
  2078. }
  2079. initAppLocale(_vue.default, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);
  2080. initHooks(appOptions, hooks);
  2081. initUnknownHooks(appOptions, vm.$options);
  2082. return appOptions;
  2083. }
  2084. function parseApp(vm) {
  2085. return parseBaseApp(vm, {
  2086. mocks: mocks,
  2087. initRefs: initRefs
  2088. });
  2089. }
  2090. function createApp(vm) {
  2091. App(parseApp(vm));
  2092. return vm;
  2093. }
  2094. var encodeReserveRE = /[!'()*]/g;
  2095. var encodeReserveReplacer = function encodeReserveReplacer(c) {
  2096. return '%' + c.charCodeAt(0).toString(16);
  2097. };
  2098. var commaRE = /%2C/g;
  2099. // fixed encodeURIComponent which is more conformant to RFC3986:
  2100. // - escapes [!'()*]
  2101. // - preserve commas
  2102. var encode = function encode(str) {
  2103. return encodeURIComponent(str).replace(encodeReserveRE, encodeReserveReplacer).replace(commaRE, ',');
  2104. };
  2105. function stringifyQuery(obj) {
  2106. var encodeStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : encode;
  2107. var res = obj ? Object.keys(obj).map(function (key) {
  2108. var val = obj[key];
  2109. if (val === undefined) {
  2110. return '';
  2111. }
  2112. if (val === null) {
  2113. return encodeStr(key);
  2114. }
  2115. if (Array.isArray(val)) {
  2116. var result = [];
  2117. val.forEach(function (val2) {
  2118. if (val2 === undefined) {
  2119. return;
  2120. }
  2121. if (val2 === null) {
  2122. result.push(encodeStr(key));
  2123. } else {
  2124. result.push(encodeStr(key) + '=' + encodeStr(val2));
  2125. }
  2126. });
  2127. return result.join('&');
  2128. }
  2129. return encodeStr(key) + '=' + encodeStr(val);
  2130. }).filter(function (x) {
  2131. return x.length > 0;
  2132. }).join('&') : null;
  2133. return res ? "?".concat(res) : '';
  2134. }
  2135. function parseBaseComponent(vueComponentOptions) {
  2136. var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
  2137. isPage = _ref5.isPage,
  2138. initRelation = _ref5.initRelation;
  2139. var needVueOptions = arguments.length > 2 ? arguments[2] : undefined;
  2140. var _initVueComponent = initVueComponent(_vue.default, vueComponentOptions),
  2141. _initVueComponent2 = (0, _slicedToArray2.default)(_initVueComponent, 2),
  2142. VueComponent = _initVueComponent2[0],
  2143. vueOptions = _initVueComponent2[1];
  2144. var options = _objectSpread({
  2145. multipleSlots: true,
  2146. // styleIsolation: 'apply-shared',
  2147. addGlobalClass: true
  2148. }, vueOptions.options || {});
  2149. {
  2150. // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项
  2151. if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {
  2152. Object.assign(options, vueOptions['mp-weixin'].options);
  2153. }
  2154. }
  2155. var componentOptions = {
  2156. options: options,
  2157. data: initData(vueOptions, _vue.default.prototype),
  2158. behaviors: initBehaviors(vueOptions, initBehavior),
  2159. properties: initProperties(vueOptions.props, false, vueOptions.__file, options),
  2160. lifetimes: {
  2161. attached: function attached() {
  2162. var properties = this.properties;
  2163. var options = {
  2164. mpType: isPage.call(this) ? 'page' : 'component',
  2165. mpInstance: this,
  2166. propsData: properties
  2167. };
  2168. initVueIds(properties.vueId, this);
  2169. // 处理父子关系
  2170. initRelation.call(this, {
  2171. vuePid: this._$vuePid,
  2172. vueOptions: options
  2173. });
  2174. // 初始化 vue 实例
  2175. this.$vm = new VueComponent(options);
  2176. // 处理$slots,$scopedSlots(暂不支持动态变化$slots)
  2177. initSlots(this.$vm, properties.vueSlots);
  2178. // 触发首次 setData
  2179. this.$vm.$mount();
  2180. },
  2181. ready: function ready() {
  2182. // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发
  2183. // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800
  2184. if (this.$vm) {
  2185. this.$vm._isMounted = true;
  2186. this.$vm.__call_hook('mounted');
  2187. this.$vm.__call_hook('onReady');
  2188. }
  2189. },
  2190. detached: function detached() {
  2191. this.$vm && this.$vm.$destroy();
  2192. }
  2193. },
  2194. pageLifetimes: {
  2195. show: function show(args) {
  2196. this.$vm && this.$vm.__call_hook('onPageShow', args);
  2197. },
  2198. hide: function hide() {
  2199. this.$vm && this.$vm.__call_hook('onPageHide');
  2200. },
  2201. resize: function resize(size) {
  2202. this.$vm && this.$vm.__call_hook('onPageResize', size);
  2203. }
  2204. },
  2205. methods: {
  2206. __l: handleLink,
  2207. __e: handleEvent
  2208. }
  2209. };
  2210. // externalClasses
  2211. if (vueOptions.externalClasses) {
  2212. componentOptions.externalClasses = vueOptions.externalClasses;
  2213. }
  2214. if (Array.isArray(vueOptions.wxsCallMethods)) {
  2215. vueOptions.wxsCallMethods.forEach(function (callMethod) {
  2216. componentOptions.methods[callMethod] = function (args) {
  2217. return this.$vm[callMethod](args);
  2218. };
  2219. });
  2220. }
  2221. if (needVueOptions) {
  2222. return [componentOptions, vueOptions, VueComponent];
  2223. }
  2224. if (isPage) {
  2225. return componentOptions;
  2226. }
  2227. return [componentOptions, VueComponent];
  2228. }
  2229. function parseComponent(vueComponentOptions, needVueOptions) {
  2230. return parseBaseComponent(vueComponentOptions, {
  2231. isPage: isPage,
  2232. initRelation: initRelation
  2233. }, needVueOptions);
  2234. }
  2235. var hooks$1 = ['onShow', 'onHide', 'onUnload'];
  2236. hooks$1.push.apply(hooks$1, PAGE_EVENT_HOOKS);
  2237. function parseBasePage(vuePageOptions) {
  2238. var _parseComponent = parseComponent(vuePageOptions, true),
  2239. _parseComponent2 = (0, _slicedToArray2.default)(_parseComponent, 2),
  2240. pageOptions = _parseComponent2[0],
  2241. vueOptions = _parseComponent2[1];
  2242. initHooks(pageOptions.methods, hooks$1, vueOptions);
  2243. pageOptions.methods.onLoad = function (query) {
  2244. this.options = query;
  2245. var copyQuery = Object.assign({}, query);
  2246. delete copyQuery.__id__;
  2247. this.$page = {
  2248. fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)
  2249. };
  2250. this.$vm.$mp.query = query; // 兼容 mpvue
  2251. this.$vm.__call_hook('onLoad', query);
  2252. };
  2253. {
  2254. initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);
  2255. }
  2256. {
  2257. initWorkletMethods(pageOptions.methods, vueOptions.methods);
  2258. }
  2259. return pageOptions;
  2260. }
  2261. function parsePage(vuePageOptions) {
  2262. return parseBasePage(vuePageOptions);
  2263. }
  2264. function createPage(vuePageOptions) {
  2265. {
  2266. return Component(parsePage(vuePageOptions));
  2267. }
  2268. }
  2269. function createComponent(vueOptions) {
  2270. {
  2271. return Component(parseComponent(vueOptions));
  2272. }
  2273. }
  2274. function createSubpackageApp(vm) {
  2275. var appOptions = parseApp(vm);
  2276. var app = getApp({
  2277. allowDefault: true
  2278. });
  2279. vm.$scope = app;
  2280. var globalData = app.globalData;
  2281. if (globalData) {
  2282. Object.keys(appOptions.globalData).forEach(function (name) {
  2283. if (!hasOwn(globalData, name)) {
  2284. globalData[name] = appOptions.globalData[name];
  2285. }
  2286. });
  2287. }
  2288. Object.keys(appOptions).forEach(function (name) {
  2289. if (!hasOwn(app, name)) {
  2290. app[name] = appOptions[name];
  2291. }
  2292. });
  2293. if (isFn(appOptions.onShow) && wx.onAppShow) {
  2294. wx.onAppShow(function () {
  2295. for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
  2296. args[_key5] = arguments[_key5];
  2297. }
  2298. vm.__call_hook('onShow', args);
  2299. });
  2300. }
  2301. if (isFn(appOptions.onHide) && wx.onAppHide) {
  2302. wx.onAppHide(function () {
  2303. for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
  2304. args[_key6] = arguments[_key6];
  2305. }
  2306. vm.__call_hook('onHide', args);
  2307. });
  2308. }
  2309. if (isFn(appOptions.onLaunch)) {
  2310. var args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();
  2311. vm.__call_hook('onLaunch', args);
  2312. }
  2313. return vm;
  2314. }
  2315. function createPlugin(vm) {
  2316. var appOptions = parseApp(vm);
  2317. if (isFn(appOptions.onShow) && wx.onAppShow) {
  2318. wx.onAppShow(function () {
  2319. for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {
  2320. args[_key7] = arguments[_key7];
  2321. }
  2322. vm.__call_hook('onShow', args);
  2323. });
  2324. }
  2325. if (isFn(appOptions.onHide) && wx.onAppHide) {
  2326. wx.onAppHide(function () {
  2327. for (var _len8 = arguments.length, args = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {
  2328. args[_key8] = arguments[_key8];
  2329. }
  2330. vm.__call_hook('onHide', args);
  2331. });
  2332. }
  2333. if (isFn(appOptions.onLaunch)) {
  2334. var args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();
  2335. vm.__call_hook('onLaunch', args);
  2336. }
  2337. return vm;
  2338. }
  2339. todos.forEach(function (todoApi) {
  2340. protocols[todoApi] = false;
  2341. });
  2342. canIUses.forEach(function (canIUseApi) {
  2343. var apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name : canIUseApi;
  2344. if (!wx.canIUse(apiName)) {
  2345. protocols[canIUseApi] = false;
  2346. }
  2347. });
  2348. var uni = {};
  2349. if (typeof Proxy !== 'undefined' && "mp-weixin" !== 'app-plus') {
  2350. uni = new Proxy({}, {
  2351. get: function get(target, name) {
  2352. if (hasOwn(target, name)) {
  2353. return target[name];
  2354. }
  2355. if (baseApi[name]) {
  2356. return baseApi[name];
  2357. }
  2358. if (api[name]) {
  2359. return promisify(name, api[name]);
  2360. }
  2361. {
  2362. if (extraApi[name]) {
  2363. return promisify(name, extraApi[name]);
  2364. }
  2365. if (todoApis[name]) {
  2366. return promisify(name, todoApis[name]);
  2367. }
  2368. }
  2369. if (eventApi[name]) {
  2370. return eventApi[name];
  2371. }
  2372. return promisify(name, wrapper(name, wx[name]));
  2373. },
  2374. set: function set(target, name, value) {
  2375. target[name] = value;
  2376. return true;
  2377. }
  2378. });
  2379. } else {
  2380. Object.keys(baseApi).forEach(function (name) {
  2381. uni[name] = baseApi[name];
  2382. });
  2383. {
  2384. Object.keys(todoApis).forEach(function (name) {
  2385. uni[name] = promisify(name, todoApis[name]);
  2386. });
  2387. Object.keys(extraApi).forEach(function (name) {
  2388. uni[name] = promisify(name, extraApi[name]);
  2389. });
  2390. }
  2391. Object.keys(eventApi).forEach(function (name) {
  2392. uni[name] = eventApi[name];
  2393. });
  2394. Object.keys(api).forEach(function (name) {
  2395. uni[name] = promisify(name, api[name]);
  2396. });
  2397. Object.keys(wx).forEach(function (name) {
  2398. if (hasOwn(wx, name) || hasOwn(protocols, name)) {
  2399. uni[name] = promisify(name, wrapper(name, wx[name]));
  2400. }
  2401. });
  2402. }
  2403. wx.createApp = createApp;
  2404. wx.createPage = createPage;
  2405. wx.createComponent = createComponent;
  2406. wx.createSubpackageApp = createSubpackageApp;
  2407. wx.createPlugin = createPlugin;
  2408. var uni$1 = uni;
  2409. var _default = uni$1;
  2410. exports.default = _default;
  2411. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js */ 1)["default"], __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 3)))
  2412. /***/ }),
  2413. /* 3 */
  2414. /*!***********************************!*\
  2415. !*** (webpack)/buildin/global.js ***!
  2416. \***********************************/
  2417. /*! no static exports found */
  2418. /***/ (function(module, exports) {
  2419. var g;
  2420. // This works in non-strict mode
  2421. g = (function() {
  2422. return this;
  2423. })();
  2424. try {
  2425. // This works if eval is allowed (see CSP)
  2426. g = g || new Function("return this")();
  2427. } catch (e) {
  2428. // This works if the window reference is available
  2429. if (typeof window === "object") g = window;
  2430. }
  2431. // g can still be undefined, but nothing to do about it...
  2432. // We return undefined, instead of nothing here, so it's
  2433. // easier to handle this case. if(!global) { ...}
  2434. module.exports = g;
  2435. /***/ }),
  2436. /* 4 */
  2437. /*!**********************************************************************!*\
  2438. !*** ./node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
  2439. \**********************************************************************/
  2440. /*! no static exports found */
  2441. /***/ (function(module, exports) {
  2442. function _interopRequireDefault(obj) {
  2443. return obj && obj.__esModule ? obj : {
  2444. "default": obj
  2445. };
  2446. }
  2447. module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2448. /***/ }),
  2449. /* 5 */
  2450. /*!**************************************************************!*\
  2451. !*** ./node_modules/@babel/runtime/helpers/slicedToArray.js ***!
  2452. \**************************************************************/
  2453. /*! no static exports found */
  2454. /***/ (function(module, exports, __webpack_require__) {
  2455. var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 6);
  2456. var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ 7);
  2457. var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 8);
  2458. var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 10);
  2459. function _slicedToArray(arr, i) {
  2460. return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
  2461. }
  2462. module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2463. /***/ }),
  2464. /* 6 */
  2465. /*!***************************************************************!*\
  2466. !*** ./node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
  2467. \***************************************************************/
  2468. /*! no static exports found */
  2469. /***/ (function(module, exports) {
  2470. function _arrayWithHoles(arr) {
  2471. if (Array.isArray(arr)) return arr;
  2472. }
  2473. module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2474. /***/ }),
  2475. /* 7 */
  2476. /*!*********************************************************************!*\
  2477. !*** ./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
  2478. \*********************************************************************/
  2479. /*! no static exports found */
  2480. /***/ (function(module, exports) {
  2481. function _iterableToArrayLimit(arr, i) {
  2482. var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
  2483. if (null != _i) {
  2484. var _s,
  2485. _e,
  2486. _x,
  2487. _r,
  2488. _arr = [],
  2489. _n = !0,
  2490. _d = !1;
  2491. try {
  2492. if (_x = (_i = _i.call(arr)).next, 0 === i) {
  2493. if (Object(_i) !== _i) return;
  2494. _n = !1;
  2495. } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {
  2496. ;
  2497. }
  2498. } catch (err) {
  2499. _d = !0, _e = err;
  2500. } finally {
  2501. try {
  2502. if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return;
  2503. } finally {
  2504. if (_d) throw _e;
  2505. }
  2506. }
  2507. return _arr;
  2508. }
  2509. }
  2510. module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2511. /***/ }),
  2512. /* 8 */
  2513. /*!***************************************************************************!*\
  2514. !*** ./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
  2515. \***************************************************************************/
  2516. /*! no static exports found */
  2517. /***/ (function(module, exports, __webpack_require__) {
  2518. var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 9);
  2519. function _unsupportedIterableToArray(o, minLen) {
  2520. if (!o) return;
  2521. if (typeof o === "string") return arrayLikeToArray(o, minLen);
  2522. var n = Object.prototype.toString.call(o).slice(8, -1);
  2523. if (n === "Object" && o.constructor) n = o.constructor.name;
  2524. if (n === "Map" || n === "Set") return Array.from(o);
  2525. if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
  2526. }
  2527. module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2528. /***/ }),
  2529. /* 9 */
  2530. /*!*****************************************************************!*\
  2531. !*** ./node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
  2532. \*****************************************************************/
  2533. /*! no static exports found */
  2534. /***/ (function(module, exports) {
  2535. function _arrayLikeToArray(arr, len) {
  2536. if (len == null || len > arr.length) len = arr.length;
  2537. for (var i = 0, arr2 = new Array(len); i < len; i++) {
  2538. arr2[i] = arr[i];
  2539. }
  2540. return arr2;
  2541. }
  2542. module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2543. /***/ }),
  2544. /* 10 */
  2545. /*!****************************************************************!*\
  2546. !*** ./node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
  2547. \****************************************************************/
  2548. /*! no static exports found */
  2549. /***/ (function(module, exports) {
  2550. function _nonIterableRest() {
  2551. throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  2552. }
  2553. module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2554. /***/ }),
  2555. /* 11 */
  2556. /*!***************************************************************!*\
  2557. !*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***!
  2558. \***************************************************************/
  2559. /*! no static exports found */
  2560. /***/ (function(module, exports, __webpack_require__) {
  2561. var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 12);
  2562. function _defineProperty(obj, key, value) {
  2563. key = toPropertyKey(key);
  2564. if (key in obj) {
  2565. Object.defineProperty(obj, key, {
  2566. value: value,
  2567. enumerable: true,
  2568. configurable: true,
  2569. writable: true
  2570. });
  2571. } else {
  2572. obj[key] = value;
  2573. }
  2574. return obj;
  2575. }
  2576. module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2577. /***/ }),
  2578. /* 12 */
  2579. /*!**************************************************************!*\
  2580. !*** ./node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
  2581. \**************************************************************/
  2582. /*! no static exports found */
  2583. /***/ (function(module, exports, __webpack_require__) {
  2584. var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
  2585. var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ 14);
  2586. function _toPropertyKey(arg) {
  2587. var key = toPrimitive(arg, "string");
  2588. return _typeof(key) === "symbol" ? key : String(key);
  2589. }
  2590. module.exports = _toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2591. /***/ }),
  2592. /* 13 */
  2593. /*!*******************************************************!*\
  2594. !*** ./node_modules/@babel/runtime/helpers/typeof.js ***!
  2595. \*******************************************************/
  2596. /*! no static exports found */
  2597. /***/ (function(module, exports) {
  2598. function _typeof(obj) {
  2599. "@babel/helpers - typeof";
  2600. return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
  2601. return typeof obj;
  2602. } : function (obj) {
  2603. return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
  2604. }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(obj);
  2605. }
  2606. module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2607. /***/ }),
  2608. /* 14 */
  2609. /*!************************************************************!*\
  2610. !*** ./node_modules/@babel/runtime/helpers/toPrimitive.js ***!
  2611. \************************************************************/
  2612. /*! no static exports found */
  2613. /***/ (function(module, exports, __webpack_require__) {
  2614. var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
  2615. function _toPrimitive(input, hint) {
  2616. if (_typeof(input) !== "object" || input === null) return input;
  2617. var prim = input[Symbol.toPrimitive];
  2618. if (prim !== undefined) {
  2619. var res = prim.call(input, hint || "default");
  2620. if (_typeof(res) !== "object") return res;
  2621. throw new TypeError("@@toPrimitive must return a primitive value.");
  2622. }
  2623. return (hint === "string" ? String : Number)(input);
  2624. }
  2625. module.exports = _toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2626. /***/ }),
  2627. /* 15 */
  2628. /*!**********************************************************!*\
  2629. !*** ./node_modules/@babel/runtime/helpers/construct.js ***!
  2630. \**********************************************************/
  2631. /*! no static exports found */
  2632. /***/ (function(module, exports, __webpack_require__) {
  2633. var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ 16);
  2634. var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ 17);
  2635. function _construct(Parent, args, Class) {
  2636. if (isNativeReflectConstruct()) {
  2637. module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports["default"] = module.exports;
  2638. } else {
  2639. module.exports = _construct = function _construct(Parent, args, Class) {
  2640. var a = [null];
  2641. a.push.apply(a, args);
  2642. var Constructor = Function.bind.apply(Parent, a);
  2643. var instance = new Constructor();
  2644. if (Class) setPrototypeOf(instance, Class.prototype);
  2645. return instance;
  2646. }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2647. }
  2648. return _construct.apply(null, arguments);
  2649. }
  2650. module.exports = _construct, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2651. /***/ }),
  2652. /* 16 */
  2653. /*!***************************************************************!*\
  2654. !*** ./node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
  2655. \***************************************************************/
  2656. /*! no static exports found */
  2657. /***/ (function(module, exports) {
  2658. function _setPrototypeOf(o, p) {
  2659. module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
  2660. o.__proto__ = p;
  2661. return o;
  2662. }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2663. return _setPrototypeOf(o, p);
  2664. }
  2665. module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2666. /***/ }),
  2667. /* 17 */
  2668. /*!*************************************************************************!*\
  2669. !*** ./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js ***!
  2670. \*************************************************************************/
  2671. /*! no static exports found */
  2672. /***/ (function(module, exports) {
  2673. function _isNativeReflectConstruct() {
  2674. if (typeof Reflect === "undefined" || !Reflect.construct) return false;
  2675. if (Reflect.construct.sham) return false;
  2676. if (typeof Proxy === "function") return true;
  2677. try {
  2678. Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
  2679. return true;
  2680. } catch (e) {
  2681. return false;
  2682. }
  2683. }
  2684. module.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2685. /***/ }),
  2686. /* 18 */
  2687. /*!******************************************************************!*\
  2688. !*** ./node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
  2689. \******************************************************************/
  2690. /*! no static exports found */
  2691. /***/ (function(module, exports, __webpack_require__) {
  2692. var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ 19);
  2693. var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 20);
  2694. var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 8);
  2695. var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ 21);
  2696. function _toConsumableArray(arr) {
  2697. return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
  2698. }
  2699. module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2700. /***/ }),
  2701. /* 19 */
  2702. /*!******************************************************************!*\
  2703. !*** ./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
  2704. \******************************************************************/
  2705. /*! no static exports found */
  2706. /***/ (function(module, exports, __webpack_require__) {
  2707. var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 9);
  2708. function _arrayWithoutHoles(arr) {
  2709. if (Array.isArray(arr)) return arrayLikeToArray(arr);
  2710. }
  2711. module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2712. /***/ }),
  2713. /* 20 */
  2714. /*!****************************************************************!*\
  2715. !*** ./node_modules/@babel/runtime/helpers/iterableToArray.js ***!
  2716. \****************************************************************/
  2717. /*! no static exports found */
  2718. /***/ (function(module, exports) {
  2719. function _iterableToArray(iter) {
  2720. if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
  2721. }
  2722. module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2723. /***/ }),
  2724. /* 21 */
  2725. /*!******************************************************************!*\
  2726. !*** ./node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
  2727. \******************************************************************/
  2728. /*! no static exports found */
  2729. /***/ (function(module, exports) {
  2730. function _nonIterableSpread() {
  2731. throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  2732. }
  2733. module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
  2734. /***/ }),
  2735. /* 22 */
  2736. /*!*************************************************************!*\
  2737. !*** ./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js ***!
  2738. \*************************************************************/
  2739. /*! no static exports found */
  2740. /***/ (function(module, exports, __webpack_require__) {
  2741. "use strict";
  2742. /* WEBPACK VAR INJECTION */(function(uni, global) {
  2743. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  2744. Object.defineProperty(exports, "__esModule", {
  2745. value: true
  2746. });
  2747. exports.LOCALE_ZH_HANT = exports.LOCALE_ZH_HANS = exports.LOCALE_FR = exports.LOCALE_ES = exports.LOCALE_EN = exports.I18n = exports.Formatter = void 0;
  2748. exports.compileI18nJsonStr = compileI18nJsonStr;
  2749. exports.hasI18nJson = hasI18nJson;
  2750. exports.initVueI18n = initVueI18n;
  2751. exports.isI18nStr = isI18nStr;
  2752. exports.isString = void 0;
  2753. exports.normalizeLocale = normalizeLocale;
  2754. exports.parseI18nJson = parseI18nJson;
  2755. exports.resolveLocale = resolveLocale;
  2756. var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 5));
  2757. var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
  2758. var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
  2759. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  2760. var isObject = function isObject(val) {
  2761. return val !== null && (0, _typeof2.default)(val) === 'object';
  2762. };
  2763. var defaultDelimiters = ['{', '}'];
  2764. var BaseFormatter = /*#__PURE__*/function () {
  2765. function BaseFormatter() {
  2766. (0, _classCallCheck2.default)(this, BaseFormatter);
  2767. this._caches = Object.create(null);
  2768. }
  2769. (0, _createClass2.default)(BaseFormatter, [{
  2770. key: "interpolate",
  2771. value: function interpolate(message, values) {
  2772. var delimiters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultDelimiters;
  2773. if (!values) {
  2774. return [message];
  2775. }
  2776. var tokens = this._caches[message];
  2777. if (!tokens) {
  2778. tokens = parse(message, delimiters);
  2779. this._caches[message] = tokens;
  2780. }
  2781. return compile(tokens, values);
  2782. }
  2783. }]);
  2784. return BaseFormatter;
  2785. }();
  2786. exports.Formatter = BaseFormatter;
  2787. var RE_TOKEN_LIST_VALUE = /^(?:\d)+/;
  2788. var RE_TOKEN_NAMED_VALUE = /^(?:\w)+/;
  2789. function parse(format, _ref) {
  2790. var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  2791. startDelimiter = _ref2[0],
  2792. endDelimiter = _ref2[1];
  2793. var tokens = [];
  2794. var position = 0;
  2795. var text = '';
  2796. while (position < format.length) {
  2797. var char = format[position++];
  2798. if (char === startDelimiter) {
  2799. if (text) {
  2800. tokens.push({
  2801. type: 'text',
  2802. value: text
  2803. });
  2804. }
  2805. text = '';
  2806. var sub = '';
  2807. char = format[position++];
  2808. while (char !== undefined && char !== endDelimiter) {
  2809. sub += char;
  2810. char = format[position++];
  2811. }
  2812. var isClosed = char === endDelimiter;
  2813. var type = RE_TOKEN_LIST_VALUE.test(sub) ? 'list' : isClosed && RE_TOKEN_NAMED_VALUE.test(sub) ? 'named' : 'unknown';
  2814. tokens.push({
  2815. value: sub,
  2816. type: type
  2817. });
  2818. }
  2819. // else if (char === '%') {
  2820. // // when found rails i18n syntax, skip text capture
  2821. // if (format[position] !== '{') {
  2822. // text += char
  2823. // }
  2824. // }
  2825. else {
  2826. text += char;
  2827. }
  2828. }
  2829. text && tokens.push({
  2830. type: 'text',
  2831. value: text
  2832. });
  2833. return tokens;
  2834. }
  2835. function compile(tokens, values) {
  2836. var compiled = [];
  2837. var index = 0;
  2838. var mode = Array.isArray(values) ? 'list' : isObject(values) ? 'named' : 'unknown';
  2839. if (mode === 'unknown') {
  2840. return compiled;
  2841. }
  2842. while (index < tokens.length) {
  2843. var token = tokens[index];
  2844. switch (token.type) {
  2845. case 'text':
  2846. compiled.push(token.value);
  2847. break;
  2848. case 'list':
  2849. compiled.push(values[parseInt(token.value, 10)]);
  2850. break;
  2851. case 'named':
  2852. if (mode === 'named') {
  2853. compiled.push(values[token.value]);
  2854. } else {
  2855. if (true) {
  2856. console.warn("Type of token '".concat(token.type, "' and format of value '").concat(mode, "' don't match!"));
  2857. }
  2858. }
  2859. break;
  2860. case 'unknown':
  2861. if (true) {
  2862. console.warn("Detect 'unknown' type of token!");
  2863. }
  2864. break;
  2865. }
  2866. index++;
  2867. }
  2868. return compiled;
  2869. }
  2870. var LOCALE_ZH_HANS = 'zh-Hans';
  2871. exports.LOCALE_ZH_HANS = LOCALE_ZH_HANS;
  2872. var LOCALE_ZH_HANT = 'zh-Hant';
  2873. exports.LOCALE_ZH_HANT = LOCALE_ZH_HANT;
  2874. var LOCALE_EN = 'en';
  2875. exports.LOCALE_EN = LOCALE_EN;
  2876. var LOCALE_FR = 'fr';
  2877. exports.LOCALE_FR = LOCALE_FR;
  2878. var LOCALE_ES = 'es';
  2879. exports.LOCALE_ES = LOCALE_ES;
  2880. var hasOwnProperty = Object.prototype.hasOwnProperty;
  2881. var hasOwn = function hasOwn(val, key) {
  2882. return hasOwnProperty.call(val, key);
  2883. };
  2884. var defaultFormatter = new BaseFormatter();
  2885. function include(str, parts) {
  2886. return !!parts.find(function (part) {
  2887. return str.indexOf(part) !== -1;
  2888. });
  2889. }
  2890. function startsWith(str, parts) {
  2891. return parts.find(function (part) {
  2892. return str.indexOf(part) === 0;
  2893. });
  2894. }
  2895. function normalizeLocale(locale, messages) {
  2896. if (!locale) {
  2897. return;
  2898. }
  2899. locale = locale.trim().replace(/_/g, '-');
  2900. if (messages && messages[locale]) {
  2901. return locale;
  2902. }
  2903. locale = locale.toLowerCase();
  2904. if (locale === 'chinese') {
  2905. // 支付宝
  2906. return LOCALE_ZH_HANS;
  2907. }
  2908. if (locale.indexOf('zh') === 0) {
  2909. if (locale.indexOf('-hans') > -1) {
  2910. return LOCALE_ZH_HANS;
  2911. }
  2912. if (locale.indexOf('-hant') > -1) {
  2913. return LOCALE_ZH_HANT;
  2914. }
  2915. if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {
  2916. return LOCALE_ZH_HANT;
  2917. }
  2918. return LOCALE_ZH_HANS;
  2919. }
  2920. var locales = [LOCALE_EN, LOCALE_FR, LOCALE_ES];
  2921. if (messages && Object.keys(messages).length > 0) {
  2922. locales = Object.keys(messages);
  2923. }
  2924. var lang = startsWith(locale, locales);
  2925. if (lang) {
  2926. return lang;
  2927. }
  2928. }
  2929. var I18n = /*#__PURE__*/function () {
  2930. function I18n(_ref3) {
  2931. var locale = _ref3.locale,
  2932. fallbackLocale = _ref3.fallbackLocale,
  2933. messages = _ref3.messages,
  2934. watcher = _ref3.watcher,
  2935. formater = _ref3.formater;
  2936. (0, _classCallCheck2.default)(this, I18n);
  2937. this.locale = LOCALE_EN;
  2938. this.fallbackLocale = LOCALE_EN;
  2939. this.message = {};
  2940. this.messages = {};
  2941. this.watchers = [];
  2942. if (fallbackLocale) {
  2943. this.fallbackLocale = fallbackLocale;
  2944. }
  2945. this.formater = formater || defaultFormatter;
  2946. this.messages = messages || {};
  2947. this.setLocale(locale || LOCALE_EN);
  2948. if (watcher) {
  2949. this.watchLocale(watcher);
  2950. }
  2951. }
  2952. (0, _createClass2.default)(I18n, [{
  2953. key: "setLocale",
  2954. value: function setLocale(locale) {
  2955. var _this = this;
  2956. var oldLocale = this.locale;
  2957. this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;
  2958. if (!this.messages[this.locale]) {
  2959. // 可能初始化时不存在
  2960. this.messages[this.locale] = {};
  2961. }
  2962. this.message = this.messages[this.locale];
  2963. // 仅发生变化时,通知
  2964. if (oldLocale !== this.locale) {
  2965. this.watchers.forEach(function (watcher) {
  2966. watcher(_this.locale, oldLocale);
  2967. });
  2968. }
  2969. }
  2970. }, {
  2971. key: "getLocale",
  2972. value: function getLocale() {
  2973. return this.locale;
  2974. }
  2975. }, {
  2976. key: "watchLocale",
  2977. value: function watchLocale(fn) {
  2978. var _this2 = this;
  2979. var index = this.watchers.push(fn) - 1;
  2980. return function () {
  2981. _this2.watchers.splice(index, 1);
  2982. };
  2983. }
  2984. }, {
  2985. key: "add",
  2986. value: function add(locale, message) {
  2987. var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
  2988. var curMessages = this.messages[locale];
  2989. if (curMessages) {
  2990. if (override) {
  2991. Object.assign(curMessages, message);
  2992. } else {
  2993. Object.keys(message).forEach(function (key) {
  2994. if (!hasOwn(curMessages, key)) {
  2995. curMessages[key] = message[key];
  2996. }
  2997. });
  2998. }
  2999. } else {
  3000. this.messages[locale] = message;
  3001. }
  3002. }
  3003. }, {
  3004. key: "f",
  3005. value: function f(message, values, delimiters) {
  3006. return this.formater.interpolate(message, values, delimiters).join('');
  3007. }
  3008. }, {
  3009. key: "t",
  3010. value: function t(key, locale, values) {
  3011. var message = this.message;
  3012. if (typeof locale === 'string') {
  3013. locale = normalizeLocale(locale, this.messages);
  3014. locale && (message = this.messages[locale]);
  3015. } else {
  3016. values = locale;
  3017. }
  3018. if (!hasOwn(message, key)) {
  3019. console.warn("Cannot translate the value of keypath ".concat(key, ". Use the value of keypath as default."));
  3020. return key;
  3021. }
  3022. return this.formater.interpolate(message[key], values).join('');
  3023. }
  3024. }]);
  3025. return I18n;
  3026. }();
  3027. exports.I18n = I18n;
  3028. function watchAppLocale(appVm, i18n) {
  3029. // 需要保证 watch 的触发在组件渲染之前
  3030. if (appVm.$watchLocale) {
  3031. // vue2
  3032. appVm.$watchLocale(function (newLocale) {
  3033. i18n.setLocale(newLocale);
  3034. });
  3035. } else {
  3036. appVm.$watch(function () {
  3037. return appVm.$locale;
  3038. }, function (newLocale) {
  3039. i18n.setLocale(newLocale);
  3040. });
  3041. }
  3042. }
  3043. function getDefaultLocale() {
  3044. if (typeof uni !== 'undefined' && uni.getLocale) {
  3045. return uni.getLocale();
  3046. }
  3047. // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale
  3048. if (typeof global !== 'undefined' && global.getLocale) {
  3049. return global.getLocale();
  3050. }
  3051. return LOCALE_EN;
  3052. }
  3053. function initVueI18n(locale) {
  3054. var messages = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  3055. var fallbackLocale = arguments.length > 2 ? arguments[2] : undefined;
  3056. var watcher = arguments.length > 3 ? arguments[3] : undefined;
  3057. // 兼容旧版本入参
  3058. if (typeof locale !== 'string') {
  3059. var _ref4 = [messages, locale];
  3060. locale = _ref4[0];
  3061. messages = _ref4[1];
  3062. }
  3063. if (typeof locale !== 'string') {
  3064. // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined
  3065. locale = getDefaultLocale();
  3066. }
  3067. if (typeof fallbackLocale !== 'string') {
  3068. fallbackLocale = typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale || LOCALE_EN;
  3069. }
  3070. var i18n = new I18n({
  3071. locale: locale,
  3072. fallbackLocale: fallbackLocale,
  3073. messages: messages,
  3074. watcher: watcher
  3075. });
  3076. var _t = function t(key, values) {
  3077. if (typeof getApp !== 'function') {
  3078. // app view
  3079. /* eslint-disable no-func-assign */
  3080. _t = function t(key, values) {
  3081. return i18n.t(key, values);
  3082. };
  3083. } else {
  3084. var isWatchedAppLocale = false;
  3085. _t = function t(key, values) {
  3086. var appVm = getApp().$vm;
  3087. // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化
  3088. // options: {
  3089. // type: Array,
  3090. // default () {
  3091. // return [{
  3092. // icon: 'shop',
  3093. // text: t("uni-goods-nav.options.shop"),
  3094. // }, {
  3095. // icon: 'cart',
  3096. // text: t("uni-goods-nav.options.cart")
  3097. // }]
  3098. // }
  3099. // },
  3100. if (appVm) {
  3101. // 触发响应式
  3102. appVm.$locale;
  3103. if (!isWatchedAppLocale) {
  3104. isWatchedAppLocale = true;
  3105. watchAppLocale(appVm, i18n);
  3106. }
  3107. }
  3108. return i18n.t(key, values);
  3109. };
  3110. }
  3111. return _t(key, values);
  3112. };
  3113. return {
  3114. i18n: i18n,
  3115. f: function f(message, values, delimiters) {
  3116. return i18n.f(message, values, delimiters);
  3117. },
  3118. t: function t(key, values) {
  3119. return _t(key, values);
  3120. },
  3121. add: function add(locale, message) {
  3122. var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
  3123. return i18n.add(locale, message, override);
  3124. },
  3125. watch: function watch(fn) {
  3126. return i18n.watchLocale(fn);
  3127. },
  3128. getLocale: function getLocale() {
  3129. return i18n.getLocale();
  3130. },
  3131. setLocale: function setLocale(newLocale) {
  3132. return i18n.setLocale(newLocale);
  3133. }
  3134. };
  3135. }
  3136. var isString = function isString(val) {
  3137. return typeof val === 'string';
  3138. };
  3139. exports.isString = isString;
  3140. var formater;
  3141. function hasI18nJson(jsonObj, delimiters) {
  3142. if (!formater) {
  3143. formater = new BaseFormatter();
  3144. }
  3145. return walkJsonObj(jsonObj, function (jsonObj, key) {
  3146. var value = jsonObj[key];
  3147. if (isString(value)) {
  3148. if (isI18nStr(value, delimiters)) {
  3149. return true;
  3150. }
  3151. } else {
  3152. return hasI18nJson(value, delimiters);
  3153. }
  3154. });
  3155. }
  3156. function parseI18nJson(jsonObj, values, delimiters) {
  3157. if (!formater) {
  3158. formater = new BaseFormatter();
  3159. }
  3160. walkJsonObj(jsonObj, function (jsonObj, key) {
  3161. var value = jsonObj[key];
  3162. if (isString(value)) {
  3163. if (isI18nStr(value, delimiters)) {
  3164. jsonObj[key] = compileStr(value, values, delimiters);
  3165. }
  3166. } else {
  3167. parseI18nJson(value, values, delimiters);
  3168. }
  3169. });
  3170. return jsonObj;
  3171. }
  3172. function compileI18nJsonStr(jsonStr, _ref5) {
  3173. var locale = _ref5.locale,
  3174. locales = _ref5.locales,
  3175. delimiters = _ref5.delimiters;
  3176. if (!isI18nStr(jsonStr, delimiters)) {
  3177. return jsonStr;
  3178. }
  3179. if (!formater) {
  3180. formater = new BaseFormatter();
  3181. }
  3182. var localeValues = [];
  3183. Object.keys(locales).forEach(function (name) {
  3184. if (name !== locale) {
  3185. localeValues.push({
  3186. locale: name,
  3187. values: locales[name]
  3188. });
  3189. }
  3190. });
  3191. localeValues.unshift({
  3192. locale: locale,
  3193. values: locales[locale]
  3194. });
  3195. try {
  3196. return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);
  3197. } catch (e) {}
  3198. return jsonStr;
  3199. }
  3200. function isI18nStr(value, delimiters) {
  3201. return value.indexOf(delimiters[0]) > -1;
  3202. }
  3203. function compileStr(value, values, delimiters) {
  3204. return formater.interpolate(value, values, delimiters).join('');
  3205. }
  3206. function compileValue(jsonObj, key, localeValues, delimiters) {
  3207. var value = jsonObj[key];
  3208. if (isString(value)) {
  3209. // 存在国际化
  3210. if (isI18nStr(value, delimiters)) {
  3211. jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);
  3212. if (localeValues.length > 1) {
  3213. // 格式化国际化语言
  3214. var valueLocales = jsonObj[key + 'Locales'] = {};
  3215. localeValues.forEach(function (localValue) {
  3216. valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);
  3217. });
  3218. }
  3219. }
  3220. } else {
  3221. compileJsonObj(value, localeValues, delimiters);
  3222. }
  3223. }
  3224. function compileJsonObj(jsonObj, localeValues, delimiters) {
  3225. walkJsonObj(jsonObj, function (jsonObj, key) {
  3226. compileValue(jsonObj, key, localeValues, delimiters);
  3227. });
  3228. return jsonObj;
  3229. }
  3230. function walkJsonObj(jsonObj, walk) {
  3231. if (Array.isArray(jsonObj)) {
  3232. for (var i = 0; i < jsonObj.length; i++) {
  3233. if (walk(jsonObj, i)) {
  3234. return true;
  3235. }
  3236. }
  3237. } else if (isObject(jsonObj)) {
  3238. for (var key in jsonObj) {
  3239. if (walk(jsonObj, key)) {
  3240. return true;
  3241. }
  3242. }
  3243. }
  3244. return false;
  3245. }
  3246. function resolveLocale(locales) {
  3247. return function (locale) {
  3248. if (!locale) {
  3249. return locale;
  3250. }
  3251. locale = normalizeLocale(locale) || locale;
  3252. return resolveLocaleChain(locale).find(function (locale) {
  3253. return locales.indexOf(locale) > -1;
  3254. });
  3255. };
  3256. }
  3257. function resolveLocaleChain(locale) {
  3258. var chain = [];
  3259. var tokens = locale.split('-');
  3260. while (tokens.length) {
  3261. chain.push(tokens.join('-'));
  3262. tokens.pop();
  3263. }
  3264. return chain;
  3265. }
  3266. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"], __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 3)))
  3267. /***/ }),
  3268. /* 23 */
  3269. /*!***************************************************************!*\
  3270. !*** ./node_modules/@babel/runtime/helpers/classCallCheck.js ***!
  3271. \***************************************************************/
  3272. /*! no static exports found */
  3273. /***/ (function(module, exports) {
  3274. function _classCallCheck(instance, Constructor) {
  3275. if (!(instance instanceof Constructor)) {
  3276. throw new TypeError("Cannot call a class as a function");
  3277. }
  3278. }
  3279. module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
  3280. /***/ }),
  3281. /* 24 */
  3282. /*!************************************************************!*\
  3283. !*** ./node_modules/@babel/runtime/helpers/createClass.js ***!
  3284. \************************************************************/
  3285. /*! no static exports found */
  3286. /***/ (function(module, exports, __webpack_require__) {
  3287. var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 12);
  3288. function _defineProperties(target, props) {
  3289. for (var i = 0; i < props.length; i++) {
  3290. var descriptor = props[i];
  3291. descriptor.enumerable = descriptor.enumerable || false;
  3292. descriptor.configurable = true;
  3293. if ("value" in descriptor) descriptor.writable = true;
  3294. Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
  3295. }
  3296. }
  3297. function _createClass(Constructor, protoProps, staticProps) {
  3298. if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  3299. if (staticProps) _defineProperties(Constructor, staticProps);
  3300. Object.defineProperty(Constructor, "prototype", {
  3301. writable: false
  3302. });
  3303. return Constructor;
  3304. }
  3305. module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
  3306. /***/ }),
  3307. /* 25 */
  3308. /*!******************************************************************************************!*\
  3309. !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js ***!
  3310. \******************************************************************************************/
  3311. /*! exports provided: default */
  3312. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  3313. "use strict";
  3314. __webpack_require__.r(__webpack_exports__);
  3315. /* WEBPACK VAR INJECTION */(function(global) {/*!
  3316. * Vue.js v2.6.11
  3317. * (c) 2014-2023 Evan You
  3318. * Released under the MIT License.
  3319. */
  3320. /* */
  3321. var emptyObject = Object.freeze({});
  3322. // These helpers produce better VM code in JS engines due to their
  3323. // explicitness and function inlining.
  3324. function isUndef (v) {
  3325. return v === undefined || v === null
  3326. }
  3327. function isDef (v) {
  3328. return v !== undefined && v !== null
  3329. }
  3330. function isTrue (v) {
  3331. return v === true
  3332. }
  3333. function isFalse (v) {
  3334. return v === false
  3335. }
  3336. /**
  3337. * Check if value is primitive.
  3338. */
  3339. function isPrimitive (value) {
  3340. return (
  3341. typeof value === 'string' ||
  3342. typeof value === 'number' ||
  3343. // $flow-disable-line
  3344. typeof value === 'symbol' ||
  3345. typeof value === 'boolean'
  3346. )
  3347. }
  3348. /**
  3349. * Quick object check - this is primarily used to tell
  3350. * Objects from primitive values when we know the value
  3351. * is a JSON-compliant type.
  3352. */
  3353. function isObject (obj) {
  3354. return obj !== null && typeof obj === 'object'
  3355. }
  3356. /**
  3357. * Get the raw type string of a value, e.g., [object Object].
  3358. */
  3359. var _toString = Object.prototype.toString;
  3360. function toRawType (value) {
  3361. return _toString.call(value).slice(8, -1)
  3362. }
  3363. /**
  3364. * Strict object type check. Only returns true
  3365. * for plain JavaScript objects.
  3366. */
  3367. function isPlainObject (obj) {
  3368. return _toString.call(obj) === '[object Object]'
  3369. }
  3370. function isRegExp (v) {
  3371. return _toString.call(v) === '[object RegExp]'
  3372. }
  3373. /**
  3374. * Check if val is a valid array index.
  3375. */
  3376. function isValidArrayIndex (val) {
  3377. var n = parseFloat(String(val));
  3378. return n >= 0 && Math.floor(n) === n && isFinite(val)
  3379. }
  3380. function isPromise (val) {
  3381. return (
  3382. isDef(val) &&
  3383. typeof val.then === 'function' &&
  3384. typeof val.catch === 'function'
  3385. )
  3386. }
  3387. /**
  3388. * Convert a value to a string that is actually rendered.
  3389. */
  3390. function toString (val) {
  3391. return val == null
  3392. ? ''
  3393. : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)
  3394. ? JSON.stringify(val, null, 2)
  3395. : String(val)
  3396. }
  3397. /**
  3398. * Convert an input value to a number for persistence.
  3399. * If the conversion fails, return original string.
  3400. */
  3401. function toNumber (val) {
  3402. var n = parseFloat(val);
  3403. return isNaN(n) ? val : n
  3404. }
  3405. /**
  3406. * Make a map and return a function for checking if a key
  3407. * is in that map.
  3408. */
  3409. function makeMap (
  3410. str,
  3411. expectsLowerCase
  3412. ) {
  3413. var map = Object.create(null);
  3414. var list = str.split(',');
  3415. for (var i = 0; i < list.length; i++) {
  3416. map[list[i]] = true;
  3417. }
  3418. return expectsLowerCase
  3419. ? function (val) { return map[val.toLowerCase()]; }
  3420. : function (val) { return map[val]; }
  3421. }
  3422. /**
  3423. * Check if a tag is a built-in tag.
  3424. */
  3425. var isBuiltInTag = makeMap('slot,component', true);
  3426. /**
  3427. * Check if an attribute is a reserved attribute.
  3428. */
  3429. var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');
  3430. /**
  3431. * Remove an item from an array.
  3432. */
  3433. function remove (arr, item) {
  3434. if (arr.length) {
  3435. var index = arr.indexOf(item);
  3436. if (index > -1) {
  3437. return arr.splice(index, 1)
  3438. }
  3439. }
  3440. }
  3441. /**
  3442. * Check whether an object has the property.
  3443. */
  3444. var hasOwnProperty = Object.prototype.hasOwnProperty;
  3445. function hasOwn (obj, key) {
  3446. return hasOwnProperty.call(obj, key)
  3447. }
  3448. /**
  3449. * Create a cached version of a pure function.
  3450. */
  3451. function cached (fn) {
  3452. var cache = Object.create(null);
  3453. return (function cachedFn (str) {
  3454. var hit = cache[str];
  3455. return hit || (cache[str] = fn(str))
  3456. })
  3457. }
  3458. /**
  3459. * Camelize a hyphen-delimited string.
  3460. */
  3461. var camelizeRE = /-(\w)/g;
  3462. var camelize = cached(function (str) {
  3463. return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
  3464. });
  3465. /**
  3466. * Capitalize a string.
  3467. */
  3468. var capitalize = cached(function (str) {
  3469. return str.charAt(0).toUpperCase() + str.slice(1)
  3470. });
  3471. /**
  3472. * Hyphenate a camelCase string.
  3473. */
  3474. var hyphenateRE = /\B([A-Z])/g;
  3475. var hyphenate = cached(function (str) {
  3476. return str.replace(hyphenateRE, '-$1').toLowerCase()
  3477. });
  3478. /**
  3479. * Simple bind polyfill for environments that do not support it,
  3480. * e.g., PhantomJS 1.x. Technically, we don't need this anymore
  3481. * since native bind is now performant enough in most browsers.
  3482. * But removing it would mean breaking code that was able to run in
  3483. * PhantomJS 1.x, so this must be kept for backward compatibility.
  3484. */
  3485. /* istanbul ignore next */
  3486. function polyfillBind (fn, ctx) {
  3487. function boundFn (a) {
  3488. var l = arguments.length;
  3489. return l
  3490. ? l > 1
  3491. ? fn.apply(ctx, arguments)
  3492. : fn.call(ctx, a)
  3493. : fn.call(ctx)
  3494. }
  3495. boundFn._length = fn.length;
  3496. return boundFn
  3497. }
  3498. function nativeBind (fn, ctx) {
  3499. return fn.bind(ctx)
  3500. }
  3501. var bind = Function.prototype.bind
  3502. ? nativeBind
  3503. : polyfillBind;
  3504. /**
  3505. * Convert an Array-like object to a real Array.
  3506. */
  3507. function toArray (list, start) {
  3508. start = start || 0;
  3509. var i = list.length - start;
  3510. var ret = new Array(i);
  3511. while (i--) {
  3512. ret[i] = list[i + start];
  3513. }
  3514. return ret
  3515. }
  3516. /**
  3517. * Mix properties into target object.
  3518. */
  3519. function extend (to, _from) {
  3520. for (var key in _from) {
  3521. to[key] = _from[key];
  3522. }
  3523. return to
  3524. }
  3525. /**
  3526. * Merge an Array of Objects into a single Object.
  3527. */
  3528. function toObject (arr) {
  3529. var res = {};
  3530. for (var i = 0; i < arr.length; i++) {
  3531. if (arr[i]) {
  3532. extend(res, arr[i]);
  3533. }
  3534. }
  3535. return res
  3536. }
  3537. /* eslint-disable no-unused-vars */
  3538. /**
  3539. * Perform no operation.
  3540. * Stubbing args to make Flow happy without leaving useless transpiled code
  3541. * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).
  3542. */
  3543. function noop (a, b, c) {}
  3544. /**
  3545. * Always return false.
  3546. */
  3547. var no = function (a, b, c) { return false; };
  3548. /* eslint-enable no-unused-vars */
  3549. /**
  3550. * Return the same value.
  3551. */
  3552. var identity = function (_) { return _; };
  3553. /**
  3554. * Check if two values are loosely equal - that is,
  3555. * if they are plain objects, do they have the same shape?
  3556. */
  3557. function looseEqual (a, b) {
  3558. if (a === b) { return true }
  3559. var isObjectA = isObject(a);
  3560. var isObjectB = isObject(b);
  3561. if (isObjectA && isObjectB) {
  3562. try {
  3563. var isArrayA = Array.isArray(a);
  3564. var isArrayB = Array.isArray(b);
  3565. if (isArrayA && isArrayB) {
  3566. return a.length === b.length && a.every(function (e, i) {
  3567. return looseEqual(e, b[i])
  3568. })
  3569. } else if (a instanceof Date && b instanceof Date) {
  3570. return a.getTime() === b.getTime()
  3571. } else if (!isArrayA && !isArrayB) {
  3572. var keysA = Object.keys(a);
  3573. var keysB = Object.keys(b);
  3574. return keysA.length === keysB.length && keysA.every(function (key) {
  3575. return looseEqual(a[key], b[key])
  3576. })
  3577. } else {
  3578. /* istanbul ignore next */
  3579. return false
  3580. }
  3581. } catch (e) {
  3582. /* istanbul ignore next */
  3583. return false
  3584. }
  3585. } else if (!isObjectA && !isObjectB) {
  3586. return String(a) === String(b)
  3587. } else {
  3588. return false
  3589. }
  3590. }
  3591. /**
  3592. * Return the first index at which a loosely equal value can be
  3593. * found in the array (if value is a plain object, the array must
  3594. * contain an object of the same shape), or -1 if it is not present.
  3595. */
  3596. function looseIndexOf (arr, val) {
  3597. for (var i = 0; i < arr.length; i++) {
  3598. if (looseEqual(arr[i], val)) { return i }
  3599. }
  3600. return -1
  3601. }
  3602. /**
  3603. * Ensure a function is called only once.
  3604. */
  3605. function once (fn) {
  3606. var called = false;
  3607. return function () {
  3608. if (!called) {
  3609. called = true;
  3610. fn.apply(this, arguments);
  3611. }
  3612. }
  3613. }
  3614. var ASSET_TYPES = [
  3615. 'component',
  3616. 'directive',
  3617. 'filter'
  3618. ];
  3619. var LIFECYCLE_HOOKS = [
  3620. 'beforeCreate',
  3621. 'created',
  3622. 'beforeMount',
  3623. 'mounted',
  3624. 'beforeUpdate',
  3625. 'updated',
  3626. 'beforeDestroy',
  3627. 'destroyed',
  3628. 'activated',
  3629. 'deactivated',
  3630. 'errorCaptured',
  3631. 'serverPrefetch'
  3632. ];
  3633. /* */
  3634. var config = ({
  3635. /**
  3636. * Option merge strategies (used in core/util/options)
  3637. */
  3638. // $flow-disable-line
  3639. optionMergeStrategies: Object.create(null),
  3640. /**
  3641. * Whether to suppress warnings.
  3642. */
  3643. silent: false,
  3644. /**
  3645. * Show production mode tip message on boot?
  3646. */
  3647. productionTip: "development" !== 'production',
  3648. /**
  3649. * Whether to enable devtools
  3650. */
  3651. devtools: "development" !== 'production',
  3652. /**
  3653. * Whether to record perf
  3654. */
  3655. performance: false,
  3656. /**
  3657. * Error handler for watcher errors
  3658. */
  3659. errorHandler: null,
  3660. /**
  3661. * Warn handler for watcher warns
  3662. */
  3663. warnHandler: null,
  3664. /**
  3665. * Ignore certain custom elements
  3666. */
  3667. ignoredElements: [],
  3668. /**
  3669. * Custom user key aliases for v-on
  3670. */
  3671. // $flow-disable-line
  3672. keyCodes: Object.create(null),
  3673. /**
  3674. * Check if a tag is reserved so that it cannot be registered as a
  3675. * component. This is platform-dependent and may be overwritten.
  3676. */
  3677. isReservedTag: no,
  3678. /**
  3679. * Check if an attribute is reserved so that it cannot be used as a component
  3680. * prop. This is platform-dependent and may be overwritten.
  3681. */
  3682. isReservedAttr: no,
  3683. /**
  3684. * Check if a tag is an unknown element.
  3685. * Platform-dependent.
  3686. */
  3687. isUnknownElement: no,
  3688. /**
  3689. * Get the namespace of an element
  3690. */
  3691. getTagNamespace: noop,
  3692. /**
  3693. * Parse the real tag name for the specific platform.
  3694. */
  3695. parsePlatformTagName: identity,
  3696. /**
  3697. * Check if an attribute must be bound using property, e.g. value
  3698. * Platform-dependent.
  3699. */
  3700. mustUseProp: no,
  3701. /**
  3702. * Perform updates asynchronously. Intended to be used by Vue Test Utils
  3703. * This will significantly reduce performance if set to false.
  3704. */
  3705. async: true,
  3706. /**
  3707. * Exposed for legacy reasons
  3708. */
  3709. _lifecycleHooks: LIFECYCLE_HOOKS
  3710. });
  3711. /* */
  3712. /**
  3713. * unicode letters used for parsing html tags, component names and property paths.
  3714. * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
  3715. * skipping \u10000-\uEFFFF due to it freezing up PhantomJS
  3716. */
  3717. var unicodeRegExp = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;
  3718. /**
  3719. * Check if a string starts with $ or _
  3720. */
  3721. function isReserved (str) {
  3722. var c = (str + '').charCodeAt(0);
  3723. return c === 0x24 || c === 0x5F
  3724. }
  3725. /**
  3726. * Define a property.
  3727. */
  3728. function def (obj, key, val, enumerable) {
  3729. Object.defineProperty(obj, key, {
  3730. value: val,
  3731. enumerable: !!enumerable,
  3732. writable: true,
  3733. configurable: true
  3734. });
  3735. }
  3736. /**
  3737. * Parse simple path.
  3738. */
  3739. var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
  3740. function parsePath (path) {
  3741. if (bailRE.test(path)) {
  3742. return
  3743. }
  3744. var segments = path.split('.');
  3745. return function (obj) {
  3746. for (var i = 0; i < segments.length; i++) {
  3747. if (!obj) { return }
  3748. obj = obj[segments[i]];
  3749. }
  3750. return obj
  3751. }
  3752. }
  3753. /* */
  3754. // can we use __proto__?
  3755. var hasProto = '__proto__' in {};
  3756. // Browser environment sniffing
  3757. var inBrowser = typeof window !== 'undefined';
  3758. var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
  3759. var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
  3760. var UA = inBrowser && window.navigator.userAgent.toLowerCase();
  3761. var isIE = UA && /msie|trident/.test(UA);
  3762. var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
  3763. var isEdge = UA && UA.indexOf('edge/') > 0;
  3764. var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
  3765. var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
  3766. var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
  3767. var isPhantomJS = UA && /phantomjs/.test(UA);
  3768. var isFF = UA && UA.match(/firefox\/(\d+)/);
  3769. // Firefox has a "watch" function on Object.prototype...
  3770. var nativeWatch = ({}).watch;
  3771. if (inBrowser) {
  3772. try {
  3773. var opts = {};
  3774. Object.defineProperty(opts, 'passive', ({
  3775. get: function get () {
  3776. }
  3777. })); // https://github.com/facebook/flow/issues/285
  3778. window.addEventListener('test-passive', null, opts);
  3779. } catch (e) {}
  3780. }
  3781. // this needs to be lazy-evaled because vue may be required before
  3782. // vue-server-renderer can set VUE_ENV
  3783. var _isServer;
  3784. var isServerRendering = function () {
  3785. if (_isServer === undefined) {
  3786. /* istanbul ignore if */
  3787. if (!inBrowser && !inWeex && typeof global !== 'undefined') {
  3788. // detect presence of vue-server-renderer and avoid
  3789. // Webpack shimming the process
  3790. _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';
  3791. } else {
  3792. _isServer = false;
  3793. }
  3794. }
  3795. return _isServer
  3796. };
  3797. // detect devtools
  3798. var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;
  3799. /* istanbul ignore next */
  3800. function isNative (Ctor) {
  3801. return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
  3802. }
  3803. var hasSymbol =
  3804. typeof Symbol !== 'undefined' && isNative(Symbol) &&
  3805. typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
  3806. var _Set;
  3807. /* istanbul ignore if */ // $flow-disable-line
  3808. if (typeof Set !== 'undefined' && isNative(Set)) {
  3809. // use native Set when available.
  3810. _Set = Set;
  3811. } else {
  3812. // a non-standard Set polyfill that only works with primitive keys.
  3813. _Set = /*@__PURE__*/(function () {
  3814. function Set () {
  3815. this.set = Object.create(null);
  3816. }
  3817. Set.prototype.has = function has (key) {
  3818. return this.set[key] === true
  3819. };
  3820. Set.prototype.add = function add (key) {
  3821. this.set[key] = true;
  3822. };
  3823. Set.prototype.clear = function clear () {
  3824. this.set = Object.create(null);
  3825. };
  3826. return Set;
  3827. }());
  3828. }
  3829. /* */
  3830. var warn = noop;
  3831. var tip = noop;
  3832. var generateComponentTrace = (noop); // work around flow check
  3833. var formatComponentName = (noop);
  3834. if (true) {
  3835. var hasConsole = typeof console !== 'undefined';
  3836. var classifyRE = /(?:^|[-_])(\w)/g;
  3837. var classify = function (str) { return str
  3838. .replace(classifyRE, function (c) { return c.toUpperCase(); })
  3839. .replace(/[-_]/g, ''); };
  3840. warn = function (msg, vm) {
  3841. var trace = vm ? generateComponentTrace(vm) : '';
  3842. if (config.warnHandler) {
  3843. config.warnHandler.call(null, msg, vm, trace);
  3844. } else if (hasConsole && (!config.silent)) {
  3845. console.error(("[Vue warn]: " + msg + trace));
  3846. }
  3847. };
  3848. tip = function (msg, vm) {
  3849. if (hasConsole && (!config.silent)) {
  3850. console.warn("[Vue tip]: " + msg + (
  3851. vm ? generateComponentTrace(vm) : ''
  3852. ));
  3853. }
  3854. };
  3855. formatComponentName = function (vm, includeFile) {
  3856. if (vm.$root === vm) {
  3857. if (vm.$options && vm.$options.__file) { // fixed by xxxxxx
  3858. return ('') + vm.$options.__file
  3859. }
  3860. return '<Root>'
  3861. }
  3862. var options = typeof vm === 'function' && vm.cid != null
  3863. ? vm.options
  3864. : vm._isVue
  3865. ? vm.$options || vm.constructor.options
  3866. : vm;
  3867. var name = options.name || options._componentTag;
  3868. var file = options.__file;
  3869. if (!name && file) {
  3870. var match = file.match(/([^/\\]+)\.vue$/);
  3871. name = match && match[1];
  3872. }
  3873. return (
  3874. (name ? ("<" + (classify(name)) + ">") : "<Anonymous>") +
  3875. (file && includeFile !== false ? (" at " + file) : '')
  3876. )
  3877. };
  3878. var repeat = function (str, n) {
  3879. var res = '';
  3880. while (n) {
  3881. if (n % 2 === 1) { res += str; }
  3882. if (n > 1) { str += str; }
  3883. n >>= 1;
  3884. }
  3885. return res
  3886. };
  3887. generateComponentTrace = function (vm) {
  3888. if (vm._isVue && vm.$parent) {
  3889. var tree = [];
  3890. var currentRecursiveSequence = 0;
  3891. while (vm && vm.$options.name !== 'PageBody') {
  3892. if (tree.length > 0) {
  3893. var last = tree[tree.length - 1];
  3894. if (last.constructor === vm.constructor) {
  3895. currentRecursiveSequence++;
  3896. vm = vm.$parent;
  3897. continue
  3898. } else if (currentRecursiveSequence > 0) {
  3899. tree[tree.length - 1] = [last, currentRecursiveSequence];
  3900. currentRecursiveSequence = 0;
  3901. }
  3902. }
  3903. !vm.$options.isReserved && tree.push(vm);
  3904. vm = vm.$parent;
  3905. }
  3906. return '\n\nfound in\n\n' + tree
  3907. .map(function (vm, i) { return ("" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)
  3908. ? ((formatComponentName(vm[0])) + "... (" + (vm[1]) + " recursive calls)")
  3909. : formatComponentName(vm))); })
  3910. .join('\n')
  3911. } else {
  3912. return ("\n\n(found in " + (formatComponentName(vm)) + ")")
  3913. }
  3914. };
  3915. }
  3916. /* */
  3917. var uid = 0;
  3918. /**
  3919. * A dep is an observable that can have multiple
  3920. * directives subscribing to it.
  3921. */
  3922. var Dep = function Dep () {
  3923. this.id = uid++;
  3924. this.subs = [];
  3925. };
  3926. Dep.prototype.addSub = function addSub (sub) {
  3927. this.subs.push(sub);
  3928. };
  3929. Dep.prototype.removeSub = function removeSub (sub) {
  3930. remove(this.subs, sub);
  3931. };
  3932. Dep.prototype.depend = function depend () {
  3933. if (Dep.SharedObject.target) {
  3934. Dep.SharedObject.target.addDep(this);
  3935. }
  3936. };
  3937. Dep.prototype.notify = function notify () {
  3938. // stabilize the subscriber list first
  3939. var subs = this.subs.slice();
  3940. if ( true && !config.async) {
  3941. // subs aren't sorted in scheduler if not running async
  3942. // we need to sort them now to make sure they fire in correct
  3943. // order
  3944. subs.sort(function (a, b) { return a.id - b.id; });
  3945. }
  3946. for (var i = 0, l = subs.length; i < l; i++) {
  3947. subs[i].update();
  3948. }
  3949. };
  3950. // The current target watcher being evaluated.
  3951. // This is globally unique because only one watcher
  3952. // can be evaluated at a time.
  3953. // fixed by xxxxxx (nvue shared vuex)
  3954. /* eslint-disable no-undef */
  3955. Dep.SharedObject = {};
  3956. Dep.SharedObject.target = null;
  3957. Dep.SharedObject.targetStack = [];
  3958. function pushTarget (target) {
  3959. Dep.SharedObject.targetStack.push(target);
  3960. Dep.SharedObject.target = target;
  3961. Dep.target = target;
  3962. }
  3963. function popTarget () {
  3964. Dep.SharedObject.targetStack.pop();
  3965. Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];
  3966. Dep.target = Dep.SharedObject.target;
  3967. }
  3968. /* */
  3969. var VNode = function VNode (
  3970. tag,
  3971. data,
  3972. children,
  3973. text,
  3974. elm,
  3975. context,
  3976. componentOptions,
  3977. asyncFactory
  3978. ) {
  3979. this.tag = tag;
  3980. this.data = data;
  3981. this.children = children;
  3982. this.text = text;
  3983. this.elm = elm;
  3984. this.ns = undefined;
  3985. this.context = context;
  3986. this.fnContext = undefined;
  3987. this.fnOptions = undefined;
  3988. this.fnScopeId = undefined;
  3989. this.key = data && data.key;
  3990. this.componentOptions = componentOptions;
  3991. this.componentInstance = undefined;
  3992. this.parent = undefined;
  3993. this.raw = false;
  3994. this.isStatic = false;
  3995. this.isRootInsert = true;
  3996. this.isComment = false;
  3997. this.isCloned = false;
  3998. this.isOnce = false;
  3999. this.asyncFactory = asyncFactory;
  4000. this.asyncMeta = undefined;
  4001. this.isAsyncPlaceholder = false;
  4002. };
  4003. var prototypeAccessors = { child: { configurable: true } };
  4004. // DEPRECATED: alias for componentInstance for backwards compat.
  4005. /* istanbul ignore next */
  4006. prototypeAccessors.child.get = function () {
  4007. return this.componentInstance
  4008. };
  4009. Object.defineProperties( VNode.prototype, prototypeAccessors );
  4010. var createEmptyVNode = function (text) {
  4011. if ( text === void 0 ) text = '';
  4012. var node = new VNode();
  4013. node.text = text;
  4014. node.isComment = true;
  4015. return node
  4016. };
  4017. function createTextVNode (val) {
  4018. return new VNode(undefined, undefined, undefined, String(val))
  4019. }
  4020. // optimized shallow clone
  4021. // used for static nodes and slot nodes because they may be reused across
  4022. // multiple renders, cloning them avoids errors when DOM manipulations rely
  4023. // on their elm reference.
  4024. function cloneVNode (vnode) {
  4025. var cloned = new VNode(
  4026. vnode.tag,
  4027. vnode.data,
  4028. // #7975
  4029. // clone children array to avoid mutating original in case of cloning
  4030. // a child.
  4031. vnode.children && vnode.children.slice(),
  4032. vnode.text,
  4033. vnode.elm,
  4034. vnode.context,
  4035. vnode.componentOptions,
  4036. vnode.asyncFactory
  4037. );
  4038. cloned.ns = vnode.ns;
  4039. cloned.isStatic = vnode.isStatic;
  4040. cloned.key = vnode.key;
  4041. cloned.isComment = vnode.isComment;
  4042. cloned.fnContext = vnode.fnContext;
  4043. cloned.fnOptions = vnode.fnOptions;
  4044. cloned.fnScopeId = vnode.fnScopeId;
  4045. cloned.asyncMeta = vnode.asyncMeta;
  4046. cloned.isCloned = true;
  4047. return cloned
  4048. }
  4049. /*
  4050. * not type checking this file because flow doesn't play well with
  4051. * dynamically accessing methods on Array prototype
  4052. */
  4053. var arrayProto = Array.prototype;
  4054. var arrayMethods = Object.create(arrayProto);
  4055. var methodsToPatch = [
  4056. 'push',
  4057. 'pop',
  4058. 'shift',
  4059. 'unshift',
  4060. 'splice',
  4061. 'sort',
  4062. 'reverse'
  4063. ];
  4064. /**
  4065. * Intercept mutating methods and emit events
  4066. */
  4067. methodsToPatch.forEach(function (method) {
  4068. // cache original method
  4069. var original = arrayProto[method];
  4070. def(arrayMethods, method, function mutator () {
  4071. var args = [], len = arguments.length;
  4072. while ( len-- ) args[ len ] = arguments[ len ];
  4073. var result = original.apply(this, args);
  4074. var ob = this.__ob__;
  4075. var inserted;
  4076. switch (method) {
  4077. case 'push':
  4078. case 'unshift':
  4079. inserted = args;
  4080. break
  4081. case 'splice':
  4082. inserted = args.slice(2);
  4083. break
  4084. }
  4085. if (inserted) { ob.observeArray(inserted); }
  4086. // notify change
  4087. ob.dep.notify();
  4088. return result
  4089. });
  4090. });
  4091. /* */
  4092. var arrayKeys = Object.getOwnPropertyNames(arrayMethods);
  4093. /**
  4094. * In some cases we may want to disable observation inside a component's
  4095. * update computation.
  4096. */
  4097. var shouldObserve = true;
  4098. function toggleObserving (value) {
  4099. shouldObserve = value;
  4100. }
  4101. /**
  4102. * Observer class that is attached to each observed
  4103. * object. Once attached, the observer converts the target
  4104. * object's property keys into getter/setters that
  4105. * collect dependencies and dispatch updates.
  4106. */
  4107. var Observer = function Observer (value) {
  4108. this.value = value;
  4109. this.dep = new Dep();
  4110. this.vmCount = 0;
  4111. def(value, '__ob__', this);
  4112. if (Array.isArray(value)) {
  4113. if (hasProto) {
  4114. {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑
  4115. if(value.push !== value.__proto__.push){
  4116. copyAugment(value, arrayMethods, arrayKeys);
  4117. } else {
  4118. protoAugment(value, arrayMethods);
  4119. }
  4120. }
  4121. } else {
  4122. copyAugment(value, arrayMethods, arrayKeys);
  4123. }
  4124. this.observeArray(value);
  4125. } else {
  4126. this.walk(value);
  4127. }
  4128. };
  4129. /**
  4130. * Walk through all properties and convert them into
  4131. * getter/setters. This method should only be called when
  4132. * value type is Object.
  4133. */
  4134. Observer.prototype.walk = function walk (obj) {
  4135. var keys = Object.keys(obj);
  4136. for (var i = 0; i < keys.length; i++) {
  4137. defineReactive$$1(obj, keys[i]);
  4138. }
  4139. };
  4140. /**
  4141. * Observe a list of Array items.
  4142. */
  4143. Observer.prototype.observeArray = function observeArray (items) {
  4144. for (var i = 0, l = items.length; i < l; i++) {
  4145. observe(items[i]);
  4146. }
  4147. };
  4148. // helpers
  4149. /**
  4150. * Augment a target Object or Array by intercepting
  4151. * the prototype chain using __proto__
  4152. */
  4153. function protoAugment (target, src) {
  4154. /* eslint-disable no-proto */
  4155. target.__proto__ = src;
  4156. /* eslint-enable no-proto */
  4157. }
  4158. /**
  4159. * Augment a target Object or Array by defining
  4160. * hidden properties.
  4161. */
  4162. /* istanbul ignore next */
  4163. function copyAugment (target, src, keys) {
  4164. for (var i = 0, l = keys.length; i < l; i++) {
  4165. var key = keys[i];
  4166. def(target, key, src[key]);
  4167. }
  4168. }
  4169. /**
  4170. * Attempt to create an observer instance for a value,
  4171. * returns the new observer if successfully observed,
  4172. * or the existing observer if the value already has one.
  4173. */
  4174. function observe (value, asRootData) {
  4175. if (!isObject(value) || value instanceof VNode) {
  4176. return
  4177. }
  4178. var ob;
  4179. if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
  4180. ob = value.__ob__;
  4181. } else if (
  4182. shouldObserve &&
  4183. !isServerRendering() &&
  4184. (Array.isArray(value) || isPlainObject(value)) &&
  4185. Object.isExtensible(value) &&
  4186. !value._isVue &&
  4187. !value.__v_isMPComponent
  4188. ) {
  4189. ob = new Observer(value);
  4190. }
  4191. if (asRootData && ob) {
  4192. ob.vmCount++;
  4193. }
  4194. return ob
  4195. }
  4196. /**
  4197. * Define a reactive property on an Object.
  4198. */
  4199. function defineReactive$$1 (
  4200. obj,
  4201. key,
  4202. val,
  4203. customSetter,
  4204. shallow
  4205. ) {
  4206. var dep = new Dep();
  4207. var property = Object.getOwnPropertyDescriptor(obj, key);
  4208. if (property && property.configurable === false) {
  4209. return
  4210. }
  4211. // cater for pre-defined getter/setters
  4212. var getter = property && property.get;
  4213. var setter = property && property.set;
  4214. if ((!getter || setter) && arguments.length === 2) {
  4215. val = obj[key];
  4216. }
  4217. var childOb = !shallow && observe(val);
  4218. Object.defineProperty(obj, key, {
  4219. enumerable: true,
  4220. configurable: true,
  4221. get: function reactiveGetter () {
  4222. var value = getter ? getter.call(obj) : val;
  4223. if (Dep.SharedObject.target) { // fixed by xxxxxx
  4224. dep.depend();
  4225. if (childOb) {
  4226. childOb.dep.depend();
  4227. if (Array.isArray(value)) {
  4228. dependArray(value);
  4229. }
  4230. }
  4231. }
  4232. return value
  4233. },
  4234. set: function reactiveSetter (newVal) {
  4235. var value = getter ? getter.call(obj) : val;
  4236. /* eslint-disable no-self-compare */
  4237. if (newVal === value || (newVal !== newVal && value !== value)) {
  4238. return
  4239. }
  4240. /* eslint-enable no-self-compare */
  4241. if ( true && customSetter) {
  4242. customSetter();
  4243. }
  4244. // #7981: for accessor properties without setter
  4245. if (getter && !setter) { return }
  4246. if (setter) {
  4247. setter.call(obj, newVal);
  4248. } else {
  4249. val = newVal;
  4250. }
  4251. childOb = !shallow && observe(newVal);
  4252. dep.notify();
  4253. }
  4254. });
  4255. }
  4256. /**
  4257. * Set a property on an object. Adds the new property and
  4258. * triggers change notification if the property doesn't
  4259. * already exist.
  4260. */
  4261. function set (target, key, val) {
  4262. if ( true &&
  4263. (isUndef(target) || isPrimitive(target))
  4264. ) {
  4265. warn(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
  4266. }
  4267. if (Array.isArray(target) && isValidArrayIndex(key)) {
  4268. target.length = Math.max(target.length, key);
  4269. target.splice(key, 1, val);
  4270. return val
  4271. }
  4272. if (key in target && !(key in Object.prototype)) {
  4273. target[key] = val;
  4274. return val
  4275. }
  4276. var ob = (target).__ob__;
  4277. if (target._isVue || (ob && ob.vmCount)) {
  4278. true && warn(
  4279. 'Avoid adding reactive properties to a Vue instance or its root $data ' +
  4280. 'at runtime - declare it upfront in the data option.'
  4281. );
  4282. return val
  4283. }
  4284. if (!ob) {
  4285. target[key] = val;
  4286. return val
  4287. }
  4288. defineReactive$$1(ob.value, key, val);
  4289. ob.dep.notify();
  4290. return val
  4291. }
  4292. /**
  4293. * Delete a property and trigger change if necessary.
  4294. */
  4295. function del (target, key) {
  4296. if ( true &&
  4297. (isUndef(target) || isPrimitive(target))
  4298. ) {
  4299. warn(("Cannot delete reactive property on undefined, null, or primitive value: " + ((target))));
  4300. }
  4301. if (Array.isArray(target) && isValidArrayIndex(key)) {
  4302. target.splice(key, 1);
  4303. return
  4304. }
  4305. var ob = (target).__ob__;
  4306. if (target._isVue || (ob && ob.vmCount)) {
  4307. true && warn(
  4308. 'Avoid deleting properties on a Vue instance or its root $data ' +
  4309. '- just set it to null.'
  4310. );
  4311. return
  4312. }
  4313. if (!hasOwn(target, key)) {
  4314. return
  4315. }
  4316. delete target[key];
  4317. if (!ob) {
  4318. return
  4319. }
  4320. ob.dep.notify();
  4321. }
  4322. /**
  4323. * Collect dependencies on array elements when the array is touched, since
  4324. * we cannot intercept array element access like property getters.
  4325. */
  4326. function dependArray (value) {
  4327. for (var e = (void 0), i = 0, l = value.length; i < l; i++) {
  4328. e = value[i];
  4329. e && e.__ob__ && e.__ob__.dep.depend();
  4330. if (Array.isArray(e)) {
  4331. dependArray(e);
  4332. }
  4333. }
  4334. }
  4335. /* */
  4336. /**
  4337. * Option overwriting strategies are functions that handle
  4338. * how to merge a parent option value and a child option
  4339. * value into the final value.
  4340. */
  4341. var strats = config.optionMergeStrategies;
  4342. /**
  4343. * Options with restrictions
  4344. */
  4345. if (true) {
  4346. strats.el = strats.propsData = function (parent, child, vm, key) {
  4347. if (!vm) {
  4348. warn(
  4349. "option \"" + key + "\" can only be used during instance " +
  4350. 'creation with the `new` keyword.'
  4351. );
  4352. }
  4353. return defaultStrat(parent, child)
  4354. };
  4355. }
  4356. /**
  4357. * Helper that recursively merges two data objects together.
  4358. */
  4359. function mergeData (to, from) {
  4360. if (!from) { return to }
  4361. var key, toVal, fromVal;
  4362. var keys = hasSymbol
  4363. ? Reflect.ownKeys(from)
  4364. : Object.keys(from);
  4365. for (var i = 0; i < keys.length; i++) {
  4366. key = keys[i];
  4367. // in case the object is already observed...
  4368. if (key === '__ob__') { continue }
  4369. toVal = to[key];
  4370. fromVal = from[key];
  4371. if (!hasOwn(to, key)) {
  4372. set(to, key, fromVal);
  4373. } else if (
  4374. toVal !== fromVal &&
  4375. isPlainObject(toVal) &&
  4376. isPlainObject(fromVal)
  4377. ) {
  4378. mergeData(toVal, fromVal);
  4379. }
  4380. }
  4381. return to
  4382. }
  4383. /**
  4384. * Data
  4385. */
  4386. function mergeDataOrFn (
  4387. parentVal,
  4388. childVal,
  4389. vm
  4390. ) {
  4391. if (!vm) {
  4392. // in a Vue.extend merge, both should be functions
  4393. if (!childVal) {
  4394. return parentVal
  4395. }
  4396. if (!parentVal) {
  4397. return childVal
  4398. }
  4399. // when parentVal & childVal are both present,
  4400. // we need to return a function that returns the
  4401. // merged result of both functions... no need to
  4402. // check if parentVal is a function here because
  4403. // it has to be a function to pass previous merges.
  4404. return function mergedDataFn () {
  4405. return mergeData(
  4406. typeof childVal === 'function' ? childVal.call(this, this) : childVal,
  4407. typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal
  4408. )
  4409. }
  4410. } else {
  4411. return function mergedInstanceDataFn () {
  4412. // instance merge
  4413. var instanceData = typeof childVal === 'function'
  4414. ? childVal.call(vm, vm)
  4415. : childVal;
  4416. var defaultData = typeof parentVal === 'function'
  4417. ? parentVal.call(vm, vm)
  4418. : parentVal;
  4419. if (instanceData) {
  4420. return mergeData(instanceData, defaultData)
  4421. } else {
  4422. return defaultData
  4423. }
  4424. }
  4425. }
  4426. }
  4427. strats.data = function (
  4428. parentVal,
  4429. childVal,
  4430. vm
  4431. ) {
  4432. if (!vm) {
  4433. if (childVal && typeof childVal !== 'function') {
  4434. true && warn(
  4435. 'The "data" option should be a function ' +
  4436. 'that returns a per-instance value in component ' +
  4437. 'definitions.',
  4438. vm
  4439. );
  4440. return parentVal
  4441. }
  4442. return mergeDataOrFn(parentVal, childVal)
  4443. }
  4444. return mergeDataOrFn(parentVal, childVal, vm)
  4445. };
  4446. /**
  4447. * Hooks and props are merged as arrays.
  4448. */
  4449. function mergeHook (
  4450. parentVal,
  4451. childVal
  4452. ) {
  4453. var res = childVal
  4454. ? parentVal
  4455. ? parentVal.concat(childVal)
  4456. : Array.isArray(childVal)
  4457. ? childVal
  4458. : [childVal]
  4459. : parentVal;
  4460. return res
  4461. ? dedupeHooks(res)
  4462. : res
  4463. }
  4464. function dedupeHooks (hooks) {
  4465. var res = [];
  4466. for (var i = 0; i < hooks.length; i++) {
  4467. if (res.indexOf(hooks[i]) === -1) {
  4468. res.push(hooks[i]);
  4469. }
  4470. }
  4471. return res
  4472. }
  4473. LIFECYCLE_HOOKS.forEach(function (hook) {
  4474. strats[hook] = mergeHook;
  4475. });
  4476. /**
  4477. * Assets
  4478. *
  4479. * When a vm is present (instance creation), we need to do
  4480. * a three-way merge between constructor options, instance
  4481. * options and parent options.
  4482. */
  4483. function mergeAssets (
  4484. parentVal,
  4485. childVal,
  4486. vm,
  4487. key
  4488. ) {
  4489. var res = Object.create(parentVal || null);
  4490. if (childVal) {
  4491. true && assertObjectType(key, childVal, vm);
  4492. return extend(res, childVal)
  4493. } else {
  4494. return res
  4495. }
  4496. }
  4497. ASSET_TYPES.forEach(function (type) {
  4498. strats[type + 's'] = mergeAssets;
  4499. });
  4500. /**
  4501. * Watchers.
  4502. *
  4503. * Watchers hashes should not overwrite one
  4504. * another, so we merge them as arrays.
  4505. */
  4506. strats.watch = function (
  4507. parentVal,
  4508. childVal,
  4509. vm,
  4510. key
  4511. ) {
  4512. // work around Firefox's Object.prototype.watch...
  4513. if (parentVal === nativeWatch) { parentVal = undefined; }
  4514. if (childVal === nativeWatch) { childVal = undefined; }
  4515. /* istanbul ignore if */
  4516. if (!childVal) { return Object.create(parentVal || null) }
  4517. if (true) {
  4518. assertObjectType(key, childVal, vm);
  4519. }
  4520. if (!parentVal) { return childVal }
  4521. var ret = {};
  4522. extend(ret, parentVal);
  4523. for (var key$1 in childVal) {
  4524. var parent = ret[key$1];
  4525. var child = childVal[key$1];
  4526. if (parent && !Array.isArray(parent)) {
  4527. parent = [parent];
  4528. }
  4529. ret[key$1] = parent
  4530. ? parent.concat(child)
  4531. : Array.isArray(child) ? child : [child];
  4532. }
  4533. return ret
  4534. };
  4535. /**
  4536. * Other object hashes.
  4537. */
  4538. strats.props =
  4539. strats.methods =
  4540. strats.inject =
  4541. strats.computed = function (
  4542. parentVal,
  4543. childVal,
  4544. vm,
  4545. key
  4546. ) {
  4547. if (childVal && "development" !== 'production') {
  4548. assertObjectType(key, childVal, vm);
  4549. }
  4550. if (!parentVal) { return childVal }
  4551. var ret = Object.create(null);
  4552. extend(ret, parentVal);
  4553. if (childVal) { extend(ret, childVal); }
  4554. return ret
  4555. };
  4556. strats.provide = mergeDataOrFn;
  4557. /**
  4558. * Default strategy.
  4559. */
  4560. var defaultStrat = function (parentVal, childVal) {
  4561. return childVal === undefined
  4562. ? parentVal
  4563. : childVal
  4564. };
  4565. /**
  4566. * Validate component names
  4567. */
  4568. function checkComponents (options) {
  4569. for (var key in options.components) {
  4570. validateComponentName(key);
  4571. }
  4572. }
  4573. function validateComponentName (name) {
  4574. if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
  4575. warn(
  4576. 'Invalid component name: "' + name + '". Component names ' +
  4577. 'should conform to valid custom element name in html5 specification.'
  4578. );
  4579. }
  4580. if (isBuiltInTag(name) || config.isReservedTag(name)) {
  4581. warn(
  4582. 'Do not use built-in or reserved HTML elements as component ' +
  4583. 'id: ' + name
  4584. );
  4585. }
  4586. }
  4587. /**
  4588. * Ensure all props option syntax are normalized into the
  4589. * Object-based format.
  4590. */
  4591. function normalizeProps (options, vm) {
  4592. var props = options.props;
  4593. if (!props) { return }
  4594. var res = {};
  4595. var i, val, name;
  4596. if (Array.isArray(props)) {
  4597. i = props.length;
  4598. while (i--) {
  4599. val = props[i];
  4600. if (typeof val === 'string') {
  4601. name = camelize(val);
  4602. res[name] = { type: null };
  4603. } else if (true) {
  4604. warn('props must be strings when using array syntax.');
  4605. }
  4606. }
  4607. } else if (isPlainObject(props)) {
  4608. for (var key in props) {
  4609. val = props[key];
  4610. name = camelize(key);
  4611. res[name] = isPlainObject(val)
  4612. ? val
  4613. : { type: val };
  4614. }
  4615. } else if (true) {
  4616. warn(
  4617. "Invalid value for option \"props\": expected an Array or an Object, " +
  4618. "but got " + (toRawType(props)) + ".",
  4619. vm
  4620. );
  4621. }
  4622. options.props = res;
  4623. }
  4624. /**
  4625. * Normalize all injections into Object-based format
  4626. */
  4627. function normalizeInject (options, vm) {
  4628. var inject = options.inject;
  4629. if (!inject) { return }
  4630. var normalized = options.inject = {};
  4631. if (Array.isArray(inject)) {
  4632. for (var i = 0; i < inject.length; i++) {
  4633. normalized[inject[i]] = { from: inject[i] };
  4634. }
  4635. } else if (isPlainObject(inject)) {
  4636. for (var key in inject) {
  4637. var val = inject[key];
  4638. normalized[key] = isPlainObject(val)
  4639. ? extend({ from: key }, val)
  4640. : { from: val };
  4641. }
  4642. } else if (true) {
  4643. warn(
  4644. "Invalid value for option \"inject\": expected an Array or an Object, " +
  4645. "but got " + (toRawType(inject)) + ".",
  4646. vm
  4647. );
  4648. }
  4649. }
  4650. /**
  4651. * Normalize raw function directives into object format.
  4652. */
  4653. function normalizeDirectives (options) {
  4654. var dirs = options.directives;
  4655. if (dirs) {
  4656. for (var key in dirs) {
  4657. var def$$1 = dirs[key];
  4658. if (typeof def$$1 === 'function') {
  4659. dirs[key] = { bind: def$$1, update: def$$1 };
  4660. }
  4661. }
  4662. }
  4663. }
  4664. function assertObjectType (name, value, vm) {
  4665. if (!isPlainObject(value)) {
  4666. warn(
  4667. "Invalid value for option \"" + name + "\": expected an Object, " +
  4668. "but got " + (toRawType(value)) + ".",
  4669. vm
  4670. );
  4671. }
  4672. }
  4673. /**
  4674. * Merge two option objects into a new one.
  4675. * Core utility used in both instantiation and inheritance.
  4676. */
  4677. function mergeOptions (
  4678. parent,
  4679. child,
  4680. vm
  4681. ) {
  4682. if (true) {
  4683. checkComponents(child);
  4684. }
  4685. if (typeof child === 'function') {
  4686. child = child.options;
  4687. }
  4688. normalizeProps(child, vm);
  4689. normalizeInject(child, vm);
  4690. normalizeDirectives(child);
  4691. // Apply extends and mixins on the child options,
  4692. // but only if it is a raw options object that isn't
  4693. // the result of another mergeOptions call.
  4694. // Only merged options has the _base property.
  4695. if (!child._base) {
  4696. if (child.extends) {
  4697. parent = mergeOptions(parent, child.extends, vm);
  4698. }
  4699. if (child.mixins) {
  4700. for (var i = 0, l = child.mixins.length; i < l; i++) {
  4701. parent = mergeOptions(parent, child.mixins[i], vm);
  4702. }
  4703. }
  4704. }
  4705. var options = {};
  4706. var key;
  4707. for (key in parent) {
  4708. mergeField(key);
  4709. }
  4710. for (key in child) {
  4711. if (!hasOwn(parent, key)) {
  4712. mergeField(key);
  4713. }
  4714. }
  4715. function mergeField (key) {
  4716. var strat = strats[key] || defaultStrat;
  4717. options[key] = strat(parent[key], child[key], vm, key);
  4718. }
  4719. return options
  4720. }
  4721. /**
  4722. * Resolve an asset.
  4723. * This function is used because child instances need access
  4724. * to assets defined in its ancestor chain.
  4725. */
  4726. function resolveAsset (
  4727. options,
  4728. type,
  4729. id,
  4730. warnMissing
  4731. ) {
  4732. /* istanbul ignore if */
  4733. if (typeof id !== 'string') {
  4734. return
  4735. }
  4736. var assets = options[type];
  4737. // check local registration variations first
  4738. if (hasOwn(assets, id)) { return assets[id] }
  4739. var camelizedId = camelize(id);
  4740. if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }
  4741. var PascalCaseId = capitalize(camelizedId);
  4742. if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }
  4743. // fallback to prototype chain
  4744. var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];
  4745. if ( true && warnMissing && !res) {
  4746. warn(
  4747. 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,
  4748. options
  4749. );
  4750. }
  4751. return res
  4752. }
  4753. /* */
  4754. function validateProp (
  4755. key,
  4756. propOptions,
  4757. propsData,
  4758. vm
  4759. ) {
  4760. var prop = propOptions[key];
  4761. var absent = !hasOwn(propsData, key);
  4762. var value = propsData[key];
  4763. // boolean casting
  4764. var booleanIndex = getTypeIndex(Boolean, prop.type);
  4765. if (booleanIndex > -1) {
  4766. if (absent && !hasOwn(prop, 'default')) {
  4767. value = false;
  4768. } else if (value === '' || value === hyphenate(key)) {
  4769. // only cast empty string / same name to boolean if
  4770. // boolean has higher priority
  4771. var stringIndex = getTypeIndex(String, prop.type);
  4772. if (stringIndex < 0 || booleanIndex < stringIndex) {
  4773. value = true;
  4774. }
  4775. }
  4776. }
  4777. // check default value
  4778. if (value === undefined) {
  4779. value = getPropDefaultValue(vm, prop, key);
  4780. // since the default value is a fresh copy,
  4781. // make sure to observe it.
  4782. var prevShouldObserve = shouldObserve;
  4783. toggleObserving(true);
  4784. observe(value);
  4785. toggleObserving(prevShouldObserve);
  4786. }
  4787. if (
  4788. true
  4789. ) {
  4790. assertProp(prop, key, value, vm, absent);
  4791. }
  4792. return value
  4793. }
  4794. /**
  4795. * Get the default value of a prop.
  4796. */
  4797. function getPropDefaultValue (vm, prop, key) {
  4798. // no default, return undefined
  4799. if (!hasOwn(prop, 'default')) {
  4800. return undefined
  4801. }
  4802. var def = prop.default;
  4803. // warn against non-factory defaults for Object & Array
  4804. if ( true && isObject(def)) {
  4805. warn(
  4806. 'Invalid default value for prop "' + key + '": ' +
  4807. 'Props with type Object/Array must use a factory function ' +
  4808. 'to return the default value.',
  4809. vm
  4810. );
  4811. }
  4812. // the raw prop value was also undefined from previous render,
  4813. // return previous default value to avoid unnecessary watcher trigger
  4814. if (vm && vm.$options.propsData &&
  4815. vm.$options.propsData[key] === undefined &&
  4816. vm._props[key] !== undefined
  4817. ) {
  4818. return vm._props[key]
  4819. }
  4820. // call factory function for non-Function types
  4821. // a value is Function if its prototype is function even across different execution context
  4822. return typeof def === 'function' && getType(prop.type) !== 'Function'
  4823. ? def.call(vm)
  4824. : def
  4825. }
  4826. /**
  4827. * Assert whether a prop is valid.
  4828. */
  4829. function assertProp (
  4830. prop,
  4831. name,
  4832. value,
  4833. vm,
  4834. absent
  4835. ) {
  4836. if (prop.required && absent) {
  4837. warn(
  4838. 'Missing required prop: "' + name + '"',
  4839. vm
  4840. );
  4841. return
  4842. }
  4843. if (value == null && !prop.required) {
  4844. return
  4845. }
  4846. var type = prop.type;
  4847. var valid = !type || type === true;
  4848. var expectedTypes = [];
  4849. if (type) {
  4850. if (!Array.isArray(type)) {
  4851. type = [type];
  4852. }
  4853. for (var i = 0; i < type.length && !valid; i++) {
  4854. var assertedType = assertType(value, type[i]);
  4855. expectedTypes.push(assertedType.expectedType || '');
  4856. valid = assertedType.valid;
  4857. }
  4858. }
  4859. if (!valid) {
  4860. warn(
  4861. getInvalidTypeMessage(name, value, expectedTypes),
  4862. vm
  4863. );
  4864. return
  4865. }
  4866. var validator = prop.validator;
  4867. if (validator) {
  4868. if (!validator(value)) {
  4869. warn(
  4870. 'Invalid prop: custom validator check failed for prop "' + name + '".',
  4871. vm
  4872. );
  4873. }
  4874. }
  4875. }
  4876. var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;
  4877. function assertType (value, type) {
  4878. var valid;
  4879. var expectedType = getType(type);
  4880. if (simpleCheckRE.test(expectedType)) {
  4881. var t = typeof value;
  4882. valid = t === expectedType.toLowerCase();
  4883. // for primitive wrapper objects
  4884. if (!valid && t === 'object') {
  4885. valid = value instanceof type;
  4886. }
  4887. } else if (expectedType === 'Object') {
  4888. valid = isPlainObject(value);
  4889. } else if (expectedType === 'Array') {
  4890. valid = Array.isArray(value);
  4891. } else {
  4892. valid = value instanceof type;
  4893. }
  4894. return {
  4895. valid: valid,
  4896. expectedType: expectedType
  4897. }
  4898. }
  4899. /**
  4900. * Use function string name to check built-in types,
  4901. * because a simple equality check will fail when running
  4902. * across different vms / iframes.
  4903. */
  4904. function getType (fn) {
  4905. var match = fn && fn.toString().match(/^\s*function (\w+)/);
  4906. return match ? match[1] : ''
  4907. }
  4908. function isSameType (a, b) {
  4909. return getType(a) === getType(b)
  4910. }
  4911. function getTypeIndex (type, expectedTypes) {
  4912. if (!Array.isArray(expectedTypes)) {
  4913. return isSameType(expectedTypes, type) ? 0 : -1
  4914. }
  4915. for (var i = 0, len = expectedTypes.length; i < len; i++) {
  4916. if (isSameType(expectedTypes[i], type)) {
  4917. return i
  4918. }
  4919. }
  4920. return -1
  4921. }
  4922. function getInvalidTypeMessage (name, value, expectedTypes) {
  4923. var message = "Invalid prop: type check failed for prop \"" + name + "\"." +
  4924. " Expected " + (expectedTypes.map(capitalize).join(', '));
  4925. var expectedType = expectedTypes[0];
  4926. var receivedType = toRawType(value);
  4927. var expectedValue = styleValue(value, expectedType);
  4928. var receivedValue = styleValue(value, receivedType);
  4929. // check if we need to specify expected value
  4930. if (expectedTypes.length === 1 &&
  4931. isExplicable(expectedType) &&
  4932. !isBoolean(expectedType, receivedType)) {
  4933. message += " with value " + expectedValue;
  4934. }
  4935. message += ", got " + receivedType + " ";
  4936. // check if we need to specify received value
  4937. if (isExplicable(receivedType)) {
  4938. message += "with value " + receivedValue + ".";
  4939. }
  4940. return message
  4941. }
  4942. function styleValue (value, type) {
  4943. if (type === 'String') {
  4944. return ("\"" + value + "\"")
  4945. } else if (type === 'Number') {
  4946. return ("" + (Number(value)))
  4947. } else {
  4948. return ("" + value)
  4949. }
  4950. }
  4951. function isExplicable (value) {
  4952. var explicitTypes = ['string', 'number', 'boolean'];
  4953. return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })
  4954. }
  4955. function isBoolean () {
  4956. var args = [], len = arguments.length;
  4957. while ( len-- ) args[ len ] = arguments[ len ];
  4958. return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })
  4959. }
  4960. /* */
  4961. function handleError (err, vm, info) {
  4962. // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
  4963. // See: https://github.com/vuejs/vuex/issues/1505
  4964. pushTarget();
  4965. try {
  4966. if (vm) {
  4967. var cur = vm;
  4968. while ((cur = cur.$parent)) {
  4969. var hooks = cur.$options.errorCaptured;
  4970. if (hooks) {
  4971. for (var i = 0; i < hooks.length; i++) {
  4972. try {
  4973. var capture = hooks[i].call(cur, err, vm, info) === false;
  4974. if (capture) { return }
  4975. } catch (e) {
  4976. globalHandleError(e, cur, 'errorCaptured hook');
  4977. }
  4978. }
  4979. }
  4980. }
  4981. }
  4982. globalHandleError(err, vm, info);
  4983. } finally {
  4984. popTarget();
  4985. }
  4986. }
  4987. function invokeWithErrorHandling (
  4988. handler,
  4989. context,
  4990. args,
  4991. vm,
  4992. info
  4993. ) {
  4994. var res;
  4995. try {
  4996. res = args ? handler.apply(context, args) : handler.call(context);
  4997. if (res && !res._isVue && isPromise(res) && !res._handled) {
  4998. res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
  4999. // issue #9511
  5000. // avoid catch triggering multiple times when nested calls
  5001. res._handled = true;
  5002. }
  5003. } catch (e) {
  5004. handleError(e, vm, info);
  5005. }
  5006. return res
  5007. }
  5008. function globalHandleError (err, vm, info) {
  5009. if (config.errorHandler) {
  5010. try {
  5011. return config.errorHandler.call(null, err, vm, info)
  5012. } catch (e) {
  5013. // if the user intentionally throws the original error in the handler,
  5014. // do not log it twice
  5015. if (e !== err) {
  5016. logError(e, null, 'config.errorHandler');
  5017. }
  5018. }
  5019. }
  5020. logError(err, vm, info);
  5021. }
  5022. function logError (err, vm, info) {
  5023. if (true) {
  5024. warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
  5025. }
  5026. /* istanbul ignore else */
  5027. if ((inBrowser || inWeex) && typeof console !== 'undefined') {
  5028. console.error(err);
  5029. } else {
  5030. throw err
  5031. }
  5032. }
  5033. /* */
  5034. var callbacks = [];
  5035. var pending = false;
  5036. function flushCallbacks () {
  5037. pending = false;
  5038. var copies = callbacks.slice(0);
  5039. callbacks.length = 0;
  5040. for (var i = 0; i < copies.length; i++) {
  5041. copies[i]();
  5042. }
  5043. }
  5044. // Here we have async deferring wrappers using microtasks.
  5045. // In 2.5 we used (macro) tasks (in combination with microtasks).
  5046. // However, it has subtle problems when state is changed right before repaint
  5047. // (e.g. #6813, out-in transitions).
  5048. // Also, using (macro) tasks in event handler would cause some weird behaviors
  5049. // that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).
  5050. // So we now use microtasks everywhere, again.
  5051. // A major drawback of this tradeoff is that there are some scenarios
  5052. // where microtasks have too high a priority and fire in between supposedly
  5053. // sequential events (e.g. #4521, #6690, which have workarounds)
  5054. // or even between bubbling of the same event (#6566).
  5055. var timerFunc;
  5056. // The nextTick behavior leverages the microtask queue, which can be accessed
  5057. // via either native Promise.then or MutationObserver.
  5058. // MutationObserver has wider support, however it is seriously bugged in
  5059. // UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
  5060. // completely stops working after triggering a few times... so, if native
  5061. // Promise is available, we will use it:
  5062. /* istanbul ignore next, $flow-disable-line */
  5063. if (typeof Promise !== 'undefined' && isNative(Promise)) {
  5064. var p = Promise.resolve();
  5065. timerFunc = function () {
  5066. p.then(flushCallbacks);
  5067. // In problematic UIWebViews, Promise.then doesn't completely break, but
  5068. // it can get stuck in a weird state where callbacks are pushed into the
  5069. // microtask queue but the queue isn't being flushed, until the browser
  5070. // needs to do some other work, e.g. handle a timer. Therefore we can
  5071. // "force" the microtask queue to be flushed by adding an empty timer.
  5072. if (isIOS) { setTimeout(noop); }
  5073. };
  5074. } else if (!isIE && typeof MutationObserver !== 'undefined' && (
  5075. isNative(MutationObserver) ||
  5076. // PhantomJS and iOS 7.x
  5077. MutationObserver.toString() === '[object MutationObserverConstructor]'
  5078. )) {
  5079. // Use MutationObserver where native Promise is not available,
  5080. // e.g. PhantomJS, iOS7, Android 4.4
  5081. // (#6466 MutationObserver is unreliable in IE11)
  5082. var counter = 1;
  5083. var observer = new MutationObserver(flushCallbacks);
  5084. var textNode = document.createTextNode(String(counter));
  5085. observer.observe(textNode, {
  5086. characterData: true
  5087. });
  5088. timerFunc = function () {
  5089. counter = (counter + 1) % 2;
  5090. textNode.data = String(counter);
  5091. };
  5092. } else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
  5093. // Fallback to setImmediate.
  5094. // Technically it leverages the (macro) task queue,
  5095. // but it is still a better choice than setTimeout.
  5096. timerFunc = function () {
  5097. setImmediate(flushCallbacks);
  5098. };
  5099. } else {
  5100. // Fallback to setTimeout.
  5101. timerFunc = function () {
  5102. setTimeout(flushCallbacks, 0);
  5103. };
  5104. }
  5105. function nextTick (cb, ctx) {
  5106. var _resolve;
  5107. callbacks.push(function () {
  5108. if (cb) {
  5109. try {
  5110. cb.call(ctx);
  5111. } catch (e) {
  5112. handleError(e, ctx, 'nextTick');
  5113. }
  5114. } else if (_resolve) {
  5115. _resolve(ctx);
  5116. }
  5117. });
  5118. if (!pending) {
  5119. pending = true;
  5120. timerFunc();
  5121. }
  5122. // $flow-disable-line
  5123. if (!cb && typeof Promise !== 'undefined') {
  5124. return new Promise(function (resolve) {
  5125. _resolve = resolve;
  5126. })
  5127. }
  5128. }
  5129. /* */
  5130. /* not type checking this file because flow doesn't play well with Proxy */
  5131. var initProxy;
  5132. if (true) {
  5133. var allowedGlobals = makeMap(
  5134. 'Infinity,undefined,NaN,isFinite,isNaN,' +
  5135. 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +
  5136. 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +
  5137. 'require' // for Webpack/Browserify
  5138. );
  5139. var warnNonPresent = function (target, key) {
  5140. warn(
  5141. "Property or method \"" + key + "\" is not defined on the instance but " +
  5142. 'referenced during render. Make sure that this property is reactive, ' +
  5143. 'either in the data option, or for class-based components, by ' +
  5144. 'initializing the property. ' +
  5145. 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
  5146. target
  5147. );
  5148. };
  5149. var warnReservedPrefix = function (target, key) {
  5150. warn(
  5151. "Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
  5152. 'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
  5153. 'prevent conflicts with Vue internals. ' +
  5154. 'See: https://vuejs.org/v2/api/#data',
  5155. target
  5156. );
  5157. };
  5158. var hasProxy =
  5159. typeof Proxy !== 'undefined' && isNative(Proxy);
  5160. if (hasProxy) {
  5161. var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');
  5162. config.keyCodes = new Proxy(config.keyCodes, {
  5163. set: function set (target, key, value) {
  5164. if (isBuiltInModifier(key)) {
  5165. warn(("Avoid overwriting built-in modifier in config.keyCodes: ." + key));
  5166. return false
  5167. } else {
  5168. target[key] = value;
  5169. return true
  5170. }
  5171. }
  5172. });
  5173. }
  5174. var hasHandler = {
  5175. has: function has (target, key) {
  5176. var has = key in target;
  5177. var isAllowed = allowedGlobals(key) ||
  5178. (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));
  5179. if (!has && !isAllowed) {
  5180. if (key in target.$data) { warnReservedPrefix(target, key); }
  5181. else { warnNonPresent(target, key); }
  5182. }
  5183. return has || !isAllowed
  5184. }
  5185. };
  5186. var getHandler = {
  5187. get: function get (target, key) {
  5188. if (typeof key === 'string' && !(key in target)) {
  5189. if (key in target.$data) { warnReservedPrefix(target, key); }
  5190. else { warnNonPresent(target, key); }
  5191. }
  5192. return target[key]
  5193. }
  5194. };
  5195. initProxy = function initProxy (vm) {
  5196. if (hasProxy) {
  5197. // determine which proxy handler to use
  5198. var options = vm.$options;
  5199. var handlers = options.render && options.render._withStripped
  5200. ? getHandler
  5201. : hasHandler;
  5202. vm._renderProxy = new Proxy(vm, handlers);
  5203. } else {
  5204. vm._renderProxy = vm;
  5205. }
  5206. };
  5207. }
  5208. /* */
  5209. var seenObjects = new _Set();
  5210. /**
  5211. * Recursively traverse an object to evoke all converted
  5212. * getters, so that every nested property inside the object
  5213. * is collected as a "deep" dependency.
  5214. */
  5215. function traverse (val) {
  5216. _traverse(val, seenObjects);
  5217. seenObjects.clear();
  5218. }
  5219. function _traverse (val, seen) {
  5220. var i, keys;
  5221. var isA = Array.isArray(val);
  5222. if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {
  5223. return
  5224. }
  5225. if (val.__ob__) {
  5226. var depId = val.__ob__.dep.id;
  5227. if (seen.has(depId)) {
  5228. return
  5229. }
  5230. seen.add(depId);
  5231. }
  5232. if (isA) {
  5233. i = val.length;
  5234. while (i--) { _traverse(val[i], seen); }
  5235. } else {
  5236. keys = Object.keys(val);
  5237. i = keys.length;
  5238. while (i--) { _traverse(val[keys[i]], seen); }
  5239. }
  5240. }
  5241. var mark;
  5242. var measure;
  5243. if (true) {
  5244. var perf = inBrowser && window.performance;
  5245. /* istanbul ignore if */
  5246. if (
  5247. perf &&
  5248. perf.mark &&
  5249. perf.measure &&
  5250. perf.clearMarks &&
  5251. perf.clearMeasures
  5252. ) {
  5253. mark = function (tag) { return perf.mark(tag); };
  5254. measure = function (name, startTag, endTag) {
  5255. perf.measure(name, startTag, endTag);
  5256. perf.clearMarks(startTag);
  5257. perf.clearMarks(endTag);
  5258. // perf.clearMeasures(name)
  5259. };
  5260. }
  5261. }
  5262. /* */
  5263. var normalizeEvent = cached(function (name) {
  5264. var passive = name.charAt(0) === '&';
  5265. name = passive ? name.slice(1) : name;
  5266. var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first
  5267. name = once$$1 ? name.slice(1) : name;
  5268. var capture = name.charAt(0) === '!';
  5269. name = capture ? name.slice(1) : name;
  5270. return {
  5271. name: name,
  5272. once: once$$1,
  5273. capture: capture,
  5274. passive: passive
  5275. }
  5276. });
  5277. function createFnInvoker (fns, vm) {
  5278. function invoker () {
  5279. var arguments$1 = arguments;
  5280. var fns = invoker.fns;
  5281. if (Array.isArray(fns)) {
  5282. var cloned = fns.slice();
  5283. for (var i = 0; i < cloned.length; i++) {
  5284. invokeWithErrorHandling(cloned[i], null, arguments$1, vm, "v-on handler");
  5285. }
  5286. } else {
  5287. // return handler return value for single handlers
  5288. return invokeWithErrorHandling(fns, null, arguments, vm, "v-on handler")
  5289. }
  5290. }
  5291. invoker.fns = fns;
  5292. return invoker
  5293. }
  5294. function updateListeners (
  5295. on,
  5296. oldOn,
  5297. add,
  5298. remove$$1,
  5299. createOnceHandler,
  5300. vm
  5301. ) {
  5302. var name, def$$1, cur, old, event;
  5303. for (name in on) {
  5304. def$$1 = cur = on[name];
  5305. old = oldOn[name];
  5306. event = normalizeEvent(name);
  5307. if (isUndef(cur)) {
  5308. true && warn(
  5309. "Invalid handler for event \"" + (event.name) + "\": got " + String(cur),
  5310. vm
  5311. );
  5312. } else if (isUndef(old)) {
  5313. if (isUndef(cur.fns)) {
  5314. cur = on[name] = createFnInvoker(cur, vm);
  5315. }
  5316. if (isTrue(event.once)) {
  5317. cur = on[name] = createOnceHandler(event.name, cur, event.capture);
  5318. }
  5319. add(event.name, cur, event.capture, event.passive, event.params);
  5320. } else if (cur !== old) {
  5321. old.fns = cur;
  5322. on[name] = old;
  5323. }
  5324. }
  5325. for (name in oldOn) {
  5326. if (isUndef(on[name])) {
  5327. event = normalizeEvent(name);
  5328. remove$$1(event.name, oldOn[name], event.capture);
  5329. }
  5330. }
  5331. }
  5332. /* */
  5333. /* */
  5334. // fixed by xxxxxx (mp properties)
  5335. function extractPropertiesFromVNodeData(data, Ctor, res, context) {
  5336. var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;
  5337. if (isUndef(propOptions)) {
  5338. return res
  5339. }
  5340. var externalClasses = Ctor.options.mpOptions.externalClasses || [];
  5341. var attrs = data.attrs;
  5342. var props = data.props;
  5343. if (isDef(attrs) || isDef(props)) {
  5344. for (var key in propOptions) {
  5345. var altKey = hyphenate(key);
  5346. var result = checkProp(res, props, key, altKey, true) ||
  5347. checkProp(res, attrs, key, altKey, false);
  5348. // externalClass
  5349. if (
  5350. result &&
  5351. res[key] &&
  5352. externalClasses.indexOf(altKey) !== -1 &&
  5353. context[camelize(res[key])]
  5354. ) {
  5355. // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)
  5356. res[key] = context[camelize(res[key])];
  5357. }
  5358. }
  5359. }
  5360. return res
  5361. }
  5362. function extractPropsFromVNodeData (
  5363. data,
  5364. Ctor,
  5365. tag,
  5366. context// fixed by xxxxxx
  5367. ) {
  5368. // we are only extracting raw values here.
  5369. // validation and default values are handled in the child
  5370. // component itself.
  5371. var propOptions = Ctor.options.props;
  5372. if (isUndef(propOptions)) {
  5373. // fixed by xxxxxx
  5374. return extractPropertiesFromVNodeData(data, Ctor, {}, context)
  5375. }
  5376. var res = {};
  5377. var attrs = data.attrs;
  5378. var props = data.props;
  5379. if (isDef(attrs) || isDef(props)) {
  5380. for (var key in propOptions) {
  5381. var altKey = hyphenate(key);
  5382. if (true) {
  5383. var keyInLowerCase = key.toLowerCase();
  5384. if (
  5385. key !== keyInLowerCase &&
  5386. attrs && hasOwn(attrs, keyInLowerCase)
  5387. ) {
  5388. tip(
  5389. "Prop \"" + keyInLowerCase + "\" is passed to component " +
  5390. (formatComponentName(tag || Ctor)) + ", but the declared prop name is" +
  5391. " \"" + key + "\". " +
  5392. "Note that HTML attributes are case-insensitive and camelCased " +
  5393. "props need to use their kebab-case equivalents when using in-DOM " +
  5394. "templates. You should probably use \"" + altKey + "\" instead of \"" + key + "\"."
  5395. );
  5396. }
  5397. }
  5398. checkProp(res, props, key, altKey, true) ||
  5399. checkProp(res, attrs, key, altKey, false);
  5400. }
  5401. }
  5402. // fixed by xxxxxx
  5403. return extractPropertiesFromVNodeData(data, Ctor, res, context)
  5404. }
  5405. function checkProp (
  5406. res,
  5407. hash,
  5408. key,
  5409. altKey,
  5410. preserve
  5411. ) {
  5412. if (isDef(hash)) {
  5413. if (hasOwn(hash, key)) {
  5414. res[key] = hash[key];
  5415. if (!preserve) {
  5416. delete hash[key];
  5417. }
  5418. return true
  5419. } else if (hasOwn(hash, altKey)) {
  5420. res[key] = hash[altKey];
  5421. if (!preserve) {
  5422. delete hash[altKey];
  5423. }
  5424. return true
  5425. }
  5426. }
  5427. return false
  5428. }
  5429. /* */
  5430. // The template compiler attempts to minimize the need for normalization by
  5431. // statically analyzing the template at compile time.
  5432. //
  5433. // For plain HTML markup, normalization can be completely skipped because the
  5434. // generated render function is guaranteed to return Array<VNode>. There are
  5435. // two cases where extra normalization is needed:
  5436. // 1. When the children contains components - because a functional component
  5437. // may return an Array instead of a single root. In this case, just a simple
  5438. // normalization is needed - if any child is an Array, we flatten the whole
  5439. // thing with Array.prototype.concat. It is guaranteed to be only 1-level deep
  5440. // because functional components already normalize their own children.
  5441. function simpleNormalizeChildren (children) {
  5442. for (var i = 0; i < children.length; i++) {
  5443. if (Array.isArray(children[i])) {
  5444. return Array.prototype.concat.apply([], children)
  5445. }
  5446. }
  5447. return children
  5448. }
  5449. // 2. When the children contains constructs that always generated nested Arrays,
  5450. // e.g. <template>, <slot>, v-for, or when the children is provided by user
  5451. // with hand-written render functions / JSX. In such cases a full normalization
  5452. // is needed to cater to all possible types of children values.
  5453. function normalizeChildren (children) {
  5454. return isPrimitive(children)
  5455. ? [createTextVNode(children)]
  5456. : Array.isArray(children)
  5457. ? normalizeArrayChildren(children)
  5458. : undefined
  5459. }
  5460. function isTextNode (node) {
  5461. return isDef(node) && isDef(node.text) && isFalse(node.isComment)
  5462. }
  5463. function normalizeArrayChildren (children, nestedIndex) {
  5464. var res = [];
  5465. var i, c, lastIndex, last;
  5466. for (i = 0; i < children.length; i++) {
  5467. c = children[i];
  5468. if (isUndef(c) || typeof c === 'boolean') { continue }
  5469. lastIndex = res.length - 1;
  5470. last = res[lastIndex];
  5471. // nested
  5472. if (Array.isArray(c)) {
  5473. if (c.length > 0) {
  5474. c = normalizeArrayChildren(c, ((nestedIndex || '') + "_" + i));
  5475. // merge adjacent text nodes
  5476. if (isTextNode(c[0]) && isTextNode(last)) {
  5477. res[lastIndex] = createTextVNode(last.text + (c[0]).text);
  5478. c.shift();
  5479. }
  5480. res.push.apply(res, c);
  5481. }
  5482. } else if (isPrimitive(c)) {
  5483. if (isTextNode(last)) {
  5484. // merge adjacent text nodes
  5485. // this is necessary for SSR hydration because text nodes are
  5486. // essentially merged when rendered to HTML strings
  5487. res[lastIndex] = createTextVNode(last.text + c);
  5488. } else if (c !== '') {
  5489. // convert primitive to vnode
  5490. res.push(createTextVNode(c));
  5491. }
  5492. } else {
  5493. if (isTextNode(c) && isTextNode(last)) {
  5494. // merge adjacent text nodes
  5495. res[lastIndex] = createTextVNode(last.text + c.text);
  5496. } else {
  5497. // default key for nested array children (likely generated by v-for)
  5498. if (isTrue(children._isVList) &&
  5499. isDef(c.tag) &&
  5500. isUndef(c.key) &&
  5501. isDef(nestedIndex)) {
  5502. c.key = "__vlist" + nestedIndex + "_" + i + "__";
  5503. }
  5504. res.push(c);
  5505. }
  5506. }
  5507. }
  5508. return res
  5509. }
  5510. /* */
  5511. function initProvide (vm) {
  5512. var provide = vm.$options.provide;
  5513. if (provide) {
  5514. vm._provided = typeof provide === 'function'
  5515. ? provide.call(vm)
  5516. : provide;
  5517. }
  5518. }
  5519. function initInjections (vm) {
  5520. var result = resolveInject(vm.$options.inject, vm);
  5521. if (result) {
  5522. toggleObserving(false);
  5523. Object.keys(result).forEach(function (key) {
  5524. /* istanbul ignore else */
  5525. if (true) {
  5526. defineReactive$$1(vm, key, result[key], function () {
  5527. warn(
  5528. "Avoid mutating an injected value directly since the changes will be " +
  5529. "overwritten whenever the provided component re-renders. " +
  5530. "injection being mutated: \"" + key + "\"",
  5531. vm
  5532. );
  5533. });
  5534. } else {}
  5535. });
  5536. toggleObserving(true);
  5537. }
  5538. }
  5539. function resolveInject (inject, vm) {
  5540. if (inject) {
  5541. // inject is :any because flow is not smart enough to figure out cached
  5542. var result = Object.create(null);
  5543. var keys = hasSymbol
  5544. ? Reflect.ownKeys(inject)
  5545. : Object.keys(inject);
  5546. for (var i = 0; i < keys.length; i++) {
  5547. var key = keys[i];
  5548. // #6574 in case the inject object is observed...
  5549. if (key === '__ob__') { continue }
  5550. var provideKey = inject[key].from;
  5551. var source = vm;
  5552. while (source) {
  5553. if (source._provided && hasOwn(source._provided, provideKey)) {
  5554. result[key] = source._provided[provideKey];
  5555. break
  5556. }
  5557. source = source.$parent;
  5558. }
  5559. if (!source) {
  5560. if ('default' in inject[key]) {
  5561. var provideDefault = inject[key].default;
  5562. result[key] = typeof provideDefault === 'function'
  5563. ? provideDefault.call(vm)
  5564. : provideDefault;
  5565. } else if (true) {
  5566. warn(("Injection \"" + key + "\" not found"), vm);
  5567. }
  5568. }
  5569. }
  5570. return result
  5571. }
  5572. }
  5573. /* */
  5574. /**
  5575. * Runtime helper for resolving raw children VNodes into a slot object.
  5576. */
  5577. function resolveSlots (
  5578. children,
  5579. context
  5580. ) {
  5581. if (!children || !children.length) {
  5582. return {}
  5583. }
  5584. var slots = {};
  5585. for (var i = 0, l = children.length; i < l; i++) {
  5586. var child = children[i];
  5587. var data = child.data;
  5588. // remove slot attribute if the node is resolved as a Vue slot node
  5589. if (data && data.attrs && data.attrs.slot) {
  5590. delete data.attrs.slot;
  5591. }
  5592. // named slots should only be respected if the vnode was rendered in the
  5593. // same context.
  5594. if ((child.context === context || child.fnContext === context) &&
  5595. data && data.slot != null
  5596. ) {
  5597. var name = data.slot;
  5598. var slot = (slots[name] || (slots[name] = []));
  5599. if (child.tag === 'template') {
  5600. slot.push.apply(slot, child.children || []);
  5601. } else {
  5602. slot.push(child);
  5603. }
  5604. } else {
  5605. // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page
  5606. if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){
  5607. (slots['page'] || (slots['page'] = [])).push(child);
  5608. }else{
  5609. (slots.default || (slots.default = [])).push(child);
  5610. }
  5611. }
  5612. }
  5613. // ignore slots that contains only whitespace
  5614. for (var name$1 in slots) {
  5615. if (slots[name$1].every(isWhitespace)) {
  5616. delete slots[name$1];
  5617. }
  5618. }
  5619. return slots
  5620. }
  5621. function isWhitespace (node) {
  5622. return (node.isComment && !node.asyncFactory) || node.text === ' '
  5623. }
  5624. /* */
  5625. function normalizeScopedSlots (
  5626. slots,
  5627. normalSlots,
  5628. prevSlots
  5629. ) {
  5630. var res;
  5631. var hasNormalSlots = Object.keys(normalSlots).length > 0;
  5632. var isStable = slots ? !!slots.$stable : !hasNormalSlots;
  5633. var key = slots && slots.$key;
  5634. if (!slots) {
  5635. res = {};
  5636. } else if (slots._normalized) {
  5637. // fast path 1: child component re-render only, parent did not change
  5638. return slots._normalized
  5639. } else if (
  5640. isStable &&
  5641. prevSlots &&
  5642. prevSlots !== emptyObject &&
  5643. key === prevSlots.$key &&
  5644. !hasNormalSlots &&
  5645. !prevSlots.$hasNormal
  5646. ) {
  5647. // fast path 2: stable scoped slots w/ no normal slots to proxy,
  5648. // only need to normalize once
  5649. return prevSlots
  5650. } else {
  5651. res = {};
  5652. for (var key$1 in slots) {
  5653. if (slots[key$1] && key$1[0] !== '$') {
  5654. res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
  5655. }
  5656. }
  5657. }
  5658. // expose normal slots on scopedSlots
  5659. for (var key$2 in normalSlots) {
  5660. if (!(key$2 in res)) {
  5661. res[key$2] = proxyNormalSlot(normalSlots, key$2);
  5662. }
  5663. }
  5664. // avoriaz seems to mock a non-extensible $scopedSlots object
  5665. // and when that is passed down this would cause an error
  5666. if (slots && Object.isExtensible(slots)) {
  5667. (slots)._normalized = res;
  5668. }
  5669. def(res, '$stable', isStable);
  5670. def(res, '$key', key);
  5671. def(res, '$hasNormal', hasNormalSlots);
  5672. return res
  5673. }
  5674. function normalizeScopedSlot(normalSlots, key, fn) {
  5675. var normalized = function () {
  5676. var res = arguments.length ? fn.apply(null, arguments) : fn({});
  5677. res = res && typeof res === 'object' && !Array.isArray(res)
  5678. ? [res] // single vnode
  5679. : normalizeChildren(res);
  5680. return res && (
  5681. res.length === 0 ||
  5682. (res.length === 1 && res[0].isComment) // #9658
  5683. ) ? undefined
  5684. : res
  5685. };
  5686. // this is a slot using the new v-slot syntax without scope. although it is
  5687. // compiled as a scoped slot, render fn users would expect it to be present
  5688. // on this.$slots because the usage is semantically a normal slot.
  5689. if (fn.proxy) {
  5690. Object.defineProperty(normalSlots, key, {
  5691. get: normalized,
  5692. enumerable: true,
  5693. configurable: true
  5694. });
  5695. }
  5696. return normalized
  5697. }
  5698. function proxyNormalSlot(slots, key) {
  5699. return function () { return slots[key]; }
  5700. }
  5701. /* */
  5702. /**
  5703. * Runtime helper for rendering v-for lists.
  5704. */
  5705. function renderList (
  5706. val,
  5707. render
  5708. ) {
  5709. var ret, i, l, keys, key;
  5710. if (Array.isArray(val) || typeof val === 'string') {
  5711. ret = new Array(val.length);
  5712. for (i = 0, l = val.length; i < l; i++) {
  5713. ret[i] = render(val[i], i, i, i); // fixed by xxxxxx
  5714. }
  5715. } else if (typeof val === 'number') {
  5716. ret = new Array(val);
  5717. for (i = 0; i < val; i++) {
  5718. ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx
  5719. }
  5720. } else if (isObject(val)) {
  5721. if (hasSymbol && val[Symbol.iterator]) {
  5722. ret = [];
  5723. var iterator = val[Symbol.iterator]();
  5724. var result = iterator.next();
  5725. while (!result.done) {
  5726. ret.push(render(result.value, ret.length, i, i++)); // fixed by xxxxxx
  5727. result = iterator.next();
  5728. }
  5729. } else {
  5730. keys = Object.keys(val);
  5731. ret = new Array(keys.length);
  5732. for (i = 0, l = keys.length; i < l; i++) {
  5733. key = keys[i];
  5734. ret[i] = render(val[key], key, i, i); // fixed by xxxxxx
  5735. }
  5736. }
  5737. }
  5738. if (!isDef(ret)) {
  5739. ret = [];
  5740. }
  5741. (ret)._isVList = true;
  5742. return ret
  5743. }
  5744. /* */
  5745. /**
  5746. * Runtime helper for rendering <slot>
  5747. */
  5748. function renderSlot (
  5749. name,
  5750. fallback,
  5751. props,
  5752. bindObject
  5753. ) {
  5754. var scopedSlotFn = this.$scopedSlots[name];
  5755. var nodes;
  5756. if (scopedSlotFn) { // scoped slot
  5757. props = props || {};
  5758. if (bindObject) {
  5759. if ( true && !isObject(bindObject)) {
  5760. warn(
  5761. 'slot v-bind without argument expects an Object',
  5762. this
  5763. );
  5764. }
  5765. props = extend(extend({}, bindObject), props);
  5766. }
  5767. // fixed by xxxxxx app-plus scopedSlot
  5768. nodes = scopedSlotFn(props, this, props._i) || fallback;
  5769. } else {
  5770. nodes = this.$slots[name] || fallback;
  5771. }
  5772. var target = props && props.slot;
  5773. if (target) {
  5774. return this.$createElement('template', { slot: target }, nodes)
  5775. } else {
  5776. return nodes
  5777. }
  5778. }
  5779. /* */
  5780. /**
  5781. * Runtime helper for resolving filters
  5782. */
  5783. function resolveFilter (id) {
  5784. return resolveAsset(this.$options, 'filters', id, true) || identity
  5785. }
  5786. /* */
  5787. function isKeyNotMatch (expect, actual) {
  5788. if (Array.isArray(expect)) {
  5789. return expect.indexOf(actual) === -1
  5790. } else {
  5791. return expect !== actual
  5792. }
  5793. }
  5794. /**
  5795. * Runtime helper for checking keyCodes from config.
  5796. * exposed as Vue.prototype._k
  5797. * passing in eventKeyName as last argument separately for backwards compat
  5798. */
  5799. function checkKeyCodes (
  5800. eventKeyCode,
  5801. key,
  5802. builtInKeyCode,
  5803. eventKeyName,
  5804. builtInKeyName
  5805. ) {
  5806. var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;
  5807. if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {
  5808. return isKeyNotMatch(builtInKeyName, eventKeyName)
  5809. } else if (mappedKeyCode) {
  5810. return isKeyNotMatch(mappedKeyCode, eventKeyCode)
  5811. } else if (eventKeyName) {
  5812. return hyphenate(eventKeyName) !== key
  5813. }
  5814. }
  5815. /* */
  5816. /**
  5817. * Runtime helper for merging v-bind="object" into a VNode's data.
  5818. */
  5819. function bindObjectProps (
  5820. data,
  5821. tag,
  5822. value,
  5823. asProp,
  5824. isSync
  5825. ) {
  5826. if (value) {
  5827. if (!isObject(value)) {
  5828. true && warn(
  5829. 'v-bind without argument expects an Object or Array value',
  5830. this
  5831. );
  5832. } else {
  5833. if (Array.isArray(value)) {
  5834. value = toObject(value);
  5835. }
  5836. var hash;
  5837. var loop = function ( key ) {
  5838. if (
  5839. key === 'class' ||
  5840. key === 'style' ||
  5841. isReservedAttribute(key)
  5842. ) {
  5843. hash = data;
  5844. } else {
  5845. var type = data.attrs && data.attrs.type;
  5846. hash = asProp || config.mustUseProp(tag, type, key)
  5847. ? data.domProps || (data.domProps = {})
  5848. : data.attrs || (data.attrs = {});
  5849. }
  5850. var camelizedKey = camelize(key);
  5851. var hyphenatedKey = hyphenate(key);
  5852. if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
  5853. hash[key] = value[key];
  5854. if (isSync) {
  5855. var on = data.on || (data.on = {});
  5856. on[("update:" + key)] = function ($event) {
  5857. value[key] = $event;
  5858. };
  5859. }
  5860. }
  5861. };
  5862. for (var key in value) loop( key );
  5863. }
  5864. }
  5865. return data
  5866. }
  5867. /* */
  5868. /**
  5869. * Runtime helper for rendering static trees.
  5870. */
  5871. function renderStatic (
  5872. index,
  5873. isInFor
  5874. ) {
  5875. var cached = this._staticTrees || (this._staticTrees = []);
  5876. var tree = cached[index];
  5877. // if has already-rendered static tree and not inside v-for,
  5878. // we can reuse the same tree.
  5879. if (tree && !isInFor) {
  5880. return tree
  5881. }
  5882. // otherwise, render a fresh tree.
  5883. tree = cached[index] = this.$options.staticRenderFns[index].call(
  5884. this._renderProxy,
  5885. null,
  5886. this // for render fns generated for functional component templates
  5887. );
  5888. markStatic(tree, ("__static__" + index), false);
  5889. return tree
  5890. }
  5891. /**
  5892. * Runtime helper for v-once.
  5893. * Effectively it means marking the node as static with a unique key.
  5894. */
  5895. function markOnce (
  5896. tree,
  5897. index,
  5898. key
  5899. ) {
  5900. markStatic(tree, ("__once__" + index + (key ? ("_" + key) : "")), true);
  5901. return tree
  5902. }
  5903. function markStatic (
  5904. tree,
  5905. key,
  5906. isOnce
  5907. ) {
  5908. if (Array.isArray(tree)) {
  5909. for (var i = 0; i < tree.length; i++) {
  5910. if (tree[i] && typeof tree[i] !== 'string') {
  5911. markStaticNode(tree[i], (key + "_" + i), isOnce);
  5912. }
  5913. }
  5914. } else {
  5915. markStaticNode(tree, key, isOnce);
  5916. }
  5917. }
  5918. function markStaticNode (node, key, isOnce) {
  5919. node.isStatic = true;
  5920. node.key = key;
  5921. node.isOnce = isOnce;
  5922. }
  5923. /* */
  5924. function bindObjectListeners (data, value) {
  5925. if (value) {
  5926. if (!isPlainObject(value)) {
  5927. true && warn(
  5928. 'v-on without argument expects an Object value',
  5929. this
  5930. );
  5931. } else {
  5932. var on = data.on = data.on ? extend({}, data.on) : {};
  5933. for (var key in value) {
  5934. var existing = on[key];
  5935. var ours = value[key];
  5936. on[key] = existing ? [].concat(existing, ours) : ours;
  5937. }
  5938. }
  5939. }
  5940. return data
  5941. }
  5942. /* */
  5943. function resolveScopedSlots (
  5944. fns, // see flow/vnode
  5945. res,
  5946. // the following are added in 2.6
  5947. hasDynamicKeys,
  5948. contentHashKey
  5949. ) {
  5950. res = res || { $stable: !hasDynamicKeys };
  5951. for (var i = 0; i < fns.length; i++) {
  5952. var slot = fns[i];
  5953. if (Array.isArray(slot)) {
  5954. resolveScopedSlots(slot, res, hasDynamicKeys);
  5955. } else if (slot) {
  5956. // marker for reverse proxying v-slot without scope on this.$slots
  5957. if (slot.proxy) {
  5958. slot.fn.proxy = true;
  5959. }
  5960. res[slot.key] = slot.fn;
  5961. }
  5962. }
  5963. if (contentHashKey) {
  5964. (res).$key = contentHashKey;
  5965. }
  5966. return res
  5967. }
  5968. /* */
  5969. function bindDynamicKeys (baseObj, values) {
  5970. for (var i = 0; i < values.length; i += 2) {
  5971. var key = values[i];
  5972. if (typeof key === 'string' && key) {
  5973. baseObj[values[i]] = values[i + 1];
  5974. } else if ( true && key !== '' && key !== null) {
  5975. // null is a special value for explicitly removing a binding
  5976. warn(
  5977. ("Invalid value for dynamic directive argument (expected string or null): " + key),
  5978. this
  5979. );
  5980. }
  5981. }
  5982. return baseObj
  5983. }
  5984. // helper to dynamically append modifier runtime markers to event names.
  5985. // ensure only append when value is already string, otherwise it will be cast
  5986. // to string and cause the type check to miss.
  5987. function prependModifier (value, symbol) {
  5988. return typeof value === 'string' ? symbol + value : value
  5989. }
  5990. /* */
  5991. function installRenderHelpers (target) {
  5992. target._o = markOnce;
  5993. target._n = toNumber;
  5994. target._s = toString;
  5995. target._l = renderList;
  5996. target._t = renderSlot;
  5997. target._q = looseEqual;
  5998. target._i = looseIndexOf;
  5999. target._m = renderStatic;
  6000. target._f = resolveFilter;
  6001. target._k = checkKeyCodes;
  6002. target._b = bindObjectProps;
  6003. target._v = createTextVNode;
  6004. target._e = createEmptyVNode;
  6005. target._u = resolveScopedSlots;
  6006. target._g = bindObjectListeners;
  6007. target._d = bindDynamicKeys;
  6008. target._p = prependModifier;
  6009. }
  6010. /* */
  6011. function FunctionalRenderContext (
  6012. data,
  6013. props,
  6014. children,
  6015. parent,
  6016. Ctor
  6017. ) {
  6018. var this$1 = this;
  6019. var options = Ctor.options;
  6020. // ensure the createElement function in functional components
  6021. // gets a unique context - this is necessary for correct named slot check
  6022. var contextVm;
  6023. if (hasOwn(parent, '_uid')) {
  6024. contextVm = Object.create(parent);
  6025. // $flow-disable-line
  6026. contextVm._original = parent;
  6027. } else {
  6028. // the context vm passed in is a functional context as well.
  6029. // in this case we want to make sure we are able to get a hold to the
  6030. // real context instance.
  6031. contextVm = parent;
  6032. // $flow-disable-line
  6033. parent = parent._original;
  6034. }
  6035. var isCompiled = isTrue(options._compiled);
  6036. var needNormalization = !isCompiled;
  6037. this.data = data;
  6038. this.props = props;
  6039. this.children = children;
  6040. this.parent = parent;
  6041. this.listeners = data.on || emptyObject;
  6042. this.injections = resolveInject(options.inject, parent);
  6043. this.slots = function () {
  6044. if (!this$1.$slots) {
  6045. normalizeScopedSlots(
  6046. data.scopedSlots,
  6047. this$1.$slots = resolveSlots(children, parent)
  6048. );
  6049. }
  6050. return this$1.$slots
  6051. };
  6052. Object.defineProperty(this, 'scopedSlots', ({
  6053. enumerable: true,
  6054. get: function get () {
  6055. return normalizeScopedSlots(data.scopedSlots, this.slots())
  6056. }
  6057. }));
  6058. // support for compiled functional template
  6059. if (isCompiled) {
  6060. // exposing $options for renderStatic()
  6061. this.$options = options;
  6062. // pre-resolve slots for renderSlot()
  6063. this.$slots = this.slots();
  6064. this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);
  6065. }
  6066. if (options._scopeId) {
  6067. this._c = function (a, b, c, d) {
  6068. var vnode = createElement(contextVm, a, b, c, d, needNormalization);
  6069. if (vnode && !Array.isArray(vnode)) {
  6070. vnode.fnScopeId = options._scopeId;
  6071. vnode.fnContext = parent;
  6072. }
  6073. return vnode
  6074. };
  6075. } else {
  6076. this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };
  6077. }
  6078. }
  6079. installRenderHelpers(FunctionalRenderContext.prototype);
  6080. function createFunctionalComponent (
  6081. Ctor,
  6082. propsData,
  6083. data,
  6084. contextVm,
  6085. children
  6086. ) {
  6087. var options = Ctor.options;
  6088. var props = {};
  6089. var propOptions = options.props;
  6090. if (isDef(propOptions)) {
  6091. for (var key in propOptions) {
  6092. props[key] = validateProp(key, propOptions, propsData || emptyObject);
  6093. }
  6094. } else {
  6095. if (isDef(data.attrs)) { mergeProps(props, data.attrs); }
  6096. if (isDef(data.props)) { mergeProps(props, data.props); }
  6097. }
  6098. var renderContext = new FunctionalRenderContext(
  6099. data,
  6100. props,
  6101. children,
  6102. contextVm,
  6103. Ctor
  6104. );
  6105. var vnode = options.render.call(null, renderContext._c, renderContext);
  6106. if (vnode instanceof VNode) {
  6107. return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
  6108. } else if (Array.isArray(vnode)) {
  6109. var vnodes = normalizeChildren(vnode) || [];
  6110. var res = new Array(vnodes.length);
  6111. for (var i = 0; i < vnodes.length; i++) {
  6112. res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);
  6113. }
  6114. return res
  6115. }
  6116. }
  6117. function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
  6118. // #7817 clone node before setting fnContext, otherwise if the node is reused
  6119. // (e.g. it was from a cached normal slot) the fnContext causes named slots
  6120. // that should not be matched to match.
  6121. var clone = cloneVNode(vnode);
  6122. clone.fnContext = contextVm;
  6123. clone.fnOptions = options;
  6124. if (true) {
  6125. (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;
  6126. }
  6127. if (data.slot) {
  6128. (clone.data || (clone.data = {})).slot = data.slot;
  6129. }
  6130. return clone
  6131. }
  6132. function mergeProps (to, from) {
  6133. for (var key in from) {
  6134. to[camelize(key)] = from[key];
  6135. }
  6136. }
  6137. /* */
  6138. /* */
  6139. /* */
  6140. /* */
  6141. // inline hooks to be invoked on component VNodes during patch
  6142. var componentVNodeHooks = {
  6143. init: function init (vnode, hydrating) {
  6144. if (
  6145. vnode.componentInstance &&
  6146. !vnode.componentInstance._isDestroyed &&
  6147. vnode.data.keepAlive
  6148. ) {
  6149. // kept-alive components, treat as a patch
  6150. var mountedNode = vnode; // work around flow
  6151. componentVNodeHooks.prepatch(mountedNode, mountedNode);
  6152. } else {
  6153. var child = vnode.componentInstance = createComponentInstanceForVnode(
  6154. vnode,
  6155. activeInstance
  6156. );
  6157. child.$mount(hydrating ? vnode.elm : undefined, hydrating);
  6158. }
  6159. },
  6160. prepatch: function prepatch (oldVnode, vnode) {
  6161. var options = vnode.componentOptions;
  6162. var child = vnode.componentInstance = oldVnode.componentInstance;
  6163. updateChildComponent(
  6164. child,
  6165. options.propsData, // updated props
  6166. options.listeners, // updated listeners
  6167. vnode, // new parent vnode
  6168. options.children // new children
  6169. );
  6170. },
  6171. insert: function insert (vnode) {
  6172. var context = vnode.context;
  6173. var componentInstance = vnode.componentInstance;
  6174. if (!componentInstance._isMounted) {
  6175. callHook(componentInstance, 'onServiceCreated');
  6176. callHook(componentInstance, 'onServiceAttached');
  6177. componentInstance._isMounted = true;
  6178. callHook(componentInstance, 'mounted');
  6179. }
  6180. if (vnode.data.keepAlive) {
  6181. if (context._isMounted) {
  6182. // vue-router#1212
  6183. // During updates, a kept-alive component's child components may
  6184. // change, so directly walking the tree here may call activated hooks
  6185. // on incorrect children. Instead we push them into a queue which will
  6186. // be processed after the whole patch process ended.
  6187. queueActivatedComponent(componentInstance);
  6188. } else {
  6189. activateChildComponent(componentInstance, true /* direct */);
  6190. }
  6191. }
  6192. },
  6193. destroy: function destroy (vnode) {
  6194. var componentInstance = vnode.componentInstance;
  6195. if (!componentInstance._isDestroyed) {
  6196. if (!vnode.data.keepAlive) {
  6197. componentInstance.$destroy();
  6198. } else {
  6199. deactivateChildComponent(componentInstance, true /* direct */);
  6200. }
  6201. }
  6202. }
  6203. };
  6204. var hooksToMerge = Object.keys(componentVNodeHooks);
  6205. function createComponent (
  6206. Ctor,
  6207. data,
  6208. context,
  6209. children,
  6210. tag
  6211. ) {
  6212. if (isUndef(Ctor)) {
  6213. return
  6214. }
  6215. var baseCtor = context.$options._base;
  6216. // plain options object: turn it into a constructor
  6217. if (isObject(Ctor)) {
  6218. Ctor = baseCtor.extend(Ctor);
  6219. }
  6220. // if at this stage it's not a constructor or an async component factory,
  6221. // reject.
  6222. if (typeof Ctor !== 'function') {
  6223. if (true) {
  6224. warn(("Invalid Component definition: " + (String(Ctor))), context);
  6225. }
  6226. return
  6227. }
  6228. // async component
  6229. var asyncFactory;
  6230. if (isUndef(Ctor.cid)) {
  6231. asyncFactory = Ctor;
  6232. Ctor = resolveAsyncComponent(asyncFactory, baseCtor);
  6233. if (Ctor === undefined) {
  6234. // return a placeholder node for async component, which is rendered
  6235. // as a comment node but preserves all the raw information for the node.
  6236. // the information will be used for async server-rendering and hydration.
  6237. return createAsyncPlaceholder(
  6238. asyncFactory,
  6239. data,
  6240. context,
  6241. children,
  6242. tag
  6243. )
  6244. }
  6245. }
  6246. data = data || {};
  6247. // resolve constructor options in case global mixins are applied after
  6248. // component constructor creation
  6249. resolveConstructorOptions(Ctor);
  6250. // transform component v-model data into props & events
  6251. if (isDef(data.model)) {
  6252. transformModel(Ctor.options, data);
  6253. }
  6254. // extract props
  6255. var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx
  6256. // functional component
  6257. if (isTrue(Ctor.options.functional)) {
  6258. return createFunctionalComponent(Ctor, propsData, data, context, children)
  6259. }
  6260. // extract listeners, since these needs to be treated as
  6261. // child component listeners instead of DOM listeners
  6262. var listeners = data.on;
  6263. // replace with listeners with .native modifier
  6264. // so it gets processed during parent component patch.
  6265. data.on = data.nativeOn;
  6266. if (isTrue(Ctor.options.abstract)) {
  6267. // abstract components do not keep anything
  6268. // other than props & listeners & slot
  6269. // work around flow
  6270. var slot = data.slot;
  6271. data = {};
  6272. if (slot) {
  6273. data.slot = slot;
  6274. }
  6275. }
  6276. // install component management hooks onto the placeholder node
  6277. installComponentHooks(data);
  6278. // return a placeholder vnode
  6279. var name = Ctor.options.name || tag;
  6280. var vnode = new VNode(
  6281. ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')),
  6282. data, undefined, undefined, undefined, context,
  6283. { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },
  6284. asyncFactory
  6285. );
  6286. return vnode
  6287. }
  6288. function createComponentInstanceForVnode (
  6289. vnode, // we know it's MountedComponentVNode but flow doesn't
  6290. parent // activeInstance in lifecycle state
  6291. ) {
  6292. var options = {
  6293. _isComponent: true,
  6294. _parentVnode: vnode,
  6295. parent: parent
  6296. };
  6297. // check inline-template render functions
  6298. var inlineTemplate = vnode.data.inlineTemplate;
  6299. if (isDef(inlineTemplate)) {
  6300. options.render = inlineTemplate.render;
  6301. options.staticRenderFns = inlineTemplate.staticRenderFns;
  6302. }
  6303. return new vnode.componentOptions.Ctor(options)
  6304. }
  6305. function installComponentHooks (data) {
  6306. var hooks = data.hook || (data.hook = {});
  6307. for (var i = 0; i < hooksToMerge.length; i++) {
  6308. var key = hooksToMerge[i];
  6309. var existing = hooks[key];
  6310. var toMerge = componentVNodeHooks[key];
  6311. if (existing !== toMerge && !(existing && existing._merged)) {
  6312. hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;
  6313. }
  6314. }
  6315. }
  6316. function mergeHook$1 (f1, f2) {
  6317. var merged = function (a, b) {
  6318. // flow complains about extra args which is why we use any
  6319. f1(a, b);
  6320. f2(a, b);
  6321. };
  6322. merged._merged = true;
  6323. return merged
  6324. }
  6325. // transform component v-model info (value and callback) into
  6326. // prop and event handler respectively.
  6327. function transformModel (options, data) {
  6328. var prop = (options.model && options.model.prop) || 'value';
  6329. var event = (options.model && options.model.event) || 'input'
  6330. ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;
  6331. var on = data.on || (data.on = {});
  6332. var existing = on[event];
  6333. var callback = data.model.callback;
  6334. if (isDef(existing)) {
  6335. if (
  6336. Array.isArray(existing)
  6337. ? existing.indexOf(callback) === -1
  6338. : existing !== callback
  6339. ) {
  6340. on[event] = [callback].concat(existing);
  6341. }
  6342. } else {
  6343. on[event] = callback;
  6344. }
  6345. }
  6346. /* */
  6347. var SIMPLE_NORMALIZE = 1;
  6348. var ALWAYS_NORMALIZE = 2;
  6349. // wrapper function for providing a more flexible interface
  6350. // without getting yelled at by flow
  6351. function createElement (
  6352. context,
  6353. tag,
  6354. data,
  6355. children,
  6356. normalizationType,
  6357. alwaysNormalize
  6358. ) {
  6359. if (Array.isArray(data) || isPrimitive(data)) {
  6360. normalizationType = children;
  6361. children = data;
  6362. data = undefined;
  6363. }
  6364. if (isTrue(alwaysNormalize)) {
  6365. normalizationType = ALWAYS_NORMALIZE;
  6366. }
  6367. return _createElement(context, tag, data, children, normalizationType)
  6368. }
  6369. function _createElement (
  6370. context,
  6371. tag,
  6372. data,
  6373. children,
  6374. normalizationType
  6375. ) {
  6376. if (isDef(data) && isDef((data).__ob__)) {
  6377. true && warn(
  6378. "Avoid using observed data object as vnode data: " + (JSON.stringify(data)) + "\n" +
  6379. 'Always create fresh vnode data objects in each render!',
  6380. context
  6381. );
  6382. return createEmptyVNode()
  6383. }
  6384. // object syntax in v-bind
  6385. if (isDef(data) && isDef(data.is)) {
  6386. tag = data.is;
  6387. }
  6388. if (!tag) {
  6389. // in case of component :is set to falsy value
  6390. return createEmptyVNode()
  6391. }
  6392. // warn against non-primitive key
  6393. if ( true &&
  6394. isDef(data) && isDef(data.key) && !isPrimitive(data.key)
  6395. ) {
  6396. {
  6397. warn(
  6398. 'Avoid using non-primitive value as key, ' +
  6399. 'use string/number value instead.',
  6400. context
  6401. );
  6402. }
  6403. }
  6404. // support single function children as default scoped slot
  6405. if (Array.isArray(children) &&
  6406. typeof children[0] === 'function'
  6407. ) {
  6408. data = data || {};
  6409. data.scopedSlots = { default: children[0] };
  6410. children.length = 0;
  6411. }
  6412. if (normalizationType === ALWAYS_NORMALIZE) {
  6413. children = normalizeChildren(children);
  6414. } else if (normalizationType === SIMPLE_NORMALIZE) {
  6415. children = simpleNormalizeChildren(children);
  6416. }
  6417. var vnode, ns;
  6418. if (typeof tag === 'string') {
  6419. var Ctor;
  6420. ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
  6421. if (config.isReservedTag(tag)) {
  6422. // platform built-in elements
  6423. if ( true && isDef(data) && isDef(data.nativeOn)) {
  6424. warn(
  6425. ("The .native modifier for v-on is only valid on components but it was used on <" + tag + ">."),
  6426. context
  6427. );
  6428. }
  6429. vnode = new VNode(
  6430. config.parsePlatformTagName(tag), data, children,
  6431. undefined, undefined, context
  6432. );
  6433. } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {
  6434. // component
  6435. vnode = createComponent(Ctor, data, context, children, tag);
  6436. } else {
  6437. // unknown or unlisted namespaced elements
  6438. // check at runtime because it may get assigned a namespace when its
  6439. // parent normalizes children
  6440. vnode = new VNode(
  6441. tag, data, children,
  6442. undefined, undefined, context
  6443. );
  6444. }
  6445. } else {
  6446. // direct component options / constructor
  6447. vnode = createComponent(tag, data, context, children);
  6448. }
  6449. if (Array.isArray(vnode)) {
  6450. return vnode
  6451. } else if (isDef(vnode)) {
  6452. if (isDef(ns)) { applyNS(vnode, ns); }
  6453. if (isDef(data)) { registerDeepBindings(data); }
  6454. return vnode
  6455. } else {
  6456. return createEmptyVNode()
  6457. }
  6458. }
  6459. function applyNS (vnode, ns, force) {
  6460. vnode.ns = ns;
  6461. if (vnode.tag === 'foreignObject') {
  6462. // use default namespace inside foreignObject
  6463. ns = undefined;
  6464. force = true;
  6465. }
  6466. if (isDef(vnode.children)) {
  6467. for (var i = 0, l = vnode.children.length; i < l; i++) {
  6468. var child = vnode.children[i];
  6469. if (isDef(child.tag) && (
  6470. isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {
  6471. applyNS(child, ns, force);
  6472. }
  6473. }
  6474. }
  6475. }
  6476. // ref #5318
  6477. // necessary to ensure parent re-render when deep bindings like :style and
  6478. // :class are used on slot nodes
  6479. function registerDeepBindings (data) {
  6480. if (isObject(data.style)) {
  6481. traverse(data.style);
  6482. }
  6483. if (isObject(data.class)) {
  6484. traverse(data.class);
  6485. }
  6486. }
  6487. /* */
  6488. function initRender (vm) {
  6489. vm._vnode = null; // the root of the child tree
  6490. vm._staticTrees = null; // v-once cached trees
  6491. var options = vm.$options;
  6492. var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree
  6493. var renderContext = parentVnode && parentVnode.context;
  6494. vm.$slots = resolveSlots(options._renderChildren, renderContext);
  6495. vm.$scopedSlots = emptyObject;
  6496. // bind the createElement fn to this instance
  6497. // so that we get proper render context inside it.
  6498. // args order: tag, data, children, normalizationType, alwaysNormalize
  6499. // internal version is used by render functions compiled from templates
  6500. vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };
  6501. // normalization is always applied for the public version, used in
  6502. // user-written render functions.
  6503. vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };
  6504. // $attrs & $listeners are exposed for easier HOC creation.
  6505. // they need to be reactive so that HOCs using them are always updated
  6506. var parentData = parentVnode && parentVnode.data;
  6507. /* istanbul ignore else */
  6508. if (true) {
  6509. defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {
  6510. !isUpdatingChildComponent && warn("$attrs is readonly.", vm);
  6511. }, true);
  6512. defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {
  6513. !isUpdatingChildComponent && warn("$listeners is readonly.", vm);
  6514. }, true);
  6515. } else {}
  6516. }
  6517. var currentRenderingInstance = null;
  6518. function renderMixin (Vue) {
  6519. // install runtime convenience helpers
  6520. installRenderHelpers(Vue.prototype);
  6521. Vue.prototype.$nextTick = function (fn) {
  6522. return nextTick(fn, this)
  6523. };
  6524. Vue.prototype._render = function () {
  6525. var vm = this;
  6526. var ref = vm.$options;
  6527. var render = ref.render;
  6528. var _parentVnode = ref._parentVnode;
  6529. if (_parentVnode) {
  6530. vm.$scopedSlots = normalizeScopedSlots(
  6531. _parentVnode.data.scopedSlots,
  6532. vm.$slots,
  6533. vm.$scopedSlots
  6534. );
  6535. }
  6536. // set parent vnode. this allows render functions to have access
  6537. // to the data on the placeholder node.
  6538. vm.$vnode = _parentVnode;
  6539. // render self
  6540. var vnode;
  6541. try {
  6542. // There's no need to maintain a stack because all render fns are called
  6543. // separately from one another. Nested component's render fns are called
  6544. // when parent component is patched.
  6545. currentRenderingInstance = vm;
  6546. vnode = render.call(vm._renderProxy, vm.$createElement);
  6547. } catch (e) {
  6548. handleError(e, vm, "render");
  6549. // return error render result,
  6550. // or previous vnode to prevent render error causing blank component
  6551. /* istanbul ignore else */
  6552. if ( true && vm.$options.renderError) {
  6553. try {
  6554. vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);
  6555. } catch (e) {
  6556. handleError(e, vm, "renderError");
  6557. vnode = vm._vnode;
  6558. }
  6559. } else {
  6560. vnode = vm._vnode;
  6561. }
  6562. } finally {
  6563. currentRenderingInstance = null;
  6564. }
  6565. // if the returned array contains only a single node, allow it
  6566. if (Array.isArray(vnode) && vnode.length === 1) {
  6567. vnode = vnode[0];
  6568. }
  6569. // return empty vnode in case the render function errored out
  6570. if (!(vnode instanceof VNode)) {
  6571. if ( true && Array.isArray(vnode)) {
  6572. warn(
  6573. 'Multiple root nodes returned from render function. Render function ' +
  6574. 'should return a single root node.',
  6575. vm
  6576. );
  6577. }
  6578. vnode = createEmptyVNode();
  6579. }
  6580. // set parent
  6581. vnode.parent = _parentVnode;
  6582. return vnode
  6583. };
  6584. }
  6585. /* */
  6586. function ensureCtor (comp, base) {
  6587. if (
  6588. comp.__esModule ||
  6589. (hasSymbol && comp[Symbol.toStringTag] === 'Module')
  6590. ) {
  6591. comp = comp.default;
  6592. }
  6593. return isObject(comp)
  6594. ? base.extend(comp)
  6595. : comp
  6596. }
  6597. function createAsyncPlaceholder (
  6598. factory,
  6599. data,
  6600. context,
  6601. children,
  6602. tag
  6603. ) {
  6604. var node = createEmptyVNode();
  6605. node.asyncFactory = factory;
  6606. node.asyncMeta = { data: data, context: context, children: children, tag: tag };
  6607. return node
  6608. }
  6609. function resolveAsyncComponent (
  6610. factory,
  6611. baseCtor
  6612. ) {
  6613. if (isTrue(factory.error) && isDef(factory.errorComp)) {
  6614. return factory.errorComp
  6615. }
  6616. if (isDef(factory.resolved)) {
  6617. return factory.resolved
  6618. }
  6619. var owner = currentRenderingInstance;
  6620. if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
  6621. // already pending
  6622. factory.owners.push(owner);
  6623. }
  6624. if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
  6625. return factory.loadingComp
  6626. }
  6627. if (owner && !isDef(factory.owners)) {
  6628. var owners = factory.owners = [owner];
  6629. var sync = true;
  6630. var timerLoading = null;
  6631. var timerTimeout = null
  6632. ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });
  6633. var forceRender = function (renderCompleted) {
  6634. for (var i = 0, l = owners.length; i < l; i++) {
  6635. (owners[i]).$forceUpdate();
  6636. }
  6637. if (renderCompleted) {
  6638. owners.length = 0;
  6639. if (timerLoading !== null) {
  6640. clearTimeout(timerLoading);
  6641. timerLoading = null;
  6642. }
  6643. if (timerTimeout !== null) {
  6644. clearTimeout(timerTimeout);
  6645. timerTimeout = null;
  6646. }
  6647. }
  6648. };
  6649. var resolve = once(function (res) {
  6650. // cache resolved
  6651. factory.resolved = ensureCtor(res, baseCtor);
  6652. // invoke callbacks only if this is not a synchronous resolve
  6653. // (async resolves are shimmed as synchronous during SSR)
  6654. if (!sync) {
  6655. forceRender(true);
  6656. } else {
  6657. owners.length = 0;
  6658. }
  6659. });
  6660. var reject = once(function (reason) {
  6661. true && warn(
  6662. "Failed to resolve async component: " + (String(factory)) +
  6663. (reason ? ("\nReason: " + reason) : '')
  6664. );
  6665. if (isDef(factory.errorComp)) {
  6666. factory.error = true;
  6667. forceRender(true);
  6668. }
  6669. });
  6670. var res = factory(resolve, reject);
  6671. if (isObject(res)) {
  6672. if (isPromise(res)) {
  6673. // () => Promise
  6674. if (isUndef(factory.resolved)) {
  6675. res.then(resolve, reject);
  6676. }
  6677. } else if (isPromise(res.component)) {
  6678. res.component.then(resolve, reject);
  6679. if (isDef(res.error)) {
  6680. factory.errorComp = ensureCtor(res.error, baseCtor);
  6681. }
  6682. if (isDef(res.loading)) {
  6683. factory.loadingComp = ensureCtor(res.loading, baseCtor);
  6684. if (res.delay === 0) {
  6685. factory.loading = true;
  6686. } else {
  6687. timerLoading = setTimeout(function () {
  6688. timerLoading = null;
  6689. if (isUndef(factory.resolved) && isUndef(factory.error)) {
  6690. factory.loading = true;
  6691. forceRender(false);
  6692. }
  6693. }, res.delay || 200);
  6694. }
  6695. }
  6696. if (isDef(res.timeout)) {
  6697. timerTimeout = setTimeout(function () {
  6698. timerTimeout = null;
  6699. if (isUndef(factory.resolved)) {
  6700. reject(
  6701. true
  6702. ? ("timeout (" + (res.timeout) + "ms)")
  6703. : undefined
  6704. );
  6705. }
  6706. }, res.timeout);
  6707. }
  6708. }
  6709. }
  6710. sync = false;
  6711. // return in case resolved synchronously
  6712. return factory.loading
  6713. ? factory.loadingComp
  6714. : factory.resolved
  6715. }
  6716. }
  6717. /* */
  6718. function isAsyncPlaceholder (node) {
  6719. return node.isComment && node.asyncFactory
  6720. }
  6721. /* */
  6722. function getFirstComponentChild (children) {
  6723. if (Array.isArray(children)) {
  6724. for (var i = 0; i < children.length; i++) {
  6725. var c = children[i];
  6726. if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {
  6727. return c
  6728. }
  6729. }
  6730. }
  6731. }
  6732. /* */
  6733. /* */
  6734. function initEvents (vm) {
  6735. vm._events = Object.create(null);
  6736. vm._hasHookEvent = false;
  6737. // init parent attached events
  6738. var listeners = vm.$options._parentListeners;
  6739. if (listeners) {
  6740. updateComponentListeners(vm, listeners);
  6741. }
  6742. }
  6743. var target;
  6744. function add (event, fn) {
  6745. target.$on(event, fn);
  6746. }
  6747. function remove$1 (event, fn) {
  6748. target.$off(event, fn);
  6749. }
  6750. function createOnceHandler (event, fn) {
  6751. var _target = target;
  6752. return function onceHandler () {
  6753. var res = fn.apply(null, arguments);
  6754. if (res !== null) {
  6755. _target.$off(event, onceHandler);
  6756. }
  6757. }
  6758. }
  6759. function updateComponentListeners (
  6760. vm,
  6761. listeners,
  6762. oldListeners
  6763. ) {
  6764. target = vm;
  6765. updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);
  6766. target = undefined;
  6767. }
  6768. function eventsMixin (Vue) {
  6769. var hookRE = /^hook:/;
  6770. Vue.prototype.$on = function (event, fn) {
  6771. var vm = this;
  6772. if (Array.isArray(event)) {
  6773. for (var i = 0, l = event.length; i < l; i++) {
  6774. vm.$on(event[i], fn);
  6775. }
  6776. } else {
  6777. (vm._events[event] || (vm._events[event] = [])).push(fn);
  6778. // optimize hook:event cost by using a boolean flag marked at registration
  6779. // instead of a hash lookup
  6780. if (hookRE.test(event)) {
  6781. vm._hasHookEvent = true;
  6782. }
  6783. }
  6784. return vm
  6785. };
  6786. Vue.prototype.$once = function (event, fn) {
  6787. var vm = this;
  6788. function on () {
  6789. vm.$off(event, on);
  6790. fn.apply(vm, arguments);
  6791. }
  6792. on.fn = fn;
  6793. vm.$on(event, on);
  6794. return vm
  6795. };
  6796. Vue.prototype.$off = function (event, fn) {
  6797. var vm = this;
  6798. // all
  6799. if (!arguments.length) {
  6800. vm._events = Object.create(null);
  6801. return vm
  6802. }
  6803. // array of events
  6804. if (Array.isArray(event)) {
  6805. for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {
  6806. vm.$off(event[i$1], fn);
  6807. }
  6808. return vm
  6809. }
  6810. // specific event
  6811. var cbs = vm._events[event];
  6812. if (!cbs) {
  6813. return vm
  6814. }
  6815. if (!fn) {
  6816. vm._events[event] = null;
  6817. return vm
  6818. }
  6819. // specific handler
  6820. var cb;
  6821. var i = cbs.length;
  6822. while (i--) {
  6823. cb = cbs[i];
  6824. if (cb === fn || cb.fn === fn) {
  6825. cbs.splice(i, 1);
  6826. break
  6827. }
  6828. }
  6829. return vm
  6830. };
  6831. Vue.prototype.$emit = function (event) {
  6832. var vm = this;
  6833. if (true) {
  6834. var lowerCaseEvent = event.toLowerCase();
  6835. if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {
  6836. tip(
  6837. "Event \"" + lowerCaseEvent + "\" is emitted in component " +
  6838. (formatComponentName(vm)) + " but the handler is registered for \"" + event + "\". " +
  6839. "Note that HTML attributes are case-insensitive and you cannot use " +
  6840. "v-on to listen to camelCase events when using in-DOM templates. " +
  6841. "You should probably use \"" + (hyphenate(event)) + "\" instead of \"" + event + "\"."
  6842. );
  6843. }
  6844. }
  6845. var cbs = vm._events[event];
  6846. if (cbs) {
  6847. cbs = cbs.length > 1 ? toArray(cbs) : cbs;
  6848. var args = toArray(arguments, 1);
  6849. var info = "event handler for \"" + event + "\"";
  6850. for (var i = 0, l = cbs.length; i < l; i++) {
  6851. invokeWithErrorHandling(cbs[i], vm, args, vm, info);
  6852. }
  6853. }
  6854. return vm
  6855. };
  6856. }
  6857. /* */
  6858. var activeInstance = null;
  6859. var isUpdatingChildComponent = false;
  6860. function setActiveInstance(vm) {
  6861. var prevActiveInstance = activeInstance;
  6862. activeInstance = vm;
  6863. return function () {
  6864. activeInstance = prevActiveInstance;
  6865. }
  6866. }
  6867. function initLifecycle (vm) {
  6868. var options = vm.$options;
  6869. // locate first non-abstract parent
  6870. var parent = options.parent;
  6871. if (parent && !options.abstract) {
  6872. while (parent.$options.abstract && parent.$parent) {
  6873. parent = parent.$parent;
  6874. }
  6875. parent.$children.push(vm);
  6876. }
  6877. vm.$parent = parent;
  6878. vm.$root = parent ? parent.$root : vm;
  6879. vm.$children = [];
  6880. vm.$refs = {};
  6881. vm._watcher = null;
  6882. vm._inactive = null;
  6883. vm._directInactive = false;
  6884. vm._isMounted = false;
  6885. vm._isDestroyed = false;
  6886. vm._isBeingDestroyed = false;
  6887. }
  6888. function lifecycleMixin (Vue) {
  6889. Vue.prototype._update = function (vnode, hydrating) {
  6890. var vm = this;
  6891. var prevEl = vm.$el;
  6892. var prevVnode = vm._vnode;
  6893. var restoreActiveInstance = setActiveInstance(vm);
  6894. vm._vnode = vnode;
  6895. // Vue.prototype.__patch__ is injected in entry points
  6896. // based on the rendering backend used.
  6897. if (!prevVnode) {
  6898. // initial render
  6899. vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);
  6900. } else {
  6901. // updates
  6902. vm.$el = vm.__patch__(prevVnode, vnode);
  6903. }
  6904. restoreActiveInstance();
  6905. // update __vue__ reference
  6906. if (prevEl) {
  6907. prevEl.__vue__ = null;
  6908. }
  6909. if (vm.$el) {
  6910. vm.$el.__vue__ = vm;
  6911. }
  6912. // if parent is an HOC, update its $el as well
  6913. if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {
  6914. vm.$parent.$el = vm.$el;
  6915. }
  6916. // updated hook is called by the scheduler to ensure that children are
  6917. // updated in a parent's updated hook.
  6918. };
  6919. Vue.prototype.$forceUpdate = function () {
  6920. var vm = this;
  6921. if (vm._watcher) {
  6922. vm._watcher.update();
  6923. }
  6924. };
  6925. Vue.prototype.$destroy = function () {
  6926. var vm = this;
  6927. if (vm._isBeingDestroyed) {
  6928. return
  6929. }
  6930. callHook(vm, 'beforeDestroy');
  6931. vm._isBeingDestroyed = true;
  6932. // remove self from parent
  6933. var parent = vm.$parent;
  6934. if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {
  6935. remove(parent.$children, vm);
  6936. }
  6937. // teardown watchers
  6938. if (vm._watcher) {
  6939. vm._watcher.teardown();
  6940. }
  6941. var i = vm._watchers.length;
  6942. while (i--) {
  6943. vm._watchers[i].teardown();
  6944. }
  6945. // remove reference from data ob
  6946. // frozen object may not have observer.
  6947. if (vm._data.__ob__) {
  6948. vm._data.__ob__.vmCount--;
  6949. }
  6950. // call the last hook...
  6951. vm._isDestroyed = true;
  6952. // invoke destroy hooks on current rendered tree
  6953. vm.__patch__(vm._vnode, null);
  6954. // fire destroyed hook
  6955. callHook(vm, 'destroyed');
  6956. // turn off all instance listeners.
  6957. vm.$off();
  6958. // remove __vue__ reference
  6959. if (vm.$el) {
  6960. vm.$el.__vue__ = null;
  6961. }
  6962. // release circular reference (#6759)
  6963. if (vm.$vnode) {
  6964. vm.$vnode.parent = null;
  6965. }
  6966. };
  6967. }
  6968. function updateChildComponent (
  6969. vm,
  6970. propsData,
  6971. listeners,
  6972. parentVnode,
  6973. renderChildren
  6974. ) {
  6975. if (true) {
  6976. isUpdatingChildComponent = true;
  6977. }
  6978. // determine whether component has slot children
  6979. // we need to do this before overwriting $options._renderChildren.
  6980. // check if there are dynamic scopedSlots (hand-written or compiled but with
  6981. // dynamic slot names). Static scoped slots compiled from template has the
  6982. // "$stable" marker.
  6983. var newScopedSlots = parentVnode.data.scopedSlots;
  6984. var oldScopedSlots = vm.$scopedSlots;
  6985. var hasDynamicScopedSlot = !!(
  6986. (newScopedSlots && !newScopedSlots.$stable) ||
  6987. (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
  6988. (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)
  6989. );
  6990. // Any static slot children from the parent may have changed during parent's
  6991. // update. Dynamic scoped slots may also have changed. In such cases, a forced
  6992. // update is necessary to ensure correctness.
  6993. var needsForceUpdate = !!(
  6994. renderChildren || // has new static slots
  6995. vm.$options._renderChildren || // has old static slots
  6996. hasDynamicScopedSlot
  6997. );
  6998. vm.$options._parentVnode = parentVnode;
  6999. vm.$vnode = parentVnode; // update vm's placeholder node without re-render
  7000. if (vm._vnode) { // update child tree's parent
  7001. vm._vnode.parent = parentVnode;
  7002. }
  7003. vm.$options._renderChildren = renderChildren;
  7004. // update $attrs and $listeners hash
  7005. // these are also reactive so they may trigger child update if the child
  7006. // used them during render
  7007. vm.$attrs = parentVnode.data.attrs || emptyObject;
  7008. vm.$listeners = listeners || emptyObject;
  7009. // update props
  7010. if (propsData && vm.$options.props) {
  7011. toggleObserving(false);
  7012. var props = vm._props;
  7013. var propKeys = vm.$options._propKeys || [];
  7014. for (var i = 0; i < propKeys.length; i++) {
  7015. var key = propKeys[i];
  7016. var propOptions = vm.$options.props; // wtf flow?
  7017. props[key] = validateProp(key, propOptions, propsData, vm);
  7018. }
  7019. toggleObserving(true);
  7020. // keep a copy of raw propsData
  7021. vm.$options.propsData = propsData;
  7022. }
  7023. // fixed by xxxxxx update properties(mp runtime)
  7024. vm._$updateProperties && vm._$updateProperties(vm);
  7025. // update listeners
  7026. listeners = listeners || emptyObject;
  7027. var oldListeners = vm.$options._parentListeners;
  7028. vm.$options._parentListeners = listeners;
  7029. updateComponentListeners(vm, listeners, oldListeners);
  7030. // resolve slots + force update if has children
  7031. if (needsForceUpdate) {
  7032. vm.$slots = resolveSlots(renderChildren, parentVnode.context);
  7033. vm.$forceUpdate();
  7034. }
  7035. if (true) {
  7036. isUpdatingChildComponent = false;
  7037. }
  7038. }
  7039. function isInInactiveTree (vm) {
  7040. while (vm && (vm = vm.$parent)) {
  7041. if (vm._inactive) { return true }
  7042. }
  7043. return false
  7044. }
  7045. function activateChildComponent (vm, direct) {
  7046. if (direct) {
  7047. vm._directInactive = false;
  7048. if (isInInactiveTree(vm)) {
  7049. return
  7050. }
  7051. } else if (vm._directInactive) {
  7052. return
  7053. }
  7054. if (vm._inactive || vm._inactive === null) {
  7055. vm._inactive = false;
  7056. for (var i = 0; i < vm.$children.length; i++) {
  7057. activateChildComponent(vm.$children[i]);
  7058. }
  7059. callHook(vm, 'activated');
  7060. }
  7061. }
  7062. function deactivateChildComponent (vm, direct) {
  7063. if (direct) {
  7064. vm._directInactive = true;
  7065. if (isInInactiveTree(vm)) {
  7066. return
  7067. }
  7068. }
  7069. if (!vm._inactive) {
  7070. vm._inactive = true;
  7071. for (var i = 0; i < vm.$children.length; i++) {
  7072. deactivateChildComponent(vm.$children[i]);
  7073. }
  7074. callHook(vm, 'deactivated');
  7075. }
  7076. }
  7077. function callHook (vm, hook) {
  7078. // #7573 disable dep collection when invoking lifecycle hooks
  7079. pushTarget();
  7080. var handlers = vm.$options[hook];
  7081. var info = hook + " hook";
  7082. if (handlers) {
  7083. for (var i = 0, j = handlers.length; i < j; i++) {
  7084. invokeWithErrorHandling(handlers[i], vm, null, vm, info);
  7085. }
  7086. }
  7087. if (vm._hasHookEvent) {
  7088. vm.$emit('hook:' + hook);
  7089. }
  7090. popTarget();
  7091. }
  7092. /* */
  7093. var MAX_UPDATE_COUNT = 100;
  7094. var queue = [];
  7095. var activatedChildren = [];
  7096. var has = {};
  7097. var circular = {};
  7098. var waiting = false;
  7099. var flushing = false;
  7100. var index = 0;
  7101. /**
  7102. * Reset the scheduler's state.
  7103. */
  7104. function resetSchedulerState () {
  7105. index = queue.length = activatedChildren.length = 0;
  7106. has = {};
  7107. if (true) {
  7108. circular = {};
  7109. }
  7110. waiting = flushing = false;
  7111. }
  7112. // Async edge case #6566 requires saving the timestamp when event listeners are
  7113. // attached. However, calling performance.now() has a perf overhead especially
  7114. // if the page has thousands of event listeners. Instead, we take a timestamp
  7115. // every time the scheduler flushes and use that for all event listeners
  7116. // attached during that flush.
  7117. var currentFlushTimestamp = 0;
  7118. // Async edge case fix requires storing an event listener's attach timestamp.
  7119. var getNow = Date.now;
  7120. // Determine what event timestamp the browser is using. Annoyingly, the
  7121. // timestamp can either be hi-res (relative to page load) or low-res
  7122. // (relative to UNIX epoch), so in order to compare time we have to use the
  7123. // same timestamp type when saving the flush timestamp.
  7124. // All IE versions use low-res event timestamps, and have problematic clock
  7125. // implementations (#9632)
  7126. if (inBrowser && !isIE) {
  7127. var performance = window.performance;
  7128. if (
  7129. performance &&
  7130. typeof performance.now === 'function' &&
  7131. getNow() > document.createEvent('Event').timeStamp
  7132. ) {
  7133. // if the event timestamp, although evaluated AFTER the Date.now(), is
  7134. // smaller than it, it means the event is using a hi-res timestamp,
  7135. // and we need to use the hi-res version for event listener timestamps as
  7136. // well.
  7137. getNow = function () { return performance.now(); };
  7138. }
  7139. }
  7140. /**
  7141. * Flush both queues and run the watchers.
  7142. */
  7143. function flushSchedulerQueue () {
  7144. currentFlushTimestamp = getNow();
  7145. flushing = true;
  7146. var watcher, id;
  7147. // Sort queue before flush.
  7148. // This ensures that:
  7149. // 1. Components are updated from parent to child. (because parent is always
  7150. // created before the child)
  7151. // 2. A component's user watchers are run before its render watcher (because
  7152. // user watchers are created before the render watcher)
  7153. // 3. If a component is destroyed during a parent component's watcher run,
  7154. // its watchers can be skipped.
  7155. queue.sort(function (a, b) { return a.id - b.id; });
  7156. // do not cache length because more watchers might be pushed
  7157. // as we run existing watchers
  7158. for (index = 0; index < queue.length; index++) {
  7159. watcher = queue[index];
  7160. if (watcher.before) {
  7161. watcher.before();
  7162. }
  7163. id = watcher.id;
  7164. has[id] = null;
  7165. watcher.run();
  7166. // in dev build, check and stop circular updates.
  7167. if ( true && has[id] != null) {
  7168. circular[id] = (circular[id] || 0) + 1;
  7169. if (circular[id] > MAX_UPDATE_COUNT) {
  7170. warn(
  7171. 'You may have an infinite update loop ' + (
  7172. watcher.user
  7173. ? ("in watcher with expression \"" + (watcher.expression) + "\"")
  7174. : "in a component render function."
  7175. ),
  7176. watcher.vm
  7177. );
  7178. break
  7179. }
  7180. }
  7181. }
  7182. // keep copies of post queues before resetting state
  7183. var activatedQueue = activatedChildren.slice();
  7184. var updatedQueue = queue.slice();
  7185. resetSchedulerState();
  7186. // call component updated and activated hooks
  7187. callActivatedHooks(activatedQueue);
  7188. callUpdatedHooks(updatedQueue);
  7189. // devtool hook
  7190. /* istanbul ignore if */
  7191. if (devtools && config.devtools) {
  7192. devtools.emit('flush');
  7193. }
  7194. }
  7195. function callUpdatedHooks (queue) {
  7196. var i = queue.length;
  7197. while (i--) {
  7198. var watcher = queue[i];
  7199. var vm = watcher.vm;
  7200. if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {
  7201. callHook(vm, 'updated');
  7202. }
  7203. }
  7204. }
  7205. /**
  7206. * Queue a kept-alive component that was activated during patch.
  7207. * The queue will be processed after the entire tree has been patched.
  7208. */
  7209. function queueActivatedComponent (vm) {
  7210. // setting _inactive to false here so that a render function can
  7211. // rely on checking whether it's in an inactive tree (e.g. router-view)
  7212. vm._inactive = false;
  7213. activatedChildren.push(vm);
  7214. }
  7215. function callActivatedHooks (queue) {
  7216. for (var i = 0; i < queue.length; i++) {
  7217. queue[i]._inactive = true;
  7218. activateChildComponent(queue[i], true /* true */);
  7219. }
  7220. }
  7221. /**
  7222. * Push a watcher into the watcher queue.
  7223. * Jobs with duplicate IDs will be skipped unless it's
  7224. * pushed when the queue is being flushed.
  7225. */
  7226. function queueWatcher (watcher) {
  7227. var id = watcher.id;
  7228. if (has[id] == null) {
  7229. has[id] = true;
  7230. if (!flushing) {
  7231. queue.push(watcher);
  7232. } else {
  7233. // if already flushing, splice the watcher based on its id
  7234. // if already past its id, it will be run next immediately.
  7235. var i = queue.length - 1;
  7236. while (i > index && queue[i].id > watcher.id) {
  7237. i--;
  7238. }
  7239. queue.splice(i + 1, 0, watcher);
  7240. }
  7241. // queue the flush
  7242. if (!waiting) {
  7243. waiting = true;
  7244. if ( true && !config.async) {
  7245. flushSchedulerQueue();
  7246. return
  7247. }
  7248. nextTick(flushSchedulerQueue);
  7249. }
  7250. }
  7251. }
  7252. /* */
  7253. var uid$2 = 0;
  7254. /**
  7255. * A watcher parses an expression, collects dependencies,
  7256. * and fires callback when the expression value changes.
  7257. * This is used for both the $watch() api and directives.
  7258. */
  7259. var Watcher = function Watcher (
  7260. vm,
  7261. expOrFn,
  7262. cb,
  7263. options,
  7264. isRenderWatcher
  7265. ) {
  7266. this.vm = vm;
  7267. if (isRenderWatcher) {
  7268. vm._watcher = this;
  7269. }
  7270. vm._watchers.push(this);
  7271. // options
  7272. if (options) {
  7273. this.deep = !!options.deep;
  7274. this.user = !!options.user;
  7275. this.lazy = !!options.lazy;
  7276. this.sync = !!options.sync;
  7277. this.before = options.before;
  7278. } else {
  7279. this.deep = this.user = this.lazy = this.sync = false;
  7280. }
  7281. this.cb = cb;
  7282. this.id = ++uid$2; // uid for batching
  7283. this.active = true;
  7284. this.dirty = this.lazy; // for lazy watchers
  7285. this.deps = [];
  7286. this.newDeps = [];
  7287. this.depIds = new _Set();
  7288. this.newDepIds = new _Set();
  7289. this.expression = true
  7290. ? expOrFn.toString()
  7291. : undefined;
  7292. // parse expression for getter
  7293. if (typeof expOrFn === 'function') {
  7294. this.getter = expOrFn;
  7295. } else {
  7296. this.getter = parsePath(expOrFn);
  7297. if (!this.getter) {
  7298. this.getter = noop;
  7299. true && warn(
  7300. "Failed watching path: \"" + expOrFn + "\" " +
  7301. 'Watcher only accepts simple dot-delimited paths. ' +
  7302. 'For full control, use a function instead.',
  7303. vm
  7304. );
  7305. }
  7306. }
  7307. this.value = this.lazy
  7308. ? undefined
  7309. : this.get();
  7310. };
  7311. /**
  7312. * Evaluate the getter, and re-collect dependencies.
  7313. */
  7314. Watcher.prototype.get = function get () {
  7315. pushTarget(this);
  7316. var value;
  7317. var vm = this.vm;
  7318. try {
  7319. value = this.getter.call(vm, vm);
  7320. } catch (e) {
  7321. if (this.user) {
  7322. handleError(e, vm, ("getter for watcher \"" + (this.expression) + "\""));
  7323. } else {
  7324. throw e
  7325. }
  7326. } finally {
  7327. // "touch" every property so they are all tracked as
  7328. // dependencies for deep watching
  7329. if (this.deep) {
  7330. traverse(value);
  7331. }
  7332. popTarget();
  7333. this.cleanupDeps();
  7334. }
  7335. return value
  7336. };
  7337. /**
  7338. * Add a dependency to this directive.
  7339. */
  7340. Watcher.prototype.addDep = function addDep (dep) {
  7341. var id = dep.id;
  7342. if (!this.newDepIds.has(id)) {
  7343. this.newDepIds.add(id);
  7344. this.newDeps.push(dep);
  7345. if (!this.depIds.has(id)) {
  7346. dep.addSub(this);
  7347. }
  7348. }
  7349. };
  7350. /**
  7351. * Clean up for dependency collection.
  7352. */
  7353. Watcher.prototype.cleanupDeps = function cleanupDeps () {
  7354. var i = this.deps.length;
  7355. while (i--) {
  7356. var dep = this.deps[i];
  7357. if (!this.newDepIds.has(dep.id)) {
  7358. dep.removeSub(this);
  7359. }
  7360. }
  7361. var tmp = this.depIds;
  7362. this.depIds = this.newDepIds;
  7363. this.newDepIds = tmp;
  7364. this.newDepIds.clear();
  7365. tmp = this.deps;
  7366. this.deps = this.newDeps;
  7367. this.newDeps = tmp;
  7368. this.newDeps.length = 0;
  7369. };
  7370. /**
  7371. * Subscriber interface.
  7372. * Will be called when a dependency changes.
  7373. */
  7374. Watcher.prototype.update = function update () {
  7375. /* istanbul ignore else */
  7376. if (this.lazy) {
  7377. this.dirty = true;
  7378. } else if (this.sync) {
  7379. this.run();
  7380. } else {
  7381. queueWatcher(this);
  7382. }
  7383. };
  7384. /**
  7385. * Scheduler job interface.
  7386. * Will be called by the scheduler.
  7387. */
  7388. Watcher.prototype.run = function run () {
  7389. if (this.active) {
  7390. var value = this.get();
  7391. if (
  7392. value !== this.value ||
  7393. // Deep watchers and watchers on Object/Arrays should fire even
  7394. // when the value is the same, because the value may
  7395. // have mutated.
  7396. isObject(value) ||
  7397. this.deep
  7398. ) {
  7399. // set new value
  7400. var oldValue = this.value;
  7401. this.value = value;
  7402. if (this.user) {
  7403. try {
  7404. this.cb.call(this.vm, value, oldValue);
  7405. } catch (e) {
  7406. handleError(e, this.vm, ("callback for watcher \"" + (this.expression) + "\""));
  7407. }
  7408. } else {
  7409. this.cb.call(this.vm, value, oldValue);
  7410. }
  7411. }
  7412. }
  7413. };
  7414. /**
  7415. * Evaluate the value of the watcher.
  7416. * This only gets called for lazy watchers.
  7417. */
  7418. Watcher.prototype.evaluate = function evaluate () {
  7419. this.value = this.get();
  7420. this.dirty = false;
  7421. };
  7422. /**
  7423. * Depend on all deps collected by this watcher.
  7424. */
  7425. Watcher.prototype.depend = function depend () {
  7426. var i = this.deps.length;
  7427. while (i--) {
  7428. this.deps[i].depend();
  7429. }
  7430. };
  7431. /**
  7432. * Remove self from all dependencies' subscriber list.
  7433. */
  7434. Watcher.prototype.teardown = function teardown () {
  7435. if (this.active) {
  7436. // remove self from vm's watcher list
  7437. // this is a somewhat expensive operation so we skip it
  7438. // if the vm is being destroyed.
  7439. if (!this.vm._isBeingDestroyed) {
  7440. remove(this.vm._watchers, this);
  7441. }
  7442. var i = this.deps.length;
  7443. while (i--) {
  7444. this.deps[i].removeSub(this);
  7445. }
  7446. this.active = false;
  7447. }
  7448. };
  7449. /* */
  7450. var sharedPropertyDefinition = {
  7451. enumerable: true,
  7452. configurable: true,
  7453. get: noop,
  7454. set: noop
  7455. };
  7456. function proxy (target, sourceKey, key) {
  7457. sharedPropertyDefinition.get = function proxyGetter () {
  7458. return this[sourceKey][key]
  7459. };
  7460. sharedPropertyDefinition.set = function proxySetter (val) {
  7461. this[sourceKey][key] = val;
  7462. };
  7463. Object.defineProperty(target, key, sharedPropertyDefinition);
  7464. }
  7465. function initState (vm) {
  7466. vm._watchers = [];
  7467. var opts = vm.$options;
  7468. if (opts.props) { initProps(vm, opts.props); }
  7469. if (opts.methods) { initMethods(vm, opts.methods); }
  7470. if (opts.data) {
  7471. initData(vm);
  7472. } else {
  7473. observe(vm._data = {}, true /* asRootData */);
  7474. }
  7475. if (opts.computed) { initComputed(vm, opts.computed); }
  7476. if (opts.watch && opts.watch !== nativeWatch) {
  7477. initWatch(vm, opts.watch);
  7478. }
  7479. }
  7480. function initProps (vm, propsOptions) {
  7481. var propsData = vm.$options.propsData || {};
  7482. var props = vm._props = {};
  7483. // cache prop keys so that future props updates can iterate using Array
  7484. // instead of dynamic object key enumeration.
  7485. var keys = vm.$options._propKeys = [];
  7486. var isRoot = !vm.$parent;
  7487. // root instance props should be converted
  7488. if (!isRoot) {
  7489. toggleObserving(false);
  7490. }
  7491. var loop = function ( key ) {
  7492. keys.push(key);
  7493. var value = validateProp(key, propsOptions, propsData, vm);
  7494. /* istanbul ignore else */
  7495. if (true) {
  7496. var hyphenatedKey = hyphenate(key);
  7497. if (isReservedAttribute(hyphenatedKey) ||
  7498. config.isReservedAttr(hyphenatedKey)) {
  7499. warn(
  7500. ("\"" + hyphenatedKey + "\" is a reserved attribute and cannot be used as component prop."),
  7501. vm
  7502. );
  7503. }
  7504. defineReactive$$1(props, key, value, function () {
  7505. if (!isRoot && !isUpdatingChildComponent) {
  7506. {
  7507. if(vm.mpHost === 'mp-baidu' || vm.mpHost === 'mp-kuaishou' || vm.mpHost === 'mp-xhs'){//百度、快手、小红书 observer 在 setData callback 之后触发,直接忽略该 warn
  7508. return
  7509. }
  7510. //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警
  7511. if(
  7512. key === 'value' &&
  7513. Array.isArray(vm.$options.behaviors) &&
  7514. vm.$options.behaviors.indexOf('uni://form-field') !== -1
  7515. ){
  7516. return
  7517. }
  7518. if(vm._getFormData){
  7519. return
  7520. }
  7521. var $parent = vm.$parent;
  7522. while($parent){
  7523. if($parent.__next_tick_pending){
  7524. return
  7525. }
  7526. $parent = $parent.$parent;
  7527. }
  7528. }
  7529. warn(
  7530. "Avoid mutating a prop directly since the value will be " +
  7531. "overwritten whenever the parent component re-renders. " +
  7532. "Instead, use a data or computed property based on the prop's " +
  7533. "value. Prop being mutated: \"" + key + "\"",
  7534. vm
  7535. );
  7536. }
  7537. });
  7538. } else {}
  7539. // static props are already proxied on the component's prototype
  7540. // during Vue.extend(). We only need to proxy props defined at
  7541. // instantiation here.
  7542. if (!(key in vm)) {
  7543. proxy(vm, "_props", key);
  7544. }
  7545. };
  7546. for (var key in propsOptions) loop( key );
  7547. toggleObserving(true);
  7548. }
  7549. function initData (vm) {
  7550. var data = vm.$options.data;
  7551. data = vm._data = typeof data === 'function'
  7552. ? getData(data, vm)
  7553. : data || {};
  7554. if (!isPlainObject(data)) {
  7555. data = {};
  7556. true && warn(
  7557. 'data functions should return an object:\n' +
  7558. 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
  7559. vm
  7560. );
  7561. }
  7562. // proxy data on instance
  7563. var keys = Object.keys(data);
  7564. var props = vm.$options.props;
  7565. var methods = vm.$options.methods;
  7566. var i = keys.length;
  7567. while (i--) {
  7568. var key = keys[i];
  7569. if (true) {
  7570. if (methods && hasOwn(methods, key)) {
  7571. warn(
  7572. ("Method \"" + key + "\" has already been defined as a data property."),
  7573. vm
  7574. );
  7575. }
  7576. }
  7577. if (props && hasOwn(props, key)) {
  7578. true && warn(
  7579. "The data property \"" + key + "\" is already declared as a prop. " +
  7580. "Use prop default value instead.",
  7581. vm
  7582. );
  7583. } else if (!isReserved(key)) {
  7584. proxy(vm, "_data", key);
  7585. }
  7586. }
  7587. // observe data
  7588. observe(data, true /* asRootData */);
  7589. }
  7590. function getData (data, vm) {
  7591. // #7573 disable dep collection when invoking data getters
  7592. pushTarget();
  7593. try {
  7594. return data.call(vm, vm)
  7595. } catch (e) {
  7596. handleError(e, vm, "data()");
  7597. return {}
  7598. } finally {
  7599. popTarget();
  7600. }
  7601. }
  7602. var computedWatcherOptions = { lazy: true };
  7603. function initComputed (vm, computed) {
  7604. // $flow-disable-line
  7605. var watchers = vm._computedWatchers = Object.create(null);
  7606. // computed properties are just getters during SSR
  7607. var isSSR = isServerRendering();
  7608. for (var key in computed) {
  7609. var userDef = computed[key];
  7610. var getter = typeof userDef === 'function' ? userDef : userDef.get;
  7611. if ( true && getter == null) {
  7612. warn(
  7613. ("Getter is missing for computed property \"" + key + "\"."),
  7614. vm
  7615. );
  7616. }
  7617. if (!isSSR) {
  7618. // create internal watcher for the computed property.
  7619. watchers[key] = new Watcher(
  7620. vm,
  7621. getter || noop,
  7622. noop,
  7623. computedWatcherOptions
  7624. );
  7625. }
  7626. // component-defined computed properties are already defined on the
  7627. // component prototype. We only need to define computed properties defined
  7628. // at instantiation here.
  7629. if (!(key in vm)) {
  7630. defineComputed(vm, key, userDef);
  7631. } else if (true) {
  7632. if (key in vm.$data) {
  7633. warn(("The computed property \"" + key + "\" is already defined in data."), vm);
  7634. } else if (vm.$options.props && key in vm.$options.props) {
  7635. warn(("The computed property \"" + key + "\" is already defined as a prop."), vm);
  7636. }
  7637. }
  7638. }
  7639. }
  7640. function defineComputed (
  7641. target,
  7642. key,
  7643. userDef
  7644. ) {
  7645. var shouldCache = !isServerRendering();
  7646. if (typeof userDef === 'function') {
  7647. sharedPropertyDefinition.get = shouldCache
  7648. ? createComputedGetter(key)
  7649. : createGetterInvoker(userDef);
  7650. sharedPropertyDefinition.set = noop;
  7651. } else {
  7652. sharedPropertyDefinition.get = userDef.get
  7653. ? shouldCache && userDef.cache !== false
  7654. ? createComputedGetter(key)
  7655. : createGetterInvoker(userDef.get)
  7656. : noop;
  7657. sharedPropertyDefinition.set = userDef.set || noop;
  7658. }
  7659. if ( true &&
  7660. sharedPropertyDefinition.set === noop) {
  7661. sharedPropertyDefinition.set = function () {
  7662. warn(
  7663. ("Computed property \"" + key + "\" was assigned to but it has no setter."),
  7664. this
  7665. );
  7666. };
  7667. }
  7668. Object.defineProperty(target, key, sharedPropertyDefinition);
  7669. }
  7670. function createComputedGetter (key) {
  7671. return function computedGetter () {
  7672. var watcher = this._computedWatchers && this._computedWatchers[key];
  7673. if (watcher) {
  7674. if (watcher.dirty) {
  7675. watcher.evaluate();
  7676. }
  7677. if (Dep.SharedObject.target) {// fixed by xxxxxx
  7678. watcher.depend();
  7679. }
  7680. return watcher.value
  7681. }
  7682. }
  7683. }
  7684. function createGetterInvoker(fn) {
  7685. return function computedGetter () {
  7686. return fn.call(this, this)
  7687. }
  7688. }
  7689. function initMethods (vm, methods) {
  7690. var props = vm.$options.props;
  7691. for (var key in methods) {
  7692. if (true) {
  7693. if (typeof methods[key] !== 'function') {
  7694. warn(
  7695. "Method \"" + key + "\" has type \"" + (typeof methods[key]) + "\" in the component definition. " +
  7696. "Did you reference the function correctly?",
  7697. vm
  7698. );
  7699. }
  7700. if (props && hasOwn(props, key)) {
  7701. warn(
  7702. ("Method \"" + key + "\" has already been defined as a prop."),
  7703. vm
  7704. );
  7705. }
  7706. if ((key in vm) && isReserved(key)) {
  7707. warn(
  7708. "Method \"" + key + "\" conflicts with an existing Vue instance method. " +
  7709. "Avoid defining component methods that start with _ or $."
  7710. );
  7711. }
  7712. }
  7713. vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);
  7714. }
  7715. }
  7716. function initWatch (vm, watch) {
  7717. for (var key in watch) {
  7718. var handler = watch[key];
  7719. if (Array.isArray(handler)) {
  7720. for (var i = 0; i < handler.length; i++) {
  7721. createWatcher(vm, key, handler[i]);
  7722. }
  7723. } else {
  7724. createWatcher(vm, key, handler);
  7725. }
  7726. }
  7727. }
  7728. function createWatcher (
  7729. vm,
  7730. expOrFn,
  7731. handler,
  7732. options
  7733. ) {
  7734. if (isPlainObject(handler)) {
  7735. options = handler;
  7736. handler = handler.handler;
  7737. }
  7738. if (typeof handler === 'string') {
  7739. handler = vm[handler];
  7740. }
  7741. return vm.$watch(expOrFn, handler, options)
  7742. }
  7743. function stateMixin (Vue) {
  7744. // flow somehow has problems with directly declared definition object
  7745. // when using Object.defineProperty, so we have to procedurally build up
  7746. // the object here.
  7747. var dataDef = {};
  7748. dataDef.get = function () { return this._data };
  7749. var propsDef = {};
  7750. propsDef.get = function () { return this._props };
  7751. if (true) {
  7752. dataDef.set = function () {
  7753. warn(
  7754. 'Avoid replacing instance root $data. ' +
  7755. 'Use nested data properties instead.',
  7756. this
  7757. );
  7758. };
  7759. propsDef.set = function () {
  7760. warn("$props is readonly.", this);
  7761. };
  7762. }
  7763. Object.defineProperty(Vue.prototype, '$data', dataDef);
  7764. Object.defineProperty(Vue.prototype, '$props', propsDef);
  7765. Vue.prototype.$set = set;
  7766. Vue.prototype.$delete = del;
  7767. Vue.prototype.$watch = function (
  7768. expOrFn,
  7769. cb,
  7770. options
  7771. ) {
  7772. var vm = this;
  7773. if (isPlainObject(cb)) {
  7774. return createWatcher(vm, expOrFn, cb, options)
  7775. }
  7776. options = options || {};
  7777. options.user = true;
  7778. var watcher = new Watcher(vm, expOrFn, cb, options);
  7779. if (options.immediate) {
  7780. try {
  7781. cb.call(vm, watcher.value);
  7782. } catch (error) {
  7783. handleError(error, vm, ("callback for immediate watcher \"" + (watcher.expression) + "\""));
  7784. }
  7785. }
  7786. return function unwatchFn () {
  7787. watcher.teardown();
  7788. }
  7789. };
  7790. }
  7791. /* */
  7792. var uid$3 = 0;
  7793. function initMixin (Vue) {
  7794. Vue.prototype._init = function (options) {
  7795. var vm = this;
  7796. // a uid
  7797. vm._uid = uid$3++;
  7798. var startTag, endTag;
  7799. /* istanbul ignore if */
  7800. if ( true && config.performance && mark) {
  7801. startTag = "vue-perf-start:" + (vm._uid);
  7802. endTag = "vue-perf-end:" + (vm._uid);
  7803. mark(startTag);
  7804. }
  7805. // a flag to avoid this being observed
  7806. vm._isVue = true;
  7807. // merge options
  7808. if (options && options._isComponent) {
  7809. // optimize internal component instantiation
  7810. // since dynamic options merging is pretty slow, and none of the
  7811. // internal component options needs special treatment.
  7812. initInternalComponent(vm, options);
  7813. } else {
  7814. vm.$options = mergeOptions(
  7815. resolveConstructorOptions(vm.constructor),
  7816. options || {},
  7817. vm
  7818. );
  7819. }
  7820. /* istanbul ignore else */
  7821. if (true) {
  7822. initProxy(vm);
  7823. } else {}
  7824. // expose real self
  7825. vm._self = vm;
  7826. initLifecycle(vm);
  7827. initEvents(vm);
  7828. initRender(vm);
  7829. callHook(vm, 'beforeCreate');
  7830. !vm._$fallback && initInjections(vm); // resolve injections before data/props
  7831. initState(vm);
  7832. !vm._$fallback && initProvide(vm); // resolve provide after data/props
  7833. !vm._$fallback && callHook(vm, 'created');
  7834. /* istanbul ignore if */
  7835. if ( true && config.performance && mark) {
  7836. vm._name = formatComponentName(vm, false);
  7837. mark(endTag);
  7838. measure(("vue " + (vm._name) + " init"), startTag, endTag);
  7839. }
  7840. if (vm.$options.el) {
  7841. vm.$mount(vm.$options.el);
  7842. }
  7843. };
  7844. }
  7845. function initInternalComponent (vm, options) {
  7846. var opts = vm.$options = Object.create(vm.constructor.options);
  7847. // doing this because it's faster than dynamic enumeration.
  7848. var parentVnode = options._parentVnode;
  7849. opts.parent = options.parent;
  7850. opts._parentVnode = parentVnode;
  7851. var vnodeComponentOptions = parentVnode.componentOptions;
  7852. opts.propsData = vnodeComponentOptions.propsData;
  7853. opts._parentListeners = vnodeComponentOptions.listeners;
  7854. opts._renderChildren = vnodeComponentOptions.children;
  7855. opts._componentTag = vnodeComponentOptions.tag;
  7856. if (options.render) {
  7857. opts.render = options.render;
  7858. opts.staticRenderFns = options.staticRenderFns;
  7859. }
  7860. }
  7861. function resolveConstructorOptions (Ctor) {
  7862. var options = Ctor.options;
  7863. if (Ctor.super) {
  7864. var superOptions = resolveConstructorOptions(Ctor.super);
  7865. var cachedSuperOptions = Ctor.superOptions;
  7866. if (superOptions !== cachedSuperOptions) {
  7867. // super option changed,
  7868. // need to resolve new options.
  7869. Ctor.superOptions = superOptions;
  7870. // check if there are any late-modified/attached options (#4976)
  7871. var modifiedOptions = resolveModifiedOptions(Ctor);
  7872. // update base extend options
  7873. if (modifiedOptions) {
  7874. extend(Ctor.extendOptions, modifiedOptions);
  7875. }
  7876. options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);
  7877. if (options.name) {
  7878. options.components[options.name] = Ctor;
  7879. }
  7880. }
  7881. }
  7882. return options
  7883. }
  7884. function resolveModifiedOptions (Ctor) {
  7885. var modified;
  7886. var latest = Ctor.options;
  7887. var sealed = Ctor.sealedOptions;
  7888. for (var key in latest) {
  7889. if (latest[key] !== sealed[key]) {
  7890. if (!modified) { modified = {}; }
  7891. modified[key] = latest[key];
  7892. }
  7893. }
  7894. return modified
  7895. }
  7896. function Vue (options) {
  7897. if ( true &&
  7898. !(this instanceof Vue)
  7899. ) {
  7900. warn('Vue is a constructor and should be called with the `new` keyword');
  7901. }
  7902. this._init(options);
  7903. }
  7904. initMixin(Vue);
  7905. stateMixin(Vue);
  7906. eventsMixin(Vue);
  7907. lifecycleMixin(Vue);
  7908. renderMixin(Vue);
  7909. /* */
  7910. function initUse (Vue) {
  7911. Vue.use = function (plugin) {
  7912. var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));
  7913. if (installedPlugins.indexOf(plugin) > -1) {
  7914. return this
  7915. }
  7916. // additional parameters
  7917. var args = toArray(arguments, 1);
  7918. args.unshift(this);
  7919. if (typeof plugin.install === 'function') {
  7920. plugin.install.apply(plugin, args);
  7921. } else if (typeof plugin === 'function') {
  7922. plugin.apply(null, args);
  7923. }
  7924. installedPlugins.push(plugin);
  7925. return this
  7926. };
  7927. }
  7928. /* */
  7929. function initMixin$1 (Vue) {
  7930. Vue.mixin = function (mixin) {
  7931. this.options = mergeOptions(this.options, mixin);
  7932. return this
  7933. };
  7934. }
  7935. /* */
  7936. function initExtend (Vue) {
  7937. /**
  7938. * Each instance constructor, including Vue, has a unique
  7939. * cid. This enables us to create wrapped "child
  7940. * constructors" for prototypal inheritance and cache them.
  7941. */
  7942. Vue.cid = 0;
  7943. var cid = 1;
  7944. /**
  7945. * Class inheritance
  7946. */
  7947. Vue.extend = function (extendOptions) {
  7948. extendOptions = extendOptions || {};
  7949. var Super = this;
  7950. var SuperId = Super.cid;
  7951. var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});
  7952. if (cachedCtors[SuperId]) {
  7953. return cachedCtors[SuperId]
  7954. }
  7955. var name = extendOptions.name || Super.options.name;
  7956. if ( true && name) {
  7957. validateComponentName(name);
  7958. }
  7959. var Sub = function VueComponent (options) {
  7960. this._init(options);
  7961. };
  7962. Sub.prototype = Object.create(Super.prototype);
  7963. Sub.prototype.constructor = Sub;
  7964. Sub.cid = cid++;
  7965. Sub.options = mergeOptions(
  7966. Super.options,
  7967. extendOptions
  7968. );
  7969. Sub['super'] = Super;
  7970. // For props and computed properties, we define the proxy getters on
  7971. // the Vue instances at extension time, on the extended prototype. This
  7972. // avoids Object.defineProperty calls for each instance created.
  7973. if (Sub.options.props) {
  7974. initProps$1(Sub);
  7975. }
  7976. if (Sub.options.computed) {
  7977. initComputed$1(Sub);
  7978. }
  7979. // allow further extension/mixin/plugin usage
  7980. Sub.extend = Super.extend;
  7981. Sub.mixin = Super.mixin;
  7982. Sub.use = Super.use;
  7983. // create asset registers, so extended classes
  7984. // can have their private assets too.
  7985. ASSET_TYPES.forEach(function (type) {
  7986. Sub[type] = Super[type];
  7987. });
  7988. // enable recursive self-lookup
  7989. if (name) {
  7990. Sub.options.components[name] = Sub;
  7991. }
  7992. // keep a reference to the super options at extension time.
  7993. // later at instantiation we can check if Super's options have
  7994. // been updated.
  7995. Sub.superOptions = Super.options;
  7996. Sub.extendOptions = extendOptions;
  7997. Sub.sealedOptions = extend({}, Sub.options);
  7998. // cache constructor
  7999. cachedCtors[SuperId] = Sub;
  8000. return Sub
  8001. };
  8002. }
  8003. function initProps$1 (Comp) {
  8004. var props = Comp.options.props;
  8005. for (var key in props) {
  8006. proxy(Comp.prototype, "_props", key);
  8007. }
  8008. }
  8009. function initComputed$1 (Comp) {
  8010. var computed = Comp.options.computed;
  8011. for (var key in computed) {
  8012. defineComputed(Comp.prototype, key, computed[key]);
  8013. }
  8014. }
  8015. /* */
  8016. function initAssetRegisters (Vue) {
  8017. /**
  8018. * Create asset registration methods.
  8019. */
  8020. ASSET_TYPES.forEach(function (type) {
  8021. Vue[type] = function (
  8022. id,
  8023. definition
  8024. ) {
  8025. if (!definition) {
  8026. return this.options[type + 's'][id]
  8027. } else {
  8028. /* istanbul ignore if */
  8029. if ( true && type === 'component') {
  8030. validateComponentName(id);
  8031. }
  8032. if (type === 'component' && isPlainObject(definition)) {
  8033. definition.name = definition.name || id;
  8034. definition = this.options._base.extend(definition);
  8035. }
  8036. if (type === 'directive' && typeof definition === 'function') {
  8037. definition = { bind: definition, update: definition };
  8038. }
  8039. this.options[type + 's'][id] = definition;
  8040. return definition
  8041. }
  8042. };
  8043. });
  8044. }
  8045. /* */
  8046. function getComponentName (opts) {
  8047. return opts && (opts.Ctor.options.name || opts.tag)
  8048. }
  8049. function matches (pattern, name) {
  8050. if (Array.isArray(pattern)) {
  8051. return pattern.indexOf(name) > -1
  8052. } else if (typeof pattern === 'string') {
  8053. return pattern.split(',').indexOf(name) > -1
  8054. } else if (isRegExp(pattern)) {
  8055. return pattern.test(name)
  8056. }
  8057. /* istanbul ignore next */
  8058. return false
  8059. }
  8060. function pruneCache (keepAliveInstance, filter) {
  8061. var cache = keepAliveInstance.cache;
  8062. var keys = keepAliveInstance.keys;
  8063. var _vnode = keepAliveInstance._vnode;
  8064. for (var key in cache) {
  8065. var cachedNode = cache[key];
  8066. if (cachedNode) {
  8067. var name = getComponentName(cachedNode.componentOptions);
  8068. if (name && !filter(name)) {
  8069. pruneCacheEntry(cache, key, keys, _vnode);
  8070. }
  8071. }
  8072. }
  8073. }
  8074. function pruneCacheEntry (
  8075. cache,
  8076. key,
  8077. keys,
  8078. current
  8079. ) {
  8080. var cached$$1 = cache[key];
  8081. if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {
  8082. cached$$1.componentInstance.$destroy();
  8083. }
  8084. cache[key] = null;
  8085. remove(keys, key);
  8086. }
  8087. var patternTypes = [String, RegExp, Array];
  8088. var KeepAlive = {
  8089. name: 'keep-alive',
  8090. abstract: true,
  8091. props: {
  8092. include: patternTypes,
  8093. exclude: patternTypes,
  8094. max: [String, Number]
  8095. },
  8096. created: function created () {
  8097. this.cache = Object.create(null);
  8098. this.keys = [];
  8099. },
  8100. destroyed: function destroyed () {
  8101. for (var key in this.cache) {
  8102. pruneCacheEntry(this.cache, key, this.keys);
  8103. }
  8104. },
  8105. mounted: function mounted () {
  8106. var this$1 = this;
  8107. this.$watch('include', function (val) {
  8108. pruneCache(this$1, function (name) { return matches(val, name); });
  8109. });
  8110. this.$watch('exclude', function (val) {
  8111. pruneCache(this$1, function (name) { return !matches(val, name); });
  8112. });
  8113. },
  8114. render: function render () {
  8115. var slot = this.$slots.default;
  8116. var vnode = getFirstComponentChild(slot);
  8117. var componentOptions = vnode && vnode.componentOptions;
  8118. if (componentOptions) {
  8119. // check pattern
  8120. var name = getComponentName(componentOptions);
  8121. var ref = this;
  8122. var include = ref.include;
  8123. var exclude = ref.exclude;
  8124. if (
  8125. // not included
  8126. (include && (!name || !matches(include, name))) ||
  8127. // excluded
  8128. (exclude && name && matches(exclude, name))
  8129. ) {
  8130. return vnode
  8131. }
  8132. var ref$1 = this;
  8133. var cache = ref$1.cache;
  8134. var keys = ref$1.keys;
  8135. var key = vnode.key == null
  8136. // same constructor may get registered as different local components
  8137. // so cid alone is not enough (#3269)
  8138. ? componentOptions.Ctor.cid + (componentOptions.tag ? ("::" + (componentOptions.tag)) : '')
  8139. : vnode.key;
  8140. if (cache[key]) {
  8141. vnode.componentInstance = cache[key].componentInstance;
  8142. // make current key freshest
  8143. remove(keys, key);
  8144. keys.push(key);
  8145. } else {
  8146. cache[key] = vnode;
  8147. keys.push(key);
  8148. // prune oldest entry
  8149. if (this.max && keys.length > parseInt(this.max)) {
  8150. pruneCacheEntry(cache, keys[0], keys, this._vnode);
  8151. }
  8152. }
  8153. vnode.data.keepAlive = true;
  8154. }
  8155. return vnode || (slot && slot[0])
  8156. }
  8157. };
  8158. var builtInComponents = {
  8159. KeepAlive: KeepAlive
  8160. };
  8161. /* */
  8162. function initGlobalAPI (Vue) {
  8163. // config
  8164. var configDef = {};
  8165. configDef.get = function () { return config; };
  8166. if (true) {
  8167. configDef.set = function () {
  8168. warn(
  8169. 'Do not replace the Vue.config object, set individual fields instead.'
  8170. );
  8171. };
  8172. }
  8173. Object.defineProperty(Vue, 'config', configDef);
  8174. // exposed util methods.
  8175. // NOTE: these are not considered part of the public API - avoid relying on
  8176. // them unless you are aware of the risk.
  8177. Vue.util = {
  8178. warn: warn,
  8179. extend: extend,
  8180. mergeOptions: mergeOptions,
  8181. defineReactive: defineReactive$$1
  8182. };
  8183. Vue.set = set;
  8184. Vue.delete = del;
  8185. Vue.nextTick = nextTick;
  8186. // 2.6 explicit observable API
  8187. Vue.observable = function (obj) {
  8188. observe(obj);
  8189. return obj
  8190. };
  8191. Vue.options = Object.create(null);
  8192. ASSET_TYPES.forEach(function (type) {
  8193. Vue.options[type + 's'] = Object.create(null);
  8194. });
  8195. // this is used to identify the "base" constructor to extend all plain-object
  8196. // components with in Weex's multi-instance scenarios.
  8197. Vue.options._base = Vue;
  8198. extend(Vue.options.components, builtInComponents);
  8199. initUse(Vue);
  8200. initMixin$1(Vue);
  8201. initExtend(Vue);
  8202. initAssetRegisters(Vue);
  8203. }
  8204. initGlobalAPI(Vue);
  8205. Object.defineProperty(Vue.prototype, '$isServer', {
  8206. get: isServerRendering
  8207. });
  8208. Object.defineProperty(Vue.prototype, '$ssrContext', {
  8209. get: function get () {
  8210. /* istanbul ignore next */
  8211. return this.$vnode && this.$vnode.ssrContext
  8212. }
  8213. });
  8214. // expose FunctionalRenderContext for ssr runtime helper installation
  8215. Object.defineProperty(Vue, 'FunctionalRenderContext', {
  8216. value: FunctionalRenderContext
  8217. });
  8218. Vue.version = '2.6.11';
  8219. /**
  8220. * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js
  8221. */
  8222. var ARRAYTYPE = '[object Array]';
  8223. var OBJECTTYPE = '[object Object]';
  8224. var NULLTYPE = '[object Null]';
  8225. var UNDEFINEDTYPE = '[object Undefined]';
  8226. // const FUNCTIONTYPE = '[object Function]'
  8227. function diff(current, pre) {
  8228. var result = {};
  8229. syncKeys(current, pre);
  8230. _diff(current, pre, '', result);
  8231. return result
  8232. }
  8233. function syncKeys(current, pre) {
  8234. if (current === pre) { return }
  8235. var rootCurrentType = type(current);
  8236. var rootPreType = type(pre);
  8237. if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {
  8238. if(Object.keys(current).length >= Object.keys(pre).length){
  8239. for (var key in pre) {
  8240. var currentValue = current[key];
  8241. if (currentValue === undefined) {
  8242. current[key] = null;
  8243. } else {
  8244. syncKeys(currentValue, pre[key]);
  8245. }
  8246. }
  8247. }
  8248. } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {
  8249. if (current.length >= pre.length) {
  8250. pre.forEach(function (item, index) {
  8251. syncKeys(current[index], item);
  8252. });
  8253. }
  8254. }
  8255. }
  8256. function nullOrUndefined(currentType, preType) {
  8257. if(
  8258. (currentType === NULLTYPE || currentType === UNDEFINEDTYPE) &&
  8259. (preType === NULLTYPE || preType === UNDEFINEDTYPE)
  8260. ) {
  8261. return false
  8262. }
  8263. return true
  8264. }
  8265. function _diff(current, pre, path, result) {
  8266. if (current === pre) { return }
  8267. var rootCurrentType = type(current);
  8268. var rootPreType = type(pre);
  8269. if (rootCurrentType == OBJECTTYPE) {
  8270. if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {
  8271. setResult(result, path, current);
  8272. } else {
  8273. var loop = function ( key ) {
  8274. var currentValue = current[key];
  8275. var preValue = pre[key];
  8276. var currentType = type(currentValue);
  8277. var preType = type(preValue);
  8278. if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {
  8279. if (currentValue !== pre[key] && nullOrUndefined(currentType, preType)) {
  8280. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  8281. }
  8282. } else if (currentType == ARRAYTYPE) {
  8283. if (preType != ARRAYTYPE) {
  8284. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  8285. } else {
  8286. if (currentValue.length < preValue.length) {
  8287. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  8288. } else {
  8289. currentValue.forEach(function (item, index) {
  8290. _diff(item, preValue[index], (path == '' ? '' : path + ".") + key + '[' + index + ']', result);
  8291. });
  8292. }
  8293. }
  8294. } else if (currentType == OBJECTTYPE) {
  8295. if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {
  8296. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  8297. } else {
  8298. for (var subKey in currentValue) {
  8299. _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + ".") + key + '.' + subKey, result);
  8300. }
  8301. }
  8302. }
  8303. };
  8304. for (var key in current) loop( key );
  8305. }
  8306. } else if (rootCurrentType == ARRAYTYPE) {
  8307. if (rootPreType != ARRAYTYPE) {
  8308. setResult(result, path, current);
  8309. } else {
  8310. if (current.length < pre.length) {
  8311. setResult(result, path, current);
  8312. } else {
  8313. current.forEach(function (item, index) {
  8314. _diff(item, pre[index], path + '[' + index + ']', result);
  8315. });
  8316. }
  8317. }
  8318. } else {
  8319. setResult(result, path, current);
  8320. }
  8321. }
  8322. function setResult(result, k, v) {
  8323. // if (type(v) != FUNCTIONTYPE) {
  8324. result[k] = v;
  8325. // }
  8326. }
  8327. function type(obj) {
  8328. return Object.prototype.toString.call(obj)
  8329. }
  8330. /* */
  8331. function flushCallbacks$1(vm) {
  8332. if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {
  8333. if (Object({"VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"shoppingTemplate","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
  8334. var mpInstance = vm.$scope;
  8335. console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
  8336. ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');
  8337. }
  8338. var copies = vm.__next_tick_callbacks.slice(0);
  8339. vm.__next_tick_callbacks.length = 0;
  8340. for (var i = 0; i < copies.length; i++) {
  8341. copies[i]();
  8342. }
  8343. }
  8344. }
  8345. function hasRenderWatcher(vm) {
  8346. return queue.find(function (watcher) { return vm._watcher === watcher; })
  8347. }
  8348. function nextTick$1(vm, cb) {
  8349. //1.nextTick 之前 已 setData 且 setData 还未回调完成
  8350. //2.nextTick 之前存在 render watcher
  8351. if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {
  8352. if(Object({"VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"shoppingTemplate","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG){
  8353. var mpInstance = vm.$scope;
  8354. console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
  8355. ']:nextVueTick');
  8356. }
  8357. return nextTick(cb, vm)
  8358. }else{
  8359. if(Object({"VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"shoppingTemplate","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG){
  8360. var mpInstance$1 = vm.$scope;
  8361. console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +
  8362. ']:nextMPTick');
  8363. }
  8364. }
  8365. var _resolve;
  8366. if (!vm.__next_tick_callbacks) {
  8367. vm.__next_tick_callbacks = [];
  8368. }
  8369. vm.__next_tick_callbacks.push(function () {
  8370. if (cb) {
  8371. try {
  8372. cb.call(vm);
  8373. } catch (e) {
  8374. handleError(e, vm, 'nextTick');
  8375. }
  8376. } else if (_resolve) {
  8377. _resolve(vm);
  8378. }
  8379. });
  8380. // $flow-disable-line
  8381. if (!cb && typeof Promise !== 'undefined') {
  8382. return new Promise(function (resolve) {
  8383. _resolve = resolve;
  8384. })
  8385. }
  8386. }
  8387. /* */
  8388. function clearInstance(key, value) {
  8389. // 简易去除 Vue 和小程序组件实例
  8390. if (value) {
  8391. if (value._isVue || value.__v_isMPComponent) {
  8392. return {}
  8393. }
  8394. }
  8395. return value
  8396. }
  8397. function cloneWithData(vm) {
  8398. // 确保当前 vm 所有数据被同步
  8399. var ret = Object.create(null);
  8400. var dataKeys = [].concat(
  8401. Object.keys(vm._data || {}),
  8402. Object.keys(vm._computedWatchers || {}));
  8403. dataKeys.reduce(function(ret, key) {
  8404. ret[key] = vm[key];
  8405. return ret
  8406. }, ret);
  8407. // vue-composition-api
  8408. var compositionApiState = vm.__composition_api_state__ || vm.__secret_vfa_state__;
  8409. var rawBindings = compositionApiState && compositionApiState.rawBindings;
  8410. if (rawBindings) {
  8411. Object.keys(rawBindings).forEach(function (key) {
  8412. ret[key] = vm[key];
  8413. });
  8414. }
  8415. //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据
  8416. Object.assign(ret, vm.$mp.data || {});
  8417. if (
  8418. Array.isArray(vm.$options.behaviors) &&
  8419. vm.$options.behaviors.indexOf('uni://form-field') !== -1
  8420. ) { //form-field
  8421. ret['name'] = vm.name;
  8422. ret['value'] = vm.value;
  8423. }
  8424. return JSON.parse(JSON.stringify(ret, clearInstance))
  8425. }
  8426. var patch = function(oldVnode, vnode) {
  8427. var this$1 = this;
  8428. if (vnode === null) { //destroy
  8429. return
  8430. }
  8431. if (this.mpType === 'page' || this.mpType === 'component') {
  8432. var mpInstance = this.$scope;
  8433. var data = Object.create(null);
  8434. try {
  8435. data = cloneWithData(this);
  8436. } catch (err) {
  8437. console.error(err);
  8438. }
  8439. data.__webviewId__ = mpInstance.data.__webviewId__;
  8440. var mpData = Object.create(null);
  8441. Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据
  8442. mpData[key] = mpInstance.data[key];
  8443. });
  8444. var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);
  8445. if (Object.keys(diffData).length) {
  8446. if (Object({"VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"shoppingTemplate","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
  8447. console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +
  8448. ']差量更新',
  8449. JSON.stringify(diffData));
  8450. }
  8451. this.__next_tick_pending = true;
  8452. mpInstance.setData(diffData, function () {
  8453. this$1.__next_tick_pending = false;
  8454. flushCallbacks$1(this$1);
  8455. });
  8456. } else {
  8457. flushCallbacks$1(this);
  8458. }
  8459. }
  8460. };
  8461. /* */
  8462. function createEmptyRender() {
  8463. }
  8464. function mountComponent$1(
  8465. vm,
  8466. el,
  8467. hydrating
  8468. ) {
  8469. if (!vm.mpType) {//main.js 中的 new Vue
  8470. return vm
  8471. }
  8472. if (vm.mpType === 'app') {
  8473. vm.$options.render = createEmptyRender;
  8474. }
  8475. if (!vm.$options.render) {
  8476. vm.$options.render = createEmptyRender;
  8477. if (true) {
  8478. /* istanbul ignore if */
  8479. if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||
  8480. vm.$options.el || el) {
  8481. warn(
  8482. 'You are using the runtime-only build of Vue where the template ' +
  8483. 'compiler is not available. Either pre-compile the templates into ' +
  8484. 'render functions, or use the compiler-included build.',
  8485. vm
  8486. );
  8487. } else {
  8488. warn(
  8489. 'Failed to mount component: template or render function not defined.',
  8490. vm
  8491. );
  8492. }
  8493. }
  8494. }
  8495. !vm._$fallback && callHook(vm, 'beforeMount');
  8496. var updateComponent = function () {
  8497. vm._update(vm._render(), hydrating);
  8498. };
  8499. // we set this to vm._watcher inside the watcher's constructor
  8500. // since the watcher's initial patch may call $forceUpdate (e.g. inside child
  8501. // component's mounted hook), which relies on vm._watcher being already defined
  8502. new Watcher(vm, updateComponent, noop, {
  8503. before: function before() {
  8504. if (vm._isMounted && !vm._isDestroyed) {
  8505. callHook(vm, 'beforeUpdate');
  8506. }
  8507. }
  8508. }, true /* isRenderWatcher */);
  8509. hydrating = false;
  8510. return vm
  8511. }
  8512. /* */
  8513. function renderClass (
  8514. staticClass,
  8515. dynamicClass
  8516. ) {
  8517. if (isDef(staticClass) || isDef(dynamicClass)) {
  8518. return concat(staticClass, stringifyClass(dynamicClass))
  8519. }
  8520. /* istanbul ignore next */
  8521. return ''
  8522. }
  8523. function concat (a, b) {
  8524. return a ? b ? (a + ' ' + b) : a : (b || '')
  8525. }
  8526. function stringifyClass (value) {
  8527. if (Array.isArray(value)) {
  8528. return stringifyArray(value)
  8529. }
  8530. if (isObject(value)) {
  8531. return stringifyObject(value)
  8532. }
  8533. if (typeof value === 'string') {
  8534. return value
  8535. }
  8536. /* istanbul ignore next */
  8537. return ''
  8538. }
  8539. function stringifyArray (value) {
  8540. var res = '';
  8541. var stringified;
  8542. for (var i = 0, l = value.length; i < l; i++) {
  8543. if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {
  8544. if (res) { res += ' '; }
  8545. res += stringified;
  8546. }
  8547. }
  8548. return res
  8549. }
  8550. function stringifyObject (value) {
  8551. var res = '';
  8552. for (var key in value) {
  8553. if (value[key]) {
  8554. if (res) { res += ' '; }
  8555. res += key;
  8556. }
  8557. }
  8558. return res
  8559. }
  8560. /* */
  8561. var parseStyleText = cached(function (cssText) {
  8562. var res = {};
  8563. var listDelimiter = /;(?![^(]*\))/g;
  8564. var propertyDelimiter = /:(.+)/;
  8565. cssText.split(listDelimiter).forEach(function (item) {
  8566. if (item) {
  8567. var tmp = item.split(propertyDelimiter);
  8568. tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());
  8569. }
  8570. });
  8571. return res
  8572. });
  8573. // normalize possible array / string values into Object
  8574. function normalizeStyleBinding (bindingStyle) {
  8575. if (Array.isArray(bindingStyle)) {
  8576. return toObject(bindingStyle)
  8577. }
  8578. if (typeof bindingStyle === 'string') {
  8579. return parseStyleText(bindingStyle)
  8580. }
  8581. return bindingStyle
  8582. }
  8583. /* */
  8584. var MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];
  8585. function getTarget(obj, path) {
  8586. var parts = path.split('.');
  8587. var key = parts[0];
  8588. if (key.indexOf('__$n') === 0) { //number index
  8589. key = parseInt(key.replace('__$n', ''));
  8590. }
  8591. if (parts.length === 1) {
  8592. return obj[key]
  8593. }
  8594. return getTarget(obj[key], parts.slice(1).join('.'))
  8595. }
  8596. function internalMixin(Vue) {
  8597. Vue.config.errorHandler = function(err, vm, info) {
  8598. Vue.util.warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
  8599. console.error(err);
  8600. /* eslint-disable no-undef */
  8601. var app = typeof getApp === 'function' && getApp();
  8602. if (app && app.onError) {
  8603. app.onError(err);
  8604. }
  8605. };
  8606. var oldEmit = Vue.prototype.$emit;
  8607. Vue.prototype.$emit = function(event) {
  8608. if (this.$scope && event) {
  8609. var triggerEvent = this.$scope['_triggerEvent'] || this.$scope['triggerEvent'];
  8610. if (triggerEvent) {
  8611. try {
  8612. triggerEvent.call(this.$scope, event, {
  8613. __args__: toArray(arguments, 1)
  8614. });
  8615. } catch (error) {
  8616. }
  8617. }
  8618. }
  8619. return oldEmit.apply(this, arguments)
  8620. };
  8621. Vue.prototype.$nextTick = function(fn) {
  8622. return nextTick$1(this, fn)
  8623. };
  8624. MP_METHODS.forEach(function (method) {
  8625. Vue.prototype[method] = function(args) {
  8626. if (this.$scope && this.$scope[method]) {
  8627. return this.$scope[method](args)
  8628. }
  8629. // mp-alipay
  8630. if (typeof my === 'undefined') {
  8631. return
  8632. }
  8633. if (method === 'createSelectorQuery') {
  8634. /* eslint-disable no-undef */
  8635. return my.createSelectorQuery(args)
  8636. } else if (method === 'createIntersectionObserver') {
  8637. /* eslint-disable no-undef */
  8638. return my.createIntersectionObserver(args)
  8639. }
  8640. // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent
  8641. };
  8642. });
  8643. Vue.prototype.__init_provide = initProvide;
  8644. Vue.prototype.__init_injections = initInjections;
  8645. Vue.prototype.__call_hook = function(hook, args) {
  8646. var vm = this;
  8647. // #7573 disable dep collection when invoking lifecycle hooks
  8648. pushTarget();
  8649. var handlers = vm.$options[hook];
  8650. var info = hook + " hook";
  8651. var ret;
  8652. if (handlers) {
  8653. for (var i = 0, j = handlers.length; i < j; i++) {
  8654. ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);
  8655. }
  8656. }
  8657. if (vm._hasHookEvent) {
  8658. vm.$emit('hook:' + hook, args);
  8659. }
  8660. popTarget();
  8661. return ret
  8662. };
  8663. Vue.prototype.__set_model = function(target, key, value, modifiers) {
  8664. if (Array.isArray(modifiers)) {
  8665. if (modifiers.indexOf('trim') !== -1) {
  8666. value = value.trim();
  8667. }
  8668. if (modifiers.indexOf('number') !== -1) {
  8669. value = this._n(value);
  8670. }
  8671. }
  8672. if (!target) {
  8673. target = this;
  8674. }
  8675. // 解决动态属性添加
  8676. Vue.set(target, key, value);
  8677. };
  8678. Vue.prototype.__set_sync = function(target, key, value) {
  8679. if (!target) {
  8680. target = this;
  8681. }
  8682. // 解决动态属性添加
  8683. Vue.set(target, key, value);
  8684. };
  8685. Vue.prototype.__get_orig = function(item) {
  8686. if (isPlainObject(item)) {
  8687. return item['$orig'] || item
  8688. }
  8689. return item
  8690. };
  8691. Vue.prototype.__get_value = function(dataPath, target) {
  8692. return getTarget(target || this, dataPath)
  8693. };
  8694. Vue.prototype.__get_class = function(dynamicClass, staticClass) {
  8695. return renderClass(staticClass, dynamicClass)
  8696. };
  8697. Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {
  8698. if (!dynamicStyle && !staticStyle) {
  8699. return ''
  8700. }
  8701. var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);
  8702. var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;
  8703. return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + ":" + (styleObj[name])); }).join(';')
  8704. };
  8705. Vue.prototype.__map = function(val, iteratee) {
  8706. //TODO 暂不考虑 string
  8707. var ret, i, l, keys, key;
  8708. if (Array.isArray(val)) {
  8709. ret = new Array(val.length);
  8710. for (i = 0, l = val.length; i < l; i++) {
  8711. ret[i] = iteratee(val[i], i);
  8712. }
  8713. return ret
  8714. } else if (isObject(val)) {
  8715. keys = Object.keys(val);
  8716. ret = Object.create(null);
  8717. for (i = 0, l = keys.length; i < l; i++) {
  8718. key = keys[i];
  8719. ret[key] = iteratee(val[key], key, i);
  8720. }
  8721. return ret
  8722. } else if (typeof val === 'number') {
  8723. ret = new Array(val);
  8724. for (i = 0, l = val; i < l; i++) {
  8725. // 第一个参数暂时仍和小程序一致
  8726. ret[i] = iteratee(i, i);
  8727. }
  8728. return ret
  8729. }
  8730. return []
  8731. };
  8732. }
  8733. /* */
  8734. var LIFECYCLE_HOOKS$1 = [
  8735. //App
  8736. 'onLaunch',
  8737. 'onShow',
  8738. 'onHide',
  8739. 'onUniNViewMessage',
  8740. 'onPageNotFound',
  8741. 'onThemeChange',
  8742. 'onError',
  8743. 'onUnhandledRejection',
  8744. //Page
  8745. 'onInit',
  8746. 'onLoad',
  8747. // 'onShow',
  8748. 'onReady',
  8749. // 'onHide',
  8750. 'onUnload',
  8751. 'onPullDownRefresh',
  8752. 'onReachBottom',
  8753. 'onTabItemTap',
  8754. 'onAddToFavorites',
  8755. 'onShareTimeline',
  8756. 'onShareAppMessage',
  8757. 'onResize',
  8758. 'onPageScroll',
  8759. 'onNavigationBarButtonTap',
  8760. 'onBackPress',
  8761. 'onNavigationBarSearchInputChanged',
  8762. 'onNavigationBarSearchInputConfirmed',
  8763. 'onNavigationBarSearchInputClicked',
  8764. 'onUploadDouyinVideo',
  8765. 'onNFCReadMessage',
  8766. //Component
  8767. // 'onReady', // 兼容旧版本,应该移除该事件
  8768. 'onPageShow',
  8769. 'onPageHide',
  8770. 'onPageResize'
  8771. ];
  8772. function lifecycleMixin$1(Vue) {
  8773. //fixed vue-class-component
  8774. var oldExtend = Vue.extend;
  8775. Vue.extend = function(extendOptions) {
  8776. extendOptions = extendOptions || {};
  8777. var methods = extendOptions.methods;
  8778. if (methods) {
  8779. Object.keys(methods).forEach(function (methodName) {
  8780. if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {
  8781. extendOptions[methodName] = methods[methodName];
  8782. delete methods[methodName];
  8783. }
  8784. });
  8785. }
  8786. return oldExtend.call(this, extendOptions)
  8787. };
  8788. var strategies = Vue.config.optionMergeStrategies;
  8789. var mergeHook = strategies.created;
  8790. LIFECYCLE_HOOKS$1.forEach(function (hook) {
  8791. strategies[hook] = mergeHook;
  8792. });
  8793. Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;
  8794. }
  8795. /* */
  8796. // install platform patch function
  8797. Vue.prototype.__patch__ = patch;
  8798. // public mount method
  8799. Vue.prototype.$mount = function(
  8800. el ,
  8801. hydrating
  8802. ) {
  8803. return mountComponent$1(this, el, hydrating)
  8804. };
  8805. lifecycleMixin$1(Vue);
  8806. internalMixin(Vue);
  8807. /* */
  8808. /* harmony default export */ __webpack_exports__["default"] = (Vue);
  8809. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../webpack/buildin/global.js */ 3)))
  8810. /***/ }),
  8811. /* 26 */
  8812. /*!**************************************!*\
  8813. !*** E:/shoppingTemplate/pages.json ***!
  8814. \**************************************/
  8815. /*! no static exports found */
  8816. /***/ (function(module, exports) {
  8817. /***/ }),
  8818. /* 27 */,
  8819. /* 28 */,
  8820. /* 29 */,
  8821. /* 30 */,
  8822. /* 31 */,
  8823. /* 32 */
  8824. /*!**********************************************************************************************************!*\
  8825. !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js ***!
  8826. \**********************************************************************************************************/
  8827. /*! exports provided: default */
  8828. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  8829. "use strict";
  8830. __webpack_require__.r(__webpack_exports__);
  8831. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
  8832. /* globals __VUE_SSR_CONTEXT__ */
  8833. // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
  8834. // This module is a runtime utility for cleaner component module output and will
  8835. // be included in the final webpack user bundle.
  8836. function normalizeComponent (
  8837. scriptExports,
  8838. render,
  8839. staticRenderFns,
  8840. functionalTemplate,
  8841. injectStyles,
  8842. scopeId,
  8843. moduleIdentifier, /* server only */
  8844. shadowMode, /* vue-cli only */
  8845. components, // fixed by xxxxxx auto components
  8846. renderjs // fixed by xxxxxx renderjs
  8847. ) {
  8848. // Vue.extend constructor export interop
  8849. var options = typeof scriptExports === 'function'
  8850. ? scriptExports.options
  8851. : scriptExports
  8852. // fixed by xxxxxx auto components
  8853. if (components) {
  8854. if (!options.components) {
  8855. options.components = {}
  8856. }
  8857. var hasOwn = Object.prototype.hasOwnProperty
  8858. for (var name in components) {
  8859. if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {
  8860. options.components[name] = components[name]
  8861. }
  8862. }
  8863. }
  8864. // fixed by xxxxxx renderjs
  8865. if (renderjs) {
  8866. if(typeof renderjs.beforeCreate === 'function'){
  8867. renderjs.beforeCreate = [renderjs.beforeCreate]
  8868. }
  8869. (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {
  8870. this[renderjs.__module] = this
  8871. });
  8872. (options.mixins || (options.mixins = [])).push(renderjs)
  8873. }
  8874. // render functions
  8875. if (render) {
  8876. options.render = render
  8877. options.staticRenderFns = staticRenderFns
  8878. options._compiled = true
  8879. }
  8880. // functional template
  8881. if (functionalTemplate) {
  8882. options.functional = true
  8883. }
  8884. // scopedId
  8885. if (scopeId) {
  8886. options._scopeId = 'data-v-' + scopeId
  8887. }
  8888. var hook
  8889. if (moduleIdentifier) { // server build
  8890. hook = function (context) {
  8891. // 2.3 injection
  8892. context =
  8893. context || // cached call
  8894. (this.$vnode && this.$vnode.ssrContext) || // stateful
  8895. (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
  8896. // 2.2 with runInNewContext: true
  8897. if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
  8898. context = __VUE_SSR_CONTEXT__
  8899. }
  8900. // inject component styles
  8901. if (injectStyles) {
  8902. injectStyles.call(this, context)
  8903. }
  8904. // register component module identifier for async chunk inferrence
  8905. if (context && context._registeredComponents) {
  8906. context._registeredComponents.add(moduleIdentifier)
  8907. }
  8908. }
  8909. // used by ssr in case component is cached and beforeCreate
  8910. // never gets called
  8911. options._ssrRegister = hook
  8912. } else if (injectStyles) {
  8913. hook = shadowMode
  8914. ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
  8915. : injectStyles
  8916. }
  8917. if (hook) {
  8918. if (options.functional) {
  8919. // for template-only hot-reload because in that case the render fn doesn't
  8920. // go through the normalizer
  8921. options._injectStyles = hook
  8922. // register for functioal component in vue file
  8923. var originalRender = options.render
  8924. options.render = function renderWithStyleInjection (h, context) {
  8925. hook.call(context)
  8926. return originalRender(h, context)
  8927. }
  8928. } else {
  8929. // inject component registration as beforeCreate hook
  8930. var existing = options.beforeCreate
  8931. options.beforeCreate = existing
  8932. ? [].concat(existing, hook)
  8933. : [hook]
  8934. }
  8935. }
  8936. return {
  8937. exports: scriptExports,
  8938. options: options
  8939. }
  8940. }
  8941. /***/ }),
  8942. /* 33 */
  8943. /*!****************************************************!*\
  8944. !*** E:/shoppingTemplate/uni.promisify.adaptor.js ***!
  8945. \****************************************************/
  8946. /*! no static exports found */
  8947. /***/ (function(module, exports, __webpack_require__) {
  8948. /* WEBPACK VAR INJECTION */(function(uni) {var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 13);
  8949. uni.addInterceptor({
  8950. returnValue: function returnValue(res) {
  8951. if (!(!!res && (_typeof(res) === "object" || typeof res === "function") && typeof res.then === "function")) {
  8952. return res;
  8953. }
  8954. return new Promise(function (resolve, reject) {
  8955. res.then(function (res) {
  8956. return res[0] ? reject(res[0]) : resolve(res[1]);
  8957. });
  8958. });
  8959. }
  8960. });
  8961. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  8962. /***/ }),
  8963. /* 34 */
  8964. /*!********************************************!*\
  8965. !*** E:/shoppingTemplate/common/js/api.js ***!
  8966. \********************************************/
  8967. /*! no static exports found */
  8968. /***/ (function(module, exports, __webpack_require__) {
  8969. "use strict";
  8970. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  8971. Object.defineProperty(exports, "__esModule", {
  8972. value: true
  8973. });
  8974. exports.default = void 0;
  8975. var _request = _interopRequireDefault(__webpack_require__(/*! ../js/request.js */ 35));
  8976. // 引用网络请求中间件
  8977. var _default = {
  8978. payTheBill: function payTheBill(data) {
  8979. return (0, _request.default)({
  8980. url: '/recruit/recruitmsg/payTheBill',
  8981. method: 'POST',
  8982. data: data
  8983. });
  8984. },
  8985. /**
  8986. * 福利补贴
  8987. */
  8988. welfareMoney: function welfareMoney(data) {
  8989. return (0, _request.default)({
  8990. url: '/recruit/recruitmsg/welfareMoney',
  8991. method: 'POST',
  8992. data: data
  8993. });
  8994. }
  8995. };
  8996. exports.default = _default;
  8997. /***/ }),
  8998. /* 35 */
  8999. /*!************************************************!*\
  9000. !*** E:/shoppingTemplate/common/js/request.js ***!
  9001. \************************************************/
  9002. /*! no static exports found */
  9003. /***/ (function(module, exports, __webpack_require__) {
  9004. "use strict";
  9005. /* WEBPACK VAR INJECTION */(function(uni) {
  9006. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9007. Object.defineProperty(exports, "__esModule", {
  9008. value: true
  9009. });
  9010. exports.default = void 0;
  9011. var _env = _interopRequireDefault(__webpack_require__(/*! ../js/env.js */ 36));
  9012. function service() {
  9013. var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  9014. options.url = "".concat(_env.default.baseUrl).concat(options.url);
  9015. // 判断本地是否存在token,如果存在则带上请求头
  9016. var access_token = uni.getStorageSync('access_token');
  9017. var refresh_token = uni.getStorageSync('refresh_token');
  9018. options.header = {
  9019. 'Tenant-Id': '000000',
  9020. 'Authorization': 'Basic c3dvcmQ6c3dvcmRfc2VjcmV0',
  9021. 'content-type': 'application/json',
  9022. 'Blade-Auth': access_token,
  9023. 'refresh_token': refresh_token
  9024. };
  9025. // resolved是返回成功数据,rejected返回错误数据
  9026. return new Promise(function (resolved, rejected) {
  9027. options.success = function (res) {
  9028. // 如果请求回来的状态码不是200则执行以下操作
  9029. if (res.data.code !== 200) {
  9030. // 非成功状态码弹窗
  9031. uni.showToast({
  9032. icon: 'none',
  9033. duration: 3000,
  9034. title: "".concat(res.data.msg)
  9035. });
  9036. // 这里可以做一些状态码判断以及操作
  9037. // 返回错误信息
  9038. rejected(res);
  9039. if (res.data.code === 401) {
  9040. uni.navigateTo({
  9041. url: '/pages/welcome/index'
  9042. });
  9043. }
  9044. } else {
  9045. // 请求回来的状态码为200则返回内容
  9046. resolved(res);
  9047. }
  9048. };
  9049. options.fail = function (err) {
  9050. // 请求失败弹窗
  9051. uni.showToast({
  9052. icon: 'none',
  9053. duration: 3000,
  9054. title: '系统繁忙,请稍后再试'
  9055. });
  9056. rejected(err);
  9057. };
  9058. uni.request(options);
  9059. });
  9060. }
  9061. var _default = service;
  9062. exports.default = _default;
  9063. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  9064. /***/ }),
  9065. /* 36 */
  9066. /*!********************************************!*\
  9067. !*** E:/shoppingTemplate/common/js/env.js ***!
  9068. \********************************************/
  9069. /*! no static exports found */
  9070. /***/ (function(module, exports, __webpack_require__) {
  9071. "use strict";
  9072. // 变量可自行添加修改
  9073. Object.defineProperty(exports, "__esModule", {
  9074. value: true
  9075. });
  9076. exports.default = void 0;
  9077. var _default = {
  9078. //存放变量的容器
  9079. appid: '__UNI__1EEA945',
  9080. // baseUrl: 'https://recruit.gzzzyd.com/api'
  9081. // baseUrl: 'http://127.0.0.1:8888',
  9082. baseUrl: 'http://192.168.0.108:8888',
  9083. uploadUrl: '/v1/file/put-file'
  9084. };
  9085. exports.default = _default;
  9086. /***/ }),
  9087. /* 37 */
  9088. /*!**********************************************************!*\
  9089. !*** E:/shoppingTemplate/node_modules/uview-ui/index.js ***!
  9090. \**********************************************************/
  9091. /*! no static exports found */
  9092. /***/ (function(module, exports, __webpack_require__) {
  9093. "use strict";
  9094. /* WEBPACK VAR INJECTION */(function(uni) {
  9095. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9096. Object.defineProperty(exports, "__esModule", {
  9097. value: true
  9098. });
  9099. exports.default = void 0;
  9100. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  9101. var _mixin = _interopRequireDefault(__webpack_require__(/*! ./libs/mixin/mixin.js */ 38));
  9102. var _mpMixin = _interopRequireDefault(__webpack_require__(/*! ./libs/mixin/mpMixin.js */ 39));
  9103. var _luchRequest = _interopRequireDefault(__webpack_require__(/*! ./libs/luch-request */ 40));
  9104. var _route = _interopRequireDefault(__webpack_require__(/*! ./libs/util/route.js */ 58));
  9105. var _colorGradient = _interopRequireDefault(__webpack_require__(/*! ./libs/function/colorGradient.js */ 62));
  9106. var _test = _interopRequireDefault(__webpack_require__(/*! ./libs/function/test.js */ 63));
  9107. var _debounce = _interopRequireDefault(__webpack_require__(/*! ./libs/function/debounce.js */ 64));
  9108. var _throttle = _interopRequireDefault(__webpack_require__(/*! ./libs/function/throttle.js */ 65));
  9109. var _index = _interopRequireDefault(__webpack_require__(/*! ./libs/function/index.js */ 66));
  9110. var _config = _interopRequireDefault(__webpack_require__(/*! ./libs/config/config.js */ 69));
  9111. var _props = _interopRequireDefault(__webpack_require__(/*! ./libs/config/props.js */ 70));
  9112. var _zIndex = _interopRequireDefault(__webpack_require__(/*! ./libs/config/zIndex.js */ 160));
  9113. var _color = _interopRequireDefault(__webpack_require__(/*! ./libs/config/color.js */ 118));
  9114. var _platform = _interopRequireDefault(__webpack_require__(/*! ./libs/function/platform */ 161));
  9115. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  9116. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  9117. // 看到此报错,是因为没有配置vue.config.js的【transpileDependencies】,详见:https://www.uviewui.com/components/npmSetting.html#_5-cli模式额外配置
  9118. var pleaseSetTranspileDependencies = {},
  9119. babelTest = pleaseSetTranspileDependencies === null || pleaseSetTranspileDependencies === void 0 ? void 0 : pleaseSetTranspileDependencies.test;
  9120. // 引入全局mixin
  9121. var $u = _objectSpread(_objectSpread({
  9122. route: _route.default,
  9123. date: _index.default.timeFormat,
  9124. // 另名date
  9125. colorGradient: _colorGradient.default.colorGradient,
  9126. hexToRgb: _colorGradient.default.hexToRgb,
  9127. rgbToHex: _colorGradient.default.rgbToHex,
  9128. colorToRgba: _colorGradient.default.colorToRgba,
  9129. test: _test.default,
  9130. type: ['primary', 'success', 'error', 'warning', 'info'],
  9131. http: new _luchRequest.default(),
  9132. config: _config.default,
  9133. // uView配置信息相关,比如版本号
  9134. zIndex: _zIndex.default,
  9135. debounce: _debounce.default,
  9136. throttle: _throttle.default,
  9137. mixin: _mixin.default,
  9138. mpMixin: _mpMixin.default,
  9139. props: _props.default
  9140. }, _index.default), {}, {
  9141. color: _color.default,
  9142. platform: _platform.default
  9143. });
  9144. // $u挂载到uni对象上
  9145. uni.$u = $u;
  9146. var install = function install(Vue) {
  9147. // 时间格式化,同时两个名称,date和timeFormat
  9148. Vue.filter('timeFormat', function (timestamp, format) {
  9149. return uni.$u.timeFormat(timestamp, format);
  9150. });
  9151. Vue.filter('date', function (timestamp, format) {
  9152. return uni.$u.timeFormat(timestamp, format);
  9153. });
  9154. // 将多久以前的方法,注入到全局过滤器
  9155. Vue.filter('timeFrom', function (timestamp, format) {
  9156. return uni.$u.timeFrom(timestamp, format);
  9157. });
  9158. // 同时挂载到uni和Vue.prototype中
  9159. // 只有vue,挂载到Vue.prototype才有意义,因为nvue中全局Vue.prototype和Vue.mixin是无效的
  9160. Vue.prototype.$u = $u;
  9161. Vue.mixin(_mixin.default);
  9162. };
  9163. var _default = {
  9164. install: install
  9165. };
  9166. exports.default = _default;
  9167. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  9168. /***/ }),
  9169. /* 38 */
  9170. /*!*********************************************************************!*\
  9171. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/mixin/mixin.js ***!
  9172. \*********************************************************************/
  9173. /*! no static exports found */
  9174. /***/ (function(module, exports, __webpack_require__) {
  9175. /* WEBPACK VAR INJECTION */(function(uni) {module.exports = {
  9176. // 定义每个组件都可能需要用到的外部样式以及类名
  9177. props: {
  9178. // 每个组件都有的父组件传递的样式,可以为字符串或者对象形式
  9179. customStyle: {
  9180. type: [Object, String],
  9181. default: function _default() {
  9182. return {};
  9183. }
  9184. },
  9185. customClass: {
  9186. type: String,
  9187. default: ''
  9188. },
  9189. // 跳转的页面路径
  9190. url: {
  9191. type: String,
  9192. default: ''
  9193. },
  9194. // 页面跳转的类型
  9195. linkType: {
  9196. type: String,
  9197. default: 'navigateTo'
  9198. }
  9199. },
  9200. data: function data() {
  9201. return {};
  9202. },
  9203. onLoad: function onLoad() {
  9204. // getRect挂载到$u上,因为这方法需要使用in(this),所以无法把它独立成一个单独的文件导出
  9205. this.$u.getRect = this.$uGetRect;
  9206. },
  9207. created: function created() {
  9208. // 组件当中,只有created声明周期,为了能在组件使用,故也在created中将方法挂载到$u
  9209. this.$u.getRect = this.$uGetRect;
  9210. },
  9211. computed: {
  9212. // 在2.x版本中,将会把$u挂载到uni对象下,导致在模板中无法使用uni.$u.xxx形式
  9213. // 所以这里通过computed计算属性将其附加到this.$u上,就可以在模板或者js中使用uni.$u.xxx
  9214. // 只在nvue环境通过此方式引入完整的$u,其他平台会出现性能问题,非nvue则按需引入(主要原因是props过大)
  9215. $u: function $u() {
  9216. // 在非nvue端,移除props,http,mixin等对象,避免在小程序setData时数据过大影响性能
  9217. return uni.$u.deepMerge(uni.$u, {
  9218. props: undefined,
  9219. http: undefined,
  9220. mixin: undefined
  9221. });
  9222. },
  9223. /**
  9224. * 生成bem规则类名
  9225. * 由于微信小程序,H5,nvue之间绑定class的差异,无法通过:class="[bem()]"的形式进行同用
  9226. * 故采用如下折中做法,最后返回的是数组(一般平台)或字符串(支付宝和字节跳动平台),类似['a', 'b', 'c']或'a b c'的形式
  9227. * @param {String} name 组件名称
  9228. * @param {Array} fixed 一直会存在的类名
  9229. * @param {Array} change 会根据变量值为true或者false而出现或者隐藏的类名
  9230. * @returns {Array|string}
  9231. */
  9232. bem: function bem() {
  9233. return function (name, fixed, change) {
  9234. var _this = this;
  9235. // 类名前缀
  9236. var prefix = "u-".concat(name, "--");
  9237. var classes = {};
  9238. if (fixed) {
  9239. fixed.map(function (item) {
  9240. // 这里的类名,会一直存在
  9241. classes[prefix + _this[item]] = true;
  9242. });
  9243. }
  9244. if (change) {
  9245. change.map(function (item) {
  9246. // 这里的类名,会根据this[item]的值为true或者false,而进行添加或者移除某一个类
  9247. _this[item] ? classes[prefix + item] = _this[item] : delete classes[prefix + item];
  9248. });
  9249. }
  9250. return Object.keys(classes);
  9251. // 支付宝,头条小程序无法动态绑定一个数组类名,否则解析出来的结果会带有",",而导致失效
  9252. };
  9253. }
  9254. },
  9255. methods: {
  9256. // 跳转某一个页面
  9257. openPage: function openPage() {
  9258. var urlKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'url';
  9259. var url = this[urlKey];
  9260. if (url) {
  9261. // 执行类似uni.navigateTo的方法
  9262. uni[this.linkType]({
  9263. url: url
  9264. });
  9265. }
  9266. },
  9267. // 查询节点信息
  9268. // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸,为支付宝的bug(2020-07-21)
  9269. // 解决办法为在组件根部再套一个没有任何作用的view元素
  9270. $uGetRect: function $uGetRect(selector, all) {
  9271. var _this2 = this;
  9272. return new Promise(function (resolve) {
  9273. uni.createSelectorQuery().in(_this2)[all ? 'selectAll' : 'select'](selector).boundingClientRect(function (rect) {
  9274. if (all && Array.isArray(rect) && rect.length) {
  9275. resolve(rect);
  9276. }
  9277. if (!all && rect) {
  9278. resolve(rect);
  9279. }
  9280. }).exec();
  9281. });
  9282. },
  9283. getParentData: function getParentData() {
  9284. var _this3 = this;
  9285. var parentName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
  9286. // 避免在created中去定义parent变量
  9287. if (!this.parent) this.parent = {};
  9288. // 这里的本质原理是,通过获取父组件实例(也即类似u-radio的父组件u-radio-group的this)
  9289. // 将父组件this中对应的参数,赋值给本组件(u-radio的this)的parentData对象中对应的属性
  9290. // 之所以需要这么做,是因为所有端中,头条小程序不支持通过this.parent.xxx去监听父组件参数的变化
  9291. // 此处并不会自动更新子组件的数据,而是依赖父组件u-radio-group去监听data的变化,手动调用更新子组件的方法去重新获取
  9292. this.parent = uni.$u.$parent.call(this, parentName);
  9293. if (this.parent.children) {
  9294. // 如果父组件的children不存在本组件的实例,才将本实例添加到父组件的children中
  9295. this.parent.children.indexOf(this) === -1 && this.parent.children.push(this);
  9296. }
  9297. if (this.parent && this.parentData) {
  9298. // 历遍parentData中的属性,将parent中的同名属性赋值给parentData
  9299. Object.keys(this.parentData).map(function (key) {
  9300. _this3.parentData[key] = _this3.parent[key];
  9301. });
  9302. }
  9303. },
  9304. // 阻止事件冒泡
  9305. preventEvent: function preventEvent(e) {
  9306. e && typeof e.stopPropagation === 'function' && e.stopPropagation();
  9307. },
  9308. // 空操作
  9309. noop: function noop(e) {
  9310. this.preventEvent(e);
  9311. }
  9312. },
  9313. onReachBottom: function onReachBottom() {
  9314. uni.$emit('uOnReachBottom');
  9315. },
  9316. beforeDestroy: function beforeDestroy() {
  9317. var _this4 = this;
  9318. // 判断当前页面是否存在parent和chldren,一般在checkbox和checkbox-group父子联动的场景会有此情况
  9319. // 组件销毁时,移除子组件在父组件children数组中的实例,释放资源,避免数据混乱
  9320. if (this.parent && uni.$u.test.array(this.parent.children)) {
  9321. // 组件销毁时,移除父组件中的children数组中对应的实例
  9322. var childrenList = this.parent.children;
  9323. childrenList.map(function (child, index) {
  9324. // 如果相等,则移除
  9325. if (child === _this4) {
  9326. childrenList.splice(index, 1);
  9327. }
  9328. });
  9329. }
  9330. }
  9331. };
  9332. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  9333. /***/ }),
  9334. /* 39 */
  9335. /*!***********************************************************************!*\
  9336. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/mixin/mpMixin.js ***!
  9337. \***********************************************************************/
  9338. /*! no static exports found */
  9339. /***/ (function(module, exports, __webpack_require__) {
  9340. "use strict";
  9341. Object.defineProperty(exports, "__esModule", {
  9342. value: true
  9343. });
  9344. exports.default = void 0;
  9345. var _default = {
  9346. // 将自定义节点设置成虚拟的,更加接近Vue组件的表现,能更好的使用flex属性
  9347. options: {
  9348. virtualHost: true
  9349. }
  9350. };
  9351. exports.default = _default;
  9352. /***/ }),
  9353. /* 40 */
  9354. /*!****************************************************************************!*\
  9355. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/index.js ***!
  9356. \****************************************************************************/
  9357. /*! no static exports found */
  9358. /***/ (function(module, exports, __webpack_require__) {
  9359. "use strict";
  9360. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9361. Object.defineProperty(exports, "__esModule", {
  9362. value: true
  9363. });
  9364. exports.default = void 0;
  9365. var _Request = _interopRequireDefault(__webpack_require__(/*! ./core/Request */ 41));
  9366. var _default = _Request.default;
  9367. exports.default = _default;
  9368. /***/ }),
  9369. /* 41 */
  9370. /*!***********************************************************************************!*\
  9371. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/Request.js ***!
  9372. \***********************************************************************************/
  9373. /*! no static exports found */
  9374. /***/ (function(module, exports, __webpack_require__) {
  9375. "use strict";
  9376. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9377. Object.defineProperty(exports, "__esModule", {
  9378. value: true
  9379. });
  9380. exports.default = void 0;
  9381. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  9382. var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
  9383. var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
  9384. var _dispatchRequest = _interopRequireDefault(__webpack_require__(/*! ./dispatchRequest */ 42));
  9385. var _InterceptorManager = _interopRequireDefault(__webpack_require__(/*! ./InterceptorManager */ 50));
  9386. var _mergeConfig = _interopRequireDefault(__webpack_require__(/*! ./mergeConfig */ 51));
  9387. var _defaults = _interopRequireDefault(__webpack_require__(/*! ./defaults */ 52));
  9388. var _utils = __webpack_require__(/*! ../utils */ 45);
  9389. var _clone = _interopRequireDefault(__webpack_require__(/*! ../utils/clone */ 53));
  9390. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  9391. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  9392. var Request = /*#__PURE__*/function () {
  9393. /**
  9394. * @param {Object} arg - 全局配置
  9395. * @param {String} arg.baseURL - 全局根路径
  9396. * @param {Object} arg.header - 全局header
  9397. * @param {String} arg.method = [GET|POST|PUT|DELETE|CONNECT|HEAD|OPTIONS|TRACE] - 全局默认请求方式
  9398. * @param {String} arg.dataType = [json] - 全局默认的dataType
  9399. * @param {String} arg.responseType = [text|arraybuffer] - 全局默认的responseType。支付宝小程序不支持
  9400. * @param {Object} arg.custom - 全局默认的自定义参数
  9401. * @param {Number} arg.timeout - 全局默认的超时时间,单位 ms。默认60000。H5(HBuilderX 2.9.9+)、APP(HBuilderX 2.9.9+)、微信小程序(2.10.0)、支付宝小程序
  9402. * @param {Boolean} arg.sslVerify - 全局默认的是否验证 ssl 证书。默认true.仅App安卓端支持(HBuilderX 2.3.3+)
  9403. * @param {Boolean} arg.withCredentials - 全局默认的跨域请求时是否携带凭证(cookies)。默认false。仅H5支持(HBuilderX 2.6.15+)
  9404. * @param {Boolean} arg.firstIpv4 - 全DNS解析时优先使用ipv4。默认false。仅 App-Android 支持 (HBuilderX 2.8.0+)
  9405. * @param {Function(statusCode):Boolean} arg.validateStatus - 全局默认的自定义验证器。默认statusCode >= 200 && statusCode < 300
  9406. */
  9407. function Request() {
  9408. var arg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  9409. (0, _classCallCheck2.default)(this, Request);
  9410. if (!(0, _utils.isPlainObject)(arg)) {
  9411. arg = {};
  9412. console.warn('设置全局参数必须接收一个Object');
  9413. }
  9414. this.config = (0, _clone.default)(_objectSpread(_objectSpread({}, _defaults.default), arg));
  9415. this.interceptors = {
  9416. request: new _InterceptorManager.default(),
  9417. response: new _InterceptorManager.default()
  9418. };
  9419. }
  9420. /**
  9421. * @Function
  9422. * @param {Request~setConfigCallback} f - 设置全局默认配置
  9423. */
  9424. (0, _createClass2.default)(Request, [{
  9425. key: "setConfig",
  9426. value: function setConfig(f) {
  9427. this.config = f(this.config);
  9428. }
  9429. }, {
  9430. key: "middleware",
  9431. value: function middleware(config) {
  9432. config = (0, _mergeConfig.default)(this.config, config);
  9433. var chain = [_dispatchRequest.default, undefined];
  9434. var promise = Promise.resolve(config);
  9435. this.interceptors.request.forEach(function (interceptor) {
  9436. chain.unshift(interceptor.fulfilled, interceptor.rejected);
  9437. });
  9438. this.interceptors.response.forEach(function (interceptor) {
  9439. chain.push(interceptor.fulfilled, interceptor.rejected);
  9440. });
  9441. while (chain.length) {
  9442. promise = promise.then(chain.shift(), chain.shift());
  9443. }
  9444. return promise;
  9445. }
  9446. /**
  9447. * @Function
  9448. * @param {Object} config - 请求配置项
  9449. * @prop {String} options.url - 请求路径
  9450. * @prop {Object} options.data - 请求参数
  9451. * @prop {Object} [options.responseType = config.responseType] [text|arraybuffer] - 响应的数据类型
  9452. * @prop {Object} [options.dataType = config.dataType] - 如果设为 json,会尝试对返回的数据做一次 JSON.parse
  9453. * @prop {Object} [options.header = config.header] - 请求header
  9454. * @prop {Object} [options.method = config.method] - 请求方法
  9455. * @returns {Promise<unknown>}
  9456. */
  9457. }, {
  9458. key: "request",
  9459. value: function request() {
  9460. var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  9461. return this.middleware(config);
  9462. }
  9463. }, {
  9464. key: "get",
  9465. value: function get(url) {
  9466. var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  9467. return this.middleware(_objectSpread({
  9468. url: url,
  9469. method: 'GET'
  9470. }, options));
  9471. }
  9472. }, {
  9473. key: "post",
  9474. value: function post(url, data) {
  9475. var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9476. return this.middleware(_objectSpread({
  9477. url: url,
  9478. data: data,
  9479. method: 'POST'
  9480. }, options));
  9481. }
  9482. }, {
  9483. key: "put",
  9484. value: function put(url, data) {
  9485. var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9486. return this.middleware(_objectSpread({
  9487. url: url,
  9488. data: data,
  9489. method: 'PUT'
  9490. }, options));
  9491. }
  9492. }, {
  9493. key: "delete",
  9494. value: function _delete(url, data) {
  9495. var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9496. return this.middleware(_objectSpread({
  9497. url: url,
  9498. data: data,
  9499. method: 'DELETE'
  9500. }, options));
  9501. }
  9502. }, {
  9503. key: "connect",
  9504. value: function connect(url, data) {
  9505. var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9506. return this.middleware(_objectSpread({
  9507. url: url,
  9508. data: data,
  9509. method: 'CONNECT'
  9510. }, options));
  9511. }
  9512. }, {
  9513. key: "head",
  9514. value: function head(url, data) {
  9515. var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9516. return this.middleware(_objectSpread({
  9517. url: url,
  9518. data: data,
  9519. method: 'HEAD'
  9520. }, options));
  9521. }
  9522. }, {
  9523. key: "options",
  9524. value: function options(url, data) {
  9525. var _options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9526. return this.middleware(_objectSpread({
  9527. url: url,
  9528. data: data,
  9529. method: 'OPTIONS'
  9530. }, _options));
  9531. }
  9532. }, {
  9533. key: "trace",
  9534. value: function trace(url, data) {
  9535. var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  9536. return this.middleware(_objectSpread({
  9537. url: url,
  9538. data: data,
  9539. method: 'TRACE'
  9540. }, options));
  9541. }
  9542. }, {
  9543. key: "upload",
  9544. value: function upload(url) {
  9545. var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  9546. config.url = url;
  9547. config.method = 'UPLOAD';
  9548. return this.middleware(config);
  9549. }
  9550. }, {
  9551. key: "download",
  9552. value: function download(url) {
  9553. var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  9554. config.url = url;
  9555. config.method = 'DOWNLOAD';
  9556. return this.middleware(config);
  9557. }
  9558. }]);
  9559. return Request;
  9560. }();
  9561. /**
  9562. * setConfig回调
  9563. * @return {Object} - 返回操作后的config
  9564. * @callback Request~setConfigCallback
  9565. * @param {Object} config - 全局默认config
  9566. */
  9567. exports.default = Request;
  9568. /***/ }),
  9569. /* 42 */
  9570. /*!*******************************************************************************************!*\
  9571. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/dispatchRequest.js ***!
  9572. \*******************************************************************************************/
  9573. /*! no static exports found */
  9574. /***/ (function(module, exports, __webpack_require__) {
  9575. "use strict";
  9576. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9577. Object.defineProperty(exports, "__esModule", {
  9578. value: true
  9579. });
  9580. exports.default = void 0;
  9581. var _index = _interopRequireDefault(__webpack_require__(/*! ../adapters/index */ 43));
  9582. var _default = function _default(config) {
  9583. return (0, _index.default)(config);
  9584. };
  9585. exports.default = _default;
  9586. /***/ }),
  9587. /* 43 */
  9588. /*!*************************************************************************************!*\
  9589. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/adapters/index.js ***!
  9590. \*************************************************************************************/
  9591. /*! no static exports found */
  9592. /***/ (function(module, exports, __webpack_require__) {
  9593. "use strict";
  9594. /* WEBPACK VAR INJECTION */(function(uni) {
  9595. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9596. Object.defineProperty(exports, "__esModule", {
  9597. value: true
  9598. });
  9599. exports.default = void 0;
  9600. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  9601. var _buildURL = _interopRequireDefault(__webpack_require__(/*! ../helpers/buildURL */ 44));
  9602. var _buildFullPath = _interopRequireDefault(__webpack_require__(/*! ../core/buildFullPath */ 46));
  9603. var _settle = _interopRequireDefault(__webpack_require__(/*! ../core/settle */ 49));
  9604. var _utils = __webpack_require__(/*! ../utils */ 45);
  9605. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  9606. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  9607. /**
  9608. * 返回可选值存在的配置
  9609. * @param {Array} keys - 可选值数组
  9610. * @param {Object} config2 - 配置
  9611. * @return {{}} - 存在的配置项
  9612. */
  9613. var mergeKeys = function mergeKeys(keys, config2) {
  9614. var config = {};
  9615. keys.forEach(function (prop) {
  9616. if (!(0, _utils.isUndefined)(config2[prop])) {
  9617. config[prop] = config2[prop];
  9618. }
  9619. });
  9620. return config;
  9621. };
  9622. var _default = function _default(config) {
  9623. return new Promise(function (resolve, reject) {
  9624. var fullPath = (0, _buildURL.default)((0, _buildFullPath.default)(config.baseURL, config.url), config.params);
  9625. var _config = {
  9626. url: fullPath,
  9627. header: config.header,
  9628. complete: function complete(response) {
  9629. config.fullPath = fullPath;
  9630. response.config = config;
  9631. try {
  9632. // 对可能字符串不是json 的情况容错
  9633. if (typeof response.data === 'string') {
  9634. response.data = JSON.parse(response.data);
  9635. }
  9636. // eslint-disable-next-line no-empty
  9637. } catch (e) {}
  9638. (0, _settle.default)(resolve, reject, response);
  9639. }
  9640. };
  9641. var requestTask;
  9642. if (config.method === 'UPLOAD') {
  9643. delete _config.header['content-type'];
  9644. delete _config.header['Content-Type'];
  9645. var otherConfig = {
  9646. filePath: config.filePath,
  9647. name: config.name
  9648. };
  9649. var optionalKeys = ['formData'];
  9650. requestTask = uni.uploadFile(_objectSpread(_objectSpread(_objectSpread({}, _config), otherConfig), mergeKeys(optionalKeys, config)));
  9651. } else if (config.method === 'DOWNLOAD') {
  9652. requestTask = uni.downloadFile(_config);
  9653. } else {
  9654. var _optionalKeys = ['data', 'method', 'timeout', 'dataType', 'responseType'];
  9655. requestTask = uni.request(_objectSpread(_objectSpread({}, _config), mergeKeys(_optionalKeys, config)));
  9656. }
  9657. if (config.getTask) {
  9658. config.getTask(requestTask, config);
  9659. }
  9660. });
  9661. };
  9662. exports.default = _default;
  9663. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  9664. /***/ }),
  9665. /* 44 */
  9666. /*!***************************************************************************************!*\
  9667. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/helpers/buildURL.js ***!
  9668. \***************************************************************************************/
  9669. /*! no static exports found */
  9670. /***/ (function(module, exports, __webpack_require__) {
  9671. "use strict";
  9672. var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 13);
  9673. Object.defineProperty(exports, "__esModule", {
  9674. value: true
  9675. });
  9676. exports.default = buildURL;
  9677. var utils = _interopRequireWildcard(__webpack_require__(/*! ../utils */ 45));
  9678. function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
  9679. function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
  9680. function encode(val) {
  9681. return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');
  9682. }
  9683. /**
  9684. * Build a URL by appending params to the end
  9685. *
  9686. * @param {string} url The base of the url (e.g., http://www.google.com)
  9687. * @param {object} [params] The params to be appended
  9688. * @returns {string} The formatted url
  9689. */
  9690. function buildURL(url, params) {
  9691. /* eslint no-param-reassign:0 */
  9692. if (!params) {
  9693. return url;
  9694. }
  9695. var serializedParams;
  9696. if (utils.isURLSearchParams(params)) {
  9697. serializedParams = params.toString();
  9698. } else {
  9699. var parts = [];
  9700. utils.forEach(params, function (val, key) {
  9701. if (val === null || typeof val === 'undefined') {
  9702. return;
  9703. }
  9704. if (utils.isArray(val)) {
  9705. key = "".concat(key, "[]");
  9706. } else {
  9707. val = [val];
  9708. }
  9709. utils.forEach(val, function (v) {
  9710. if (utils.isDate(v)) {
  9711. v = v.toISOString();
  9712. } else if (utils.isObject(v)) {
  9713. v = JSON.stringify(v);
  9714. }
  9715. parts.push("".concat(encode(key), "=").concat(encode(v)));
  9716. });
  9717. });
  9718. serializedParams = parts.join('&');
  9719. }
  9720. if (serializedParams) {
  9721. var hashmarkIndex = url.indexOf('#');
  9722. if (hashmarkIndex !== -1) {
  9723. url = url.slice(0, hashmarkIndex);
  9724. }
  9725. url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
  9726. }
  9727. return url;
  9728. }
  9729. /***/ }),
  9730. /* 45 */
  9731. /*!****************************************************************************!*\
  9732. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/utils.js ***!
  9733. \****************************************************************************/
  9734. /*! no static exports found */
  9735. /***/ (function(module, exports, __webpack_require__) {
  9736. "use strict";
  9737. // utils is a library of generic helper functions non-specific to axios
  9738. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9739. Object.defineProperty(exports, "__esModule", {
  9740. value: true
  9741. });
  9742. exports.deepMerge = deepMerge;
  9743. exports.forEach = forEach;
  9744. exports.isArray = isArray;
  9745. exports.isBoolean = isBoolean;
  9746. exports.isDate = isDate;
  9747. exports.isObject = isObject;
  9748. exports.isPlainObject = isPlainObject;
  9749. exports.isURLSearchParams = isURLSearchParams;
  9750. exports.isUndefined = isUndefined;
  9751. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  9752. var toString = Object.prototype.toString;
  9753. /**
  9754. * Determine if a value is an Array
  9755. *
  9756. * @param {Object} val The value to test
  9757. * @returns {boolean} True if value is an Array, otherwise false
  9758. */
  9759. function isArray(val) {
  9760. return toString.call(val) === '[object Array]';
  9761. }
  9762. /**
  9763. * Determine if a value is an Object
  9764. *
  9765. * @param {Object} val The value to test
  9766. * @returns {boolean} True if value is an Object, otherwise false
  9767. */
  9768. function isObject(val) {
  9769. return val !== null && (0, _typeof2.default)(val) === 'object';
  9770. }
  9771. /**
  9772. * Determine if a value is a Date
  9773. *
  9774. * @param {Object} val The value to test
  9775. * @returns {boolean} True if value is a Date, otherwise false
  9776. */
  9777. function isDate(val) {
  9778. return toString.call(val) === '[object Date]';
  9779. }
  9780. /**
  9781. * Determine if a value is a URLSearchParams object
  9782. *
  9783. * @param {Object} val The value to test
  9784. * @returns {boolean} True if value is a URLSearchParams object, otherwise false
  9785. */
  9786. function isURLSearchParams(val) {
  9787. return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;
  9788. }
  9789. /**
  9790. * Iterate over an Array or an Object invoking a function for each item.
  9791. *
  9792. * If `obj` is an Array callback will be called passing
  9793. * the value, index, and complete array for each item.
  9794. *
  9795. * If 'obj' is an Object callback will be called passing
  9796. * the value, key, and complete object for each property.
  9797. *
  9798. * @param {Object|Array} obj The object to iterate
  9799. * @param {Function} fn The callback to invoke for each item
  9800. */
  9801. function forEach(obj, fn) {
  9802. // Don't bother if no value provided
  9803. if (obj === null || typeof obj === 'undefined') {
  9804. return;
  9805. }
  9806. // Force an array if not already something iterable
  9807. if ((0, _typeof2.default)(obj) !== 'object') {
  9808. /* eslint no-param-reassign:0 */
  9809. obj = [obj];
  9810. }
  9811. if (isArray(obj)) {
  9812. // Iterate over array values
  9813. for (var i = 0, l = obj.length; i < l; i++) {
  9814. fn.call(null, obj[i], i, obj);
  9815. }
  9816. } else {
  9817. // Iterate over object keys
  9818. for (var key in obj) {
  9819. if (Object.prototype.hasOwnProperty.call(obj, key)) {
  9820. fn.call(null, obj[key], key, obj);
  9821. }
  9822. }
  9823. }
  9824. }
  9825. /**
  9826. * 是否为boolean 值
  9827. * @param val
  9828. * @returns {boolean}
  9829. */
  9830. function isBoolean(val) {
  9831. return typeof val === 'boolean';
  9832. }
  9833. /**
  9834. * 是否为真正的对象{} new Object
  9835. * @param {any} obj - 检测的对象
  9836. * @returns {boolean}
  9837. */
  9838. function isPlainObject(obj) {
  9839. return Object.prototype.toString.call(obj) === '[object Object]';
  9840. }
  9841. /**
  9842. * Function equal to merge with the difference being that no reference
  9843. * to original objects is kept.
  9844. *
  9845. * @see merge
  9846. * @param {Object} obj1 Object to merge
  9847. * @returns {Object} Result of all merge properties
  9848. */
  9849. function deepMerge( /* obj1, obj2, obj3, ... */
  9850. ) {
  9851. var result = {};
  9852. function assignValue(val, key) {
  9853. if ((0, _typeof2.default)(result[key]) === 'object' && (0, _typeof2.default)(val) === 'object') {
  9854. result[key] = deepMerge(result[key], val);
  9855. } else if ((0, _typeof2.default)(val) === 'object') {
  9856. result[key] = deepMerge({}, val);
  9857. } else {
  9858. result[key] = val;
  9859. }
  9860. }
  9861. for (var i = 0, l = arguments.length; i < l; i++) {
  9862. forEach(arguments[i], assignValue);
  9863. }
  9864. return result;
  9865. }
  9866. function isUndefined(val) {
  9867. return typeof val === 'undefined';
  9868. }
  9869. /***/ }),
  9870. /* 46 */
  9871. /*!*****************************************************************************************!*\
  9872. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/buildFullPath.js ***!
  9873. \*****************************************************************************************/
  9874. /*! no static exports found */
  9875. /***/ (function(module, exports, __webpack_require__) {
  9876. "use strict";
  9877. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  9878. Object.defineProperty(exports, "__esModule", {
  9879. value: true
  9880. });
  9881. exports.default = buildFullPath;
  9882. var _isAbsoluteURL = _interopRequireDefault(__webpack_require__(/*! ../helpers/isAbsoluteURL */ 47));
  9883. var _combineURLs = _interopRequireDefault(__webpack_require__(/*! ../helpers/combineURLs */ 48));
  9884. /**
  9885. * Creates a new URL by combining the baseURL with the requestedURL,
  9886. * only when the requestedURL is not already an absolute URL.
  9887. * If the requestURL is absolute, this function returns the requestedURL untouched.
  9888. *
  9889. * @param {string} baseURL The base URL
  9890. * @param {string} requestedURL Absolute or relative URL to combine
  9891. * @returns {string} The combined full path
  9892. */
  9893. function buildFullPath(baseURL, requestedURL) {
  9894. if (baseURL && !(0, _isAbsoluteURL.default)(requestedURL)) {
  9895. return (0, _combineURLs.default)(baseURL, requestedURL);
  9896. }
  9897. return requestedURL;
  9898. }
  9899. /***/ }),
  9900. /* 47 */
  9901. /*!********************************************************************************************!*\
  9902. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/helpers/isAbsoluteURL.js ***!
  9903. \********************************************************************************************/
  9904. /*! no static exports found */
  9905. /***/ (function(module, exports, __webpack_require__) {
  9906. "use strict";
  9907. /**
  9908. * Determines whether the specified URL is absolute
  9909. *
  9910. * @param {string} url The URL to test
  9911. * @returns {boolean} True if the specified URL is absolute, otherwise false
  9912. */
  9913. Object.defineProperty(exports, "__esModule", {
  9914. value: true
  9915. });
  9916. exports.default = isAbsoluteURL;
  9917. function isAbsoluteURL(url) {
  9918. // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
  9919. // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
  9920. // by any combination of letters, digits, plus, period, or hyphen.
  9921. return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
  9922. }
  9923. /***/ }),
  9924. /* 48 */
  9925. /*!******************************************************************************************!*\
  9926. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/helpers/combineURLs.js ***!
  9927. \******************************************************************************************/
  9928. /*! no static exports found */
  9929. /***/ (function(module, exports, __webpack_require__) {
  9930. "use strict";
  9931. /**
  9932. * Creates a new URL by combining the specified URLs
  9933. *
  9934. * @param {string} baseURL The base URL
  9935. * @param {string} relativeURL The relative URL
  9936. * @returns {string} The combined URL
  9937. */
  9938. Object.defineProperty(exports, "__esModule", {
  9939. value: true
  9940. });
  9941. exports.default = combineURLs;
  9942. function combineURLs(baseURL, relativeURL) {
  9943. return relativeURL ? "".concat(baseURL.replace(/\/+$/, ''), "/").concat(relativeURL.replace(/^\/+/, '')) : baseURL;
  9944. }
  9945. /***/ }),
  9946. /* 49 */
  9947. /*!**********************************************************************************!*\
  9948. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/settle.js ***!
  9949. \**********************************************************************************/
  9950. /*! no static exports found */
  9951. /***/ (function(module, exports, __webpack_require__) {
  9952. "use strict";
  9953. Object.defineProperty(exports, "__esModule", {
  9954. value: true
  9955. });
  9956. exports.default = settle;
  9957. /**
  9958. * Resolve or reject a Promise based on response status.
  9959. *
  9960. * @param {Function} resolve A function that resolves the promise.
  9961. * @param {Function} reject A function that rejects the promise.
  9962. * @param {object} response The response.
  9963. */
  9964. function settle(resolve, reject, response) {
  9965. var validateStatus = response.config.validateStatus;
  9966. var status = response.statusCode;
  9967. if (status && (!validateStatus || validateStatus(status))) {
  9968. resolve(response);
  9969. } else {
  9970. reject(response);
  9971. }
  9972. }
  9973. /***/ }),
  9974. /* 50 */
  9975. /*!**********************************************************************************************!*\
  9976. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/InterceptorManager.js ***!
  9977. \**********************************************************************************************/
  9978. /*! no static exports found */
  9979. /***/ (function(module, exports, __webpack_require__) {
  9980. "use strict";
  9981. Object.defineProperty(exports, "__esModule", {
  9982. value: true
  9983. });
  9984. exports.default = void 0;
  9985. function InterceptorManager() {
  9986. this.handlers = [];
  9987. }
  9988. /**
  9989. * Add a new interceptor to the stack
  9990. *
  9991. * @param {Function} fulfilled The function to handle `then` for a `Promise`
  9992. * @param {Function} rejected The function to handle `reject` for a `Promise`
  9993. *
  9994. * @return {Number} An ID used to remove interceptor later
  9995. */
  9996. InterceptorManager.prototype.use = function use(fulfilled, rejected) {
  9997. this.handlers.push({
  9998. fulfilled: fulfilled,
  9999. rejected: rejected
  10000. });
  10001. return this.handlers.length - 1;
  10002. };
  10003. /**
  10004. * Remove an interceptor from the stack
  10005. *
  10006. * @param {Number} id The ID that was returned by `use`
  10007. */
  10008. InterceptorManager.prototype.eject = function eject(id) {
  10009. if (this.handlers[id]) {
  10010. this.handlers[id] = null;
  10011. }
  10012. };
  10013. /**
  10014. * Iterate over all the registered interceptors
  10015. *
  10016. * This method is particularly useful for skipping over any
  10017. * interceptors that may have become `null` calling `eject`.
  10018. *
  10019. * @param {Function} fn The function to call for each interceptor
  10020. */
  10021. InterceptorManager.prototype.forEach = function forEach(fn) {
  10022. this.handlers.forEach(function (h) {
  10023. if (h !== null) {
  10024. fn(h);
  10025. }
  10026. });
  10027. };
  10028. var _default = InterceptorManager;
  10029. exports.default = _default;
  10030. /***/ }),
  10031. /* 51 */
  10032. /*!***************************************************************************************!*\
  10033. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/mergeConfig.js ***!
  10034. \***************************************************************************************/
  10035. /*! no static exports found */
  10036. /***/ (function(module, exports, __webpack_require__) {
  10037. "use strict";
  10038. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  10039. Object.defineProperty(exports, "__esModule", {
  10040. value: true
  10041. });
  10042. exports.default = void 0;
  10043. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  10044. var _utils = __webpack_require__(/*! ../utils */ 45);
  10045. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  10046. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  10047. /**
  10048. * 合并局部配置优先的配置,如果局部有该配置项则用局部,如果全局有该配置项则用全局
  10049. * @param {Array} keys - 配置项
  10050. * @param {Object} globalsConfig - 当前的全局配置
  10051. * @param {Object} config2 - 局部配置
  10052. * @return {{}}
  10053. */
  10054. var mergeKeys = function mergeKeys(keys, globalsConfig, config2) {
  10055. var config = {};
  10056. keys.forEach(function (prop) {
  10057. if (!(0, _utils.isUndefined)(config2[prop])) {
  10058. config[prop] = config2[prop];
  10059. } else if (!(0, _utils.isUndefined)(globalsConfig[prop])) {
  10060. config[prop] = globalsConfig[prop];
  10061. }
  10062. });
  10063. return config;
  10064. };
  10065. /**
  10066. *
  10067. * @param globalsConfig - 当前实例的全局配置
  10068. * @param config2 - 当前的局部配置
  10069. * @return - 合并后的配置
  10070. */
  10071. var _default = function _default(globalsConfig) {
  10072. var config2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  10073. var method = config2.method || globalsConfig.method || 'GET';
  10074. var config = {
  10075. baseURL: globalsConfig.baseURL || '',
  10076. method: method,
  10077. url: config2.url || '',
  10078. params: config2.params || {},
  10079. custom: _objectSpread(_objectSpread({}, globalsConfig.custom || {}), config2.custom || {}),
  10080. header: (0, _utils.deepMerge)(globalsConfig.header || {}, config2.header || {})
  10081. };
  10082. var defaultToConfig2Keys = ['getTask', 'validateStatus'];
  10083. config = _objectSpread(_objectSpread({}, config), mergeKeys(defaultToConfig2Keys, globalsConfig, config2));
  10084. // eslint-disable-next-line no-empty
  10085. if (method === 'DOWNLOAD') {} else if (method === 'UPLOAD') {
  10086. delete config.header['content-type'];
  10087. delete config.header['Content-Type'];
  10088. var uploadKeys = ['filePath', 'name', 'formData'];
  10089. uploadKeys.forEach(function (prop) {
  10090. if (!(0, _utils.isUndefined)(config2[prop])) {
  10091. config[prop] = config2[prop];
  10092. }
  10093. });
  10094. } else {
  10095. var defaultsKeys = ['data', 'timeout', 'dataType', 'responseType'];
  10096. config = _objectSpread(_objectSpread({}, config), mergeKeys(defaultsKeys, globalsConfig, config2));
  10097. }
  10098. return config;
  10099. };
  10100. exports.default = _default;
  10101. /***/ }),
  10102. /* 52 */
  10103. /*!************************************************************************************!*\
  10104. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/core/defaults.js ***!
  10105. \************************************************************************************/
  10106. /*! no static exports found */
  10107. /***/ (function(module, exports, __webpack_require__) {
  10108. "use strict";
  10109. Object.defineProperty(exports, "__esModule", {
  10110. value: true
  10111. });
  10112. exports.default = void 0;
  10113. /**
  10114. * 默认的全局配置
  10115. */
  10116. var _default = {
  10117. baseURL: '',
  10118. header: {},
  10119. method: 'GET',
  10120. dataType: 'json',
  10121. responseType: 'text',
  10122. custom: {},
  10123. timeout: 60000,
  10124. validateStatus: function validateStatus(status) {
  10125. return status >= 200 && status < 300;
  10126. }
  10127. };
  10128. exports.default = _default;
  10129. /***/ }),
  10130. /* 53 */
  10131. /*!**********************************************************************************!*\
  10132. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/luch-request/utils/clone.js ***!
  10133. \**********************************************************************************/
  10134. /*! no static exports found */
  10135. /***/ (function(module, exports, __webpack_require__) {
  10136. "use strict";
  10137. /* WEBPACK VAR INJECTION */(function(Buffer) {
  10138. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  10139. Object.defineProperty(exports, "__esModule", {
  10140. value: true
  10141. });
  10142. exports.default = void 0;
  10143. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  10144. /* eslint-disable */
  10145. var clone = function () {
  10146. 'use strict';
  10147. function _instanceof(obj, type) {
  10148. return type != null && obj instanceof type;
  10149. }
  10150. var nativeMap;
  10151. try {
  10152. nativeMap = Map;
  10153. } catch (_) {
  10154. // maybe a reference error because no `Map`. Give it a dummy value that no
  10155. // value will ever be an instanceof.
  10156. nativeMap = function nativeMap() {};
  10157. }
  10158. var nativeSet;
  10159. try {
  10160. nativeSet = Set;
  10161. } catch (_) {
  10162. nativeSet = function nativeSet() {};
  10163. }
  10164. var nativePromise;
  10165. try {
  10166. nativePromise = Promise;
  10167. } catch (_) {
  10168. nativePromise = function nativePromise() {};
  10169. }
  10170. /**
  10171. * Clones (copies) an Object using deep copying.
  10172. *
  10173. * This function supports circular references by default, but if you are certain
  10174. * there are no circular references in your object, you can save some CPU time
  10175. * by calling clone(obj, false).
  10176. *
  10177. * Caution: if `circular` is false and `parent` contains circular references,
  10178. * your program may enter an infinite loop and crash.
  10179. *
  10180. * @param `parent` - the object to be cloned
  10181. * @param `circular` - set to true if the object to be cloned may contain
  10182. * circular references. (optional - true by default)
  10183. * @param `depth` - set to a number if the object is only to be cloned to
  10184. * a particular depth. (optional - defaults to Infinity)
  10185. * @param `prototype` - sets the prototype to be used when cloning an object.
  10186. * (optional - defaults to parent prototype).
  10187. * @param `includeNonEnumerable` - set to true if the non-enumerable properties
  10188. * should be cloned as well. Non-enumerable properties on the prototype
  10189. * chain will be ignored. (optional - false by default)
  10190. */
  10191. function clone(parent, circular, depth, prototype, includeNonEnumerable) {
  10192. if ((0, _typeof2.default)(circular) === 'object') {
  10193. depth = circular.depth;
  10194. prototype = circular.prototype;
  10195. includeNonEnumerable = circular.includeNonEnumerable;
  10196. circular = circular.circular;
  10197. }
  10198. // maintain two arrays for circular references, where corresponding parents
  10199. // and children have the same index
  10200. var allParents = [];
  10201. var allChildren = [];
  10202. var useBuffer = typeof Buffer != 'undefined';
  10203. if (typeof circular == 'undefined') circular = true;
  10204. if (typeof depth == 'undefined') depth = Infinity;
  10205. // recurse this function so we don't reset allParents and allChildren
  10206. function _clone(parent, depth) {
  10207. // cloning null always returns null
  10208. if (parent === null) return null;
  10209. if (depth === 0) return parent;
  10210. var child;
  10211. var proto;
  10212. if ((0, _typeof2.default)(parent) != 'object') {
  10213. return parent;
  10214. }
  10215. if (_instanceof(parent, nativeMap)) {
  10216. child = new nativeMap();
  10217. } else if (_instanceof(parent, nativeSet)) {
  10218. child = new nativeSet();
  10219. } else if (_instanceof(parent, nativePromise)) {
  10220. child = new nativePromise(function (resolve, reject) {
  10221. parent.then(function (value) {
  10222. resolve(_clone(value, depth - 1));
  10223. }, function (err) {
  10224. reject(_clone(err, depth - 1));
  10225. });
  10226. });
  10227. } else if (clone.__isArray(parent)) {
  10228. child = [];
  10229. } else if (clone.__isRegExp(parent)) {
  10230. child = new RegExp(parent.source, __getRegExpFlags(parent));
  10231. if (parent.lastIndex) child.lastIndex = parent.lastIndex;
  10232. } else if (clone.__isDate(parent)) {
  10233. child = new Date(parent.getTime());
  10234. } else if (useBuffer && Buffer.isBuffer(parent)) {
  10235. if (Buffer.from) {
  10236. // Node.js >= 5.10.0
  10237. child = Buffer.from(parent);
  10238. } else {
  10239. // Older Node.js versions
  10240. child = new Buffer(parent.length);
  10241. parent.copy(child);
  10242. }
  10243. return child;
  10244. } else if (_instanceof(parent, Error)) {
  10245. child = Object.create(parent);
  10246. } else {
  10247. if (typeof prototype == 'undefined') {
  10248. proto = Object.getPrototypeOf(parent);
  10249. child = Object.create(proto);
  10250. } else {
  10251. child = Object.create(prototype);
  10252. proto = prototype;
  10253. }
  10254. }
  10255. if (circular) {
  10256. var index = allParents.indexOf(parent);
  10257. if (index != -1) {
  10258. return allChildren[index];
  10259. }
  10260. allParents.push(parent);
  10261. allChildren.push(child);
  10262. }
  10263. if (_instanceof(parent, nativeMap)) {
  10264. parent.forEach(function (value, key) {
  10265. var keyChild = _clone(key, depth - 1);
  10266. var valueChild = _clone(value, depth - 1);
  10267. child.set(keyChild, valueChild);
  10268. });
  10269. }
  10270. if (_instanceof(parent, nativeSet)) {
  10271. parent.forEach(function (value) {
  10272. var entryChild = _clone(value, depth - 1);
  10273. child.add(entryChild);
  10274. });
  10275. }
  10276. for (var i in parent) {
  10277. var attrs = Object.getOwnPropertyDescriptor(parent, i);
  10278. if (attrs) {
  10279. child[i] = _clone(parent[i], depth - 1);
  10280. }
  10281. try {
  10282. var objProperty = Object.getOwnPropertyDescriptor(parent, i);
  10283. if (objProperty.set === 'undefined') {
  10284. // no setter defined. Skip cloning this property
  10285. continue;
  10286. }
  10287. child[i] = _clone(parent[i], depth - 1);
  10288. } catch (e) {
  10289. if (e instanceof TypeError) {
  10290. // when in strict mode, TypeError will be thrown if child[i] property only has a getter
  10291. // we can't do anything about this, other than inform the user that this property cannot be set.
  10292. continue;
  10293. } else if (e instanceof ReferenceError) {
  10294. //this may happen in non strict mode
  10295. continue;
  10296. }
  10297. }
  10298. }
  10299. if (Object.getOwnPropertySymbols) {
  10300. var symbols = Object.getOwnPropertySymbols(parent);
  10301. for (var i = 0; i < symbols.length; i++) {
  10302. // Don't need to worry about cloning a symbol because it is a primitive,
  10303. // like a number or string.
  10304. var symbol = symbols[i];
  10305. var descriptor = Object.getOwnPropertyDescriptor(parent, symbol);
  10306. if (descriptor && !descriptor.enumerable && !includeNonEnumerable) {
  10307. continue;
  10308. }
  10309. child[symbol] = _clone(parent[symbol], depth - 1);
  10310. Object.defineProperty(child, symbol, descriptor);
  10311. }
  10312. }
  10313. if (includeNonEnumerable) {
  10314. var allPropertyNames = Object.getOwnPropertyNames(parent);
  10315. for (var i = 0; i < allPropertyNames.length; i++) {
  10316. var propertyName = allPropertyNames[i];
  10317. var descriptor = Object.getOwnPropertyDescriptor(parent, propertyName);
  10318. if (descriptor && descriptor.enumerable) {
  10319. continue;
  10320. }
  10321. child[propertyName] = _clone(parent[propertyName], depth - 1);
  10322. Object.defineProperty(child, propertyName, descriptor);
  10323. }
  10324. }
  10325. return child;
  10326. }
  10327. return _clone(parent, depth);
  10328. }
  10329. /**
  10330. * Simple flat clone using prototype, accepts only objects, usefull for property
  10331. * override on FLAT configuration object (no nested props).
  10332. *
  10333. * USE WITH CAUTION! This may not behave as you wish if you do not know how this
  10334. * works.
  10335. */
  10336. clone.clonePrototype = function clonePrototype(parent) {
  10337. if (parent === null) return null;
  10338. var c = function c() {};
  10339. c.prototype = parent;
  10340. return new c();
  10341. };
  10342. // private utility functions
  10343. function __objToStr(o) {
  10344. return Object.prototype.toString.call(o);
  10345. }
  10346. clone.__objToStr = __objToStr;
  10347. function __isDate(o) {
  10348. return (0, _typeof2.default)(o) === 'object' && __objToStr(o) === '[object Date]';
  10349. }
  10350. clone.__isDate = __isDate;
  10351. function __isArray(o) {
  10352. return (0, _typeof2.default)(o) === 'object' && __objToStr(o) === '[object Array]';
  10353. }
  10354. clone.__isArray = __isArray;
  10355. function __isRegExp(o) {
  10356. return (0, _typeof2.default)(o) === 'object' && __objToStr(o) === '[object RegExp]';
  10357. }
  10358. clone.__isRegExp = __isRegExp;
  10359. function __getRegExpFlags(re) {
  10360. var flags = '';
  10361. if (re.global) flags += 'g';
  10362. if (re.ignoreCase) flags += 'i';
  10363. if (re.multiline) flags += 'm';
  10364. return flags;
  10365. }
  10366. clone.__getRegExpFlags = __getRegExpFlags;
  10367. return clone;
  10368. }();
  10369. var _default = clone;
  10370. exports.default = _default;
  10371. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/buffer/index.js */ 54).Buffer))
  10372. /***/ }),
  10373. /* 54 */
  10374. /*!**************************************!*\
  10375. !*** ./node_modules/buffer/index.js ***!
  10376. \**************************************/
  10377. /*! no static exports found */
  10378. /***/ (function(module, exports, __webpack_require__) {
  10379. "use strict";
  10380. /* WEBPACK VAR INJECTION */(function(global) {/*!
  10381. * The buffer module from node.js, for the browser.
  10382. *
  10383. * @author Feross Aboukhadijeh <http://feross.org>
  10384. * @license MIT
  10385. */
  10386. /* eslint-disable no-proto */
  10387. var base64 = __webpack_require__(/*! base64-js */ 55)
  10388. var ieee754 = __webpack_require__(/*! ieee754 */ 56)
  10389. var isArray = __webpack_require__(/*! isarray */ 57)
  10390. exports.Buffer = Buffer
  10391. exports.SlowBuffer = SlowBuffer
  10392. exports.INSPECT_MAX_BYTES = 50
  10393. /**
  10394. * If `Buffer.TYPED_ARRAY_SUPPORT`:
  10395. * === true Use Uint8Array implementation (fastest)
  10396. * === false Use Object implementation (most compatible, even IE6)
  10397. *
  10398. * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,
  10399. * Opera 11.6+, iOS 4.2+.
  10400. *
  10401. * Due to various browser bugs, sometimes the Object implementation will be used even
  10402. * when the browser supports typed arrays.
  10403. *
  10404. * Note:
  10405. *
  10406. * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,
  10407. * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.
  10408. *
  10409. * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.
  10410. *
  10411. * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of
  10412. * incorrect length in some situations.
  10413. * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they
  10414. * get the Object implementation, which is slower but behaves correctly.
  10415. */
  10416. Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined
  10417. ? global.TYPED_ARRAY_SUPPORT
  10418. : typedArraySupport()
  10419. /*
  10420. * Export kMaxLength after typed array support is determined.
  10421. */
  10422. exports.kMaxLength = kMaxLength()
  10423. function typedArraySupport () {
  10424. try {
  10425. var arr = new Uint8Array(1)
  10426. arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}
  10427. return arr.foo() === 42 && // typed array instances can be augmented
  10428. typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`
  10429. arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`
  10430. } catch (e) {
  10431. return false
  10432. }
  10433. }
  10434. function kMaxLength () {
  10435. return Buffer.TYPED_ARRAY_SUPPORT
  10436. ? 0x7fffffff
  10437. : 0x3fffffff
  10438. }
  10439. function createBuffer (that, length) {
  10440. if (kMaxLength() < length) {
  10441. throw new RangeError('Invalid typed array length')
  10442. }
  10443. if (Buffer.TYPED_ARRAY_SUPPORT) {
  10444. // Return an augmented `Uint8Array` instance, for best performance
  10445. that = new Uint8Array(length)
  10446. that.__proto__ = Buffer.prototype
  10447. } else {
  10448. // Fallback: Return an object instance of the Buffer class
  10449. if (that === null) {
  10450. that = new Buffer(length)
  10451. }
  10452. that.length = length
  10453. }
  10454. return that
  10455. }
  10456. /**
  10457. * The Buffer constructor returns instances of `Uint8Array` that have their
  10458. * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of
  10459. * `Uint8Array`, so the returned instances will have all the node `Buffer` methods
  10460. * and the `Uint8Array` methods. Square bracket notation works as expected -- it
  10461. * returns a single octet.
  10462. *
  10463. * The `Uint8Array` prototype remains unmodified.
  10464. */
  10465. function Buffer (arg, encodingOrOffset, length) {
  10466. if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {
  10467. return new Buffer(arg, encodingOrOffset, length)
  10468. }
  10469. // Common case.
  10470. if (typeof arg === 'number') {
  10471. if (typeof encodingOrOffset === 'string') {
  10472. throw new Error(
  10473. 'If encoding is specified then the first argument must be a string'
  10474. )
  10475. }
  10476. return allocUnsafe(this, arg)
  10477. }
  10478. return from(this, arg, encodingOrOffset, length)
  10479. }
  10480. Buffer.poolSize = 8192 // not used by this implementation
  10481. // TODO: Legacy, not needed anymore. Remove in next major version.
  10482. Buffer._augment = function (arr) {
  10483. arr.__proto__ = Buffer.prototype
  10484. return arr
  10485. }
  10486. function from (that, value, encodingOrOffset, length) {
  10487. if (typeof value === 'number') {
  10488. throw new TypeError('"value" argument must not be a number')
  10489. }
  10490. if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {
  10491. return fromArrayBuffer(that, value, encodingOrOffset, length)
  10492. }
  10493. if (typeof value === 'string') {
  10494. return fromString(that, value, encodingOrOffset)
  10495. }
  10496. return fromObject(that, value)
  10497. }
  10498. /**
  10499. * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError
  10500. * if value is a number.
  10501. * Buffer.from(str[, encoding])
  10502. * Buffer.from(array)
  10503. * Buffer.from(buffer)
  10504. * Buffer.from(arrayBuffer[, byteOffset[, length]])
  10505. **/
  10506. Buffer.from = function (value, encodingOrOffset, length) {
  10507. return from(null, value, encodingOrOffset, length)
  10508. }
  10509. if (Buffer.TYPED_ARRAY_SUPPORT) {
  10510. Buffer.prototype.__proto__ = Uint8Array.prototype
  10511. Buffer.__proto__ = Uint8Array
  10512. if (typeof Symbol !== 'undefined' && Symbol.species &&
  10513. Buffer[Symbol.species] === Buffer) {
  10514. // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
  10515. Object.defineProperty(Buffer, Symbol.species, {
  10516. value: null,
  10517. configurable: true
  10518. })
  10519. }
  10520. }
  10521. function assertSize (size) {
  10522. if (typeof size !== 'number') {
  10523. throw new TypeError('"size" argument must be a number')
  10524. } else if (size < 0) {
  10525. throw new RangeError('"size" argument must not be negative')
  10526. }
  10527. }
  10528. function alloc (that, size, fill, encoding) {
  10529. assertSize(size)
  10530. if (size <= 0) {
  10531. return createBuffer(that, size)
  10532. }
  10533. if (fill !== undefined) {
  10534. // Only pay attention to encoding if it's a string. This
  10535. // prevents accidentally sending in a number that would
  10536. // be interpretted as a start offset.
  10537. return typeof encoding === 'string'
  10538. ? createBuffer(that, size).fill(fill, encoding)
  10539. : createBuffer(that, size).fill(fill)
  10540. }
  10541. return createBuffer(that, size)
  10542. }
  10543. /**
  10544. * Creates a new filled Buffer instance.
  10545. * alloc(size[, fill[, encoding]])
  10546. **/
  10547. Buffer.alloc = function (size, fill, encoding) {
  10548. return alloc(null, size, fill, encoding)
  10549. }
  10550. function allocUnsafe (that, size) {
  10551. assertSize(size)
  10552. that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)
  10553. if (!Buffer.TYPED_ARRAY_SUPPORT) {
  10554. for (var i = 0; i < size; ++i) {
  10555. that[i] = 0
  10556. }
  10557. }
  10558. return that
  10559. }
  10560. /**
  10561. * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.
  10562. * */
  10563. Buffer.allocUnsafe = function (size) {
  10564. return allocUnsafe(null, size)
  10565. }
  10566. /**
  10567. * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.
  10568. */
  10569. Buffer.allocUnsafeSlow = function (size) {
  10570. return allocUnsafe(null, size)
  10571. }
  10572. function fromString (that, string, encoding) {
  10573. if (typeof encoding !== 'string' || encoding === '') {
  10574. encoding = 'utf8'
  10575. }
  10576. if (!Buffer.isEncoding(encoding)) {
  10577. throw new TypeError('"encoding" must be a valid string encoding')
  10578. }
  10579. var length = byteLength(string, encoding) | 0
  10580. that = createBuffer(that, length)
  10581. var actual = that.write(string, encoding)
  10582. if (actual !== length) {
  10583. // Writing a hex string, for example, that contains invalid characters will
  10584. // cause everything after the first invalid character to be ignored. (e.g.
  10585. // 'abxxcd' will be treated as 'ab')
  10586. that = that.slice(0, actual)
  10587. }
  10588. return that
  10589. }
  10590. function fromArrayLike (that, array) {
  10591. var length = array.length < 0 ? 0 : checked(array.length) | 0
  10592. that = createBuffer(that, length)
  10593. for (var i = 0; i < length; i += 1) {
  10594. that[i] = array[i] & 255
  10595. }
  10596. return that
  10597. }
  10598. function fromArrayBuffer (that, array, byteOffset, length) {
  10599. array.byteLength // this throws if `array` is not a valid ArrayBuffer
  10600. if (byteOffset < 0 || array.byteLength < byteOffset) {
  10601. throw new RangeError('\'offset\' is out of bounds')
  10602. }
  10603. if (array.byteLength < byteOffset + (length || 0)) {
  10604. throw new RangeError('\'length\' is out of bounds')
  10605. }
  10606. if (byteOffset === undefined && length === undefined) {
  10607. array = new Uint8Array(array)
  10608. } else if (length === undefined) {
  10609. array = new Uint8Array(array, byteOffset)
  10610. } else {
  10611. array = new Uint8Array(array, byteOffset, length)
  10612. }
  10613. if (Buffer.TYPED_ARRAY_SUPPORT) {
  10614. // Return an augmented `Uint8Array` instance, for best performance
  10615. that = array
  10616. that.__proto__ = Buffer.prototype
  10617. } else {
  10618. // Fallback: Return an object instance of the Buffer class
  10619. that = fromArrayLike(that, array)
  10620. }
  10621. return that
  10622. }
  10623. function fromObject (that, obj) {
  10624. if (Buffer.isBuffer(obj)) {
  10625. var len = checked(obj.length) | 0
  10626. that = createBuffer(that, len)
  10627. if (that.length === 0) {
  10628. return that
  10629. }
  10630. obj.copy(that, 0, 0, len)
  10631. return that
  10632. }
  10633. if (obj) {
  10634. if ((typeof ArrayBuffer !== 'undefined' &&
  10635. obj.buffer instanceof ArrayBuffer) || 'length' in obj) {
  10636. if (typeof obj.length !== 'number' || isnan(obj.length)) {
  10637. return createBuffer(that, 0)
  10638. }
  10639. return fromArrayLike(that, obj)
  10640. }
  10641. if (obj.type === 'Buffer' && isArray(obj.data)) {
  10642. return fromArrayLike(that, obj.data)
  10643. }
  10644. }
  10645. throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')
  10646. }
  10647. function checked (length) {
  10648. // Note: cannot use `length < kMaxLength()` here because that fails when
  10649. // length is NaN (which is otherwise coerced to zero.)
  10650. if (length >= kMaxLength()) {
  10651. throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
  10652. 'size: 0x' + kMaxLength().toString(16) + ' bytes')
  10653. }
  10654. return length | 0
  10655. }
  10656. function SlowBuffer (length) {
  10657. if (+length != length) { // eslint-disable-line eqeqeq
  10658. length = 0
  10659. }
  10660. return Buffer.alloc(+length)
  10661. }
  10662. Buffer.isBuffer = function isBuffer (b) {
  10663. return !!(b != null && b._isBuffer)
  10664. }
  10665. Buffer.compare = function compare (a, b) {
  10666. if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
  10667. throw new TypeError('Arguments must be Buffers')
  10668. }
  10669. if (a === b) return 0
  10670. var x = a.length
  10671. var y = b.length
  10672. for (var i = 0, len = Math.min(x, y); i < len; ++i) {
  10673. if (a[i] !== b[i]) {
  10674. x = a[i]
  10675. y = b[i]
  10676. break
  10677. }
  10678. }
  10679. if (x < y) return -1
  10680. if (y < x) return 1
  10681. return 0
  10682. }
  10683. Buffer.isEncoding = function isEncoding (encoding) {
  10684. switch (String(encoding).toLowerCase()) {
  10685. case 'hex':
  10686. case 'utf8':
  10687. case 'utf-8':
  10688. case 'ascii':
  10689. case 'latin1':
  10690. case 'binary':
  10691. case 'base64':
  10692. case 'ucs2':
  10693. case 'ucs-2':
  10694. case 'utf16le':
  10695. case 'utf-16le':
  10696. return true
  10697. default:
  10698. return false
  10699. }
  10700. }
  10701. Buffer.concat = function concat (list, length) {
  10702. if (!isArray(list)) {
  10703. throw new TypeError('"list" argument must be an Array of Buffers')
  10704. }
  10705. if (list.length === 0) {
  10706. return Buffer.alloc(0)
  10707. }
  10708. var i
  10709. if (length === undefined) {
  10710. length = 0
  10711. for (i = 0; i < list.length; ++i) {
  10712. length += list[i].length
  10713. }
  10714. }
  10715. var buffer = Buffer.allocUnsafe(length)
  10716. var pos = 0
  10717. for (i = 0; i < list.length; ++i) {
  10718. var buf = list[i]
  10719. if (!Buffer.isBuffer(buf)) {
  10720. throw new TypeError('"list" argument must be an Array of Buffers')
  10721. }
  10722. buf.copy(buffer, pos)
  10723. pos += buf.length
  10724. }
  10725. return buffer
  10726. }
  10727. function byteLength (string, encoding) {
  10728. if (Buffer.isBuffer(string)) {
  10729. return string.length
  10730. }
  10731. if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&
  10732. (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {
  10733. return string.byteLength
  10734. }
  10735. if (typeof string !== 'string') {
  10736. string = '' + string
  10737. }
  10738. var len = string.length
  10739. if (len === 0) return 0
  10740. // Use a for loop to avoid recursion
  10741. var loweredCase = false
  10742. for (;;) {
  10743. switch (encoding) {
  10744. case 'ascii':
  10745. case 'latin1':
  10746. case 'binary':
  10747. return len
  10748. case 'utf8':
  10749. case 'utf-8':
  10750. case undefined:
  10751. return utf8ToBytes(string).length
  10752. case 'ucs2':
  10753. case 'ucs-2':
  10754. case 'utf16le':
  10755. case 'utf-16le':
  10756. return len * 2
  10757. case 'hex':
  10758. return len >>> 1
  10759. case 'base64':
  10760. return base64ToBytes(string).length
  10761. default:
  10762. if (loweredCase) return utf8ToBytes(string).length // assume utf8
  10763. encoding = ('' + encoding).toLowerCase()
  10764. loweredCase = true
  10765. }
  10766. }
  10767. }
  10768. Buffer.byteLength = byteLength
  10769. function slowToString (encoding, start, end) {
  10770. var loweredCase = false
  10771. // No need to verify that "this.length <= MAX_UINT32" since it's a read-only
  10772. // property of a typed array.
  10773. // This behaves neither like String nor Uint8Array in that we set start/end
  10774. // to their upper/lower bounds if the value passed is out of range.
  10775. // undefined is handled specially as per ECMA-262 6th Edition,
  10776. // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
  10777. if (start === undefined || start < 0) {
  10778. start = 0
  10779. }
  10780. // Return early if start > this.length. Done here to prevent potential uint32
  10781. // coercion fail below.
  10782. if (start > this.length) {
  10783. return ''
  10784. }
  10785. if (end === undefined || end > this.length) {
  10786. end = this.length
  10787. }
  10788. if (end <= 0) {
  10789. return ''
  10790. }
  10791. // Force coersion to uint32. This will also coerce falsey/NaN values to 0.
  10792. end >>>= 0
  10793. start >>>= 0
  10794. if (end <= start) {
  10795. return ''
  10796. }
  10797. if (!encoding) encoding = 'utf8'
  10798. while (true) {
  10799. switch (encoding) {
  10800. case 'hex':
  10801. return hexSlice(this, start, end)
  10802. case 'utf8':
  10803. case 'utf-8':
  10804. return utf8Slice(this, start, end)
  10805. case 'ascii':
  10806. return asciiSlice(this, start, end)
  10807. case 'latin1':
  10808. case 'binary':
  10809. return latin1Slice(this, start, end)
  10810. case 'base64':
  10811. return base64Slice(this, start, end)
  10812. case 'ucs2':
  10813. case 'ucs-2':
  10814. case 'utf16le':
  10815. case 'utf-16le':
  10816. return utf16leSlice(this, start, end)
  10817. default:
  10818. if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
  10819. encoding = (encoding + '').toLowerCase()
  10820. loweredCase = true
  10821. }
  10822. }
  10823. }
  10824. // The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect
  10825. // Buffer instances.
  10826. Buffer.prototype._isBuffer = true
  10827. function swap (b, n, m) {
  10828. var i = b[n]
  10829. b[n] = b[m]
  10830. b[m] = i
  10831. }
  10832. Buffer.prototype.swap16 = function swap16 () {
  10833. var len = this.length
  10834. if (len % 2 !== 0) {
  10835. throw new RangeError('Buffer size must be a multiple of 16-bits')
  10836. }
  10837. for (var i = 0; i < len; i += 2) {
  10838. swap(this, i, i + 1)
  10839. }
  10840. return this
  10841. }
  10842. Buffer.prototype.swap32 = function swap32 () {
  10843. var len = this.length
  10844. if (len % 4 !== 0) {
  10845. throw new RangeError('Buffer size must be a multiple of 32-bits')
  10846. }
  10847. for (var i = 0; i < len; i += 4) {
  10848. swap(this, i, i + 3)
  10849. swap(this, i + 1, i + 2)
  10850. }
  10851. return this
  10852. }
  10853. Buffer.prototype.swap64 = function swap64 () {
  10854. var len = this.length
  10855. if (len % 8 !== 0) {
  10856. throw new RangeError('Buffer size must be a multiple of 64-bits')
  10857. }
  10858. for (var i = 0; i < len; i += 8) {
  10859. swap(this, i, i + 7)
  10860. swap(this, i + 1, i + 6)
  10861. swap(this, i + 2, i + 5)
  10862. swap(this, i + 3, i + 4)
  10863. }
  10864. return this
  10865. }
  10866. Buffer.prototype.toString = function toString () {
  10867. var length = this.length | 0
  10868. if (length === 0) return ''
  10869. if (arguments.length === 0) return utf8Slice(this, 0, length)
  10870. return slowToString.apply(this, arguments)
  10871. }
  10872. Buffer.prototype.equals = function equals (b) {
  10873. if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')
  10874. if (this === b) return true
  10875. return Buffer.compare(this, b) === 0
  10876. }
  10877. Buffer.prototype.inspect = function inspect () {
  10878. var str = ''
  10879. var max = exports.INSPECT_MAX_BYTES
  10880. if (this.length > 0) {
  10881. str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')
  10882. if (this.length > max) str += ' ... '
  10883. }
  10884. return '<Buffer ' + str + '>'
  10885. }
  10886. Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {
  10887. if (!Buffer.isBuffer(target)) {
  10888. throw new TypeError('Argument must be a Buffer')
  10889. }
  10890. if (start === undefined) {
  10891. start = 0
  10892. }
  10893. if (end === undefined) {
  10894. end = target ? target.length : 0
  10895. }
  10896. if (thisStart === undefined) {
  10897. thisStart = 0
  10898. }
  10899. if (thisEnd === undefined) {
  10900. thisEnd = this.length
  10901. }
  10902. if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
  10903. throw new RangeError('out of range index')
  10904. }
  10905. if (thisStart >= thisEnd && start >= end) {
  10906. return 0
  10907. }
  10908. if (thisStart >= thisEnd) {
  10909. return -1
  10910. }
  10911. if (start >= end) {
  10912. return 1
  10913. }
  10914. start >>>= 0
  10915. end >>>= 0
  10916. thisStart >>>= 0
  10917. thisEnd >>>= 0
  10918. if (this === target) return 0
  10919. var x = thisEnd - thisStart
  10920. var y = end - start
  10921. var len = Math.min(x, y)
  10922. var thisCopy = this.slice(thisStart, thisEnd)
  10923. var targetCopy = target.slice(start, end)
  10924. for (var i = 0; i < len; ++i) {
  10925. if (thisCopy[i] !== targetCopy[i]) {
  10926. x = thisCopy[i]
  10927. y = targetCopy[i]
  10928. break
  10929. }
  10930. }
  10931. if (x < y) return -1
  10932. if (y < x) return 1
  10933. return 0
  10934. }
  10935. // Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
  10936. // OR the last index of `val` in `buffer` at offset <= `byteOffset`.
  10937. //
  10938. // Arguments:
  10939. // - buffer - a Buffer to search
  10940. // - val - a string, Buffer, or number
  10941. // - byteOffset - an index into `buffer`; will be clamped to an int32
  10942. // - encoding - an optional encoding, relevant is val is a string
  10943. // - dir - true for indexOf, false for lastIndexOf
  10944. function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
  10945. // Empty buffer means no match
  10946. if (buffer.length === 0) return -1
  10947. // Normalize byteOffset
  10948. if (typeof byteOffset === 'string') {
  10949. encoding = byteOffset
  10950. byteOffset = 0
  10951. } else if (byteOffset > 0x7fffffff) {
  10952. byteOffset = 0x7fffffff
  10953. } else if (byteOffset < -0x80000000) {
  10954. byteOffset = -0x80000000
  10955. }
  10956. byteOffset = +byteOffset // Coerce to Number.
  10957. if (isNaN(byteOffset)) {
  10958. // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
  10959. byteOffset = dir ? 0 : (buffer.length - 1)
  10960. }
  10961. // Normalize byteOffset: negative offsets start from the end of the buffer
  10962. if (byteOffset < 0) byteOffset = buffer.length + byteOffset
  10963. if (byteOffset >= buffer.length) {
  10964. if (dir) return -1
  10965. else byteOffset = buffer.length - 1
  10966. } else if (byteOffset < 0) {
  10967. if (dir) byteOffset = 0
  10968. else return -1
  10969. }
  10970. // Normalize val
  10971. if (typeof val === 'string') {
  10972. val = Buffer.from(val, encoding)
  10973. }
  10974. // Finally, search either indexOf (if dir is true) or lastIndexOf
  10975. if (Buffer.isBuffer(val)) {
  10976. // Special case: looking for empty string/buffer always fails
  10977. if (val.length === 0) {
  10978. return -1
  10979. }
  10980. return arrayIndexOf(buffer, val, byteOffset, encoding, dir)
  10981. } else if (typeof val === 'number') {
  10982. val = val & 0xFF // Search for a byte value [0-255]
  10983. if (Buffer.TYPED_ARRAY_SUPPORT &&
  10984. typeof Uint8Array.prototype.indexOf === 'function') {
  10985. if (dir) {
  10986. return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)
  10987. } else {
  10988. return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)
  10989. }
  10990. }
  10991. return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)
  10992. }
  10993. throw new TypeError('val must be string, number or Buffer')
  10994. }
  10995. function arrayIndexOf (arr, val, byteOffset, encoding, dir) {
  10996. var indexSize = 1
  10997. var arrLength = arr.length
  10998. var valLength = val.length
  10999. if (encoding !== undefined) {
  11000. encoding = String(encoding).toLowerCase()
  11001. if (encoding === 'ucs2' || encoding === 'ucs-2' ||
  11002. encoding === 'utf16le' || encoding === 'utf-16le') {
  11003. if (arr.length < 2 || val.length < 2) {
  11004. return -1
  11005. }
  11006. indexSize = 2
  11007. arrLength /= 2
  11008. valLength /= 2
  11009. byteOffset /= 2
  11010. }
  11011. }
  11012. function read (buf, i) {
  11013. if (indexSize === 1) {
  11014. return buf[i]
  11015. } else {
  11016. return buf.readUInt16BE(i * indexSize)
  11017. }
  11018. }
  11019. var i
  11020. if (dir) {
  11021. var foundIndex = -1
  11022. for (i = byteOffset; i < arrLength; i++) {
  11023. if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
  11024. if (foundIndex === -1) foundIndex = i
  11025. if (i - foundIndex + 1 === valLength) return foundIndex * indexSize
  11026. } else {
  11027. if (foundIndex !== -1) i -= i - foundIndex
  11028. foundIndex = -1
  11029. }
  11030. }
  11031. } else {
  11032. if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength
  11033. for (i = byteOffset; i >= 0; i--) {
  11034. var found = true
  11035. for (var j = 0; j < valLength; j++) {
  11036. if (read(arr, i + j) !== read(val, j)) {
  11037. found = false
  11038. break
  11039. }
  11040. }
  11041. if (found) return i
  11042. }
  11043. }
  11044. return -1
  11045. }
  11046. Buffer.prototype.includes = function includes (val, byteOffset, encoding) {
  11047. return this.indexOf(val, byteOffset, encoding) !== -1
  11048. }
  11049. Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {
  11050. return bidirectionalIndexOf(this, val, byteOffset, encoding, true)
  11051. }
  11052. Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {
  11053. return bidirectionalIndexOf(this, val, byteOffset, encoding, false)
  11054. }
  11055. function hexWrite (buf, string, offset, length) {
  11056. offset = Number(offset) || 0
  11057. var remaining = buf.length - offset
  11058. if (!length) {
  11059. length = remaining
  11060. } else {
  11061. length = Number(length)
  11062. if (length > remaining) {
  11063. length = remaining
  11064. }
  11065. }
  11066. // must be an even number of digits
  11067. var strLen = string.length
  11068. if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')
  11069. if (length > strLen / 2) {
  11070. length = strLen / 2
  11071. }
  11072. for (var i = 0; i < length; ++i) {
  11073. var parsed = parseInt(string.substr(i * 2, 2), 16)
  11074. if (isNaN(parsed)) return i
  11075. buf[offset + i] = parsed
  11076. }
  11077. return i
  11078. }
  11079. function utf8Write (buf, string, offset, length) {
  11080. return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)
  11081. }
  11082. function asciiWrite (buf, string, offset, length) {
  11083. return blitBuffer(asciiToBytes(string), buf, offset, length)
  11084. }
  11085. function latin1Write (buf, string, offset, length) {
  11086. return asciiWrite(buf, string, offset, length)
  11087. }
  11088. function base64Write (buf, string, offset, length) {
  11089. return blitBuffer(base64ToBytes(string), buf, offset, length)
  11090. }
  11091. function ucs2Write (buf, string, offset, length) {
  11092. return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)
  11093. }
  11094. Buffer.prototype.write = function write (string, offset, length, encoding) {
  11095. // Buffer#write(string)
  11096. if (offset === undefined) {
  11097. encoding = 'utf8'
  11098. length = this.length
  11099. offset = 0
  11100. // Buffer#write(string, encoding)
  11101. } else if (length === undefined && typeof offset === 'string') {
  11102. encoding = offset
  11103. length = this.length
  11104. offset = 0
  11105. // Buffer#write(string, offset[, length][, encoding])
  11106. } else if (isFinite(offset)) {
  11107. offset = offset | 0
  11108. if (isFinite(length)) {
  11109. length = length | 0
  11110. if (encoding === undefined) encoding = 'utf8'
  11111. } else {
  11112. encoding = length
  11113. length = undefined
  11114. }
  11115. // legacy write(string, encoding, offset, length) - remove in v0.13
  11116. } else {
  11117. throw new Error(
  11118. 'Buffer.write(string, encoding, offset[, length]) is no longer supported'
  11119. )
  11120. }
  11121. var remaining = this.length - offset
  11122. if (length === undefined || length > remaining) length = remaining
  11123. if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {
  11124. throw new RangeError('Attempt to write outside buffer bounds')
  11125. }
  11126. if (!encoding) encoding = 'utf8'
  11127. var loweredCase = false
  11128. for (;;) {
  11129. switch (encoding) {
  11130. case 'hex':
  11131. return hexWrite(this, string, offset, length)
  11132. case 'utf8':
  11133. case 'utf-8':
  11134. return utf8Write(this, string, offset, length)
  11135. case 'ascii':
  11136. return asciiWrite(this, string, offset, length)
  11137. case 'latin1':
  11138. case 'binary':
  11139. return latin1Write(this, string, offset, length)
  11140. case 'base64':
  11141. // Warning: maxLength not taken into account in base64Write
  11142. return base64Write(this, string, offset, length)
  11143. case 'ucs2':
  11144. case 'ucs-2':
  11145. case 'utf16le':
  11146. case 'utf-16le':
  11147. return ucs2Write(this, string, offset, length)
  11148. default:
  11149. if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
  11150. encoding = ('' + encoding).toLowerCase()
  11151. loweredCase = true
  11152. }
  11153. }
  11154. }
  11155. Buffer.prototype.toJSON = function toJSON () {
  11156. return {
  11157. type: 'Buffer',
  11158. data: Array.prototype.slice.call(this._arr || this, 0)
  11159. }
  11160. }
  11161. function base64Slice (buf, start, end) {
  11162. if (start === 0 && end === buf.length) {
  11163. return base64.fromByteArray(buf)
  11164. } else {
  11165. return base64.fromByteArray(buf.slice(start, end))
  11166. }
  11167. }
  11168. function utf8Slice (buf, start, end) {
  11169. end = Math.min(buf.length, end)
  11170. var res = []
  11171. var i = start
  11172. while (i < end) {
  11173. var firstByte = buf[i]
  11174. var codePoint = null
  11175. var bytesPerSequence = (firstByte > 0xEF) ? 4
  11176. : (firstByte > 0xDF) ? 3
  11177. : (firstByte > 0xBF) ? 2
  11178. : 1
  11179. if (i + bytesPerSequence <= end) {
  11180. var secondByte, thirdByte, fourthByte, tempCodePoint
  11181. switch (bytesPerSequence) {
  11182. case 1:
  11183. if (firstByte < 0x80) {
  11184. codePoint = firstByte
  11185. }
  11186. break
  11187. case 2:
  11188. secondByte = buf[i + 1]
  11189. if ((secondByte & 0xC0) === 0x80) {
  11190. tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)
  11191. if (tempCodePoint > 0x7F) {
  11192. codePoint = tempCodePoint
  11193. }
  11194. }
  11195. break
  11196. case 3:
  11197. secondByte = buf[i + 1]
  11198. thirdByte = buf[i + 2]
  11199. if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {
  11200. tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)
  11201. if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {
  11202. codePoint = tempCodePoint
  11203. }
  11204. }
  11205. break
  11206. case 4:
  11207. secondByte = buf[i + 1]
  11208. thirdByte = buf[i + 2]
  11209. fourthByte = buf[i + 3]
  11210. if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {
  11211. tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)
  11212. if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {
  11213. codePoint = tempCodePoint
  11214. }
  11215. }
  11216. }
  11217. }
  11218. if (codePoint === null) {
  11219. // we did not generate a valid codePoint so insert a
  11220. // replacement char (U+FFFD) and advance only 1 byte
  11221. codePoint = 0xFFFD
  11222. bytesPerSequence = 1
  11223. } else if (codePoint > 0xFFFF) {
  11224. // encode to utf16 (surrogate pair dance)
  11225. codePoint -= 0x10000
  11226. res.push(codePoint >>> 10 & 0x3FF | 0xD800)
  11227. codePoint = 0xDC00 | codePoint & 0x3FF
  11228. }
  11229. res.push(codePoint)
  11230. i += bytesPerSequence
  11231. }
  11232. return decodeCodePointsArray(res)
  11233. }
  11234. // Based on http://stackoverflow.com/a/22747272/680742, the browser with
  11235. // the lowest limit is Chrome, with 0x10000 args.
  11236. // We go 1 magnitude less, for safety
  11237. var MAX_ARGUMENTS_LENGTH = 0x1000
  11238. function decodeCodePointsArray (codePoints) {
  11239. var len = codePoints.length
  11240. if (len <= MAX_ARGUMENTS_LENGTH) {
  11241. return String.fromCharCode.apply(String, codePoints) // avoid extra slice()
  11242. }
  11243. // Decode in chunks to avoid "call stack size exceeded".
  11244. var res = ''
  11245. var i = 0
  11246. while (i < len) {
  11247. res += String.fromCharCode.apply(
  11248. String,
  11249. codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)
  11250. )
  11251. }
  11252. return res
  11253. }
  11254. function asciiSlice (buf, start, end) {
  11255. var ret = ''
  11256. end = Math.min(buf.length, end)
  11257. for (var i = start; i < end; ++i) {
  11258. ret += String.fromCharCode(buf[i] & 0x7F)
  11259. }
  11260. return ret
  11261. }
  11262. function latin1Slice (buf, start, end) {
  11263. var ret = ''
  11264. end = Math.min(buf.length, end)
  11265. for (var i = start; i < end; ++i) {
  11266. ret += String.fromCharCode(buf[i])
  11267. }
  11268. return ret
  11269. }
  11270. function hexSlice (buf, start, end) {
  11271. var len = buf.length
  11272. if (!start || start < 0) start = 0
  11273. if (!end || end < 0 || end > len) end = len
  11274. var out = ''
  11275. for (var i = start; i < end; ++i) {
  11276. out += toHex(buf[i])
  11277. }
  11278. return out
  11279. }
  11280. function utf16leSlice (buf, start, end) {
  11281. var bytes = buf.slice(start, end)
  11282. var res = ''
  11283. for (var i = 0; i < bytes.length; i += 2) {
  11284. res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)
  11285. }
  11286. return res
  11287. }
  11288. Buffer.prototype.slice = function slice (start, end) {
  11289. var len = this.length
  11290. start = ~~start
  11291. end = end === undefined ? len : ~~end
  11292. if (start < 0) {
  11293. start += len
  11294. if (start < 0) start = 0
  11295. } else if (start > len) {
  11296. start = len
  11297. }
  11298. if (end < 0) {
  11299. end += len
  11300. if (end < 0) end = 0
  11301. } else if (end > len) {
  11302. end = len
  11303. }
  11304. if (end < start) end = start
  11305. var newBuf
  11306. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11307. newBuf = this.subarray(start, end)
  11308. newBuf.__proto__ = Buffer.prototype
  11309. } else {
  11310. var sliceLen = end - start
  11311. newBuf = new Buffer(sliceLen, undefined)
  11312. for (var i = 0; i < sliceLen; ++i) {
  11313. newBuf[i] = this[i + start]
  11314. }
  11315. }
  11316. return newBuf
  11317. }
  11318. /*
  11319. * Need to make sure that buffer isn't trying to write out of bounds.
  11320. */
  11321. function checkOffset (offset, ext, length) {
  11322. if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')
  11323. if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')
  11324. }
  11325. Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {
  11326. offset = offset | 0
  11327. byteLength = byteLength | 0
  11328. if (!noAssert) checkOffset(offset, byteLength, this.length)
  11329. var val = this[offset]
  11330. var mul = 1
  11331. var i = 0
  11332. while (++i < byteLength && (mul *= 0x100)) {
  11333. val += this[offset + i] * mul
  11334. }
  11335. return val
  11336. }
  11337. Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {
  11338. offset = offset | 0
  11339. byteLength = byteLength | 0
  11340. if (!noAssert) {
  11341. checkOffset(offset, byteLength, this.length)
  11342. }
  11343. var val = this[offset + --byteLength]
  11344. var mul = 1
  11345. while (byteLength > 0 && (mul *= 0x100)) {
  11346. val += this[offset + --byteLength] * mul
  11347. }
  11348. return val
  11349. }
  11350. Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {
  11351. if (!noAssert) checkOffset(offset, 1, this.length)
  11352. return this[offset]
  11353. }
  11354. Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {
  11355. if (!noAssert) checkOffset(offset, 2, this.length)
  11356. return this[offset] | (this[offset + 1] << 8)
  11357. }
  11358. Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {
  11359. if (!noAssert) checkOffset(offset, 2, this.length)
  11360. return (this[offset] << 8) | this[offset + 1]
  11361. }
  11362. Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {
  11363. if (!noAssert) checkOffset(offset, 4, this.length)
  11364. return ((this[offset]) |
  11365. (this[offset + 1] << 8) |
  11366. (this[offset + 2] << 16)) +
  11367. (this[offset + 3] * 0x1000000)
  11368. }
  11369. Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {
  11370. if (!noAssert) checkOffset(offset, 4, this.length)
  11371. return (this[offset] * 0x1000000) +
  11372. ((this[offset + 1] << 16) |
  11373. (this[offset + 2] << 8) |
  11374. this[offset + 3])
  11375. }
  11376. Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {
  11377. offset = offset | 0
  11378. byteLength = byteLength | 0
  11379. if (!noAssert) checkOffset(offset, byteLength, this.length)
  11380. var val = this[offset]
  11381. var mul = 1
  11382. var i = 0
  11383. while (++i < byteLength && (mul *= 0x100)) {
  11384. val += this[offset + i] * mul
  11385. }
  11386. mul *= 0x80
  11387. if (val >= mul) val -= Math.pow(2, 8 * byteLength)
  11388. return val
  11389. }
  11390. Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {
  11391. offset = offset | 0
  11392. byteLength = byteLength | 0
  11393. if (!noAssert) checkOffset(offset, byteLength, this.length)
  11394. var i = byteLength
  11395. var mul = 1
  11396. var val = this[offset + --i]
  11397. while (i > 0 && (mul *= 0x100)) {
  11398. val += this[offset + --i] * mul
  11399. }
  11400. mul *= 0x80
  11401. if (val >= mul) val -= Math.pow(2, 8 * byteLength)
  11402. return val
  11403. }
  11404. Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) {
  11405. if (!noAssert) checkOffset(offset, 1, this.length)
  11406. if (!(this[offset] & 0x80)) return (this[offset])
  11407. return ((0xff - this[offset] + 1) * -1)
  11408. }
  11409. Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {
  11410. if (!noAssert) checkOffset(offset, 2, this.length)
  11411. var val = this[offset] | (this[offset + 1] << 8)
  11412. return (val & 0x8000) ? val | 0xFFFF0000 : val
  11413. }
  11414. Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {
  11415. if (!noAssert) checkOffset(offset, 2, this.length)
  11416. var val = this[offset + 1] | (this[offset] << 8)
  11417. return (val & 0x8000) ? val | 0xFFFF0000 : val
  11418. }
  11419. Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {
  11420. if (!noAssert) checkOffset(offset, 4, this.length)
  11421. return (this[offset]) |
  11422. (this[offset + 1] << 8) |
  11423. (this[offset + 2] << 16) |
  11424. (this[offset + 3] << 24)
  11425. }
  11426. Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {
  11427. if (!noAssert) checkOffset(offset, 4, this.length)
  11428. return (this[offset] << 24) |
  11429. (this[offset + 1] << 16) |
  11430. (this[offset + 2] << 8) |
  11431. (this[offset + 3])
  11432. }
  11433. Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {
  11434. if (!noAssert) checkOffset(offset, 4, this.length)
  11435. return ieee754.read(this, offset, true, 23, 4)
  11436. }
  11437. Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {
  11438. if (!noAssert) checkOffset(offset, 4, this.length)
  11439. return ieee754.read(this, offset, false, 23, 4)
  11440. }
  11441. Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {
  11442. if (!noAssert) checkOffset(offset, 8, this.length)
  11443. return ieee754.read(this, offset, true, 52, 8)
  11444. }
  11445. Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {
  11446. if (!noAssert) checkOffset(offset, 8, this.length)
  11447. return ieee754.read(this, offset, false, 52, 8)
  11448. }
  11449. function checkInt (buf, value, offset, ext, max, min) {
  11450. if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance')
  11451. if (value > max || value < min) throw new RangeError('"value" argument is out of bounds')
  11452. if (offset + ext > buf.length) throw new RangeError('Index out of range')
  11453. }
  11454. Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {
  11455. value = +value
  11456. offset = offset | 0
  11457. byteLength = byteLength | 0
  11458. if (!noAssert) {
  11459. var maxBytes = Math.pow(2, 8 * byteLength) - 1
  11460. checkInt(this, value, offset, byteLength, maxBytes, 0)
  11461. }
  11462. var mul = 1
  11463. var i = 0
  11464. this[offset] = value & 0xFF
  11465. while (++i < byteLength && (mul *= 0x100)) {
  11466. this[offset + i] = (value / mul) & 0xFF
  11467. }
  11468. return offset + byteLength
  11469. }
  11470. Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {
  11471. value = +value
  11472. offset = offset | 0
  11473. byteLength = byteLength | 0
  11474. if (!noAssert) {
  11475. var maxBytes = Math.pow(2, 8 * byteLength) - 1
  11476. checkInt(this, value, offset, byteLength, maxBytes, 0)
  11477. }
  11478. var i = byteLength - 1
  11479. var mul = 1
  11480. this[offset + i] = value & 0xFF
  11481. while (--i >= 0 && (mul *= 0x100)) {
  11482. this[offset + i] = (value / mul) & 0xFF
  11483. }
  11484. return offset + byteLength
  11485. }
  11486. Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {
  11487. value = +value
  11488. offset = offset | 0
  11489. if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)
  11490. if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
  11491. this[offset] = (value & 0xff)
  11492. return offset + 1
  11493. }
  11494. function objectWriteUInt16 (buf, value, offset, littleEndian) {
  11495. if (value < 0) value = 0xffff + value + 1
  11496. for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {
  11497. buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>
  11498. (littleEndian ? i : 1 - i) * 8
  11499. }
  11500. }
  11501. Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {
  11502. value = +value
  11503. offset = offset | 0
  11504. if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
  11505. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11506. this[offset] = (value & 0xff)
  11507. this[offset + 1] = (value >>> 8)
  11508. } else {
  11509. objectWriteUInt16(this, value, offset, true)
  11510. }
  11511. return offset + 2
  11512. }
  11513. Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {
  11514. value = +value
  11515. offset = offset | 0
  11516. if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
  11517. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11518. this[offset] = (value >>> 8)
  11519. this[offset + 1] = (value & 0xff)
  11520. } else {
  11521. objectWriteUInt16(this, value, offset, false)
  11522. }
  11523. return offset + 2
  11524. }
  11525. function objectWriteUInt32 (buf, value, offset, littleEndian) {
  11526. if (value < 0) value = 0xffffffff + value + 1
  11527. for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {
  11528. buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff
  11529. }
  11530. }
  11531. Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {
  11532. value = +value
  11533. offset = offset | 0
  11534. if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
  11535. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11536. this[offset + 3] = (value >>> 24)
  11537. this[offset + 2] = (value >>> 16)
  11538. this[offset + 1] = (value >>> 8)
  11539. this[offset] = (value & 0xff)
  11540. } else {
  11541. objectWriteUInt32(this, value, offset, true)
  11542. }
  11543. return offset + 4
  11544. }
  11545. Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {
  11546. value = +value
  11547. offset = offset | 0
  11548. if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
  11549. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11550. this[offset] = (value >>> 24)
  11551. this[offset + 1] = (value >>> 16)
  11552. this[offset + 2] = (value >>> 8)
  11553. this[offset + 3] = (value & 0xff)
  11554. } else {
  11555. objectWriteUInt32(this, value, offset, false)
  11556. }
  11557. return offset + 4
  11558. }
  11559. Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {
  11560. value = +value
  11561. offset = offset | 0
  11562. if (!noAssert) {
  11563. var limit = Math.pow(2, 8 * byteLength - 1)
  11564. checkInt(this, value, offset, byteLength, limit - 1, -limit)
  11565. }
  11566. var i = 0
  11567. var mul = 1
  11568. var sub = 0
  11569. this[offset] = value & 0xFF
  11570. while (++i < byteLength && (mul *= 0x100)) {
  11571. if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
  11572. sub = 1
  11573. }
  11574. this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
  11575. }
  11576. return offset + byteLength
  11577. }
  11578. Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {
  11579. value = +value
  11580. offset = offset | 0
  11581. if (!noAssert) {
  11582. var limit = Math.pow(2, 8 * byteLength - 1)
  11583. checkInt(this, value, offset, byteLength, limit - 1, -limit)
  11584. }
  11585. var i = byteLength - 1
  11586. var mul = 1
  11587. var sub = 0
  11588. this[offset + i] = value & 0xFF
  11589. while (--i >= 0 && (mul *= 0x100)) {
  11590. if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
  11591. sub = 1
  11592. }
  11593. this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
  11594. }
  11595. return offset + byteLength
  11596. }
  11597. Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {
  11598. value = +value
  11599. offset = offset | 0
  11600. if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)
  11601. if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
  11602. if (value < 0) value = 0xff + value + 1
  11603. this[offset] = (value & 0xff)
  11604. return offset + 1
  11605. }
  11606. Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {
  11607. value = +value
  11608. offset = offset | 0
  11609. if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
  11610. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11611. this[offset] = (value & 0xff)
  11612. this[offset + 1] = (value >>> 8)
  11613. } else {
  11614. objectWriteUInt16(this, value, offset, true)
  11615. }
  11616. return offset + 2
  11617. }
  11618. Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {
  11619. value = +value
  11620. offset = offset | 0
  11621. if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
  11622. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11623. this[offset] = (value >>> 8)
  11624. this[offset + 1] = (value & 0xff)
  11625. } else {
  11626. objectWriteUInt16(this, value, offset, false)
  11627. }
  11628. return offset + 2
  11629. }
  11630. Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {
  11631. value = +value
  11632. offset = offset | 0
  11633. if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
  11634. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11635. this[offset] = (value & 0xff)
  11636. this[offset + 1] = (value >>> 8)
  11637. this[offset + 2] = (value >>> 16)
  11638. this[offset + 3] = (value >>> 24)
  11639. } else {
  11640. objectWriteUInt32(this, value, offset, true)
  11641. }
  11642. return offset + 4
  11643. }
  11644. Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {
  11645. value = +value
  11646. offset = offset | 0
  11647. if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
  11648. if (value < 0) value = 0xffffffff + value + 1
  11649. if (Buffer.TYPED_ARRAY_SUPPORT) {
  11650. this[offset] = (value >>> 24)
  11651. this[offset + 1] = (value >>> 16)
  11652. this[offset + 2] = (value >>> 8)
  11653. this[offset + 3] = (value & 0xff)
  11654. } else {
  11655. objectWriteUInt32(this, value, offset, false)
  11656. }
  11657. return offset + 4
  11658. }
  11659. function checkIEEE754 (buf, value, offset, ext, max, min) {
  11660. if (offset + ext > buf.length) throw new RangeError('Index out of range')
  11661. if (offset < 0) throw new RangeError('Index out of range')
  11662. }
  11663. function writeFloat (buf, value, offset, littleEndian, noAssert) {
  11664. if (!noAssert) {
  11665. checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)
  11666. }
  11667. ieee754.write(buf, value, offset, littleEndian, 23, 4)
  11668. return offset + 4
  11669. }
  11670. Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {
  11671. return writeFloat(this, value, offset, true, noAssert)
  11672. }
  11673. Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {
  11674. return writeFloat(this, value, offset, false, noAssert)
  11675. }
  11676. function writeDouble (buf, value, offset, littleEndian, noAssert) {
  11677. if (!noAssert) {
  11678. checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)
  11679. }
  11680. ieee754.write(buf, value, offset, littleEndian, 52, 8)
  11681. return offset + 8
  11682. }
  11683. Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {
  11684. return writeDouble(this, value, offset, true, noAssert)
  11685. }
  11686. Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {
  11687. return writeDouble(this, value, offset, false, noAssert)
  11688. }
  11689. // copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
  11690. Buffer.prototype.copy = function copy (target, targetStart, start, end) {
  11691. if (!start) start = 0
  11692. if (!end && end !== 0) end = this.length
  11693. if (targetStart >= target.length) targetStart = target.length
  11694. if (!targetStart) targetStart = 0
  11695. if (end > 0 && end < start) end = start
  11696. // Copy 0 bytes; we're done
  11697. if (end === start) return 0
  11698. if (target.length === 0 || this.length === 0) return 0
  11699. // Fatal error conditions
  11700. if (targetStart < 0) {
  11701. throw new RangeError('targetStart out of bounds')
  11702. }
  11703. if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')
  11704. if (end < 0) throw new RangeError('sourceEnd out of bounds')
  11705. // Are we oob?
  11706. if (end > this.length) end = this.length
  11707. if (target.length - targetStart < end - start) {
  11708. end = target.length - targetStart + start
  11709. }
  11710. var len = end - start
  11711. var i
  11712. if (this === target && start < targetStart && targetStart < end) {
  11713. // descending copy from end
  11714. for (i = len - 1; i >= 0; --i) {
  11715. target[i + targetStart] = this[i + start]
  11716. }
  11717. } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {
  11718. // ascending copy from start
  11719. for (i = 0; i < len; ++i) {
  11720. target[i + targetStart] = this[i + start]
  11721. }
  11722. } else {
  11723. Uint8Array.prototype.set.call(
  11724. target,
  11725. this.subarray(start, start + len),
  11726. targetStart
  11727. )
  11728. }
  11729. return len
  11730. }
  11731. // Usage:
  11732. // buffer.fill(number[, offset[, end]])
  11733. // buffer.fill(buffer[, offset[, end]])
  11734. // buffer.fill(string[, offset[, end]][, encoding])
  11735. Buffer.prototype.fill = function fill (val, start, end, encoding) {
  11736. // Handle string cases:
  11737. if (typeof val === 'string') {
  11738. if (typeof start === 'string') {
  11739. encoding = start
  11740. start = 0
  11741. end = this.length
  11742. } else if (typeof end === 'string') {
  11743. encoding = end
  11744. end = this.length
  11745. }
  11746. if (val.length === 1) {
  11747. var code = val.charCodeAt(0)
  11748. if (code < 256) {
  11749. val = code
  11750. }
  11751. }
  11752. if (encoding !== undefined && typeof encoding !== 'string') {
  11753. throw new TypeError('encoding must be a string')
  11754. }
  11755. if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {
  11756. throw new TypeError('Unknown encoding: ' + encoding)
  11757. }
  11758. } else if (typeof val === 'number') {
  11759. val = val & 255
  11760. }
  11761. // Invalid ranges are not set to a default, so can range check early.
  11762. if (start < 0 || this.length < start || this.length < end) {
  11763. throw new RangeError('Out of range index')
  11764. }
  11765. if (end <= start) {
  11766. return this
  11767. }
  11768. start = start >>> 0
  11769. end = end === undefined ? this.length : end >>> 0
  11770. if (!val) val = 0
  11771. var i
  11772. if (typeof val === 'number') {
  11773. for (i = start; i < end; ++i) {
  11774. this[i] = val
  11775. }
  11776. } else {
  11777. var bytes = Buffer.isBuffer(val)
  11778. ? val
  11779. : utf8ToBytes(new Buffer(val, encoding).toString())
  11780. var len = bytes.length
  11781. for (i = 0; i < end - start; ++i) {
  11782. this[i + start] = bytes[i % len]
  11783. }
  11784. }
  11785. return this
  11786. }
  11787. // HELPER FUNCTIONS
  11788. // ================
  11789. var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g
  11790. function base64clean (str) {
  11791. // Node strips out invalid characters like \n and \t from the string, base64-js does not
  11792. str = stringtrim(str).replace(INVALID_BASE64_RE, '')
  11793. // Node converts strings with length < 2 to ''
  11794. if (str.length < 2) return ''
  11795. // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
  11796. while (str.length % 4 !== 0) {
  11797. str = str + '='
  11798. }
  11799. return str
  11800. }
  11801. function stringtrim (str) {
  11802. if (str.trim) return str.trim()
  11803. return str.replace(/^\s+|\s+$/g, '')
  11804. }
  11805. function toHex (n) {
  11806. if (n < 16) return '0' + n.toString(16)
  11807. return n.toString(16)
  11808. }
  11809. function utf8ToBytes (string, units) {
  11810. units = units || Infinity
  11811. var codePoint
  11812. var length = string.length
  11813. var leadSurrogate = null
  11814. var bytes = []
  11815. for (var i = 0; i < length; ++i) {
  11816. codePoint = string.charCodeAt(i)
  11817. // is surrogate component
  11818. if (codePoint > 0xD7FF && codePoint < 0xE000) {
  11819. // last char was a lead
  11820. if (!leadSurrogate) {
  11821. // no lead yet
  11822. if (codePoint > 0xDBFF) {
  11823. // unexpected trail
  11824. if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
  11825. continue
  11826. } else if (i + 1 === length) {
  11827. // unpaired lead
  11828. if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
  11829. continue
  11830. }
  11831. // valid lead
  11832. leadSurrogate = codePoint
  11833. continue
  11834. }
  11835. // 2 leads in a row
  11836. if (codePoint < 0xDC00) {
  11837. if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
  11838. leadSurrogate = codePoint
  11839. continue
  11840. }
  11841. // valid surrogate pair
  11842. codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000
  11843. } else if (leadSurrogate) {
  11844. // valid bmp char, but last char was a lead
  11845. if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
  11846. }
  11847. leadSurrogate = null
  11848. // encode utf8
  11849. if (codePoint < 0x80) {
  11850. if ((units -= 1) < 0) break
  11851. bytes.push(codePoint)
  11852. } else if (codePoint < 0x800) {
  11853. if ((units -= 2) < 0) break
  11854. bytes.push(
  11855. codePoint >> 0x6 | 0xC0,
  11856. codePoint & 0x3F | 0x80
  11857. )
  11858. } else if (codePoint < 0x10000) {
  11859. if ((units -= 3) < 0) break
  11860. bytes.push(
  11861. codePoint >> 0xC | 0xE0,
  11862. codePoint >> 0x6 & 0x3F | 0x80,
  11863. codePoint & 0x3F | 0x80
  11864. )
  11865. } else if (codePoint < 0x110000) {
  11866. if ((units -= 4) < 0) break
  11867. bytes.push(
  11868. codePoint >> 0x12 | 0xF0,
  11869. codePoint >> 0xC & 0x3F | 0x80,
  11870. codePoint >> 0x6 & 0x3F | 0x80,
  11871. codePoint & 0x3F | 0x80
  11872. )
  11873. } else {
  11874. throw new Error('Invalid code point')
  11875. }
  11876. }
  11877. return bytes
  11878. }
  11879. function asciiToBytes (str) {
  11880. var byteArray = []
  11881. for (var i = 0; i < str.length; ++i) {
  11882. // Node's code seems to be doing this and not & 0x7F..
  11883. byteArray.push(str.charCodeAt(i) & 0xFF)
  11884. }
  11885. return byteArray
  11886. }
  11887. function utf16leToBytes (str, units) {
  11888. var c, hi, lo
  11889. var byteArray = []
  11890. for (var i = 0; i < str.length; ++i) {
  11891. if ((units -= 2) < 0) break
  11892. c = str.charCodeAt(i)
  11893. hi = c >> 8
  11894. lo = c % 256
  11895. byteArray.push(lo)
  11896. byteArray.push(hi)
  11897. }
  11898. return byteArray
  11899. }
  11900. function base64ToBytes (str) {
  11901. return base64.toByteArray(base64clean(str))
  11902. }
  11903. function blitBuffer (src, dst, offset, length) {
  11904. for (var i = 0; i < length; ++i) {
  11905. if ((i + offset >= dst.length) || (i >= src.length)) break
  11906. dst[i + offset] = src[i]
  11907. }
  11908. return i
  11909. }
  11910. function isnan (val) {
  11911. return val !== val // eslint-disable-line no-self-compare
  11912. }
  11913. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ 3)))
  11914. /***/ }),
  11915. /* 55 */
  11916. /*!*****************************************!*\
  11917. !*** ./node_modules/base64-js/index.js ***!
  11918. \*****************************************/
  11919. /*! no static exports found */
  11920. /***/ (function(module, exports, __webpack_require__) {
  11921. "use strict";
  11922. exports.byteLength = byteLength
  11923. exports.toByteArray = toByteArray
  11924. exports.fromByteArray = fromByteArray
  11925. var lookup = []
  11926. var revLookup = []
  11927. var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array
  11928. var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
  11929. for (var i = 0, len = code.length; i < len; ++i) {
  11930. lookup[i] = code[i]
  11931. revLookup[code.charCodeAt(i)] = i
  11932. }
  11933. // Support decoding URL-safe base64 strings, as Node.js does.
  11934. // See: https://en.wikipedia.org/wiki/Base64#URL_applications
  11935. revLookup['-'.charCodeAt(0)] = 62
  11936. revLookup['_'.charCodeAt(0)] = 63
  11937. function getLens (b64) {
  11938. var len = b64.length
  11939. if (len % 4 > 0) {
  11940. throw new Error('Invalid string. Length must be a multiple of 4')
  11941. }
  11942. // Trim off extra bytes after placeholder bytes are found
  11943. // See: https://github.com/beatgammit/base64-js/issues/42
  11944. var validLen = b64.indexOf('=')
  11945. if (validLen === -1) validLen = len
  11946. var placeHoldersLen = validLen === len
  11947. ? 0
  11948. : 4 - (validLen % 4)
  11949. return [validLen, placeHoldersLen]
  11950. }
  11951. // base64 is 4/3 + up to two characters of the original data
  11952. function byteLength (b64) {
  11953. var lens = getLens(b64)
  11954. var validLen = lens[0]
  11955. var placeHoldersLen = lens[1]
  11956. return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
  11957. }
  11958. function _byteLength (b64, validLen, placeHoldersLen) {
  11959. return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
  11960. }
  11961. function toByteArray (b64) {
  11962. var tmp
  11963. var lens = getLens(b64)
  11964. var validLen = lens[0]
  11965. var placeHoldersLen = lens[1]
  11966. var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))
  11967. var curByte = 0
  11968. // if there are placeholders, only get up to the last complete 4 chars
  11969. var len = placeHoldersLen > 0
  11970. ? validLen - 4
  11971. : validLen
  11972. var i
  11973. for (i = 0; i < len; i += 4) {
  11974. tmp =
  11975. (revLookup[b64.charCodeAt(i)] << 18) |
  11976. (revLookup[b64.charCodeAt(i + 1)] << 12) |
  11977. (revLookup[b64.charCodeAt(i + 2)] << 6) |
  11978. revLookup[b64.charCodeAt(i + 3)]
  11979. arr[curByte++] = (tmp >> 16) & 0xFF
  11980. arr[curByte++] = (tmp >> 8) & 0xFF
  11981. arr[curByte++] = tmp & 0xFF
  11982. }
  11983. if (placeHoldersLen === 2) {
  11984. tmp =
  11985. (revLookup[b64.charCodeAt(i)] << 2) |
  11986. (revLookup[b64.charCodeAt(i + 1)] >> 4)
  11987. arr[curByte++] = tmp & 0xFF
  11988. }
  11989. if (placeHoldersLen === 1) {
  11990. tmp =
  11991. (revLookup[b64.charCodeAt(i)] << 10) |
  11992. (revLookup[b64.charCodeAt(i + 1)] << 4) |
  11993. (revLookup[b64.charCodeAt(i + 2)] >> 2)
  11994. arr[curByte++] = (tmp >> 8) & 0xFF
  11995. arr[curByte++] = tmp & 0xFF
  11996. }
  11997. return arr
  11998. }
  11999. function tripletToBase64 (num) {
  12000. return lookup[num >> 18 & 0x3F] +
  12001. lookup[num >> 12 & 0x3F] +
  12002. lookup[num >> 6 & 0x3F] +
  12003. lookup[num & 0x3F]
  12004. }
  12005. function encodeChunk (uint8, start, end) {
  12006. var tmp
  12007. var output = []
  12008. for (var i = start; i < end; i += 3) {
  12009. tmp =
  12010. ((uint8[i] << 16) & 0xFF0000) +
  12011. ((uint8[i + 1] << 8) & 0xFF00) +
  12012. (uint8[i + 2] & 0xFF)
  12013. output.push(tripletToBase64(tmp))
  12014. }
  12015. return output.join('')
  12016. }
  12017. function fromByteArray (uint8) {
  12018. var tmp
  12019. var len = uint8.length
  12020. var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
  12021. var parts = []
  12022. var maxChunkLength = 16383 // must be multiple of 3
  12023. // go through the array every three bytes, we'll deal with trailing stuff later
  12024. for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
  12025. parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
  12026. }
  12027. // pad the end with zeros, but make sure to not forget the extra bytes
  12028. if (extraBytes === 1) {
  12029. tmp = uint8[len - 1]
  12030. parts.push(
  12031. lookup[tmp >> 2] +
  12032. lookup[(tmp << 4) & 0x3F] +
  12033. '=='
  12034. )
  12035. } else if (extraBytes === 2) {
  12036. tmp = (uint8[len - 2] << 8) + uint8[len - 1]
  12037. parts.push(
  12038. lookup[tmp >> 10] +
  12039. lookup[(tmp >> 4) & 0x3F] +
  12040. lookup[(tmp << 2) & 0x3F] +
  12041. '='
  12042. )
  12043. }
  12044. return parts.join('')
  12045. }
  12046. /***/ }),
  12047. /* 56 */
  12048. /*!***************************************!*\
  12049. !*** ./node_modules/ieee754/index.js ***!
  12050. \***************************************/
  12051. /*! no static exports found */
  12052. /***/ (function(module, exports) {
  12053. /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
  12054. exports.read = function (buffer, offset, isLE, mLen, nBytes) {
  12055. var e, m
  12056. var eLen = (nBytes * 8) - mLen - 1
  12057. var eMax = (1 << eLen) - 1
  12058. var eBias = eMax >> 1
  12059. var nBits = -7
  12060. var i = isLE ? (nBytes - 1) : 0
  12061. var d = isLE ? -1 : 1
  12062. var s = buffer[offset + i]
  12063. i += d
  12064. e = s & ((1 << (-nBits)) - 1)
  12065. s >>= (-nBits)
  12066. nBits += eLen
  12067. for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}
  12068. m = e & ((1 << (-nBits)) - 1)
  12069. e >>= (-nBits)
  12070. nBits += mLen
  12071. for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}
  12072. if (e === 0) {
  12073. e = 1 - eBias
  12074. } else if (e === eMax) {
  12075. return m ? NaN : ((s ? -1 : 1) * Infinity)
  12076. } else {
  12077. m = m + Math.pow(2, mLen)
  12078. e = e - eBias
  12079. }
  12080. return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
  12081. }
  12082. exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
  12083. var e, m, c
  12084. var eLen = (nBytes * 8) - mLen - 1
  12085. var eMax = (1 << eLen) - 1
  12086. var eBias = eMax >> 1
  12087. var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)
  12088. var i = isLE ? 0 : (nBytes - 1)
  12089. var d = isLE ? 1 : -1
  12090. var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0
  12091. value = Math.abs(value)
  12092. if (isNaN(value) || value === Infinity) {
  12093. m = isNaN(value) ? 1 : 0
  12094. e = eMax
  12095. } else {
  12096. e = Math.floor(Math.log(value) / Math.LN2)
  12097. if (value * (c = Math.pow(2, -e)) < 1) {
  12098. e--
  12099. c *= 2
  12100. }
  12101. if (e + eBias >= 1) {
  12102. value += rt / c
  12103. } else {
  12104. value += rt * Math.pow(2, 1 - eBias)
  12105. }
  12106. if (value * c >= 2) {
  12107. e++
  12108. c /= 2
  12109. }
  12110. if (e + eBias >= eMax) {
  12111. m = 0
  12112. e = eMax
  12113. } else if (e + eBias >= 1) {
  12114. m = ((value * c) - 1) * Math.pow(2, mLen)
  12115. e = e + eBias
  12116. } else {
  12117. m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)
  12118. e = 0
  12119. }
  12120. }
  12121. for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}
  12122. e = (e << mLen) | m
  12123. eLen += mLen
  12124. for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}
  12125. buffer[offset + i - d] |= s * 128
  12126. }
  12127. /***/ }),
  12128. /* 57 */
  12129. /*!***************************************!*\
  12130. !*** ./node_modules/isarray/index.js ***!
  12131. \***************************************/
  12132. /*! no static exports found */
  12133. /***/ (function(module, exports) {
  12134. var toString = {}.toString;
  12135. module.exports = Array.isArray || function (arr) {
  12136. return toString.call(arr) == '[object Array]';
  12137. };
  12138. /***/ }),
  12139. /* 58 */
  12140. /*!********************************************************************!*\
  12141. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/util/route.js ***!
  12142. \********************************************************************/
  12143. /*! no static exports found */
  12144. /***/ (function(module, exports, __webpack_require__) {
  12145. "use strict";
  12146. /* WEBPACK VAR INJECTION */(function(uni) {
  12147. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  12148. Object.defineProperty(exports, "__esModule", {
  12149. value: true
  12150. });
  12151. exports.default = void 0;
  12152. var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 59));
  12153. var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 61));
  12154. var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
  12155. var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
  12156. /**
  12157. * 路由跳转方法,该方法相对于直接使用uni.xxx的好处是使用更加简单快捷
  12158. * 并且带有路由拦截功能
  12159. */
  12160. var Router = /*#__PURE__*/function () {
  12161. function Router() {
  12162. (0, _classCallCheck2.default)(this, Router);
  12163. // 原始属性定义
  12164. this.config = {
  12165. type: 'navigateTo',
  12166. url: '',
  12167. delta: 1,
  12168. // navigateBack页面后退时,回退的层数
  12169. params: {},
  12170. // 传递的参数
  12171. animationType: 'pop-in',
  12172. // 窗口动画,只在APP有效
  12173. animationDuration: 300,
  12174. // 窗口动画持续时间,单位毫秒,只在APP有效
  12175. intercept: false // 是否需要拦截
  12176. };
  12177. // 因为route方法是需要对外赋值给另外的对象使用,同时route内部有使用this,会导致route失去上下文
  12178. // 这里在构造函数中进行this绑定
  12179. this.route = this.route.bind(this);
  12180. }
  12181. // 判断url前面是否有"/",如果没有则加上,否则无法跳转
  12182. (0, _createClass2.default)(Router, [{
  12183. key: "addRootPath",
  12184. value: function addRootPath(url) {
  12185. return url[0] === '/' ? url : "/".concat(url);
  12186. }
  12187. // 整合路由参数
  12188. }, {
  12189. key: "mixinParam",
  12190. value: function mixinParam(url, params) {
  12191. url = url && this.addRootPath(url);
  12192. // 使用正则匹配,主要依据是判断是否有"/","?","="等,如“/page/index/index?name=mary"
  12193. // 如果有url中有get参数,转换后无需带上"?"
  12194. var query = '';
  12195. if (/.*\/.*\?.*=.*/.test(url)) {
  12196. // object对象转为get类型的参数
  12197. query = uni.$u.queryParams(params, false);
  12198. // 因为已有get参数,所以后面拼接的参数需要带上"&"隔开
  12199. return url += "&".concat(query);
  12200. }
  12201. // 直接拼接参数,因为此处url中没有后面的query参数,也就没有"?/&"之类的符号
  12202. query = uni.$u.queryParams(params);
  12203. return url += query;
  12204. }
  12205. // 对外的方法名称
  12206. }, {
  12207. key: "route",
  12208. value: function () {
  12209. var _route = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
  12210. var options,
  12211. params,
  12212. mergeConfig,
  12213. isNext,
  12214. _args = arguments;
  12215. return _regenerator.default.wrap(function _callee$(_context) {
  12216. while (1) {
  12217. switch (_context.prev = _context.next) {
  12218. case 0:
  12219. options = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
  12220. params = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
  12221. // 合并用户的配置和内部的默认配置
  12222. mergeConfig = {};
  12223. if (typeof options === 'string') {
  12224. // 如果options为字符串,则为route(url, params)的形式
  12225. mergeConfig.url = this.mixinParam(options, params);
  12226. mergeConfig.type = 'navigateTo';
  12227. } else {
  12228. mergeConfig = uni.$u.deepMerge(this.config, options);
  12229. // 否则正常使用mergeConfig中的url和params进行拼接
  12230. mergeConfig.url = this.mixinParam(options.url, options.params);
  12231. }
  12232. // 如果本次跳转的路径和本页面路径一致,不执行跳转,防止用户快速点击跳转按钮,造成多次跳转同一个页面的问题
  12233. if (!(mergeConfig.url === uni.$u.page())) {
  12234. _context.next = 6;
  12235. break;
  12236. }
  12237. return _context.abrupt("return");
  12238. case 6:
  12239. if (params.intercept) {
  12240. this.config.intercept = params.intercept;
  12241. }
  12242. // params参数也带给拦截器
  12243. mergeConfig.params = params;
  12244. // 合并内外部参数
  12245. mergeConfig = uni.$u.deepMerge(this.config, mergeConfig);
  12246. // 判断用户是否定义了拦截器
  12247. if (!(typeof uni.$u.routeIntercept === 'function')) {
  12248. _context.next = 16;
  12249. break;
  12250. }
  12251. _context.next = 12;
  12252. return new Promise(function (resolve, reject) {
  12253. uni.$u.routeIntercept(mergeConfig, resolve);
  12254. });
  12255. case 12:
  12256. isNext = _context.sent;
  12257. // 如果isNext为true,则执行路由跳转
  12258. isNext && this.openPage(mergeConfig);
  12259. _context.next = 17;
  12260. break;
  12261. case 16:
  12262. this.openPage(mergeConfig);
  12263. case 17:
  12264. case "end":
  12265. return _context.stop();
  12266. }
  12267. }
  12268. }, _callee, this);
  12269. }));
  12270. function route() {
  12271. return _route.apply(this, arguments);
  12272. }
  12273. return route;
  12274. }() // 执行路由跳转
  12275. }, {
  12276. key: "openPage",
  12277. value: function openPage(config) {
  12278. // 解构参数
  12279. var url = config.url,
  12280. type = config.type,
  12281. delta = config.delta,
  12282. animationType = config.animationType,
  12283. animationDuration = config.animationDuration;
  12284. if (config.type == 'navigateTo' || config.type == 'to') {
  12285. uni.navigateTo({
  12286. url: url,
  12287. animationType: animationType,
  12288. animationDuration: animationDuration
  12289. });
  12290. }
  12291. if (config.type == 'redirectTo' || config.type == 'redirect') {
  12292. uni.redirectTo({
  12293. url: url
  12294. });
  12295. }
  12296. if (config.type == 'switchTab' || config.type == 'tab') {
  12297. uni.switchTab({
  12298. url: url
  12299. });
  12300. }
  12301. if (config.type == 'reLaunch' || config.type == 'launch') {
  12302. uni.reLaunch({
  12303. url: url
  12304. });
  12305. }
  12306. if (config.type == 'navigateBack' || config.type == 'back') {
  12307. uni.navigateBack({
  12308. delta: delta
  12309. });
  12310. }
  12311. }
  12312. }]);
  12313. return Router;
  12314. }();
  12315. var _default = new Router().route;
  12316. exports.default = _default;
  12317. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  12318. /***/ }),
  12319. /* 59 */
  12320. /*!************************************************************************************************!*\
  12321. !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/@babel/runtime/regenerator/index.js ***!
  12322. \************************************************************************************************/
  12323. /*! no static exports found */
  12324. /***/ (function(module, exports, __webpack_require__) {
  12325. // TODO(Babel 8): Remove this file.
  12326. var runtime = __webpack_require__(/*! @babel/runtime/helpers/regeneratorRuntime */ 60)();
  12327. module.exports = runtime;
  12328. /***/ }),
  12329. /* 60 */
  12330. /*!*******************************************************************!*\
  12331. !*** ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
  12332. \*******************************************************************/
  12333. /*! no static exports found */
  12334. /***/ (function(module, exports, __webpack_require__) {
  12335. var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
  12336. function _regeneratorRuntime() {
  12337. "use strict";
  12338. /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
  12339. module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
  12340. return exports;
  12341. }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  12342. var exports = {},
  12343. Op = Object.prototype,
  12344. hasOwn = Op.hasOwnProperty,
  12345. defineProperty = Object.defineProperty || function (obj, key, desc) {
  12346. obj[key] = desc.value;
  12347. },
  12348. $Symbol = "function" == typeof Symbol ? Symbol : {},
  12349. iteratorSymbol = $Symbol.iterator || "@@iterator",
  12350. asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator",
  12351. toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
  12352. function define(obj, key, value) {
  12353. return Object.defineProperty(obj, key, {
  12354. value: value,
  12355. enumerable: !0,
  12356. configurable: !0,
  12357. writable: !0
  12358. }), obj[key];
  12359. }
  12360. try {
  12361. define({}, "");
  12362. } catch (err) {
  12363. define = function define(obj, key, value) {
  12364. return obj[key] = value;
  12365. };
  12366. }
  12367. function wrap(innerFn, outerFn, self, tryLocsList) {
  12368. var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,
  12369. generator = Object.create(protoGenerator.prototype),
  12370. context = new Context(tryLocsList || []);
  12371. return defineProperty(generator, "_invoke", {
  12372. value: makeInvokeMethod(innerFn, self, context)
  12373. }), generator;
  12374. }
  12375. function tryCatch(fn, obj, arg) {
  12376. try {
  12377. return {
  12378. type: "normal",
  12379. arg: fn.call(obj, arg)
  12380. };
  12381. } catch (err) {
  12382. return {
  12383. type: "throw",
  12384. arg: err
  12385. };
  12386. }
  12387. }
  12388. exports.wrap = wrap;
  12389. var ContinueSentinel = {};
  12390. function Generator() {}
  12391. function GeneratorFunction() {}
  12392. function GeneratorFunctionPrototype() {}
  12393. var IteratorPrototype = {};
  12394. define(IteratorPrototype, iteratorSymbol, function () {
  12395. return this;
  12396. });
  12397. var getProto = Object.getPrototypeOf,
  12398. NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  12399. NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);
  12400. var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
  12401. function defineIteratorMethods(prototype) {
  12402. ["next", "throw", "return"].forEach(function (method) {
  12403. define(prototype, method, function (arg) {
  12404. return this._invoke(method, arg);
  12405. });
  12406. });
  12407. }
  12408. function AsyncIterator(generator, PromiseImpl) {
  12409. function invoke(method, arg, resolve, reject) {
  12410. var record = tryCatch(generator[method], generator, arg);
  12411. if ("throw" !== record.type) {
  12412. var result = record.arg,
  12413. value = result.value;
  12414. return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) {
  12415. invoke("next", value, resolve, reject);
  12416. }, function (err) {
  12417. invoke("throw", err, resolve, reject);
  12418. }) : PromiseImpl.resolve(value).then(function (unwrapped) {
  12419. result.value = unwrapped, resolve(result);
  12420. }, function (error) {
  12421. return invoke("throw", error, resolve, reject);
  12422. });
  12423. }
  12424. reject(record.arg);
  12425. }
  12426. var previousPromise;
  12427. defineProperty(this, "_invoke", {
  12428. value: function value(method, arg) {
  12429. function callInvokeWithMethodAndArg() {
  12430. return new PromiseImpl(function (resolve, reject) {
  12431. invoke(method, arg, resolve, reject);
  12432. });
  12433. }
  12434. return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
  12435. }
  12436. });
  12437. }
  12438. function makeInvokeMethod(innerFn, self, context) {
  12439. var state = "suspendedStart";
  12440. return function (method, arg) {
  12441. if ("executing" === state) throw new Error("Generator is already running");
  12442. if ("completed" === state) {
  12443. if ("throw" === method) throw arg;
  12444. return doneResult();
  12445. }
  12446. for (context.method = method, context.arg = arg;;) {
  12447. var delegate = context.delegate;
  12448. if (delegate) {
  12449. var delegateResult = maybeInvokeDelegate(delegate, context);
  12450. if (delegateResult) {
  12451. if (delegateResult === ContinueSentinel) continue;
  12452. return delegateResult;
  12453. }
  12454. }
  12455. if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) {
  12456. if ("suspendedStart" === state) throw state = "completed", context.arg;
  12457. context.dispatchException(context.arg);
  12458. } else "return" === context.method && context.abrupt("return", context.arg);
  12459. state = "executing";
  12460. var record = tryCatch(innerFn, self, context);
  12461. if ("normal" === record.type) {
  12462. if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue;
  12463. return {
  12464. value: record.arg,
  12465. done: context.done
  12466. };
  12467. }
  12468. "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg);
  12469. }
  12470. };
  12471. }
  12472. function maybeInvokeDelegate(delegate, context) {
  12473. var methodName = context.method,
  12474. method = delegate.iterator[methodName];
  12475. if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel;
  12476. var record = tryCatch(method, delegate.iterator, context.arg);
  12477. if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel;
  12478. var info = record.arg;
  12479. return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel);
  12480. }
  12481. function pushTryEntry(locs) {
  12482. var entry = {
  12483. tryLoc: locs[0]
  12484. };
  12485. 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);
  12486. }
  12487. function resetTryEntry(entry) {
  12488. var record = entry.completion || {};
  12489. record.type = "normal", delete record.arg, entry.completion = record;
  12490. }
  12491. function Context(tryLocsList) {
  12492. this.tryEntries = [{
  12493. tryLoc: "root"
  12494. }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);
  12495. }
  12496. function values(iterable) {
  12497. if (iterable) {
  12498. var iteratorMethod = iterable[iteratorSymbol];
  12499. if (iteratorMethod) return iteratorMethod.call(iterable);
  12500. if ("function" == typeof iterable.next) return iterable;
  12501. if (!isNaN(iterable.length)) {
  12502. var i = -1,
  12503. next = function next() {
  12504. for (; ++i < iterable.length;) {
  12505. if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;
  12506. }
  12507. return next.value = undefined, next.done = !0, next;
  12508. };
  12509. return next.next = next;
  12510. }
  12511. }
  12512. return {
  12513. next: doneResult
  12514. };
  12515. }
  12516. function doneResult() {
  12517. return {
  12518. value: undefined,
  12519. done: !0
  12520. };
  12521. }
  12522. return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", {
  12523. value: GeneratorFunctionPrototype,
  12524. configurable: !0
  12525. }), defineProperty(GeneratorFunctionPrototype, "constructor", {
  12526. value: GeneratorFunction,
  12527. configurable: !0
  12528. }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) {
  12529. var ctor = "function" == typeof genFun && genFun.constructor;
  12530. return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name));
  12531. }, exports.mark = function (genFun) {
  12532. return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun;
  12533. }, exports.awrap = function (arg) {
  12534. return {
  12535. __await: arg
  12536. };
  12537. }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
  12538. return this;
  12539. }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {
  12540. void 0 === PromiseImpl && (PromiseImpl = Promise);
  12541. var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);
  12542. return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {
  12543. return result.done ? result.value : iter.next();
  12544. });
  12545. }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () {
  12546. return this;
  12547. }), define(Gp, "toString", function () {
  12548. return "[object Generator]";
  12549. }), exports.keys = function (val) {
  12550. var object = Object(val),
  12551. keys = [];
  12552. for (var key in object) {
  12553. keys.push(key);
  12554. }
  12555. return keys.reverse(), function next() {
  12556. for (; keys.length;) {
  12557. var key = keys.pop();
  12558. if (key in object) return next.value = key, next.done = !1, next;
  12559. }
  12560. return next.done = !0, next;
  12561. };
  12562. }, exports.values = values, Context.prototype = {
  12563. constructor: Context,
  12564. reset: function reset(skipTempReset) {
  12565. if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) {
  12566. "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);
  12567. }
  12568. },
  12569. stop: function stop() {
  12570. this.done = !0;
  12571. var rootRecord = this.tryEntries[0].completion;
  12572. if ("throw" === rootRecord.type) throw rootRecord.arg;
  12573. return this.rval;
  12574. },
  12575. dispatchException: function dispatchException(exception) {
  12576. if (this.done) throw exception;
  12577. var context = this;
  12578. function handle(loc, caught) {
  12579. return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught;
  12580. }
  12581. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  12582. var entry = this.tryEntries[i],
  12583. record = entry.completion;
  12584. if ("root" === entry.tryLoc) return handle("end");
  12585. if (entry.tryLoc <= this.prev) {
  12586. var hasCatch = hasOwn.call(entry, "catchLoc"),
  12587. hasFinally = hasOwn.call(entry, "finallyLoc");
  12588. if (hasCatch && hasFinally) {
  12589. if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
  12590. if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
  12591. } else if (hasCatch) {
  12592. if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
  12593. } else {
  12594. if (!hasFinally) throw new Error("try statement without catch or finally");
  12595. if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
  12596. }
  12597. }
  12598. }
  12599. },
  12600. abrupt: function abrupt(type, arg) {
  12601. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  12602. var entry = this.tryEntries[i];
  12603. if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
  12604. var finallyEntry = entry;
  12605. break;
  12606. }
  12607. }
  12608. finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);
  12609. var record = finallyEntry ? finallyEntry.completion : {};
  12610. return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);
  12611. },
  12612. complete: function complete(record, afterLoc) {
  12613. if ("throw" === record.type) throw record.arg;
  12614. return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;
  12615. },
  12616. finish: function finish(finallyLoc) {
  12617. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  12618. var entry = this.tryEntries[i];
  12619. if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;
  12620. }
  12621. },
  12622. "catch": function _catch(tryLoc) {
  12623. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  12624. var entry = this.tryEntries[i];
  12625. if (entry.tryLoc === tryLoc) {
  12626. var record = entry.completion;
  12627. if ("throw" === record.type) {
  12628. var thrown = record.arg;
  12629. resetTryEntry(entry);
  12630. }
  12631. return thrown;
  12632. }
  12633. }
  12634. throw new Error("illegal catch attempt");
  12635. },
  12636. delegateYield: function delegateYield(iterable, resultName, nextLoc) {
  12637. return this.delegate = {
  12638. iterator: values(iterable),
  12639. resultName: resultName,
  12640. nextLoc: nextLoc
  12641. }, "next" === this.method && (this.arg = undefined), ContinueSentinel;
  12642. }
  12643. }, exports;
  12644. }
  12645. module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
  12646. /***/ }),
  12647. /* 61 */
  12648. /*!*****************************************************************!*\
  12649. !*** ./node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
  12650. \*****************************************************************/
  12651. /*! no static exports found */
  12652. /***/ (function(module, exports) {
  12653. function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  12654. try {
  12655. var info = gen[key](arg);
  12656. var value = info.value;
  12657. } catch (error) {
  12658. reject(error);
  12659. return;
  12660. }
  12661. if (info.done) {
  12662. resolve(value);
  12663. } else {
  12664. Promise.resolve(value).then(_next, _throw);
  12665. }
  12666. }
  12667. function _asyncToGenerator(fn) {
  12668. return function () {
  12669. var self = this,
  12670. args = arguments;
  12671. return new Promise(function (resolve, reject) {
  12672. var gen = fn.apply(self, args);
  12673. function _next(value) {
  12674. asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
  12675. }
  12676. function _throw(err) {
  12677. asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
  12678. }
  12679. _next(undefined);
  12680. });
  12681. };
  12682. }
  12683. module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
  12684. /***/ }),
  12685. /* 62 */
  12686. /*!********************************************************************************!*\
  12687. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/colorGradient.js ***!
  12688. \********************************************************************************/
  12689. /*! no static exports found */
  12690. /***/ (function(module, exports, __webpack_require__) {
  12691. "use strict";
  12692. Object.defineProperty(exports, "__esModule", {
  12693. value: true
  12694. });
  12695. exports.default = void 0;
  12696. /**
  12697. * 求两个颜色之间的渐变值
  12698. * @param {string} startColor 开始的颜色
  12699. * @param {string} endColor 结束的颜色
  12700. * @param {number} step 颜色等分的份额
  12701. * */
  12702. function colorGradient() {
  12703. var startColor = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'rgb(0, 0, 0)';
  12704. var endColor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'rgb(255, 255, 255)';
  12705. var step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
  12706. var startRGB = hexToRgb(startColor, false); // 转换为rgb数组模式
  12707. var startR = startRGB[0];
  12708. var startG = startRGB[1];
  12709. var startB = startRGB[2];
  12710. var endRGB = hexToRgb(endColor, false);
  12711. var endR = endRGB[0];
  12712. var endG = endRGB[1];
  12713. var endB = endRGB[2];
  12714. var sR = (endR - startR) / step; // 总差值
  12715. var sG = (endG - startG) / step;
  12716. var sB = (endB - startB) / step;
  12717. var colorArr = [];
  12718. for (var i = 0; i < step; i++) {
  12719. // 计算每一步的hex值
  12720. var hex = rgbToHex("rgb(".concat(Math.round(sR * i + startR), ",").concat(Math.round(sG * i + startG), ",").concat(Math.round(sB * i + startB), ")"));
  12721. // 确保第一个颜色值为startColor的值
  12722. if (i === 0) hex = rgbToHex(startColor);
  12723. // 确保最后一个颜色值为endColor的值
  12724. if (i === step - 1) hex = rgbToHex(endColor);
  12725. colorArr.push(hex);
  12726. }
  12727. return colorArr;
  12728. }
  12729. // 将hex表示方式转换为rgb表示方式(这里返回rgb数组模式)
  12730. function hexToRgb(sColor) {
  12731. var str = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  12732. var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
  12733. sColor = String(sColor).toLowerCase();
  12734. if (sColor && reg.test(sColor)) {
  12735. if (sColor.length === 4) {
  12736. var sColorNew = '#';
  12737. for (var i = 1; i < 4; i += 1) {
  12738. sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
  12739. }
  12740. sColor = sColorNew;
  12741. }
  12742. // 处理六位的颜色值
  12743. var sColorChange = [];
  12744. for (var _i = 1; _i < 7; _i += 2) {
  12745. sColorChange.push(parseInt("0x".concat(sColor.slice(_i, _i + 2))));
  12746. }
  12747. if (!str) {
  12748. return sColorChange;
  12749. }
  12750. return "rgb(".concat(sColorChange[0], ",").concat(sColorChange[1], ",").concat(sColorChange[2], ")");
  12751. }
  12752. if (/^(rgb|RGB)/.test(sColor)) {
  12753. var arr = sColor.replace(/(?:\(|\)|rgb|RGB)*/g, '').split(',');
  12754. return arr.map(function (val) {
  12755. return Number(val);
  12756. });
  12757. }
  12758. return sColor;
  12759. }
  12760. // 将rgb表示方式转换为hex表示方式
  12761. function rgbToHex(rgb) {
  12762. var _this = rgb;
  12763. var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
  12764. if (/^(rgb|RGB)/.test(_this)) {
  12765. var aColor = _this.replace(/(?:\(|\)|rgb|RGB)*/g, '').split(',');
  12766. var strHex = '#';
  12767. for (var i = 0; i < aColor.length; i++) {
  12768. var hex = Number(aColor[i]).toString(16);
  12769. hex = String(hex).length == 1 ? "".concat(0, hex) : hex; // 保证每个rgb的值为2位
  12770. if (hex === '0') {
  12771. hex += hex;
  12772. }
  12773. strHex += hex;
  12774. }
  12775. if (strHex.length !== 7) {
  12776. strHex = _this;
  12777. }
  12778. return strHex;
  12779. }
  12780. if (reg.test(_this)) {
  12781. var aNum = _this.replace(/#/, '').split('');
  12782. if (aNum.length === 6) {
  12783. return _this;
  12784. }
  12785. if (aNum.length === 3) {
  12786. var numHex = '#';
  12787. for (var _i2 = 0; _i2 < aNum.length; _i2 += 1) {
  12788. numHex += aNum[_i2] + aNum[_i2];
  12789. }
  12790. return numHex;
  12791. }
  12792. } else {
  12793. return _this;
  12794. }
  12795. }
  12796. /**
  12797. * JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串
  12798. * sHex为传入的十六进制的色值
  12799. * alpha为rgba的透明度
  12800. */
  12801. function colorToRgba(color, alpha) {
  12802. color = rgbToHex(color);
  12803. // 十六进制颜色值的正则表达式
  12804. var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
  12805. /* 16进制颜色转为RGB格式 */
  12806. var sColor = String(color).toLowerCase();
  12807. if (sColor && reg.test(sColor)) {
  12808. if (sColor.length === 4) {
  12809. var sColorNew = '#';
  12810. for (var i = 1; i < 4; i += 1) {
  12811. sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
  12812. }
  12813. sColor = sColorNew;
  12814. }
  12815. // 处理六位的颜色值
  12816. var sColorChange = [];
  12817. for (var _i3 = 1; _i3 < 7; _i3 += 2) {
  12818. sColorChange.push(parseInt("0x".concat(sColor.slice(_i3, _i3 + 2))));
  12819. }
  12820. // return sColorChange.join(',')
  12821. return "rgba(".concat(sColorChange.join(','), ",").concat(alpha, ")");
  12822. }
  12823. return sColor;
  12824. }
  12825. var _default = {
  12826. colorGradient: colorGradient,
  12827. hexToRgb: hexToRgb,
  12828. rgbToHex: rgbToHex,
  12829. colorToRgba: colorToRgba
  12830. };
  12831. exports.default = _default;
  12832. /***/ }),
  12833. /* 63 */
  12834. /*!***********************************************************************!*\
  12835. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/test.js ***!
  12836. \***********************************************************************/
  12837. /*! no static exports found */
  12838. /***/ (function(module, exports, __webpack_require__) {
  12839. "use strict";
  12840. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  12841. Object.defineProperty(exports, "__esModule", {
  12842. value: true
  12843. });
  12844. exports.default = void 0;
  12845. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  12846. /**
  12847. * 验证电子邮箱格式
  12848. */
  12849. function email(value) {
  12850. return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(value);
  12851. }
  12852. /**
  12853. * 验证手机格式
  12854. */
  12855. function mobile(value) {
  12856. return /^1([3589]\d|4[5-9]|6[1-2,4-7]|7[0-8])\d{8}$/.test(value);
  12857. }
  12858. /**
  12859. * 验证URL格式
  12860. */
  12861. function url(value) {
  12862. return /^((https|http|ftp|rtsp|mms):\/\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\/?)|(\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\/?)$/.test(value);
  12863. }
  12864. /**
  12865. * 验证日期格式
  12866. */
  12867. function date(value) {
  12868. if (!value) return false;
  12869. // 判断是否数值或者字符串数值(意味着为时间戳),转为数值,否则new Date无法识别字符串时间戳
  12870. if (number(value)) value = +value;
  12871. return !/Invalid|NaN/.test(new Date(value).toString());
  12872. }
  12873. /**
  12874. * 验证ISO类型的日期格式
  12875. */
  12876. function dateISO(value) {
  12877. return /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value);
  12878. }
  12879. /**
  12880. * 验证十进制数字
  12881. */
  12882. function number(value) {
  12883. return /^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/.test(value);
  12884. }
  12885. /**
  12886. * 验证字符串
  12887. */
  12888. function string(value) {
  12889. return typeof value === 'string';
  12890. }
  12891. /**
  12892. * 验证整数
  12893. */
  12894. function digits(value) {
  12895. return /^\d+$/.test(value);
  12896. }
  12897. /**
  12898. * 验证身份证号码
  12899. */
  12900. function idCard(value) {
  12901. return /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(value);
  12902. }
  12903. /**
  12904. * 是否车牌号
  12905. */
  12906. function carNo(value) {
  12907. // 新能源车牌
  12908. var xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/;
  12909. // 旧车牌
  12910. var creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;
  12911. if (value.length === 7) {
  12912. return creg.test(value);
  12913. }
  12914. if (value.length === 8) {
  12915. return xreg.test(value);
  12916. }
  12917. return false;
  12918. }
  12919. /**
  12920. * 金额,只允许2位小数
  12921. */
  12922. function amount(value) {
  12923. // 金额,只允许保留两位小数
  12924. return /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/.test(value);
  12925. }
  12926. /**
  12927. * 中文
  12928. */
  12929. function chinese(value) {
  12930. var reg = /^[\u4e00-\u9fa5]+$/gi;
  12931. return reg.test(value);
  12932. }
  12933. /**
  12934. * 只能输入字母
  12935. */
  12936. function letter(value) {
  12937. return /^[a-zA-Z]*$/.test(value);
  12938. }
  12939. /**
  12940. * 只能是字母或者数字
  12941. */
  12942. function enOrNum(value) {
  12943. // 英文或者数字
  12944. var reg = /^[0-9a-zA-Z]*$/g;
  12945. return reg.test(value);
  12946. }
  12947. /**
  12948. * 验证是否包含某个值
  12949. */
  12950. function contains(value, param) {
  12951. return value.indexOf(param) >= 0;
  12952. }
  12953. /**
  12954. * 验证一个值范围[min, max]
  12955. */
  12956. function range(value, param) {
  12957. return value >= param[0] && value <= param[1];
  12958. }
  12959. /**
  12960. * 验证一个长度范围[min, max]
  12961. */
  12962. function rangeLength(value, param) {
  12963. return value.length >= param[0] && value.length <= param[1];
  12964. }
  12965. /**
  12966. * 是否固定电话
  12967. */
  12968. function landline(value) {
  12969. var reg = /^\d{3,4}-\d{7,8}(-\d{3,4})?$/;
  12970. return reg.test(value);
  12971. }
  12972. /**
  12973. * 判断是否为空
  12974. */
  12975. function empty(value) {
  12976. switch ((0, _typeof2.default)(value)) {
  12977. case 'undefined':
  12978. return true;
  12979. case 'string':
  12980. if (value.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, '').length == 0) return true;
  12981. break;
  12982. case 'boolean':
  12983. if (!value) return true;
  12984. break;
  12985. case 'number':
  12986. if (value === 0 || isNaN(value)) return true;
  12987. break;
  12988. case 'object':
  12989. if (value === null || value.length === 0) return true;
  12990. for (var i in value) {
  12991. return false;
  12992. }
  12993. return true;
  12994. }
  12995. return false;
  12996. }
  12997. /**
  12998. * 是否json字符串
  12999. */
  13000. function jsonString(value) {
  13001. if (typeof value === 'string') {
  13002. try {
  13003. var obj = JSON.parse(value);
  13004. if ((0, _typeof2.default)(obj) === 'object' && obj) {
  13005. return true;
  13006. }
  13007. return false;
  13008. } catch (e) {
  13009. return false;
  13010. }
  13011. }
  13012. return false;
  13013. }
  13014. /**
  13015. * 是否数组
  13016. */
  13017. function array(value) {
  13018. if (typeof Array.isArray === 'function') {
  13019. return Array.isArray(value);
  13020. }
  13021. return Object.prototype.toString.call(value) === '[object Array]';
  13022. }
  13023. /**
  13024. * 是否对象
  13025. */
  13026. function object(value) {
  13027. return Object.prototype.toString.call(value) === '[object Object]';
  13028. }
  13029. /**
  13030. * 是否短信验证码
  13031. */
  13032. function code(value) {
  13033. var len = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 6;
  13034. return new RegExp("^\\d{".concat(len, "}$")).test(value);
  13035. }
  13036. /**
  13037. * 是否函数方法
  13038. * @param {Object} value
  13039. */
  13040. function func(value) {
  13041. return typeof value === 'function';
  13042. }
  13043. /**
  13044. * 是否promise对象
  13045. * @param {Object} value
  13046. */
  13047. function promise(value) {
  13048. return object(value) && func(value.then) && func(value.catch);
  13049. }
  13050. /** 是否图片格式
  13051. * @param {Object} value
  13052. */
  13053. function image(value) {
  13054. var newValue = value.split('?')[0];
  13055. var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i;
  13056. return IMAGE_REGEXP.test(newValue);
  13057. }
  13058. /**
  13059. * 是否视频格式
  13060. * @param {Object} value
  13061. */
  13062. function video(value) {
  13063. var VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i;
  13064. return VIDEO_REGEXP.test(value);
  13065. }
  13066. /**
  13067. * 是否为正则对象
  13068. * @param {Object}
  13069. * @return {Boolean}
  13070. */
  13071. function regExp(o) {
  13072. return o && Object.prototype.toString.call(o) === '[object RegExp]';
  13073. }
  13074. var _default = {
  13075. email: email,
  13076. mobile: mobile,
  13077. url: url,
  13078. date: date,
  13079. dateISO: dateISO,
  13080. number: number,
  13081. digits: digits,
  13082. idCard: idCard,
  13083. carNo: carNo,
  13084. amount: amount,
  13085. chinese: chinese,
  13086. letter: letter,
  13087. enOrNum: enOrNum,
  13088. contains: contains,
  13089. range: range,
  13090. rangeLength: rangeLength,
  13091. empty: empty,
  13092. isEmpty: empty,
  13093. jsonString: jsonString,
  13094. landline: landline,
  13095. object: object,
  13096. array: array,
  13097. code: code,
  13098. func: func,
  13099. promise: promise,
  13100. video: video,
  13101. image: image,
  13102. regExp: regExp,
  13103. string: string
  13104. };
  13105. exports.default = _default;
  13106. /***/ }),
  13107. /* 64 */
  13108. /*!***************************************************************************!*\
  13109. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/debounce.js ***!
  13110. \***************************************************************************/
  13111. /*! no static exports found */
  13112. /***/ (function(module, exports, __webpack_require__) {
  13113. "use strict";
  13114. Object.defineProperty(exports, "__esModule", {
  13115. value: true
  13116. });
  13117. exports.default = void 0;
  13118. var timeout = null;
  13119. /**
  13120. * 防抖原理:一定时间内,只有最后一次操作,再过wait毫秒后才执行函数
  13121. *
  13122. * @param {Function} func 要执行的回调函数
  13123. * @param {Number} wait 延时的时间
  13124. * @param {Boolean} immediate 是否立即执行
  13125. * @return null
  13126. */
  13127. function debounce(func) {
  13128. var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
  13129. var immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
  13130. // 清除定时器
  13131. if (timeout !== null) clearTimeout(timeout);
  13132. // 立即执行,此类情况一般用不到
  13133. if (immediate) {
  13134. var callNow = !timeout;
  13135. timeout = setTimeout(function () {
  13136. timeout = null;
  13137. }, wait);
  13138. if (callNow) typeof func === 'function' && func();
  13139. } else {
  13140. // 设置定时器,当最后一次操作后,timeout不会再被清除,所以在延时wait毫秒后执行func回调方法
  13141. timeout = setTimeout(function () {
  13142. typeof func === 'function' && func();
  13143. }, wait);
  13144. }
  13145. }
  13146. var _default = debounce;
  13147. exports.default = _default;
  13148. /***/ }),
  13149. /* 65 */
  13150. /*!***************************************************************************!*\
  13151. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/throttle.js ***!
  13152. \***************************************************************************/
  13153. /*! no static exports found */
  13154. /***/ (function(module, exports, __webpack_require__) {
  13155. "use strict";
  13156. Object.defineProperty(exports, "__esModule", {
  13157. value: true
  13158. });
  13159. exports.default = void 0;
  13160. var timer;
  13161. var flag;
  13162. /**
  13163. * 节流原理:在一定时间内,只能触发一次
  13164. *
  13165. * @param {Function} func 要执行的回调函数
  13166. * @param {Number} wait 延时的时间
  13167. * @param {Boolean} immediate 是否立即执行
  13168. * @return null
  13169. */
  13170. function throttle(func) {
  13171. var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
  13172. var immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
  13173. if (immediate) {
  13174. if (!flag) {
  13175. flag = true;
  13176. // 如果是立即执行,则在wait毫秒内开始时执行
  13177. typeof func === 'function' && func();
  13178. timer = setTimeout(function () {
  13179. flag = false;
  13180. }, wait);
  13181. }
  13182. } else if (!flag) {
  13183. flag = true;
  13184. // 如果是非立即执行,则在wait毫秒内的结束处执行
  13185. timer = setTimeout(function () {
  13186. flag = false;
  13187. typeof func === 'function' && func();
  13188. }, wait);
  13189. }
  13190. }
  13191. var _default = throttle;
  13192. exports.default = _default;
  13193. /***/ }),
  13194. /* 66 */
  13195. /*!************************************************************************!*\
  13196. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/index.js ***!
  13197. \************************************************************************/
  13198. /*! no static exports found */
  13199. /***/ (function(module, exports, __webpack_require__) {
  13200. "use strict";
  13201. /* WEBPACK VAR INJECTION */(function(uni) {
  13202. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  13203. Object.defineProperty(exports, "__esModule", {
  13204. value: true
  13205. });
  13206. exports.default = void 0;
  13207. var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 5));
  13208. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  13209. var _test = _interopRequireDefault(__webpack_require__(/*! ./test.js */ 63));
  13210. var _digit = __webpack_require__(/*! ./digit.js */ 67);
  13211. /**
  13212. * @description 如果value小于min,取min;如果value大于max,取max
  13213. * @param {number} min
  13214. * @param {number} max
  13215. * @param {number} value
  13216. */
  13217. function range() {
  13218. var min = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
  13219. var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  13220. var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
  13221. return Math.max(min, Math.min(max, Number(value)));
  13222. }
  13223. /**
  13224. * @description 用于获取用户传递值的px值 如果用户传递了"xxpx"或者"xxrpx",取出其数值部分,如果是"xxxrpx"还需要用过uni.upx2px进行转换
  13225. * @param {number|string} value 用户传递值的px值
  13226. * @param {boolean} unit
  13227. * @returns {number|string}
  13228. */
  13229. function getPx(value) {
  13230. var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  13231. if (_test.default.number(value)) {
  13232. return unit ? "".concat(value, "px") : Number(value);
  13233. }
  13234. // 如果带有rpx,先取出其数值部分,再转为px值
  13235. if (/(rpx|upx)$/.test(value)) {
  13236. return unit ? "".concat(uni.upx2px(parseInt(value)), "px") : Number(uni.upx2px(parseInt(value)));
  13237. }
  13238. return unit ? "".concat(parseInt(value), "px") : parseInt(value);
  13239. }
  13240. /**
  13241. * @description 进行延时,以达到可以简写代码的目的 比如: await uni.$u.sleep(20)将会阻塞20ms
  13242. * @param {number} value 堵塞时间 单位ms 毫秒
  13243. * @returns {Promise} 返回promise
  13244. */
  13245. function sleep() {
  13246. var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 30;
  13247. return new Promise(function (resolve) {
  13248. setTimeout(function () {
  13249. resolve();
  13250. }, value);
  13251. });
  13252. }
  13253. /**
  13254. * @description 运行期判断平台
  13255. * @returns {string} 返回所在平台(小写)
  13256. * @link 运行期判断平台 https://uniapp.dcloud.io/frame?id=判断平台
  13257. */
  13258. function os() {
  13259. return uni.getSystemInfoSync().platform.toLowerCase();
  13260. }
  13261. /**
  13262. * @description 获取系统信息同步接口
  13263. * @link 获取系统信息同步接口 https://uniapp.dcloud.io/api/system/info?id=getsysteminfosync
  13264. */
  13265. function sys() {
  13266. return uni.getSystemInfoSync();
  13267. }
  13268. /**
  13269. * @description 取一个区间数
  13270. * @param {Number} min 最小值
  13271. * @param {Number} max 最大值
  13272. */
  13273. function random(min, max) {
  13274. if (min >= 0 && max > 0 && max >= min) {
  13275. var gab = max - min + 1;
  13276. return Math.floor(Math.random() * gab + min);
  13277. }
  13278. return 0;
  13279. }
  13280. /**
  13281. * @param {Number} len uuid的长度
  13282. * @param {Boolean} firstU 将返回的首字母置为"u"
  13283. * @param {Nubmer} radix 生成uuid的基数(意味着返回的字符串都是这个基数),2-二进制,8-八进制,10-十进制,16-十六进制
  13284. */
  13285. function guid() {
  13286. var len = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 32;
  13287. var firstU = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  13288. var radix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
  13289. var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
  13290. var uuid = [];
  13291. radix = radix || chars.length;
  13292. if (len) {
  13293. // 如果指定uuid长度,只是取随机的字符,0|x为位运算,能去掉x的小数位,返回整数位
  13294. for (var i = 0; i < len; i++) {
  13295. uuid[i] = chars[0 | Math.random() * radix];
  13296. }
  13297. } else {
  13298. var r;
  13299. // rfc4122标准要求返回的uuid中,某些位为固定的字符
  13300. uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
  13301. uuid[14] = '4';
  13302. for (var _i = 0; _i < 36; _i++) {
  13303. if (!uuid[_i]) {
  13304. r = 0 | Math.random() * 16;
  13305. uuid[_i] = chars[_i == 19 ? r & 0x3 | 0x8 : r];
  13306. }
  13307. }
  13308. }
  13309. // 移除第一个字符,并用u替代,因为第一个字符为数值时,该guuid不能用作id或者class
  13310. if (firstU) {
  13311. uuid.shift();
  13312. return "u".concat(uuid.join(''));
  13313. }
  13314. return uuid.join('');
  13315. }
  13316. /**
  13317. * @description 获取父组件的参数,因为支付宝小程序不支持provide/inject的写法
  13318. this.$parent在非H5中,可以准确获取到父组件,但是在H5中,需要多次this.$parent.$parent.xxx
  13319. 这里默认值等于undefined有它的含义,因为最顶层元素(组件)的$parent就是undefined,意味着不传name
  13320. 值(默认为undefined),就是查找最顶层的$parent
  13321. * @param {string|undefined} name 父组件的参数名
  13322. */
  13323. function $parent() {
  13324. var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
  13325. var parent = this.$parent;
  13326. // 通过while历遍,这里主要是为了H5需要多层解析的问题
  13327. while (parent) {
  13328. // 父组件
  13329. if (parent.$options && parent.$options.name !== name) {
  13330. // 如果组件的name不相等,继续上一级寻找
  13331. parent = parent.$parent;
  13332. } else {
  13333. return parent;
  13334. }
  13335. }
  13336. return false;
  13337. }
  13338. /**
  13339. * @description 样式转换
  13340. * 对象转字符串,或者字符串转对象
  13341. * @param {object | string} customStyle 需要转换的目标
  13342. * @param {String} target 转换的目的,object-转为对象,string-转为字符串
  13343. * @returns {object|string}
  13344. */
  13345. function addStyle(customStyle) {
  13346. var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'object';
  13347. // 字符串转字符串,对象转对象情形,直接返回
  13348. if (_test.default.empty(customStyle) || (0, _typeof2.default)(customStyle) === 'object' && target === 'object' || target === 'string' && typeof customStyle === 'string') {
  13349. return customStyle;
  13350. }
  13351. // 字符串转对象
  13352. if (target === 'object') {
  13353. // 去除字符串样式中的两端空格(中间的空格不能去掉,比如padding: 20px 0如果去掉了就错了),空格是无用的
  13354. customStyle = trim(customStyle);
  13355. // 根据";"将字符串转为数组形式
  13356. var styleArray = customStyle.split(';');
  13357. var style = {};
  13358. // 历遍数组,拼接成对象
  13359. for (var i = 0; i < styleArray.length; i++) {
  13360. // 'font-size:20px;color:red;',如此最后字符串有";"的话,会导致styleArray最后一个元素为空字符串,这里需要过滤
  13361. if (styleArray[i]) {
  13362. var item = styleArray[i].split(':');
  13363. style[trim(item[0])] = trim(item[1]);
  13364. }
  13365. }
  13366. return style;
  13367. }
  13368. // 这里为对象转字符串形式
  13369. var string = '';
  13370. for (var _i2 in customStyle) {
  13371. // 驼峰转为中划线的形式,否则css内联样式,无法识别驼峰样式属性名
  13372. var key = _i2.replace(/([A-Z])/g, '-$1').toLowerCase();
  13373. string += "".concat(key, ":").concat(customStyle[_i2], ";");
  13374. }
  13375. // 去除两端空格
  13376. return trim(string);
  13377. }
  13378. /**
  13379. * @description 添加单位,如果有rpx,upx,%,px等单位结尾或者值为auto,直接返回,否则加上px单位结尾
  13380. * @param {string|number} value 需要添加单位的值
  13381. * @param {string} unit 添加的单位名 比如px
  13382. */
  13383. function addUnit() {
  13384. var _uni$$u$config$unit, _uni, _uni$$u, _uni$$u$config;
  13385. var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'auto';
  13386. var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : (_uni$$u$config$unit = (_uni = uni) === null || _uni === void 0 ? void 0 : (_uni$$u = _uni.$u) === null || _uni$$u === void 0 ? void 0 : (_uni$$u$config = _uni$$u.config) === null || _uni$$u$config === void 0 ? void 0 : _uni$$u$config.unit) !== null && _uni$$u$config$unit !== void 0 ? _uni$$u$config$unit : 'px';
  13387. value = String(value);
  13388. // 用uView内置验证规则中的number判断是否为数值
  13389. return _test.default.number(value) ? "".concat(value).concat(unit) : value;
  13390. }
  13391. /**
  13392. * @description 深度克隆
  13393. * @param {object} obj 需要深度克隆的对象
  13394. * @param cache 缓存
  13395. * @returns {*} 克隆后的对象或者原值(不是对象)
  13396. */
  13397. function deepClone(obj) {
  13398. var cache = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new WeakMap();
  13399. if (obj === null || (0, _typeof2.default)(obj) !== 'object') return obj;
  13400. if (cache.has(obj)) return cache.get(obj);
  13401. var clone;
  13402. if (obj instanceof Date) {
  13403. clone = new Date(obj.getTime());
  13404. } else if (obj instanceof RegExp) {
  13405. clone = new RegExp(obj);
  13406. } else if (obj instanceof Map) {
  13407. clone = new Map(Array.from(obj, function (_ref) {
  13408. var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  13409. key = _ref2[0],
  13410. value = _ref2[1];
  13411. return [key, deepClone(value, cache)];
  13412. }));
  13413. } else if (obj instanceof Set) {
  13414. clone = new Set(Array.from(obj, function (value) {
  13415. return deepClone(value, cache);
  13416. }));
  13417. } else if (Array.isArray(obj)) {
  13418. clone = obj.map(function (value) {
  13419. return deepClone(value, cache);
  13420. });
  13421. } else if (Object.prototype.toString.call(obj) === '[object Object]') {
  13422. clone = Object.create(Object.getPrototypeOf(obj));
  13423. cache.set(obj, clone);
  13424. for (var _i3 = 0, _Object$entries = Object.entries(obj); _i3 < _Object$entries.length; _i3++) {
  13425. var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i3], 2),
  13426. key = _Object$entries$_i[0],
  13427. value = _Object$entries$_i[1];
  13428. clone[key] = deepClone(value, cache);
  13429. }
  13430. } else {
  13431. clone = Object.assign({}, obj);
  13432. }
  13433. cache.set(obj, clone);
  13434. return clone;
  13435. }
  13436. /**
  13437. * @description JS对象深度合并
  13438. * @param {object} target 需要拷贝的对象
  13439. * @param {object} source 拷贝的来源对象
  13440. * @returns {object|boolean} 深度合并后的对象或者false(入参有不是对象)
  13441. */
  13442. function deepMerge() {
  13443. var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  13444. var source = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  13445. target = deepClone(target);
  13446. if ((0, _typeof2.default)(target) !== 'object' || target === null || (0, _typeof2.default)(source) !== 'object' || source === null) return target;
  13447. var merged = Array.isArray(target) ? target.slice() : Object.assign({}, target);
  13448. for (var prop in source) {
  13449. if (!source.hasOwnProperty(prop)) continue;
  13450. var sourceValue = source[prop];
  13451. var targetValue = merged[prop];
  13452. if (sourceValue instanceof Date) {
  13453. merged[prop] = new Date(sourceValue);
  13454. } else if (sourceValue instanceof RegExp) {
  13455. merged[prop] = new RegExp(sourceValue);
  13456. } else if (sourceValue instanceof Map) {
  13457. merged[prop] = new Map(sourceValue);
  13458. } else if (sourceValue instanceof Set) {
  13459. merged[prop] = new Set(sourceValue);
  13460. } else if ((0, _typeof2.default)(sourceValue) === 'object' && sourceValue !== null) {
  13461. merged[prop] = deepMerge(targetValue, sourceValue);
  13462. } else {
  13463. merged[prop] = sourceValue;
  13464. }
  13465. }
  13466. return merged;
  13467. }
  13468. /**
  13469. * @description error提示
  13470. * @param {*} err 错误内容
  13471. */
  13472. function error(err) {
  13473. // 开发环境才提示,生产环境不会提示
  13474. if (true) {
  13475. console.error("uView\u63D0\u793A\uFF1A".concat(err));
  13476. }
  13477. }
  13478. /**
  13479. * @description 打乱数组
  13480. * @param {array} array 需要打乱的数组
  13481. * @returns {array} 打乱后的数组
  13482. */
  13483. function randomArray() {
  13484. var array = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
  13485. // 原理是sort排序,Math.random()产生0<= x < 1之间的数,会导致x-0.05大于或者小于0
  13486. return array.sort(function () {
  13487. return Math.random() - 0.5;
  13488. });
  13489. }
  13490. // padStart 的 polyfill,因为某些机型或情况,还无法支持es7的padStart,比如电脑版的微信小程序
  13491. // 所以这里做一个兼容polyfill的兼容处理
  13492. if (!String.prototype.padStart) {
  13493. // 为了方便表示这里 fillString 用了ES6 的默认参数,不影响理解
  13494. String.prototype.padStart = function (maxLength) {
  13495. var fillString = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ' ';
  13496. if (Object.prototype.toString.call(fillString) !== '[object String]') {
  13497. throw new TypeError('fillString must be String');
  13498. }
  13499. var str = this;
  13500. // 返回 String(str) 这里是为了使返回的值是字符串字面量,在控制台中更符合直觉
  13501. if (str.length >= maxLength) return String(str);
  13502. var fillLength = maxLength - str.length;
  13503. var times = Math.ceil(fillLength / fillString.length);
  13504. while (times >>= 1) {
  13505. fillString += fillString;
  13506. if (times === 1) {
  13507. fillString += fillString;
  13508. }
  13509. }
  13510. return fillString.slice(0, fillLength) + str;
  13511. };
  13512. }
  13513. /**
  13514. * @description 格式化时间
  13515. * @param {String|Number} dateTime 需要格式化的时间戳
  13516. * @param {String} fmt 格式化规则 yyyy:mm:dd|yyyy:mm|yyyy年mm月dd日|yyyy年mm月dd日 hh时MM分等,可自定义组合 默认yyyy-mm-dd
  13517. * @returns {string} 返回格式化后的字符串
  13518. */
  13519. function timeFormat() {
  13520. var dateTime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  13521. var formatStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-mm-dd';
  13522. var date;
  13523. // 若传入时间为假值,则取当前时间
  13524. if (!dateTime) {
  13525. date = new Date();
  13526. }
  13527. // 若为unix秒时间戳,则转为毫秒时间戳(逻辑有点奇怪,但不敢改,以保证历史兼容)
  13528. else if (/^\d{10}$/.test(dateTime === null || dateTime === void 0 ? void 0 : dateTime.toString().trim())) {
  13529. date = new Date(dateTime * 1000);
  13530. }
  13531. // 若用户传入字符串格式时间戳,new Date无法解析,需做兼容
  13532. else if (typeof dateTime === 'string' && /^\d+$/.test(dateTime.trim())) {
  13533. date = new Date(Number(dateTime));
  13534. }
  13535. // 处理平台性差异,在Safari/Webkit中,new Date仅支持/作为分割符的字符串时间
  13536. // 处理 '2022-07-10 01:02:03',跳过 '2022-07-10T01:02:03'
  13537. else if (typeof dateTime === 'string' && dateTime.includes('-') && !dateTime.includes('T')) {
  13538. date = new Date(dateTime.replace(/-/g, '/'));
  13539. }
  13540. // 其他都认为符合 RFC 2822 规范
  13541. else {
  13542. date = new Date(dateTime);
  13543. }
  13544. var timeSource = {
  13545. 'y': date.getFullYear().toString(),
  13546. // 年
  13547. 'm': (date.getMonth() + 1).toString().padStart(2, '0'),
  13548. // 月
  13549. 'd': date.getDate().toString().padStart(2, '0'),
  13550. // 日
  13551. 'h': date.getHours().toString().padStart(2, '0'),
  13552. // 时
  13553. 'M': date.getMinutes().toString().padStart(2, '0'),
  13554. // 分
  13555. 's': date.getSeconds().toString().padStart(2, '0') // 秒
  13556. // 有其他格式化字符需求可以继续添加,必须转化成字符串
  13557. };
  13558. for (var key in timeSource) {
  13559. var _ref3 = new RegExp("".concat(key, "+")).exec(formatStr) || [],
  13560. _ref4 = (0, _slicedToArray2.default)(_ref3, 1),
  13561. ret = _ref4[0];
  13562. if (ret) {
  13563. // 年可能只需展示两位
  13564. var beginIndex = key === 'y' && ret.length === 2 ? 2 : 0;
  13565. formatStr = formatStr.replace(ret, timeSource[key].slice(beginIndex));
  13566. }
  13567. }
  13568. return formatStr;
  13569. }
  13570. /**
  13571. * @description 时间戳转为多久之前
  13572. * @param {String|Number} timestamp 时间戳
  13573. * @param {String|Boolean} format
  13574. * 格式化规则如果为时间格式字符串,超出一定时间范围,返回固定的时间格式;
  13575. * 如果为布尔值false,无论什么时间,都返回多久以前的格式
  13576. * @returns {string} 转化后的内容
  13577. */
  13578. function timeFrom() {
  13579. var timestamp = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  13580. var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-mm-dd';
  13581. if (timestamp == null) timestamp = Number(new Date());
  13582. timestamp = parseInt(timestamp);
  13583. // 判断用户输入的时间戳是秒还是毫秒,一般前端js获取的时间戳是毫秒(13位),后端传过来的为秒(10位)
  13584. if (timestamp.toString().length == 10) timestamp *= 1000;
  13585. var timer = new Date().getTime() - timestamp;
  13586. timer = parseInt(timer / 1000);
  13587. // 如果小于5分钟,则返回"刚刚",其他以此类推
  13588. var tips = '';
  13589. switch (true) {
  13590. case timer < 300:
  13591. tips = '刚刚';
  13592. break;
  13593. case timer >= 300 && timer < 3600:
  13594. tips = "".concat(parseInt(timer / 60), "\u5206\u949F\u524D");
  13595. break;
  13596. case timer >= 3600 && timer < 86400:
  13597. tips = "".concat(parseInt(timer / 3600), "\u5C0F\u65F6\u524D");
  13598. break;
  13599. case timer >= 86400 && timer < 2592000:
  13600. tips = "".concat(parseInt(timer / 86400), "\u5929\u524D");
  13601. break;
  13602. default:
  13603. // 如果format为false,则无论什么时间戳,都显示xx之前
  13604. if (format === false) {
  13605. if (timer >= 2592000 && timer < 365 * 86400) {
  13606. tips = "".concat(parseInt(timer / (86400 * 30)), "\u4E2A\u6708\u524D");
  13607. } else {
  13608. tips = "".concat(parseInt(timer / (86400 * 365)), "\u5E74\u524D");
  13609. }
  13610. } else {
  13611. tips = timeFormat(timestamp, format);
  13612. }
  13613. }
  13614. return tips;
  13615. }
  13616. /**
  13617. * @description 去除空格
  13618. * @param String str 需要去除空格的字符串
  13619. * @param String pos both(左右)|left|right|all 默认both
  13620. */
  13621. function trim(str) {
  13622. var pos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'both';
  13623. str = String(str);
  13624. if (pos == 'both') {
  13625. return str.replace(/^\s+|\s+$/g, '');
  13626. }
  13627. if (pos == 'left') {
  13628. return str.replace(/^\s*/, '');
  13629. }
  13630. if (pos == 'right') {
  13631. return str.replace(/(\s*$)/g, '');
  13632. }
  13633. if (pos == 'all') {
  13634. return str.replace(/\s+/g, '');
  13635. }
  13636. return str;
  13637. }
  13638. /**
  13639. * @description 对象转url参数
  13640. * @param {object} data,对象
  13641. * @param {Boolean} isPrefix,是否自动加上"?"
  13642. * @param {string} arrayFormat 规则 indices|brackets|repeat|comma
  13643. */
  13644. function queryParams() {
  13645. var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  13646. var isPrefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  13647. var arrayFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'brackets';
  13648. var prefix = isPrefix ? '?' : '';
  13649. var _result = [];
  13650. if (['indices', 'brackets', 'repeat', 'comma'].indexOf(arrayFormat) == -1) arrayFormat = 'brackets';
  13651. var _loop = function _loop(key) {
  13652. var value = data[key];
  13653. // 去掉为空的参数
  13654. if (['', undefined, null].indexOf(value) >= 0) {
  13655. return "continue";
  13656. }
  13657. // 如果值为数组,另行处理
  13658. if (value.constructor === Array) {
  13659. // e.g. {ids: [1, 2, 3]}
  13660. switch (arrayFormat) {
  13661. case 'indices':
  13662. // 结果: ids[0]=1&ids[1]=2&ids[2]=3
  13663. for (var i = 0; i < value.length; i++) {
  13664. _result.push("".concat(key, "[").concat(i, "]=").concat(value[i]));
  13665. }
  13666. break;
  13667. case 'brackets':
  13668. // 结果: ids[]=1&ids[]=2&ids[]=3
  13669. value.forEach(function (_value) {
  13670. _result.push("".concat(key, "[]=").concat(_value));
  13671. });
  13672. break;
  13673. case 'repeat':
  13674. // 结果: ids=1&ids=2&ids=3
  13675. value.forEach(function (_value) {
  13676. _result.push("".concat(key, "=").concat(_value));
  13677. });
  13678. break;
  13679. case 'comma':
  13680. // 结果: ids=1,2,3
  13681. var commaStr = '';
  13682. value.forEach(function (_value) {
  13683. commaStr += (commaStr ? ',' : '') + _value;
  13684. });
  13685. _result.push("".concat(key, "=").concat(commaStr));
  13686. break;
  13687. default:
  13688. value.forEach(function (_value) {
  13689. _result.push("".concat(key, "[]=").concat(_value));
  13690. });
  13691. }
  13692. } else {
  13693. _result.push("".concat(key, "=").concat(value));
  13694. }
  13695. };
  13696. for (var key in data) {
  13697. var _ret = _loop(key);
  13698. if (_ret === "continue") continue;
  13699. }
  13700. return _result.length ? prefix + _result.join('&') : '';
  13701. }
  13702. /**
  13703. * 显示消息提示框
  13704. * @param {String} title 提示的内容,长度与 icon 取值有关。
  13705. * @param {Number} duration 提示的延迟时间,单位毫秒,默认:2000
  13706. */
  13707. function toast(title) {
  13708. var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2000;
  13709. uni.showToast({
  13710. title: String(title),
  13711. icon: 'none',
  13712. duration: duration
  13713. });
  13714. }
  13715. /**
  13716. * @description 根据主题type值,获取对应的图标
  13717. * @param {String} type 主题名称,primary|info|error|warning|success
  13718. * @param {boolean} fill 是否使用fill填充实体的图标
  13719. */
  13720. function type2icon() {
  13721. var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'success';
  13722. var fill = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  13723. // 如果非预置值,默认为success
  13724. if (['primary', 'info', 'error', 'warning', 'success'].indexOf(type) == -1) type = 'success';
  13725. var iconName = '';
  13726. // 目前(2019-12-12),info和primary使用同一个图标
  13727. switch (type) {
  13728. case 'primary':
  13729. iconName = 'info-circle';
  13730. break;
  13731. case 'info':
  13732. iconName = 'info-circle';
  13733. break;
  13734. case 'error':
  13735. iconName = 'close-circle';
  13736. break;
  13737. case 'warning':
  13738. iconName = 'error-circle';
  13739. break;
  13740. case 'success':
  13741. iconName = 'checkmark-circle';
  13742. break;
  13743. default:
  13744. iconName = 'checkmark-circle';
  13745. }
  13746. // 是否是实体类型,加上-fill,在icon组件库中,实体的类名是后面加-fill的
  13747. if (fill) iconName += '-fill';
  13748. return iconName;
  13749. }
  13750. /**
  13751. * @description 数字格式化
  13752. * @param {number|string} number 要格式化的数字
  13753. * @param {number} decimals 保留几位小数
  13754. * @param {string} decimalPoint 小数点符号
  13755. * @param {string} thousandsSeparator 千分位符号
  13756. * @returns {string} 格式化后的数字
  13757. */
  13758. function priceFormat(number) {
  13759. var decimals = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  13760. var decimalPoint = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';
  13761. var thousandsSeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ',';
  13762. number = "".concat(number).replace(/[^0-9+-Ee.]/g, '');
  13763. var n = !isFinite(+number) ? 0 : +number;
  13764. var prec = !isFinite(+decimals) ? 0 : Math.abs(decimals);
  13765. var sep = typeof thousandsSeparator === 'undefined' ? ',' : thousandsSeparator;
  13766. var dec = typeof decimalPoint === 'undefined' ? '.' : decimalPoint;
  13767. var s = '';
  13768. s = (prec ? (0, _digit.round)(n, prec) + '' : "".concat(Math.round(n))).split('.');
  13769. var re = /(-?\d+)(\d{3})/;
  13770. while (re.test(s[0])) {
  13771. s[0] = s[0].replace(re, "$1".concat(sep, "$2"));
  13772. }
  13773. if ((s[1] || '').length < prec) {
  13774. s[1] = s[1] || '';
  13775. s[1] += new Array(prec - s[1].length + 1).join('0');
  13776. }
  13777. return s.join(dec);
  13778. }
  13779. /**
  13780. * @description 获取duration值
  13781. * 如果带有ms或者s直接返回,如果大于一定值,认为是ms单位,小于一定值,认为是s单位
  13782. * 比如以30位阈值,那么300大于30,可以理解为用户想要的是300ms,而不是想花300s去执行一个动画
  13783. * @param {String|number} value 比如: "1s"|"100ms"|1|100
  13784. * @param {boolean} unit 提示: 如果是false 默认返回number
  13785. * @return {string|number}
  13786. */
  13787. function getDuration(value) {
  13788. var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  13789. var valueNum = parseInt(value);
  13790. if (unit) {
  13791. if (/s$/.test(value)) return value;
  13792. return value > 30 ? "".concat(value, "ms") : "".concat(value, "s");
  13793. }
  13794. if (/ms$/.test(value)) return valueNum;
  13795. if (/s$/.test(value)) return valueNum > 30 ? valueNum : valueNum * 1000;
  13796. return valueNum;
  13797. }
  13798. /**
  13799. * @description 日期的月或日补零操作
  13800. * @param {String} value 需要补零的值
  13801. */
  13802. function padZero(value) {
  13803. return "00".concat(value).slice(-2);
  13804. }
  13805. /**
  13806. * @description 在u-form的子组件内容发生变化,或者失去焦点时,尝试通知u-form执行校验方法
  13807. * @param {*} instance
  13808. * @param {*} event
  13809. */
  13810. function formValidate(instance, event) {
  13811. var formItem = uni.$u.$parent.call(instance, 'u-form-item');
  13812. var form = uni.$u.$parent.call(instance, 'u-form');
  13813. // 如果发生变化的input或者textarea等,其父组件中有u-form-item或者u-form等,就执行form的validate方法
  13814. // 同时将form-item的pros传递给form,让其进行精确对象验证
  13815. if (formItem && form) {
  13816. form.validateField(formItem.prop, function () {}, event);
  13817. }
  13818. }
  13819. /**
  13820. * @description 获取某个对象下的属性,用于通过类似'a.b.c'的形式去获取一个对象的的属性的形式
  13821. * @param {object} obj 对象
  13822. * @param {string} key 需要获取的属性字段
  13823. * @returns {*}
  13824. */
  13825. function getProperty(obj, key) {
  13826. if (!obj) {
  13827. return;
  13828. }
  13829. if (typeof key !== 'string' || key === '') {
  13830. return '';
  13831. }
  13832. if (key.indexOf('.') !== -1) {
  13833. var keys = key.split('.');
  13834. var firstObj = obj[keys[0]] || {};
  13835. for (var i = 1; i < keys.length; i++) {
  13836. if (firstObj) {
  13837. firstObj = firstObj[keys[i]];
  13838. }
  13839. }
  13840. return firstObj;
  13841. }
  13842. return obj[key];
  13843. }
  13844. /**
  13845. * @description 设置对象的属性值,如果'a.b.c'的形式进行设置
  13846. * @param {object} obj 对象
  13847. * @param {string} key 需要设置的属性
  13848. * @param {string} value 设置的值
  13849. */
  13850. function setProperty(obj, key, value) {
  13851. if (!obj) {
  13852. return;
  13853. }
  13854. // 递归赋值
  13855. var inFn = function inFn(_obj, keys, v) {
  13856. // 最后一个属性key
  13857. if (keys.length === 1) {
  13858. _obj[keys[0]] = v;
  13859. return;
  13860. }
  13861. // 0~length-1个key
  13862. while (keys.length > 1) {
  13863. var k = keys[0];
  13864. if (!_obj[k] || (0, _typeof2.default)(_obj[k]) !== 'object') {
  13865. _obj[k] = {};
  13866. }
  13867. var _key = keys.shift();
  13868. // 自调用判断是否存在属性,不存在则自动创建对象
  13869. inFn(_obj[k], keys, v);
  13870. }
  13871. };
  13872. if (typeof key !== 'string' || key === '') {} else if (key.indexOf('.') !== -1) {
  13873. // 支持多层级赋值操作
  13874. var keys = key.split('.');
  13875. inFn(obj, keys, value);
  13876. } else {
  13877. obj[key] = value;
  13878. }
  13879. }
  13880. /**
  13881. * @description 获取当前页面路径
  13882. */
  13883. function page() {
  13884. var _pages$route, _pages;
  13885. var pages = getCurrentPages();
  13886. // 某些特殊情况下(比如页面进行redirectTo时的一些时机),pages可能为空数组
  13887. return "/".concat((_pages$route = (_pages = pages[pages.length - 1]) === null || _pages === void 0 ? void 0 : _pages.route) !== null && _pages$route !== void 0 ? _pages$route : '');
  13888. }
  13889. /**
  13890. * @description 获取当前路由栈实例数组
  13891. */
  13892. function pages() {
  13893. var pages = getCurrentPages();
  13894. return pages;
  13895. }
  13896. /**
  13897. * 获取页面历史栈指定层实例
  13898. * @param back {number} [0] - 0或者负数,表示获取历史栈的哪一层,0表示获取当前页面实例,-1 表示获取上一个页面实例。默认0。
  13899. */
  13900. function getHistoryPage() {
  13901. var back = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
  13902. var pages = getCurrentPages();
  13903. var len = pages.length;
  13904. return pages[len - 1 + back];
  13905. }
  13906. /**
  13907. * @description 修改uView内置属性值
  13908. * @param {object} props 修改内置props属性
  13909. * @param {object} config 修改内置config属性
  13910. * @param {object} color 修改内置color属性
  13911. * @param {object} zIndex 修改内置zIndex属性
  13912. */
  13913. function setConfig(_ref5) {
  13914. var _ref5$props = _ref5.props,
  13915. props = _ref5$props === void 0 ? {} : _ref5$props,
  13916. _ref5$config = _ref5.config,
  13917. config = _ref5$config === void 0 ? {} : _ref5$config,
  13918. _ref5$color = _ref5.color,
  13919. color = _ref5$color === void 0 ? {} : _ref5$color,
  13920. _ref5$zIndex = _ref5.zIndex,
  13921. zIndex = _ref5$zIndex === void 0 ? {} : _ref5$zIndex;
  13922. var deepMerge = uni.$u.deepMerge;
  13923. uni.$u.config = deepMerge(uni.$u.config, config);
  13924. uni.$u.props = deepMerge(uni.$u.props, props);
  13925. uni.$u.color = deepMerge(uni.$u.color, color);
  13926. uni.$u.zIndex = deepMerge(uni.$u.zIndex, zIndex);
  13927. }
  13928. var _default = {
  13929. range: range,
  13930. getPx: getPx,
  13931. sleep: sleep,
  13932. os: os,
  13933. sys: sys,
  13934. random: random,
  13935. guid: guid,
  13936. $parent: $parent,
  13937. addStyle: addStyle,
  13938. addUnit: addUnit,
  13939. deepClone: deepClone,
  13940. deepMerge: deepMerge,
  13941. error: error,
  13942. randomArray: randomArray,
  13943. timeFormat: timeFormat,
  13944. timeFrom: timeFrom,
  13945. trim: trim,
  13946. queryParams: queryParams,
  13947. toast: toast,
  13948. type2icon: type2icon,
  13949. priceFormat: priceFormat,
  13950. getDuration: getDuration,
  13951. padZero: padZero,
  13952. formValidate: formValidate,
  13953. getProperty: getProperty,
  13954. setProperty: setProperty,
  13955. page: page,
  13956. pages: pages,
  13957. getHistoryPage: getHistoryPage,
  13958. setConfig: setConfig
  13959. };
  13960. exports.default = _default;
  13961. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  13962. /***/ }),
  13963. /* 67 */
  13964. /*!************************************************************************!*\
  13965. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/digit.js ***!
  13966. \************************************************************************/
  13967. /*! no static exports found */
  13968. /***/ (function(module, exports, __webpack_require__) {
  13969. "use strict";
  13970. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  13971. Object.defineProperty(exports, "__esModule", {
  13972. value: true
  13973. });
  13974. exports.default = void 0;
  13975. exports.divide = divide;
  13976. exports.enableBoundaryChecking = enableBoundaryChecking;
  13977. exports.minus = minus;
  13978. exports.plus = plus;
  13979. exports.round = round;
  13980. exports.times = times;
  13981. var _toArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toArray */ 68));
  13982. var _boundaryCheckingState = true; // 是否进行越界检查的全局开关
  13983. /**
  13984. * 把错误的数据转正
  13985. * @private
  13986. * @example strip(0.09999999999999998)=0.1
  13987. */
  13988. function strip(num) {
  13989. var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 15;
  13990. return +parseFloat(Number(num).toPrecision(precision));
  13991. }
  13992. /**
  13993. * Return digits length of a number
  13994. * @private
  13995. * @param {*number} num Input number
  13996. */
  13997. function digitLength(num) {
  13998. // Get digit length of e
  13999. var eSplit = num.toString().split(/[eE]/);
  14000. var len = (eSplit[0].split('.')[1] || '').length - +(eSplit[1] || 0);
  14001. return len > 0 ? len : 0;
  14002. }
  14003. /**
  14004. * 把小数转成整数,如果是小数则放大成整数
  14005. * @private
  14006. * @param {*number} num 输入数
  14007. */
  14008. function float2Fixed(num) {
  14009. if (num.toString().indexOf('e') === -1) {
  14010. return Number(num.toString().replace('.', ''));
  14011. }
  14012. var dLen = digitLength(num);
  14013. return dLen > 0 ? strip(Number(num) * Math.pow(10, dLen)) : Number(num);
  14014. }
  14015. /**
  14016. * 检测数字是否越界,如果越界给出提示
  14017. * @private
  14018. * @param {*number} num 输入数
  14019. */
  14020. function checkBoundary(num) {
  14021. if (_boundaryCheckingState) {
  14022. if (num > Number.MAX_SAFE_INTEGER || num < Number.MIN_SAFE_INTEGER) {
  14023. console.warn("".concat(num, " \u8D85\u51FA\u4E86\u7CBE\u5EA6\u9650\u5236\uFF0C\u7ED3\u679C\u53EF\u80FD\u4E0D\u6B63\u786E"));
  14024. }
  14025. }
  14026. }
  14027. /**
  14028. * 把递归操作扁平迭代化
  14029. * @param {number[]} arr 要操作的数字数组
  14030. * @param {function} operation 迭代操作
  14031. * @private
  14032. */
  14033. function iteratorOperation(arr, operation) {
  14034. var _arr = (0, _toArray2.default)(arr),
  14035. num1 = _arr[0],
  14036. num2 = _arr[1],
  14037. others = _arr.slice(2);
  14038. var res = operation(num1, num2);
  14039. others.forEach(function (num) {
  14040. res = operation(res, num);
  14041. });
  14042. return res;
  14043. }
  14044. /**
  14045. * 高精度乘法
  14046. * @export
  14047. */
  14048. function times() {
  14049. for (var _len = arguments.length, nums = new Array(_len), _key = 0; _key < _len; _key++) {
  14050. nums[_key] = arguments[_key];
  14051. }
  14052. if (nums.length > 2) {
  14053. return iteratorOperation(nums, times);
  14054. }
  14055. var num1 = nums[0],
  14056. num2 = nums[1];
  14057. var num1Changed = float2Fixed(num1);
  14058. var num2Changed = float2Fixed(num2);
  14059. var baseNum = digitLength(num1) + digitLength(num2);
  14060. var leftValue = num1Changed * num2Changed;
  14061. checkBoundary(leftValue);
  14062. return leftValue / Math.pow(10, baseNum);
  14063. }
  14064. /**
  14065. * 高精度加法
  14066. * @export
  14067. */
  14068. function plus() {
  14069. for (var _len2 = arguments.length, nums = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
  14070. nums[_key2] = arguments[_key2];
  14071. }
  14072. if (nums.length > 2) {
  14073. return iteratorOperation(nums, plus);
  14074. }
  14075. var num1 = nums[0],
  14076. num2 = nums[1];
  14077. // 取最大的小数位
  14078. var baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));
  14079. // 把小数都转为整数然后再计算
  14080. return (times(num1, baseNum) + times(num2, baseNum)) / baseNum;
  14081. }
  14082. /**
  14083. * 高精度减法
  14084. * @export
  14085. */
  14086. function minus() {
  14087. for (var _len3 = arguments.length, nums = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
  14088. nums[_key3] = arguments[_key3];
  14089. }
  14090. if (nums.length > 2) {
  14091. return iteratorOperation(nums, minus);
  14092. }
  14093. var num1 = nums[0],
  14094. num2 = nums[1];
  14095. var baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));
  14096. return (times(num1, baseNum) - times(num2, baseNum)) / baseNum;
  14097. }
  14098. /**
  14099. * 高精度除法
  14100. * @export
  14101. */
  14102. function divide() {
  14103. for (var _len4 = arguments.length, nums = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
  14104. nums[_key4] = arguments[_key4];
  14105. }
  14106. if (nums.length > 2) {
  14107. return iteratorOperation(nums, divide);
  14108. }
  14109. var num1 = nums[0],
  14110. num2 = nums[1];
  14111. var num1Changed = float2Fixed(num1);
  14112. var num2Changed = float2Fixed(num2);
  14113. checkBoundary(num1Changed);
  14114. checkBoundary(num2Changed);
  14115. // 重要,这里必须用strip进行修正
  14116. return times(num1Changed / num2Changed, strip(Math.pow(10, digitLength(num2) - digitLength(num1))));
  14117. }
  14118. /**
  14119. * 四舍五入
  14120. * @export
  14121. */
  14122. function round(num, ratio) {
  14123. var base = Math.pow(10, ratio);
  14124. var result = divide(Math.round(Math.abs(times(num, base))), base);
  14125. if (num < 0 && result !== 0) {
  14126. result = times(result, -1);
  14127. }
  14128. // 位数不足则补0
  14129. return result;
  14130. }
  14131. /**
  14132. * 是否进行边界检查,默认开启
  14133. * @param flag 标记开关,true 为开启,false 为关闭,默认为 true
  14134. * @export
  14135. */
  14136. function enableBoundaryChecking() {
  14137. var flag = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
  14138. _boundaryCheckingState = flag;
  14139. }
  14140. var _default = {
  14141. times: times,
  14142. plus: plus,
  14143. minus: minus,
  14144. divide: divide,
  14145. round: round,
  14146. enableBoundaryChecking: enableBoundaryChecking
  14147. };
  14148. exports.default = _default;
  14149. /***/ }),
  14150. /* 68 */
  14151. /*!********************************************************!*\
  14152. !*** ./node_modules/@babel/runtime/helpers/toArray.js ***!
  14153. \********************************************************/
  14154. /*! no static exports found */
  14155. /***/ (function(module, exports, __webpack_require__) {
  14156. var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 6);
  14157. var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 20);
  14158. var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 8);
  14159. var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 10);
  14160. function _toArray(arr) {
  14161. return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();
  14162. }
  14163. module.exports = _toArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
  14164. /***/ }),
  14165. /* 69 */
  14166. /*!***********************************************************************!*\
  14167. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/config.js ***!
  14168. \***********************************************************************/
  14169. /*! no static exports found */
  14170. /***/ (function(module, exports, __webpack_require__) {
  14171. "use strict";
  14172. Object.defineProperty(exports, "__esModule", {
  14173. value: true
  14174. });
  14175. exports.default = void 0;
  14176. // 此版本发布于2023-03-27
  14177. var version = '2.0.36';
  14178. // 开发环境才提示,生产环境不会提示
  14179. if (true) {
  14180. console.log("\n %c uView V".concat(version, " %c https://uviewui.com/ \n\n"), 'color: #ffffff; background: #3c9cff; padding:5px 0; border-radius: 5px;');
  14181. }
  14182. var _default = {
  14183. v: version,
  14184. version: version,
  14185. // 主题名称
  14186. type: ['primary', 'success', 'info', 'error', 'warning'],
  14187. // 颜色部分,本来可以通过scss的:export导出供js使用,但是奈何nvue不支持
  14188. color: {
  14189. 'u-primary': '#2979ff',
  14190. 'u-warning': '#ff9900',
  14191. 'u-success': '#19be6b',
  14192. 'u-error': '#fa3534',
  14193. 'u-info': '#909399',
  14194. 'u-main-color': '#303133',
  14195. 'u-content-color': '#606266',
  14196. 'u-tips-color': '#909399',
  14197. 'u-light-color': '#c0c4cc'
  14198. },
  14199. // 默认单位,可以通过配置为rpx,那么在用于传入组件大小参数为数值时,就默认为rpx
  14200. unit: 'px'
  14201. };
  14202. exports.default = _default;
  14203. /***/ }),
  14204. /* 70 */
  14205. /*!**********************************************************************!*\
  14206. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props.js ***!
  14207. \**********************************************************************/
  14208. /*! no static exports found */
  14209. /***/ (function(module, exports, __webpack_require__) {
  14210. "use strict";
  14211. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  14212. Object.defineProperty(exports, "__esModule", {
  14213. value: true
  14214. });
  14215. exports.default = void 0;
  14216. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  14217. var _config = _interopRequireDefault(__webpack_require__(/*! ./config */ 69));
  14218. var _actionSheet = _interopRequireDefault(__webpack_require__(/*! ./props/actionSheet.js */ 71));
  14219. var _album = _interopRequireDefault(__webpack_require__(/*! ./props/album.js */ 72));
  14220. var _alert = _interopRequireDefault(__webpack_require__(/*! ./props/alert.js */ 73));
  14221. var _avatar = _interopRequireDefault(__webpack_require__(/*! ./props/avatar */ 74));
  14222. var _avatarGroup = _interopRequireDefault(__webpack_require__(/*! ./props/avatarGroup */ 75));
  14223. var _backtop = _interopRequireDefault(__webpack_require__(/*! ./props/backtop */ 76));
  14224. var _badge = _interopRequireDefault(__webpack_require__(/*! ./props/badge */ 77));
  14225. var _button = _interopRequireDefault(__webpack_require__(/*! ./props/button */ 78));
  14226. var _calendar = _interopRequireDefault(__webpack_require__(/*! ./props/calendar */ 79));
  14227. var _carKeyboard = _interopRequireDefault(__webpack_require__(/*! ./props/carKeyboard */ 80));
  14228. var _cell = _interopRequireDefault(__webpack_require__(/*! ./props/cell */ 81));
  14229. var _cellGroup = _interopRequireDefault(__webpack_require__(/*! ./props/cellGroup */ 82));
  14230. var _checkbox = _interopRequireDefault(__webpack_require__(/*! ./props/checkbox */ 83));
  14231. var _checkboxGroup = _interopRequireDefault(__webpack_require__(/*! ./props/checkboxGroup */ 84));
  14232. var _circleProgress = _interopRequireDefault(__webpack_require__(/*! ./props/circleProgress */ 85));
  14233. var _code = _interopRequireDefault(__webpack_require__(/*! ./props/code */ 86));
  14234. var _codeInput = _interopRequireDefault(__webpack_require__(/*! ./props/codeInput */ 87));
  14235. var _col = _interopRequireDefault(__webpack_require__(/*! ./props/col */ 88));
  14236. var _collapse = _interopRequireDefault(__webpack_require__(/*! ./props/collapse */ 89));
  14237. var _collapseItem = _interopRequireDefault(__webpack_require__(/*! ./props/collapseItem */ 90));
  14238. var _columnNotice = _interopRequireDefault(__webpack_require__(/*! ./props/columnNotice */ 91));
  14239. var _countDown = _interopRequireDefault(__webpack_require__(/*! ./props/countDown */ 92));
  14240. var _countTo = _interopRequireDefault(__webpack_require__(/*! ./props/countTo */ 93));
  14241. var _datetimePicker = _interopRequireDefault(__webpack_require__(/*! ./props/datetimePicker */ 94));
  14242. var _divider = _interopRequireDefault(__webpack_require__(/*! ./props/divider */ 95));
  14243. var _empty = _interopRequireDefault(__webpack_require__(/*! ./props/empty */ 96));
  14244. var _form = _interopRequireDefault(__webpack_require__(/*! ./props/form */ 97));
  14245. var _formItem = _interopRequireDefault(__webpack_require__(/*! ./props/formItem */ 98));
  14246. var _gap = _interopRequireDefault(__webpack_require__(/*! ./props/gap */ 99));
  14247. var _grid = _interopRequireDefault(__webpack_require__(/*! ./props/grid */ 100));
  14248. var _gridItem = _interopRequireDefault(__webpack_require__(/*! ./props/gridItem */ 101));
  14249. var _icon = _interopRequireDefault(__webpack_require__(/*! ./props/icon */ 102));
  14250. var _image = _interopRequireDefault(__webpack_require__(/*! ./props/image */ 103));
  14251. var _indexAnchor = _interopRequireDefault(__webpack_require__(/*! ./props/indexAnchor */ 104));
  14252. var _indexList = _interopRequireDefault(__webpack_require__(/*! ./props/indexList */ 105));
  14253. var _input = _interopRequireDefault(__webpack_require__(/*! ./props/input */ 106));
  14254. var _keyboard = _interopRequireDefault(__webpack_require__(/*! ./props/keyboard */ 107));
  14255. var _line = _interopRequireDefault(__webpack_require__(/*! ./props/line */ 108));
  14256. var _lineProgress = _interopRequireDefault(__webpack_require__(/*! ./props/lineProgress */ 109));
  14257. var _link = _interopRequireDefault(__webpack_require__(/*! ./props/link */ 110));
  14258. var _list = _interopRequireDefault(__webpack_require__(/*! ./props/list */ 111));
  14259. var _listItem = _interopRequireDefault(__webpack_require__(/*! ./props/listItem */ 112));
  14260. var _loadingIcon = _interopRequireDefault(__webpack_require__(/*! ./props/loadingIcon */ 113));
  14261. var _loadingPage = _interopRequireDefault(__webpack_require__(/*! ./props/loadingPage */ 114));
  14262. var _loadmore = _interopRequireDefault(__webpack_require__(/*! ./props/loadmore */ 115));
  14263. var _modal = _interopRequireDefault(__webpack_require__(/*! ./props/modal */ 116));
  14264. var _navbar = _interopRequireDefault(__webpack_require__(/*! ./props/navbar */ 117));
  14265. var _noNetwork = _interopRequireDefault(__webpack_require__(/*! ./props/noNetwork */ 119));
  14266. var _noticeBar = _interopRequireDefault(__webpack_require__(/*! ./props/noticeBar */ 120));
  14267. var _notify = _interopRequireDefault(__webpack_require__(/*! ./props/notify */ 121));
  14268. var _numberBox = _interopRequireDefault(__webpack_require__(/*! ./props/numberBox */ 122));
  14269. var _numberKeyboard = _interopRequireDefault(__webpack_require__(/*! ./props/numberKeyboard */ 123));
  14270. var _overlay = _interopRequireDefault(__webpack_require__(/*! ./props/overlay */ 124));
  14271. var _parse = _interopRequireDefault(__webpack_require__(/*! ./props/parse */ 125));
  14272. var _picker = _interopRequireDefault(__webpack_require__(/*! ./props/picker */ 126));
  14273. var _popup = _interopRequireDefault(__webpack_require__(/*! ./props/popup */ 127));
  14274. var _radio = _interopRequireDefault(__webpack_require__(/*! ./props/radio */ 128));
  14275. var _radioGroup = _interopRequireDefault(__webpack_require__(/*! ./props/radioGroup */ 129));
  14276. var _rate = _interopRequireDefault(__webpack_require__(/*! ./props/rate */ 130));
  14277. var _readMore = _interopRequireDefault(__webpack_require__(/*! ./props/readMore */ 131));
  14278. var _row = _interopRequireDefault(__webpack_require__(/*! ./props/row */ 132));
  14279. var _rowNotice = _interopRequireDefault(__webpack_require__(/*! ./props/rowNotice */ 133));
  14280. var _scrollList = _interopRequireDefault(__webpack_require__(/*! ./props/scrollList */ 134));
  14281. var _search = _interopRequireDefault(__webpack_require__(/*! ./props/search */ 135));
  14282. var _section = _interopRequireDefault(__webpack_require__(/*! ./props/section */ 136));
  14283. var _skeleton = _interopRequireDefault(__webpack_require__(/*! ./props/skeleton */ 137));
  14284. var _slider = _interopRequireDefault(__webpack_require__(/*! ./props/slider */ 138));
  14285. var _statusBar = _interopRequireDefault(__webpack_require__(/*! ./props/statusBar */ 139));
  14286. var _steps = _interopRequireDefault(__webpack_require__(/*! ./props/steps */ 140));
  14287. var _stepsItem = _interopRequireDefault(__webpack_require__(/*! ./props/stepsItem */ 141));
  14288. var _sticky = _interopRequireDefault(__webpack_require__(/*! ./props/sticky */ 142));
  14289. var _subsection = _interopRequireDefault(__webpack_require__(/*! ./props/subsection */ 143));
  14290. var _swipeAction = _interopRequireDefault(__webpack_require__(/*! ./props/swipeAction */ 144));
  14291. var _swipeActionItem = _interopRequireDefault(__webpack_require__(/*! ./props/swipeActionItem */ 145));
  14292. var _swiper = _interopRequireDefault(__webpack_require__(/*! ./props/swiper */ 146));
  14293. var _swipterIndicator = _interopRequireDefault(__webpack_require__(/*! ./props/swipterIndicator */ 147));
  14294. var _switch2 = _interopRequireDefault(__webpack_require__(/*! ./props/switch */ 148));
  14295. var _tabbar = _interopRequireDefault(__webpack_require__(/*! ./props/tabbar */ 149));
  14296. var _tabbarItem = _interopRequireDefault(__webpack_require__(/*! ./props/tabbarItem */ 150));
  14297. var _tabs = _interopRequireDefault(__webpack_require__(/*! ./props/tabs */ 151));
  14298. var _tag = _interopRequireDefault(__webpack_require__(/*! ./props/tag */ 152));
  14299. var _text = _interopRequireDefault(__webpack_require__(/*! ./props/text */ 153));
  14300. var _textarea = _interopRequireDefault(__webpack_require__(/*! ./props/textarea */ 154));
  14301. var _toast = _interopRequireDefault(__webpack_require__(/*! ./props/toast */ 155));
  14302. var _toolbar = _interopRequireDefault(__webpack_require__(/*! ./props/toolbar */ 156));
  14303. var _tooltip = _interopRequireDefault(__webpack_require__(/*! ./props/tooltip */ 157));
  14304. var _transition = _interopRequireDefault(__webpack_require__(/*! ./props/transition */ 158));
  14305. var _upload = _interopRequireDefault(__webpack_require__(/*! ./props/upload */ 159));
  14306. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  14307. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  14308. var color = _config.default.color;
  14309. var _default = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _actionSheet.default), _album.default), _alert.default), _avatar.default), _avatarGroup.default), _backtop.default), _badge.default), _button.default), _calendar.default), _carKeyboard.default), _cell.default), _cellGroup.default), _checkbox.default), _checkboxGroup.default), _circleProgress.default), _code.default), _codeInput.default), _col.default), _collapse.default), _collapseItem.default), _columnNotice.default), _countDown.default), _countTo.default), _datetimePicker.default), _divider.default), _empty.default), _form.default), _formItem.default), _gap.default), _grid.default), _gridItem.default), _icon.default), _image.default), _indexAnchor.default), _indexList.default), _input.default), _keyboard.default), _line.default), _lineProgress.default), _link.default), _list.default), _listItem.default), _loadingIcon.default), _loadingPage.default), _loadmore.default), _modal.default), _navbar.default), _noNetwork.default), _noticeBar.default), _notify.default), _numberBox.default), _numberKeyboard.default), _overlay.default), _parse.default), _picker.default), _popup.default), _radio.default), _radioGroup.default), _rate.default), _readMore.default), _row.default), _rowNotice.default), _scrollList.default), _search.default), _section.default), _skeleton.default), _slider.default), _statusBar.default), _steps.default), _stepsItem.default), _sticky.default), _subsection.default), _swipeAction.default), _swipeActionItem.default), _swiper.default), _swipterIndicator.default), _switch2.default), _tabbar.default), _tabbarItem.default), _tabs.default), _tag.default), _text.default), _textarea.default), _toast.default), _toolbar.default), _tooltip.default), _transition.default), _upload.default);
  14310. exports.default = _default;
  14311. /***/ }),
  14312. /* 71 */
  14313. /*!**********************************************************************************!*\
  14314. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/actionSheet.js ***!
  14315. \**********************************************************************************/
  14316. /*! no static exports found */
  14317. /***/ (function(module, exports, __webpack_require__) {
  14318. "use strict";
  14319. Object.defineProperty(exports, "__esModule", {
  14320. value: true
  14321. });
  14322. exports.default = void 0;
  14323. /*
  14324. * @Author : LQ
  14325. * @Description :
  14326. * @version : 1.0
  14327. * @Date : 2021-08-20 16:44:21
  14328. * @LastAuthor : LQ
  14329. * @lastTime : 2021-08-20 16:44:35
  14330. * @FilePath : /u-view2.0/uview-ui/libs/config/props/actionSheet.js
  14331. */
  14332. var _default = {
  14333. // action-sheet组件
  14334. actionSheet: {
  14335. show: false,
  14336. title: '',
  14337. description: '',
  14338. actions: function actions() {
  14339. return [];
  14340. },
  14341. index: '',
  14342. cancelText: '',
  14343. closeOnClickAction: true,
  14344. safeAreaInsetBottom: true,
  14345. openType: '',
  14346. closeOnClickOverlay: true,
  14347. round: 0
  14348. }
  14349. };
  14350. exports.default = _default;
  14351. /***/ }),
  14352. /* 72 */
  14353. /*!****************************************************************************!*\
  14354. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/album.js ***!
  14355. \****************************************************************************/
  14356. /*! no static exports found */
  14357. /***/ (function(module, exports, __webpack_require__) {
  14358. "use strict";
  14359. Object.defineProperty(exports, "__esModule", {
  14360. value: true
  14361. });
  14362. exports.default = void 0;
  14363. /*
  14364. * @Author : LQ
  14365. * @Description :
  14366. * @version : 1.0
  14367. * @Date : 2021-08-20 16:44:21
  14368. * @LastAuthor : LQ
  14369. * @lastTime : 2021-08-20 16:47:24
  14370. * @FilePath : /u-view2.0/uview-ui/libs/config/props/album.js
  14371. */
  14372. var _default = {
  14373. // album 组件
  14374. album: {
  14375. urls: function urls() {
  14376. return [];
  14377. },
  14378. keyName: '',
  14379. singleSize: 180,
  14380. multipleSize: 70,
  14381. space: 6,
  14382. singleMode: 'scaleToFill',
  14383. multipleMode: 'aspectFill',
  14384. maxCount: 9,
  14385. previewFullImage: true,
  14386. rowCount: 3,
  14387. showMore: true
  14388. }
  14389. };
  14390. exports.default = _default;
  14391. /***/ }),
  14392. /* 73 */
  14393. /*!****************************************************************************!*\
  14394. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/alert.js ***!
  14395. \****************************************************************************/
  14396. /*! no static exports found */
  14397. /***/ (function(module, exports, __webpack_require__) {
  14398. "use strict";
  14399. Object.defineProperty(exports, "__esModule", {
  14400. value: true
  14401. });
  14402. exports.default = void 0;
  14403. /*
  14404. * @Author : LQ
  14405. * @Description :
  14406. * @version : 1.0
  14407. * @Date : 2021-08-20 16:44:21
  14408. * @LastAuthor : LQ
  14409. * @lastTime : 2021-08-20 16:48:53
  14410. * @FilePath : /u-view2.0/uview-ui/libs/config/props/alert.js
  14411. */
  14412. var _default = {
  14413. // alert警告组件
  14414. alert: {
  14415. title: '',
  14416. type: 'warning',
  14417. description: '',
  14418. closable: false,
  14419. showIcon: false,
  14420. effect: 'light',
  14421. center: false,
  14422. fontSize: 14
  14423. }
  14424. };
  14425. exports.default = _default;
  14426. /***/ }),
  14427. /* 74 */
  14428. /*!*****************************************************************************!*\
  14429. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/avatar.js ***!
  14430. \*****************************************************************************/
  14431. /*! no static exports found */
  14432. /***/ (function(module, exports, __webpack_require__) {
  14433. "use strict";
  14434. Object.defineProperty(exports, "__esModule", {
  14435. value: true
  14436. });
  14437. exports.default = void 0;
  14438. /*
  14439. * @Author : LQ
  14440. * @Description :
  14441. * @version : 1.0
  14442. * @Date : 2021-08-20 16:44:21
  14443. * @LastAuthor : LQ
  14444. * @lastTime : 2021-08-20 16:49:22
  14445. * @FilePath : /u-view2.0/uview-ui/libs/config/props/avatar.js
  14446. */
  14447. var _default = {
  14448. // avatar 组件
  14449. avatar: {
  14450. src: '',
  14451. shape: 'circle',
  14452. size: 40,
  14453. mode: 'scaleToFill',
  14454. text: '',
  14455. bgColor: '#c0c4cc',
  14456. color: '#ffffff',
  14457. fontSize: 18,
  14458. icon: '',
  14459. mpAvatar: false,
  14460. randomBgColor: false,
  14461. defaultUrl: '',
  14462. colorIndex: '',
  14463. name: ''
  14464. }
  14465. };
  14466. exports.default = _default;
  14467. /***/ }),
  14468. /* 75 */
  14469. /*!**********************************************************************************!*\
  14470. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/avatarGroup.js ***!
  14471. \**********************************************************************************/
  14472. /*! no static exports found */
  14473. /***/ (function(module, exports, __webpack_require__) {
  14474. "use strict";
  14475. Object.defineProperty(exports, "__esModule", {
  14476. value: true
  14477. });
  14478. exports.default = void 0;
  14479. /*
  14480. * @Author : LQ
  14481. * @Description :
  14482. * @version : 1.0
  14483. * @Date : 2021-08-20 16:44:21
  14484. * @LastAuthor : LQ
  14485. * @lastTime : 2021-08-20 16:49:55
  14486. * @FilePath : /u-view2.0/uview-ui/libs/config/props/avatarGroup.js
  14487. */
  14488. var _default = {
  14489. // avatarGroup 组件
  14490. avatarGroup: {
  14491. urls: function urls() {
  14492. return [];
  14493. },
  14494. maxCount: 5,
  14495. shape: 'circle',
  14496. mode: 'scaleToFill',
  14497. showMore: true,
  14498. size: 40,
  14499. keyName: '',
  14500. gap: 0.5,
  14501. extraValue: 0
  14502. }
  14503. };
  14504. exports.default = _default;
  14505. /***/ }),
  14506. /* 76 */
  14507. /*!******************************************************************************!*\
  14508. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/backtop.js ***!
  14509. \******************************************************************************/
  14510. /*! no static exports found */
  14511. /***/ (function(module, exports, __webpack_require__) {
  14512. "use strict";
  14513. Object.defineProperty(exports, "__esModule", {
  14514. value: true
  14515. });
  14516. exports.default = void 0;
  14517. /*
  14518. * @Author : LQ
  14519. * @Description :
  14520. * @version : 1.0
  14521. * @Date : 2021-08-20 16:44:21
  14522. * @LastAuthor : LQ
  14523. * @lastTime : 2021-08-20 16:50:18
  14524. * @FilePath : /u-view2.0/uview-ui/libs/config/props/backtop.js
  14525. */
  14526. var _default = {
  14527. // backtop组件
  14528. backtop: {
  14529. mode: 'circle',
  14530. icon: 'arrow-upward',
  14531. text: '',
  14532. duration: 100,
  14533. scrollTop: 0,
  14534. top: 400,
  14535. bottom: 100,
  14536. right: 20,
  14537. zIndex: 9,
  14538. iconStyle: function iconStyle() {
  14539. return {
  14540. color: '#909399',
  14541. fontSize: '19px'
  14542. };
  14543. }
  14544. }
  14545. };
  14546. exports.default = _default;
  14547. /***/ }),
  14548. /* 77 */
  14549. /*!****************************************************************************!*\
  14550. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/badge.js ***!
  14551. \****************************************************************************/
  14552. /*! no static exports found */
  14553. /***/ (function(module, exports, __webpack_require__) {
  14554. "use strict";
  14555. Object.defineProperty(exports, "__esModule", {
  14556. value: true
  14557. });
  14558. exports.default = void 0;
  14559. /*
  14560. * @Author : LQ
  14561. * @Description :
  14562. * @version : 1.0
  14563. * @Date : 2021-08-20 16:44:21
  14564. * @LastAuthor : LQ
  14565. * @lastTime : 2021-08-23 19:51:50
  14566. * @FilePath : /u-view2.0/uview-ui/libs/config/props/badge.js
  14567. */
  14568. var _default = {
  14569. // 徽标数组件
  14570. badge: {
  14571. isDot: false,
  14572. value: '',
  14573. show: true,
  14574. max: 999,
  14575. type: 'error',
  14576. showZero: false,
  14577. bgColor: null,
  14578. color: null,
  14579. shape: 'circle',
  14580. numberType: 'overflow',
  14581. offset: function offset() {
  14582. return [];
  14583. },
  14584. inverted: false,
  14585. absolute: false
  14586. }
  14587. };
  14588. exports.default = _default;
  14589. /***/ }),
  14590. /* 78 */
  14591. /*!*****************************************************************************!*\
  14592. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/button.js ***!
  14593. \*****************************************************************************/
  14594. /*! no static exports found */
  14595. /***/ (function(module, exports, __webpack_require__) {
  14596. "use strict";
  14597. Object.defineProperty(exports, "__esModule", {
  14598. value: true
  14599. });
  14600. exports.default = void 0;
  14601. /*
  14602. * @Author : LQ
  14603. * @Description :
  14604. * @version : 1.0
  14605. * @Date : 2021-08-20 16:44:21
  14606. * @LastAuthor : LQ
  14607. * @lastTime : 2021-08-20 16:51:27
  14608. * @FilePath : /u-view2.0/uview-ui/libs/config/props/button.js
  14609. */
  14610. var _default = {
  14611. // button组件
  14612. button: {
  14613. hairline: false,
  14614. type: 'info',
  14615. size: 'normal',
  14616. shape: 'square',
  14617. plain: false,
  14618. disabled: false,
  14619. loading: false,
  14620. loadingText: '',
  14621. loadingMode: 'spinner',
  14622. loadingSize: 15,
  14623. openType: '',
  14624. formType: '',
  14625. appParameter: '',
  14626. hoverStopPropagation: true,
  14627. lang: 'en',
  14628. sessionFrom: '',
  14629. sendMessageTitle: '',
  14630. sendMessagePath: '',
  14631. sendMessageImg: '',
  14632. showMessageCard: false,
  14633. dataName: '',
  14634. throttleTime: 0,
  14635. hoverStartTime: 0,
  14636. hoverStayTime: 200,
  14637. text: '',
  14638. icon: '',
  14639. iconColor: '',
  14640. color: ''
  14641. }
  14642. };
  14643. exports.default = _default;
  14644. /***/ }),
  14645. /* 79 */
  14646. /*!*******************************************************************************!*\
  14647. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/calendar.js ***!
  14648. \*******************************************************************************/
  14649. /*! no static exports found */
  14650. /***/ (function(module, exports, __webpack_require__) {
  14651. "use strict";
  14652. Object.defineProperty(exports, "__esModule", {
  14653. value: true
  14654. });
  14655. exports.default = void 0;
  14656. /*
  14657. * @Author : LQ
  14658. * @Description :
  14659. * @version : 1.0
  14660. * @Date : 2021-08-20 16:44:21
  14661. * @LastAuthor : LQ
  14662. * @lastTime : 2021-08-20 16:52:43
  14663. * @FilePath : /u-view2.0/uview-ui/libs/config/props/calendar.js
  14664. */
  14665. var _default = {
  14666. // calendar 组件
  14667. calendar: {
  14668. title: '日期选择',
  14669. showTitle: true,
  14670. showSubtitle: true,
  14671. mode: 'single',
  14672. startText: '开始',
  14673. endText: '结束',
  14674. customList: function customList() {
  14675. return [];
  14676. },
  14677. color: '#3c9cff',
  14678. minDate: 0,
  14679. maxDate: 0,
  14680. defaultDate: null,
  14681. maxCount: Number.MAX_SAFE_INTEGER,
  14682. // Infinity
  14683. rowHeight: 56,
  14684. formatter: null,
  14685. showLunar: false,
  14686. showMark: true,
  14687. confirmText: '确定',
  14688. confirmDisabledText: '确定',
  14689. show: false,
  14690. closeOnClickOverlay: false,
  14691. readonly: false,
  14692. showConfirm: true,
  14693. maxRange: Number.MAX_SAFE_INTEGER,
  14694. // Infinity
  14695. rangePrompt: '',
  14696. showRangePrompt: true,
  14697. allowSameDay: false,
  14698. round: 0,
  14699. monthNum: 3
  14700. }
  14701. };
  14702. exports.default = _default;
  14703. /***/ }),
  14704. /* 80 */
  14705. /*!**********************************************************************************!*\
  14706. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/carKeyboard.js ***!
  14707. \**********************************************************************************/
  14708. /*! no static exports found */
  14709. /***/ (function(module, exports, __webpack_require__) {
  14710. "use strict";
  14711. Object.defineProperty(exports, "__esModule", {
  14712. value: true
  14713. });
  14714. exports.default = void 0;
  14715. /*
  14716. * @Author : LQ
  14717. * @Description :
  14718. * @version : 1.0
  14719. * @Date : 2021-08-20 16:44:21
  14720. * @LastAuthor : LQ
  14721. * @lastTime : 2021-08-20 16:53:20
  14722. * @FilePath : /u-view2.0/uview-ui/libs/config/props/carKeyboard.js
  14723. */
  14724. var _default = {
  14725. // 车牌号键盘
  14726. carKeyboard: {
  14727. random: false
  14728. }
  14729. };
  14730. exports.default = _default;
  14731. /***/ }),
  14732. /* 81 */
  14733. /*!***************************************************************************!*\
  14734. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/cell.js ***!
  14735. \***************************************************************************/
  14736. /*! no static exports found */
  14737. /***/ (function(module, exports, __webpack_require__) {
  14738. "use strict";
  14739. Object.defineProperty(exports, "__esModule", {
  14740. value: true
  14741. });
  14742. exports.default = void 0;
  14743. /*
  14744. * @Author : LQ
  14745. * @Description :
  14746. * @version : 1.0
  14747. * @Date : 2021-08-20 16:44:21
  14748. * @LastAuthor : LQ
  14749. * @lastTime : 2021-08-23 20:53:09
  14750. * @FilePath : /u-view2.0/uview-ui/libs/config/props/cell.js
  14751. */
  14752. var _default = {
  14753. // cell组件的props
  14754. cell: {
  14755. customClass: '',
  14756. title: '',
  14757. label: '',
  14758. value: '',
  14759. icon: '',
  14760. disabled: false,
  14761. border: true,
  14762. center: false,
  14763. url: '',
  14764. linkType: 'navigateTo',
  14765. clickable: false,
  14766. isLink: false,
  14767. required: false,
  14768. arrowDirection: '',
  14769. iconStyle: {},
  14770. rightIconStyle: {},
  14771. rightIcon: 'arrow-right',
  14772. titleStyle: {},
  14773. size: '',
  14774. stop: true,
  14775. name: ''
  14776. }
  14777. };
  14778. exports.default = _default;
  14779. /***/ }),
  14780. /* 82 */
  14781. /*!********************************************************************************!*\
  14782. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/cellGroup.js ***!
  14783. \********************************************************************************/
  14784. /*! no static exports found */
  14785. /***/ (function(module, exports, __webpack_require__) {
  14786. "use strict";
  14787. Object.defineProperty(exports, "__esModule", {
  14788. value: true
  14789. });
  14790. exports.default = void 0;
  14791. /*
  14792. * @Author : LQ
  14793. * @Description :
  14794. * @version : 1.0
  14795. * @Date : 2021-08-20 16:44:21
  14796. * @LastAuthor : LQ
  14797. * @lastTime : 2021-08-20 16:54:16
  14798. * @FilePath : /u-view2.0/uview-ui/libs/config/props/cellGroup.js
  14799. */
  14800. var _default = {
  14801. // cell-group组件的props
  14802. cellGroup: {
  14803. title: '',
  14804. border: true,
  14805. customStyle: {}
  14806. }
  14807. };
  14808. exports.default = _default;
  14809. /***/ }),
  14810. /* 83 */
  14811. /*!*******************************************************************************!*\
  14812. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/checkbox.js ***!
  14813. \*******************************************************************************/
  14814. /*! no static exports found */
  14815. /***/ (function(module, exports, __webpack_require__) {
  14816. "use strict";
  14817. Object.defineProperty(exports, "__esModule", {
  14818. value: true
  14819. });
  14820. exports.default = void 0;
  14821. /*
  14822. * @Author : LQ
  14823. * @Description :
  14824. * @version : 1.0
  14825. * @Date : 2021-08-20 16:44:21
  14826. * @LastAuthor : LQ
  14827. * @lastTime : 2021-08-23 21:06:59
  14828. * @FilePath : /u-view2.0/uview-ui/libs/config/props/checkbox.js
  14829. */
  14830. var _default = {
  14831. // checkbox组件
  14832. checkbox: {
  14833. name: '',
  14834. shape: '',
  14835. size: '',
  14836. checkbox: false,
  14837. disabled: '',
  14838. activeColor: '',
  14839. inactiveColor: '',
  14840. iconSize: '',
  14841. iconColor: '',
  14842. label: '',
  14843. labelSize: '',
  14844. labelColor: '',
  14845. labelDisabled: ''
  14846. }
  14847. };
  14848. exports.default = _default;
  14849. /***/ }),
  14850. /* 84 */
  14851. /*!************************************************************************************!*\
  14852. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/checkboxGroup.js ***!
  14853. \************************************************************************************/
  14854. /*! no static exports found */
  14855. /***/ (function(module, exports, __webpack_require__) {
  14856. "use strict";
  14857. Object.defineProperty(exports, "__esModule", {
  14858. value: true
  14859. });
  14860. exports.default = void 0;
  14861. /*
  14862. * @Author : LQ
  14863. * @Description :
  14864. * @version : 1.0
  14865. * @Date : 2021-08-20 16:44:21
  14866. * @LastAuthor : LQ
  14867. * @lastTime : 2021-08-20 16:54:47
  14868. * @FilePath : /u-view2.0/uview-ui/libs/config/props/checkboxGroup.js
  14869. */
  14870. var _default = {
  14871. // checkbox-group组件
  14872. checkboxGroup: {
  14873. name: '',
  14874. value: function value() {
  14875. return [];
  14876. },
  14877. shape: 'square',
  14878. disabled: false,
  14879. activeColor: '#2979ff',
  14880. inactiveColor: '#c8c9cc',
  14881. size: 18,
  14882. placement: 'row',
  14883. labelSize: 14,
  14884. labelColor: '#303133',
  14885. labelDisabled: false,
  14886. iconColor: '#ffffff',
  14887. iconSize: 12,
  14888. iconPlacement: 'left',
  14889. borderBottom: false
  14890. }
  14891. };
  14892. exports.default = _default;
  14893. /***/ }),
  14894. /* 85 */
  14895. /*!*************************************************************************************!*\
  14896. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/circleProgress.js ***!
  14897. \*************************************************************************************/
  14898. /*! no static exports found */
  14899. /***/ (function(module, exports, __webpack_require__) {
  14900. "use strict";
  14901. Object.defineProperty(exports, "__esModule", {
  14902. value: true
  14903. });
  14904. exports.default = void 0;
  14905. /*
  14906. * @Author : LQ
  14907. * @Description :
  14908. * @version : 1.0
  14909. * @Date : 2021-08-20 16:44:21
  14910. * @LastAuthor : LQ
  14911. * @lastTime : 2021-08-20 16:55:02
  14912. * @FilePath : /u-view2.0/uview-ui/libs/config/props/circleProgress.js
  14913. */
  14914. var _default = {
  14915. // circleProgress 组件
  14916. circleProgress: {
  14917. percentage: 30
  14918. }
  14919. };
  14920. exports.default = _default;
  14921. /***/ }),
  14922. /* 86 */
  14923. /*!***************************************************************************!*\
  14924. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/code.js ***!
  14925. \***************************************************************************/
  14926. /*! no static exports found */
  14927. /***/ (function(module, exports, __webpack_require__) {
  14928. "use strict";
  14929. Object.defineProperty(exports, "__esModule", {
  14930. value: true
  14931. });
  14932. exports.default = void 0;
  14933. /*
  14934. * @Author : LQ
  14935. * @Description :
  14936. * @version : 1.0
  14937. * @Date : 2021-08-20 16:44:21
  14938. * @LastAuthor : LQ
  14939. * @lastTime : 2021-08-20 16:55:27
  14940. * @FilePath : /u-view2.0/uview-ui/libs/config/props/code.js
  14941. */
  14942. var _default = {
  14943. // code 组件
  14944. code: {
  14945. seconds: 60,
  14946. startText: '获取验证码',
  14947. changeText: 'X秒重新获取',
  14948. endText: '重新获取',
  14949. keepRunning: false,
  14950. uniqueKey: ''
  14951. }
  14952. };
  14953. exports.default = _default;
  14954. /***/ }),
  14955. /* 87 */
  14956. /*!********************************************************************************!*\
  14957. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/codeInput.js ***!
  14958. \********************************************************************************/
  14959. /*! no static exports found */
  14960. /***/ (function(module, exports, __webpack_require__) {
  14961. "use strict";
  14962. Object.defineProperty(exports, "__esModule", {
  14963. value: true
  14964. });
  14965. exports.default = void 0;
  14966. /*
  14967. * @Author : LQ
  14968. * @Description :
  14969. * @version : 1.0
  14970. * @Date : 2021-08-20 16:44:21
  14971. * @LastAuthor : LQ
  14972. * @lastTime : 2021-08-20 16:55:58
  14973. * @FilePath : /u-view2.0/uview-ui/libs/config/props/codeInput.js
  14974. */
  14975. var _default = {
  14976. // codeInput 组件
  14977. codeInput: {
  14978. adjustPosition: true,
  14979. maxlength: 6,
  14980. dot: false,
  14981. mode: 'box',
  14982. hairline: false,
  14983. space: 10,
  14984. value: '',
  14985. focus: false,
  14986. bold: false,
  14987. color: '#606266',
  14988. fontSize: 18,
  14989. size: 35,
  14990. disabledKeyboard: false,
  14991. borderColor: '#c9cacc',
  14992. disabledDot: true
  14993. }
  14994. };
  14995. exports.default = _default;
  14996. /***/ }),
  14997. /* 88 */
  14998. /*!**************************************************************************!*\
  14999. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/col.js ***!
  15000. \**************************************************************************/
  15001. /*! no static exports found */
  15002. /***/ (function(module, exports, __webpack_require__) {
  15003. "use strict";
  15004. Object.defineProperty(exports, "__esModule", {
  15005. value: true
  15006. });
  15007. exports.default = void 0;
  15008. /*
  15009. * @Author : LQ
  15010. * @Description :
  15011. * @version : 1.0
  15012. * @Date : 2021-08-20 16:44:21
  15013. * @LastAuthor : LQ
  15014. * @lastTime : 2021-08-20 16:56:12
  15015. * @FilePath : /u-view2.0/uview-ui/libs/config/props/col.js
  15016. */
  15017. var _default = {
  15018. // col 组件
  15019. col: {
  15020. span: 12,
  15021. offset: 0,
  15022. justify: 'start',
  15023. align: 'stretch',
  15024. textAlign: 'left'
  15025. }
  15026. };
  15027. exports.default = _default;
  15028. /***/ }),
  15029. /* 89 */
  15030. /*!*******************************************************************************!*\
  15031. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/collapse.js ***!
  15032. \*******************************************************************************/
  15033. /*! no static exports found */
  15034. /***/ (function(module, exports, __webpack_require__) {
  15035. "use strict";
  15036. Object.defineProperty(exports, "__esModule", {
  15037. value: true
  15038. });
  15039. exports.default = void 0;
  15040. /*
  15041. * @Author : LQ
  15042. * @Description :
  15043. * @version : 1.0
  15044. * @Date : 2021-08-20 16:44:21
  15045. * @LastAuthor : LQ
  15046. * @lastTime : 2021-08-20 16:56:30
  15047. * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapse.js
  15048. */
  15049. var _default = {
  15050. // collapse 组件
  15051. collapse: {
  15052. value: null,
  15053. accordion: false,
  15054. border: true
  15055. }
  15056. };
  15057. exports.default = _default;
  15058. /***/ }),
  15059. /* 90 */
  15060. /*!***********************************************************************************!*\
  15061. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/collapseItem.js ***!
  15062. \***********************************************************************************/
  15063. /*! no static exports found */
  15064. /***/ (function(module, exports, __webpack_require__) {
  15065. "use strict";
  15066. Object.defineProperty(exports, "__esModule", {
  15067. value: true
  15068. });
  15069. exports.default = void 0;
  15070. /*
  15071. * @Author : LQ
  15072. * @Description :
  15073. * @version : 1.0
  15074. * @Date : 2021-08-20 16:44:21
  15075. * @LastAuthor : LQ
  15076. * @lastTime : 2021-08-20 16:56:42
  15077. * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapseItem.js
  15078. */
  15079. var _default = {
  15080. // collapseItem 组件
  15081. collapseItem: {
  15082. title: '',
  15083. value: '',
  15084. label: '',
  15085. disabled: false,
  15086. isLink: true,
  15087. clickable: true,
  15088. border: true,
  15089. align: 'left',
  15090. name: '',
  15091. icon: '',
  15092. duration: 300
  15093. }
  15094. };
  15095. exports.default = _default;
  15096. /***/ }),
  15097. /* 91 */
  15098. /*!***********************************************************************************!*\
  15099. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/columnNotice.js ***!
  15100. \***********************************************************************************/
  15101. /*! no static exports found */
  15102. /***/ (function(module, exports, __webpack_require__) {
  15103. "use strict";
  15104. Object.defineProperty(exports, "__esModule", {
  15105. value: true
  15106. });
  15107. exports.default = void 0;
  15108. /*
  15109. * @Author : LQ
  15110. * @Description :
  15111. * @version : 1.0
  15112. * @Date : 2021-08-20 16:44:21
  15113. * @LastAuthor : LQ
  15114. * @lastTime : 2021-08-20 16:57:16
  15115. * @FilePath : /u-view2.0/uview-ui/libs/config/props/columnNotice.js
  15116. */
  15117. var _default = {
  15118. // columnNotice 组件
  15119. columnNotice: {
  15120. text: '',
  15121. icon: 'volume',
  15122. mode: '',
  15123. color: '#f9ae3d',
  15124. bgColor: '#fdf6ec',
  15125. fontSize: 14,
  15126. speed: 80,
  15127. step: false,
  15128. duration: 1500,
  15129. disableTouch: true
  15130. }
  15131. };
  15132. exports.default = _default;
  15133. /***/ }),
  15134. /* 92 */
  15135. /*!********************************************************************************!*\
  15136. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/countDown.js ***!
  15137. \********************************************************************************/
  15138. /*! no static exports found */
  15139. /***/ (function(module, exports, __webpack_require__) {
  15140. "use strict";
  15141. Object.defineProperty(exports, "__esModule", {
  15142. value: true
  15143. });
  15144. exports.default = void 0;
  15145. /*
  15146. * @Author : LQ
  15147. * @Description :
  15148. * @version : 1.0
  15149. * @Date : 2021-08-20 16:44:21
  15150. * @LastAuthor : LQ
  15151. * @lastTime : 2021-08-20 17:11:29
  15152. * @FilePath : /u-view2.0/uview-ui/libs/config/props/countDown.js
  15153. */
  15154. var _default = {
  15155. // u-count-down 计时器组件
  15156. countDown: {
  15157. time: 0,
  15158. format: 'HH:mm:ss',
  15159. autoStart: true,
  15160. millisecond: false
  15161. }
  15162. };
  15163. exports.default = _default;
  15164. /***/ }),
  15165. /* 93 */
  15166. /*!******************************************************************************!*\
  15167. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/countTo.js ***!
  15168. \******************************************************************************/
  15169. /*! no static exports found */
  15170. /***/ (function(module, exports, __webpack_require__) {
  15171. "use strict";
  15172. Object.defineProperty(exports, "__esModule", {
  15173. value: true
  15174. });
  15175. exports.default = void 0;
  15176. /*
  15177. * @Author : LQ
  15178. * @Description :
  15179. * @version : 1.0
  15180. * @Date : 2021-08-20 16:44:21
  15181. * @LastAuthor : LQ
  15182. * @lastTime : 2021-08-20 16:57:32
  15183. * @FilePath : /u-view2.0/uview-ui/libs/config/props/countTo.js
  15184. */
  15185. var _default = {
  15186. // countTo 组件
  15187. countTo: {
  15188. startVal: 0,
  15189. endVal: 0,
  15190. duration: 2000,
  15191. autoplay: true,
  15192. decimals: 0,
  15193. useEasing: true,
  15194. decimal: '.',
  15195. color: '#606266',
  15196. fontSize: 22,
  15197. bold: false,
  15198. separator: ''
  15199. }
  15200. };
  15201. exports.default = _default;
  15202. /***/ }),
  15203. /* 94 */
  15204. /*!*************************************************************************************!*\
  15205. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/datetimePicker.js ***!
  15206. \*************************************************************************************/
  15207. /*! no static exports found */
  15208. /***/ (function(module, exports, __webpack_require__) {
  15209. "use strict";
  15210. Object.defineProperty(exports, "__esModule", {
  15211. value: true
  15212. });
  15213. exports.default = void 0;
  15214. /*
  15215. * @Author : LQ
  15216. * @Description :
  15217. * @version : 1.0
  15218. * @Date : 2021-08-20 16:44:21
  15219. * @LastAuthor : LQ
  15220. * @lastTime : 2021-08-20 16:57:48
  15221. * @FilePath : /u-view2.0/uview-ui/libs/config/props/datetimePicker.js
  15222. */
  15223. var _default = {
  15224. // datetimePicker 组件
  15225. datetimePicker: {
  15226. show: false,
  15227. showToolbar: true,
  15228. value: '',
  15229. title: '',
  15230. mode: 'datetime',
  15231. maxDate: new Date(new Date().getFullYear() + 10, 0, 1).getTime(),
  15232. minDate: new Date(new Date().getFullYear() - 10, 0, 1).getTime(),
  15233. minHour: 0,
  15234. maxHour: 23,
  15235. minMinute: 0,
  15236. maxMinute: 59,
  15237. filter: null,
  15238. formatter: null,
  15239. loading: false,
  15240. itemHeight: 44,
  15241. cancelText: '取消',
  15242. confirmText: '确认',
  15243. cancelColor: '#909193',
  15244. confirmColor: '#3c9cff',
  15245. visibleItemCount: 5,
  15246. closeOnClickOverlay: false,
  15247. defaultIndex: function defaultIndex() {
  15248. return [];
  15249. }
  15250. }
  15251. };
  15252. exports.default = _default;
  15253. /***/ }),
  15254. /* 95 */
  15255. /*!******************************************************************************!*\
  15256. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/divider.js ***!
  15257. \******************************************************************************/
  15258. /*! no static exports found */
  15259. /***/ (function(module, exports, __webpack_require__) {
  15260. "use strict";
  15261. Object.defineProperty(exports, "__esModule", {
  15262. value: true
  15263. });
  15264. exports.default = void 0;
  15265. /*
  15266. * @Author : LQ
  15267. * @Description :
  15268. * @version : 1.0
  15269. * @Date : 2021-08-20 16:44:21
  15270. * @LastAuthor : LQ
  15271. * @lastTime : 2021-08-20 16:58:03
  15272. * @FilePath : /u-view2.0/uview-ui/libs/config/props/divider.js
  15273. */
  15274. var _default = {
  15275. // divider组件
  15276. divider: {
  15277. dashed: false,
  15278. hairline: true,
  15279. dot: false,
  15280. textPosition: 'center',
  15281. text: '',
  15282. textSize: 14,
  15283. textColor: '#909399',
  15284. lineColor: '#dcdfe6'
  15285. }
  15286. };
  15287. exports.default = _default;
  15288. /***/ }),
  15289. /* 96 */
  15290. /*!****************************************************************************!*\
  15291. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/empty.js ***!
  15292. \****************************************************************************/
  15293. /*! no static exports found */
  15294. /***/ (function(module, exports, __webpack_require__) {
  15295. "use strict";
  15296. Object.defineProperty(exports, "__esModule", {
  15297. value: true
  15298. });
  15299. exports.default = void 0;
  15300. /*
  15301. * @Author : LQ
  15302. * @Description :
  15303. * @version : 1.0
  15304. * @Date : 2021-08-20 16:44:21
  15305. * @LastAuthor : LQ
  15306. * @lastTime : 2021-08-20 17:03:27
  15307. * @FilePath : /u-view2.0/uview-ui/libs/config/props/empty.js
  15308. */
  15309. var _default = {
  15310. // empty组件
  15311. empty: {
  15312. icon: '',
  15313. text: '',
  15314. textColor: '#c0c4cc',
  15315. textSize: 14,
  15316. iconColor: '#c0c4cc',
  15317. iconSize: 90,
  15318. mode: 'data',
  15319. width: 160,
  15320. height: 160,
  15321. show: true,
  15322. marginTop: 0
  15323. }
  15324. };
  15325. exports.default = _default;
  15326. /***/ }),
  15327. /* 97 */
  15328. /*!***************************************************************************!*\
  15329. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/form.js ***!
  15330. \***************************************************************************/
  15331. /*! no static exports found */
  15332. /***/ (function(module, exports, __webpack_require__) {
  15333. "use strict";
  15334. Object.defineProperty(exports, "__esModule", {
  15335. value: true
  15336. });
  15337. exports.default = void 0;
  15338. /*
  15339. * @Author : LQ
  15340. * @Description :
  15341. * @version : 1.0
  15342. * @Date : 2021-08-20 16:44:21
  15343. * @LastAuthor : LQ
  15344. * @lastTime : 2021-08-20 17:03:49
  15345. * @FilePath : /u-view2.0/uview-ui/libs/config/props/form.js
  15346. */
  15347. var _default = {
  15348. // form 组件
  15349. form: {
  15350. model: function model() {
  15351. return {};
  15352. },
  15353. rules: function rules() {
  15354. return {};
  15355. },
  15356. errorType: 'message',
  15357. borderBottom: true,
  15358. labelPosition: 'left',
  15359. labelWidth: 45,
  15360. labelAlign: 'left',
  15361. labelStyle: function labelStyle() {
  15362. return {};
  15363. }
  15364. }
  15365. };
  15366. exports.default = _default;
  15367. /***/ }),
  15368. /* 98 */
  15369. /*!*******************************************************************************!*\
  15370. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/formItem.js ***!
  15371. \*******************************************************************************/
  15372. /*! no static exports found */
  15373. /***/ (function(module, exports, __webpack_require__) {
  15374. "use strict";
  15375. Object.defineProperty(exports, "__esModule", {
  15376. value: true
  15377. });
  15378. exports.default = void 0;
  15379. /*
  15380. * @Author : LQ
  15381. * @Description :
  15382. * @version : 1.0
  15383. * @Date : 2021-08-20 16:44:21
  15384. * @LastAuthor : LQ
  15385. * @lastTime : 2021-08-20 17:04:32
  15386. * @FilePath : /u-view2.0/uview-ui/libs/config/props/formItem.js
  15387. */
  15388. var _default = {
  15389. // formItem 组件
  15390. formItem: {
  15391. label: '',
  15392. prop: '',
  15393. borderBottom: '',
  15394. labelPosition: '',
  15395. labelWidth: '',
  15396. rightIcon: '',
  15397. leftIcon: '',
  15398. required: false,
  15399. leftIconStyle: ''
  15400. }
  15401. };
  15402. exports.default = _default;
  15403. /***/ }),
  15404. /* 99 */
  15405. /*!**************************************************************************!*\
  15406. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/gap.js ***!
  15407. \**************************************************************************/
  15408. /*! no static exports found */
  15409. /***/ (function(module, exports, __webpack_require__) {
  15410. "use strict";
  15411. Object.defineProperty(exports, "__esModule", {
  15412. value: true
  15413. });
  15414. exports.default = void 0;
  15415. /*
  15416. * @Author : LQ
  15417. * @Description :
  15418. * @version : 1.0
  15419. * @Date : 2021-08-20 16:44:21
  15420. * @LastAuthor : LQ
  15421. * @lastTime : 2021-08-20 17:05:25
  15422. * @FilePath : /u-view2.0/uview-ui/libs/config/props/gap.js
  15423. */
  15424. var _default = {
  15425. // gap组件
  15426. gap: {
  15427. bgColor: 'transparent',
  15428. height: 20,
  15429. marginTop: 0,
  15430. marginBottom: 0,
  15431. customStyle: {}
  15432. }
  15433. };
  15434. exports.default = _default;
  15435. /***/ }),
  15436. /* 100 */
  15437. /*!***************************************************************************!*\
  15438. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/grid.js ***!
  15439. \***************************************************************************/
  15440. /*! no static exports found */
  15441. /***/ (function(module, exports, __webpack_require__) {
  15442. "use strict";
  15443. Object.defineProperty(exports, "__esModule", {
  15444. value: true
  15445. });
  15446. exports.default = void 0;
  15447. /*
  15448. * @Author : LQ
  15449. * @Description :
  15450. * @version : 1.0
  15451. * @Date : 2021-08-20 16:44:21
  15452. * @LastAuthor : LQ
  15453. * @lastTime : 2021-08-20 17:05:57
  15454. * @FilePath : /u-view2.0/uview-ui/libs/config/props/grid.js
  15455. */
  15456. var _default = {
  15457. // grid组件
  15458. grid: {
  15459. col: 3,
  15460. border: false,
  15461. align: 'left'
  15462. }
  15463. };
  15464. exports.default = _default;
  15465. /***/ }),
  15466. /* 101 */
  15467. /*!*******************************************************************************!*\
  15468. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/gridItem.js ***!
  15469. \*******************************************************************************/
  15470. /*! no static exports found */
  15471. /***/ (function(module, exports, __webpack_require__) {
  15472. "use strict";
  15473. Object.defineProperty(exports, "__esModule", {
  15474. value: true
  15475. });
  15476. exports.default = void 0;
  15477. /*
  15478. * @Author : LQ
  15479. * @Description :
  15480. * @version : 1.0
  15481. * @Date : 2021-08-20 16:44:21
  15482. * @LastAuthor : LQ
  15483. * @lastTime : 2021-08-20 17:06:13
  15484. * @FilePath : /u-view2.0/uview-ui/libs/config/props/gridItem.js
  15485. */
  15486. var _default = {
  15487. // grid-item组件
  15488. gridItem: {
  15489. name: null,
  15490. bgColor: 'transparent'
  15491. }
  15492. };
  15493. exports.default = _default;
  15494. /***/ }),
  15495. /* 102 */
  15496. /*!***************************************************************************!*\
  15497. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/icon.js ***!
  15498. \***************************************************************************/
  15499. /*! no static exports found */
  15500. /***/ (function(module, exports, __webpack_require__) {
  15501. "use strict";
  15502. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  15503. Object.defineProperty(exports, "__esModule", {
  15504. value: true
  15505. });
  15506. exports.default = void 0;
  15507. var _config = _interopRequireDefault(__webpack_require__(/*! ../config */ 69));
  15508. /*
  15509. * @Author : LQ
  15510. * @Description :
  15511. * @version : 1.0
  15512. * @Date : 2021-08-20 16:44:21
  15513. * @LastAuthor : LQ
  15514. * @lastTime : 2021-08-20 18:00:14
  15515. * @FilePath : /u-view2.0/uview-ui/libs/config/props/icon.js
  15516. */
  15517. var color = _config.default.color;
  15518. var _default = {
  15519. // icon组件
  15520. icon: {
  15521. name: '',
  15522. color: color['u-content-color'],
  15523. size: '16px',
  15524. bold: false,
  15525. index: '',
  15526. hoverClass: '',
  15527. customPrefix: 'uicon',
  15528. label: '',
  15529. labelPos: 'right',
  15530. labelSize: '15px',
  15531. labelColor: color['u-content-color'],
  15532. space: '3px',
  15533. imgMode: '',
  15534. width: '',
  15535. height: '',
  15536. top: 0,
  15537. stop: false
  15538. }
  15539. };
  15540. exports.default = _default;
  15541. /***/ }),
  15542. /* 103 */
  15543. /*!****************************************************************************!*\
  15544. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/image.js ***!
  15545. \****************************************************************************/
  15546. /*! no static exports found */
  15547. /***/ (function(module, exports, __webpack_require__) {
  15548. "use strict";
  15549. Object.defineProperty(exports, "__esModule", {
  15550. value: true
  15551. });
  15552. exports.default = void 0;
  15553. /*
  15554. * @Author : LQ
  15555. * @Description :
  15556. * @version : 1.0
  15557. * @Date : 2021-08-20 16:44:21
  15558. * @LastAuthor : LQ
  15559. * @lastTime : 2021-08-20 17:01:51
  15560. * @FilePath : /u-view2.0/uview-ui/libs/config/props/image.js
  15561. */
  15562. var _default = {
  15563. // image组件
  15564. image: {
  15565. src: '',
  15566. mode: 'aspectFill',
  15567. width: '300',
  15568. height: '225',
  15569. shape: 'square',
  15570. radius: 0,
  15571. lazyLoad: true,
  15572. showMenuByLongpress: true,
  15573. loadingIcon: 'photo',
  15574. errorIcon: 'error-circle',
  15575. showLoading: true,
  15576. showError: true,
  15577. fade: true,
  15578. webp: false,
  15579. duration: 500,
  15580. bgColor: '#f3f4f6'
  15581. }
  15582. };
  15583. exports.default = _default;
  15584. /***/ }),
  15585. /* 104 */
  15586. /*!**********************************************************************************!*\
  15587. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/indexAnchor.js ***!
  15588. \**********************************************************************************/
  15589. /*! no static exports found */
  15590. /***/ (function(module, exports, __webpack_require__) {
  15591. "use strict";
  15592. Object.defineProperty(exports, "__esModule", {
  15593. value: true
  15594. });
  15595. exports.default = void 0;
  15596. /*
  15597. * @Author : LQ
  15598. * @Description :
  15599. * @version : 1.0
  15600. * @Date : 2021-08-20 16:44:21
  15601. * @LastAuthor : LQ
  15602. * @lastTime : 2021-08-20 17:13:15
  15603. * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexAnchor.js
  15604. */
  15605. var _default = {
  15606. // indexAnchor 组件
  15607. indexAnchor: {
  15608. text: '',
  15609. color: '#606266',
  15610. size: 14,
  15611. bgColor: '#dedede',
  15612. height: 32
  15613. }
  15614. };
  15615. exports.default = _default;
  15616. /***/ }),
  15617. /* 105 */
  15618. /*!********************************************************************************!*\
  15619. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/indexList.js ***!
  15620. \********************************************************************************/
  15621. /*! no static exports found */
  15622. /***/ (function(module, exports, __webpack_require__) {
  15623. "use strict";
  15624. Object.defineProperty(exports, "__esModule", {
  15625. value: true
  15626. });
  15627. exports.default = void 0;
  15628. /*
  15629. * @Author : LQ
  15630. * @Description :
  15631. * @version : 1.0
  15632. * @Date : 2021-08-20 16:44:21
  15633. * @LastAuthor : LQ
  15634. * @lastTime : 2021-08-20 17:13:35
  15635. * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexList.js
  15636. */
  15637. var _default = {
  15638. // indexList 组件
  15639. indexList: {
  15640. inactiveColor: '#606266',
  15641. activeColor: '#5677fc',
  15642. indexList: function indexList() {
  15643. return [];
  15644. },
  15645. sticky: true,
  15646. customNavHeight: 0
  15647. }
  15648. };
  15649. exports.default = _default;
  15650. /***/ }),
  15651. /* 106 */
  15652. /*!****************************************************************************!*\
  15653. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/input.js ***!
  15654. \****************************************************************************/
  15655. /*! no static exports found */
  15656. /***/ (function(module, exports, __webpack_require__) {
  15657. "use strict";
  15658. Object.defineProperty(exports, "__esModule", {
  15659. value: true
  15660. });
  15661. exports.default = void 0;
  15662. /*
  15663. * @Author : LQ
  15664. * @Description :
  15665. * @version : 1.0
  15666. * @Date : 2021-08-20 16:44:21
  15667. * @LastAuthor : LQ
  15668. * @lastTime : 2021-08-20 17:13:55
  15669. * @FilePath : /u-view2.0/uview-ui/libs/config/props/input.js
  15670. */
  15671. var _default = {
  15672. // index 组件
  15673. input: {
  15674. value: '',
  15675. type: 'text',
  15676. fixed: false,
  15677. disabled: false,
  15678. disabledColor: '#f5f7fa',
  15679. clearable: false,
  15680. password: false,
  15681. maxlength: -1,
  15682. placeholder: null,
  15683. placeholderClass: 'input-placeholder',
  15684. placeholderStyle: 'color: #c0c4cc',
  15685. showWordLimit: false,
  15686. confirmType: 'done',
  15687. confirmHold: false,
  15688. holdKeyboard: false,
  15689. focus: false,
  15690. autoBlur: false,
  15691. disableDefaultPadding: false,
  15692. cursor: -1,
  15693. cursorSpacing: 30,
  15694. selectionStart: -1,
  15695. selectionEnd: -1,
  15696. adjustPosition: true,
  15697. inputAlign: 'left',
  15698. fontSize: '15px',
  15699. color: '#303133',
  15700. prefixIcon: '',
  15701. prefixIconStyle: '',
  15702. suffixIcon: '',
  15703. suffixIconStyle: '',
  15704. border: 'surround',
  15705. readonly: false,
  15706. shape: 'square',
  15707. formatter: null
  15708. }
  15709. };
  15710. exports.default = _default;
  15711. /***/ }),
  15712. /* 107 */
  15713. /*!*******************************************************************************!*\
  15714. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/keyboard.js ***!
  15715. \*******************************************************************************/
  15716. /*! no static exports found */
  15717. /***/ (function(module, exports, __webpack_require__) {
  15718. "use strict";
  15719. Object.defineProperty(exports, "__esModule", {
  15720. value: true
  15721. });
  15722. exports.default = void 0;
  15723. /*
  15724. * @Author : LQ
  15725. * @Description :
  15726. * @version : 1.0
  15727. * @Date : 2021-08-20 16:44:21
  15728. * @LastAuthor : LQ
  15729. * @lastTime : 2021-08-20 17:07:49
  15730. * @FilePath : /u-view2.0/uview-ui/libs/config/props/keyboard.js
  15731. */
  15732. var _default = {
  15733. // 键盘组件
  15734. keyboard: {
  15735. mode: 'number',
  15736. dotDisabled: false,
  15737. tooltip: true,
  15738. showTips: true,
  15739. tips: '',
  15740. showCancel: true,
  15741. showConfirm: true,
  15742. random: false,
  15743. safeAreaInsetBottom: true,
  15744. closeOnClickOverlay: true,
  15745. show: false,
  15746. overlay: true,
  15747. zIndex: 10075,
  15748. cancelText: '取消',
  15749. confirmText: '确定',
  15750. autoChange: false
  15751. }
  15752. };
  15753. exports.default = _default;
  15754. /***/ }),
  15755. /* 108 */
  15756. /*!***************************************************************************!*\
  15757. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/line.js ***!
  15758. \***************************************************************************/
  15759. /*! no static exports found */
  15760. /***/ (function(module, exports, __webpack_require__) {
  15761. "use strict";
  15762. Object.defineProperty(exports, "__esModule", {
  15763. value: true
  15764. });
  15765. exports.default = void 0;
  15766. /*
  15767. * @Author : LQ
  15768. * @Description :
  15769. * @version : 1.0
  15770. * @Date : 2021-08-20 16:44:21
  15771. * @LastAuthor : LQ
  15772. * @lastTime : 2021-08-20 17:04:49
  15773. * @FilePath : /u-view2.0/uview-ui/libs/config/props/line.js
  15774. */
  15775. var _default = {
  15776. // line组件
  15777. line: {
  15778. color: '#d6d7d9',
  15779. length: '100%',
  15780. direction: 'row',
  15781. hairline: true,
  15782. margin: 0,
  15783. dashed: false
  15784. }
  15785. };
  15786. exports.default = _default;
  15787. /***/ }),
  15788. /* 109 */
  15789. /*!***********************************************************************************!*\
  15790. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/lineProgress.js ***!
  15791. \***********************************************************************************/
  15792. /*! no static exports found */
  15793. /***/ (function(module, exports, __webpack_require__) {
  15794. "use strict";
  15795. Object.defineProperty(exports, "__esModule", {
  15796. value: true
  15797. });
  15798. exports.default = void 0;
  15799. /*
  15800. * @Author : LQ
  15801. * @Description :
  15802. * @version : 1.0
  15803. * @Date : 2021-08-20 16:44:21
  15804. * @LastAuthor : LQ
  15805. * @lastTime : 2021-08-20 17:14:11
  15806. * @FilePath : /u-view2.0/uview-ui/libs/config/props/lineProgress.js
  15807. */
  15808. var _default = {
  15809. // lineProgress 组件
  15810. lineProgress: {
  15811. activeColor: '#19be6b',
  15812. inactiveColor: '#ececec',
  15813. percentage: 0,
  15814. showText: true,
  15815. height: 12
  15816. }
  15817. };
  15818. exports.default = _default;
  15819. /***/ }),
  15820. /* 110 */
  15821. /*!***************************************************************************!*\
  15822. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/link.js ***!
  15823. \***************************************************************************/
  15824. /*! no static exports found */
  15825. /***/ (function(module, exports, __webpack_require__) {
  15826. "use strict";
  15827. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  15828. Object.defineProperty(exports, "__esModule", {
  15829. value: true
  15830. });
  15831. exports.default = void 0;
  15832. var _config = _interopRequireDefault(__webpack_require__(/*! ../config */ 69));
  15833. /*
  15834. * @Author : LQ
  15835. * @Description :
  15836. * @version : 1.0
  15837. * @Date : 2021-08-20 16:44:21
  15838. * @LastAuthor : LQ
  15839. * @lastTime : 2021-08-20 17:45:36
  15840. * @FilePath : /u-view2.0/uview-ui/libs/config/props/link.js
  15841. */
  15842. var color = _config.default.color;
  15843. var _default = {
  15844. // link超链接组件props参数
  15845. link: {
  15846. color: color['u-primary'],
  15847. fontSize: 15,
  15848. underLine: false,
  15849. href: '',
  15850. mpTips: '链接已复制,请在浏览器打开',
  15851. lineColor: '',
  15852. text: ''
  15853. }
  15854. };
  15855. exports.default = _default;
  15856. /***/ }),
  15857. /* 111 */
  15858. /*!***************************************************************************!*\
  15859. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/list.js ***!
  15860. \***************************************************************************/
  15861. /*! no static exports found */
  15862. /***/ (function(module, exports, __webpack_require__) {
  15863. "use strict";
  15864. Object.defineProperty(exports, "__esModule", {
  15865. value: true
  15866. });
  15867. exports.default = void 0;
  15868. /*
  15869. * @Author : LQ
  15870. * @Description :
  15871. * @version : 1.0
  15872. * @Date : 2021-08-20 16:44:21
  15873. * @LastAuthor : LQ
  15874. * @lastTime : 2021-08-20 17:14:53
  15875. * @FilePath : /u-view2.0/uview-ui/libs/config/props/list.js
  15876. */
  15877. var _default = {
  15878. // list 组件
  15879. list: {
  15880. showScrollbar: false,
  15881. lowerThreshold: 50,
  15882. upperThreshold: 0,
  15883. scrollTop: 0,
  15884. offsetAccuracy: 10,
  15885. enableFlex: false,
  15886. pagingEnabled: false,
  15887. scrollable: true,
  15888. scrollIntoView: '',
  15889. scrollWithAnimation: false,
  15890. enableBackToTop: false,
  15891. height: 0,
  15892. width: 0,
  15893. preLoadScreen: 1
  15894. }
  15895. };
  15896. exports.default = _default;
  15897. /***/ }),
  15898. /* 112 */
  15899. /*!*******************************************************************************!*\
  15900. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/listItem.js ***!
  15901. \*******************************************************************************/
  15902. /*! no static exports found */
  15903. /***/ (function(module, exports, __webpack_require__) {
  15904. "use strict";
  15905. Object.defineProperty(exports, "__esModule", {
  15906. value: true
  15907. });
  15908. exports.default = void 0;
  15909. /*
  15910. * @Author : LQ
  15911. * @Description :
  15912. * @version : 1.0
  15913. * @Date : 2021-08-20 16:44:21
  15914. * @LastAuthor : LQ
  15915. * @lastTime : 2021-08-20 17:15:40
  15916. * @FilePath : /u-view2.0/uview-ui/libs/config/props/listItem.js
  15917. */
  15918. var _default = {
  15919. // listItem 组件
  15920. listItem: {
  15921. anchor: ''
  15922. }
  15923. };
  15924. exports.default = _default;
  15925. /***/ }),
  15926. /* 113 */
  15927. /*!**********************************************************************************!*\
  15928. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/loadingIcon.js ***!
  15929. \**********************************************************************************/
  15930. /*! no static exports found */
  15931. /***/ (function(module, exports, __webpack_require__) {
  15932. "use strict";
  15933. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  15934. Object.defineProperty(exports, "__esModule", {
  15935. value: true
  15936. });
  15937. exports.default = void 0;
  15938. var _config = _interopRequireDefault(__webpack_require__(/*! ../config */ 69));
  15939. /*
  15940. * @Author : LQ
  15941. * @Description :
  15942. * @version : 1.0
  15943. * @Date : 2021-08-20 16:44:21
  15944. * @LastAuthor : LQ
  15945. * @lastTime : 2021-08-20 17:45:47
  15946. * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingIcon.js
  15947. */
  15948. var color = _config.default.color;
  15949. var _default = {
  15950. // loading-icon加载中图标组件
  15951. loadingIcon: {
  15952. show: true,
  15953. color: color['u-tips-color'],
  15954. textColor: color['u-tips-color'],
  15955. vertical: false,
  15956. mode: 'spinner',
  15957. size: 24,
  15958. textSize: 15,
  15959. text: '',
  15960. timingFunction: 'ease-in-out',
  15961. duration: 1200,
  15962. inactiveColor: ''
  15963. }
  15964. };
  15965. exports.default = _default;
  15966. /***/ }),
  15967. /* 114 */
  15968. /*!**********************************************************************************!*\
  15969. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/loadingPage.js ***!
  15970. \**********************************************************************************/
  15971. /*! no static exports found */
  15972. /***/ (function(module, exports, __webpack_require__) {
  15973. "use strict";
  15974. Object.defineProperty(exports, "__esModule", {
  15975. value: true
  15976. });
  15977. exports.default = void 0;
  15978. /*
  15979. * @Author : LQ
  15980. * @Description :
  15981. * @version : 1.0
  15982. * @Date : 2021-08-20 16:44:21
  15983. * @LastAuthor : LQ
  15984. * @lastTime : 2021-08-20 17:00:23
  15985. * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingPage.js
  15986. */
  15987. var _default = {
  15988. // loading-page组件
  15989. loadingPage: {
  15990. loadingText: '正在加载',
  15991. image: '',
  15992. loadingMode: 'circle',
  15993. loading: false,
  15994. bgColor: '#ffffff',
  15995. color: '#C8C8C8',
  15996. fontSize: 19,
  15997. iconSize: 28,
  15998. loadingColor: '#C8C8C8'
  15999. }
  16000. };
  16001. exports.default = _default;
  16002. /***/ }),
  16003. /* 115 */
  16004. /*!*******************************************************************************!*\
  16005. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/loadmore.js ***!
  16006. \*******************************************************************************/
  16007. /*! no static exports found */
  16008. /***/ (function(module, exports, __webpack_require__) {
  16009. "use strict";
  16010. Object.defineProperty(exports, "__esModule", {
  16011. value: true
  16012. });
  16013. exports.default = void 0;
  16014. /*
  16015. * @Author : LQ
  16016. * @Description :
  16017. * @version : 1.0
  16018. * @Date : 2021-08-20 16:44:21
  16019. * @LastAuthor : LQ
  16020. * @lastTime : 2021-08-20 17:15:26
  16021. * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadmore.js
  16022. */
  16023. var _default = {
  16024. // loadmore 组件
  16025. loadmore: {
  16026. status: 'loadmore',
  16027. bgColor: 'transparent',
  16028. icon: true,
  16029. fontSize: 14,
  16030. iconSize: 17,
  16031. color: '#606266',
  16032. loadingIcon: 'spinner',
  16033. loadmoreText: '加载更多',
  16034. loadingText: '正在加载...',
  16035. nomoreText: '没有更多了',
  16036. isDot: false,
  16037. iconColor: '#b7b7b7',
  16038. marginTop: 10,
  16039. marginBottom: 10,
  16040. height: 'auto',
  16041. line: false,
  16042. lineColor: '#E6E8EB',
  16043. dashed: false
  16044. }
  16045. };
  16046. exports.default = _default;
  16047. /***/ }),
  16048. /* 116 */
  16049. /*!****************************************************************************!*\
  16050. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/modal.js ***!
  16051. \****************************************************************************/
  16052. /*! no static exports found */
  16053. /***/ (function(module, exports, __webpack_require__) {
  16054. "use strict";
  16055. Object.defineProperty(exports, "__esModule", {
  16056. value: true
  16057. });
  16058. exports.default = void 0;
  16059. /*
  16060. * @Author : LQ
  16061. * @Description :
  16062. * @version : 1.0
  16063. * @Date : 2021-08-20 16:44:21
  16064. * @LastAuthor : LQ
  16065. * @lastTime : 2021-08-20 17:15:59
  16066. * @FilePath : /u-view2.0/uview-ui/libs/config/props/modal.js
  16067. */
  16068. var _default = {
  16069. // modal 组件
  16070. modal: {
  16071. show: false,
  16072. title: '',
  16073. content: '',
  16074. confirmText: '确认',
  16075. cancelText: '取消',
  16076. showConfirmButton: true,
  16077. showCancelButton: false,
  16078. confirmColor: '#2979ff',
  16079. cancelColor: '#606266',
  16080. buttonReverse: false,
  16081. zoom: true,
  16082. asyncClose: false,
  16083. closeOnClickOverlay: false,
  16084. negativeTop: 0,
  16085. width: '650rpx',
  16086. confirmButtonShape: ''
  16087. }
  16088. };
  16089. exports.default = _default;
  16090. /***/ }),
  16091. /* 117 */
  16092. /*!*****************************************************************************!*\
  16093. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/navbar.js ***!
  16094. \*****************************************************************************/
  16095. /*! no static exports found */
  16096. /***/ (function(module, exports, __webpack_require__) {
  16097. "use strict";
  16098. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  16099. Object.defineProperty(exports, "__esModule", {
  16100. value: true
  16101. });
  16102. exports.default = void 0;
  16103. var _color = _interopRequireDefault(__webpack_require__(/*! ../color */ 118));
  16104. /*
  16105. * @Author : LQ
  16106. * @Description :
  16107. * @version : 1.0
  16108. * @Date : 2021-08-20 16:44:21
  16109. * @LastAuthor : LQ
  16110. * @lastTime : 2021-08-20 17:16:18
  16111. * @FilePath : /u-view2.0/uview-ui/libs/config/props/navbar.js
  16112. */
  16113. var _default = {
  16114. // navbar 组件
  16115. navbar: {
  16116. safeAreaInsetTop: true,
  16117. placeholder: false,
  16118. fixed: true,
  16119. border: false,
  16120. leftIcon: 'arrow-left',
  16121. leftText: '',
  16122. rightText: '',
  16123. rightIcon: '',
  16124. title: '',
  16125. bgColor: '#ffffff',
  16126. titleWidth: '400rpx',
  16127. height: '44px',
  16128. leftIconSize: 20,
  16129. leftIconColor: _color.default.mainColor,
  16130. autoBack: false,
  16131. titleStyle: ''
  16132. }
  16133. };
  16134. exports.default = _default;
  16135. /***/ }),
  16136. /* 118 */
  16137. /*!**********************************************************************!*\
  16138. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/color.js ***!
  16139. \**********************************************************************/
  16140. /*! no static exports found */
  16141. /***/ (function(module, exports, __webpack_require__) {
  16142. "use strict";
  16143. Object.defineProperty(exports, "__esModule", {
  16144. value: true
  16145. });
  16146. exports.default = void 0;
  16147. // 为了让用户能够自定义主题,会逐步弃用此文件,各颜色通过css提供
  16148. // 为了给某些特殊场景使用和向后兼容,无需删除此文件(2020-06-20)
  16149. var color = {
  16150. primary: '#3c9cff',
  16151. info: '#909399',
  16152. default: '#909399',
  16153. warning: '#f9ae3d',
  16154. error: '#f56c6c',
  16155. success: '#5ac725',
  16156. mainColor: '#303133',
  16157. contentColor: '#606266',
  16158. tipsColor: '#909399',
  16159. lightColor: '#c0c4cc',
  16160. borderColor: '#e4e7ed'
  16161. };
  16162. var _default = color;
  16163. exports.default = _default;
  16164. /***/ }),
  16165. /* 119 */
  16166. /*!********************************************************************************!*\
  16167. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/noNetwork.js ***!
  16168. \********************************************************************************/
  16169. /*! no static exports found */
  16170. /***/ (function(module, exports, __webpack_require__) {
  16171. "use strict";
  16172. Object.defineProperty(exports, "__esModule", {
  16173. value: true
  16174. });
  16175. exports.default = void 0;
  16176. /*
  16177. * @Author : LQ
  16178. * @Description :
  16179. * @version : 1.0
  16180. * @Date : 2021-08-20 16:44:21
  16181. * @LastAuthor : LQ
  16182. * @lastTime : 2021-08-20 17:16:39
  16183. * @FilePath : /u-view2.0/uview-ui/libs/config/props/noNetwork.js
  16184. */
  16185. var _default = {
  16186. // noNetwork
  16187. noNetwork: {
  16188. tips: '哎呀,网络信号丢失',
  16189. zIndex: '',
  16190. image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAABLKADAAQAAAABAAABLAAAAADYYILnAABAAElEQVR4Ae29CZhkV3kefNeq6m2W7tn3nl0aCbHIAgmQPGB+sLCNzSID9g9PYrAf57d/+4+DiW0cy8QBJ06c2In/PLFDHJ78+MGCGNsYgyxwIwktwEijAc1ohtmnZ+2Z7p5eq6vu9r/vuXWrq25VdVV1V3dXVX9Hmj73nv285963vvOd75yraeIEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQaD8E9PbrkvRopSMwMBBYRs+5O/yJS68cPnzYXel4tFP/jXbqjPRFEAiCQNe6Bw/6gdFn9Oy9Q90LLG2DgBBW2wyldIQIPPPCte2a5q3jtR+4ff/4wuBuXotrDwSEsNpjHKUXQODppy+udYJMEUEZgbd94DvnNwlA7YGAEFZ7jOOK78Xp06eTTkq7sxwQhmXuf/754VXl4iSstRAQwmqt8ZLWlkHg0UcD49qYfUjXfLtMtOZ7npExJu4iqZWLl7DWQUAIq3XGSlpaAYHD77q8xwuCOSUoXw8Sl0eMux977DGzQjES3AIICGG1wCBJEysj8PXnz230XXdr5RQFMYbRvWnv6w8UhMhliyGwYghr4Pjg3oEXL34ey9zyC9tiD2ml5h47dr1LN7S6CMjz/A3PvHh1Z6UyJby5EVgRhKUe7Kz/JU0LfvrJo5f+Y3MPibSuFgQGBgasYSd9l6GDsup0WS/T/9RTp9fXmU2SNwECdQ92E7S57iaMeJnPQLK6ixkDLfjlb7546RfrLkQyNBcC3dsP6oHWMd9G+V3JgwPHh7rnm1/yLQ8CbU9Y33zp0j+nZFUMb/DHmB7+SHGY3LUKAk8cObtD00xlHDrfNge+Z2ozU3c9dvx4Yr5lSL6lR6CtCWvg6OAPw9z538ZhhZRl6XrwhW8du1KX/iNejtwvPQIDR8+vSRqJ/obU7GupjdNdh2gW0ZDypJBFR6BtB2rg2OVtuub9JcmpHIpBoK1xfffLzx4f7C0XL2HNiYDp6bs9z23Ypn1fC1Y/9PCFDc3ZW2lVHIG2JKzTp4Ok7nv/G6Q054MIvda+bNb74pEgKGtwGAdL7pcfAa8vOKEZ2kyjWuLr7uDh+/qvN6o8KWdxEWhLwroyeek/g4zuqwU6kNrhyZcu/UktaSXN8iNwuL9/RuvVXtJ9PbPQ1vhmcP6t9+47u9ByJP/SIdB2hDVw9MJHQFYfrQdCph84evFX68kjaZcPAZJWwjMXRFpJ2zr91tfuvrh8vZCa54NA2xGWrunvmg8QWCJ/N4ir7fCYDxatkOeBB7an501agXbygVdvv9IK/ZQ2FiPQdi9osGbH+zRNf7y4m9Xu9Me7N9nv0HXdr5ZS4psHgXpJC9P/wDRTx0Vn1TxjWG9LGrbaUm/Fi5meSvcrkxf/Cg/ow9XqAUk91v3qHT97r6471dJKfHMi8Oyzgx1Z03t1YAQVT2MwgsC3u+yXHzi0faQ5eyGtqgWBtpOw2Ol9+/TM+sTOn8L08MtzgQCy+tOHXr3jA0JWc6HU/HF5Scssr4jXcYqfP6V/T8iq+ceyWgvbUsKKOn38eJAYyl56TAuCEr2WYei//9Crd/5GlFb81kdASVopSFrerKRlaoZj9HR+700H10+0fg+lB21NWBxe2lhNHsUpDZr27mi4dV379R9+za4/iO7Fbx8ECknLCPTsTDJ17O33bJpqnx6u7J60PWFxeAcCbMV56dJfQKf1bkMLfuGh1+76zMoe9vbuPUnLsb2DtmOe5HSxvXsrvWtLBEhaTx29+Ma27Jx0ShAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQaEsEVoQdVluO3BJ06ptHL34b1XRjp4Ch6Rq24+kmjG4Nwwg+9uA9u/73EjRBqhAEihAoe3xwUQq5WTYEzp0b3ZnV/Ncf6O/9AvY9wlh/6dy3X7ncN512Zw9BVLXjuAP4np44vnQtkZoEgVkEhLBmsWiKqwsXpjbPBOn3gRfenwnc+7GBe+zsjclvonFDS9nA9Iy/u3x9+vAP3735VPk4CRUEFhcBIazFxbfm0k9fHD7k+v4nQFaPQIrx8Gmyx/GJ0J/t7ez7mw0b9MmaC2pQQgh0/ZSm4g5TwueWWtqLt0HuVy4CQljLPPYnB0depTn+b3t+8B4t0AdBUv93h2H9xc6da0aXs2m+r1WQsLRnl7NdUvfKRkAIa5nG//r1oGtsZvjTgev/kqYHF/TA+AXoqv4npJemOEiQU1Eo2l+G0movBK1UBBPU7s9E1+ILAkuNgKwSLjXiqO/khVtvARH8dxDBRkMzPrF/V+9/BlG5y9CUqlXinHv9mRPXtvuus88L9H3JPv2zD2yXExCqAicJBIFWRwAvv3Xqwq0/Pnn+lv/K+ZvfPH3p9p5W75O0fxaBp793ce3AwIDMWmYhafiVgNtwSMsXeHp4eNXJC8Nf0PAdRCiuf/XgrnWUqsqotcvnl9DmRkCdweX4b9N7+m/ih+mbMraLM14yJVwcXItKpT1VRve+ArC3Qqn+3gM7132jKEGZm6tXg86J7OhDfuA/iHwPUpfUZSfu2L59tXxEoQxeyxkEgjKeOnLxHb4RqC+NY5H3+2953d4XlrNN7Vq3ENYij+yZwbG9jpt9GkBPQ5H9zgP9607OVeWp87cOQtn9zwJf+xDMNFfj+jryPqXpxj8c2Nn7P+SXey70lidu4IXzb0DNB4tr9751+HV7zxSHyd1CERDCWiiCc+QPjUCnsaqmZ62O5IN7N/VUNP48ee7mAZDTf4Tt049iUG4Guv4ZfNLos9UIbo7qJWoJEHjy+bP7fNsoOcnW0A0/aacef8PdG28sQTNWTBVCWIs01OfPj66BpfqTmq732UnjgT1bei+Vq4pTv7HM8Ceg2/o1qLQug7T+FaaM3IqTLZdewpoHgYEjV9fphvOj+OShWa5V+CxvZtpzv/LwG/aNl4uXsPoRwI+4uEYjAJ2GmdG8L0FK2mYa+tsrkdXZy+P7x2ZuHdW14P+BLdank9q6Qwd3rf+ckFWjR6Tx5Q2cP58K9Jm3VCIr1ogt48lO237r3//96YofeG18y9q7RFklXITxPXV+5DchKb3ZDMy37Nu5tuxG4R9cHH6b42QfAzlds+3EPXu2rfrBIjRFilwkBIIR7SHoJDurFU89ZOd680Gke6JaWomvjoBIWNUxqivFD87fej0e0n8Fwvr0/t1rnyqX+QfnRz7g+8FX8Rv8vL3auF/IqhxKzR2WCPxXqKeq3krDTdj2ierpJEUtCIgOqxaUakwzNBR0D09yiqePHOjveyOkpxLr9VMXb73V97S/h3nDXx7Y2fdPkAYbncW1IgIDxy5vM7LZt/hgrnLtxyaBrJNxv/72N+6tuNhSLp+EVUZACKsyNnXHvHL+1qcgNf2KbSXu2bt9dcmS9qlzo/fARgcmCtpzB3b1/Vg5QiuslLowENyDWDn8cSjl98PgdBviu03N+rl9/WufLEwr18uDwLdevLTF1YK3xnVZ2HI1bUxrT7z5zTuXdRP78qCyeLUKYTUI25OXbm4JPO00TBj+6I7+db8ZL3ZwMOiYdG4dA1lN9HWte2iuI2NAVPapC8O/CGPR34Ip/AZIbIMo7yX8G9QMbcS09P+2b1vf5XgdrXaPfiYns9oeLLEd8D1/B7Dp0E1jGP042pXQj7RKf546cmGzp+tv1TRf6YQD35/QO3seP3xow5IfC9QqmM23naJ0ny9ysXwgq98BWc0kVhv/Nhalbqe8kd/Fr8MOSEr3zEVWrwyO3I29hl+E9LUHGf+nAXI6sGPdd8uV2YphIKnE5IyL6bLxk7cn3bdkHHefrpvJAExMZ1uBZmqeNzXtfzUzk/m/ens7LjV7Px+8d9e1579/44l0duZtge+Np5zEEw8c2pBu9na3YvtEwmrAqNE8IZvNHsep5//yjl3r/0O8yFOXbv0QCO05gP0JGIL+fjw+uj91YeRh/Dp/PtCDM7Zpfmjvjt6Xo7hW9ycmJjaYduf7Hdf/8HTGfa3rG9rYxLSWnsloPg7fijZV8oFM2Ja2a9t6EJd7bCztvHP7us4rrdD/r3/7ct9I99jEI4cOiQ3dIg2YEFYDgOUJDFj1e8TqX7cT4kImXuQr5279A4DeBEX8ayvprU4N3rovcALot/TH13T0fXDTJn0qXk4r3k9OTm4y7a6PzjjORzOOvn1kbEqbnEprPhRzwAKzwFLHk05hv6Yd6N+o3R6beG50aPSdr3qV6IJKkVp5ITIlXOCYn4Yexr0w/DO6YXymHFlR0e5r7tsM3fxgJbI6fW1ivTeT+SsYmr54cFff+5Cu5X+hb94Merp6/J/PusGvTE6724eGJ7RpSFOkKPCUZvBPBccoHBet3Rwe13rX9tw/PjXzZ5hKvr8SfhWKkeA2REAIa4GD6p0feRdWBnvxjv2PckVhVfBf4A29uG/X2i+Ui2eYn8n8NryuDr3jPfWSFV5k44UT137eshIP2K7/64cObbheqZ6lCp+Ydt8TBO7vTM5od1+/NR4SFVhoLpKKt410lnE8LTMzo3V2dLznxLkhYgQ9obiVjEDln7mVjEodfYcpw+MAsftg/7qSDbAnb97sCSb0Yei2fqOcbovVqKNnNO8HmAE9Cv3Wp+uoWjt27HpXNqH9WTKR+kBHKqEFbvo5y3N/avfu4g23R45f3WGa1k9ZicTd0zPTf/f6O7f8dT311Jp2fHzmgJlI/N70jPPe4bEZ6Kg4qw0lqlrLiNKBiLWerpTW25PUbkPXZViW62ecHz+4d8PXojTirzwEyhq8rTwYFtRjvpX/rlwJ+iSXugPbMuyKBOHo3geRJtuT7PujcmVUCuPJlhnL/9NUqvMD2eyM5sxMaIlE4n7XML907tyNjcxHQjty4sZv66Z1xEok/xNW5n4uZSf+8sT5m++vVO58wkEu5sR09pd9w/rWyET2vReujiqygrSopn/zKZN5qMeirotKeTyolm7p/+X06Wvr51ue5Gt9BISwFjiGsLl6N6SrvylXDNTK70D4mX071pwtF88w6Jd/DG/1E1u26NOV0pQL71y3/8PJVOcHMzPTWkcCH2YGOaTTaS2RTN6f1fQvvvDK1bdnbO2JZCr1SeRfn05Pa1PTU0gXJBKW+ecnzlxvCGndhFQ1NRP8bcY1/vjS9bF1V26MwHwsVKiXa3etYVw1TNhYJ3TDjQCO42jJVMcez7J+t9YyJF37ISCEtahjGjxkGDr2DJZ31D8h5vUQJL5RPkXlUMM07u3qSGidICvkzzuSlmlZb0olrK9hD9v9JCrPC196JoPMAolFg6CV+PPj54YeyWecx8Vk2v1Q0rSfhFT18LnBmzBRyNalp5qrSuq7kiAsh4SFa7oZ9M0wzI+cPHOjZPo9V1kS1z4ICGEt4lhiCvZrSa2jol7qzPXJPk6nIGbVbWfUvcr7hO9MP97ZVXpggOu6ajplYStj7l1XvbRMXbPAbp6HzSSBlkraNknrvfVCcPt2sHYi7f3pTDb47KUbYxuvKqkKpYBXKBnV869c3WgbDEixAck0FGFFfEzJzbIsO9C1TyrcymWWsLZGIHoW2rqTzdo5dXyykz0NC8l779i5vu4zwM+eHVntGP5jqVTq/6AkVc5NZ3wNH2lVxNWZNIukMSjiNd9z0+CHp5DXAdX4SAg203w8GB5IATtODHzdK8C15kEjhXvNS9rWA11dnfcMDY9prscss48RySakrOLWqODCoIKAgkuVgsS0urtD60haeV1YYVbbtjUn6/74HXvW/11huFy3PwKzT1r797Upe3jq4sib9u9Y+wxe+vh7W1N7jx49v6ZzbffnQD4/Cj1Pfjx54XiBls6GVuTUc9mQsOIO9mPQFdkIRlz4fy5JLm2ZMOqTcJaXIqpcqnixVe+rdbZ3dbc2OT0D0wZIibHSksmklslknvx+//q3PiKnXcTQae/b+LPQ3r1t0969cOL6G7o6E09qgZegdMJBpVQ1DbKCpyUt6oPKz/4NEJalCAuZFIuEVBJd+jgLh4rvAiFqUVGkhJZMWFp3Z0obGSu/d5gSnWmavuO6h+/cvYHSobgVgoAYjrb4QPMUiGtj1/79jBMkLBwiTlMASlYzTkhWCJyTrGAyMOFkst/BoYMmuIIyGJYcMXMMdNwHPhYN1qWS1t6ZLGaKZL8yzFXTr15BooLLMugHMBRNKgW+It8y9TEcJGt4rvcRFCCEVQbFdg0Swmrxkb0+cf2XOzq73kgdFieEXF2jdEUJKQH6SVWQrNjtZDKlpTPp38U58iUbthk/Ph7sN6zg/xudSGvD4xkq6otcnnjyF0XRRTflkyC0IIJE1JG0QbqGNpMNp5xFhRTcZDNoj66988SFm5vv3LX+WkGUXLYxAuXnCW3c4XbqGs9hwjv+a9lsuN+ahOJSCoLjNDAFvVUll0p1aNPp6adTweSflEszPO48oFn+4yOTmR+6enOshKyYhzWpf/jDuuf6x2aV/qNRaPG/1d0gUXWCA0uu7GhMmkqmerEc8KOVU0lMuyFQ+Ylut562YX9Sncmf7Ojo3BDZWbGLtMkiUVXSWTFNuMqWuYG530f7+/tnGFboxsfdd9mm8XdDo9O7rg6NFq0CFqZr5DWlK9qV0fZqGvZchSuPlevB2VmG/hOV4yWm3RAQwmrhEcW64qu4ykfJho52Vp3J8quBYQooqWDKADftBd6HD+5efyoKj/zR8ew/hWXY56/cnFh7a3RCTTGjuMX0SVB9qzu1qfQM+jO3dBW1g6uVSHv/qVNX10Vh4rc3AkJYLTy+WA/8ou9kJjo7bOh+DLVFZ64TEbCyBktxI5PJZj56R//Gx+NdH5vM4vuI+p8NXh9LjU1iw3EZhXc8TyPuuV9wDaaCfBjTM06N0hVWQmHBDzvSDZ5tvqYR7ZAymh8BIazmH6OKLbzv0KZvJEz3ZzEFnEolaEtV2XEaCLKadrIz//TQnk1/EU85NuH8th8Yf4j9gMZUOrNkZEVZCnsbtTU9KW18GqcKFyjh420sd2+j33pg3F8uTsLaDwEhrBYf04O7N/2t7/o/C2FoGnsIy/YGlvAwSfCvZzLOe+8oR1ZT3u/5uvHJC9dGtJlMrfqjslXVHwjpat2aLi2rjFFLjUSrFUjlO0juddXSSXx7ICCE1QbjiHO0/hofbPgwpnDTOR2V6hWNQqGUx34890noet5yaO+Gko3Y45PO7/uB/lvnrwxrWdha1absbgxo1FWtwplXqYSJY5Nn5lU3bLHQmGA/yko0plVSSjMjIITVzKNTR9sO7dv8RSeb/T9BWmMkKv4D+YzBXuljV7yxd+zfte6VeHGKrHTz4+cv38JWmyUmKzSGG5z7VndoE7kz3uPtq+Welvhwm39weVjOyaoFsBZPI4TV4gNY2Pw79mz8KyebeRIH+VEZTaX0sf27+v794TKmCxNTzr/2NOPj5wZBVjjdYSklq6jN69dyKuhqmWztivYob+RTSkPbe/xMdlMUJn77IiCE1W5jq+s4dYEO6mzsYAmvi/+CrH7LDYxPcBq4HGTFVcG1ULLT5orS1ULIkoSFI2cMHKG8obiXcteOCAhhtdmo6gaOh4EWWlkyYU9gvHswXfgV19d/7+LVkSWfBrItJJhObL/p7elQR8fUZnEV70XxPc01sM+xrzhU7toRgZIHuh07uZL6xA3LBaYB+Ar8rBsfz34YX1j+D5eu317QNGy2xPquSE4mDuXb2IujY2AgytNE67RiKFshzuwCR5s9ZSMlsK0QEMJqq+GkBKOF5yFzRoidK5BoFCeMjM/8mG+a//Xy0Li55KYLBRiTrGjwOQ1br4VMBQuKVJeQKVPxMLlvPwSEsNpsTEECmBLSgbHUpwD1YGwse59l2p+9fmuig4fiNZIowrqq/6Xeqm9Vh9JbjcOKvqFtACX7gV8kTVZvkaRoRQSEsFpx1OZoM2iKxxuHLtDcsZlgLzYZfv7m7XSv+r7fIm234XSP/8o5ktWqzqSyZr89PoXPYDTYkZvziw0NLluKayoEyq4iNVULpTF1IaDjHHZmoAW4aep9geN8fiLt998cGYdtVp7K6iqzXGJFUCAi7jdkuapsBJKcPBwgyP8YRyV7B04Q3dDbpY3jg6gupoMNla5U41BbUN9n0sr1ScKaHwEhrOYfo7paCAW0WiWknihhW/0Tabf/6tDtxpIVSIhGnz1dSXUkDL8fSHKi4/lWPId9Kp3Vxqegp8J/m9f14D6DQ/nmb281FwgkZ1Dj7bnSSFx7ICCE1R7jmO8FJJr8jCvjeNrIxFjDJBpKVaSlXhwDw384MyucBoLAGEfHI5ptO6n1YAq4FjorH9IWjUOnFlF3pj62aui3whbI33ZGQAir/UY3XCVEvzgdw/8NcSyGUhSlpVWQrFg2p39xp0JYLyIohaXxdZ2FGofG6yi85/QS32F0Asu8URgu1+2JgCjd22xcsVElPC85169Gaa1YTkRWJKpSqooBiQQzONvq9sRULKKxtzzAEJw1api2EFZjoW3K0oSwmnJY5tcoSD09HanEDztubnfO/IopyUWC6sUmZUpW5aSqkgwgK04DxxaZrFivacCaIdAuH9zaM1rSDgloOwSEsNpoSMenvU93dXb+EE5taFivKElRqd67qrNmsqIF+yjMF/i56MV2JqadYKxXMDXM6+4Wu04pf/kQEMJaPuwbWvPticwj4Il/NnTrdl7JrqaDC5wTUle1GmdWWVCw1+JotjA6PgnThsIdQrXknF8arkJi/+R355dbcrUaArU9ha3WqxXW3tHR9C5dN//T9eEJ3aGdUwP7T0V7F86Mr0VW4mF6o2NTS/ilaB2HDmb8wA2+08AuS1FNjIAQVhMPTi1NgwRkGKbxRxMz3uaJSRzVUkumOtLwo6Zc7aOkVdEhynN9NQ1cyuNqeEqD67mX9TXGyxXbJhFthYAQVosP58S0909czfqJqzdGODVqaG/IUbCWr2p0yukfp4FUtDfeir1yl8IPUGjPHFy/fqJyKolpJwSEsFp4NEfT6Z3YBvOp8MvMc0hAi9hHNQ1cBrJil5TUZxhfXsTuSdFNhoAQVpMNSD3NMTzzU1PZYAM/ProYkg3UV5rHT8lXmA7SwnwEq4FLLVkRI04HM+n0LdvzvlEPZpK2tREQwmrR8ZucCd7hePr7rw2N5PfxLUZXON1zHKz4kb0KnIttP6Njk8tyaimbwXPrsW/yq3v3bhoqaJZctjkCQlgtOMCYCnU4GedTI+NpQ32XbxH7QOmKG5nzdIWZJz8HNkKygqI9TmSL2JSiovGVn0A39c8WBcpN2yMghNWCQ4zPc0HRbr6GEs6chJFnmfl3knZO4/hmII1B6fiFG9br0s6qAeXPp2WUrhzHeXH/jr6n5pNf8rQuAkJYLTZ2kK7Wul7w6zeGx9DyUsZovOodOizosTg1TM9k1Wogpa7lIisOF+w48E/7E5B1Y/cgtdizsBKbK6c1tNioT6X9n3MDcyePOo7OoJqrC6S0+ZIYV+GSOHxvc18PJCxXG4ed13I727axqTp9yk9rX1jutkj9S4+ASFhLj/m8axwdDdbgELxfGsLpoZyqVXPVU1QugVJUV0dC27p+FaaBWWxknq6ceAljTNMiAf/BoUMbJpewWqmqSRAQCatJBqKWZpgJ731Zx9pJM4aK0hXe5vlKVFEbKFlxs3PvqpSSqpbzKztRm+gnEkktnU6/2GFMfa4wXK5XDgJCWC0y1iAR6/Z49iOjY7C5qkG6mk+3SFQGlEP8FFdnygrNFqBsn1OxP5+K5pGHbcBhqhT8fqu/v39mHkVIljZAQAirRQYx7Wj3Zj3tddQjVVJ4l50CMjHe8mqOTJCCvmoTyIrENXx7Uinbm4Gs2PZUqkObnp76i0N7N36tWl8kvn0RaGnCGhgILKPn3B3+xKVXDh8+nPseX3sOlpt13+P4uonv71WeDqLr1ampFB8S1JrulNaHc9rTMxltcpofOeWns0rTLkeIZUHRnpm5YibMf7kc9UudzYNAyyrd8ZLpWvfgQT8w+oyevXeo++bBtaEtQd9s1/ffRsV3I6eDJCp+nourgH04UZQnhIYfWm1o8xdUGCU8/E/bil89sH3dlQUVJplbHoGWJaxnXri2HTvd1nEEcCBS3z++MLi75UejQgcmJjL92ax/gNJPo6QekhVXAbdvXI3D+XQ1Bcxiu02zTAEjKFIdHTQS/S8Hd2/4YhQm/spFoCUJ6+mnL651gkwRQRmBt33gO+c3teNQYin/oG6aKX5rcKEukqqoWN+Ij5vy81v8UATDG0WGC21jlJ96K6wKPpWd8H8jChN/ZSPQcoR1+vTppJPS7iw3bIZl7n/++eFV5eJaOczX9Z2YvM1LPxWpocBHKv8qHHdMqSphGUqqahaThfj40ITBcbLnsDj6oXvu2bS4n96JVy73TYtASxHWo48GxrUx+5Cu+XY5RH3PMzLGxF0ktXLxrRoGNVPPfNtOolIrgElLGYH2wbZqcipdIFVFlDbfGhqfj9bskCaHHS/7gTt3r73Y+BqkxFZFoKUI6/C7Lu/Bl1jmlKB8PUhcHjHufuyxx/g5lbZw+BL7bX4EoiZqyS0T0uM0j1+82QSl+ua+bhxj7GjD2LicwWkLzaarigbKsmDJ7gcTmezMBw/t3ixntUfAiK8QaBmzhq8/f26j77pbaxo3w+jetPf1B5D2RE3pmzyR4/nH+Mti4Wx1dUrCHO0lSVGqskFUnakkpn6mhu086jgYHkWTW3Wbo4Tli6L5gqYHE47vfeDufVv+YflaIjU3KwItIWEdO3a9Szc0ElDNDqcLbHjmxas7a87QxAnX9ljfxcr+Mzs29ykpi1O8iJjoR/cm5o7dnUl89LRLW93dyWmVIip+Kp7pmlWqIvQ8Mga9Gslm3Efu3LX+K008HNK0ZUSgplnGMrZPGxgYsIKeXa/TA61jPu0w0+7xBx/cd3M+eZspD0wbDgWm+RXP13cODY/jWGKuGAb48jG+agNpilbqlKZoWDqDY2AyjtNUlupzYZlKpXgaxIVMNv0zd+/d+uxcaSVuZSPQ/IT13TN34QRvZW81n6HSDdMLUqmjh9tgd//Fi8OHEl3JL3Z2dh3MzGA7XU664llVWRz/QhLjNYmsmaWp/DjCjqIDdlaZTOZZ1/A+fGj7hjP5OLkQBMog0NSE9cSRszuswNhdpt31BRnazM3U9IuPHDrUuG+419eChqU+cvzqjp7u5P9KJpMPpqc51Zv9QntLkFQBEqZluVCw/7nhaP9i376+8YIouRQEyiLQtIQ1cPT8GjOw7vE8tyFtxBrb2MBXdh579FF99g0vC0nzB548ebNHT2l/aFmJj1BPBYyav9EFLaQ+jdPAVNL8/pZ13a8qiJLLOhAAjvrTRy/d0enbF+69d0tzHFhWR/vnk7Rple6mp+9uFFkRGF8LVj/08IUN8wGp2fIcPLh+4sCu9R+F3ucj0MLf4vaVVnChqYWmdaQS2jpY2vd0djh86Vqh7c3Yxm8dudTPxaW0lrn7yJEjZW0Tm7HdC2lT0xKW1xecgHE3FDWNcb7uDh6+r/96Y0prjlIO7ur7TOD5b3ayzt9ylY0Gl83qKFXZsCXrXdOlrV3djf2LBr556JOshLDmMWhPPXV6vav5O5jVxYLUhNl3iIbV8yiqpbI0bQcP85C2Xu0l3dczC0XUN4Pzb71339mFltOM+Q/0rzu5f2fvu1zH+QDOt3uZ0pbVRMRFouJK5qqeTkhVqyBdtdUmhGV5JI4cudrpd5kHiyp3tTU/8s6r+4rC2vCmaQmLWJO0Ep65INJK2tbpt75298U2HLuiLh3oX/95L+0/kHUyvwTieiUJHVEimVzy1UKeWMqv2pCoKEVFRNXT1aHawnBx80eAZj7TwcxdAc5Gi5fiaNnNT37nCk4xaV/X1IRF2B94YHt63qQVaCcfePX2K+07fMU9U7qtHev+xE/7r3cc70O+6w1gxuV0dHZiusgvJS/O7IskRXLs6KCxqj+B26t9a3uUREWi4plbQlTFYzXvu+7tB3EIUGel/L6e3TNw5NS8zYAqldss4YvzBC9C7559drAja3qvDoyg6pwCP+KBZaVOPPjazS1vMLpQKE9fuPnawDB+EqehPwzWuAuSl8LPg90WVxhJJPWQCUmPBAWTBEz1TFUGpqO3wYYvIPgr2az35a2b1/50V6f1e1NTlVcvEzB0xRekj67usu5FmS2/crvQcaol/zeeObfTSOj91dIq28PxiaOHDx9quy8LtQxhcZBqIS0Dhkl2l/3yA4e2j1Qb2JUUD1Iyz1waOQib0vsxKXsAFvH3wMB0JySwtZC+DBPTN5BOCEnhrI1BuKe9l6tIzsVCiD6E0DOabrwI2elZ09aP7N3aNxjheXvK+a1OENa0EFYEyYL9rz072Ju03ZpNQKj7Xd899cKhNrA9LASvZTY/s9GcHoK0XsrakLS8UklLxyl+/rj+/Qfu2367sJNyTS7SuZfneO7ffweBGScu3NwAqWgrTvTc5jjBZmw87tMCfRXYKQWOgula4OiBOQUZ7DZuhrAGdQXxV0zPuCaGnkv3VPGHOpPw7+QPR62OM5HhdNddGOeX2kmCbSnC4mDlSStVTFr4eLljdHV+702vWz9R66Cu5HS5h5hmHvz3QiOxwJTRo2BGgY06dm7OVhewYGAY6s75oD+ZDs4JPY9JyqSCQ7ABqftd5VFM3/j2Ja4mtsWpJQSq6ZXu5UZTKeJnsHpohiYPRqBn04nkS2+CQWW59BK2dAjwS0Y4IHDz2ERWG8Gnwm7iK9W3sFmbvrqGPzw6gW8eTmvTM07XmTPX28KYd7EQ3rjnvv1QFHbPt3zT9DcMPHd+13zzN1s+/hC2rKOo7NjeQdsxT5LEWrYjbdLw05eHtwWe9jl0542u62HZHZIVpalY/yIlP5X3MHYddLLZfy4fmYiBhNuB509vw+rG3tKY+kOwGHLi7W/cS91jS7v4s9TSnZHGLx8CICH9lXNDX+zpWfXuycnaBV2e3e567nAm4973qv0bzy1fD5qr5oEB7KXt0u7B3Loh7yhWVfypbOalh9+wr6U3mbfklLC5Hi1pDRE4ef7Wj+EEiZ+amqpvJT2bzWjJRLIPR3n9riA5i4DZg720DSIrlsrvHXSZ9p7ZGlrzSgirNcetqVp9/vz5FJTqj6JRejTdq6eBMzNpHP9s//QrF4bvrydfO6f1JrCX1mvcXlo98Kembjotr3wXwmrnp36J+pYNeh5JdqRem83O77gxkpxtW3bgOZ/g1HKJmt3U1Rw+3D+zrc89aunagnWzpq6PdxujLz388L4F78tdbtCEsJZ7BFq8/sHBoMPX/I9hyrGgnuDUUZzrnnz7yQu3HlxQQW2Ued++fZmJ1e5LoPB5k5ZpWCPXz+08du+99zrtAI0QVjuM4jL2YcIZeh+2+9wF49MFtYJSlgmHE0g/JlLWLJQPg7RmhtyXsJ18eja0tivsXhj6xy9ve/mRR5TRcG2ZmjyViN9NPkDN3Dz1FW5z9XM4i+s1ME1YcFNpUIrVLHzJzHnwjl0bn1twgW1UwPHjxxPXpztejR0HFTc+F3YXRwxdfdM9W08D0zrs4wtLaM5rkbCac1xaolWOvurhZIPIih0OdVm2haNTfqUlAFjCRnJP4HBn+iUqz6tVa2nGpTe/etsP2o2s2G8hrGqjL/FlEQC5GHghfplSUSMdvwaEA/9+4vjpa3c2stx2KIsfUek2dr+EuXNF2xEjSJx98w/tbFt7NiGsdniSl6EPp84O3W/Z1oPzXRms1GRKWdCJdeCIlJ+vlGYlh997r+70+EPH8NHJEtLCauCph+7bmj81ox1xEsJqx1Fdij4Zxi9AT2KSYBrtslgxhOD2gWOyz7AstFzx6zFHj1mGobYUYAgC9cHge3ddK5uhjQKFsNpoMJeqK6+8cm0X6noXiWUxHA8WxAdWNyQM45HFKL8dyiRpueM7jllmMGpnjO+1w9fNaxmXxiogaqlR0jQdAkeOBPjczrnOiQ6jw88ESSOA6KT7iQzOHEvavu1pZsLQg4QPP/DdZG9Xx/vWrOr+mfR03SvtNffdxleAQIgvTzjBT0w409Mpu2faufZy+vDhw5WPMa25dEnYqggIYbXqyNXY7i/jCyvdfmaVb5hdVsLp9LJGp43j1/1A7/RdvdMwPRzEboRnLVHe9vEvL3eXBOB4ZMta22H+TiqV2LJQ26u5u6Bju44Z3J7O/Lvp6cwPmBanOwQ4uNHRTWMK21bSvh1Mm642nTWCtKkH07rnTE72aOO0XZq7bIltVQSEsFp15HLthg5J/+aJE12m3tVjOPYq1/dW4cTjHnwMYhXOce8xDd3y/PJW6OpMdsTRVy4iK/rKMR/jwvz825VIHFzT3fkx13UW/dnhRy3GJyeeHEs7n1XNibUPFvY6vtGDw5vV9w0Vofn81qGhZfDhi3HX8SfQ/3HPMse9CWcCX0gel2OIFJIt+2fRH7qWRaYJG85NxldGzV4tGayFSLQ24+q9ULyu9gJfMU5ELTn6wUISTl03NHz1KzyiJLqmX657OLLdSJgoXTO7cBxyN172blier4YCvBsFdSNXV2dC35tKJrbzfPfFdjwvC/qs9MSMxxNRsSqmT6LhUDQHE+jUBE7UnATXTuLsrRn01K2l/x6+qItiR3TNG8V59KNB0DGSfNXGUXwJY2Gm+osNhpSvEBDCasIHgVLTt75/aQ0MnXpBNb2QgNYEntfr4wu/nBYpKQLtxtdwAh0SBX3VDe7nM/Ha5vf1Fb/CURS2bCTAWWuxR229qRsbQQQbUed61LfW14JVKKsTJ5sk8WUcHbtlNANyTOhgcmAGKH7p3m1FWpqtuZCu+LByVdKHVMjpKEQrBwIW9tnpXOIH+QTDSH/D9f0bmCLewDn1I4HmwtAypPDZ/oe9oXKf/aMPsWxSs/RR13FHrURiZE1gDR86tKHEdCDMKX+XCwEhrOVCvqBeHNaW6ui11/mWDtLQ1kEiWodXE4rwYgepAPssTPCMOjIdAk94TZ8pMZjch8HjDorGFUTUAwlkh64be0A9/ZCatiDZWtOyE7ClQmIdJICJFYhA+TRV4Fo5/QIHiUvrTEbkVRCxiJfsSBbfYk87OTExXxdazY5yUgiRKfpHQ1YSkONmAZY+gV4NIeVFfCXoLNA5h/Plb5LzWAyzF+IVXdNnvO/6GcsyhjC1vmWZ7s2pO3fdOqzriy9asnJxZREoerDLppDAhiIAEtCfO3F5rW0a6z1PX4/nf53nG5RqqrpieSnULEVh8cx4E7ugH78H8tG9eP/24oVezY+pkpA8b/abhPF8le75BqdsXUtaFeaTlTI2IByEoU1l8oq1mkokcZHElIRoWmpejMMCMyCvQXyy7JjjuUcgOl4tLCzCMpTHgFpcgkViX/dH/ax2Szf8m2Yqc/MN+1r7BM/C/rfCtRDWEozSkbMjq7NTY5t13dqE6dhG3wsSqlp+C9DDi0ifLrqmT1f6BgUaPjiHN0lJAGAfvpWcI4XjiHIMF6ocO/EjmMa9HeelQ1LT1PRpoce/sJwOTCQtc+kfGQp6Uxl+9JWtmL+jNEaJ0gKBgbsygR58B4sHfwV5aliVWg3vCHv6ymHcdG868IzrVsK6pnd71+/dsmXxbD3m3/W2ybn0T1/bQFe5I8euX+9ybuqbXMPbDA7ZCKV4uMOecyz+9OfmWvj9x9zEw6JW+JuOX298WhE6qtwLEV3TL1tb/AWj7sqwfqaro/sdmcyM+vBp2XzzDEzaBiQsNH+e+eeTjQ+ohwqnG0BYhfVzNYKrkOmpyauYYH8KvD8G6RPBszrC6Jq+ystl0ghzXEZjR5+O4+iZwTh+eG7Yqa5rq/3hGzzTSkXKn4YgIITVABjBP+ZzP7i8ydasrZCetuCHvIvFRs92SEdlpnCYE2LOQi12OA7RNf1yjrphHIyE9yOXPnfNMDg70DpdTf8DWDKs5rRvMVwChAWrUgh21HzllD0NrigqlxKVC7bKQuOOWeGiuI7OTkhb6T8C/Xw3xkel9cXxj6eIxiY3Hhx3X9dHsWJwDaa3l1+zd9Mt/F4tUk/ijWnP+/DBb8++LWqvnh0c7NDGta0pO7kl6zpb8AJzEUr91kYEFdeBRCt69Nm4+AsSl6jwjVGckY6VwPwUpLhLURx9xliWvxFHi/w+zB0SWCnLsVpxnoXesSI2ngp4zmRJXPgf/0IleGH51R6uwjeX5MR76qtITh7+8N9Cp4GF7Sm8Zl1s35pVXVomm/5c1vG+Wm284njHJeJq44/FjixUAld8w7uijW6+xo3MhW2S6+oIVHumqpewglJ87+LFtcFUcqur+1vxwPcZJqYPMOyhXw6GKI4+4/GwQpjCBhe+6XDIpFb06PM+np5hhS5eXzw9bLJ2pBLGv4Fe36BU4kA6IQGw8MUY6MJywVeqDs54Z69zrWdY7jI3G1ZtUiSV6zzDI3IqLLew/wu9jspl+yywrA1pEed5QceXPT3jBb/DLrA5ua5UHZ/4eMTbFx+fwvE3DJO8fANrjlctL7giJhRx9MrfR89R+VgJ1Y6currONuwd0FNsxwtV02mPlWGLy1TxlPHf6Hh8PH9xesvw9yRM+5PIRT2ZIgVKKZxWUY/PT8aTFPji0i3m4Ed1hDWV/7uY9bNGtiGqAyorJRWSqCgdkrQiR5KddrwPlsq8xfhG6efvx8dvtiQczDdmmPaldDBxSVYeZ3GJXxUMWzxq5d4fPz7Ym7X1HTAL2A7NqtJHEQ3qtCPjw3LoxB/v+OMZ5VVzR5aHWRuErYA+y4uu6fM+Xl9J/lh7bFvbY+vmv0bWos9tsXAWSLIiaSnyApHxJz6SbFSFuXTw8i86r5vVRW1m+6IHmUREAuI0lcREP5q2ztWPrO9/YK54xsXHI56+cePvj3qBfimZNS+J5FWMcrjptThsRd4dPX9+DcwEd5iQphwozfkCwJKaLv9ewHYKeicfSudwShcnJDBBOD3MTwGRO0cqLIj73jQTaejDBYaPHTBgJ/i5+HyYijd95sFhRzkzB7yL2IrCtGwezj9nOQVTUlfPwiicifnu5J0qHHd8mXHIG6ZD7JQqIk9kJK6QwAokMWRUhMaSeJ0vcfaiXNhs7PyuwpYV51Vh+EM/Pu2M9GckpyiOuZm2Wvtom+Y4me8xPbvIIujzPu6Wbvyt1ejL3U7Sv/v754ZHsORwaX3KGdwiJhO5pzY+Mivk/urVq52jTnIXlEc78LKu8qAMx/G8kHhyOicosz0ovM3IrIDKb15HSvDoOoqv+hMLYCOWI8ash0vmufryZVcqLz4u8fym3ov1xT/EVp4UDUTn4/iS0xW+sZTMojASmLqGp64iH4FRXJQ2TKj+lv7JVRTVxwQkm9APyaboGnGMzSVR6VR87ipsVT645ovOzi5tamb6zzB1/nqzjz+s9YetwLioZW5C8jq08K9+1IxS8yQsfF6ap1WL2BK8VOaJc6NbPcPrx7wJ++hmHQUPvOaQgMJ3ETtVlERDP0wVsQ19uPgcLQyt/Dc+p4jlL6k/1xa2qVyh5ApEzEoErm/DsPOTXV3de6anq36roFyRdYWVbVSshHJEMt98saIXfIu9koplYZL6m/hUz7kS/Jt0/PE8+Jj6X/Y6k+fv2tA1BKIvB/OC8WnGAmp5dpqx3XW36fjgYK/upXbhFd+BrRlqn16MfkrspkoC4hnirYjbUVWzs4rHx8uL3cerjwt0TA4RcBcsuX8Rn97q54okVsCKJJ9YkSvy1gJR4aOtnAr6OJP+L13d+BKBKMEzHhAfgDh6yzD+vqHjTDDvYpAxLqwEfVdbE9bpIEi6V27tdLP+LnzPrWS/XrRTnz5d4e79+LNY7r4kP+Z7Jv7z1LyPL0B4Tb+ci9cXLy+eJ54e8Rw//rqqcUR+HOrgYVprJbBl5E2w63oI64J7k8mUDZLGhmAXs19ucVkxP8gKQu4ptCxbMy2TW3KAGI4u1P207ztH3CDx/7bL+Cdse8h1Zy5ev7Dp8uHD7blJuy0J69TV8XW6l92Dl3cbLG6g98idbhDgdANcY1ZY9o2N4mpNr96GRf1Da3Wui0RW69F1bWslvp81LD2xDTOGu9DhQzBc7AcYfYlkAqo6A6ozqHNBYJTESGitTGShsp0qQSxT4AcoPJQw0LBlEPhBFakHDjoLvY+XgVIyg7WK77tG8n9pvpHXBbXL+OMBd7FN6KLu+uf27esbX9RHdIkLbxvCGhgYsDb3v2a7obt7YHakpKmYiqgE2ioqJbzIOszXcSov/DAzRRNehyJKvPx4+igv/ZLKEaCkoZxUFMYXE1I8f7Xyq/UHp9CkAlfbCF3NdlhS7IQguA0N2wiJYy1ktC5IISb1Okr5jSYruy2SGlYkIkKLSC3yy/WrUWGzSnjaTUX/QEhYQuNewLCdwBFKRkpOuAfr4sBnwwfDg6B0MHagORhBHNqHw5WxTwYav6lAt/42MBLfrYZXHO9w3Ftr/B0Hp0pY+tkD29ddAz5ln8NGjddSlNPyhHV8aKjbzAS7Dd3egRcvgRHJWyrHASw9Pyp+vlSxEluH0jWAGQF9VVZMpxHVRZ/xSKQU4PR5Xy0+/sLQZCFS9DN/XKtSeh5WrL2x+sMyZv+W67+vwz5eC7oDx12rm9pakNg639B68XL3Qh+2Bm94DySxHhg0daBHSQhiCbyyyMS9SDi8RhEHyYP1qD9qak0S4VGn5VYrSTRKEkKHWYYiHuQmCYb/YKYLqS+3H5LYckxJmz6qhSYJ5yNgzgtuclESpncBfN8Fj3lgJdCSGpHcGECoxrouMoHjzO+4evLLMB1VKxJV8Wyj8Q80Ix043jnTu32hlTdkh08Yn7UWcnio9Qs3pzZm0lN7LCOxIdIZxbuQ1+lAVFFxJB7aMeUIiPkiPRPjo2v6dPF4FVjHnxi/oQK0Az/bymf5uI7ayGLj6eM63nrbF5VNXzV7nv3HViQL3JAEaSV1z0iBNJIgJBCYkSKJYbdjEiSHw7a0BI5s6QBBbINUswMUsQ6E11UojZGccA9dcZDBdQY+TgyFTgkiEKYyIBvstAQzIRk8cBJ+A2j4gZFDFWAqjAp3V5IhQYYwwUJ57ByS0QINzMYK8FyrRxt3KNbXb2qG/UVNT5wDyCt6/A0boGbdqzPA4tD21SPquWihPy1FWHjQzYs3xnZkM95ePIZd8RccBx1xez/UPowp46I4+uVcLD9/8Plq0Gfy6Jp+uez5uqPyY+UtNN5DuVQc06drpv4bIDXsjtsMpdkOSC79QK4Xog3PzwF4IBNCBiIhpBSpoE8jioqWaM2KCRuOqwLXgIQItKIe0lCYD/lZjoqgGIo0+J++SsmMKA8eqQ21qHuUh2PfzQHN6vgG6vVK8GfmQhcbr3Yff+AEi3rtdCtNF8u/eIWD2ATXx4Mg0XH1Vr/hm7sDQw8PvyvTrriKWocEE0C6oM/kJRJHrAykgj6WGlq+JUifu6YfS6pu4/UVa6AgQcXKi78ApekhcWFBwMstEkTX9MvVHw+Lt2ex+4+Pg62CxgsHEwZbAdgWIJfA+ICkfDRYtyAwWWB7Ay8F8VT/KB0bOJ4Gx/CQfUKSwZGrJJs8iZHYgB0zMB+zk8hopQ8hEcEog2ERASIBAOL5fIrVIKLxXKtzKPZLgZUckvGf+/nH5HsK0+Uz3316zeAjj3D23Lwu90w0ZwNpiZ72UnvwfO/AXIFnXfLBxLOsHn6yiLqmr3oQ04LHX9hq6TFHI6txrlYWkHj98UT1lh8vryR/rIKq6aO204drdP8hRWF3itmLUw42QnW1CSTSA2IAIXkWOBYKLWw8wjVqNkEaFqjFwLQNJhWI4ZiFoiq6QX0SbsEo6HMoWVFCYprwjw6FP65BXCSoXJwiOwpnFK9A6yiWkQhRDwA9XAfpwLS/AqnqSKP7jwapquiznXFXMn6x8Yg/X/HySvLHKqiaPlZfvf0H6BloAM/v3tpzHkJwUx59Uxb4GE5Lfnt2ZGS16SX3+F5mq4llfegtwnaSR6J5EC8hPUV6IDaS6aDnoZ5DpYe6AtdgOr4pyhXLNPH0KKCo/DDP7N+S+mI6qHzbQr7AbdgW+iylWn0l5cf6E29ftfSN6L9lGl04x30tOtMHklmLhxpClW9BL4S1T+i2uNPRp+0FflD0AN9A9LHnmHGBBfJCE3QL9ALiguoJqiu+64gDzWGIIAlhzhaSDsMV/yjJi3BxyY9khP9BXBSzEMY/AFORGMmM1yyKZfmm+ZKuJf4uMHV1THEj+o+S864E7zYd/8Dliqp2MamvPbt9uw4dY/M4DnXTuMuXx/scK9iHLcbryzfKwvOJBSGNPl10Tb8WV0xYyMFymDdXXv46Kq+ueChJQI4WlSUqf8StOf5CNdXqr9afxe8/Gm6AoLAqGKyCGLSG350ACFzKM2FvaeOseEhFOsjItdQ2S6wYYmkOdl2+CfLBvmpIV55vYY2Qn6uAxAWC40zbhxSmWArcQj0TSIiSU37mx0kgVesgLereOSz8E5EWJa6Qzyh1hZEcO7xY4Ct9WLfNvwa+5xA2h6uGP6vMPxMsZ8WNf0Gf+cOCw9usq51a5+kNG9Sn1IjJsjoO0LI7EpVra/vxhPdFs7JyjYriohlbTAKGxO1C6oJEljseOLqmTxfPX66OucJK66OUNzuDjK7p05UIbGwX25I/vrj4BYrnD0uZ/Rtvfzz9fPsPIkgkbL0DZNMFRVEHFEY2ZCBTcwMLdfCsCCVN4SwpE9YG+ARNgD24IDHYSYB1yNCYDkLRFoC8oOUG40AKQx5IYyAmlQ6SF7dDoSof0hbJiApzqLs43aPc5UG+AvVQ/4T7nGQFQiJ5kdbAkmgH2Sz0FaWB4gLrad22v4nmuvPt/yzCc1+V4t0e4z93r8PYwDCvNANxLSthkai0jmCf5+jq6y6Y4SkjTfoKprgWufj9Dg3AozBmiK7pl3H8WDH3u0YfLY6u6c/HVS2vSvsxoygyTF2q/qNenEyjJ5NJPYGPRidME1M1/JYqwyoNq32Ihu4J0z5M+WA2DoqwEI9wfmEaEhQJzPNsKNOh0jJwrfRVJqbnNOrC6IGwQFzgHiKrpCuq2kE+FizrMXWE7IWCEKemg7hSiimOQchNIC3EchqpHlBO95TshQThkwF5TL9k+Mm/MZLGzVo3AlQdLzagDle1vCYd/wU9/5Z5ZcyZPnNow/J8ZHZZCGtsbKw3rdn7nIzTx42o0WfP1cPKuYJ6XPFs5q7p8zmKx5v8cdcxDeMPOR1fj+gh4X10TV/dukiC+nJPeLy8eH1hrtm/UVvpKxcrP2oL/dlcs1eQ9PCeo73wGcp+R2Xyvlp74vH19B9EkoA2CYKUlcQqJCQj6vkoyBjh/IurcJiy4Zxy2FMptRBO7sK3kClR0UYUZAX+wMqfC1ICiYHMYBsKSQsSFKaAUEqZLoiK00ASFsgpN0UEUWE6yOkiiArE6NmUb91OWwAAEuNJREFUszCNxA0c/uBoF04W86YOarWQAYjGmHBBEIkUiXEqib025hNmInWknv6zKo77Sh3/RvcfSx5Xl4O4yr5Y7NxiuEEQFT4uvs8yrF5VvosX28LLS185vsiRHkc9YPiJtrCbJIzHyx3gJdfpl80flZWPR6qIxJghus7xjSqj4E9UNn2VvN76Csqq6XIR+48OYEeGlcAaXhLfQwxNQcgQEI9IErOOxBUuCuDLz9Arm5iyOTaYy7Jty8hAb2VCm43ZmwnwQTbgFpAWyA4SGEKhaMdgYNpngKAcpeMCAfFjYGE4yAqco3RZ0LorUqOkxVkf6AgzvFBPFbISSsOUD+WRrWijpcwbmI4Gomj4yxAIv4bPVU+q9sfxk/EP36UlfP49N3vNWr/m9CZdX/zzjDDofAoW3XHVr9NPHdB8p2+uORl/mjFLUktMbBTtkSJbpLCRxYyD5OpJps/4+DJuvq5IIgoLqfi3pLzcRuloM7QSzKImsBSWG80LVKkxkSvOkFHaCjL5QvrPN9rwvaSVtEg2ICmQCNRQkGjwnlOpNktMxdds+GxcRFrIyCmhTQMEUJjl4qwtzPbAOVC8o0DUZroGiMmBpEUfRBZ4DvRUJC4/1GOpij1ML9XU0PJdFxIZGsOpJkkOQ0YdFh5CPodKl0WfRqQkVUhTIEf1iN4GkdJU4Rx/xsJfHkpfMv4cd+IAUJb1+YdkfSU7NXp6+/bti7qquKiEdfVq0Gl2TO2DonYzAcUTCv0slCB8FuGia/q8j7iAPl30aNIPHVKq55w+00MvjFLo05WmV8H5P9XLzydVF/H0xbGl9UGfjm226B98po2u6fO+0f3H9M7SbT1h+FoS00ybSmm+5/RZHxzbwWvVHtSvNuLRR4BKl0vPtHRhWh1SESUsNBkH0qjvNiAx4MA1JDBc4yBmTPmwJArJCFM+dA1SE5XsmFIqRTzKUrZYkMio78IUkauFoW6Mcbin1GWrOR8nqOEUEUQFmuK3ZdEw6NFg92s9j3XLp0CIsAuS8VdPkcKhCZ9/KAc81x/c3NdzFjy6KHZc0YPNh7VhDg9jYnh4co9n2dvx1nLalys7Rimx2xLGigfEJBQ0Xr149FkBVb04BQiTlPAFbTiDxRGKM1pJf5AgarPKG0sQu413N07hkCANO5m0fSebtCwziW5DqMISHTRMJCDF23inYbmsauNCHq+Vn1ta5dErzKN8psP/RiIXVpAegKJQ30Y06AQSEXdAIpdL0wbTNsLpoSIeCwRJHZYBpTusIFAIlPC0iqL5AxoCcmLPQkkLdITRCc0dSFqQD1A51g4pLOXmhZCwDMO2BpH9q6ZtDoU4oKQIy5yEynFnv+mzw+0+/q3Sf5yT4aYs89zq1alLIK7wYeQANcCpgW5AOaqIARzxcudrXrMTz+cuFAxBI1Rw06eLKz3xsnDikt+Mmr9mWBlXrbySeJAlTt8MXJImXHRNv0zx2GpWZ3r0KKqzXHlRHH26+fQf+mkbg56ADjppUuihMJl7BEhGtmnj+4Phj1lEUAzjaQcgJkzcqPPmlI/yjdJV8Trf/+hbeYyP0uMS0zSVF8SEaSELxkhR6a7IC1IVHkNMBWEkCljxYQ7YXgWKrDCHw2ohJDDKSkr5Tst3TANBp7DdgkTFKSOpxYMtV2i3hXQoJjwbBo3L4oibAajdXmSbCl01PEvi6x3PetMvwfi3cv+xHpPRk8GZvo6Oq5y5FvZlvtfqQZ5v5igfH7iRdHqrn/H24McyEb6ejCUxkCwqEATi8JDNKtWRIxI6wrLj+aOyQgIqLT/KTZ+OLYnCFGHE60PdSgzIgVmcfrbt5evjYkB97VeNyv8plx/UYoChElhYgB7KtD3PAUWRpejIVNzNAjNzyDuYRqnrMF5dIx4CkTrlAJQRps2FhZIX5lqYwfFLOygTBeSmkUhDEgNvIC7MR5ML6JhozoCpn+858G1utbH4j7BRT0Z9VlZzbTyOKJCKeCjkqYbkFBJh+DXCPVcKuXKIFURlm8WBoZSFOBCYmk6i33ioT+Kw1CegEMspcFfe+M8+rRySNum/YUwm9I7TPT04NWOBDg/nwtz16xMbEp3mPswIOuI6G7wBSlynz1pQWZEIP0smIcEEWN3QsfJDn+nj9FFSPh73wilgdE2f+eOumo4pPqWI2kI/LKu4RVXLq7H/kJopRUFhnkj4joNT9KC/BlZgAIVD1I+cwASVUBgCIsF1KEQxJLpGPKHGP5LYrAs5ikREnmJ61KF4K5cG1+REVS6HC1JauGroYYcOrLWUEp6MSF0UpoZgK5hV2dgEzeNLYbMBnRQZEUPnOwGMT6GOp57Kg/0WTCMYjnsQHpDmlJFTR5IcNt/alvV1PdF5NsKcLSpGG03L6QcjnWDpeIXqgFYb//A9wGi1+fMPDeqY7nae6uvT530KKp+JebkhHJyX6Fqz33X83tCgRr1d6gXBH+XnFtEwDmEVMBfAtbK7UvHxVTb1gGLQokbFVBZMDtUJHmT+dsPxmqSRU2nkrxkWxhfbOfEVwLov4sIaonSRr1qZy6vy8xliPbn+qPjYHxSm6mJwdB357DfaVtJ/BMLeW0/ayVQSR6TA5AB7h8kwmFeRrFBUSFYkJk7GsM+F5SuiCQmFBEriCskHYcxfEM9ozBjBS/yaKD//rBzndjD3BHswAcmqwFdhOWGugCw5owwpEt9sxMlVGWQEK4GlcAOi1XAcL6eLICfdcMFmNDnH7xdO/YTCHTkxM2B6EiSPbuXmHrZO5eJy4Iu6lfo2Gu8orFfA+PM9UMjnHpBIx9v+/Q9Wm8nMfcMTE1d7u7vP4Ec6fzy1wqOGP3xI63JHjgT2/rsy/boTbMP0pe78dVUWS5wjK0VUjIqNN3kA62ZYeIcfxofXDFNFUZBTT4W6m71mWBlXrb4yWSoEYWh0jVIUdJEmzA6o18mRDN7dCplCEkK8IiP4WRAU9OO8j5wimZB3SAhKYlJEphLkJCaSEP7PEdxsfVG5UWFxP6qPPngTlvBED6IWLN8dTPmg8ocFPPRXWBdlFWqqCEmLlhAgLRtKdLaAkpQNfRUM6DUQGOUiTimNEaT7FvRVw/F6K91XG4/mHf9KPaovvJ36jzfSS1mpc6mUdhnvhZL4a0GjZsKBKK+n0+kt0AHvztCAsIzjeeAeUKVPF1l101cBWCICxcGmcPalUeHRnyguIsJYej79fFnpKxdjrKhu+spVK69Ke+OW6SXlh7Xk/8b7D5umJKY6nUiQAEmp5ZKoD5Ay8kTFzcAsJIrL+ZREYCWAaU4ubXRNP8wfpuSuGubHMwCJhSuGPCiYJIMw5GV6xkfY0Wd+WoPiBAlEhvnzNluw3SKZYTkQHIQ5J1RQDg7Lw/QQGUIdFp4wcC9KgQ/7KkxjucEHROVmc3ZaCFfEjMxUvlPvBZ0WhT1Q1zG06hQKyGPA9qEh4bPRJuO/0p//WvoPyXpa77BPr9L1mn64QiJRT0vlP3jg1oyn0/th1dnN6VOkQyh8wVRuPpLUH9GHi+sckD4vLaj43NSHLwfv8cKjbGxdgc97JUpFpIRbpovKYHTUltkpHYkyEqNYf1gWfZU+Vn+JiMZERS4qKyTAMv1hmwoItLT/aL6OL9cn8A4mknhDkR5CUuh43ExhAXjnIQVxRQ9UwnU1JM73meHISINzlY/1Ir3jwNQBtui5IpU3K2mFZbEUEhgJiHlZhkqI8rws7hPFxBHlZ5romu1CGRSv2HyQEQiLPkwefJcSk2o0mU+F8Z46KswbKd8qvRUWiq7BsuoYlF/q+Jd839p4/KNnFHhw+Fbc819r/y3dHO7qsk9D2lLPBvEq59SLXC6CYSCq1OTk5F48g+FxLyQSvvyzhFK8taaYL1ACiYdkkSOg/HVO4irmAySLlR8+yHy5wnaWysTF7YmnRxdyecMXFDcxx3KjNCUEGUtb2r4Iixwh5qebxEG58v2Hkh0ERqlLp5kClNLkngLSyF8XExrZi089SYbFm9DRg1FCbEKyoxQE8sqFkTOgTwrDVIPCP/k8qpRcGrxMEXmxnpwjUeXbhjpgA2bBNsp0HPQWOiwNOnddw5YcNIdSFyzTlUKehEbrLDxDNn7osjCXPw5FO22qgPfKHn/pf8XxxxetvSvYlX8BxBVKCdGDmPPDhz0W+Oijjxof//jHt+Hh2oko/qKqFx4l0BJQmQIwS3RNn/fxZXqGFbq4nQzimI9tKFs+S1S1KJ9XoQkEfUQwtKg98fSzefMMwmx5F28/IqK2RLjM2b54/gX0H0v6+IiDZSVgHJogfYWNzDMUpCtsUkKg4pKIUJAsnNTlkjNWzfBCPMOhi8JAiCSqPBmyMFVQ1OdctQwLywNZ5cPCpDl80D6IhjzBASQF0sUeREpSJCyE4ceSpJXbEO2612AHepaTSRn/YrtEAD3n8xV/ntv4+S96nyGRO9gccQZmEPiBK3bRi5kPHcG+v2T32n2+53bxNY8oQyWIB0SR9OmqxMeTh5lm/8azx8srEbCQNSqTpUTX+eagwCiPqiWeQAXO/olHV2tPaYUFjWCxsQJjt7MV564K6iOB2Xj1adNGa3PqDMFl4XwSSnAQCUIibqFPlwtTwbiOkoSR+JvLx3KYv9BXaSrlLyifSegQBNMFTAWhiIeFArRZnoX+8Y2EzKhbnuNlYO9wFpZXkwoH5Kmj/6qOFTz+0n8+Y4Y/2pVIcJqY35+YJ6wjEN33ZzL9kPY3hWjx6Sv+RcByLIQAZZYQJSn2C944FRF/QkvjQ31XZDcV04GVPOGl+WdJEhVGbaNPV3d7Va7ZP83U/1ACgzTjkg4gjUFvHhGWkrPAPnnBLNeFSEKKfAbzOu9yBAUdVj6cZURpZuU3XOUILioD93x2IEnxxFGc9c6M+M93cHSNZVzHquBQDeMn4x898wQ2us7pgGvAbyU8/z5e5EupVEqtJirCgp4KHxVI7sbrQIYKHyKF3+yvIvEEX8FsQNk9qXwgBpgQwNo7p9OKrukzfdzF08+WTmYrV35YF+tU8bEpYImInGtLVH+8PkzZ8iQcVpjrawXCLOHH5uo/9JmWjbXHJMQcNhVW8bOklbsumnJw7Q+cgtVK2mJxAUNNKKncp54KHuzAwnjCE01B1UIHA1A80ik/IkdIfTj6mE8MXh2sSKZhdHUd+IcDykwFLj4eMv7Fv+il75c8/xEmeHaojD+jZ4LgbsPVVvO5iutg4oSAFCCiAqVp/jrUKRU8mzVexsube05ff3tiD0Q1wkP/ojrYgeiaftiheHsjLKL4GrudTxYvb0H9h94bpzeAwCD4cAqJf5SmlBjFH5D8ChVC1Q8KyIkrjtgbE64y4lqtINJHel5Hq4q4ZdsYzsWBWaU+rkFWtFzQbiNNnWciNbT/qD4+Hitq/FdE/3mWzmvQU+W4hZZPenQuRHRNfylcvfVjpUqz0Tj6dNE1/fm4euufTx1z5am3/hr6z6lj9A9ElneKwPJ3IYEVEpqKys0YFeUhoDBP4TV/+bjVIkfqKuu8/ixC/+tqR73111V4DYnrrb+G8a+h1tkk9dY/m7MxV7XUzwdP3ApBgCYG6Co+L6/+kcB4X0g0ERFFzwXjojBc5q8ZhqOKtWEoROmLEwSWBIHowVySyqSS5kIABEYhisRFEov8SgRWGD6K9OMgq8IwBIkTBBYXASGsxcW3pUoHgfF5iIiLPv9x+03kuLxMqaqsUj1KJL4gsFgICGEtFrJtUG6OwDhtJHHhqLOl+dBAG0AnXRAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBIGVhMD/D0fV/fpMMM+gAAAAAElFTkSuQmCC'
  16191. }
  16192. };
  16193. exports.default = _default;
  16194. /***/ }),
  16195. /* 120 */
  16196. /*!********************************************************************************!*\
  16197. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/noticeBar.js ***!
  16198. \********************************************************************************/
  16199. /*! no static exports found */
  16200. /***/ (function(module, exports, __webpack_require__) {
  16201. "use strict";
  16202. Object.defineProperty(exports, "__esModule", {
  16203. value: true
  16204. });
  16205. exports.default = void 0;
  16206. /*
  16207. * @Author : LQ
  16208. * @Description :
  16209. * @version : 1.0
  16210. * @Date : 2021-08-20 16:44:21
  16211. * @LastAuthor : LQ
  16212. * @lastTime : 2021-08-20 17:17:13
  16213. * @FilePath : /u-view2.0/uview-ui/libs/config/props/noticeBar.js
  16214. */
  16215. var _default = {
  16216. // noticeBar
  16217. noticeBar: {
  16218. text: function text() {
  16219. return [];
  16220. },
  16221. direction: 'row',
  16222. step: false,
  16223. icon: 'volume',
  16224. mode: '',
  16225. color: '#f9ae3d',
  16226. bgColor: '#fdf6ec',
  16227. speed: 80,
  16228. fontSize: 14,
  16229. duration: 2000,
  16230. disableTouch: true,
  16231. url: '',
  16232. linkType: 'navigateTo'
  16233. }
  16234. };
  16235. exports.default = _default;
  16236. /***/ }),
  16237. /* 121 */
  16238. /*!*****************************************************************************!*\
  16239. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/notify.js ***!
  16240. \*****************************************************************************/
  16241. /*! no static exports found */
  16242. /***/ (function(module, exports, __webpack_require__) {
  16243. "use strict";
  16244. Object.defineProperty(exports, "__esModule", {
  16245. value: true
  16246. });
  16247. exports.default = void 0;
  16248. /*
  16249. * @Author : LQ
  16250. * @Description :
  16251. * @version : 1.0
  16252. * @Date : 2021-08-20 16:44:21
  16253. * @LastAuthor : LQ
  16254. * @lastTime : 2021-08-20 17:10:21
  16255. * @FilePath : /u-view2.0/uview-ui/libs/config/props/notify.js
  16256. */
  16257. var _default = {
  16258. // notify组件
  16259. notify: {
  16260. top: 0,
  16261. type: 'primary',
  16262. color: '#ffffff',
  16263. bgColor: '',
  16264. message: '',
  16265. duration: 3000,
  16266. fontSize: 15,
  16267. safeAreaInsetTop: false
  16268. }
  16269. };
  16270. exports.default = _default;
  16271. /***/ }),
  16272. /* 122 */
  16273. /*!********************************************************************************!*\
  16274. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/numberBox.js ***!
  16275. \********************************************************************************/
  16276. /*! no static exports found */
  16277. /***/ (function(module, exports, __webpack_require__) {
  16278. "use strict";
  16279. Object.defineProperty(exports, "__esModule", {
  16280. value: true
  16281. });
  16282. exports.default = void 0;
  16283. /*
  16284. * @Author : LQ
  16285. * @Description :
  16286. * @version : 1.0
  16287. * @Date : 2021-08-20 16:44:21
  16288. * @LastAuthor : LQ
  16289. * @lastTime : 2021-08-20 17:11:46
  16290. * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberBox.js
  16291. */
  16292. var _default = {
  16293. // 步进器组件
  16294. numberBox: {
  16295. name: '',
  16296. value: 0,
  16297. min: 1,
  16298. max: Number.MAX_SAFE_INTEGER,
  16299. step: 1,
  16300. integer: false,
  16301. disabled: false,
  16302. disabledInput: false,
  16303. asyncChange: false,
  16304. inputWidth: 35,
  16305. showMinus: true,
  16306. showPlus: true,
  16307. decimalLength: null,
  16308. longPress: true,
  16309. color: '#323233',
  16310. buttonSize: 30,
  16311. bgColor: '#EBECEE',
  16312. cursorSpacing: 100,
  16313. disableMinus: false,
  16314. disablePlus: false,
  16315. iconStyle: ''
  16316. }
  16317. };
  16318. exports.default = _default;
  16319. /***/ }),
  16320. /* 123 */
  16321. /*!*************************************************************************************!*\
  16322. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/numberKeyboard.js ***!
  16323. \*************************************************************************************/
  16324. /*! no static exports found */
  16325. /***/ (function(module, exports, __webpack_require__) {
  16326. "use strict";
  16327. Object.defineProperty(exports, "__esModule", {
  16328. value: true
  16329. });
  16330. exports.default = void 0;
  16331. /*
  16332. * @Author : LQ
  16333. * @Description :
  16334. * @version : 1.0
  16335. * @Date : 2021-08-20 16:44:21
  16336. * @LastAuthor : LQ
  16337. * @lastTime : 2021-08-20 17:08:05
  16338. * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberKeyboard.js
  16339. */
  16340. var _default = {
  16341. // 数字键盘
  16342. numberKeyboard: {
  16343. mode: 'number',
  16344. dotDisabled: false,
  16345. random: false
  16346. }
  16347. };
  16348. exports.default = _default;
  16349. /***/ }),
  16350. /* 124 */
  16351. /*!******************************************************************************!*\
  16352. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/overlay.js ***!
  16353. \******************************************************************************/
  16354. /*! no static exports found */
  16355. /***/ (function(module, exports, __webpack_require__) {
  16356. "use strict";
  16357. Object.defineProperty(exports, "__esModule", {
  16358. value: true
  16359. });
  16360. exports.default = void 0;
  16361. /*
  16362. * @Author : LQ
  16363. * @Description :
  16364. * @version : 1.0
  16365. * @Date : 2021-08-20 16:44:21
  16366. * @LastAuthor : LQ
  16367. * @lastTime : 2021-08-20 17:06:50
  16368. * @FilePath : /u-view2.0/uview-ui/libs/config/props/overlay.js
  16369. */
  16370. var _default = {
  16371. // overlay组件
  16372. overlay: {
  16373. show: false,
  16374. zIndex: 10070,
  16375. duration: 300,
  16376. opacity: 0.5
  16377. }
  16378. };
  16379. exports.default = _default;
  16380. /***/ }),
  16381. /* 125 */
  16382. /*!****************************************************************************!*\
  16383. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/parse.js ***!
  16384. \****************************************************************************/
  16385. /*! no static exports found */
  16386. /***/ (function(module, exports, __webpack_require__) {
  16387. "use strict";
  16388. Object.defineProperty(exports, "__esModule", {
  16389. value: true
  16390. });
  16391. exports.default = void 0;
  16392. /*
  16393. * @Author : LQ
  16394. * @Description :
  16395. * @version : 1.0
  16396. * @Date : 2021-08-20 16:44:21
  16397. * @LastAuthor : LQ
  16398. * @lastTime : 2021-08-20 17:17:33
  16399. * @FilePath : /u-view2.0/uview-ui/libs/config/props/parse.js
  16400. */
  16401. var _default = {
  16402. // parse
  16403. parse: {
  16404. copyLink: true,
  16405. errorImg: '',
  16406. lazyLoad: false,
  16407. loadingImg: '',
  16408. pauseVideo: true,
  16409. previewImg: true,
  16410. setTitle: true,
  16411. showImgMenu: true
  16412. }
  16413. };
  16414. exports.default = _default;
  16415. /***/ }),
  16416. /* 126 */
  16417. /*!*****************************************************************************!*\
  16418. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/picker.js ***!
  16419. \*****************************************************************************/
  16420. /*! no static exports found */
  16421. /***/ (function(module, exports, __webpack_require__) {
  16422. "use strict";
  16423. Object.defineProperty(exports, "__esModule", {
  16424. value: true
  16425. });
  16426. exports.default = void 0;
  16427. /*
  16428. * @Author : LQ
  16429. * @Description :
  16430. * @version : 1.0
  16431. * @Date : 2021-08-20 16:44:21
  16432. * @LastAuthor : LQ
  16433. * @lastTime : 2021-08-20 17:18:20
  16434. * @FilePath : /u-view2.0/uview-ui/libs/config/props/picker.js
  16435. */
  16436. var _default = {
  16437. // picker
  16438. picker: {
  16439. show: false,
  16440. showToolbar: true,
  16441. title: '',
  16442. columns: function columns() {
  16443. return [];
  16444. },
  16445. loading: false,
  16446. itemHeight: 44,
  16447. cancelText: '取消',
  16448. confirmText: '确定',
  16449. cancelColor: '#909193',
  16450. confirmColor: '#3c9cff',
  16451. visibleItemCount: 5,
  16452. keyName: 'text',
  16453. closeOnClickOverlay: false,
  16454. defaultIndex: function defaultIndex() {
  16455. return [];
  16456. },
  16457. immediateChange: false
  16458. }
  16459. };
  16460. exports.default = _default;
  16461. /***/ }),
  16462. /* 127 */
  16463. /*!****************************************************************************!*\
  16464. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/popup.js ***!
  16465. \****************************************************************************/
  16466. /*! no static exports found */
  16467. /***/ (function(module, exports, __webpack_require__) {
  16468. "use strict";
  16469. Object.defineProperty(exports, "__esModule", {
  16470. value: true
  16471. });
  16472. exports.default = void 0;
  16473. /*
  16474. * @Author : LQ
  16475. * @Description :
  16476. * @version : 1.0
  16477. * @Date : 2021-08-20 16:44:21
  16478. * @LastAuthor : LQ
  16479. * @lastTime : 2021-08-20 17:06:33
  16480. * @FilePath : /u-view2.0/uview-ui/libs/config/props/popup.js
  16481. */
  16482. var _default = {
  16483. // popup组件
  16484. popup: {
  16485. show: false,
  16486. overlay: true,
  16487. mode: 'bottom',
  16488. duration: 300,
  16489. closeable: false,
  16490. overlayStyle: function overlayStyle() {},
  16491. closeOnClickOverlay: true,
  16492. zIndex: 10075,
  16493. safeAreaInsetBottom: true,
  16494. safeAreaInsetTop: false,
  16495. closeIconPos: 'top-right',
  16496. round: 0,
  16497. zoom: true,
  16498. bgColor: '',
  16499. overlayOpacity: 0.5
  16500. }
  16501. };
  16502. exports.default = _default;
  16503. /***/ }),
  16504. /* 128 */
  16505. /*!****************************************************************************!*\
  16506. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/radio.js ***!
  16507. \****************************************************************************/
  16508. /*! no static exports found */
  16509. /***/ (function(module, exports, __webpack_require__) {
  16510. "use strict";
  16511. Object.defineProperty(exports, "__esModule", {
  16512. value: true
  16513. });
  16514. exports.default = void 0;
  16515. /*
  16516. * @Author : LQ
  16517. * @Description :
  16518. * @version : 1.0
  16519. * @Date : 2021-08-20 16:44:21
  16520. * @LastAuthor : LQ
  16521. * @lastTime : 2021-08-20 17:02:34
  16522. * @FilePath : /u-view2.0/uview-ui/libs/config/props/radio.js
  16523. */
  16524. var _default = {
  16525. // radio组件
  16526. radio: {
  16527. name: '',
  16528. shape: '',
  16529. disabled: '',
  16530. labelDisabled: '',
  16531. activeColor: '',
  16532. inactiveColor: '',
  16533. iconSize: '',
  16534. labelSize: '',
  16535. label: '',
  16536. labelColor: '',
  16537. size: '',
  16538. iconColor: '',
  16539. placement: ''
  16540. }
  16541. };
  16542. exports.default = _default;
  16543. /***/ }),
  16544. /* 129 */
  16545. /*!*********************************************************************************!*\
  16546. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/radioGroup.js ***!
  16547. \*********************************************************************************/
  16548. /*! no static exports found */
  16549. /***/ (function(module, exports, __webpack_require__) {
  16550. "use strict";
  16551. Object.defineProperty(exports, "__esModule", {
  16552. value: true
  16553. });
  16554. exports.default = void 0;
  16555. /*
  16556. * @Author : LQ
  16557. * @Description :
  16558. * @version : 1.0
  16559. * @Date : 2021-08-20 16:44:21
  16560. * @LastAuthor : LQ
  16561. * @lastTime : 2021-08-20 17:03:12
  16562. * @FilePath : /u-view2.0/uview-ui/libs/config/props/radioGroup.js
  16563. */
  16564. var _default = {
  16565. // radio-group组件
  16566. radioGroup: {
  16567. value: '',
  16568. disabled: false,
  16569. shape: 'circle',
  16570. activeColor: '#2979ff',
  16571. inactiveColor: '#c8c9cc',
  16572. name: '',
  16573. size: 18,
  16574. placement: 'row',
  16575. label: '',
  16576. labelColor: '#303133',
  16577. labelSize: 14,
  16578. labelDisabled: false,
  16579. iconColor: '#ffffff',
  16580. iconSize: 12,
  16581. borderBottom: false,
  16582. iconPlacement: 'left'
  16583. }
  16584. };
  16585. exports.default = _default;
  16586. /***/ }),
  16587. /* 130 */
  16588. /*!***************************************************************************!*\
  16589. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/rate.js ***!
  16590. \***************************************************************************/
  16591. /*! no static exports found */
  16592. /***/ (function(module, exports, __webpack_require__) {
  16593. "use strict";
  16594. Object.defineProperty(exports, "__esModule", {
  16595. value: true
  16596. });
  16597. exports.default = void 0;
  16598. /*
  16599. * @Author : LQ
  16600. * @Description :
  16601. * @version : 1.0
  16602. * @Date : 2021-08-20 16:44:21
  16603. * @LastAuthor : LQ
  16604. * @lastTime : 2021-08-20 17:05:09
  16605. * @FilePath : /u-view2.0/uview-ui/libs/config/props/rate.js
  16606. */
  16607. var _default = {
  16608. // rate组件
  16609. rate: {
  16610. value: 1,
  16611. count: 5,
  16612. disabled: false,
  16613. size: 18,
  16614. inactiveColor: '#b2b2b2',
  16615. activeColor: '#FA3534',
  16616. gutter: 4,
  16617. minCount: 1,
  16618. allowHalf: false,
  16619. activeIcon: 'star-fill',
  16620. inactiveIcon: 'star',
  16621. touchable: true
  16622. }
  16623. };
  16624. exports.default = _default;
  16625. /***/ }),
  16626. /* 131 */
  16627. /*!*******************************************************************************!*\
  16628. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/readMore.js ***!
  16629. \*******************************************************************************/
  16630. /*! no static exports found */
  16631. /***/ (function(module, exports, __webpack_require__) {
  16632. "use strict";
  16633. Object.defineProperty(exports, "__esModule", {
  16634. value: true
  16635. });
  16636. exports.default = void 0;
  16637. /*
  16638. * @Author : LQ
  16639. * @Description :
  16640. * @version : 1.0
  16641. * @Date : 2021-08-20 16:44:21
  16642. * @LastAuthor : LQ
  16643. * @lastTime : 2021-08-20 17:18:41
  16644. * @FilePath : /u-view2.0/uview-ui/libs/config/props/readMore.js
  16645. */
  16646. var _default = {
  16647. // readMore
  16648. readMore: {
  16649. showHeight: 400,
  16650. toggle: false,
  16651. closeText: '展开阅读全文',
  16652. openText: '收起',
  16653. color: '#2979ff',
  16654. fontSize: 14,
  16655. textIndent: '2em',
  16656. name: ''
  16657. }
  16658. };
  16659. exports.default = _default;
  16660. /***/ }),
  16661. /* 132 */
  16662. /*!**************************************************************************!*\
  16663. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/row.js ***!
  16664. \**************************************************************************/
  16665. /*! no static exports found */
  16666. /***/ (function(module, exports, __webpack_require__) {
  16667. "use strict";
  16668. Object.defineProperty(exports, "__esModule", {
  16669. value: true
  16670. });
  16671. exports.default = void 0;
  16672. /*
  16673. * @Author : LQ
  16674. * @Description :
  16675. * @version : 1.0
  16676. * @Date : 2021-08-20 16:44:21
  16677. * @LastAuthor : LQ
  16678. * @lastTime : 2021-08-20 17:18:58
  16679. * @FilePath : /u-view2.0/uview-ui/libs/config/props/row.js
  16680. */
  16681. var _default = {
  16682. // row
  16683. row: {
  16684. gutter: 0,
  16685. justify: 'start',
  16686. align: 'center'
  16687. }
  16688. };
  16689. exports.default = _default;
  16690. /***/ }),
  16691. /* 133 */
  16692. /*!********************************************************************************!*\
  16693. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/rowNotice.js ***!
  16694. \********************************************************************************/
  16695. /*! no static exports found */
  16696. /***/ (function(module, exports, __webpack_require__) {
  16697. "use strict";
  16698. Object.defineProperty(exports, "__esModule", {
  16699. value: true
  16700. });
  16701. exports.default = void 0;
  16702. /*
  16703. * @Author : LQ
  16704. * @Description :
  16705. * @version : 1.0
  16706. * @Date : 2021-08-20 16:44:21
  16707. * @LastAuthor : LQ
  16708. * @lastTime : 2021-08-20 17:19:13
  16709. * @FilePath : /u-view2.0/uview-ui/libs/config/props/rowNotice.js
  16710. */
  16711. var _default = {
  16712. // rowNotice
  16713. rowNotice: {
  16714. text: '',
  16715. icon: 'volume',
  16716. mode: '',
  16717. color: '#f9ae3d',
  16718. bgColor: '#fdf6ec',
  16719. fontSize: 14,
  16720. speed: 80
  16721. }
  16722. };
  16723. exports.default = _default;
  16724. /***/ }),
  16725. /* 134 */
  16726. /*!*********************************************************************************!*\
  16727. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/scrollList.js ***!
  16728. \*********************************************************************************/
  16729. /*! no static exports found */
  16730. /***/ (function(module, exports, __webpack_require__) {
  16731. "use strict";
  16732. Object.defineProperty(exports, "__esModule", {
  16733. value: true
  16734. });
  16735. exports.default = void 0;
  16736. /*
  16737. * @Author : LQ
  16738. * @Description :
  16739. * @version : 1.0
  16740. * @Date : 2021-08-20 16:44:21
  16741. * @LastAuthor : LQ
  16742. * @lastTime : 2021-08-20 17:19:28
  16743. * @FilePath : /u-view2.0/uview-ui/libs/config/props/scrollList.js
  16744. */
  16745. var _default = {
  16746. // scrollList
  16747. scrollList: {
  16748. indicatorWidth: 50,
  16749. indicatorBarWidth: 20,
  16750. indicator: true,
  16751. indicatorColor: '#f2f2f2',
  16752. indicatorActiveColor: '#3c9cff',
  16753. indicatorStyle: ''
  16754. }
  16755. };
  16756. exports.default = _default;
  16757. /***/ }),
  16758. /* 135 */
  16759. /*!*****************************************************************************!*\
  16760. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/search.js ***!
  16761. \*****************************************************************************/
  16762. /*! no static exports found */
  16763. /***/ (function(module, exports, __webpack_require__) {
  16764. "use strict";
  16765. Object.defineProperty(exports, "__esModule", {
  16766. value: true
  16767. });
  16768. exports.default = void 0;
  16769. /*
  16770. * @Author : LQ
  16771. * @Description :
  16772. * @version : 1.0
  16773. * @Date : 2021-08-20 16:44:21
  16774. * @LastAuthor : LQ
  16775. * @lastTime : 2021-08-20 17:19:45
  16776. * @FilePath : /u-view2.0/uview-ui/libs/config/props/search.js
  16777. */
  16778. var _default = {
  16779. // search
  16780. search: {
  16781. shape: 'round',
  16782. bgColor: '#f2f2f2',
  16783. placeholder: '请输入关键字',
  16784. clearabled: true,
  16785. focus: false,
  16786. showAction: true,
  16787. actionStyle: function actionStyle() {
  16788. return {};
  16789. },
  16790. actionText: '搜索',
  16791. inputAlign: 'left',
  16792. inputStyle: function inputStyle() {
  16793. return {};
  16794. },
  16795. disabled: false,
  16796. borderColor: 'transparent',
  16797. searchIconColor: '#909399',
  16798. searchIconSize: 22,
  16799. color: '#606266',
  16800. placeholderColor: '#909399',
  16801. searchIcon: 'search',
  16802. margin: '0',
  16803. animation: false,
  16804. value: '',
  16805. maxlength: '-1',
  16806. height: 32,
  16807. label: null
  16808. }
  16809. };
  16810. exports.default = _default;
  16811. /***/ }),
  16812. /* 136 */
  16813. /*!******************************************************************************!*\
  16814. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/section.js ***!
  16815. \******************************************************************************/
  16816. /*! no static exports found */
  16817. /***/ (function(module, exports, __webpack_require__) {
  16818. "use strict";
  16819. Object.defineProperty(exports, "__esModule", {
  16820. value: true
  16821. });
  16822. exports.default = void 0;
  16823. /*
  16824. * @Author : LQ
  16825. * @Description :
  16826. * @version : 1.0
  16827. * @Date : 2021-08-20 16:44:21
  16828. * @LastAuthor : LQ
  16829. * @lastTime : 2021-08-20 17:07:33
  16830. * @FilePath : /u-view2.0/uview-ui/libs/config/props/section.js
  16831. */
  16832. var _default = {
  16833. // u-section组件
  16834. section: {
  16835. title: '',
  16836. subTitle: '更多',
  16837. right: true,
  16838. fontSize: 15,
  16839. bold: true,
  16840. color: '#303133',
  16841. subColor: '#909399',
  16842. showLine: true,
  16843. lineColor: '',
  16844. arrow: true
  16845. }
  16846. };
  16847. exports.default = _default;
  16848. /***/ }),
  16849. /* 137 */
  16850. /*!*******************************************************************************!*\
  16851. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/skeleton.js ***!
  16852. \*******************************************************************************/
  16853. /*! no static exports found */
  16854. /***/ (function(module, exports, __webpack_require__) {
  16855. "use strict";
  16856. Object.defineProperty(exports, "__esModule", {
  16857. value: true
  16858. });
  16859. exports.default = void 0;
  16860. /*
  16861. * @Author : LQ
  16862. * @Description :
  16863. * @version : 1.0
  16864. * @Date : 2021-08-20 16:44:21
  16865. * @LastAuthor : LQ
  16866. * @lastTime : 2021-08-20 17:20:14
  16867. * @FilePath : /u-view2.0/uview-ui/libs/config/props/skeleton.js
  16868. */
  16869. var _default = {
  16870. // skeleton
  16871. skeleton: {
  16872. loading: true,
  16873. animate: true,
  16874. rows: 0,
  16875. rowsWidth: '100%',
  16876. rowsHeight: 18,
  16877. title: true,
  16878. titleWidth: '50%',
  16879. titleHeight: 18,
  16880. avatar: false,
  16881. avatarSize: 32,
  16882. avatarShape: 'circle'
  16883. }
  16884. };
  16885. exports.default = _default;
  16886. /***/ }),
  16887. /* 138 */
  16888. /*!*****************************************************************************!*\
  16889. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/slider.js ***!
  16890. \*****************************************************************************/
  16891. /*! no static exports found */
  16892. /***/ (function(module, exports, __webpack_require__) {
  16893. "use strict";
  16894. Object.defineProperty(exports, "__esModule", {
  16895. value: true
  16896. });
  16897. exports.default = void 0;
  16898. /*
  16899. * @Author : LQ
  16900. * @Description :
  16901. * @version : 1.0
  16902. * @Date : 2021-08-20 16:44:21
  16903. * @LastAuthor : LQ
  16904. * @lastTime : 2021-08-20 17:08:25
  16905. * @FilePath : /u-view2.0/uview-ui/libs/config/props/slider.js
  16906. */
  16907. var _default = {
  16908. // slider组件
  16909. slider: {
  16910. value: 0,
  16911. blockSize: 18,
  16912. min: 0,
  16913. max: 100,
  16914. step: 1,
  16915. activeColor: '#2979ff',
  16916. inactiveColor: '#c0c4cc',
  16917. blockColor: '#ffffff',
  16918. showValue: false,
  16919. disabled: false,
  16920. blockStyle: function blockStyle() {}
  16921. }
  16922. };
  16923. exports.default = _default;
  16924. /***/ }),
  16925. /* 139 */
  16926. /*!********************************************************************************!*\
  16927. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/statusBar.js ***!
  16928. \********************************************************************************/
  16929. /*! no static exports found */
  16930. /***/ (function(module, exports, __webpack_require__) {
  16931. "use strict";
  16932. Object.defineProperty(exports, "__esModule", {
  16933. value: true
  16934. });
  16935. exports.default = void 0;
  16936. /*
  16937. * @Author : LQ
  16938. * @Description :
  16939. * @version : 1.0
  16940. * @Date : 2021-08-20 16:44:21
  16941. * @LastAuthor : LQ
  16942. * @lastTime : 2021-08-20 17:20:39
  16943. * @FilePath : /u-view2.0/uview-ui/libs/config/props/statusBar.js
  16944. */
  16945. var _default = {
  16946. // statusBar
  16947. statusBar: {
  16948. bgColor: 'transparent'
  16949. }
  16950. };
  16951. exports.default = _default;
  16952. /***/ }),
  16953. /* 140 */
  16954. /*!****************************************************************************!*\
  16955. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/steps.js ***!
  16956. \****************************************************************************/
  16957. /*! no static exports found */
  16958. /***/ (function(module, exports, __webpack_require__) {
  16959. "use strict";
  16960. Object.defineProperty(exports, "__esModule", {
  16961. value: true
  16962. });
  16963. exports.default = void 0;
  16964. /*
  16965. * @Author : LQ
  16966. * @Description :
  16967. * @version : 1.0
  16968. * @Date : 2021-08-20 16:44:21
  16969. * @LastAuthor : LQ
  16970. * @lastTime : 2021-08-20 17:12:37
  16971. * @FilePath : /u-view2.0/uview-ui/libs/config/props/steps.js
  16972. */
  16973. var _default = {
  16974. // steps组件
  16975. steps: {
  16976. direction: 'row',
  16977. current: 0,
  16978. activeColor: '#3c9cff',
  16979. inactiveColor: '#969799',
  16980. activeIcon: '',
  16981. inactiveIcon: '',
  16982. dot: false
  16983. }
  16984. };
  16985. exports.default = _default;
  16986. /***/ }),
  16987. /* 141 */
  16988. /*!********************************************************************************!*\
  16989. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/stepsItem.js ***!
  16990. \********************************************************************************/
  16991. /*! no static exports found */
  16992. /***/ (function(module, exports, __webpack_require__) {
  16993. "use strict";
  16994. Object.defineProperty(exports, "__esModule", {
  16995. value: true
  16996. });
  16997. exports.default = void 0;
  16998. /*
  16999. * @Author : LQ
  17000. * @Description :
  17001. * @version : 1.0
  17002. * @Date : 2021-08-20 16:44:21
  17003. * @LastAuthor : LQ
  17004. * @lastTime : 2021-08-20 17:12:55
  17005. * @FilePath : /u-view2.0/uview-ui/libs/config/props/stepsItem.js
  17006. */
  17007. var _default = {
  17008. // steps-item组件
  17009. stepsItem: {
  17010. title: '',
  17011. desc: '',
  17012. iconSize: 17,
  17013. error: false
  17014. }
  17015. };
  17016. exports.default = _default;
  17017. /***/ }),
  17018. /* 142 */
  17019. /*!*****************************************************************************!*\
  17020. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/sticky.js ***!
  17021. \*****************************************************************************/
  17022. /*! no static exports found */
  17023. /***/ (function(module, exports, __webpack_require__) {
  17024. "use strict";
  17025. Object.defineProperty(exports, "__esModule", {
  17026. value: true
  17027. });
  17028. exports.default = void 0;
  17029. /*
  17030. * @Author : LQ
  17031. * @Description :
  17032. * @version : 1.0
  17033. * @Date : 2021-08-20 16:44:21
  17034. * @LastAuthor : LQ
  17035. * @lastTime : 2021-08-20 17:01:30
  17036. * @FilePath : /u-view2.0/uview-ui/libs/config/props/sticky.js
  17037. */
  17038. var _default = {
  17039. // sticky组件
  17040. sticky: {
  17041. offsetTop: 0,
  17042. customNavHeight: 0,
  17043. disabled: false,
  17044. bgColor: 'transparent',
  17045. zIndex: '',
  17046. index: ''
  17047. }
  17048. };
  17049. exports.default = _default;
  17050. /***/ }),
  17051. /* 143 */
  17052. /*!*********************************************************************************!*\
  17053. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/subsection.js ***!
  17054. \*********************************************************************************/
  17055. /*! no static exports found */
  17056. /***/ (function(module, exports, __webpack_require__) {
  17057. "use strict";
  17058. Object.defineProperty(exports, "__esModule", {
  17059. value: true
  17060. });
  17061. exports.default = void 0;
  17062. /*
  17063. * @Author : LQ
  17064. * @Description :
  17065. * @version : 1.0
  17066. * @Date : 2021-08-20 16:44:21
  17067. * @LastAuthor : LQ
  17068. * @lastTime : 2021-08-20 17:12:20
  17069. * @FilePath : /u-view2.0/uview-ui/libs/config/props/subsection.js
  17070. */
  17071. var _default = {
  17072. // subsection组件
  17073. subsection: {
  17074. list: [],
  17075. current: 0,
  17076. activeColor: '#3c9cff',
  17077. inactiveColor: '#303133',
  17078. mode: 'button',
  17079. fontSize: 12,
  17080. bold: true,
  17081. bgColor: '#eeeeef',
  17082. keyName: 'name'
  17083. }
  17084. };
  17085. exports.default = _default;
  17086. /***/ }),
  17087. /* 144 */
  17088. /*!**********************************************************************************!*\
  17089. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/swipeAction.js ***!
  17090. \**********************************************************************************/
  17091. /*! no static exports found */
  17092. /***/ (function(module, exports, __webpack_require__) {
  17093. "use strict";
  17094. Object.defineProperty(exports, "__esModule", {
  17095. value: true
  17096. });
  17097. exports.default = void 0;
  17098. /*
  17099. * @Author : LQ
  17100. * @Description :
  17101. * @version : 1.0
  17102. * @Date : 2021-08-20 16:44:21
  17103. * @LastAuthor : LQ
  17104. * @lastTime : 2021-08-20 17:00:42
  17105. * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeAction.js
  17106. */
  17107. var _default = {
  17108. // swipe-action组件
  17109. swipeAction: {
  17110. autoClose: true
  17111. }
  17112. };
  17113. exports.default = _default;
  17114. /***/ }),
  17115. /* 145 */
  17116. /*!**************************************************************************************!*\
  17117. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/swipeActionItem.js ***!
  17118. \**************************************************************************************/
  17119. /*! no static exports found */
  17120. /***/ (function(module, exports, __webpack_require__) {
  17121. "use strict";
  17122. Object.defineProperty(exports, "__esModule", {
  17123. value: true
  17124. });
  17125. exports.default = void 0;
  17126. /*
  17127. * @Author : LQ
  17128. * @Description :
  17129. * @version : 1.0
  17130. * @Date : 2021-08-20 16:44:21
  17131. * @LastAuthor : LQ
  17132. * @lastTime : 2021-08-20 17:01:13
  17133. * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeActionItem.js
  17134. */
  17135. var _default = {
  17136. // swipeActionItem 组件
  17137. swipeActionItem: {
  17138. show: false,
  17139. name: '',
  17140. disabled: false,
  17141. threshold: 20,
  17142. autoClose: true,
  17143. options: [],
  17144. duration: 300
  17145. }
  17146. };
  17147. exports.default = _default;
  17148. /***/ }),
  17149. /* 146 */
  17150. /*!*****************************************************************************!*\
  17151. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/swiper.js ***!
  17152. \*****************************************************************************/
  17153. /*! no static exports found */
  17154. /***/ (function(module, exports, __webpack_require__) {
  17155. "use strict";
  17156. Object.defineProperty(exports, "__esModule", {
  17157. value: true
  17158. });
  17159. exports.default = void 0;
  17160. /*
  17161. * @Author : LQ
  17162. * @Description :
  17163. * @version : 1.0
  17164. * @Date : 2021-08-20 16:44:21
  17165. * @LastAuthor : LQ
  17166. * @lastTime : 2021-08-20 17:21:38
  17167. * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiper.js
  17168. */
  17169. var _default = {
  17170. // swiper 组件
  17171. swiper: {
  17172. list: function list() {
  17173. return [];
  17174. },
  17175. indicator: false,
  17176. indicatorActiveColor: '#FFFFFF',
  17177. indicatorInactiveColor: 'rgba(255, 255, 255, 0.35)',
  17178. indicatorStyle: '',
  17179. indicatorMode: 'line',
  17180. autoplay: true,
  17181. current: 0,
  17182. currentItemId: '',
  17183. interval: 3000,
  17184. duration: 300,
  17185. circular: false,
  17186. previousMargin: 0,
  17187. nextMargin: 0,
  17188. acceleration: false,
  17189. displayMultipleItems: 1,
  17190. easingFunction: 'default',
  17191. keyName: 'url',
  17192. imgMode: 'aspectFill',
  17193. height: 130,
  17194. bgColor: '#f3f4f6',
  17195. radius: 4,
  17196. loading: false,
  17197. showTitle: false
  17198. }
  17199. };
  17200. exports.default = _default;
  17201. /***/ }),
  17202. /* 147 */
  17203. /*!***************************************************************************************!*\
  17204. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/swipterIndicator.js ***!
  17205. \***************************************************************************************/
  17206. /*! no static exports found */
  17207. /***/ (function(module, exports, __webpack_require__) {
  17208. "use strict";
  17209. Object.defineProperty(exports, "__esModule", {
  17210. value: true
  17211. });
  17212. exports.default = void 0;
  17213. /*
  17214. * @Author : LQ
  17215. * @Description :
  17216. * @version : 1.0
  17217. * @Date : 2021-08-20 16:44:21
  17218. * @LastAuthor : LQ
  17219. * @lastTime : 2021-08-20 17:22:07
  17220. * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiperIndicator.js
  17221. */
  17222. var _default = {
  17223. // swiperIndicator 组件
  17224. swiperIndicator: {
  17225. length: 0,
  17226. current: 0,
  17227. indicatorActiveColor: '',
  17228. indicatorInactiveColor: '',
  17229. indicatorMode: 'line'
  17230. }
  17231. };
  17232. exports.default = _default;
  17233. /***/ }),
  17234. /* 148 */
  17235. /*!*****************************************************************************!*\
  17236. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/switch.js ***!
  17237. \*****************************************************************************/
  17238. /*! no static exports found */
  17239. /***/ (function(module, exports, __webpack_require__) {
  17240. "use strict";
  17241. Object.defineProperty(exports, "__esModule", {
  17242. value: true
  17243. });
  17244. exports.default = void 0;
  17245. /*
  17246. * @Author : LQ
  17247. * @Description :
  17248. * @version : 1.0
  17249. * @Date : 2021-08-20 16:44:21
  17250. * @LastAuthor : LQ
  17251. * @lastTime : 2021-08-20 17:22:24
  17252. * @FilePath : /u-view2.0/uview-ui/libs/config/props/switch.js
  17253. */
  17254. var _default = {
  17255. // switch
  17256. switch: {
  17257. loading: false,
  17258. disabled: false,
  17259. size: 25,
  17260. activeColor: '#2979ff',
  17261. inactiveColor: '#ffffff',
  17262. value: false,
  17263. activeValue: true,
  17264. inactiveValue: false,
  17265. asyncChange: false,
  17266. space: 0
  17267. }
  17268. };
  17269. exports.default = _default;
  17270. /***/ }),
  17271. /* 149 */
  17272. /*!*****************************************************************************!*\
  17273. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/tabbar.js ***!
  17274. \*****************************************************************************/
  17275. /*! no static exports found */
  17276. /***/ (function(module, exports, __webpack_require__) {
  17277. "use strict";
  17278. Object.defineProperty(exports, "__esModule", {
  17279. value: true
  17280. });
  17281. exports.default = void 0;
  17282. /*
  17283. * @Author : LQ
  17284. * @Description :
  17285. * @version : 1.0
  17286. * @Date : 2021-08-20 16:44:21
  17287. * @LastAuthor : LQ
  17288. * @lastTime : 2021-08-20 17:22:40
  17289. * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbar.js
  17290. */
  17291. var _default = {
  17292. // tabbar
  17293. tabbar: {
  17294. value: null,
  17295. safeAreaInsetBottom: true,
  17296. border: true,
  17297. zIndex: 1,
  17298. activeColor: '#1989fa',
  17299. inactiveColor: '#7d7e80',
  17300. fixed: true,
  17301. placeholder: true
  17302. }
  17303. };
  17304. exports.default = _default;
  17305. /***/ }),
  17306. /* 150 */
  17307. /*!*********************************************************************************!*\
  17308. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/tabbarItem.js ***!
  17309. \*********************************************************************************/
  17310. /*! no static exports found */
  17311. /***/ (function(module, exports, __webpack_require__) {
  17312. "use strict";
  17313. Object.defineProperty(exports, "__esModule", {
  17314. value: true
  17315. });
  17316. exports.default = void 0;
  17317. /*
  17318. * @Author : LQ
  17319. * @Description :
  17320. * @version : 1.0
  17321. * @Date : 2021-08-20 16:44:21
  17322. * @LastAuthor : LQ
  17323. * @lastTime : 2021-08-20 17:22:55
  17324. * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbarItem.js
  17325. */
  17326. var _default = {
  17327. //
  17328. tabbarItem: {
  17329. name: null,
  17330. icon: '',
  17331. badge: null,
  17332. dot: false,
  17333. text: '',
  17334. badgeStyle: 'top: 6px;right:2px;'
  17335. }
  17336. };
  17337. exports.default = _default;
  17338. /***/ }),
  17339. /* 151 */
  17340. /*!***************************************************************************!*\
  17341. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/tabs.js ***!
  17342. \***************************************************************************/
  17343. /*! no static exports found */
  17344. /***/ (function(module, exports, __webpack_require__) {
  17345. "use strict";
  17346. Object.defineProperty(exports, "__esModule", {
  17347. value: true
  17348. });
  17349. exports.default = void 0;
  17350. /*
  17351. * @Author : LQ
  17352. * @Description :
  17353. * @version : 1.0
  17354. * @Date : 2021-08-20 16:44:21
  17355. * @LastAuthor : LQ
  17356. * @lastTime : 2021-08-20 17:23:14
  17357. * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabs.js
  17358. */
  17359. var _default = {
  17360. //
  17361. tabs: {
  17362. duration: 300,
  17363. list: function list() {
  17364. return [];
  17365. },
  17366. lineColor: '#3c9cff',
  17367. activeStyle: function activeStyle() {
  17368. return {
  17369. color: '#303133'
  17370. };
  17371. },
  17372. inactiveStyle: function inactiveStyle() {
  17373. return {
  17374. color: '#606266'
  17375. };
  17376. },
  17377. lineWidth: 20,
  17378. lineHeight: 3,
  17379. lineBgSize: 'cover',
  17380. itemStyle: function itemStyle() {
  17381. return {
  17382. height: '44px'
  17383. };
  17384. },
  17385. scrollable: true,
  17386. current: 0,
  17387. keyName: 'name'
  17388. }
  17389. };
  17390. exports.default = _default;
  17391. /***/ }),
  17392. /* 152 */
  17393. /*!**************************************************************************!*\
  17394. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/tag.js ***!
  17395. \**************************************************************************/
  17396. /*! no static exports found */
  17397. /***/ (function(module, exports, __webpack_require__) {
  17398. "use strict";
  17399. Object.defineProperty(exports, "__esModule", {
  17400. value: true
  17401. });
  17402. exports.default = void 0;
  17403. /*
  17404. * @Author : LQ
  17405. * @Description :
  17406. * @version : 1.0
  17407. * @Date : 2021-08-20 16:44:21
  17408. * @LastAuthor : LQ
  17409. * @lastTime : 2021-08-20 17:23:37
  17410. * @FilePath : /u-view2.0/uview-ui/libs/config/props/tag.js
  17411. */
  17412. var _default = {
  17413. // tag 组件
  17414. tag: {
  17415. type: 'primary',
  17416. disabled: false,
  17417. size: 'medium',
  17418. shape: 'square',
  17419. text: '',
  17420. bgColor: '',
  17421. color: '',
  17422. borderColor: '',
  17423. closeColor: '#C6C7CB',
  17424. name: '',
  17425. plainFill: false,
  17426. plain: false,
  17427. closable: false,
  17428. show: true,
  17429. icon: ''
  17430. }
  17431. };
  17432. exports.default = _default;
  17433. /***/ }),
  17434. /* 153 */
  17435. /*!***************************************************************************!*\
  17436. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/text.js ***!
  17437. \***************************************************************************/
  17438. /*! no static exports found */
  17439. /***/ (function(module, exports, __webpack_require__) {
  17440. "use strict";
  17441. Object.defineProperty(exports, "__esModule", {
  17442. value: true
  17443. });
  17444. exports.default = void 0;
  17445. /*
  17446. * @Author : LQ
  17447. * @Description :
  17448. * @version : 1.0
  17449. * @Date : 2021-08-20 16:44:21
  17450. * @LastAuthor : LQ
  17451. * @lastTime : 2021-08-20 17:23:58
  17452. * @FilePath : /u-view2.0/uview-ui/libs/config/props/text.js
  17453. */
  17454. var _default = {
  17455. // text 组件
  17456. text: {
  17457. type: '',
  17458. show: true,
  17459. text: '',
  17460. prefixIcon: '',
  17461. suffixIcon: '',
  17462. mode: '',
  17463. href: '',
  17464. format: '',
  17465. call: false,
  17466. openType: '',
  17467. bold: false,
  17468. block: false,
  17469. lines: '',
  17470. color: '#303133',
  17471. size: 15,
  17472. iconStyle: function iconStyle() {
  17473. return {
  17474. fontSize: '15px'
  17475. };
  17476. },
  17477. decoration: 'none',
  17478. margin: 0,
  17479. lineHeight: '',
  17480. align: 'left',
  17481. wordWrap: 'normal'
  17482. }
  17483. };
  17484. exports.default = _default;
  17485. /***/ }),
  17486. /* 154 */
  17487. /*!*******************************************************************************!*\
  17488. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/textarea.js ***!
  17489. \*******************************************************************************/
  17490. /*! no static exports found */
  17491. /***/ (function(module, exports, __webpack_require__) {
  17492. "use strict";
  17493. Object.defineProperty(exports, "__esModule", {
  17494. value: true
  17495. });
  17496. exports.default = void 0;
  17497. /*
  17498. * @Author : LQ
  17499. * @Description :
  17500. * @version : 1.0
  17501. * @Date : 2021-08-20 16:44:21
  17502. * @LastAuthor : LQ
  17503. * @lastTime : 2021-08-20 17:24:32
  17504. * @FilePath : /u-view2.0/uview-ui/libs/config/props/textarea.js
  17505. */
  17506. var _default = {
  17507. // textarea 组件
  17508. textarea: {
  17509. value: '',
  17510. placeholder: '',
  17511. placeholderClass: 'textarea-placeholder',
  17512. placeholderStyle: 'color: #c0c4cc',
  17513. height: 70,
  17514. confirmType: 'done',
  17515. disabled: false,
  17516. count: false,
  17517. focus: false,
  17518. autoHeight: false,
  17519. fixed: false,
  17520. cursorSpacing: 0,
  17521. cursor: '',
  17522. showConfirmBar: true,
  17523. selectionStart: -1,
  17524. selectionEnd: -1,
  17525. adjustPosition: true,
  17526. disableDefaultPadding: false,
  17527. holdKeyboard: false,
  17528. maxlength: 140,
  17529. border: 'surround',
  17530. formatter: null
  17531. }
  17532. };
  17533. exports.default = _default;
  17534. /***/ }),
  17535. /* 155 */
  17536. /*!****************************************************************************!*\
  17537. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/toast.js ***!
  17538. \****************************************************************************/
  17539. /*! no static exports found */
  17540. /***/ (function(module, exports, __webpack_require__) {
  17541. "use strict";
  17542. Object.defineProperty(exports, "__esModule", {
  17543. value: true
  17544. });
  17545. exports.default = void 0;
  17546. /*
  17547. * @Author : LQ
  17548. * @Description :
  17549. * @version : 1.0
  17550. * @Date : 2021-08-20 16:44:21
  17551. * @LastAuthor : LQ
  17552. * @lastTime : 2021-08-20 17:07:07
  17553. * @FilePath : /u-view2.0/uview-ui/libs/config/props/toast.js
  17554. */
  17555. var _default = {
  17556. // toast组件
  17557. toast: {
  17558. zIndex: 10090,
  17559. loading: false,
  17560. text: '',
  17561. icon: '',
  17562. type: '',
  17563. loadingMode: '',
  17564. show: '',
  17565. overlay: false,
  17566. position: 'center',
  17567. params: function params() {},
  17568. duration: 2000,
  17569. isTab: false,
  17570. url: '',
  17571. callback: null,
  17572. back: false
  17573. }
  17574. };
  17575. exports.default = _default;
  17576. /***/ }),
  17577. /* 156 */
  17578. /*!******************************************************************************!*\
  17579. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/toolbar.js ***!
  17580. \******************************************************************************/
  17581. /*! no static exports found */
  17582. /***/ (function(module, exports, __webpack_require__) {
  17583. "use strict";
  17584. Object.defineProperty(exports, "__esModule", {
  17585. value: true
  17586. });
  17587. exports.default = void 0;
  17588. /*
  17589. * @Author : LQ
  17590. * @Description :
  17591. * @version : 1.0
  17592. * @Date : 2021-08-20 16:44:21
  17593. * @LastAuthor : LQ
  17594. * @lastTime : 2021-08-20 17:24:55
  17595. * @FilePath : /u-view2.0/uview-ui/libs/config/props/toolbar.js
  17596. */
  17597. var _default = {
  17598. // toolbar 组件
  17599. toolbar: {
  17600. show: true,
  17601. cancelText: '取消',
  17602. confirmText: '确认',
  17603. cancelColor: '#909193',
  17604. confirmColor: '#3c9cff',
  17605. title: ''
  17606. }
  17607. };
  17608. exports.default = _default;
  17609. /***/ }),
  17610. /* 157 */
  17611. /*!******************************************************************************!*\
  17612. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/tooltip.js ***!
  17613. \******************************************************************************/
  17614. /*! no static exports found */
  17615. /***/ (function(module, exports, __webpack_require__) {
  17616. "use strict";
  17617. Object.defineProperty(exports, "__esModule", {
  17618. value: true
  17619. });
  17620. exports.default = void 0;
  17621. /*
  17622. * @Author : LQ
  17623. * @Description :
  17624. * @version : 1.0
  17625. * @Date : 2021-08-20 16:44:21
  17626. * @LastAuthor : LQ
  17627. * @lastTime : 2021-08-20 17:25:14
  17628. * @FilePath : /u-view2.0/uview-ui/libs/config/props/tooltip.js
  17629. */
  17630. var _default = {
  17631. // tooltip 组件
  17632. tooltip: {
  17633. text: '',
  17634. copyText: '',
  17635. size: 14,
  17636. color: '#606266',
  17637. bgColor: 'transparent',
  17638. direction: 'top',
  17639. zIndex: 10071,
  17640. showCopy: true,
  17641. buttons: function buttons() {
  17642. return [];
  17643. },
  17644. overlay: true,
  17645. showToast: true
  17646. }
  17647. };
  17648. exports.default = _default;
  17649. /***/ }),
  17650. /* 158 */
  17651. /*!*********************************************************************************!*\
  17652. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/transition.js ***!
  17653. \*********************************************************************************/
  17654. /*! no static exports found */
  17655. /***/ (function(module, exports, __webpack_require__) {
  17656. "use strict";
  17657. Object.defineProperty(exports, "__esModule", {
  17658. value: true
  17659. });
  17660. exports.default = void 0;
  17661. /*
  17662. * @Author : LQ
  17663. * @Description :
  17664. * @version : 1.0
  17665. * @Date : 2021-08-20 16:44:21
  17666. * @LastAuthor : LQ
  17667. * @lastTime : 2021-08-20 16:59:00
  17668. * @FilePath : /u-view2.0/uview-ui/libs/config/props/transition.js
  17669. */
  17670. var _default = {
  17671. // transition动画组件的props
  17672. transition: {
  17673. show: false,
  17674. mode: 'fade',
  17675. duration: '300',
  17676. timingFunction: 'ease-out'
  17677. }
  17678. };
  17679. exports.default = _default;
  17680. /***/ }),
  17681. /* 159 */
  17682. /*!*****************************************************************************!*\
  17683. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/props/upload.js ***!
  17684. \*****************************************************************************/
  17685. /*! no static exports found */
  17686. /***/ (function(module, exports, __webpack_require__) {
  17687. "use strict";
  17688. Object.defineProperty(exports, "__esModule", {
  17689. value: true
  17690. });
  17691. exports.default = void 0;
  17692. /*
  17693. * @Author : LQ
  17694. * @Description :
  17695. * @version : 1.0
  17696. * @Date : 2021-08-20 16:44:21
  17697. * @LastAuthor : LQ
  17698. * @lastTime : 2021-08-20 17:09:50
  17699. * @FilePath : /u-view2.0/uview-ui/libs/config/props/upload.js
  17700. */
  17701. var _default = {
  17702. // upload组件
  17703. upload: {
  17704. accept: 'image',
  17705. capture: function capture() {
  17706. return ['album', 'camera'];
  17707. },
  17708. compressed: true,
  17709. camera: 'back',
  17710. maxDuration: 60,
  17711. uploadIcon: 'camera-fill',
  17712. uploadIconColor: '#D3D4D6',
  17713. useBeforeRead: false,
  17714. previewFullImage: true,
  17715. maxCount: 52,
  17716. disabled: false,
  17717. imageMode: 'aspectFill',
  17718. name: '',
  17719. sizeType: function sizeType() {
  17720. return ['original', 'compressed'];
  17721. },
  17722. multiple: false,
  17723. deletable: true,
  17724. maxSize: Number.MAX_VALUE,
  17725. fileList: function fileList() {
  17726. return [];
  17727. },
  17728. uploadText: '',
  17729. width: 80,
  17730. height: 80,
  17731. previewImage: true
  17732. }
  17733. };
  17734. exports.default = _default;
  17735. /***/ }),
  17736. /* 160 */
  17737. /*!***********************************************************************!*\
  17738. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/config/zIndex.js ***!
  17739. \***********************************************************************/
  17740. /*! no static exports found */
  17741. /***/ (function(module, exports, __webpack_require__) {
  17742. "use strict";
  17743. Object.defineProperty(exports, "__esModule", {
  17744. value: true
  17745. });
  17746. exports.default = void 0;
  17747. // uniapp在H5中各API的z-index值如下:
  17748. /**
  17749. * actionsheet: 999
  17750. * modal: 999
  17751. * navigate: 998
  17752. * tabbar: 998
  17753. * toast: 999
  17754. */
  17755. var _default = {
  17756. toast: 10090,
  17757. noNetwork: 10080,
  17758. // popup包含popup,actionsheet,keyboard,picker的值
  17759. popup: 10075,
  17760. mask: 10070,
  17761. navbar: 980,
  17762. topTips: 975,
  17763. sticky: 970,
  17764. indexListSticky: 965
  17765. };
  17766. exports.default = _default;
  17767. /***/ }),
  17768. /* 161 */
  17769. /*!***************************************************************************!*\
  17770. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/function/platform.js ***!
  17771. \***************************************************************************/
  17772. /*! no static exports found */
  17773. /***/ (function(module, exports, __webpack_require__) {
  17774. "use strict";
  17775. Object.defineProperty(exports, "__esModule", {
  17776. value: true
  17777. });
  17778. exports.default = void 0;
  17779. /**
  17780. * 注意:
  17781. * 此部分内容,在vue-cli模式下,需要在vue.config.js加入如下内容才有效:
  17782. * module.exports = {
  17783. * transpileDependencies: ['uview-v2']
  17784. * }
  17785. */
  17786. var platform = 'none';
  17787. platform = 'vue2';
  17788. platform = 'weixin';
  17789. platform = 'mp';
  17790. var _default = platform;
  17791. exports.default = _default;
  17792. /***/ }),
  17793. /* 162 */,
  17794. /* 163 */,
  17795. /* 164 */,
  17796. /* 165 */,
  17797. /* 166 */,
  17798. /* 167 */,
  17799. /* 168 */,
  17800. /* 169 */,
  17801. /* 170 */,
  17802. /* 171 */,
  17803. /* 172 */,
  17804. /* 173 */,
  17805. /* 174 */,
  17806. /* 175 */,
  17807. /* 176 */,
  17808. /* 177 */,
  17809. /* 178 */,
  17810. /* 179 */,
  17811. /* 180 */,
  17812. /* 181 */,
  17813. /* 182 */,
  17814. /* 183 */,
  17815. /* 184 */,
  17816. /* 185 */,
  17817. /* 186 */,
  17818. /* 187 */,
  17819. /* 188 */,
  17820. /* 189 */,
  17821. /* 190 */,
  17822. /* 191 */,
  17823. /* 192 */,
  17824. /* 193 */,
  17825. /* 194 */,
  17826. /* 195 */,
  17827. /* 196 */,
  17828. /* 197 */,
  17829. /* 198 */,
  17830. /* 199 */,
  17831. /* 200 */,
  17832. /* 201 */,
  17833. /* 202 */,
  17834. /* 203 */,
  17835. /* 204 */,
  17836. /* 205 */,
  17837. /* 206 */,
  17838. /* 207 */
  17839. /*!****************************************************************************!*\
  17840. !*** E:/shoppingTemplate/node_modules/uview-ui/components/u-icon/icons.js ***!
  17841. \****************************************************************************/
  17842. /*! no static exports found */
  17843. /***/ (function(module, exports, __webpack_require__) {
  17844. "use strict";
  17845. Object.defineProperty(exports, "__esModule", {
  17846. value: true
  17847. });
  17848. exports.default = void 0;
  17849. var _default = {
  17850. 'uicon-level': "\uE693",
  17851. 'uicon-column-line': "\uE68E",
  17852. 'uicon-checkbox-mark': "\uE807",
  17853. 'uicon-folder': "\uE7F5",
  17854. 'uicon-movie': "\uE7F6",
  17855. 'uicon-star-fill': "\uE669",
  17856. 'uicon-star': "\uE65F",
  17857. 'uicon-phone-fill': "\uE64F",
  17858. 'uicon-phone': "\uE622",
  17859. 'uicon-apple-fill': "\uE881",
  17860. 'uicon-chrome-circle-fill': "\uE885",
  17861. 'uicon-backspace': "\uE67B",
  17862. 'uicon-attach': "\uE632",
  17863. 'uicon-cut': "\uE948",
  17864. 'uicon-empty-car': "\uE602",
  17865. 'uicon-empty-coupon': "\uE682",
  17866. 'uicon-empty-address': "\uE646",
  17867. 'uicon-empty-favor': "\uE67C",
  17868. 'uicon-empty-permission': "\uE686",
  17869. 'uicon-empty-news': "\uE687",
  17870. 'uicon-empty-search': "\uE664",
  17871. 'uicon-github-circle-fill': "\uE887",
  17872. 'uicon-rmb': "\uE608",
  17873. 'uicon-person-delete-fill': "\uE66A",
  17874. 'uicon-reload': "\uE788",
  17875. 'uicon-order': "\uE68F",
  17876. 'uicon-server-man': "\uE6BC",
  17877. 'uicon-search': "\uE62A",
  17878. 'uicon-fingerprint': "\uE955",
  17879. 'uicon-more-dot-fill': "\uE630",
  17880. 'uicon-scan': "\uE662",
  17881. 'uicon-share-square': "\uE60B",
  17882. 'uicon-map': "\uE61D",
  17883. 'uicon-map-fill': "\uE64E",
  17884. 'uicon-tags': "\uE629",
  17885. 'uicon-tags-fill': "\uE651",
  17886. 'uicon-bookmark-fill': "\uE63B",
  17887. 'uicon-bookmark': "\uE60A",
  17888. 'uicon-eye': "\uE613",
  17889. 'uicon-eye-fill': "\uE641",
  17890. 'uicon-mic': "\uE64A",
  17891. 'uicon-mic-off': "\uE649",
  17892. 'uicon-calendar': "\uE66E",
  17893. 'uicon-calendar-fill': "\uE634",
  17894. 'uicon-trash': "\uE623",
  17895. 'uicon-trash-fill': "\uE658",
  17896. 'uicon-play-left': "\uE66D",
  17897. 'uicon-play-right': "\uE610",
  17898. 'uicon-minus': "\uE618",
  17899. 'uicon-plus': "\uE62D",
  17900. 'uicon-info': "\uE653",
  17901. 'uicon-info-circle': "\uE7D2",
  17902. 'uicon-info-circle-fill': "\uE64B",
  17903. 'uicon-question': "\uE715",
  17904. 'uicon-error': "\uE6D3",
  17905. 'uicon-close': "\uE685",
  17906. 'uicon-checkmark': "\uE6A8",
  17907. 'uicon-android-circle-fill': "\uE67E",
  17908. 'uicon-android-fill': "\uE67D",
  17909. 'uicon-ie': "\uE87B",
  17910. 'uicon-IE-circle-fill': "\uE889",
  17911. 'uicon-google': "\uE87A",
  17912. 'uicon-google-circle-fill': "\uE88A",
  17913. 'uicon-setting-fill': "\uE872",
  17914. 'uicon-setting': "\uE61F",
  17915. 'uicon-minus-square-fill': "\uE855",
  17916. 'uicon-plus-square-fill': "\uE856",
  17917. 'uicon-heart': "\uE7DF",
  17918. 'uicon-heart-fill': "\uE851",
  17919. 'uicon-camera': "\uE7D7",
  17920. 'uicon-camera-fill': "\uE870",
  17921. 'uicon-more-circle': "\uE63E",
  17922. 'uicon-more-circle-fill': "\uE645",
  17923. 'uicon-chat': "\uE620",
  17924. 'uicon-chat-fill': "\uE61E",
  17925. 'uicon-bag-fill': "\uE617",
  17926. 'uicon-bag': "\uE619",
  17927. 'uicon-error-circle-fill': "\uE62C",
  17928. 'uicon-error-circle': "\uE624",
  17929. 'uicon-close-circle': "\uE63F",
  17930. 'uicon-close-circle-fill': "\uE637",
  17931. 'uicon-checkmark-circle': "\uE63D",
  17932. 'uicon-checkmark-circle-fill': "\uE635",
  17933. 'uicon-question-circle-fill': "\uE666",
  17934. 'uicon-question-circle': "\uE625",
  17935. 'uicon-share': "\uE631",
  17936. 'uicon-share-fill': "\uE65E",
  17937. 'uicon-shopping-cart': "\uE621",
  17938. 'uicon-shopping-cart-fill': "\uE65D",
  17939. 'uicon-bell': "\uE609",
  17940. 'uicon-bell-fill': "\uE640",
  17941. 'uicon-list': "\uE650",
  17942. 'uicon-list-dot': "\uE616",
  17943. 'uicon-zhihu': "\uE6BA",
  17944. 'uicon-zhihu-circle-fill': "\uE709",
  17945. 'uicon-zhifubao': "\uE6B9",
  17946. 'uicon-zhifubao-circle-fill': "\uE6B8",
  17947. 'uicon-weixin-circle-fill': "\uE6B1",
  17948. 'uicon-weixin-fill': "\uE6B2",
  17949. 'uicon-twitter-circle-fill': "\uE6AB",
  17950. 'uicon-twitter': "\uE6AA",
  17951. 'uicon-taobao-circle-fill': "\uE6A7",
  17952. 'uicon-taobao': "\uE6A6",
  17953. 'uicon-weibo-circle-fill': "\uE6A5",
  17954. 'uicon-weibo': "\uE6A4",
  17955. 'uicon-qq-fill': "\uE6A1",
  17956. 'uicon-qq-circle-fill': "\uE6A0",
  17957. 'uicon-moments-circel-fill': "\uE69A",
  17958. 'uicon-moments': "\uE69B",
  17959. 'uicon-qzone': "\uE695",
  17960. 'uicon-qzone-circle-fill': "\uE696",
  17961. 'uicon-baidu-circle-fill': "\uE680",
  17962. 'uicon-baidu': "\uE681",
  17963. 'uicon-facebook-circle-fill': "\uE68A",
  17964. 'uicon-facebook': "\uE689",
  17965. 'uicon-car': "\uE60C",
  17966. 'uicon-car-fill': "\uE636",
  17967. 'uicon-warning-fill': "\uE64D",
  17968. 'uicon-warning': "\uE694",
  17969. 'uicon-clock-fill': "\uE638",
  17970. 'uicon-clock': "\uE60F",
  17971. 'uicon-edit-pen': "\uE612",
  17972. 'uicon-edit-pen-fill': "\uE66B",
  17973. 'uicon-email': "\uE611",
  17974. 'uicon-email-fill': "\uE642",
  17975. 'uicon-minus-circle': "\uE61B",
  17976. 'uicon-minus-circle-fill': "\uE652",
  17977. 'uicon-plus-circle': "\uE62E",
  17978. 'uicon-plus-circle-fill': "\uE661",
  17979. 'uicon-file-text': "\uE663",
  17980. 'uicon-file-text-fill': "\uE665",
  17981. 'uicon-pushpin': "\uE7E3",
  17982. 'uicon-pushpin-fill': "\uE86E",
  17983. 'uicon-grid': "\uE673",
  17984. 'uicon-grid-fill': "\uE678",
  17985. 'uicon-play-circle': "\uE647",
  17986. 'uicon-play-circle-fill': "\uE655",
  17987. 'uicon-pause-circle-fill': "\uE654",
  17988. 'uicon-pause': "\uE8FA",
  17989. 'uicon-pause-circle': "\uE643",
  17990. 'uicon-eye-off': "\uE648",
  17991. 'uicon-eye-off-outline': "\uE62B",
  17992. 'uicon-gift-fill': "\uE65C",
  17993. 'uicon-gift': "\uE65B",
  17994. 'uicon-rmb-circle-fill': "\uE657",
  17995. 'uicon-rmb-circle': "\uE677",
  17996. 'uicon-kefu-ermai': "\uE656",
  17997. 'uicon-server-fill': "\uE751",
  17998. 'uicon-coupon-fill': "\uE8C4",
  17999. 'uicon-coupon': "\uE8AE",
  18000. 'uicon-integral': "\uE704",
  18001. 'uicon-integral-fill': "\uE703",
  18002. 'uicon-home-fill': "\uE964",
  18003. 'uicon-home': "\uE965",
  18004. 'uicon-hourglass-half-fill': "\uE966",
  18005. 'uicon-hourglass': "\uE967",
  18006. 'uicon-account': "\uE628",
  18007. 'uicon-plus-people-fill': "\uE626",
  18008. 'uicon-minus-people-fill': "\uE615",
  18009. 'uicon-account-fill': "\uE614",
  18010. 'uicon-thumb-down-fill': "\uE726",
  18011. 'uicon-thumb-down': "\uE727",
  18012. 'uicon-thumb-up': "\uE733",
  18013. 'uicon-thumb-up-fill': "\uE72F",
  18014. 'uicon-lock-fill': "\uE979",
  18015. 'uicon-lock-open': "\uE973",
  18016. 'uicon-lock-opened-fill': "\uE974",
  18017. 'uicon-lock': "\uE97A",
  18018. 'uicon-red-packet-fill': "\uE690",
  18019. 'uicon-photo-fill': "\uE98B",
  18020. 'uicon-photo': "\uE98D",
  18021. 'uicon-volume-off-fill': "\uE659",
  18022. 'uicon-volume-off': "\uE644",
  18023. 'uicon-volume-fill': "\uE670",
  18024. 'uicon-volume': "\uE633",
  18025. 'uicon-red-packet': "\uE691",
  18026. 'uicon-download': "\uE63C",
  18027. 'uicon-arrow-up-fill': "\uE6B0",
  18028. 'uicon-arrow-down-fill': "\uE600",
  18029. 'uicon-play-left-fill': "\uE675",
  18030. 'uicon-play-right-fill': "\uE676",
  18031. 'uicon-rewind-left-fill': "\uE679",
  18032. 'uicon-rewind-right-fill': "\uE67A",
  18033. 'uicon-arrow-downward': "\uE604",
  18034. 'uicon-arrow-leftward': "\uE601",
  18035. 'uicon-arrow-rightward': "\uE603",
  18036. 'uicon-arrow-upward': "\uE607",
  18037. 'uicon-arrow-down': "\uE60D",
  18038. 'uicon-arrow-right': "\uE605",
  18039. 'uicon-arrow-left': "\uE60E",
  18040. 'uicon-arrow-up': "\uE606",
  18041. 'uicon-skip-back-left': "\uE674",
  18042. 'uicon-skip-forward-right': "\uE672",
  18043. 'uicon-rewind-right': "\uE66F",
  18044. 'uicon-rewind-left': "\uE671",
  18045. 'uicon-arrow-right-double': "\uE68D",
  18046. 'uicon-arrow-left-double': "\uE68C",
  18047. 'uicon-wifi-off': "\uE668",
  18048. 'uicon-wifi': "\uE667",
  18049. 'uicon-empty-data': "\uE62F",
  18050. 'uicon-empty-history': "\uE684",
  18051. 'uicon-empty-list': "\uE68B",
  18052. 'uicon-empty-page': "\uE627",
  18053. 'uicon-empty-order': "\uE639",
  18054. 'uicon-man': "\uE697",
  18055. 'uicon-woman': "\uE69C",
  18056. 'uicon-man-add': "\uE61C",
  18057. 'uicon-man-add-fill': "\uE64C",
  18058. 'uicon-man-delete': "\uE61A",
  18059. 'uicon-man-delete-fill': "\uE66A",
  18060. 'uicon-zh': "\uE70A",
  18061. 'uicon-en': "\uE692"
  18062. };
  18063. exports.default = _default;
  18064. /***/ }),
  18065. /* 208 */
  18066. /*!****************************************************************************!*\
  18067. !*** E:/shoppingTemplate/node_modules/uview-ui/components/u-icon/props.js ***!
  18068. \****************************************************************************/
  18069. /*! no static exports found */
  18070. /***/ (function(module, exports, __webpack_require__) {
  18071. "use strict";
  18072. /* WEBPACK VAR INJECTION */(function(uni) {
  18073. Object.defineProperty(exports, "__esModule", {
  18074. value: true
  18075. });
  18076. exports.default = void 0;
  18077. var _default = {
  18078. props: {
  18079. // 图标类名
  18080. name: {
  18081. type: String,
  18082. default: uni.$u.props.icon.name
  18083. },
  18084. // 图标颜色,可接受主题色
  18085. color: {
  18086. type: String,
  18087. default: uni.$u.props.icon.color
  18088. },
  18089. // 字体大小,单位px
  18090. size: {
  18091. type: [String, Number],
  18092. default: uni.$u.props.icon.size
  18093. },
  18094. // 是否显示粗体
  18095. bold: {
  18096. type: Boolean,
  18097. default: uni.$u.props.icon.bold
  18098. },
  18099. // 点击图标的时候传递事件出去的index(用于区分点击了哪一个)
  18100. index: {
  18101. type: [String, Number],
  18102. default: uni.$u.props.icon.index
  18103. },
  18104. // 触摸图标时的类名
  18105. hoverClass: {
  18106. type: String,
  18107. default: uni.$u.props.icon.hoverClass
  18108. },
  18109. // 自定义扩展前缀,方便用户扩展自己的图标库
  18110. customPrefix: {
  18111. type: String,
  18112. default: uni.$u.props.icon.customPrefix
  18113. },
  18114. // 图标右边或者下面的文字
  18115. label: {
  18116. type: [String, Number],
  18117. default: uni.$u.props.icon.label
  18118. },
  18119. // label的位置,只能右边或者下边
  18120. labelPos: {
  18121. type: String,
  18122. default: uni.$u.props.icon.labelPos
  18123. },
  18124. // label的大小
  18125. labelSize: {
  18126. type: [String, Number],
  18127. default: uni.$u.props.icon.labelSize
  18128. },
  18129. // label的颜色
  18130. labelColor: {
  18131. type: String,
  18132. default: uni.$u.props.icon.labelColor
  18133. },
  18134. // label与图标的距离
  18135. space: {
  18136. type: [String, Number],
  18137. default: uni.$u.props.icon.space
  18138. },
  18139. // 图片的mode
  18140. imgMode: {
  18141. type: String,
  18142. default: uni.$u.props.icon.imgMode
  18143. },
  18144. // 用于显示图片小图标时,图片的宽度
  18145. width: {
  18146. type: [String, Number],
  18147. default: uni.$u.props.icon.width
  18148. },
  18149. // 用于显示图片小图标时,图片的高度
  18150. height: {
  18151. type: [String, Number],
  18152. default: uni.$u.props.icon.height
  18153. },
  18154. // 用于解决某些情况下,让图标垂直居中的用途
  18155. top: {
  18156. type: [String, Number],
  18157. default: uni.$u.props.icon.top
  18158. },
  18159. // 是否阻止事件传播
  18160. stop: {
  18161. type: Boolean,
  18162. default: uni.$u.props.icon.stop
  18163. }
  18164. }
  18165. };
  18166. exports.default = _default;
  18167. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  18168. /***/ }),
  18169. /* 209 */,
  18170. /* 210 */,
  18171. /* 211 */,
  18172. /* 212 */,
  18173. /* 213 */,
  18174. /* 214 */,
  18175. /* 215 */,
  18176. /* 216 */
  18177. /*!**********************************************************************!*\
  18178. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/mixin/button.js ***!
  18179. \**********************************************************************/
  18180. /*! no static exports found */
  18181. /***/ (function(module, exports, __webpack_require__) {
  18182. "use strict";
  18183. Object.defineProperty(exports, "__esModule", {
  18184. value: true
  18185. });
  18186. exports.default = void 0;
  18187. var _default = {
  18188. props: {
  18189. lang: String,
  18190. sessionFrom: String,
  18191. sendMessageTitle: String,
  18192. sendMessagePath: String,
  18193. sendMessageImg: String,
  18194. showMessageCard: Boolean,
  18195. appParameter: String,
  18196. formType: String,
  18197. openType: String
  18198. }
  18199. };
  18200. exports.default = _default;
  18201. /***/ }),
  18202. /* 217 */
  18203. /*!************************************************************************!*\
  18204. !*** E:/shoppingTemplate/node_modules/uview-ui/libs/mixin/openType.js ***!
  18205. \************************************************************************/
  18206. /*! no static exports found */
  18207. /***/ (function(module, exports, __webpack_require__) {
  18208. "use strict";
  18209. Object.defineProperty(exports, "__esModule", {
  18210. value: true
  18211. });
  18212. exports.default = void 0;
  18213. var _default = {
  18214. props: {
  18215. openType: String
  18216. },
  18217. methods: {
  18218. onGetUserInfo: function onGetUserInfo(event) {
  18219. this.$emit('getuserinfo', event.detail);
  18220. },
  18221. onContact: function onContact(event) {
  18222. this.$emit('contact', event.detail);
  18223. },
  18224. onGetPhoneNumber: function onGetPhoneNumber(event) {
  18225. this.$emit('getphonenumber', event.detail);
  18226. },
  18227. onError: function onError(event) {
  18228. this.$emit('error', event.detail);
  18229. },
  18230. onLaunchApp: function onLaunchApp(event) {
  18231. this.$emit('launchapp', event.detail);
  18232. },
  18233. onOpenSetting: function onOpenSetting(event) {
  18234. this.$emit('opensetting', event.detail);
  18235. }
  18236. }
  18237. };
  18238. exports.default = _default;
  18239. /***/ }),
  18240. /* 218 */
  18241. /*!******************************************************************************!*\
  18242. !*** E:/shoppingTemplate/node_modules/uview-ui/components/u-button/props.js ***!
  18243. \******************************************************************************/
  18244. /*! no static exports found */
  18245. /***/ (function(module, exports, __webpack_require__) {
  18246. "use strict";
  18247. /* WEBPACK VAR INJECTION */(function(uni) {
  18248. Object.defineProperty(exports, "__esModule", {
  18249. value: true
  18250. });
  18251. exports.default = void 0;
  18252. /*
  18253. * @Author : LQ
  18254. * @Description :
  18255. * @version : 1.0
  18256. * @Date : 2021-08-16 10:04:04
  18257. * @LastAuthor : LQ
  18258. * @lastTime : 2021-08-16 10:04:24
  18259. * @FilePath : /u-view2.0/uview-ui/components/u-button/props.js
  18260. */
  18261. var _default = {
  18262. props: {
  18263. // 是否细边框
  18264. hairline: {
  18265. type: Boolean,
  18266. default: uni.$u.props.button.hairline
  18267. },
  18268. // 按钮的预置样式,info,primary,error,warning,success
  18269. type: {
  18270. type: String,
  18271. default: uni.$u.props.button.type
  18272. },
  18273. // 按钮尺寸,large,normal,small,mini
  18274. size: {
  18275. type: String,
  18276. default: uni.$u.props.button.size
  18277. },
  18278. // 按钮形状,circle(两边为半圆),square(带圆角)
  18279. shape: {
  18280. type: String,
  18281. default: uni.$u.props.button.shape
  18282. },
  18283. // 按钮是否镂空
  18284. plain: {
  18285. type: Boolean,
  18286. default: uni.$u.props.button.plain
  18287. },
  18288. // 是否禁止状态
  18289. disabled: {
  18290. type: Boolean,
  18291. default: uni.$u.props.button.disabled
  18292. },
  18293. // 是否加载中
  18294. loading: {
  18295. type: Boolean,
  18296. default: uni.$u.props.button.loading
  18297. },
  18298. // 加载中提示文字
  18299. loadingText: {
  18300. type: [String, Number],
  18301. default: uni.$u.props.button.loadingText
  18302. },
  18303. // 加载状态图标类型
  18304. loadingMode: {
  18305. type: String,
  18306. default: uni.$u.props.button.loadingMode
  18307. },
  18308. // 加载图标大小
  18309. loadingSize: {
  18310. type: [String, Number],
  18311. default: uni.$u.props.button.loadingSize
  18312. },
  18313. // 开放能力,具体请看uniapp稳定关于button组件部分说明
  18314. // https://uniapp.dcloud.io/component/button
  18315. openType: {
  18316. type: String,
  18317. default: uni.$u.props.button.openType
  18318. },
  18319. // 用于 <form> 组件,点击分别会触发 <form> 组件的 submit/reset 事件
  18320. // 取值为submit(提交表单),reset(重置表单)
  18321. formType: {
  18322. type: String,
  18323. default: uni.$u.props.button.formType
  18324. },
  18325. // 打开 APP 时,向 APP 传递的参数,open-type=launchApp时有效
  18326. // 只微信小程序、QQ小程序有效
  18327. appParameter: {
  18328. type: String,
  18329. default: uni.$u.props.button.appParameter
  18330. },
  18331. // 指定是否阻止本节点的祖先节点出现点击态,微信小程序有效
  18332. hoverStopPropagation: {
  18333. type: Boolean,
  18334. default: uni.$u.props.button.hoverStopPropagation
  18335. },
  18336. // 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文。只微信小程序有效
  18337. lang: {
  18338. type: String,
  18339. default: uni.$u.props.button.lang
  18340. },
  18341. // 会话来源,open-type="contact"时有效。只微信小程序有效
  18342. sessionFrom: {
  18343. type: String,
  18344. default: uni.$u.props.button.sessionFrom
  18345. },
  18346. // 会话内消息卡片标题,open-type="contact"时有效
  18347. // 默认当前标题,只微信小程序有效
  18348. sendMessageTitle: {
  18349. type: String,
  18350. default: uni.$u.props.button.sendMessageTitle
  18351. },
  18352. // 会话内消息卡片点击跳转小程序路径,open-type="contact"时有效
  18353. // 默认当前分享路径,只微信小程序有效
  18354. sendMessagePath: {
  18355. type: String,
  18356. default: uni.$u.props.button.sendMessagePath
  18357. },
  18358. // 会话内消息卡片图片,open-type="contact"时有效
  18359. // 默认当前页面截图,只微信小程序有效
  18360. sendMessageImg: {
  18361. type: String,
  18362. default: uni.$u.props.button.sendMessageImg
  18363. },
  18364. // 是否显示会话内消息卡片,设置此参数为 true,用户进入客服会话会在右下角显示"可能要发送的小程序"提示,
  18365. // 用户点击后可以快速发送小程序消息,open-type="contact"时有效
  18366. showMessageCard: {
  18367. type: Boolean,
  18368. default: uni.$u.props.button.showMessageCard
  18369. },
  18370. // 额外传参参数,用于小程序的data-xxx属性,通过target.dataset.name获取
  18371. dataName: {
  18372. type: String,
  18373. default: uni.$u.props.button.dataName
  18374. },
  18375. // 节流,一定时间内只能触发一次
  18376. throttleTime: {
  18377. type: [String, Number],
  18378. default: uni.$u.props.button.throttleTime
  18379. },
  18380. // 按住后多久出现点击态,单位毫秒
  18381. hoverStartTime: {
  18382. type: [String, Number],
  18383. default: uni.$u.props.button.hoverStartTime
  18384. },
  18385. // 手指松开后点击态保留时间,单位毫秒
  18386. hoverStayTime: {
  18387. type: [String, Number],
  18388. default: uni.$u.props.button.hoverStayTime
  18389. },
  18390. // 按钮文字,之所以通过props传入,是因为slot传入的话
  18391. // nvue中无法控制文字的样式
  18392. text: {
  18393. type: [String, Number],
  18394. default: uni.$u.props.button.text
  18395. },
  18396. // 按钮图标
  18397. icon: {
  18398. type: String,
  18399. default: uni.$u.props.button.icon
  18400. },
  18401. // 按钮图标
  18402. iconColor: {
  18403. type: String,
  18404. default: uni.$u.props.button.icon
  18405. },
  18406. // 按钮颜色,支持传入linear-gradient渐变色
  18407. color: {
  18408. type: String,
  18409. default: uni.$u.props.button.color
  18410. }
  18411. }
  18412. };
  18413. exports.default = _default;
  18414. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  18415. /***/ }),
  18416. /* 219 */,
  18417. /* 220 */,
  18418. /* 221 */,
  18419. /* 222 */,
  18420. /* 223 */,
  18421. /* 224 */,
  18422. /* 225 */,
  18423. /* 226 */
  18424. /*!************************************************************************************!*\
  18425. !*** E:/shoppingTemplate/node_modules/uview-ui/components/u-loading-icon/props.js ***!
  18426. \************************************************************************************/
  18427. /*! no static exports found */
  18428. /***/ (function(module, exports, __webpack_require__) {
  18429. "use strict";
  18430. /* WEBPACK VAR INJECTION */(function(uni) {
  18431. Object.defineProperty(exports, "__esModule", {
  18432. value: true
  18433. });
  18434. exports.default = void 0;
  18435. var _default = {
  18436. props: {
  18437. // 是否显示组件
  18438. show: {
  18439. type: Boolean,
  18440. default: uni.$u.props.loadingIcon.show
  18441. },
  18442. // 颜色
  18443. color: {
  18444. type: String,
  18445. default: uni.$u.props.loadingIcon.color
  18446. },
  18447. // 提示文字颜色
  18448. textColor: {
  18449. type: String,
  18450. default: uni.$u.props.loadingIcon.textColor
  18451. },
  18452. // 文字和图标是否垂直排列
  18453. vertical: {
  18454. type: Boolean,
  18455. default: uni.$u.props.loadingIcon.vertical
  18456. },
  18457. // 模式选择,circle-圆形,spinner-花朵形,semicircle-半圆形
  18458. mode: {
  18459. type: String,
  18460. default: uni.$u.props.loadingIcon.mode
  18461. },
  18462. // 图标大小,单位默认px
  18463. size: {
  18464. type: [String, Number],
  18465. default: uni.$u.props.loadingIcon.size
  18466. },
  18467. // 文字大小
  18468. textSize: {
  18469. type: [String, Number],
  18470. default: uni.$u.props.loadingIcon.textSize
  18471. },
  18472. // 文字内容
  18473. text: {
  18474. type: [String, Number],
  18475. default: uni.$u.props.loadingIcon.text
  18476. },
  18477. // 动画模式
  18478. timingFunction: {
  18479. type: String,
  18480. default: uni.$u.props.loadingIcon.timingFunction
  18481. },
  18482. // 动画执行周期时间
  18483. duration: {
  18484. type: [String, Number],
  18485. default: uni.$u.props.loadingIcon.duration
  18486. },
  18487. // mode=circle时的暗边颜色
  18488. inactiveColor: {
  18489. type: String,
  18490. default: uni.$u.props.loadingIcon.inactiveColor
  18491. }
  18492. }
  18493. };
  18494. exports.default = _default;
  18495. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
  18496. /***/ })
  18497. ]]);
  18498. //# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map