vendor.js 1.0 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893268942689526896268972689826899269002690126902269032690426905269062690726908269092691026911269122691326914269152691626917269182691926920269212692226923269242692526926269272692826929269302693126932269332693426935269362693726938269392694026941269422694326944269452694626947269482694926950269512695226953269542695526956269572695826959269602696126962269632696426965269662696726968269692697026971269722697326974269752697626977269782697926980269812698226983269842698526986269872698826989269902699126992269932699426995269962699726998269992700027001270022700327004270052700627007270082700927010270112701227013270142701527016270172701827019270202702127022270232702427025270262702727028270292703027031270322703327034270352703627037270382703927040270412704227043270442704527046270472704827049270502705127052270532705427055270562705727058270592706027061270622706327064270652706627067270682706927070270712707227073270742707527076270772707827079270802708127082270832708427085270862708727088270892709027091270922709327094270952709627097270982709927100271012710227103271042710527106271072710827109271102711127112271132711427115271162711727118271192712027121271222712327124271252712627127271282712927130271312713227133271342713527136271372713827139271402714127142271432714427145271462714727148271492715027151271522715327154271552715627157271582715927160271612716227163271642716527166271672716827169271702717127172271732717427175271762717727178271792718027181271822718327184271852718627187271882718927190271912719227193271942719527196271972719827199272002720127202272032720427205272062720727208272092721027211272122721327214272152721627217272182721927220272212722227223272242722527226272272722827229272302723127232272332723427235272362723727238272392724027241272422724327244272452724627247272482724927250272512725227253272542725527256272572725827259272602726127262272632726427265272662726727268272692727027271272722727327274272752727627277272782727927280272812728227283272842728527286272872728827289272902729127292272932729427295272962729727298272992730027301273022730327304273052730627307273082730927310273112731227313273142731527316273172731827319273202732127322273232732427325273262732727328273292733027331273322733327334273352733627337273382733927340273412734227343273442734527346273472734827349273502735127352273532735427355273562735727358273592736027361273622736327364273652736627367273682736927370273712737227373273742737527376273772737827379273802738127382273832738427385273862738727388273892739027391273922739327394273952739627397273982739927400274012740227403274042740527406274072740827409274102741127412274132741427415274162741727418274192742027421274222742327424274252742627427274282742927430274312743227433274342743527436274372743827439274402744127442274432744427445274462744727448274492745027451274522745327454274552745627457274582745927460274612746227463274642746527466274672746827469274702747127472274732747427475274762747727478274792748027481274822748327484274852748627487274882748927490274912749227493274942749527496274972749827499275002750127502275032750427505275062750727508275092751027511275122751327514275152751627517275182751927520275212752227523275242752527526275272752827529275302753127532275332753427535275362753727538275392754027541275422754327544275452754627547275482754927550275512755227553275542755527556275572755827559275602756127562275632756427565275662756727568275692757027571275722757327574275752757627577275782757927580275812758227583275842758527586275872758827589275902759127592275932759427595275962759727598275992760027601276022760327604276052760627607276082760927610276112761227613276142761527616276172761827619276202762127622276232762427625276262762727628276292763027631276322763327634276352763627637276382763927640276412764227643276442764527646276472764827649276502765127652276532765427655276562765727658276592766027661276622766327664276652766627667276682766927670276712767227673276742767527676276772767827679276802768127682276832768427685276862768727688276892769027691276922769327694276952769627697276982769927700277012770227703277042770527706277072770827709277102771127712277132771427715277162771727718277192772027721277222772327724277252772627727277282772927730277312773227733277342773527736277372773827739277402774127742277432774427745277462774727748277492775027751277522775327754277552775627757277582775927760277612776227763277642776527766277672776827769277702777127772277732777427775277762777727778277792778027781277822778327784277852778627787277882778927790277912779227793277942779527796277972779827799278002780127802278032780427805278062780727808278092781027811278122781327814278152781627817278182781927820278212782227823278242782527826278272782827829278302783127832278332783427835278362783727838278392784027841278422784327844278452784627847278482784927850278512785227853278542785527856278572785827859278602786127862278632786427865278662786727868278692787027871278722787327874278752787627877278782787927880278812788227883278842788527886278872788827889278902789127892278932789427895278962789727898278992790027901279022790327904279052790627907279082790927910279112791227913279142791527916279172791827919279202792127922279232792427925279262792727928279292793027931279322793327934279352793627937279382793927940279412794227943279442794527946279472794827949279502795127952279532795427955279562795727958279592796027961279622796327964279652796627967279682796927970279712797227973279742797527976279772797827979279802798127982279832798427985279862798727988279892799027991279922799327994279952799627997279982799928000280012800228003280042800528006280072800828009280102801128012280132801428015280162801728018280192802028021280222802328024280252802628027280282802928030280312803228033280342803528036280372803828039280402804128042280432804428045280462804728048280492805028051280522805328054280552805628057280582805928060280612806228063280642806528066280672806828069280702807128072280732807428075280762807728078280792808028081280822808328084280852808628087280882808928090280912809228093280942809528096280972809828099281002810128102281032810428105281062810728108281092811028111281122811328114281152811628117281182811928120281212812228123281242812528126281272812828129281302813128132281332813428135281362813728138281392814028141281422814328144281452814628147281482814928150281512815228153281542815528156281572815828159281602816128162281632816428165281662816728168281692817028171281722817328174281752817628177281782817928180281812818228183281842818528186281872818828189281902819128192281932819428195281962819728198281992820028201282022820328204282052820628207282082820928210282112821228213282142821528216282172821828219282202822128222282232822428225282262822728228282292823028231282322823328234282352823628237282382823928240282412824228243282442824528246282472824828249282502825128252282532825428255282562825728258282592826028261282622826328264282652826628267282682826928270282712827228273282742827528276282772827828279282802828128282282832828428285282862828728288282892829028291282922829328294282952829628297282982829928300283012830228303283042830528306283072830828309283102831128312283132831428315283162831728318283192832028321283222832328324283252832628327283282832928330283312833228333283342833528336283372833828339283402834128342283432834428345283462834728348283492835028351283522835328354283552835628357283582835928360283612836228363283642836528366283672836828369283702837128372283732837428375283762837728378283792838028381283822838328384283852838628387283882838928390283912839228393283942839528396283972839828399284002840128402284032840428405284062840728408284092841028411284122841328414284152841628417284182841928420284212842228423284242842528426284272842828429284302843128432284332843428435284362843728438284392844028441284422844328444284452844628447284482844928450284512845228453284542845528456284572845828459284602846128462284632846428465284662846728468284692847028471284722847328474284752847628477284782847928480284812848228483284842848528486284872848828489284902849128492284932849428495284962849728498284992850028501285022850328504285052850628507285082850928510285112851228513285142851528516285172851828519285202852128522285232852428525285262852728528285292853028531285322853328534285352853628537285382853928540285412854228543285442854528546285472854828549285502855128552285532855428555285562855728558285592856028561285622856328564285652856628567285682856928570285712857228573285742857528576285772857828579285802858128582285832858428585285862858728588285892859028591285922859328594285952859628597285982859928600286012860228603286042860528606286072860828609286102861128612286132861428615286162861728618286192862028621286222862328624286252862628627286282862928630286312863228633286342863528636286372863828639286402864128642286432864428645286462864728648286492865028651286522865328654286552865628657286582865928660286612866228663286642866528666286672866828669286702867128672286732867428675286762867728678286792868028681286822868328684286852868628687286882868928690286912869228693286942869528696286972869828699287002870128702287032870428705287062870728708287092871028711287122871328714287152871628717287182871928720287212872228723287242872528726287272872828729287302873128732287332873428735287362873728738287392874028741287422874328744287452874628747287482874928750287512875228753287542875528756287572875828759287602876128762287632876428765287662876728768287692877028771287722877328774287752877628777287782877928780287812878228783287842878528786287872878828789287902879128792287932879428795287962879728798287992880028801288022880328804288052880628807288082880928810288112881228813288142881528816288172881828819288202882128822288232882428825288262882728828288292883028831288322883328834288352883628837288382883928840288412884228843288442884528846288472884828849288502885128852288532885428855288562885728858288592886028861288622886328864288652886628867288682886928870288712887228873288742887528876288772887828879288802888128882288832888428885288862888728888288892889028891288922889328894288952889628897288982889928900289012890228903289042890528906289072890828909289102891128912289132891428915289162891728918289192892028921289222892328924289252892628927289282892928930289312893228933289342893528936289372893828939289402894128942289432894428945289462894728948289492895028951289522895328954289552895628957289582895928960289612896228963289642896528966289672896828969289702897128972289732897428975289762897728978289792898028981289822898328984289852898628987289882898928990289912899228993289942899528996289972899828999290002900129002290032900429005290062900729008290092901029011290122901329014290152901629017290182901929020290212902229023290242902529026290272902829029290302903129032290332903429035290362903729038290392904029041290422904329044290452904629047290482904929050290512905229053290542905529056290572905829059290602906129062290632906429065290662906729068290692907029071290722907329074290752907629077290782907929080290812908229083290842908529086290872908829089290902909129092290932909429095290962909729098290992910029101291022910329104291052910629107291082910929110291112911229113291142911529116291172911829119291202912129122291232912429125291262912729128291292913029131291322913329134291352913629137291382913929140291412914229143291442914529146291472914829149291502915129152291532915429155291562915729158291592916029161291622916329164291652916629167291682916929170291712917229173291742917529176291772917829179291802918129182291832918429185291862918729188291892919029191291922919329194291952919629197291982919929200292012920229203292042920529206292072920829209292102921129212292132921429215292162921729218292192922029221292222922329224292252922629227292282922929230292312923229233292342923529236292372923829239292402924129242292432924429245292462924729248292492925029251292522925329254292552925629257292582925929260292612926229263292642926529266292672926829269292702927129272292732927429275292762927729278292792928029281292822928329284292852928629287292882928929290292912929229293292942929529296292972929829299293002930129302293032930429305293062930729308293092931029311293122931329314293152931629317293182931929320293212932229323293242932529326293272932829329293302933129332293332933429335293362933729338293392934029341293422934329344293452934629347293482934929350293512935229353293542935529356293572935829359293602936129362293632936429365293662936729368293692937029371293722937329374293752937629377293782937929380293812938229383293842938529386293872938829389293902939129392293932939429395293962939729398293992940029401294022940329404294052940629407294082940929410294112941229413294142941529416294172941829419294202942129422294232942429425294262942729428294292943029431294322943329434294352943629437294382943929440294412944229443294442944529446294472944829449294502945129452294532945429455294562945729458294592946029461294622946329464294652946629467294682946929470294712947229473294742947529476294772947829479294802948129482294832948429485294862948729488294892949029491294922949329494294952949629497294982949929500295012950229503295042950529506295072950829509295102951129512295132951429515295162951729518295192952029521295222952329524295252952629527295282952929530295312953229533295342953529536295372953829539295402954129542295432954429545295462954729548295492955029551295522955329554295552955629557295582955929560295612956229563295642956529566295672956829569295702957129572295732957429575295762957729578295792958029581295822958329584295852958629587295882958929590295912959229593295942959529596295972959829599296002960129602296032960429605296062960729608296092961029611296122961329614296152961629617296182961929620296212962229623296242962529626296272962829629296302963129632296332963429635296362963729638296392964029641296422964329644296452964629647296482964929650296512965229653296542965529656296572965829659296602966129662296632966429665296662966729668296692967029671296722967329674296752967629677296782967929680296812968229683296842968529686296872968829689296902969129692296932969429695296962969729698296992970029701297022970329704297052970629707297082970929710297112971229713297142971529716297172971829719297202972129722297232972429725297262972729728297292973029731297322973329734297352973629737297382973929740297412974229743297442974529746297472974829749297502975129752297532975429755297562975729758297592976029761297622976329764297652976629767297682976929770297712977229773297742977529776297772977829779297802978129782297832978429785297862978729788297892979029791297922979329794297952979629797297982979929800298012980229803298042980529806298072980829809298102981129812298132981429815298162981729818298192982029821298222982329824298252982629827298282982929830298312983229833298342983529836298372983829839298402984129842298432984429845298462984729848298492985029851298522985329854298552985629857298582985929860298612986229863298642986529866298672986829869298702987129872298732987429875298762987729878298792988029881298822988329884298852988629887298882988929890298912989229893298942989529896298972989829899299002990129902299032990429905299062990729908299092991029911299122991329914299152991629917299182991929920299212992229923299242992529926299272992829929299302993129932299332993429935299362993729938299392994029941299422994329944299452994629947299482994929950299512995229953299542995529956299572995829959299602996129962299632996429965299662996729968299692997029971299722997329974299752997629977299782997929980299812998229983299842998529986299872998829989299902999129992299932999429995299962999729998299993000030001300023000330004300053000630007300083000930010300113001230013300143001530016300173001830019300203002130022300233002430025300263002730028300293003030031300323003330034300353003630037300383003930040300413004230043300443004530046300473004830049300503005130052300533005430055300563005730058300593006030061300623006330064300653006630067300683006930070300713007230073300743007530076300773007830079300803008130082300833008430085300863008730088300893009030091300923009330094300953009630097300983009930100301013010230103301043010530106301073010830109301103011130112301133011430115301163011730118301193012030121301223012330124301253012630127301283012930130301313013230133301343013530136301373013830139301403014130142301433014430145301463014730148301493015030151301523015330154301553015630157301583015930160301613016230163301643016530166301673016830169301703017130172301733017430175301763017730178301793018030181301823018330184301853018630187301883018930190301913019230193301943019530196301973019830199302003020130202302033020430205302063020730208302093021030211302123021330214302153021630217302183021930220302213022230223302243022530226302273022830229302303023130232302333023430235302363023730238302393024030241302423024330244302453024630247302483024930250302513025230253302543025530256302573025830259302603026130262302633026430265302663026730268302693027030271302723027330274302753027630277302783027930280302813028230283302843028530286302873028830289302903029130292302933029430295302963029730298302993030030301303023030330304303053030630307303083030930310303113031230313303143031530316303173031830319303203032130322303233032430325303263032730328303293033030331303323033330334303353033630337303383033930340303413034230343303443034530346303473034830349303503035130352303533035430355303563035730358303593036030361303623036330364303653036630367303683036930370303713037230373303743037530376303773037830379303803038130382303833038430385303863038730388303893039030391303923039330394303953039630397303983039930400304013040230403304043040530406304073040830409304103041130412304133041430415304163041730418304193042030421304223042330424304253042630427304283042930430304313043230433304343043530436304373043830439304403044130442304433044430445304463044730448304493045030451304523045330454304553045630457304583045930460304613046230463304643046530466304673046830469304703047130472304733047430475304763047730478304793048030481304823048330484304853048630487304883048930490304913049230493304943049530496304973049830499305003050130502305033050430505305063050730508305093051030511305123051330514305153051630517305183051930520305213052230523305243052530526305273052830529305303053130532305333053430535305363053730538305393054030541305423054330544305453054630547305483054930550305513055230553305543055530556305573055830559305603056130562305633056430565305663056730568305693057030571305723057330574305753057630577305783057930580305813058230583305843058530586305873058830589305903059130592305933059430595305963059730598305993060030601306023060330604306053060630607306083060930610306113061230613306143061530616306173061830619306203062130622306233062430625306263062730628306293063030631306323063330634306353063630637306383063930640306413064230643306443064530646306473064830649306503065130652306533065430655306563065730658306593066030661306623066330664306653066630667306683066930670306713067230673306743067530676306773067830679306803068130682306833068430685306863068730688306893069030691306923069330694306953069630697306983069930700307013070230703307043070530706307073070830709307103071130712307133071430715307163071730718307193072030721307223072330724307253072630727307283072930730307313073230733307343073530736307373073830739307403074130742307433074430745307463074730748307493075030751307523075330754307553075630757307583075930760307613076230763307643076530766307673076830769307703077130772307733077430775307763077730778307793078030781307823078330784307853078630787307883078930790307913079230793307943079530796307973079830799308003080130802308033080430805308063080730808308093081030811308123081330814308153081630817308183081930820308213082230823308243082530826308273082830829308303083130832308333083430835308363083730838308393084030841308423084330844308453084630847308483084930850308513085230853308543085530856308573085830859308603086130862308633086430865308663086730868308693087030871308723087330874308753087630877308783087930880308813088230883308843088530886308873088830889308903089130892308933089430895308963089730898308993090030901309023090330904309053090630907309083090930910309113091230913309143091530916309173091830919309203092130922309233092430925309263092730928309293093030931309323093330934309353093630937309383093930940309413094230943309443094530946309473094830949309503095130952309533095430955309563095730958309593096030961309623096330964309653096630967309683096930970309713097230973309743097530976309773097830979309803098130982309833098430985309863098730988309893099030991309923099330994309953099630997309983099931000310013100231003310043100531006310073100831009310103101131012310133101431015310163101731018310193102031021310223102331024310253102631027310283102931030310313103231033310343103531036310373103831039310403104131042310433104431045310463104731048310493105031051310523105331054310553105631057310583105931060310613106231063310643106531066310673106831069310703107131072310733107431075310763107731078310793108031081310823108331084310853108631087310883108931090310913109231093310943109531096310973109831099311003110131102311033110431105311063110731108311093111031111311123111331114311153111631117311183111931120311213112231123311243112531126311273112831129311303113131132311333113431135311363113731138311393114031141311423114331144311453114631147311483114931150311513115231153311543115531156311573115831159311603116131162311633116431165311663116731168311693117031171311723117331174311753117631177311783117931180311813118231183311843118531186311873118831189311903119131192311933119431195311963119731198311993120031201312023120331204312053120631207312083120931210312113121231213312143121531216312173121831219312203122131222312233122431225312263122731228312293123031231312323123331234312353123631237312383123931240312413124231243312443124531246312473124831249312503125131252312533125431255312563125731258312593126031261312623126331264312653126631267312683126931270312713127231273312743127531276312773127831279312803128131282312833128431285312863128731288312893129031291312923129331294312953129631297312983129931300313013130231303313043130531306313073130831309313103131131312313133131431315313163131731318313193132031321313223132331324313253132631327313283132931330313313133231333313343133531336313373133831339313403134131342313433134431345313463134731348313493135031351313523135331354313553135631357313583135931360313613136231363313643136531366313673136831369313703137131372313733137431375313763137731378313793138031381313823138331384313853138631387313883138931390313913139231393313943139531396313973139831399314003140131402314033140431405314063140731408314093141031411314123141331414314153141631417314183141931420314213142231423314243142531426314273142831429314303143131432314333143431435314363143731438314393144031441314423144331444314453144631447314483144931450314513145231453314543145531456314573145831459314603146131462314633146431465314663146731468314693147031471314723147331474314753147631477314783147931480314813148231483314843148531486314873148831489314903149131492314933149431495314963149731498314993150031501315023150331504315053150631507315083150931510315113151231513315143151531516315173151831519315203152131522315233152431525315263152731528315293153031531315323153331534315353153631537315383153931540315413154231543315443154531546315473154831549315503155131552315533155431555315563155731558315593156031561315623156331564315653156631567315683156931570315713157231573315743157531576315773157831579315803158131582315833158431585315863158731588315893159031591315923159331594315953159631597315983159931600316013160231603316043160531606316073160831609316103161131612316133161431615316163161731618316193162031621316223162331624316253162631627316283162931630316313163231633316343163531636316373163831639316403164131642316433164431645316463164731648316493165031651316523165331654316553165631657316583165931660316613166231663316643166531666316673166831669316703167131672316733167431675316763167731678316793168031681316823168331684316853168631687316883168931690316913169231693316943169531696316973169831699317003170131702317033170431705317063170731708317093171031711317123171331714317153171631717317183171931720317213172231723317243172531726317273172831729317303173131732317333173431735317363173731738317393174031741317423174331744317453174631747317483174931750317513175231753317543175531756317573175831759317603176131762317633176431765317663176731768317693177031771317723177331774317753177631777317783177931780317813178231783317843178531786317873178831789317903179131792317933179431795317963179731798317993180031801318023180331804318053180631807318083180931810318113181231813318143181531816318173181831819318203182131822318233182431825318263182731828318293183031831318323183331834318353183631837318383183931840318413184231843318443184531846318473184831849318503185131852318533185431855318563185731858318593186031861318623186331864318653186631867318683186931870318713187231873318743187531876318773187831879318803188131882318833188431885318863188731888318893189031891318923189331894318953189631897318983189931900319013190231903319043190531906319073190831909319103191131912319133191431915319163191731918319193192031921319223192331924319253192631927319283192931930319313193231933319343193531936319373193831939319403194131942319433194431945319463194731948319493195031951319523195331954319553195631957319583195931960319613196231963319643196531966319673196831969319703197131972319733197431975319763197731978319793198031981319823198331984319853198631987319883198931990319913199231993319943199531996319973199831999320003200132002320033200432005320063200732008320093201032011320123201332014320153201632017320183201932020320213202232023320243202532026320273202832029320303203132032320333203432035320363203732038320393204032041320423204332044320453204632047320483204932050320513205232053320543205532056320573205832059320603206132062320633206432065320663206732068320693207032071320723207332074320753207632077320783207932080320813208232083320843208532086320873208832089320903209132092320933209432095320963209732098320993210032101321023210332104321053210632107321083210932110321113211232113321143211532116321173211832119321203212132122321233212432125321263212732128321293213032131321323213332134321353213632137321383213932140321413214232143321443214532146321473214832149321503215132152321533215432155321563215732158321593216032161321623216332164321653216632167321683216932170321713217232173321743217532176321773217832179321803218132182321833218432185321863218732188321893219032191321923219332194321953219632197321983219932200322013220232203322043220532206322073220832209322103221132212322133221432215322163221732218322193222032221322223222332224322253222632227322283222932230322313223232233322343223532236322373223832239322403224132242322433224432245322463224732248322493225032251322523225332254322553225632257322583225932260322613226232263322643226532266322673226832269322703227132272322733227432275322763227732278322793228032281322823228332284322853228632287322883228932290322913229232293322943229532296322973229832299323003230132302323033230432305323063230732308323093231032311323123231332314323153231632317323183231932320323213232232323323243232532326323273232832329323303233132332323333233432335323363233732338323393234032341323423234332344323453234632347323483234932350323513235232353323543235532356323573235832359323603236132362323633236432365323663236732368323693237032371323723237332374323753237632377323783237932380323813238232383323843238532386323873238832389323903239132392323933239432395323963239732398323993240032401324023240332404324053240632407324083240932410324113241232413324143241532416324173241832419324203242132422324233242432425324263242732428324293243032431324323243332434324353243632437324383243932440324413244232443324443244532446324473244832449324503245132452324533245432455324563245732458324593246032461324623246332464324653246632467324683246932470324713247232473324743247532476324773247832479324803248132482324833248432485324863248732488324893249032491324923249332494324953249632497324983249932500325013250232503325043250532506325073250832509325103251132512325133251432515325163251732518325193252032521325223252332524325253252632527325283252932530325313253232533325343253532536325373253832539325403254132542325433254432545325463254732548325493255032551325523255332554325553255632557325583255932560325613256232563325643256532566325673256832569325703257132572325733257432575325763257732578325793258032581325823258332584325853258632587325883258932590325913259232593325943259532596325973259832599326003260132602326033260432605326063260732608326093261032611326123261332614326153261632617326183261932620326213262232623326243262532626326273262832629326303263132632326333263432635326363263732638326393264032641326423264332644326453264632647326483264932650326513265232653326543265532656326573265832659326603266132662326633266432665326663266732668326693267032671326723267332674326753267632677326783267932680326813268232683326843268532686326873268832689326903269132692326933269432695326963269732698326993270032701327023270332704327053270632707327083270932710327113271232713327143271532716327173271832719327203272132722327233272432725327263272732728327293273032731327323273332734327353273632737327383273932740327413274232743327443274532746327473274832749327503275132752327533275432755327563275732758327593276032761327623276332764327653276632767327683276932770327713277232773327743277532776327773277832779327803278132782327833278432785327863278732788327893279032791327923279332794327953279632797327983279932800328013280232803328043280532806328073280832809328103281132812328133281432815328163281732818328193282032821328223282332824328253282632827328283282932830328313283232833328343283532836328373283832839328403284132842328433284432845328463284732848328493285032851328523285332854328553285632857328583285932860328613286232863328643286532866328673286832869328703287132872328733287432875328763287732878328793288032881328823288332884328853288632887328883288932890328913289232893328943289532896328973289832899329003290132902329033290432905329063290732908329093291032911329123291332914329153291632917329183291932920329213292232923329243292532926329273292832929329303293132932329333293432935329363293732938329393294032941329423294332944329453294632947329483294932950329513295232953329543295532956329573295832959329603296132962329633296432965329663296732968329693297032971329723297332974329753297632977329783297932980329813298232983329843298532986329873298832989329903299132992329933299432995329963299732998329993300033001330023300333004330053300633007330083300933010330113301233013330143301533016330173301833019330203302133022330233302433025330263302733028330293303033031330323303333034330353303633037330383303933040330413304233043330443304533046330473304833049330503305133052330533305433055330563305733058330593306033061330623306333064330653306633067330683306933070330713307233073330743307533076330773307833079330803308133082330833308433085330863308733088330893309033091330923309333094330953309633097330983309933100331013310233103331043310533106331073310833109331103311133112331133311433115331163311733118331193312033121331223312333124331253312633127331283312933130331313313233133331343313533136331373313833139331403314133142331433314433145331463314733148331493315033151331523315333154331553315633157331583315933160331613316233163331643316533166331673316833169331703317133172331733317433175331763317733178331793318033181331823318333184331853318633187331883318933190331913319233193331943319533196331973319833199332003320133202332033320433205332063320733208332093321033211332123321333214332153321633217332183321933220332213322233223332243322533226332273322833229332303323133232332333323433235332363323733238332393324033241332423324333244332453324633247332483324933250332513325233253332543325533256332573325833259332603326133262332633326433265332663326733268332693327033271332723327333274332753327633277332783327933280332813328233283332843328533286332873328833289332903329133292332933329433295332963329733298332993330033301333023330333304333053330633307333083330933310333113331233313333143331533316333173331833319333203332133322333233332433325333263332733328333293333033331333323333333334333353333633337333383333933340333413334233343333443334533346333473334833349333503335133352333533335433355333563335733358333593336033361333623336333364333653336633367333683336933370333713337233373333743337533376333773337833379333803338133382333833338433385333863338733388333893339033391333923339333394333953339633397333983339933400334013340233403334043340533406334073340833409334103341133412334133341433415334163341733418334193342033421334223342333424334253342633427334283342933430334313343233433334343343533436334373343833439334403344133442334433344433445334463344733448334493345033451334523345333454334553345633457334583345933460334613346233463334643346533466334673346833469334703347133472334733347433475334763347733478334793348033481334823348333484334853348633487334883348933490334913349233493334943349533496334973349833499335003350133502335033350433505335063350733508335093351033511335123351333514335153351633517335183351933520335213352233523335243352533526335273352833529335303353133532335333353433535335363353733538335393354033541335423354333544335453354633547335483354933550335513355233553335543355533556335573355833559335603356133562335633356433565335663356733568335693357033571335723357333574335753357633577335783357933580335813358233583335843358533586335873358833589335903359133592335933359433595335963359733598335993360033601336023360333604336053360633607336083360933610336113361233613336143361533616336173361833619336203362133622336233362433625336263362733628336293363033631336323363333634336353363633637336383363933640336413364233643336443364533646336473364833649336503365133652336533365433655336563365733658336593366033661336623366333664336653366633667336683366933670336713367233673336743367533676336773367833679336803368133682336833368433685336863368733688336893369033691336923369333694336953369633697336983369933700337013370233703337043370533706337073370833709337103371133712337133371433715337163371733718337193372033721337223372333724337253372633727337283372933730337313373233733337343373533736337373373833739337403374133742337433374433745337463374733748337493375033751337523375333754337553375633757337583375933760337613376233763337643376533766337673376833769337703377133772337733377433775337763377733778337793378033781337823378333784337853378633787337883378933790337913379233793337943379533796337973379833799338003380133802338033380433805338063380733808338093381033811338123381333814338153381633817338183381933820338213382233823338243382533826338273382833829338303383133832338333383433835338363383733838338393384033841338423384333844338453384633847338483384933850338513385233853338543385533856338573385833859338603386133862338633386433865338663386733868338693387033871338723387333874338753387633877338783387933880338813388233883338843388533886338873388833889338903389133892338933389433895338963389733898338993390033901339023390333904339053390633907339083390933910339113391233913339143391533916339173391833919339203392133922339233392433925339263392733928339293393033931339323393333934339353393633937339383393933940339413394233943339443394533946339473394833949339503395133952339533395433955339563395733958339593396033961339623396333964339653396633967339683396933970339713397233973339743397533976339773397833979339803398133982339833398433985339863398733988339893399033991339923399333994339953399633997339983399934000340013400234003340043400534006340073400834009340103401134012340133401434015340163401734018340193402034021340223402334024340253402634027340283402934030340313403234033340343403534036340373403834039340403404134042340433404434045340463404734048340493405034051340523405334054340553405634057340583405934060340613406234063340643406534066340673406834069340703407134072340733407434075340763407734078340793408034081340823408334084340853408634087340883408934090340913409234093340943409534096340973409834099341003410134102341033410434105341063410734108341093411034111341123411334114341153411634117341183411934120341213412234123341243412534126341273412834129341303413134132341333413434135341363413734138341393414034141341423414334144341453414634147341483414934150341513415234153341543415534156341573415834159341603416134162341633416434165341663416734168341693417034171341723417334174341753417634177341783417934180341813418234183341843418534186341873418834189341903419134192341933419434195341963419734198341993420034201342023420334204342053420634207342083420934210342113421234213342143421534216342173421834219342203422134222342233422434225342263422734228342293423034231342323423334234342353423634237342383423934240342413424234243342443424534246342473424834249342503425134252342533425434255342563425734258342593426034261342623426334264342653426634267342683426934270342713427234273342743427534276342773427834279342803428134282342833428434285342863428734288342893429034291342923429334294342953429634297342983429934300343013430234303343043430534306343073430834309343103431134312343133431434315343163431734318343193432034321343223432334324343253432634327343283432934330343313433234333343343433534336343373433834339343403434134342343433434434345343463434734348343493435034351343523435334354343553435634357343583435934360343613436234363343643436534366343673436834369343703437134372343733437434375343763437734378343793438034381343823438334384343853438634387343883438934390343913439234393343943439534396343973439834399344003440134402344033440434405344063440734408344093441034411344123441334414344153441634417344183441934420344213442234423344243442534426344273442834429344303443134432344333443434435344363443734438344393444034441344423444334444344453444634447344483444934450344513445234453344543445534456344573445834459344603446134462344633446434465344663446734468344693447034471344723447334474344753447634477344783447934480344813448234483344843448534486344873448834489344903449134492344933449434495344963449734498344993450034501345023450334504345053450634507345083450934510345113451234513345143451534516345173451834519345203452134522345233452434525345263452734528345293453034531345323453334534345353453634537345383453934540345413454234543345443454534546345473454834549345503455134552345533455434555345563455734558345593456034561345623456334564345653456634567345683456934570345713457234573345743457534576345773457834579345803458134582345833458434585345863458734588345893459034591345923459334594345953459634597345983459934600346013460234603346043460534606346073460834609346103461134612346133461434615346163461734618346193462034621346223462334624346253462634627346283462934630346313463234633346343463534636346373463834639346403464134642346433464434645346463464734648346493465034651346523465334654346553465634657346583465934660346613466234663346643466534666346673466834669346703467134672346733467434675346763467734678346793468034681346823468334684346853468634687346883468934690346913469234693346943469534696346973469834699347003470134702347033470434705347063470734708347093471034711347123471334714347153471634717347183471934720347213472234723347243472534726347273472834729347303473134732347333473434735347363473734738347393474034741347423474334744347453474634747347483474934750347513475234753347543475534756347573475834759347603476134762347633476434765347663476734768347693477034771347723477334774347753477634777347783477934780347813478234783347843478534786347873478834789347903479134792347933479434795347963479734798347993480034801348023480334804348053480634807348083480934810348113481234813348143481534816348173481834819348203482134822348233482434825348263482734828348293483034831348323483334834348353483634837348383483934840348413484234843348443484534846348473484834849348503485134852348533485434855348563485734858348593486034861348623486334864348653486634867348683486934870348713487234873348743487534876348773487834879348803488134882348833488434885348863488734888348893489034891348923489334894348953489634897348983489934900349013490234903349043490534906349073490834909349103491134912349133491434915349163491734918349193492034921349223492334924349253492634927349283492934930349313493234933349343493534936349373493834939349403494134942349433494434945349463494734948349493495034951349523495334954349553495634957349583495934960349613496234963349643496534966349673496834969349703497134972349733497434975349763497734978349793498034981349823498334984349853498634987349883498934990349913499234993349943499534996349973499834999350003500135002350033500435005350063500735008350093501035011350123501335014350153501635017350183501935020350213502235023350243502535026350273502835029350303503135032350333503435035350363503735038350393504035041350423504335044350453504635047350483504935050350513505235053350543505535056350573505835059350603506135062350633506435065350663506735068350693507035071350723507335074350753507635077350783507935080350813508235083350843508535086350873508835089350903509135092350933509435095350963509735098350993510035101351023510335104351053510635107351083510935110351113511235113351143511535116351173511835119351203512135122351233512435125351263512735128351293513035131351323513335134351353513635137351383513935140351413514235143351443514535146351473514835149351503515135152351533515435155351563515735158351593516035161351623516335164351653516635167351683516935170351713517235173351743517535176351773517835179351803518135182351833518435185351863518735188351893519035191351923519335194351953519635197351983519935200352013520235203352043520535206352073520835209352103521135212352133521435215352163521735218352193522035221352223522335224352253522635227352283522935230352313523235233352343523535236352373523835239352403524135242352433524435245352463524735248352493525035251352523525335254352553525635257352583525935260352613526235263352643526535266352673526835269352703527135272352733527435275352763527735278352793528035281352823528335284352853528635287352883528935290352913529235293352943529535296352973529835299353003530135302353033530435305353063530735308353093531035311353123531335314353153531635317353183531935320353213532235323353243532535326353273532835329353303533135332353333533435335353363533735338353393534035341353423534335344353453534635347353483534935350353513535235353353543535535356353573535835359353603536135362353633536435365353663536735368353693537035371353723537335374353753537635377353783537935380353813538235383353843538535386353873538835389353903539135392353933539435395353963539735398353993540035401354023540335404354053540635407354083540935410354113541235413354143541535416354173541835419354203542135422354233542435425354263542735428354293543035431354323543335434354353543635437354383543935440354413544235443354443544535446354473544835449354503545135452354533545435455354563545735458354593546035461354623546335464354653546635467354683546935470354713547235473354743547535476354773547835479354803548135482354833548435485354863548735488354893549035491354923549335494354953549635497354983549935500355013550235503355043550535506355073550835509355103551135512355133551435515355163551735518355193552035521355223552335524355253552635527355283552935530355313553235533355343553535536355373553835539355403554135542355433554435545355463554735548355493555035551355523555335554355553555635557355583555935560355613556235563355643556535566355673556835569355703557135572355733557435575355763557735578355793558035581355823558335584355853558635587355883558935590355913559235593355943559535596355973559835599356003560135602356033560435605356063560735608356093561035611356123561335614356153561635617356183561935620356213562235623356243562535626356273562835629356303563135632356333563435635356363563735638356393564035641356423564335644356453564635647356483564935650356513565235653356543565535656356573565835659356603566135662356633566435665356663566735668356693567035671356723567335674356753567635677356783567935680356813568235683356843568535686356873568835689356903569135692356933569435695356963569735698356993570035701357023570335704357053570635707357083570935710357113571235713357143571535716357173571835719357203572135722357233572435725357263572735728357293573035731357323573335734357353573635737357383573935740357413574235743357443574535746357473574835749357503575135752357533575435755357563575735758357593576035761357623576335764357653576635767357683576935770357713577235773357743577535776357773577835779357803578135782357833578435785357863578735788357893579035791357923579335794357953579635797357983579935800358013580235803358043580535806358073580835809358103581135812358133581435815358163581735818358193582035821358223582335824358253582635827358283582935830358313583235833358343583535836358373583835839358403584135842358433584435845358463584735848358493585035851358523585335854358553585635857358583585935860358613586235863358643586535866358673586835869358703587135872358733587435875358763587735878358793588035881358823588335884358853588635887358883588935890358913589235893358943589535896358973589835899359003590135902359033590435905359063590735908359093591035911359123591335914359153591635917359183591935920359213592235923359243592535926359273592835929359303593135932359333593435935359363593735938359393594035941359423594335944359453594635947359483594935950359513595235953359543595535956359573595835959359603596135962359633596435965359663596735968359693597035971359723597335974359753597635977359783597935980359813598235983359843598535986359873598835989359903599135992359933599435995359963599735998359993600036001360023600336004360053600636007360083600936010360113601236013360143601536016360173601836019360203602136022360233602436025360263602736028360293603036031360323603336034360353603636037360383603936040360413604236043360443604536046360473604836049360503605136052360533605436055360563605736058360593606036061360623606336064360653606636067360683606936070360713607236073360743607536076360773607836079360803608136082360833608436085360863608736088360893609036091360923609336094360953609636097360983609936100361013610236103361043610536106361073610836109361103611136112361133611436115361163611736118361193612036121361223612336124361253612636127361283612936130361313613236133361343613536136361373613836139361403614136142361433614436145361463614736148361493615036151361523615336154361553615636157361583615936160361613616236163361643616536166361673616836169361703617136172361733617436175361763617736178361793618036181361823618336184361853618636187361883618936190361913619236193361943619536196361973619836199362003620136202362033620436205362063620736208362093621036211362123621336214362153621636217362183621936220362213622236223362243622536226362273622836229362303623136232362333623436235362363623736238362393624036241362423624336244362453624636247362483624936250362513625236253362543625536256362573625836259362603626136262362633626436265362663626736268362693627036271362723627336274362753627636277362783627936280362813628236283362843628536286362873628836289362903629136292362933629436295362963629736298362993630036301363023630336304363053630636307363083630936310363113631236313363143631536316363173631836319363203632136322363233632436325363263632736328363293633036331363323633336334363353633636337363383633936340363413634236343363443634536346363473634836349363503635136352363533635436355363563635736358363593636036361363623636336364363653636636367363683636936370363713637236373363743637536376363773637836379363803638136382363833638436385363863638736388363893639036391363923639336394363953639636397363983639936400364013640236403364043640536406364073640836409364103641136412364133641436415364163641736418364193642036421364223642336424364253642636427364283642936430364313643236433364343643536436364373643836439364403644136442364433644436445364463644736448364493645036451364523645336454364553645636457364583645936460364613646236463364643646536466364673646836469364703647136472364733647436475364763647736478364793648036481364823648336484364853648636487364883648936490364913649236493364943649536496364973649836499365003650136502365033650436505365063650736508365093651036511365123651336514365153651636517365183651936520365213652236523365243652536526365273652836529365303653136532365333653436535365363653736538365393654036541365423654336544365453654636547365483654936550365513655236553365543655536556365573655836559365603656136562365633656436565365663656736568365693657036571365723657336574365753657636577365783657936580365813658236583365843658536586365873658836589365903659136592365933659436595365963659736598365993660036601366023660336604366053660636607366083660936610366113661236613366143661536616366173661836619366203662136622366233662436625366263662736628366293663036631366323663336634366353663636637366383663936640366413664236643366443664536646366473664836649366503665136652366533665436655366563665736658366593666036661366623666336664366653666636667366683666936670366713667236673366743667536676366773667836679366803668136682366833668436685366863668736688366893669036691366923669336694366953669636697366983669936700367013670236703367043670536706367073670836709367103671136712367133671436715367163671736718367193672036721367223672336724367253672636727367283672936730367313673236733367343673536736367373673836739367403674136742367433674436745367463674736748367493675036751367523675336754367553675636757367583675936760367613676236763367643676536766367673676836769367703677136772367733677436775367763677736778367793678036781367823678336784367853678636787367883678936790367913679236793367943679536796367973679836799368003680136802368033680436805368063680736808368093681036811368123681336814368153681636817368183681936820368213682236823368243682536826368273682836829368303683136832368333683436835368363683736838368393684036841368423684336844368453684636847368483684936850368513685236853368543685536856368573685836859368603686136862368633686436865368663686736868368693687036871368723687336874368753687636877368783687936880368813688236883368843688536886368873688836889368903689136892368933689436895368963689736898368993690036901369023690336904369053690636907369083690936910369113691236913369143691536916369173691836919369203692136922369233692436925369263692736928369293693036931369323693336934369353693636937369383693936940369413694236943369443694536946369473694836949369503695136952369533695436955369563695736958369593696036961369623696336964369653696636967369683696936970369713697236973369743697536976369773697836979369803698136982369833698436985369863698736988369893699036991369923699336994369953699636997369983699937000370013700237003370043700537006370073700837009370103701137012370133701437015370163701737018370193702037021370223702337024370253702637027370283702937030370313703237033370343703537036370373703837039370403704137042370433704437045370463704737048370493705037051370523705337054370553705637057370583705937060370613706237063370643706537066370673706837069370703707137072370733707437075370763707737078370793708037081370823708337084370853708637087370883708937090370913709237093370943709537096370973709837099371003710137102371033710437105371063710737108371093711037111371123711337114371153711637117371183711937120371213712237123371243712537126371273712837129371303713137132371333713437135371363713737138371393714037141371423714337144371453714637147371483714937150371513715237153371543715537156371573715837159371603716137162371633716437165371663716737168371693717037171371723717337174371753717637177371783717937180371813718237183371843718537186371873718837189371903719137192371933719437195371963719737198371993720037201372023720337204372053720637207372083720937210372113721237213372143721537216372173721837219372203722137222372233722437225372263722737228372293723037231372323723337234372353723637237372383723937240372413724237243372443724537246372473724837249372503725137252372533725437255372563725737258372593726037261372623726337264372653726637267372683726937270372713727237273372743727537276372773727837279372803728137282372833728437285372863728737288372893729037291372923729337294372953729637297372983729937300373013730237303373043730537306373073730837309373103731137312373133731437315373163731737318373193732037321373223732337324373253732637327373283732937330373313733237333373343733537336373373733837339373403734137342373433734437345373463734737348373493735037351373523735337354373553735637357373583735937360373613736237363373643736537366373673736837369373703737137372373733737437375373763737737378373793738037381373823738337384373853738637387373883738937390373913739237393373943739537396373973739837399374003740137402374033740437405374063740737408374093741037411374123741337414374153741637417374183741937420374213742237423374243742537426374273742837429374303743137432374333743437435374363743737438374393744037441374423744337444374453744637447374483744937450374513745237453374543745537456374573745837459374603746137462374633746437465374663746737468374693747037471374723747337474374753747637477374783747937480374813748237483374843748537486374873748837489374903749137492374933749437495374963749737498374993750037501375023750337504375053750637507375083750937510375113751237513375143751537516375173751837519375203752137522375233752437525375263752737528375293753037531375323753337534375353753637537375383753937540375413754237543375443754537546375473754837549375503755137552375533755437555375563755737558375593756037561375623756337564375653756637567375683756937570375713757237573375743757537576375773757837579375803758137582375833758437585375863758737588375893759037591375923759337594375953759637597375983759937600376013760237603376043760537606376073760837609376103761137612376133761437615376163761737618376193762037621376223762337624376253762637627376283762937630376313763237633376343763537636376373763837639376403764137642376433764437645376463764737648376493765037651376523765337654376553765637657376583765937660376613766237663376643766537666376673766837669376703767137672376733767437675376763767737678376793768037681376823768337684376853768637687376883768937690376913769237693376943769537696376973769837699377003770137702377033770437705377063770737708377093771037711377123771337714377153771637717377183771937720377213772237723377243772537726377273772837729377303773137732377333773437735377363773737738377393774037741377423774337744377453774637747377483774937750377513775237753377543775537756377573775837759377603776137762377633776437765377663776737768377693777037771377723777337774377753777637777377783777937780377813778237783377843778537786377873778837789377903779137792377933779437795377963779737798377993780037801378023780337804378053780637807378083780937810378113781237813378143781537816378173781837819378203782137822378233782437825378263782737828378293783037831378323783337834378353783637837378383783937840378413784237843378443784537846378473784837849378503785137852378533785437855378563785737858378593786037861378623786337864378653786637867378683786937870378713787237873378743787537876378773787837879378803788137882378833788437885378863788737888378893789037891378923789337894378953789637897378983789937900379013790237903379043790537906379073790837909379103791137912379133791437915379163791737918379193792037921379223792337924379253792637927379283792937930379313793237933379343793537936379373793837939379403794137942379433794437945379463794737948379493795037951379523795337954379553795637957379583795937960379613796237963379643796537966379673796837969379703797137972379733797437975379763797737978379793798037981379823798337984379853798637987379883798937990379913799237993379943799537996379973799837999380003800138002380033800438005380063800738008380093801038011380123801338014380153801638017380183801938020380213802238023380243802538026380273802838029380303803138032380333803438035380363803738038380393804038041380423804338044380453804638047380483804938050380513805238053380543805538056
  1. (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/vendor"],[
  2. /* 0 */,
  3. /* 1 */
  4. /*!************************************************************!*\
  5. !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js ***!
  6. \************************************************************/
  7. /*! no static exports found */
  8. /***/ (function(module, exports, __webpack_require__) {
  9. "use strict";
  10. /* WEBPACK VAR INJECTION */(function(global) {Object.defineProperty(exports, "__esModule", { value: true });exports.createApp = createApp;exports.createComponent = createComponent;exports.createPage = createPage;exports.createPlugin = createPlugin;exports.createSubpackageApp = createSubpackageApp;exports.default = void 0;var _uniI18n = __webpack_require__(/*! @dcloudio/uni-i18n */ 3);
  11. var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 4));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function ownKeys(object, enumerableOnly) {var keys = Object.keys(object);if (Object.getOwnPropertySymbols) {var symbols = Object.getOwnPropertySymbols(object);if (enumerableOnly) symbols = symbols.filter(function (sym) {return Object.getOwnPropertyDescriptor(object, sym).enumerable;});keys.push.apply(keys, symbols);}return keys;}function _objectSpread(target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i] != null ? arguments[i] : {};if (i % 2) {ownKeys(Object(source), true).forEach(function (key) {_defineProperty(target, key, source[key]);});} else if (Object.getOwnPropertyDescriptors) {Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));} else {ownKeys(Object(source)).forEach(function (key) {Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));});}}return target;}function _slicedToArray(arr, i) {return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();}function _nonIterableRest() {throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArrayLimit(arr, i) {if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"] != null) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}function _arrayWithHoles(arr) {if (Array.isArray(arr)) return arr;}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _toConsumableArray(arr) {return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();}function _nonIterableSpread() {throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o, minLen) {if (!o) return;if (typeof o === "string") return _arrayLikeToArray(o, minLen);var n = Object.prototype.toString.call(o).slice(8, -1);if (n === "Object" && o.constructor) n = o.constructor.name;if (n === "Map" || n === "Set") return Array.from(o);if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);}function _iterableToArray(iter) {if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);}function _arrayWithoutHoles(arr) {if (Array.isArray(arr)) return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr, len) {if (len == null || len > arr.length) len = arr.length;for (var i = 0, arr2 = new Array(len); i < len; i++) {arr2[i] = arr[i];}return arr2;}
  12. var realAtob;
  13. var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
  14. var b64re = /^(?:[A-Za-z\d+/]{4})*?(?:[A-Za-z\d+/]{2}(?:==)?|[A-Za-z\d+/]{3}=?)?$/;
  15. if (typeof atob !== 'function') {
  16. realAtob = function realAtob(str) {
  17. str = String(str).replace(/[\t\n\f\r ]+/g, '');
  18. if (!b64re.test(str)) {throw new Error("Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.");}
  19. // Adding the padding if missing, for semplicity
  20. str += '=='.slice(2 - (str.length & 3));
  21. var bitmap;var result = '';var r1;var r2;var i = 0;
  22. for (; i < str.length;) {
  23. bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 |
  24. (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));
  25. result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255) :
  26. r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255) :
  27. String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);
  28. }
  29. return result;
  30. };
  31. } else {
  32. // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法
  33. realAtob = atob;
  34. }
  35. function b64DecodeUnicode(str) {
  36. return decodeURIComponent(realAtob(str).split('').map(function (c) {
  37. return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
  38. }).join(''));
  39. }
  40. function getCurrentUserInfo() {
  41. var token = wx.getStorageSync('uni_id_token') || '';
  42. var tokenArr = token.split('.');
  43. if (!token || tokenArr.length !== 3) {
  44. return {
  45. uid: null,
  46. role: [],
  47. permission: [],
  48. tokenExpired: 0 };
  49. }
  50. var userInfo;
  51. try {
  52. userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));
  53. } catch (error) {
  54. throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message);
  55. }
  56. userInfo.tokenExpired = userInfo.exp * 1000;
  57. delete userInfo.exp;
  58. delete userInfo.iat;
  59. return userInfo;
  60. }
  61. function uniIdMixin(Vue) {
  62. Vue.prototype.uniIDHasRole = function (roleId) {var _getCurrentUserInfo =
  63. getCurrentUserInfo(),role = _getCurrentUserInfo.role;
  64. return role.indexOf(roleId) > -1;
  65. };
  66. Vue.prototype.uniIDHasPermission = function (permissionId) {var _getCurrentUserInfo2 =
  67. getCurrentUserInfo(),permission = _getCurrentUserInfo2.permission;
  68. return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1;
  69. };
  70. Vue.prototype.uniIDTokenValid = function () {var _getCurrentUserInfo3 =
  71. getCurrentUserInfo(),tokenExpired = _getCurrentUserInfo3.tokenExpired;
  72. return tokenExpired > Date.now();
  73. };
  74. }
  75. var _toString = Object.prototype.toString;
  76. var hasOwnProperty = Object.prototype.hasOwnProperty;
  77. function isFn(fn) {
  78. return typeof fn === 'function';
  79. }
  80. function isStr(str) {
  81. return typeof str === 'string';
  82. }
  83. function isPlainObject(obj) {
  84. return _toString.call(obj) === '[object Object]';
  85. }
  86. function hasOwn(obj, key) {
  87. return hasOwnProperty.call(obj, key);
  88. }
  89. function noop() {}
  90. /**
  91. * Create a cached version of a pure function.
  92. */
  93. function cached(fn) {
  94. var cache = Object.create(null);
  95. return function cachedFn(str) {
  96. var hit = cache[str];
  97. return hit || (cache[str] = fn(str));
  98. };
  99. }
  100. /**
  101. * Camelize a hyphen-delimited string.
  102. */
  103. var camelizeRE = /-(\w)/g;
  104. var camelize = cached(function (str) {
  105. return str.replace(camelizeRE, function (_, c) {return c ? c.toUpperCase() : '';});
  106. });
  107. function sortObject(obj) {
  108. var sortObj = {};
  109. if (isPlainObject(obj)) {
  110. Object.keys(obj).sort().forEach(function (key) {
  111. sortObj[key] = obj[key];
  112. });
  113. }
  114. return !Object.keys(sortObj) ? obj : sortObj;
  115. }
  116. var HOOKS = [
  117. 'invoke',
  118. 'success',
  119. 'fail',
  120. 'complete',
  121. 'returnValue'];
  122. var globalInterceptors = {};
  123. var scopedInterceptors = {};
  124. function mergeHook(parentVal, childVal) {
  125. var res = childVal ?
  126. parentVal ?
  127. parentVal.concat(childVal) :
  128. Array.isArray(childVal) ?
  129. childVal : [childVal] :
  130. parentVal;
  131. return res ?
  132. dedupeHooks(res) :
  133. res;
  134. }
  135. function dedupeHooks(hooks) {
  136. var res = [];
  137. for (var i = 0; i < hooks.length; i++) {
  138. if (res.indexOf(hooks[i]) === -1) {
  139. res.push(hooks[i]);
  140. }
  141. }
  142. return res;
  143. }
  144. function removeHook(hooks, hook) {
  145. var index = hooks.indexOf(hook);
  146. if (index !== -1) {
  147. hooks.splice(index, 1);
  148. }
  149. }
  150. function mergeInterceptorHook(interceptor, option) {
  151. Object.keys(option).forEach(function (hook) {
  152. if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
  153. interceptor[hook] = mergeHook(interceptor[hook], option[hook]);
  154. }
  155. });
  156. }
  157. function removeInterceptorHook(interceptor, option) {
  158. if (!interceptor || !option) {
  159. return;
  160. }
  161. Object.keys(option).forEach(function (hook) {
  162. if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
  163. removeHook(interceptor[hook], option[hook]);
  164. }
  165. });
  166. }
  167. function addInterceptor(method, option) {
  168. if (typeof method === 'string' && isPlainObject(option)) {
  169. mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);
  170. } else if (isPlainObject(method)) {
  171. mergeInterceptorHook(globalInterceptors, method);
  172. }
  173. }
  174. function removeInterceptor(method, option) {
  175. if (typeof method === 'string') {
  176. if (isPlainObject(option)) {
  177. removeInterceptorHook(scopedInterceptors[method], option);
  178. } else {
  179. delete scopedInterceptors[method];
  180. }
  181. } else if (isPlainObject(method)) {
  182. removeInterceptorHook(globalInterceptors, method);
  183. }
  184. }
  185. function wrapperHook(hook) {
  186. return function (data) {
  187. return hook(data) || data;
  188. };
  189. }
  190. function isPromise(obj) {
  191. return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
  192. }
  193. function queue(hooks, data) {
  194. var promise = false;
  195. for (var i = 0; i < hooks.length; i++) {
  196. var hook = hooks[i];
  197. if (promise) {
  198. promise = Promise.resolve(wrapperHook(hook));
  199. } else {
  200. var res = hook(data);
  201. if (isPromise(res)) {
  202. promise = Promise.resolve(res);
  203. }
  204. if (res === false) {
  205. return {
  206. then: function then() {} };
  207. }
  208. }
  209. }
  210. return promise || {
  211. then: function then(callback) {
  212. return callback(data);
  213. } };
  214. }
  215. function wrapperOptions(interceptor) {var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  216. ['success', 'fail', 'complete'].forEach(function (name) {
  217. if (Array.isArray(interceptor[name])) {
  218. var oldCallback = options[name];
  219. options[name] = function callbackInterceptor(res) {
  220. queue(interceptor[name], res).then(function (res) {
  221. /* eslint-disable no-mixed-operators */
  222. return isFn(oldCallback) && oldCallback(res) || res;
  223. });
  224. };
  225. }
  226. });
  227. return options;
  228. }
  229. function wrapperReturnValue(method, returnValue) {
  230. var returnValueHooks = [];
  231. if (Array.isArray(globalInterceptors.returnValue)) {
  232. returnValueHooks.push.apply(returnValueHooks, _toConsumableArray(globalInterceptors.returnValue));
  233. }
  234. var interceptor = scopedInterceptors[method];
  235. if (interceptor && Array.isArray(interceptor.returnValue)) {
  236. returnValueHooks.push.apply(returnValueHooks, _toConsumableArray(interceptor.returnValue));
  237. }
  238. returnValueHooks.forEach(function (hook) {
  239. returnValue = hook(returnValue) || returnValue;
  240. });
  241. return returnValue;
  242. }
  243. function getApiInterceptorHooks(method) {
  244. var interceptor = Object.create(null);
  245. Object.keys(globalInterceptors).forEach(function (hook) {
  246. if (hook !== 'returnValue') {
  247. interceptor[hook] = globalInterceptors[hook].slice();
  248. }
  249. });
  250. var scopedInterceptor = scopedInterceptors[method];
  251. if (scopedInterceptor) {
  252. Object.keys(scopedInterceptor).forEach(function (hook) {
  253. if (hook !== 'returnValue') {
  254. interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);
  255. }
  256. });
  257. }
  258. return interceptor;
  259. }
  260. function invokeApi(method, api, options) {for (var _len = arguments.length, params = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {params[_key - 3] = arguments[_key];}
  261. var interceptor = getApiInterceptorHooks(method);
  262. if (interceptor && Object.keys(interceptor).length) {
  263. if (Array.isArray(interceptor.invoke)) {
  264. var res = queue(interceptor.invoke, options);
  265. return res.then(function (options) {
  266. return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
  267. });
  268. } else {
  269. return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
  270. }
  271. }
  272. return api.apply(void 0, [options].concat(params));
  273. }
  274. var promiseInterceptor = {
  275. returnValue: function returnValue(res) {
  276. if (!isPromise(res)) {
  277. return res;
  278. }
  279. return new Promise(function (resolve, reject) {
  280. res.then(function (res) {
  281. if (res[0]) {
  282. reject(res[0]);
  283. } else {
  284. resolve(res[1]);
  285. }
  286. });
  287. });
  288. } };
  289. var SYNC_API_RE =
  290. /^\$|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/;
  291. var CONTEXT_API_RE = /^create|Manager$/;
  292. // Context例外情况
  293. var CONTEXT_API_RE_EXC = ['createBLEConnection'];
  294. // 同步例外情况
  295. var ASYNC_API = ['createBLEConnection', 'createPushMessage'];
  296. var CALLBACK_API_RE = /^on|^off/;
  297. function isContextApi(name) {
  298. return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1;
  299. }
  300. function isSyncApi(name) {
  301. return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;
  302. }
  303. function isCallbackApi(name) {
  304. return CALLBACK_API_RE.test(name) && name !== 'onPush';
  305. }
  306. function handlePromise(promise) {
  307. return promise.then(function (data) {
  308. return [null, data];
  309. }).
  310. catch(function (err) {return [err];});
  311. }
  312. function shouldPromise(name) {
  313. if (
  314. isContextApi(name) ||
  315. isSyncApi(name) ||
  316. isCallbackApi(name))
  317. {
  318. return false;
  319. }
  320. return true;
  321. }
  322. /* eslint-disable no-extend-native */
  323. if (!Promise.prototype.finally) {
  324. Promise.prototype.finally = function (callback) {
  325. var promise = this.constructor;
  326. return this.then(
  327. function (value) {return promise.resolve(callback()).then(function () {return value;});},
  328. function (reason) {return promise.resolve(callback()).then(function () {
  329. throw reason;
  330. });});
  331. };
  332. }
  333. function promisify(name, api) {
  334. if (!shouldPromise(name)) {
  335. return api;
  336. }
  337. return function promiseApi() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {params[_key2 - 1] = arguments[_key2];}
  338. if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {
  339. return wrapperReturnValue(name, invokeApi.apply(void 0, [name, api, options].concat(params)));
  340. }
  341. return wrapperReturnValue(name, handlePromise(new Promise(function (resolve, reject) {
  342. invokeApi.apply(void 0, [name, api, Object.assign({}, options, {
  343. success: resolve,
  344. fail: reject })].concat(
  345. params));
  346. })));
  347. };
  348. }
  349. var EPS = 1e-4;
  350. var BASE_DEVICE_WIDTH = 750;
  351. var isIOS = false;
  352. var deviceWidth = 0;
  353. var deviceDPR = 0;
  354. function checkDeviceWidth() {var _wx$getSystemInfoSync =
  355. wx.getSystemInfoSync(),platform = _wx$getSystemInfoSync.platform,pixelRatio = _wx$getSystemInfoSync.pixelRatio,windowWidth = _wx$getSystemInfoSync.windowWidth; // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni
  356. deviceWidth = windowWidth;
  357. deviceDPR = pixelRatio;
  358. isIOS = platform === 'ios';
  359. }
  360. function upx2px(number, newDeviceWidth) {
  361. if (deviceWidth === 0) {
  362. checkDeviceWidth();
  363. }
  364. number = Number(number);
  365. if (number === 0) {
  366. return 0;
  367. }
  368. var result = number / BASE_DEVICE_WIDTH * (newDeviceWidth || deviceWidth);
  369. if (result < 0) {
  370. result = -result;
  371. }
  372. result = Math.floor(result + EPS);
  373. if (result === 0) {
  374. if (deviceDPR === 1 || !isIOS) {
  375. result = 1;
  376. } else {
  377. result = 0.5;
  378. }
  379. }
  380. return number < 0 ? -result : result;
  381. }
  382. var LOCALE_ZH_HANS = 'zh-Hans';
  383. var LOCALE_ZH_HANT = 'zh-Hant';
  384. var LOCALE_EN = 'en';
  385. var LOCALE_FR = 'fr';
  386. var LOCALE_ES = 'es';
  387. var messages = {};
  388. var locale;
  389. {
  390. locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
  391. }
  392. function initI18nMessages() {
  393. if (!isEnableLocale()) {
  394. return;
  395. }
  396. var localeKeys = Object.keys(__uniConfig.locales);
  397. if (localeKeys.length) {
  398. localeKeys.forEach(function (locale) {
  399. var curMessages = messages[locale];
  400. var userMessages = __uniConfig.locales[locale];
  401. if (curMessages) {
  402. Object.assign(curMessages, userMessages);
  403. } else {
  404. messages[locale] = userMessages;
  405. }
  406. });
  407. }
  408. }
  409. initI18nMessages();
  410. var i18n = (0, _uniI18n.initVueI18n)(
  411. locale,
  412. {});
  413. var t = i18n.t;
  414. var i18nMixin = i18n.mixin = {
  415. beforeCreate: function beforeCreate() {var _this = this;
  416. var unwatch = i18n.i18n.watchLocale(function () {
  417. _this.$forceUpdate();
  418. });
  419. this.$once('hook:beforeDestroy', function () {
  420. unwatch();
  421. });
  422. },
  423. methods: {
  424. $$t: function $$t(key, values) {
  425. return t(key, values);
  426. } } };
  427. var setLocale = i18n.setLocale;
  428. var getLocale = i18n.getLocale;
  429. function initAppLocale(Vue, appVm, locale) {
  430. var state = Vue.observable({
  431. locale: locale || i18n.getLocale() });
  432. var localeWatchers = [];
  433. appVm.$watchLocale = function (fn) {
  434. localeWatchers.push(fn);
  435. };
  436. Object.defineProperty(appVm, '$locale', {
  437. get: function get() {
  438. return state.locale;
  439. },
  440. set: function set(v) {
  441. state.locale = v;
  442. localeWatchers.forEach(function (watch) {return watch(v);});
  443. } });
  444. }
  445. function isEnableLocale() {
  446. return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length;
  447. }
  448. function include(str, parts) {
  449. return !!parts.find(function (part) {return str.indexOf(part) !== -1;});
  450. }
  451. function startsWith(str, parts) {
  452. return parts.find(function (part) {return str.indexOf(part) === 0;});
  453. }
  454. function normalizeLocale(locale, messages) {
  455. if (!locale) {
  456. return;
  457. }
  458. locale = locale.trim().replace(/_/g, '-');
  459. if (messages && messages[locale]) {
  460. return locale;
  461. }
  462. locale = locale.toLowerCase();
  463. if (locale === 'chinese') {
  464. // 支付宝
  465. return LOCALE_ZH_HANS;
  466. }
  467. if (locale.indexOf('zh') === 0) {
  468. if (locale.indexOf('-hans') > -1) {
  469. return LOCALE_ZH_HANS;
  470. }
  471. if (locale.indexOf('-hant') > -1) {
  472. return LOCALE_ZH_HANT;
  473. }
  474. if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {
  475. return LOCALE_ZH_HANT;
  476. }
  477. return LOCALE_ZH_HANS;
  478. }
  479. var lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);
  480. if (lang) {
  481. return lang;
  482. }
  483. }
  484. // export function initI18n() {
  485. // const localeKeys = Object.keys(__uniConfig.locales || {})
  486. // if (localeKeys.length) {
  487. // localeKeys.forEach((locale) =>
  488. // i18n.add(locale, __uniConfig.locales[locale])
  489. // )
  490. // }
  491. // }
  492. function getLocale$1() {
  493. // 优先使用 $locale
  494. var app = getApp({
  495. allowDefault: true });
  496. if (app && app.$vm) {
  497. return app.$vm.$locale;
  498. }
  499. return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
  500. }
  501. function setLocale$1(locale) {
  502. var app = getApp();
  503. if (!app) {
  504. return false;
  505. }
  506. var oldLocale = app.$vm.$locale;
  507. if (oldLocale !== locale) {
  508. app.$vm.$locale = locale;
  509. onLocaleChangeCallbacks.forEach(function (fn) {return fn({
  510. locale: locale });});
  511. return true;
  512. }
  513. return false;
  514. }
  515. var onLocaleChangeCallbacks = [];
  516. function onLocaleChange(fn) {
  517. if (onLocaleChangeCallbacks.indexOf(fn) === -1) {
  518. onLocaleChangeCallbacks.push(fn);
  519. }
  520. }
  521. if (typeof global !== 'undefined') {
  522. global.getLocale = getLocale$1;
  523. }
  524. var interceptors = {
  525. promiseInterceptor: promiseInterceptor };
  526. var baseApi = /*#__PURE__*/Object.freeze({
  527. __proto__: null,
  528. upx2px: upx2px,
  529. getLocale: getLocale$1,
  530. setLocale: setLocale$1,
  531. onLocaleChange: onLocaleChange,
  532. addInterceptor: addInterceptor,
  533. removeInterceptor: removeInterceptor,
  534. interceptors: interceptors });
  535. function findExistsPageIndex(url) {
  536. var pages = getCurrentPages();
  537. var len = pages.length;
  538. while (len--) {
  539. var page = pages[len];
  540. if (page.$page && page.$page.fullPath === url) {
  541. return len;
  542. }
  543. }
  544. return -1;
  545. }
  546. var redirectTo = {
  547. name: function name(fromArgs) {
  548. if (fromArgs.exists === 'back' && fromArgs.delta) {
  549. return 'navigateBack';
  550. }
  551. return 'redirectTo';
  552. },
  553. args: function args(fromArgs) {
  554. if (fromArgs.exists === 'back' && fromArgs.url) {
  555. var existsPageIndex = findExistsPageIndex(fromArgs.url);
  556. if (existsPageIndex !== -1) {
  557. var delta = getCurrentPages().length - 1 - existsPageIndex;
  558. if (delta > 0) {
  559. fromArgs.delta = delta;
  560. }
  561. }
  562. }
  563. } };
  564. var previewImage = {
  565. args: function args(fromArgs) {
  566. var currentIndex = parseInt(fromArgs.current);
  567. if (isNaN(currentIndex)) {
  568. return;
  569. }
  570. var urls = fromArgs.urls;
  571. if (!Array.isArray(urls)) {
  572. return;
  573. }
  574. var len = urls.length;
  575. if (!len) {
  576. return;
  577. }
  578. if (currentIndex < 0) {
  579. currentIndex = 0;
  580. } else if (currentIndex >= len) {
  581. currentIndex = len - 1;
  582. }
  583. if (currentIndex > 0) {
  584. fromArgs.current = urls[currentIndex];
  585. fromArgs.urls = urls.filter(
  586. function (item, index) {return index < currentIndex ? item !== urls[currentIndex] : true;});
  587. } else {
  588. fromArgs.current = urls[0];
  589. }
  590. return {
  591. indicator: false,
  592. loop: false };
  593. } };
  594. var UUID_KEY = '__DC_STAT_UUID';
  595. var deviceId;
  596. function useDeviceId(result) {
  597. deviceId = deviceId || wx.getStorageSync(UUID_KEY);
  598. if (!deviceId) {
  599. deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);
  600. wx.setStorage({
  601. key: UUID_KEY,
  602. data: deviceId });
  603. }
  604. result.deviceId = deviceId;
  605. }
  606. function addSafeAreaInsets(result) {
  607. if (result.safeArea) {
  608. var safeArea = result.safeArea;
  609. result.safeAreaInsets = {
  610. top: safeArea.top,
  611. left: safeArea.left,
  612. right: result.windowWidth - safeArea.right,
  613. bottom: result.screenHeight - safeArea.bottom };
  614. }
  615. }
  616. function populateParameters(result) {var _result$brand =
  617. result.brand,brand = _result$brand === void 0 ? '' : _result$brand,_result$model = result.model,model = _result$model === void 0 ? '' : _result$model,_result$system = result.system,system = _result$system === void 0 ? '' : _result$system,_result$language = result.language,language = _result$language === void 0 ? '' : _result$language,theme = result.theme,version = result.version,platform = result.platform,fontSizeSetting = result.fontSizeSetting,SDKVersion = result.SDKVersion,pixelRatio = result.pixelRatio,deviceOrientation = result.deviceOrientation;
  618. // const isQuickApp = "mp-weixin".indexOf('quickapp-webview') !== -1
  619. // osName osVersion
  620. var osName = '';
  621. var osVersion = '';
  622. {
  623. osName = system.split(' ')[0] || '';
  624. osVersion = system.split(' ')[1] || '';
  625. }
  626. var hostVersion = version;
  627. // deviceType
  628. var deviceType = getGetDeviceType(result, model);
  629. // deviceModel
  630. var deviceBrand = getDeviceBrand(brand);
  631. // hostName
  632. var _hostName = getHostName(result);
  633. // deviceOrientation
  634. var _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持
  635. // devicePixelRatio
  636. var _devicePixelRatio = pixelRatio;
  637. // SDKVersion
  638. var _SDKVersion = SDKVersion;
  639. // hostLanguage
  640. var hostLanguage = language.replace(/_/g, '-');
  641. // wx.getAccountInfoSync
  642. var parameters = {
  643. appId: "__UNI__2080341",
  644. appName: "扫码点餐",
  645. appVersion: "1.0.8",
  646. appVersionCode: "108",
  647. appLanguage: getAppLanguage(hostLanguage),
  648. uniCompileVersion: "3.6.4",
  649. uniRuntimeVersion: "3.6.4",
  650. uniPlatform: undefined || "mp-weixin",
  651. deviceBrand: deviceBrand,
  652. deviceModel: model,
  653. deviceType: deviceType,
  654. devicePixelRatio: _devicePixelRatio,
  655. deviceOrientation: _deviceOrientation,
  656. osName: osName.toLocaleLowerCase(),
  657. osVersion: osVersion,
  658. hostTheme: theme,
  659. hostVersion: hostVersion,
  660. hostLanguage: hostLanguage,
  661. hostName: _hostName,
  662. hostSDKVersion: _SDKVersion,
  663. hostFontSizeSetting: fontSizeSetting,
  664. windowTop: 0,
  665. windowBottom: 0,
  666. // TODO
  667. osLanguage: undefined,
  668. osTheme: undefined,
  669. ua: undefined,
  670. hostPackageName: undefined,
  671. browserName: undefined,
  672. browserVersion: undefined };
  673. Object.assign(result, parameters);
  674. }
  675. function getGetDeviceType(result, model) {
  676. var deviceType = result.deviceType || 'phone';
  677. {
  678. var deviceTypeMaps = {
  679. ipad: 'pad',
  680. windows: 'pc',
  681. mac: 'pc' };
  682. var deviceTypeMapsKeys = Object.keys(deviceTypeMaps);
  683. var _model = model.toLocaleLowerCase();
  684. for (var index = 0; index < deviceTypeMapsKeys.length; index++) {
  685. var _m = deviceTypeMapsKeys[index];
  686. if (_model.indexOf(_m) !== -1) {
  687. deviceType = deviceTypeMaps[_m];
  688. break;
  689. }
  690. }
  691. }
  692. return deviceType;
  693. }
  694. function getDeviceBrand(brand) {
  695. var deviceBrand = brand;
  696. if (deviceBrand) {
  697. deviceBrand = brand.toLocaleLowerCase();
  698. }
  699. return deviceBrand;
  700. }
  701. function getAppLanguage(defaultLanguage) {
  702. return getLocale$1 ?
  703. getLocale$1() :
  704. defaultLanguage;
  705. }
  706. function getHostName(result) {
  707. var _platform = 'WeChat';
  708. var _hostName = result.hostName || _platform; // mp-jd
  709. {
  710. if (result.environment) {
  711. _hostName = result.environment;
  712. } else if (result.host && result.host.env) {
  713. _hostName = result.host.env;
  714. }
  715. }
  716. return _hostName;
  717. }
  718. var getSystemInfo = {
  719. returnValue: function returnValue(result) {
  720. useDeviceId(result);
  721. addSafeAreaInsets(result);
  722. populateParameters(result);
  723. } };
  724. var showActionSheet = {
  725. args: function args(fromArgs) {
  726. if (typeof fromArgs === 'object') {
  727. fromArgs.alertText = fromArgs.title;
  728. }
  729. } };
  730. var getAppBaseInfo = {
  731. returnValue: function returnValue(result) {var _result =
  732. result,version = _result.version,language = _result.language,SDKVersion = _result.SDKVersion,theme = _result.theme;
  733. var _hostName = getHostName(result);
  734. var hostLanguage = language.replace('_', '-');
  735. result = sortObject(Object.assign(result, {
  736. appId: "__UNI__2080341",
  737. appName: "扫码点餐",
  738. appVersion: "1.0.8",
  739. appVersionCode: "108",
  740. appLanguage: getAppLanguage(hostLanguage),
  741. hostVersion: version,
  742. hostLanguage: hostLanguage,
  743. hostName: _hostName,
  744. hostSDKVersion: SDKVersion,
  745. hostTheme: theme }));
  746. } };
  747. var getDeviceInfo = {
  748. returnValue: function returnValue(result) {var _result2 =
  749. result,brand = _result2.brand,model = _result2.model;
  750. var deviceType = getGetDeviceType(result, model);
  751. var deviceBrand = getDeviceBrand(brand);
  752. useDeviceId(result);
  753. result = sortObject(Object.assign(result, {
  754. deviceType: deviceType,
  755. deviceBrand: deviceBrand,
  756. deviceModel: model }));
  757. } };
  758. var getWindowInfo = {
  759. returnValue: function returnValue(result) {
  760. addSafeAreaInsets(result);
  761. result = sortObject(Object.assign(result, {
  762. windowTop: 0,
  763. windowBottom: 0 }));
  764. } };
  765. var getAppAuthorizeSetting = {
  766. returnValue: function returnValue(result) {var
  767. locationReducedAccuracy = result.locationReducedAccuracy;
  768. result.locationAccuracy = 'unsupported';
  769. if (locationReducedAccuracy === true) {
  770. result.locationAccuracy = 'reduced';
  771. } else if (locationReducedAccuracy === false) {
  772. result.locationAccuracy = 'full';
  773. }
  774. } };
  775. // import navigateTo from 'uni-helpers/navigate-to'
  776. var protocols = {
  777. redirectTo: redirectTo,
  778. // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP
  779. previewImage: previewImage,
  780. getSystemInfo: getSystemInfo,
  781. getSystemInfoSync: getSystemInfo,
  782. showActionSheet: showActionSheet,
  783. getAppBaseInfo: getAppBaseInfo,
  784. getDeviceInfo: getDeviceInfo,
  785. getWindowInfo: getWindowInfo,
  786. getAppAuthorizeSetting: getAppAuthorizeSetting };
  787. var todos = [
  788. 'vibrate',
  789. 'preloadPage',
  790. 'unPreloadPage',
  791. 'loadSubPackage'];
  792. var canIUses = [];
  793. var CALLBACKS = ['success', 'fail', 'cancel', 'complete'];
  794. function processCallback(methodName, method, returnValue) {
  795. return function (res) {
  796. return method(processReturnValue(methodName, res, returnValue));
  797. };
  798. }
  799. function processArgs(methodName, fromArgs) {var argsOption = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};var returnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};var keepFromArgs = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
  800. if (isPlainObject(fromArgs)) {// 一般 api 的参数解析
  801. var toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值
  802. if (isFn(argsOption)) {
  803. argsOption = argsOption(fromArgs, toArgs) || {};
  804. }
  805. for (var key in fromArgs) {
  806. if (hasOwn(argsOption, key)) {
  807. var keyOption = argsOption[key];
  808. if (isFn(keyOption)) {
  809. keyOption = keyOption(fromArgs[key], fromArgs, toArgs);
  810. }
  811. if (!keyOption) {// 不支持的参数
  812. console.warn("The '".concat(methodName, "' method of platform '\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F' does not support option '").concat(key, "'"));
  813. } else if (isStr(keyOption)) {// 重写参数 key
  814. toArgs[keyOption] = fromArgs[key];
  815. } else if (isPlainObject(keyOption)) {// {name:newName,value:value}可重新指定参数 key:value
  816. toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;
  817. }
  818. } else if (CALLBACKS.indexOf(key) !== -1) {
  819. if (isFn(fromArgs[key])) {
  820. toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);
  821. }
  822. } else {
  823. if (!keepFromArgs) {
  824. toArgs[key] = fromArgs[key];
  825. }
  826. }
  827. }
  828. return toArgs;
  829. } else if (isFn(fromArgs)) {
  830. fromArgs = processCallback(methodName, fromArgs, returnValue);
  831. }
  832. return fromArgs;
  833. }
  834. function processReturnValue(methodName, res, returnValue) {var keepReturnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
  835. if (isFn(protocols.returnValue)) {// 处理通用 returnValue
  836. res = protocols.returnValue(methodName, res);
  837. }
  838. return processArgs(methodName, res, returnValue, {}, keepReturnValue);
  839. }
  840. function wrapper(methodName, method) {
  841. if (hasOwn(protocols, methodName)) {
  842. var protocol = protocols[methodName];
  843. if (!protocol) {// 暂不支持的 api
  844. return function () {
  845. console.error("Platform '\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F' does not support '".concat(methodName, "'."));
  846. };
  847. }
  848. return function (arg1, arg2) {// 目前 api 最多两个参数
  849. var options = protocol;
  850. if (isFn(protocol)) {
  851. options = protocol(arg1);
  852. }
  853. arg1 = processArgs(methodName, arg1, options.args, options.returnValue);
  854. var args = [arg1];
  855. if (typeof arg2 !== 'undefined') {
  856. args.push(arg2);
  857. }
  858. if (isFn(options.name)) {
  859. methodName = options.name(arg1);
  860. } else if (isStr(options.name)) {
  861. methodName = options.name;
  862. }
  863. var returnValue = wx[methodName].apply(wx, args);
  864. if (isSyncApi(methodName)) {// 同步 api
  865. return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));
  866. }
  867. return returnValue;
  868. };
  869. }
  870. return method;
  871. }
  872. var todoApis = Object.create(null);
  873. var TODOS = [
  874. 'onTabBarMidButtonTap',
  875. 'subscribePush',
  876. 'unsubscribePush',
  877. 'onPush',
  878. 'offPush',
  879. 'share'];
  880. function createTodoApi(name) {
  881. return function todoApi(_ref)
  882. {var fail = _ref.fail,complete = _ref.complete;
  883. var res = {
  884. errMsg: "".concat(name, ":fail method '").concat(name, "' not supported") };
  885. isFn(fail) && fail(res);
  886. isFn(complete) && complete(res);
  887. };
  888. }
  889. TODOS.forEach(function (name) {
  890. todoApis[name] = createTodoApi(name);
  891. });
  892. var providers = {
  893. oauth: ['weixin'],
  894. share: ['weixin'],
  895. payment: ['wxpay'],
  896. push: ['weixin'] };
  897. function getProvider(_ref2)
  898. {var service = _ref2.service,success = _ref2.success,fail = _ref2.fail,complete = _ref2.complete;
  899. var res = false;
  900. if (providers[service]) {
  901. res = {
  902. errMsg: 'getProvider:ok',
  903. service: service,
  904. provider: providers[service] };
  905. isFn(success) && success(res);
  906. } else {
  907. res = {
  908. errMsg: 'getProvider:fail service not found' };
  909. isFn(fail) && fail(res);
  910. }
  911. isFn(complete) && complete(res);
  912. }
  913. var extraApi = /*#__PURE__*/Object.freeze({
  914. __proto__: null,
  915. getProvider: getProvider });
  916. var getEmitter = function () {
  917. var Emitter;
  918. return function getUniEmitter() {
  919. if (!Emitter) {
  920. Emitter = new _vue.default();
  921. }
  922. return Emitter;
  923. };
  924. }();
  925. function apply(ctx, method, args) {
  926. return ctx[method].apply(ctx, args);
  927. }
  928. function $on() {
  929. return apply(getEmitter(), '$on', Array.prototype.slice.call(arguments));
  930. }
  931. function $off() {
  932. return apply(getEmitter(), '$off', Array.prototype.slice.call(arguments));
  933. }
  934. function $once() {
  935. return apply(getEmitter(), '$once', Array.prototype.slice.call(arguments));
  936. }
  937. function $emit() {
  938. return apply(getEmitter(), '$emit', Array.prototype.slice.call(arguments));
  939. }
  940. var eventApi = /*#__PURE__*/Object.freeze({
  941. __proto__: null,
  942. $on: $on,
  943. $off: $off,
  944. $once: $once,
  945. $emit: $emit });
  946. /**
  947. * 框架内 try-catch
  948. */
  949. /**
  950. * 开发者 try-catch
  951. */
  952. function tryCatch(fn) {
  953. return function () {
  954. try {
  955. return fn.apply(fn, arguments);
  956. } catch (e) {
  957. // TODO
  958. console.error(e);
  959. }
  960. };
  961. }
  962. function getApiCallbacks(params) {
  963. var apiCallbacks = {};
  964. for (var name in params) {
  965. var param = params[name];
  966. if (isFn(param)) {
  967. apiCallbacks[name] = tryCatch(param);
  968. delete params[name];
  969. }
  970. }
  971. return apiCallbacks;
  972. }
  973. var cid;
  974. var cidErrMsg;
  975. var enabled;
  976. function normalizePushMessage(message) {
  977. try {
  978. return JSON.parse(message);
  979. } catch (e) {}
  980. return message;
  981. }
  982. function invokePushCallback(
  983. args)
  984. {
  985. if (args.type === 'enabled') {
  986. enabled = true;
  987. } else if (args.type === 'clientId') {
  988. cid = args.cid;
  989. cidErrMsg = args.errMsg;
  990. invokeGetPushCidCallbacks(cid, args.errMsg);
  991. } else if (args.type === 'pushMsg') {
  992. var message = {
  993. type: 'receive',
  994. data: normalizePushMessage(args.message) };
  995. for (var i = 0; i < onPushMessageCallbacks.length; i++) {
  996. var callback = onPushMessageCallbacks[i];
  997. callback(message);
  998. // 该消息已被阻止
  999. if (message.stopped) {
  1000. break;
  1001. }
  1002. }
  1003. } else if (args.type === 'click') {
  1004. onPushMessageCallbacks.forEach(function (callback) {
  1005. callback({
  1006. type: 'click',
  1007. data: normalizePushMessage(args.message) });
  1008. });
  1009. }
  1010. }
  1011. var getPushCidCallbacks = [];
  1012. function invokeGetPushCidCallbacks(cid, errMsg) {
  1013. getPushCidCallbacks.forEach(function (callback) {
  1014. callback(cid, errMsg);
  1015. });
  1016. getPushCidCallbacks.length = 0;
  1017. }
  1018. function getPushClientId(args) {
  1019. if (!isPlainObject(args)) {
  1020. args = {};
  1021. }var _getApiCallbacks =
  1022. getApiCallbacks(args),success = _getApiCallbacks.success,fail = _getApiCallbacks.fail,complete = _getApiCallbacks.complete;
  1023. var hasSuccess = isFn(success);
  1024. var hasFail = isFn(fail);
  1025. var hasComplete = isFn(complete);
  1026. Promise.resolve().then(function () {
  1027. if (typeof enabled === 'undefined') {
  1028. enabled = false;
  1029. cid = '';
  1030. cidErrMsg = 'uniPush is not enabled';
  1031. }
  1032. getPushCidCallbacks.push(function (cid, errMsg) {
  1033. var res;
  1034. if (cid) {
  1035. res = {
  1036. errMsg: 'getPushClientId:ok',
  1037. cid: cid };
  1038. hasSuccess && success(res);
  1039. } else {
  1040. res = {
  1041. errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '') };
  1042. hasFail && fail(res);
  1043. }
  1044. hasComplete && complete(res);
  1045. });
  1046. if (typeof cid !== 'undefined') {
  1047. invokeGetPushCidCallbacks(cid, cidErrMsg);
  1048. }
  1049. });
  1050. }
  1051. var onPushMessageCallbacks = [];
  1052. // 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现
  1053. var onPushMessage = function onPushMessage(fn) {
  1054. if (onPushMessageCallbacks.indexOf(fn) === -1) {
  1055. onPushMessageCallbacks.push(fn);
  1056. }
  1057. };
  1058. var offPushMessage = function offPushMessage(fn) {
  1059. if (!fn) {
  1060. onPushMessageCallbacks.length = 0;
  1061. } else {
  1062. var index = onPushMessageCallbacks.indexOf(fn);
  1063. if (index > -1) {
  1064. onPushMessageCallbacks.splice(index, 1);
  1065. }
  1066. }
  1067. };
  1068. var api = /*#__PURE__*/Object.freeze({
  1069. __proto__: null,
  1070. getPushClientId: getPushClientId,
  1071. onPushMessage: onPushMessage,
  1072. offPushMessage: offPushMessage,
  1073. invokePushCallback: invokePushCallback });
  1074. var MPPage = Page;
  1075. var MPComponent = Component;
  1076. var customizeRE = /:/g;
  1077. var customize = cached(function (str) {
  1078. return camelize(str.replace(customizeRE, '-'));
  1079. });
  1080. function initTriggerEvent(mpInstance) {
  1081. var oldTriggerEvent = mpInstance.triggerEvent;
  1082. var newTriggerEvent = function newTriggerEvent(event) {for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {args[_key3 - 1] = arguments[_key3];}
  1083. // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件
  1084. if (this.$vm || this.dataset && this.dataset.comType) {
  1085. event = customize(event);
  1086. } else {
  1087. // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目
  1088. var newEvent = customize(event);
  1089. if (newEvent !== event) {
  1090. oldTriggerEvent.apply(this, [newEvent].concat(args));
  1091. }
  1092. }
  1093. return oldTriggerEvent.apply(this, [event].concat(args));
  1094. };
  1095. try {
  1096. // 京东小程序 triggerEvent 为只读
  1097. mpInstance.triggerEvent = newTriggerEvent;
  1098. } catch (error) {
  1099. mpInstance._triggerEvent = newTriggerEvent;
  1100. }
  1101. }
  1102. function initHook(name, options, isComponent) {
  1103. var oldHook = options[name];
  1104. if (!oldHook) {
  1105. options[name] = function () {
  1106. initTriggerEvent(this);
  1107. };
  1108. } else {
  1109. options[name] = function () {
  1110. initTriggerEvent(this);for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {args[_key4] = arguments[_key4];}
  1111. return oldHook.apply(this, args);
  1112. };
  1113. }
  1114. }
  1115. if (!MPPage.__$wrappered) {
  1116. MPPage.__$wrappered = true;
  1117. Page = function Page() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  1118. initHook('onLoad', options);
  1119. return MPPage(options);
  1120. };
  1121. Page.after = MPPage.after;
  1122. Component = function Component() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  1123. initHook('created', options);
  1124. return MPComponent(options);
  1125. };
  1126. }
  1127. var PAGE_EVENT_HOOKS = [
  1128. 'onPullDownRefresh',
  1129. 'onReachBottom',
  1130. 'onAddToFavorites',
  1131. 'onShareTimeline',
  1132. 'onShareAppMessage',
  1133. 'onPageScroll',
  1134. 'onResize',
  1135. 'onTabItemTap'];
  1136. function initMocks(vm, mocks) {
  1137. var mpInstance = vm.$mp[vm.mpType];
  1138. mocks.forEach(function (mock) {
  1139. if (hasOwn(mpInstance, mock)) {
  1140. vm[mock] = mpInstance[mock];
  1141. }
  1142. });
  1143. }
  1144. function hasHook(hook, vueOptions) {
  1145. if (!vueOptions) {
  1146. return true;
  1147. }
  1148. if (_vue.default.options && Array.isArray(_vue.default.options[hook])) {
  1149. return true;
  1150. }
  1151. vueOptions = vueOptions.default || vueOptions;
  1152. if (isFn(vueOptions)) {
  1153. if (isFn(vueOptions.extendOptions[hook])) {
  1154. return true;
  1155. }
  1156. if (vueOptions.super &&
  1157. vueOptions.super.options &&
  1158. Array.isArray(vueOptions.super.options[hook])) {
  1159. return true;
  1160. }
  1161. return false;
  1162. }
  1163. if (isFn(vueOptions[hook])) {
  1164. return true;
  1165. }
  1166. var mixins = vueOptions.mixins;
  1167. if (Array.isArray(mixins)) {
  1168. return !!mixins.find(function (mixin) {return hasHook(hook, mixin);});
  1169. }
  1170. }
  1171. function initHooks(mpOptions, hooks, vueOptions) {
  1172. hooks.forEach(function (hook) {
  1173. if (hasHook(hook, vueOptions)) {
  1174. mpOptions[hook] = function (args) {
  1175. return this.$vm && this.$vm.__call_hook(hook, args);
  1176. };
  1177. }
  1178. });
  1179. }
  1180. function initUnknownHooks(mpOptions, vueOptions) {var excludes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
  1181. findHooks(vueOptions).forEach(function (hook) {return initHook$1(mpOptions, hook, excludes);});
  1182. }
  1183. function findHooks(vueOptions) {var hooks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
  1184. if (vueOptions) {
  1185. Object.keys(vueOptions).forEach(function (name) {
  1186. if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {
  1187. hooks.push(name);
  1188. }
  1189. });
  1190. }
  1191. return hooks;
  1192. }
  1193. function initHook$1(mpOptions, hook, excludes) {
  1194. if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {
  1195. mpOptions[hook] = function (args) {
  1196. return this.$vm && this.$vm.__call_hook(hook, args);
  1197. };
  1198. }
  1199. }
  1200. function initVueComponent(Vue, vueOptions) {
  1201. vueOptions = vueOptions.default || vueOptions;
  1202. var VueComponent;
  1203. if (isFn(vueOptions)) {
  1204. VueComponent = vueOptions;
  1205. } else {
  1206. VueComponent = Vue.extend(vueOptions);
  1207. }
  1208. vueOptions = VueComponent.options;
  1209. return [VueComponent, vueOptions];
  1210. }
  1211. function initSlots(vm, vueSlots) {
  1212. if (Array.isArray(vueSlots) && vueSlots.length) {
  1213. var $slots = Object.create(null);
  1214. vueSlots.forEach(function (slotName) {
  1215. $slots[slotName] = true;
  1216. });
  1217. vm.$scopedSlots = vm.$slots = $slots;
  1218. }
  1219. }
  1220. function initVueIds(vueIds, mpInstance) {
  1221. vueIds = (vueIds || '').split(',');
  1222. var len = vueIds.length;
  1223. if (len === 1) {
  1224. mpInstance._$vueId = vueIds[0];
  1225. } else if (len === 2) {
  1226. mpInstance._$vueId = vueIds[0];
  1227. mpInstance._$vuePid = vueIds[1];
  1228. }
  1229. }
  1230. function initData(vueOptions, context) {
  1231. var data = vueOptions.data || {};
  1232. var methods = vueOptions.methods || {};
  1233. if (typeof data === 'function') {
  1234. try {
  1235. data = data.call(context); // 支持 Vue.prototype 上挂的数据
  1236. } catch (e) {
  1237. if (Object({"NODE_ENV":"development","VUE_APP_NAME":"扫码点餐","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
  1238. console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);
  1239. }
  1240. }
  1241. } else {
  1242. try {
  1243. // 对 data 格式化
  1244. data = JSON.parse(JSON.stringify(data));
  1245. } catch (e) {}
  1246. }
  1247. if (!isPlainObject(data)) {
  1248. data = {};
  1249. }
  1250. Object.keys(methods).forEach(function (methodName) {
  1251. if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {
  1252. data[methodName] = methods[methodName];
  1253. }
  1254. });
  1255. return data;
  1256. }
  1257. var PROP_TYPES = [String, Number, Boolean, Object, Array, null];
  1258. function createObserver(name) {
  1259. return function observer(newVal, oldVal) {
  1260. if (this.$vm) {
  1261. this.$vm[name] = newVal; // 为了触发其他非 render watcher
  1262. }
  1263. };
  1264. }
  1265. function initBehaviors(vueOptions, initBehavior) {
  1266. var vueBehaviors = vueOptions.behaviors;
  1267. var vueExtends = vueOptions.extends;
  1268. var vueMixins = vueOptions.mixins;
  1269. var vueProps = vueOptions.props;
  1270. if (!vueProps) {
  1271. vueOptions.props = vueProps = [];
  1272. }
  1273. var behaviors = [];
  1274. if (Array.isArray(vueBehaviors)) {
  1275. vueBehaviors.forEach(function (behavior) {
  1276. behaviors.push(behavior.replace('uni://', "wx".concat("://")));
  1277. if (behavior === 'uni://form-field') {
  1278. if (Array.isArray(vueProps)) {
  1279. vueProps.push('name');
  1280. vueProps.push('value');
  1281. } else {
  1282. vueProps.name = {
  1283. type: String,
  1284. default: '' };
  1285. vueProps.value = {
  1286. type: [String, Number, Boolean, Array, Object, Date],
  1287. default: '' };
  1288. }
  1289. }
  1290. });
  1291. }
  1292. if (isPlainObject(vueExtends) && vueExtends.props) {
  1293. behaviors.push(
  1294. initBehavior({
  1295. properties: initProperties(vueExtends.props, true) }));
  1296. }
  1297. if (Array.isArray(vueMixins)) {
  1298. vueMixins.forEach(function (vueMixin) {
  1299. if (isPlainObject(vueMixin) && vueMixin.props) {
  1300. behaviors.push(
  1301. initBehavior({
  1302. properties: initProperties(vueMixin.props, true) }));
  1303. }
  1304. });
  1305. }
  1306. return behaviors;
  1307. }
  1308. function parsePropType(key, type, defaultValue, file) {
  1309. // [String]=>String
  1310. if (Array.isArray(type) && type.length === 1) {
  1311. return type[0];
  1312. }
  1313. return type;
  1314. }
  1315. function initProperties(props) {var isBehavior = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;var file = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';var options = arguments.length > 3 ? arguments[3] : undefined;
  1316. var properties = {};
  1317. if (!isBehavior) {
  1318. properties.vueId = {
  1319. type: String,
  1320. value: '' };
  1321. {
  1322. if (options.virtualHost) {
  1323. properties.virtualHostStyle = {
  1324. type: null,
  1325. value: '' };
  1326. properties.virtualHostClass = {
  1327. type: null,
  1328. value: '' };
  1329. }
  1330. }
  1331. // scopedSlotsCompiler auto
  1332. properties.scopedSlotsCompiler = {
  1333. type: String,
  1334. value: '' };
  1335. properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots
  1336. type: null,
  1337. value: [],
  1338. observer: function observer(newVal, oldVal) {
  1339. var $slots = Object.create(null);
  1340. newVal.forEach(function (slotName) {
  1341. $slots[slotName] = true;
  1342. });
  1343. this.setData({
  1344. $slots: $slots });
  1345. } };
  1346. }
  1347. if (Array.isArray(props)) {// ['title']
  1348. props.forEach(function (key) {
  1349. properties[key] = {
  1350. type: null,
  1351. observer: createObserver(key) };
  1352. });
  1353. } else if (isPlainObject(props)) {// {title:{type:String,default:''},content:String}
  1354. Object.keys(props).forEach(function (key) {
  1355. var opts = props[key];
  1356. if (isPlainObject(opts)) {// title:{type:String,default:''}
  1357. var value = opts.default;
  1358. if (isFn(value)) {
  1359. value = value();
  1360. }
  1361. opts.type = parsePropType(key, opts.type);
  1362. properties[key] = {
  1363. type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,
  1364. value: value,
  1365. observer: createObserver(key) };
  1366. } else {// content:String
  1367. var type = parsePropType(key, opts);
  1368. properties[key] = {
  1369. type: PROP_TYPES.indexOf(type) !== -1 ? type : null,
  1370. observer: createObserver(key) };
  1371. }
  1372. });
  1373. }
  1374. return properties;
  1375. }
  1376. function wrapper$1(event) {
  1377. // TODO 又得兼容 mpvue 的 mp 对象
  1378. try {
  1379. event.mp = JSON.parse(JSON.stringify(event));
  1380. } catch (e) {}
  1381. event.stopPropagation = noop;
  1382. event.preventDefault = noop;
  1383. event.target = event.target || {};
  1384. if (!hasOwn(event, 'detail')) {
  1385. event.detail = {};
  1386. }
  1387. if (hasOwn(event, 'markerId')) {
  1388. event.detail = typeof event.detail === 'object' ? event.detail : {};
  1389. event.detail.markerId = event.markerId;
  1390. }
  1391. if (isPlainObject(event.detail)) {
  1392. event.target = Object.assign({}, event.target, event.detail);
  1393. }
  1394. return event;
  1395. }
  1396. function getExtraValue(vm, dataPathsArray) {
  1397. var context = vm;
  1398. dataPathsArray.forEach(function (dataPathArray) {
  1399. var dataPath = dataPathArray[0];
  1400. var value = dataPathArray[2];
  1401. if (dataPath || typeof value !== 'undefined') {// ['','',index,'disable']
  1402. var propPath = dataPathArray[1];
  1403. var valuePath = dataPathArray[3];
  1404. var vFor;
  1405. if (Number.isInteger(dataPath)) {
  1406. vFor = dataPath;
  1407. } else if (!dataPath) {
  1408. vFor = context;
  1409. } else if (typeof dataPath === 'string' && dataPath) {
  1410. if (dataPath.indexOf('#s#') === 0) {
  1411. vFor = dataPath.substr(3);
  1412. } else {
  1413. vFor = vm.__get_value(dataPath, context);
  1414. }
  1415. }
  1416. if (Number.isInteger(vFor)) {
  1417. context = value;
  1418. } else if (!propPath) {
  1419. context = vFor[value];
  1420. } else {
  1421. if (Array.isArray(vFor)) {
  1422. context = vFor.find(function (vForItem) {
  1423. return vm.__get_value(propPath, vForItem) === value;
  1424. });
  1425. } else if (isPlainObject(vFor)) {
  1426. context = Object.keys(vFor).find(function (vForKey) {
  1427. return vm.__get_value(propPath, vFor[vForKey]) === value;
  1428. });
  1429. } else {
  1430. console.error('v-for 暂不支持循环数据:', vFor);
  1431. }
  1432. }
  1433. if (valuePath) {
  1434. context = vm.__get_value(valuePath, context);
  1435. }
  1436. }
  1437. });
  1438. return context;
  1439. }
  1440. function processEventExtra(vm, extra, event, __args__) {
  1441. var extraObj = {};
  1442. if (Array.isArray(extra) && extra.length) {
  1443. /**
  1444. *[
  1445. * ['data.items', 'data.id', item.data.id],
  1446. * ['metas', 'id', meta.id]
  1447. *],
  1448. *[
  1449. * ['data.items', 'data.id', item.data.id],
  1450. * ['metas', 'id', meta.id]
  1451. *],
  1452. *'test'
  1453. */
  1454. extra.forEach(function (dataPath, index) {
  1455. if (typeof dataPath === 'string') {
  1456. if (!dataPath) {// model,prop.sync
  1457. extraObj['$' + index] = vm;
  1458. } else {
  1459. if (dataPath === '$event') {// $event
  1460. extraObj['$' + index] = event;
  1461. } else if (dataPath === 'arguments') {
  1462. extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;
  1463. } else if (dataPath.indexOf('$event.') === 0) {// $event.target.value
  1464. extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);
  1465. } else {
  1466. extraObj['$' + index] = vm.__get_value(dataPath);
  1467. }
  1468. }
  1469. } else {
  1470. extraObj['$' + index] = getExtraValue(vm, dataPath);
  1471. }
  1472. });
  1473. }
  1474. return extraObj;
  1475. }
  1476. function getObjByArray(arr) {
  1477. var obj = {};
  1478. for (var i = 1; i < arr.length; i++) {
  1479. var element = arr[i];
  1480. obj[element[0]] = element[1];
  1481. }
  1482. return obj;
  1483. }
  1484. function processEventArgs(vm, event) {var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];var extra = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];var isCustom = arguments.length > 4 ? arguments[4] : undefined;var methodName = arguments.length > 5 ? arguments[5] : undefined;
  1485. var isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象
  1486. // fixed 用户直接触发 mpInstance.triggerEvent
  1487. var __args__ = isPlainObject(event.detail) ?
  1488. event.detail.__args__ || [event.detail] :
  1489. [event.detail];
  1490. if (isCustom) {// 自定义事件
  1491. isCustomMPEvent = event.currentTarget &&
  1492. event.currentTarget.dataset &&
  1493. event.currentTarget.dataset.comType === 'wx';
  1494. if (!args.length) {// 无参数,直接传入 event 或 detail 数组
  1495. if (isCustomMPEvent) {
  1496. return [event];
  1497. }
  1498. return __args__;
  1499. }
  1500. }
  1501. var extraObj = processEventExtra(vm, extra, event, __args__);
  1502. var ret = [];
  1503. args.forEach(function (arg) {
  1504. if (arg === '$event') {
  1505. if (methodName === '__set_model' && !isCustom) {// input v-model value
  1506. ret.push(event.target.value);
  1507. } else {
  1508. if (isCustom && !isCustomMPEvent) {
  1509. ret.push(__args__[0]);
  1510. } else {// wxcomponent 组件或内置组件
  1511. ret.push(event);
  1512. }
  1513. }
  1514. } else {
  1515. if (Array.isArray(arg) && arg[0] === 'o') {
  1516. ret.push(getObjByArray(arg));
  1517. } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {
  1518. ret.push(extraObj[arg]);
  1519. } else {
  1520. ret.push(arg);
  1521. }
  1522. }
  1523. });
  1524. return ret;
  1525. }
  1526. var ONCE = '~';
  1527. var CUSTOM = '^';
  1528. function isMatchEventType(eventType, optType) {
  1529. return eventType === optType ||
  1530. optType === 'regionchange' && (
  1531. eventType === 'begin' ||
  1532. eventType === 'end');
  1533. }
  1534. function getContextVm(vm) {
  1535. var $parent = vm.$parent;
  1536. // 父组件是 scoped slots 或者其他自定义组件时继续查找
  1537. while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {
  1538. $parent = $parent.$parent;
  1539. }
  1540. return $parent && $parent.$parent;
  1541. }
  1542. function handleEvent(event) {var _this2 = this;
  1543. event = wrapper$1(event);
  1544. // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]
  1545. var dataset = (event.currentTarget || event.target).dataset;
  1546. if (!dataset) {
  1547. return console.warn('事件信息不存在');
  1548. }
  1549. var eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰
  1550. if (!eventOpts) {
  1551. return console.warn('事件信息不存在');
  1552. }
  1553. // [['handle',[1,2,a]],['handle1',[1,2,a]]]
  1554. var eventType = event.type;
  1555. var ret = [];
  1556. eventOpts.forEach(function (eventOpt) {
  1557. var type = eventOpt[0];
  1558. var eventsArray = eventOpt[1];
  1559. var isCustom = type.charAt(0) === CUSTOM;
  1560. type = isCustom ? type.slice(1) : type;
  1561. var isOnce = type.charAt(0) === ONCE;
  1562. type = isOnce ? type.slice(1) : type;
  1563. if (eventsArray && isMatchEventType(eventType, type)) {
  1564. eventsArray.forEach(function (eventArray) {
  1565. var methodName = eventArray[0];
  1566. if (methodName) {
  1567. var handlerCtx = _this2.$vm;
  1568. if (handlerCtx.$options.generic) {// mp-weixin,mp-toutiao 抽象节点模拟 scoped slots
  1569. handlerCtx = getContextVm(handlerCtx) || handlerCtx;
  1570. }
  1571. if (methodName === '$emit') {
  1572. handlerCtx.$emit.apply(handlerCtx,
  1573. processEventArgs(
  1574. _this2.$vm,
  1575. event,
  1576. eventArray[1],
  1577. eventArray[2],
  1578. isCustom,
  1579. methodName));
  1580. return;
  1581. }
  1582. var handler = handlerCtx[methodName];
  1583. if (!isFn(handler)) {
  1584. var _type = _this2.$vm.mpType === 'page' ? 'Page' : 'Component';
  1585. var path = _this2.route || _this2.is;
  1586. throw new Error("".concat(_type, " \"").concat(path, "\" does not have a method \"").concat(methodName, "\""));
  1587. }
  1588. if (isOnce) {
  1589. if (handler.once) {
  1590. return;
  1591. }
  1592. handler.once = true;
  1593. }
  1594. var params = processEventArgs(
  1595. _this2.$vm,
  1596. event,
  1597. eventArray[1],
  1598. eventArray[2],
  1599. isCustom,
  1600. methodName);
  1601. params = Array.isArray(params) ? params : [];
  1602. // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据
  1603. if (/=\s*\S+\.eventParams\s*\|\|\s*\S+\[['"]event-params['"]\]/.test(handler.toString())) {
  1604. // eslint-disable-next-line no-sparse-arrays
  1605. params = params.concat([,,,,,,,,,, event]);
  1606. }
  1607. ret.push(handler.apply(handlerCtx, params));
  1608. }
  1609. });
  1610. }
  1611. });
  1612. if (
  1613. eventType === 'input' &&
  1614. ret.length === 1 &&
  1615. typeof ret[0] !== 'undefined')
  1616. {
  1617. return ret[0];
  1618. }
  1619. }
  1620. var eventChannels = {};
  1621. var eventChannelStack = [];
  1622. function getEventChannel(id) {
  1623. if (id) {
  1624. var eventChannel = eventChannels[id];
  1625. delete eventChannels[id];
  1626. return eventChannel;
  1627. }
  1628. return eventChannelStack.shift();
  1629. }
  1630. var hooks = [
  1631. 'onShow',
  1632. 'onHide',
  1633. 'onError',
  1634. 'onPageNotFound',
  1635. 'onThemeChange',
  1636. 'onUnhandledRejection'];
  1637. function initEventChannel() {
  1638. _vue.default.prototype.getOpenerEventChannel = function () {
  1639. // 微信小程序使用自身getOpenerEventChannel
  1640. {
  1641. return this.$scope.getOpenerEventChannel();
  1642. }
  1643. };
  1644. var callHook = _vue.default.prototype.__call_hook;
  1645. _vue.default.prototype.__call_hook = function (hook, args) {
  1646. if (hook === 'onLoad' && args && args.__id__) {
  1647. this.__eventChannel__ = getEventChannel(args.__id__);
  1648. delete args.__id__;
  1649. }
  1650. return callHook.call(this, hook, args);
  1651. };
  1652. }
  1653. function initScopedSlotsParams() {
  1654. var center = {};
  1655. var parents = {};
  1656. _vue.default.prototype.$hasScopedSlotsParams = function (vueId) {
  1657. var has = center[vueId];
  1658. if (!has) {
  1659. parents[vueId] = this;
  1660. this.$on('hook:destroyed', function () {
  1661. delete parents[vueId];
  1662. });
  1663. }
  1664. return has;
  1665. };
  1666. _vue.default.prototype.$getScopedSlotsParams = function (vueId, name, key) {
  1667. var data = center[vueId];
  1668. if (data) {
  1669. var object = data[name] || {};
  1670. return key ? object[key] : object;
  1671. } else {
  1672. parents[vueId] = this;
  1673. this.$on('hook:destroyed', function () {
  1674. delete parents[vueId];
  1675. });
  1676. }
  1677. };
  1678. _vue.default.prototype.$setScopedSlotsParams = function (name, value) {
  1679. var vueIds = this.$options.propsData.vueId;
  1680. if (vueIds) {
  1681. var vueId = vueIds.split(',')[0];
  1682. var object = center[vueId] = center[vueId] || {};
  1683. object[name] = value;
  1684. if (parents[vueId]) {
  1685. parents[vueId].$forceUpdate();
  1686. }
  1687. }
  1688. };
  1689. _vue.default.mixin({
  1690. destroyed: function destroyed() {
  1691. var propsData = this.$options.propsData;
  1692. var vueId = propsData && propsData.vueId;
  1693. if (vueId) {
  1694. delete center[vueId];
  1695. delete parents[vueId];
  1696. }
  1697. } });
  1698. }
  1699. function parseBaseApp(vm, _ref3)
  1700. {var mocks = _ref3.mocks,initRefs = _ref3.initRefs;
  1701. initEventChannel();
  1702. {
  1703. initScopedSlotsParams();
  1704. }
  1705. if (vm.$options.store) {
  1706. _vue.default.prototype.$store = vm.$options.store;
  1707. }
  1708. uniIdMixin(_vue.default);
  1709. _vue.default.prototype.mpHost = "mp-weixin";
  1710. _vue.default.mixin({
  1711. beforeCreate: function beforeCreate() {
  1712. if (!this.$options.mpType) {
  1713. return;
  1714. }
  1715. this.mpType = this.$options.mpType;
  1716. this.$mp = _defineProperty({
  1717. data: {} },
  1718. this.mpType, this.$options.mpInstance);
  1719. this.$scope = this.$options.mpInstance;
  1720. delete this.$options.mpType;
  1721. delete this.$options.mpInstance;
  1722. if (this.mpType === 'page' && typeof getApp === 'function') {// hack vue-i18n
  1723. var app = getApp();
  1724. if (app.$vm && app.$vm.$i18n) {
  1725. this._i18n = app.$vm.$i18n;
  1726. }
  1727. }
  1728. if (this.mpType !== 'app') {
  1729. initRefs(this);
  1730. initMocks(this, mocks);
  1731. }
  1732. } });
  1733. var appOptions = {
  1734. onLaunch: function onLaunch(args) {
  1735. if (this.$vm) {// 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前
  1736. return;
  1737. }
  1738. {
  1739. if (wx.canIUse && !wx.canIUse('nextTick')) {// 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断
  1740. console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');
  1741. }
  1742. }
  1743. this.$vm = vm;
  1744. this.$vm.$mp = {
  1745. app: this };
  1746. this.$vm.$scope = this;
  1747. // vm 上也挂载 globalData
  1748. this.$vm.globalData = this.globalData;
  1749. this.$vm._isMounted = true;
  1750. this.$vm.__call_hook('mounted', args);
  1751. this.$vm.__call_hook('onLaunch', args);
  1752. } };
  1753. // 兼容旧版本 globalData
  1754. appOptions.globalData = vm.$options.globalData || {};
  1755. // 将 methods 中的方法挂在 getApp() 中
  1756. var methods = vm.$options.methods;
  1757. if (methods) {
  1758. Object.keys(methods).forEach(function (name) {
  1759. appOptions[name] = methods[name];
  1760. });
  1761. }
  1762. initAppLocale(_vue.default, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);
  1763. initHooks(appOptions, hooks);
  1764. initUnknownHooks(appOptions, vm.$options);
  1765. return appOptions;
  1766. }
  1767. var mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];
  1768. function findVmByVueId(vm, vuePid) {
  1769. var $children = vm.$children;
  1770. // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)
  1771. for (var i = $children.length - 1; i >= 0; i--) {
  1772. var childVm = $children[i];
  1773. if (childVm.$scope._$vueId === vuePid) {
  1774. return childVm;
  1775. }
  1776. }
  1777. // 反向递归查找
  1778. var parentVm;
  1779. for (var _i = $children.length - 1; _i >= 0; _i--) {
  1780. parentVm = findVmByVueId($children[_i], vuePid);
  1781. if (parentVm) {
  1782. return parentVm;
  1783. }
  1784. }
  1785. }
  1786. function initBehavior(options) {
  1787. return Behavior(options);
  1788. }
  1789. function isPage() {
  1790. return !!this.route;
  1791. }
  1792. function initRelation(detail) {
  1793. this.triggerEvent('__l', detail);
  1794. }
  1795. function selectAllComponents(mpInstance, selector, $refs) {
  1796. var components = mpInstance.selectAllComponents(selector);
  1797. components.forEach(function (component) {
  1798. var ref = component.dataset.ref;
  1799. $refs[ref] = component.$vm || component;
  1800. {
  1801. if (component.dataset.vueGeneric === 'scoped') {
  1802. component.selectAllComponents('.scoped-ref').forEach(function (scopedComponent) {
  1803. selectAllComponents(scopedComponent, selector, $refs);
  1804. });
  1805. }
  1806. }
  1807. });
  1808. }
  1809. function initRefs(vm) {
  1810. var mpInstance = vm.$scope;
  1811. Object.defineProperty(vm, '$refs', {
  1812. get: function get() {
  1813. var $refs = {};
  1814. selectAllComponents(mpInstance, '.vue-ref', $refs);
  1815. // TODO 暂不考虑 for 中的 scoped
  1816. var forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');
  1817. forComponents.forEach(function (component) {
  1818. var ref = component.dataset.ref;
  1819. if (!$refs[ref]) {
  1820. $refs[ref] = [];
  1821. }
  1822. $refs[ref].push(component.$vm || component);
  1823. });
  1824. return $refs;
  1825. } });
  1826. }
  1827. function handleLink(event) {var _ref4 =
  1828. event.detail || event.value,vuePid = _ref4.vuePid,vueOptions = _ref4.vueOptions; // detail 是微信,value 是百度(dipatch)
  1829. var parentVm;
  1830. if (vuePid) {
  1831. parentVm = findVmByVueId(this.$vm, vuePid);
  1832. }
  1833. if (!parentVm) {
  1834. parentVm = this.$vm;
  1835. }
  1836. vueOptions.parent = parentVm;
  1837. }
  1838. function parseApp(vm) {
  1839. return parseBaseApp(vm, {
  1840. mocks: mocks,
  1841. initRefs: initRefs });
  1842. }
  1843. function createApp(vm) {
  1844. App(parseApp(vm));
  1845. return vm;
  1846. }
  1847. var encodeReserveRE = /[!'()*]/g;
  1848. var encodeReserveReplacer = function encodeReserveReplacer(c) {return '%' + c.charCodeAt(0).toString(16);};
  1849. var commaRE = /%2C/g;
  1850. // fixed encodeURIComponent which is more conformant to RFC3986:
  1851. // - escapes [!'()*]
  1852. // - preserve commas
  1853. var encode = function encode(str) {return encodeURIComponent(str).
  1854. replace(encodeReserveRE, encodeReserveReplacer).
  1855. replace(commaRE, ',');};
  1856. function stringifyQuery(obj) {var encodeStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : encode;
  1857. var res = obj ? Object.keys(obj).map(function (key) {
  1858. var val = obj[key];
  1859. if (val === undefined) {
  1860. return '';
  1861. }
  1862. if (val === null) {
  1863. return encodeStr(key);
  1864. }
  1865. if (Array.isArray(val)) {
  1866. var result = [];
  1867. val.forEach(function (val2) {
  1868. if (val2 === undefined) {
  1869. return;
  1870. }
  1871. if (val2 === null) {
  1872. result.push(encodeStr(key));
  1873. } else {
  1874. result.push(encodeStr(key) + '=' + encodeStr(val2));
  1875. }
  1876. });
  1877. return result.join('&');
  1878. }
  1879. return encodeStr(key) + '=' + encodeStr(val);
  1880. }).filter(function (x) {return x.length > 0;}).join('&') : null;
  1881. return res ? "?".concat(res) : '';
  1882. }
  1883. function parseBaseComponent(vueComponentOptions)
  1884. {var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},isPage = _ref5.isPage,initRelation = _ref5.initRelation;var _initVueComponent =
  1885. initVueComponent(_vue.default, vueComponentOptions),_initVueComponent2 = _slicedToArray(_initVueComponent, 2),VueComponent = _initVueComponent2[0],vueOptions = _initVueComponent2[1];
  1886. var options = _objectSpread({
  1887. multipleSlots: true,
  1888. addGlobalClass: true },
  1889. vueOptions.options || {});
  1890. {
  1891. // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项
  1892. if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {
  1893. Object.assign(options, vueOptions['mp-weixin'].options);
  1894. }
  1895. }
  1896. var componentOptions = {
  1897. options: options,
  1898. data: initData(vueOptions, _vue.default.prototype),
  1899. behaviors: initBehaviors(vueOptions, initBehavior),
  1900. properties: initProperties(vueOptions.props, false, vueOptions.__file, options),
  1901. lifetimes: {
  1902. attached: function attached() {
  1903. var properties = this.properties;
  1904. var options = {
  1905. mpType: isPage.call(this) ? 'page' : 'component',
  1906. mpInstance: this,
  1907. propsData: properties };
  1908. initVueIds(properties.vueId, this);
  1909. // 处理父子关系
  1910. initRelation.call(this, {
  1911. vuePid: this._$vuePid,
  1912. vueOptions: options });
  1913. // 初始化 vue 实例
  1914. this.$vm = new VueComponent(options);
  1915. // 处理$slots,$scopedSlots(暂不支持动态变化$slots)
  1916. initSlots(this.$vm, properties.vueSlots);
  1917. // 触发首次 setData
  1918. this.$vm.$mount();
  1919. },
  1920. ready: function ready() {
  1921. // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发
  1922. // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800
  1923. if (this.$vm) {
  1924. this.$vm._isMounted = true;
  1925. this.$vm.__call_hook('mounted');
  1926. this.$vm.__call_hook('onReady');
  1927. }
  1928. },
  1929. detached: function detached() {
  1930. this.$vm && this.$vm.$destroy();
  1931. } },
  1932. pageLifetimes: {
  1933. show: function show(args) {
  1934. this.$vm && this.$vm.__call_hook('onPageShow', args);
  1935. },
  1936. hide: function hide() {
  1937. this.$vm && this.$vm.__call_hook('onPageHide');
  1938. },
  1939. resize: function resize(size) {
  1940. this.$vm && this.$vm.__call_hook('onPageResize', size);
  1941. } },
  1942. methods: {
  1943. __l: handleLink,
  1944. __e: handleEvent } };
  1945. // externalClasses
  1946. if (vueOptions.externalClasses) {
  1947. componentOptions.externalClasses = vueOptions.externalClasses;
  1948. }
  1949. if (Array.isArray(vueOptions.wxsCallMethods)) {
  1950. vueOptions.wxsCallMethods.forEach(function (callMethod) {
  1951. componentOptions.methods[callMethod] = function (args) {
  1952. return this.$vm[callMethod](args);
  1953. };
  1954. });
  1955. }
  1956. if (isPage) {
  1957. return componentOptions;
  1958. }
  1959. return [componentOptions, VueComponent];
  1960. }
  1961. function parseComponent(vueComponentOptions) {
  1962. return parseBaseComponent(vueComponentOptions, {
  1963. isPage: isPage,
  1964. initRelation: initRelation });
  1965. }
  1966. var hooks$1 = [
  1967. 'onShow',
  1968. 'onHide',
  1969. 'onUnload'];
  1970. hooks$1.push.apply(hooks$1, PAGE_EVENT_HOOKS);
  1971. function parseBasePage(vuePageOptions, _ref6)
  1972. {var isPage = _ref6.isPage,initRelation = _ref6.initRelation;
  1973. var pageOptions = parseComponent(vuePageOptions);
  1974. initHooks(pageOptions.methods, hooks$1, vuePageOptions);
  1975. pageOptions.methods.onLoad = function (query) {
  1976. this.options = query;
  1977. var copyQuery = Object.assign({}, query);
  1978. delete copyQuery.__id__;
  1979. this.$page = {
  1980. fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery) };
  1981. this.$vm.$mp.query = query; // 兼容 mpvue
  1982. this.$vm.__call_hook('onLoad', query);
  1983. };
  1984. initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);
  1985. return pageOptions;
  1986. }
  1987. function parsePage(vuePageOptions) {
  1988. return parseBasePage(vuePageOptions, {
  1989. isPage: isPage,
  1990. initRelation: initRelation });
  1991. }
  1992. function createPage(vuePageOptions) {
  1993. {
  1994. return Component(parsePage(vuePageOptions));
  1995. }
  1996. }
  1997. function createComponent(vueOptions) {
  1998. {
  1999. return Component(parseComponent(vueOptions));
  2000. }
  2001. }
  2002. function createSubpackageApp(vm) {
  2003. var appOptions = parseApp(vm);
  2004. var app = getApp({
  2005. allowDefault: true });
  2006. vm.$scope = app;
  2007. var globalData = app.globalData;
  2008. if (globalData) {
  2009. Object.keys(appOptions.globalData).forEach(function (name) {
  2010. if (!hasOwn(globalData, name)) {
  2011. globalData[name] = appOptions.globalData[name];
  2012. }
  2013. });
  2014. }
  2015. Object.keys(appOptions).forEach(function (name) {
  2016. if (!hasOwn(app, name)) {
  2017. app[name] = appOptions[name];
  2018. }
  2019. });
  2020. if (isFn(appOptions.onShow) && wx.onAppShow) {
  2021. wx.onAppShow(function () {for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {args[_key5] = arguments[_key5];}
  2022. vm.__call_hook('onShow', args);
  2023. });
  2024. }
  2025. if (isFn(appOptions.onHide) && wx.onAppHide) {
  2026. wx.onAppHide(function () {for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {args[_key6] = arguments[_key6];}
  2027. vm.__call_hook('onHide', args);
  2028. });
  2029. }
  2030. if (isFn(appOptions.onLaunch)) {
  2031. var args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();
  2032. vm.__call_hook('onLaunch', args);
  2033. }
  2034. return vm;
  2035. }
  2036. function createPlugin(vm) {
  2037. var appOptions = parseApp(vm);
  2038. if (isFn(appOptions.onShow) && wx.onAppShow) {
  2039. wx.onAppShow(function () {for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {args[_key7] = arguments[_key7];}
  2040. vm.__call_hook('onShow', args);
  2041. });
  2042. }
  2043. if (isFn(appOptions.onHide) && wx.onAppHide) {
  2044. wx.onAppHide(function () {for (var _len8 = arguments.length, args = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {args[_key8] = arguments[_key8];}
  2045. vm.__call_hook('onHide', args);
  2046. });
  2047. }
  2048. if (isFn(appOptions.onLaunch)) {
  2049. var args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();
  2050. vm.__call_hook('onLaunch', args);
  2051. }
  2052. return vm;
  2053. }
  2054. todos.forEach(function (todoApi) {
  2055. protocols[todoApi] = false;
  2056. });
  2057. canIUses.forEach(function (canIUseApi) {
  2058. var apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name :
  2059. canIUseApi;
  2060. if (!wx.canIUse(apiName)) {
  2061. protocols[canIUseApi] = false;
  2062. }
  2063. });
  2064. var uni = {};
  2065. if (typeof Proxy !== 'undefined' && "mp-weixin" !== 'app-plus') {
  2066. uni = new Proxy({}, {
  2067. get: function get(target, name) {
  2068. if (hasOwn(target, name)) {
  2069. return target[name];
  2070. }
  2071. if (baseApi[name]) {
  2072. return baseApi[name];
  2073. }
  2074. if (api[name]) {
  2075. return promisify(name, api[name]);
  2076. }
  2077. {
  2078. if (extraApi[name]) {
  2079. return promisify(name, extraApi[name]);
  2080. }
  2081. if (todoApis[name]) {
  2082. return promisify(name, todoApis[name]);
  2083. }
  2084. }
  2085. if (eventApi[name]) {
  2086. return eventApi[name];
  2087. }
  2088. if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {
  2089. return;
  2090. }
  2091. return promisify(name, wrapper(name, wx[name]));
  2092. },
  2093. set: function set(target, name, value) {
  2094. target[name] = value;
  2095. return true;
  2096. } });
  2097. } else {
  2098. Object.keys(baseApi).forEach(function (name) {
  2099. uni[name] = baseApi[name];
  2100. });
  2101. {
  2102. Object.keys(todoApis).forEach(function (name) {
  2103. uni[name] = promisify(name, todoApis[name]);
  2104. });
  2105. Object.keys(extraApi).forEach(function (name) {
  2106. uni[name] = promisify(name, todoApis[name]);
  2107. });
  2108. }
  2109. Object.keys(eventApi).forEach(function (name) {
  2110. uni[name] = eventApi[name];
  2111. });
  2112. Object.keys(api).forEach(function (name) {
  2113. uni[name] = promisify(name, api[name]);
  2114. });
  2115. Object.keys(wx).forEach(function (name) {
  2116. if (hasOwn(wx, name) || hasOwn(protocols, name)) {
  2117. uni[name] = promisify(name, wrapper(name, wx[name]));
  2118. }
  2119. });
  2120. }
  2121. wx.createApp = createApp;
  2122. wx.createPage = createPage;
  2123. wx.createComponent = createComponent;
  2124. wx.createSubpackageApp = createSubpackageApp;
  2125. wx.createPlugin = createPlugin;
  2126. var uni$1 = uni;var _default =
  2127. uni$1;exports.default = _default;
  2128. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 2)))
  2129. /***/ }),
  2130. /* 2 */
  2131. /*!***********************************!*\
  2132. !*** (webpack)/buildin/global.js ***!
  2133. \***********************************/
  2134. /*! no static exports found */
  2135. /***/ (function(module, exports) {
  2136. var g;
  2137. // This works in non-strict mode
  2138. g = (function() {
  2139. return this;
  2140. })();
  2141. try {
  2142. // This works if eval is allowed (see CSP)
  2143. g = g || new Function("return this")();
  2144. } catch (e) {
  2145. // This works if the window reference is available
  2146. if (typeof window === "object") g = window;
  2147. }
  2148. // g can still be undefined, but nothing to do about it...
  2149. // We return undefined, instead of nothing here, so it's
  2150. // easier to handle this case. if(!global) { ...}
  2151. module.exports = g;
  2152. /***/ }),
  2153. /* 3 */
  2154. /*!*************************************************************!*\
  2155. !*** ./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js ***!
  2156. \*************************************************************/
  2157. /*! no static exports found */
  2158. /***/ (function(module, exports, __webpack_require__) {
  2159. "use strict";
  2160. /* WEBPACK VAR INJECTION */(function(uni, global) {Object.defineProperty(exports, "__esModule", { value: true });exports.compileI18nJsonStr = compileI18nJsonStr;exports.hasI18nJson = hasI18nJson;exports.initVueI18n = initVueI18n;exports.isI18nStr = isI18nStr;exports.normalizeLocale = normalizeLocale;exports.parseI18nJson = parseI18nJson;exports.resolveLocale = resolveLocale;exports.isString = exports.LOCALE_ZH_HANT = exports.LOCALE_ZH_HANS = exports.LOCALE_FR = exports.LOCALE_ES = exports.LOCALE_EN = exports.I18n = exports.Formatter = void 0;function _slicedToArray(arr, i) {return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();}function _nonIterableRest() {throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o, minLen) {if (!o) return;if (typeof o === "string") return _arrayLikeToArray(o, minLen);var n = Object.prototype.toString.call(o).slice(8, -1);if (n === "Object" && o.constructor) n = o.constructor.name;if (n === "Map" || n === "Set") return Array.from(o);if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);}function _arrayLikeToArray(arr, len) {if (len == null || len > arr.length) len = arr.length;for (var i = 0, arr2 = new Array(len); i < len; i++) {arr2[i] = arr[i];}return arr2;}function _iterableToArrayLimit(arr, i) {if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"] != null) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}function _arrayWithHoles(arr) {if (Array.isArray(arr)) return arr;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}function _createClass(Constructor, protoProps, staticProps) {if (protoProps) _defineProperties(Constructor.prototype, protoProps);if (staticProps) _defineProperties(Constructor, staticProps);return Constructor;}var isArray = Array.isArray;
  2161. var isObject = function isObject(val) {return val !== null && typeof val === 'object';};
  2162. var defaultDelimiters = ['{', '}'];var
  2163. BaseFormatter = /*#__PURE__*/function () {
  2164. function BaseFormatter() {_classCallCheck(this, BaseFormatter);
  2165. this._caches = Object.create(null);
  2166. }_createClass(BaseFormatter, [{ key: "interpolate", value: function interpolate(
  2167. message, values) {var delimiters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultDelimiters;
  2168. if (!values) {
  2169. return [message];
  2170. }
  2171. var tokens = this._caches[message];
  2172. if (!tokens) {
  2173. tokens = parse(message, delimiters);
  2174. this._caches[message] = tokens;
  2175. }
  2176. return compile(tokens, values);
  2177. } }]);return BaseFormatter;}();exports.Formatter = BaseFormatter;
  2178. var RE_TOKEN_LIST_VALUE = /^(?:\d)+/;
  2179. var RE_TOKEN_NAMED_VALUE = /^(?:\w)+/;
  2180. function parse(format, _ref) {var _ref2 = _slicedToArray(_ref, 2),startDelimiter = _ref2[0],endDelimiter = _ref2[1];
  2181. var tokens = [];
  2182. var position = 0;
  2183. var text = '';
  2184. while (position < format.length) {
  2185. var char = format[position++];
  2186. if (char === startDelimiter) {
  2187. if (text) {
  2188. tokens.push({ type: 'text', value: text });
  2189. }
  2190. text = '';
  2191. var sub = '';
  2192. char = format[position++];
  2193. while (char !== undefined && char !== endDelimiter) {
  2194. sub += char;
  2195. char = format[position++];
  2196. }
  2197. var isClosed = char === endDelimiter;
  2198. var type = RE_TOKEN_LIST_VALUE.test(sub) ?
  2199. 'list' :
  2200. isClosed && RE_TOKEN_NAMED_VALUE.test(sub) ?
  2201. 'named' :
  2202. 'unknown';
  2203. tokens.push({ value: sub, type: type });
  2204. }
  2205. // else if (char === '%') {
  2206. // // when found rails i18n syntax, skip text capture
  2207. // if (format[position] !== '{') {
  2208. // text += char
  2209. // }
  2210. // }
  2211. else {
  2212. text += char;
  2213. }
  2214. }
  2215. text && tokens.push({ type: 'text', value: text });
  2216. return tokens;
  2217. }
  2218. function compile(tokens, values) {
  2219. var compiled = [];
  2220. var index = 0;
  2221. var mode = isArray(values) ?
  2222. 'list' :
  2223. isObject(values) ?
  2224. 'named' :
  2225. 'unknown';
  2226. if (mode === 'unknown') {
  2227. return compiled;
  2228. }
  2229. while (index < tokens.length) {
  2230. var token = tokens[index];
  2231. switch (token.type) {
  2232. case 'text':
  2233. compiled.push(token.value);
  2234. break;
  2235. case 'list':
  2236. compiled.push(values[parseInt(token.value, 10)]);
  2237. break;
  2238. case 'named':
  2239. if (mode === 'named') {
  2240. compiled.push(values[token.value]);
  2241. } else
  2242. {
  2243. if (true) {
  2244. console.warn("Type of token '".concat(token.type, "' and format of value '").concat(mode, "' don't match!"));
  2245. }
  2246. }
  2247. break;
  2248. case 'unknown':
  2249. if (true) {
  2250. console.warn("Detect 'unknown' type of token!");
  2251. }
  2252. break;}
  2253. index++;
  2254. }
  2255. return compiled;
  2256. }
  2257. var LOCALE_ZH_HANS = 'zh-Hans';exports.LOCALE_ZH_HANS = LOCALE_ZH_HANS;
  2258. var LOCALE_ZH_HANT = 'zh-Hant';exports.LOCALE_ZH_HANT = LOCALE_ZH_HANT;
  2259. var LOCALE_EN = 'en';exports.LOCALE_EN = LOCALE_EN;
  2260. var LOCALE_FR = 'fr';exports.LOCALE_FR = LOCALE_FR;
  2261. var LOCALE_ES = 'es';exports.LOCALE_ES = LOCALE_ES;
  2262. var hasOwnProperty = Object.prototype.hasOwnProperty;
  2263. var hasOwn = function hasOwn(val, key) {return hasOwnProperty.call(val, key);};
  2264. var defaultFormatter = new BaseFormatter();
  2265. function include(str, parts) {
  2266. return !!parts.find(function (part) {return str.indexOf(part) !== -1;});
  2267. }
  2268. function startsWith(str, parts) {
  2269. return parts.find(function (part) {return str.indexOf(part) === 0;});
  2270. }
  2271. function normalizeLocale(locale, messages) {
  2272. if (!locale) {
  2273. return;
  2274. }
  2275. locale = locale.trim().replace(/_/g, '-');
  2276. if (messages && messages[locale]) {
  2277. return locale;
  2278. }
  2279. locale = locale.toLowerCase();
  2280. if (locale.indexOf('zh') === 0) {
  2281. if (locale.indexOf('-hans') > -1) {
  2282. return LOCALE_ZH_HANS;
  2283. }
  2284. if (locale.indexOf('-hant') > -1) {
  2285. return LOCALE_ZH_HANT;
  2286. }
  2287. if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {
  2288. return LOCALE_ZH_HANT;
  2289. }
  2290. return LOCALE_ZH_HANS;
  2291. }
  2292. var lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);
  2293. if (lang) {
  2294. return lang;
  2295. }
  2296. }var
  2297. I18n = /*#__PURE__*/function () {
  2298. function I18n(_ref3) {var locale = _ref3.locale,fallbackLocale = _ref3.fallbackLocale,messages = _ref3.messages,watcher = _ref3.watcher,formater = _ref3.formater;_classCallCheck(this, I18n);
  2299. this.locale = LOCALE_EN;
  2300. this.fallbackLocale = LOCALE_EN;
  2301. this.message = {};
  2302. this.messages = {};
  2303. this.watchers = [];
  2304. if (fallbackLocale) {
  2305. this.fallbackLocale = fallbackLocale;
  2306. }
  2307. this.formater = formater || defaultFormatter;
  2308. this.messages = messages || {};
  2309. this.setLocale(locale || LOCALE_EN);
  2310. if (watcher) {
  2311. this.watchLocale(watcher);
  2312. }
  2313. }_createClass(I18n, [{ key: "setLocale", value: function setLocale(
  2314. locale) {var _this = this;
  2315. var oldLocale = this.locale;
  2316. this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;
  2317. if (!this.messages[this.locale]) {
  2318. // 可能初始化时不存在
  2319. this.messages[this.locale] = {};
  2320. }
  2321. this.message = this.messages[this.locale];
  2322. // 仅发生变化时,通知
  2323. if (oldLocale !== this.locale) {
  2324. this.watchers.forEach(function (watcher) {
  2325. watcher(_this.locale, oldLocale);
  2326. });
  2327. }
  2328. } }, { key: "getLocale", value: function getLocale()
  2329. {
  2330. return this.locale;
  2331. } }, { key: "watchLocale", value: function watchLocale(
  2332. fn) {var _this2 = this;
  2333. var index = this.watchers.push(fn) - 1;
  2334. return function () {
  2335. _this2.watchers.splice(index, 1);
  2336. };
  2337. } }, { key: "add", value: function add(
  2338. locale, message) {var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
  2339. var curMessages = this.messages[locale];
  2340. if (curMessages) {
  2341. if (override) {
  2342. Object.assign(curMessages, message);
  2343. } else
  2344. {
  2345. Object.keys(message).forEach(function (key) {
  2346. if (!hasOwn(curMessages, key)) {
  2347. curMessages[key] = message[key];
  2348. }
  2349. });
  2350. }
  2351. } else
  2352. {
  2353. this.messages[locale] = message;
  2354. }
  2355. } }, { key: "f", value: function f(
  2356. message, values, delimiters) {
  2357. return this.formater.interpolate(message, values, delimiters).join('');
  2358. } }, { key: "t", value: function t(
  2359. key, locale, values) {
  2360. var message = this.message;
  2361. if (typeof locale === 'string') {
  2362. locale = normalizeLocale(locale, this.messages);
  2363. locale && (message = this.messages[locale]);
  2364. } else
  2365. {
  2366. values = locale;
  2367. }
  2368. if (!hasOwn(message, key)) {
  2369. console.warn("Cannot translate the value of keypath ".concat(key, ". Use the value of keypath as default."));
  2370. return key;
  2371. }
  2372. return this.formater.interpolate(message[key], values).join('');
  2373. } }]);return I18n;}();exports.I18n = I18n;
  2374. function watchAppLocale(appVm, i18n) {
  2375. // 需要保证 watch 的触发在组件渲染之前
  2376. if (appVm.$watchLocale) {
  2377. // vue2
  2378. appVm.$watchLocale(function (newLocale) {
  2379. i18n.setLocale(newLocale);
  2380. });
  2381. } else
  2382. {
  2383. appVm.$watch(function () {return appVm.$locale;}, function (newLocale) {
  2384. i18n.setLocale(newLocale);
  2385. });
  2386. }
  2387. }
  2388. function getDefaultLocale() {
  2389. if (typeof uni !== 'undefined' && uni.getLocale) {
  2390. return uni.getLocale();
  2391. }
  2392. // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale
  2393. if (typeof global !== 'undefined' && global.getLocale) {
  2394. return global.getLocale();
  2395. }
  2396. return LOCALE_EN;
  2397. }
  2398. function initVueI18n(locale) {var messages = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};var fallbackLocale = arguments.length > 2 ? arguments[2] : undefined;var watcher = arguments.length > 3 ? arguments[3] : undefined;
  2399. // 兼容旧版本入参
  2400. if (typeof locale !== 'string') {var _ref4 =
  2401. [
  2402. messages,
  2403. locale];locale = _ref4[0];messages = _ref4[1];
  2404. }
  2405. if (typeof locale !== 'string') {
  2406. // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined
  2407. locale = getDefaultLocale();
  2408. }
  2409. if (typeof fallbackLocale !== 'string') {
  2410. fallbackLocale =
  2411. typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale ||
  2412. LOCALE_EN;
  2413. }
  2414. var i18n = new I18n({
  2415. locale: locale,
  2416. fallbackLocale: fallbackLocale,
  2417. messages: messages,
  2418. watcher: watcher });
  2419. var _t = function t(key, values) {
  2420. if (typeof getApp !== 'function') {
  2421. // app view
  2422. /* eslint-disable no-func-assign */
  2423. _t = function t(key, values) {
  2424. return i18n.t(key, values);
  2425. };
  2426. } else
  2427. {
  2428. var isWatchedAppLocale = false;
  2429. _t = function t(key, values) {
  2430. var appVm = getApp().$vm;
  2431. // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化
  2432. // options: {
  2433. // type: Array,
  2434. // default () {
  2435. // return [{
  2436. // icon: 'shop',
  2437. // text: t("uni-goods-nav.options.shop"),
  2438. // }, {
  2439. // icon: 'cart',
  2440. // text: t("uni-goods-nav.options.cart")
  2441. // }]
  2442. // }
  2443. // },
  2444. if (appVm) {
  2445. // 触发响应式
  2446. appVm.$locale;
  2447. if (!isWatchedAppLocale) {
  2448. isWatchedAppLocale = true;
  2449. watchAppLocale(appVm, i18n);
  2450. }
  2451. }
  2452. return i18n.t(key, values);
  2453. };
  2454. }
  2455. return _t(key, values);
  2456. };
  2457. return {
  2458. i18n: i18n,
  2459. f: function f(message, values, delimiters) {
  2460. return i18n.f(message, values, delimiters);
  2461. },
  2462. t: function t(key, values) {
  2463. return _t(key, values);
  2464. },
  2465. add: function add(locale, message) {var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
  2466. return i18n.add(locale, message, override);
  2467. },
  2468. watch: function watch(fn) {
  2469. return i18n.watchLocale(fn);
  2470. },
  2471. getLocale: function getLocale() {
  2472. return i18n.getLocale();
  2473. },
  2474. setLocale: function setLocale(newLocale) {
  2475. return i18n.setLocale(newLocale);
  2476. } };
  2477. }
  2478. var isString = function isString(val) {return typeof val === 'string';};exports.isString = isString;
  2479. var formater;
  2480. function hasI18nJson(jsonObj, delimiters) {
  2481. if (!formater) {
  2482. formater = new BaseFormatter();
  2483. }
  2484. return walkJsonObj(jsonObj, function (jsonObj, key) {
  2485. var value = jsonObj[key];
  2486. if (isString(value)) {
  2487. if (isI18nStr(value, delimiters)) {
  2488. return true;
  2489. }
  2490. } else
  2491. {
  2492. return hasI18nJson(value, delimiters);
  2493. }
  2494. });
  2495. }
  2496. function parseI18nJson(jsonObj, values, delimiters) {
  2497. if (!formater) {
  2498. formater = new BaseFormatter();
  2499. }
  2500. walkJsonObj(jsonObj, function (jsonObj, key) {
  2501. var value = jsonObj[key];
  2502. if (isString(value)) {
  2503. if (isI18nStr(value, delimiters)) {
  2504. jsonObj[key] = compileStr(value, values, delimiters);
  2505. }
  2506. } else
  2507. {
  2508. parseI18nJson(value, values, delimiters);
  2509. }
  2510. });
  2511. return jsonObj;
  2512. }
  2513. function compileI18nJsonStr(jsonStr, _ref5) {var locale = _ref5.locale,locales = _ref5.locales,delimiters = _ref5.delimiters;
  2514. if (!isI18nStr(jsonStr, delimiters)) {
  2515. return jsonStr;
  2516. }
  2517. if (!formater) {
  2518. formater = new BaseFormatter();
  2519. }
  2520. var localeValues = [];
  2521. Object.keys(locales).forEach(function (name) {
  2522. if (name !== locale) {
  2523. localeValues.push({
  2524. locale: name,
  2525. values: locales[name] });
  2526. }
  2527. });
  2528. localeValues.unshift({ locale: locale, values: locales[locale] });
  2529. try {
  2530. return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);
  2531. }
  2532. catch (e) {}
  2533. return jsonStr;
  2534. }
  2535. function isI18nStr(value, delimiters) {
  2536. return value.indexOf(delimiters[0]) > -1;
  2537. }
  2538. function compileStr(value, values, delimiters) {
  2539. return formater.interpolate(value, values, delimiters).join('');
  2540. }
  2541. function compileValue(jsonObj, key, localeValues, delimiters) {
  2542. var value = jsonObj[key];
  2543. if (isString(value)) {
  2544. // 存在国际化
  2545. if (isI18nStr(value, delimiters)) {
  2546. jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);
  2547. if (localeValues.length > 1) {
  2548. // 格式化国际化语言
  2549. var valueLocales = jsonObj[key + 'Locales'] = {};
  2550. localeValues.forEach(function (localValue) {
  2551. valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);
  2552. });
  2553. }
  2554. }
  2555. } else
  2556. {
  2557. compileJsonObj(value, localeValues, delimiters);
  2558. }
  2559. }
  2560. function compileJsonObj(jsonObj, localeValues, delimiters) {
  2561. walkJsonObj(jsonObj, function (jsonObj, key) {
  2562. compileValue(jsonObj, key, localeValues, delimiters);
  2563. });
  2564. return jsonObj;
  2565. }
  2566. function walkJsonObj(jsonObj, walk) {
  2567. if (isArray(jsonObj)) {
  2568. for (var i = 0; i < jsonObj.length; i++) {
  2569. if (walk(jsonObj, i)) {
  2570. return true;
  2571. }
  2572. }
  2573. } else
  2574. if (isObject(jsonObj)) {
  2575. for (var key in jsonObj) {
  2576. if (walk(jsonObj, key)) {
  2577. return true;
  2578. }
  2579. }
  2580. }
  2581. return false;
  2582. }
  2583. function resolveLocale(locales) {
  2584. return function (locale) {
  2585. if (!locale) {
  2586. return locale;
  2587. }
  2588. locale = normalizeLocale(locale) || locale;
  2589. return resolveLocaleChain(locale).find(function (locale) {return locales.indexOf(locale) > -1;});
  2590. };
  2591. }
  2592. function resolveLocaleChain(locale) {
  2593. var chain = [];
  2594. var tokens = locale.split('-');
  2595. while (tokens.length) {
  2596. chain.push(tokens.join('-'));
  2597. tokens.pop();
  2598. }
  2599. return chain;
  2600. }
  2601. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"], __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 2)))
  2602. /***/ }),
  2603. /* 4 */
  2604. /*!******************************************************************************************!*\
  2605. !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js ***!
  2606. \******************************************************************************************/
  2607. /*! exports provided: default */
  2608. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  2609. "use strict";
  2610. __webpack_require__.r(__webpack_exports__);
  2611. /* WEBPACK VAR INJECTION */(function(global) {/*!
  2612. * Vue.js v2.6.11
  2613. * (c) 2014-2022 Evan You
  2614. * Released under the MIT License.
  2615. */
  2616. /* */
  2617. var emptyObject = Object.freeze({});
  2618. // These helpers produce better VM code in JS engines due to their
  2619. // explicitness and function inlining.
  2620. function isUndef (v) {
  2621. return v === undefined || v === null
  2622. }
  2623. function isDef (v) {
  2624. return v !== undefined && v !== null
  2625. }
  2626. function isTrue (v) {
  2627. return v === true
  2628. }
  2629. function isFalse (v) {
  2630. return v === false
  2631. }
  2632. /**
  2633. * Check if value is primitive.
  2634. */
  2635. function isPrimitive (value) {
  2636. return (
  2637. typeof value === 'string' ||
  2638. typeof value === 'number' ||
  2639. // $flow-disable-line
  2640. typeof value === 'symbol' ||
  2641. typeof value === 'boolean'
  2642. )
  2643. }
  2644. /**
  2645. * Quick object check - this is primarily used to tell
  2646. * Objects from primitive values when we know the value
  2647. * is a JSON-compliant type.
  2648. */
  2649. function isObject (obj) {
  2650. return obj !== null && typeof obj === 'object'
  2651. }
  2652. /**
  2653. * Get the raw type string of a value, e.g., [object Object].
  2654. */
  2655. var _toString = Object.prototype.toString;
  2656. function toRawType (value) {
  2657. return _toString.call(value).slice(8, -1)
  2658. }
  2659. /**
  2660. * Strict object type check. Only returns true
  2661. * for plain JavaScript objects.
  2662. */
  2663. function isPlainObject (obj) {
  2664. return _toString.call(obj) === '[object Object]'
  2665. }
  2666. function isRegExp (v) {
  2667. return _toString.call(v) === '[object RegExp]'
  2668. }
  2669. /**
  2670. * Check if val is a valid array index.
  2671. */
  2672. function isValidArrayIndex (val) {
  2673. var n = parseFloat(String(val));
  2674. return n >= 0 && Math.floor(n) === n && isFinite(val)
  2675. }
  2676. function isPromise (val) {
  2677. return (
  2678. isDef(val) &&
  2679. typeof val.then === 'function' &&
  2680. typeof val.catch === 'function'
  2681. )
  2682. }
  2683. /**
  2684. * Convert a value to a string that is actually rendered.
  2685. */
  2686. function toString (val) {
  2687. return val == null
  2688. ? ''
  2689. : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)
  2690. ? JSON.stringify(val, null, 2)
  2691. : String(val)
  2692. }
  2693. /**
  2694. * Convert an input value to a number for persistence.
  2695. * If the conversion fails, return original string.
  2696. */
  2697. function toNumber (val) {
  2698. var n = parseFloat(val);
  2699. return isNaN(n) ? val : n
  2700. }
  2701. /**
  2702. * Make a map and return a function for checking if a key
  2703. * is in that map.
  2704. */
  2705. function makeMap (
  2706. str,
  2707. expectsLowerCase
  2708. ) {
  2709. var map = Object.create(null);
  2710. var list = str.split(',');
  2711. for (var i = 0; i < list.length; i++) {
  2712. map[list[i]] = true;
  2713. }
  2714. return expectsLowerCase
  2715. ? function (val) { return map[val.toLowerCase()]; }
  2716. : function (val) { return map[val]; }
  2717. }
  2718. /**
  2719. * Check if a tag is a built-in tag.
  2720. */
  2721. var isBuiltInTag = makeMap('slot,component', true);
  2722. /**
  2723. * Check if an attribute is a reserved attribute.
  2724. */
  2725. var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');
  2726. /**
  2727. * Remove an item from an array.
  2728. */
  2729. function remove (arr, item) {
  2730. if (arr.length) {
  2731. var index = arr.indexOf(item);
  2732. if (index > -1) {
  2733. return arr.splice(index, 1)
  2734. }
  2735. }
  2736. }
  2737. /**
  2738. * Check whether an object has the property.
  2739. */
  2740. var hasOwnProperty = Object.prototype.hasOwnProperty;
  2741. function hasOwn (obj, key) {
  2742. return hasOwnProperty.call(obj, key)
  2743. }
  2744. /**
  2745. * Create a cached version of a pure function.
  2746. */
  2747. function cached (fn) {
  2748. var cache = Object.create(null);
  2749. return (function cachedFn (str) {
  2750. var hit = cache[str];
  2751. return hit || (cache[str] = fn(str))
  2752. })
  2753. }
  2754. /**
  2755. * Camelize a hyphen-delimited string.
  2756. */
  2757. var camelizeRE = /-(\w)/g;
  2758. var camelize = cached(function (str) {
  2759. return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
  2760. });
  2761. /**
  2762. * Capitalize a string.
  2763. */
  2764. var capitalize = cached(function (str) {
  2765. return str.charAt(0).toUpperCase() + str.slice(1)
  2766. });
  2767. /**
  2768. * Hyphenate a camelCase string.
  2769. */
  2770. var hyphenateRE = /\B([A-Z])/g;
  2771. var hyphenate = cached(function (str) {
  2772. return str.replace(hyphenateRE, '-$1').toLowerCase()
  2773. });
  2774. /**
  2775. * Simple bind polyfill for environments that do not support it,
  2776. * e.g., PhantomJS 1.x. Technically, we don't need this anymore
  2777. * since native bind is now performant enough in most browsers.
  2778. * But removing it would mean breaking code that was able to run in
  2779. * PhantomJS 1.x, so this must be kept for backward compatibility.
  2780. */
  2781. /* istanbul ignore next */
  2782. function polyfillBind (fn, ctx) {
  2783. function boundFn (a) {
  2784. var l = arguments.length;
  2785. return l
  2786. ? l > 1
  2787. ? fn.apply(ctx, arguments)
  2788. : fn.call(ctx, a)
  2789. : fn.call(ctx)
  2790. }
  2791. boundFn._length = fn.length;
  2792. return boundFn
  2793. }
  2794. function nativeBind (fn, ctx) {
  2795. return fn.bind(ctx)
  2796. }
  2797. var bind = Function.prototype.bind
  2798. ? nativeBind
  2799. : polyfillBind;
  2800. /**
  2801. * Convert an Array-like object to a real Array.
  2802. */
  2803. function toArray (list, start) {
  2804. start = start || 0;
  2805. var i = list.length - start;
  2806. var ret = new Array(i);
  2807. while (i--) {
  2808. ret[i] = list[i + start];
  2809. }
  2810. return ret
  2811. }
  2812. /**
  2813. * Mix properties into target object.
  2814. */
  2815. function extend (to, _from) {
  2816. for (var key in _from) {
  2817. to[key] = _from[key];
  2818. }
  2819. return to
  2820. }
  2821. /**
  2822. * Merge an Array of Objects into a single Object.
  2823. */
  2824. function toObject (arr) {
  2825. var res = {};
  2826. for (var i = 0; i < arr.length; i++) {
  2827. if (arr[i]) {
  2828. extend(res, arr[i]);
  2829. }
  2830. }
  2831. return res
  2832. }
  2833. /* eslint-disable no-unused-vars */
  2834. /**
  2835. * Perform no operation.
  2836. * Stubbing args to make Flow happy without leaving useless transpiled code
  2837. * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).
  2838. */
  2839. function noop (a, b, c) {}
  2840. /**
  2841. * Always return false.
  2842. */
  2843. var no = function (a, b, c) { return false; };
  2844. /* eslint-enable no-unused-vars */
  2845. /**
  2846. * Return the same value.
  2847. */
  2848. var identity = function (_) { return _; };
  2849. /**
  2850. * Check if two values are loosely equal - that is,
  2851. * if they are plain objects, do they have the same shape?
  2852. */
  2853. function looseEqual (a, b) {
  2854. if (a === b) { return true }
  2855. var isObjectA = isObject(a);
  2856. var isObjectB = isObject(b);
  2857. if (isObjectA && isObjectB) {
  2858. try {
  2859. var isArrayA = Array.isArray(a);
  2860. var isArrayB = Array.isArray(b);
  2861. if (isArrayA && isArrayB) {
  2862. return a.length === b.length && a.every(function (e, i) {
  2863. return looseEqual(e, b[i])
  2864. })
  2865. } else if (a instanceof Date && b instanceof Date) {
  2866. return a.getTime() === b.getTime()
  2867. } else if (!isArrayA && !isArrayB) {
  2868. var keysA = Object.keys(a);
  2869. var keysB = Object.keys(b);
  2870. return keysA.length === keysB.length && keysA.every(function (key) {
  2871. return looseEqual(a[key], b[key])
  2872. })
  2873. } else {
  2874. /* istanbul ignore next */
  2875. return false
  2876. }
  2877. } catch (e) {
  2878. /* istanbul ignore next */
  2879. return false
  2880. }
  2881. } else if (!isObjectA && !isObjectB) {
  2882. return String(a) === String(b)
  2883. } else {
  2884. return false
  2885. }
  2886. }
  2887. /**
  2888. * Return the first index at which a loosely equal value can be
  2889. * found in the array (if value is a plain object, the array must
  2890. * contain an object of the same shape), or -1 if it is not present.
  2891. */
  2892. function looseIndexOf (arr, val) {
  2893. for (var i = 0; i < arr.length; i++) {
  2894. if (looseEqual(arr[i], val)) { return i }
  2895. }
  2896. return -1
  2897. }
  2898. /**
  2899. * Ensure a function is called only once.
  2900. */
  2901. function once (fn) {
  2902. var called = false;
  2903. return function () {
  2904. if (!called) {
  2905. called = true;
  2906. fn.apply(this, arguments);
  2907. }
  2908. }
  2909. }
  2910. var ASSET_TYPES = [
  2911. 'component',
  2912. 'directive',
  2913. 'filter'
  2914. ];
  2915. var LIFECYCLE_HOOKS = [
  2916. 'beforeCreate',
  2917. 'created',
  2918. 'beforeMount',
  2919. 'mounted',
  2920. 'beforeUpdate',
  2921. 'updated',
  2922. 'beforeDestroy',
  2923. 'destroyed',
  2924. 'activated',
  2925. 'deactivated',
  2926. 'errorCaptured',
  2927. 'serverPrefetch'
  2928. ];
  2929. /* */
  2930. var config = ({
  2931. /**
  2932. * Option merge strategies (used in core/util/options)
  2933. */
  2934. // $flow-disable-line
  2935. optionMergeStrategies: Object.create(null),
  2936. /**
  2937. * Whether to suppress warnings.
  2938. */
  2939. silent: false,
  2940. /**
  2941. * Show production mode tip message on boot?
  2942. */
  2943. productionTip: "development" !== 'production',
  2944. /**
  2945. * Whether to enable devtools
  2946. */
  2947. devtools: "development" !== 'production',
  2948. /**
  2949. * Whether to record perf
  2950. */
  2951. performance: false,
  2952. /**
  2953. * Error handler for watcher errors
  2954. */
  2955. errorHandler: null,
  2956. /**
  2957. * Warn handler for watcher warns
  2958. */
  2959. warnHandler: null,
  2960. /**
  2961. * Ignore certain custom elements
  2962. */
  2963. ignoredElements: [],
  2964. /**
  2965. * Custom user key aliases for v-on
  2966. */
  2967. // $flow-disable-line
  2968. keyCodes: Object.create(null),
  2969. /**
  2970. * Check if a tag is reserved so that it cannot be registered as a
  2971. * component. This is platform-dependent and may be overwritten.
  2972. */
  2973. isReservedTag: no,
  2974. /**
  2975. * Check if an attribute is reserved so that it cannot be used as a component
  2976. * prop. This is platform-dependent and may be overwritten.
  2977. */
  2978. isReservedAttr: no,
  2979. /**
  2980. * Check if a tag is an unknown element.
  2981. * Platform-dependent.
  2982. */
  2983. isUnknownElement: no,
  2984. /**
  2985. * Get the namespace of an element
  2986. */
  2987. getTagNamespace: noop,
  2988. /**
  2989. * Parse the real tag name for the specific platform.
  2990. */
  2991. parsePlatformTagName: identity,
  2992. /**
  2993. * Check if an attribute must be bound using property, e.g. value
  2994. * Platform-dependent.
  2995. */
  2996. mustUseProp: no,
  2997. /**
  2998. * Perform updates asynchronously. Intended to be used by Vue Test Utils
  2999. * This will significantly reduce performance if set to false.
  3000. */
  3001. async: true,
  3002. /**
  3003. * Exposed for legacy reasons
  3004. */
  3005. _lifecycleHooks: LIFECYCLE_HOOKS
  3006. });
  3007. /* */
  3008. /**
  3009. * unicode letters used for parsing html tags, component names and property paths.
  3010. * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
  3011. * skipping \u10000-\uEFFFF due to it freezing up PhantomJS
  3012. */
  3013. 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/;
  3014. /**
  3015. * Check if a string starts with $ or _
  3016. */
  3017. function isReserved (str) {
  3018. var c = (str + '').charCodeAt(0);
  3019. return c === 0x24 || c === 0x5F
  3020. }
  3021. /**
  3022. * Define a property.
  3023. */
  3024. function def (obj, key, val, enumerable) {
  3025. Object.defineProperty(obj, key, {
  3026. value: val,
  3027. enumerable: !!enumerable,
  3028. writable: true,
  3029. configurable: true
  3030. });
  3031. }
  3032. /**
  3033. * Parse simple path.
  3034. */
  3035. var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
  3036. function parsePath (path) {
  3037. if (bailRE.test(path)) {
  3038. return
  3039. }
  3040. var segments = path.split('.');
  3041. return function (obj) {
  3042. for (var i = 0; i < segments.length; i++) {
  3043. if (!obj) { return }
  3044. obj = obj[segments[i]];
  3045. }
  3046. return obj
  3047. }
  3048. }
  3049. /* */
  3050. // can we use __proto__?
  3051. var hasProto = '__proto__' in {};
  3052. // Browser environment sniffing
  3053. var inBrowser = typeof window !== 'undefined';
  3054. var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
  3055. var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
  3056. var UA = inBrowser && window.navigator.userAgent.toLowerCase();
  3057. var isIE = UA && /msie|trident/.test(UA);
  3058. var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
  3059. var isEdge = UA && UA.indexOf('edge/') > 0;
  3060. var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
  3061. var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
  3062. var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
  3063. var isPhantomJS = UA && /phantomjs/.test(UA);
  3064. var isFF = UA && UA.match(/firefox\/(\d+)/);
  3065. // Firefox has a "watch" function on Object.prototype...
  3066. var nativeWatch = ({}).watch;
  3067. if (inBrowser) {
  3068. try {
  3069. var opts = {};
  3070. Object.defineProperty(opts, 'passive', ({
  3071. get: function get () {
  3072. }
  3073. })); // https://github.com/facebook/flow/issues/285
  3074. window.addEventListener('test-passive', null, opts);
  3075. } catch (e) {}
  3076. }
  3077. // this needs to be lazy-evaled because vue may be required before
  3078. // vue-server-renderer can set VUE_ENV
  3079. var _isServer;
  3080. var isServerRendering = function () {
  3081. if (_isServer === undefined) {
  3082. /* istanbul ignore if */
  3083. if (!inBrowser && !inWeex && typeof global !== 'undefined') {
  3084. // detect presence of vue-server-renderer and avoid
  3085. // Webpack shimming the process
  3086. _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';
  3087. } else {
  3088. _isServer = false;
  3089. }
  3090. }
  3091. return _isServer
  3092. };
  3093. // detect devtools
  3094. var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;
  3095. /* istanbul ignore next */
  3096. function isNative (Ctor) {
  3097. return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
  3098. }
  3099. var hasSymbol =
  3100. typeof Symbol !== 'undefined' && isNative(Symbol) &&
  3101. typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
  3102. var _Set;
  3103. /* istanbul ignore if */ // $flow-disable-line
  3104. if (typeof Set !== 'undefined' && isNative(Set)) {
  3105. // use native Set when available.
  3106. _Set = Set;
  3107. } else {
  3108. // a non-standard Set polyfill that only works with primitive keys.
  3109. _Set = /*@__PURE__*/(function () {
  3110. function Set () {
  3111. this.set = Object.create(null);
  3112. }
  3113. Set.prototype.has = function has (key) {
  3114. return this.set[key] === true
  3115. };
  3116. Set.prototype.add = function add (key) {
  3117. this.set[key] = true;
  3118. };
  3119. Set.prototype.clear = function clear () {
  3120. this.set = Object.create(null);
  3121. };
  3122. return Set;
  3123. }());
  3124. }
  3125. /* */
  3126. var warn = noop;
  3127. var tip = noop;
  3128. var generateComponentTrace = (noop); // work around flow check
  3129. var formatComponentName = (noop);
  3130. if (true) {
  3131. var hasConsole = typeof console !== 'undefined';
  3132. var classifyRE = /(?:^|[-_])(\w)/g;
  3133. var classify = function (str) { return str
  3134. .replace(classifyRE, function (c) { return c.toUpperCase(); })
  3135. .replace(/[-_]/g, ''); };
  3136. warn = function (msg, vm) {
  3137. var trace = vm ? generateComponentTrace(vm) : '';
  3138. if (config.warnHandler) {
  3139. config.warnHandler.call(null, msg, vm, trace);
  3140. } else if (hasConsole && (!config.silent)) {
  3141. console.error(("[Vue warn]: " + msg + trace));
  3142. }
  3143. };
  3144. tip = function (msg, vm) {
  3145. if (hasConsole && (!config.silent)) {
  3146. console.warn("[Vue tip]: " + msg + (
  3147. vm ? generateComponentTrace(vm) : ''
  3148. ));
  3149. }
  3150. };
  3151. formatComponentName = function (vm, includeFile) {
  3152. if (vm.$root === vm) {
  3153. if (vm.$options && vm.$options.__file) { // fixed by xxxxxx
  3154. return ('') + vm.$options.__file
  3155. }
  3156. return '<Root>'
  3157. }
  3158. var options = typeof vm === 'function' && vm.cid != null
  3159. ? vm.options
  3160. : vm._isVue
  3161. ? vm.$options || vm.constructor.options
  3162. : vm;
  3163. var name = options.name || options._componentTag;
  3164. var file = options.__file;
  3165. if (!name && file) {
  3166. var match = file.match(/([^/\\]+)\.vue$/);
  3167. name = match && match[1];
  3168. }
  3169. return (
  3170. (name ? ("<" + (classify(name)) + ">") : "<Anonymous>") +
  3171. (file && includeFile !== false ? (" at " + file) : '')
  3172. )
  3173. };
  3174. var repeat = function (str, n) {
  3175. var res = '';
  3176. while (n) {
  3177. if (n % 2 === 1) { res += str; }
  3178. if (n > 1) { str += str; }
  3179. n >>= 1;
  3180. }
  3181. return res
  3182. };
  3183. generateComponentTrace = function (vm) {
  3184. if (vm._isVue && vm.$parent) {
  3185. var tree = [];
  3186. var currentRecursiveSequence = 0;
  3187. while (vm && vm.$options.name !== 'PageBody') {
  3188. if (tree.length > 0) {
  3189. var last = tree[tree.length - 1];
  3190. if (last.constructor === vm.constructor) {
  3191. currentRecursiveSequence++;
  3192. vm = vm.$parent;
  3193. continue
  3194. } else if (currentRecursiveSequence > 0) {
  3195. tree[tree.length - 1] = [last, currentRecursiveSequence];
  3196. currentRecursiveSequence = 0;
  3197. }
  3198. }
  3199. !vm.$options.isReserved && tree.push(vm);
  3200. vm = vm.$parent;
  3201. }
  3202. return '\n\nfound in\n\n' + tree
  3203. .map(function (vm, i) { return ("" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)
  3204. ? ((formatComponentName(vm[0])) + "... (" + (vm[1]) + " recursive calls)")
  3205. : formatComponentName(vm))); })
  3206. .join('\n')
  3207. } else {
  3208. return ("\n\n(found in " + (formatComponentName(vm)) + ")")
  3209. }
  3210. };
  3211. }
  3212. /* */
  3213. var uid = 0;
  3214. /**
  3215. * A dep is an observable that can have multiple
  3216. * directives subscribing to it.
  3217. */
  3218. var Dep = function Dep () {
  3219. this.id = uid++;
  3220. this.subs = [];
  3221. };
  3222. Dep.prototype.addSub = function addSub (sub) {
  3223. this.subs.push(sub);
  3224. };
  3225. Dep.prototype.removeSub = function removeSub (sub) {
  3226. remove(this.subs, sub);
  3227. };
  3228. Dep.prototype.depend = function depend () {
  3229. if (Dep.SharedObject.target) {
  3230. Dep.SharedObject.target.addDep(this);
  3231. }
  3232. };
  3233. Dep.prototype.notify = function notify () {
  3234. // stabilize the subscriber list first
  3235. var subs = this.subs.slice();
  3236. if ( true && !config.async) {
  3237. // subs aren't sorted in scheduler if not running async
  3238. // we need to sort them now to make sure they fire in correct
  3239. // order
  3240. subs.sort(function (a, b) { return a.id - b.id; });
  3241. }
  3242. for (var i = 0, l = subs.length; i < l; i++) {
  3243. subs[i].update();
  3244. }
  3245. };
  3246. // The current target watcher being evaluated.
  3247. // This is globally unique because only one watcher
  3248. // can be evaluated at a time.
  3249. // fixed by xxxxxx (nvue shared vuex)
  3250. /* eslint-disable no-undef */
  3251. Dep.SharedObject = {};
  3252. Dep.SharedObject.target = null;
  3253. Dep.SharedObject.targetStack = [];
  3254. function pushTarget (target) {
  3255. Dep.SharedObject.targetStack.push(target);
  3256. Dep.SharedObject.target = target;
  3257. Dep.target = target;
  3258. }
  3259. function popTarget () {
  3260. Dep.SharedObject.targetStack.pop();
  3261. Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];
  3262. Dep.target = Dep.SharedObject.target;
  3263. }
  3264. /* */
  3265. var VNode = function VNode (
  3266. tag,
  3267. data,
  3268. children,
  3269. text,
  3270. elm,
  3271. context,
  3272. componentOptions,
  3273. asyncFactory
  3274. ) {
  3275. this.tag = tag;
  3276. this.data = data;
  3277. this.children = children;
  3278. this.text = text;
  3279. this.elm = elm;
  3280. this.ns = undefined;
  3281. this.context = context;
  3282. this.fnContext = undefined;
  3283. this.fnOptions = undefined;
  3284. this.fnScopeId = undefined;
  3285. this.key = data && data.key;
  3286. this.componentOptions = componentOptions;
  3287. this.componentInstance = undefined;
  3288. this.parent = undefined;
  3289. this.raw = false;
  3290. this.isStatic = false;
  3291. this.isRootInsert = true;
  3292. this.isComment = false;
  3293. this.isCloned = false;
  3294. this.isOnce = false;
  3295. this.asyncFactory = asyncFactory;
  3296. this.asyncMeta = undefined;
  3297. this.isAsyncPlaceholder = false;
  3298. };
  3299. var prototypeAccessors = { child: { configurable: true } };
  3300. // DEPRECATED: alias for componentInstance for backwards compat.
  3301. /* istanbul ignore next */
  3302. prototypeAccessors.child.get = function () {
  3303. return this.componentInstance
  3304. };
  3305. Object.defineProperties( VNode.prototype, prototypeAccessors );
  3306. var createEmptyVNode = function (text) {
  3307. if ( text === void 0 ) text = '';
  3308. var node = new VNode();
  3309. node.text = text;
  3310. node.isComment = true;
  3311. return node
  3312. };
  3313. function createTextVNode (val) {
  3314. return new VNode(undefined, undefined, undefined, String(val))
  3315. }
  3316. // optimized shallow clone
  3317. // used for static nodes and slot nodes because they may be reused across
  3318. // multiple renders, cloning them avoids errors when DOM manipulations rely
  3319. // on their elm reference.
  3320. function cloneVNode (vnode) {
  3321. var cloned = new VNode(
  3322. vnode.tag,
  3323. vnode.data,
  3324. // #7975
  3325. // clone children array to avoid mutating original in case of cloning
  3326. // a child.
  3327. vnode.children && vnode.children.slice(),
  3328. vnode.text,
  3329. vnode.elm,
  3330. vnode.context,
  3331. vnode.componentOptions,
  3332. vnode.asyncFactory
  3333. );
  3334. cloned.ns = vnode.ns;
  3335. cloned.isStatic = vnode.isStatic;
  3336. cloned.key = vnode.key;
  3337. cloned.isComment = vnode.isComment;
  3338. cloned.fnContext = vnode.fnContext;
  3339. cloned.fnOptions = vnode.fnOptions;
  3340. cloned.fnScopeId = vnode.fnScopeId;
  3341. cloned.asyncMeta = vnode.asyncMeta;
  3342. cloned.isCloned = true;
  3343. return cloned
  3344. }
  3345. /*
  3346. * not type checking this file because flow doesn't play well with
  3347. * dynamically accessing methods on Array prototype
  3348. */
  3349. var arrayProto = Array.prototype;
  3350. var arrayMethods = Object.create(arrayProto);
  3351. var methodsToPatch = [
  3352. 'push',
  3353. 'pop',
  3354. 'shift',
  3355. 'unshift',
  3356. 'splice',
  3357. 'sort',
  3358. 'reverse'
  3359. ];
  3360. /**
  3361. * Intercept mutating methods and emit events
  3362. */
  3363. methodsToPatch.forEach(function (method) {
  3364. // cache original method
  3365. var original = arrayProto[method];
  3366. def(arrayMethods, method, function mutator () {
  3367. var args = [], len = arguments.length;
  3368. while ( len-- ) args[ len ] = arguments[ len ];
  3369. var result = original.apply(this, args);
  3370. var ob = this.__ob__;
  3371. var inserted;
  3372. switch (method) {
  3373. case 'push':
  3374. case 'unshift':
  3375. inserted = args;
  3376. break
  3377. case 'splice':
  3378. inserted = args.slice(2);
  3379. break
  3380. }
  3381. if (inserted) { ob.observeArray(inserted); }
  3382. // notify change
  3383. ob.dep.notify();
  3384. return result
  3385. });
  3386. });
  3387. /* */
  3388. var arrayKeys = Object.getOwnPropertyNames(arrayMethods);
  3389. /**
  3390. * In some cases we may want to disable observation inside a component's
  3391. * update computation.
  3392. */
  3393. var shouldObserve = true;
  3394. function toggleObserving (value) {
  3395. shouldObserve = value;
  3396. }
  3397. /**
  3398. * Observer class that is attached to each observed
  3399. * object. Once attached, the observer converts the target
  3400. * object's property keys into getter/setters that
  3401. * collect dependencies and dispatch updates.
  3402. */
  3403. var Observer = function Observer (value) {
  3404. this.value = value;
  3405. this.dep = new Dep();
  3406. this.vmCount = 0;
  3407. def(value, '__ob__', this);
  3408. if (Array.isArray(value)) {
  3409. if (hasProto) {
  3410. {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑
  3411. if(value.push !== value.__proto__.push){
  3412. copyAugment(value, arrayMethods, arrayKeys);
  3413. } else {
  3414. protoAugment(value, arrayMethods);
  3415. }
  3416. }
  3417. } else {
  3418. copyAugment(value, arrayMethods, arrayKeys);
  3419. }
  3420. this.observeArray(value);
  3421. } else {
  3422. this.walk(value);
  3423. }
  3424. };
  3425. /**
  3426. * Walk through all properties and convert them into
  3427. * getter/setters. This method should only be called when
  3428. * value type is Object.
  3429. */
  3430. Observer.prototype.walk = function walk (obj) {
  3431. var keys = Object.keys(obj);
  3432. for (var i = 0; i < keys.length; i++) {
  3433. defineReactive$$1(obj, keys[i]);
  3434. }
  3435. };
  3436. /**
  3437. * Observe a list of Array items.
  3438. */
  3439. Observer.prototype.observeArray = function observeArray (items) {
  3440. for (var i = 0, l = items.length; i < l; i++) {
  3441. observe(items[i]);
  3442. }
  3443. };
  3444. // helpers
  3445. /**
  3446. * Augment a target Object or Array by intercepting
  3447. * the prototype chain using __proto__
  3448. */
  3449. function protoAugment (target, src) {
  3450. /* eslint-disable no-proto */
  3451. target.__proto__ = src;
  3452. /* eslint-enable no-proto */
  3453. }
  3454. /**
  3455. * Augment a target Object or Array by defining
  3456. * hidden properties.
  3457. */
  3458. /* istanbul ignore next */
  3459. function copyAugment (target, src, keys) {
  3460. for (var i = 0, l = keys.length; i < l; i++) {
  3461. var key = keys[i];
  3462. def(target, key, src[key]);
  3463. }
  3464. }
  3465. /**
  3466. * Attempt to create an observer instance for a value,
  3467. * returns the new observer if successfully observed,
  3468. * or the existing observer if the value already has one.
  3469. */
  3470. function observe (value, asRootData) {
  3471. if (!isObject(value) || value instanceof VNode) {
  3472. return
  3473. }
  3474. var ob;
  3475. if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
  3476. ob = value.__ob__;
  3477. } else if (
  3478. shouldObserve &&
  3479. !isServerRendering() &&
  3480. (Array.isArray(value) || isPlainObject(value)) &&
  3481. Object.isExtensible(value) &&
  3482. !value._isVue
  3483. ) {
  3484. ob = new Observer(value);
  3485. }
  3486. if (asRootData && ob) {
  3487. ob.vmCount++;
  3488. }
  3489. return ob
  3490. }
  3491. /**
  3492. * Define a reactive property on an Object.
  3493. */
  3494. function defineReactive$$1 (
  3495. obj,
  3496. key,
  3497. val,
  3498. customSetter,
  3499. shallow
  3500. ) {
  3501. var dep = new Dep();
  3502. var property = Object.getOwnPropertyDescriptor(obj, key);
  3503. if (property && property.configurable === false) {
  3504. return
  3505. }
  3506. // cater for pre-defined getter/setters
  3507. var getter = property && property.get;
  3508. var setter = property && property.set;
  3509. if ((!getter || setter) && arguments.length === 2) {
  3510. val = obj[key];
  3511. }
  3512. var childOb = !shallow && observe(val);
  3513. Object.defineProperty(obj, key, {
  3514. enumerable: true,
  3515. configurable: true,
  3516. get: function reactiveGetter () {
  3517. var value = getter ? getter.call(obj) : val;
  3518. if (Dep.SharedObject.target) { // fixed by xxxxxx
  3519. dep.depend();
  3520. if (childOb) {
  3521. childOb.dep.depend();
  3522. if (Array.isArray(value)) {
  3523. dependArray(value);
  3524. }
  3525. }
  3526. }
  3527. return value
  3528. },
  3529. set: function reactiveSetter (newVal) {
  3530. var value = getter ? getter.call(obj) : val;
  3531. /* eslint-disable no-self-compare */
  3532. if (newVal === value || (newVal !== newVal && value !== value)) {
  3533. return
  3534. }
  3535. /* eslint-enable no-self-compare */
  3536. if ( true && customSetter) {
  3537. customSetter();
  3538. }
  3539. // #7981: for accessor properties without setter
  3540. if (getter && !setter) { return }
  3541. if (setter) {
  3542. setter.call(obj, newVal);
  3543. } else {
  3544. val = newVal;
  3545. }
  3546. childOb = !shallow && observe(newVal);
  3547. dep.notify();
  3548. }
  3549. });
  3550. }
  3551. /**
  3552. * Set a property on an object. Adds the new property and
  3553. * triggers change notification if the property doesn't
  3554. * already exist.
  3555. */
  3556. function set (target, key, val) {
  3557. if ( true &&
  3558. (isUndef(target) || isPrimitive(target))
  3559. ) {
  3560. warn(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
  3561. }
  3562. if (Array.isArray(target) && isValidArrayIndex(key)) {
  3563. target.length = Math.max(target.length, key);
  3564. target.splice(key, 1, val);
  3565. return val
  3566. }
  3567. if (key in target && !(key in Object.prototype)) {
  3568. target[key] = val;
  3569. return val
  3570. }
  3571. var ob = (target).__ob__;
  3572. if (target._isVue || (ob && ob.vmCount)) {
  3573. true && warn(
  3574. 'Avoid adding reactive properties to a Vue instance or its root $data ' +
  3575. 'at runtime - declare it upfront in the data option.'
  3576. );
  3577. return val
  3578. }
  3579. if (!ob) {
  3580. target[key] = val;
  3581. return val
  3582. }
  3583. defineReactive$$1(ob.value, key, val);
  3584. ob.dep.notify();
  3585. return val
  3586. }
  3587. /**
  3588. * Delete a property and trigger change if necessary.
  3589. */
  3590. function del (target, key) {
  3591. if ( true &&
  3592. (isUndef(target) || isPrimitive(target))
  3593. ) {
  3594. warn(("Cannot delete reactive property on undefined, null, or primitive value: " + ((target))));
  3595. }
  3596. if (Array.isArray(target) && isValidArrayIndex(key)) {
  3597. target.splice(key, 1);
  3598. return
  3599. }
  3600. var ob = (target).__ob__;
  3601. if (target._isVue || (ob && ob.vmCount)) {
  3602. true && warn(
  3603. 'Avoid deleting properties on a Vue instance or its root $data ' +
  3604. '- just set it to null.'
  3605. );
  3606. return
  3607. }
  3608. if (!hasOwn(target, key)) {
  3609. return
  3610. }
  3611. delete target[key];
  3612. if (!ob) {
  3613. return
  3614. }
  3615. ob.dep.notify();
  3616. }
  3617. /**
  3618. * Collect dependencies on array elements when the array is touched, since
  3619. * we cannot intercept array element access like property getters.
  3620. */
  3621. function dependArray (value) {
  3622. for (var e = (void 0), i = 0, l = value.length; i < l; i++) {
  3623. e = value[i];
  3624. e && e.__ob__ && e.__ob__.dep.depend();
  3625. if (Array.isArray(e)) {
  3626. dependArray(e);
  3627. }
  3628. }
  3629. }
  3630. /* */
  3631. /**
  3632. * Option overwriting strategies are functions that handle
  3633. * how to merge a parent option value and a child option
  3634. * value into the final value.
  3635. */
  3636. var strats = config.optionMergeStrategies;
  3637. /**
  3638. * Options with restrictions
  3639. */
  3640. if (true) {
  3641. strats.el = strats.propsData = function (parent, child, vm, key) {
  3642. if (!vm) {
  3643. warn(
  3644. "option \"" + key + "\" can only be used during instance " +
  3645. 'creation with the `new` keyword.'
  3646. );
  3647. }
  3648. return defaultStrat(parent, child)
  3649. };
  3650. }
  3651. /**
  3652. * Helper that recursively merges two data objects together.
  3653. */
  3654. function mergeData (to, from) {
  3655. if (!from) { return to }
  3656. var key, toVal, fromVal;
  3657. var keys = hasSymbol
  3658. ? Reflect.ownKeys(from)
  3659. : Object.keys(from);
  3660. for (var i = 0; i < keys.length; i++) {
  3661. key = keys[i];
  3662. // in case the object is already observed...
  3663. if (key === '__ob__') { continue }
  3664. toVal = to[key];
  3665. fromVal = from[key];
  3666. if (!hasOwn(to, key)) {
  3667. set(to, key, fromVal);
  3668. } else if (
  3669. toVal !== fromVal &&
  3670. isPlainObject(toVal) &&
  3671. isPlainObject(fromVal)
  3672. ) {
  3673. mergeData(toVal, fromVal);
  3674. }
  3675. }
  3676. return to
  3677. }
  3678. /**
  3679. * Data
  3680. */
  3681. function mergeDataOrFn (
  3682. parentVal,
  3683. childVal,
  3684. vm
  3685. ) {
  3686. if (!vm) {
  3687. // in a Vue.extend merge, both should be functions
  3688. if (!childVal) {
  3689. return parentVal
  3690. }
  3691. if (!parentVal) {
  3692. return childVal
  3693. }
  3694. // when parentVal & childVal are both present,
  3695. // we need to return a function that returns the
  3696. // merged result of both functions... no need to
  3697. // check if parentVal is a function here because
  3698. // it has to be a function to pass previous merges.
  3699. return function mergedDataFn () {
  3700. return mergeData(
  3701. typeof childVal === 'function' ? childVal.call(this, this) : childVal,
  3702. typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal
  3703. )
  3704. }
  3705. } else {
  3706. return function mergedInstanceDataFn () {
  3707. // instance merge
  3708. var instanceData = typeof childVal === 'function'
  3709. ? childVal.call(vm, vm)
  3710. : childVal;
  3711. var defaultData = typeof parentVal === 'function'
  3712. ? parentVal.call(vm, vm)
  3713. : parentVal;
  3714. if (instanceData) {
  3715. return mergeData(instanceData, defaultData)
  3716. } else {
  3717. return defaultData
  3718. }
  3719. }
  3720. }
  3721. }
  3722. strats.data = function (
  3723. parentVal,
  3724. childVal,
  3725. vm
  3726. ) {
  3727. if (!vm) {
  3728. if (childVal && typeof childVal !== 'function') {
  3729. true && warn(
  3730. 'The "data" option should be a function ' +
  3731. 'that returns a per-instance value in component ' +
  3732. 'definitions.',
  3733. vm
  3734. );
  3735. return parentVal
  3736. }
  3737. return mergeDataOrFn(parentVal, childVal)
  3738. }
  3739. return mergeDataOrFn(parentVal, childVal, vm)
  3740. };
  3741. /**
  3742. * Hooks and props are merged as arrays.
  3743. */
  3744. function mergeHook (
  3745. parentVal,
  3746. childVal
  3747. ) {
  3748. var res = childVal
  3749. ? parentVal
  3750. ? parentVal.concat(childVal)
  3751. : Array.isArray(childVal)
  3752. ? childVal
  3753. : [childVal]
  3754. : parentVal;
  3755. return res
  3756. ? dedupeHooks(res)
  3757. : res
  3758. }
  3759. function dedupeHooks (hooks) {
  3760. var res = [];
  3761. for (var i = 0; i < hooks.length; i++) {
  3762. if (res.indexOf(hooks[i]) === -1) {
  3763. res.push(hooks[i]);
  3764. }
  3765. }
  3766. return res
  3767. }
  3768. LIFECYCLE_HOOKS.forEach(function (hook) {
  3769. strats[hook] = mergeHook;
  3770. });
  3771. /**
  3772. * Assets
  3773. *
  3774. * When a vm is present (instance creation), we need to do
  3775. * a three-way merge between constructor options, instance
  3776. * options and parent options.
  3777. */
  3778. function mergeAssets (
  3779. parentVal,
  3780. childVal,
  3781. vm,
  3782. key
  3783. ) {
  3784. var res = Object.create(parentVal || null);
  3785. if (childVal) {
  3786. true && assertObjectType(key, childVal, vm);
  3787. return extend(res, childVal)
  3788. } else {
  3789. return res
  3790. }
  3791. }
  3792. ASSET_TYPES.forEach(function (type) {
  3793. strats[type + 's'] = mergeAssets;
  3794. });
  3795. /**
  3796. * Watchers.
  3797. *
  3798. * Watchers hashes should not overwrite one
  3799. * another, so we merge them as arrays.
  3800. */
  3801. strats.watch = function (
  3802. parentVal,
  3803. childVal,
  3804. vm,
  3805. key
  3806. ) {
  3807. // work around Firefox's Object.prototype.watch...
  3808. if (parentVal === nativeWatch) { parentVal = undefined; }
  3809. if (childVal === nativeWatch) { childVal = undefined; }
  3810. /* istanbul ignore if */
  3811. if (!childVal) { return Object.create(parentVal || null) }
  3812. if (true) {
  3813. assertObjectType(key, childVal, vm);
  3814. }
  3815. if (!parentVal) { return childVal }
  3816. var ret = {};
  3817. extend(ret, parentVal);
  3818. for (var key$1 in childVal) {
  3819. var parent = ret[key$1];
  3820. var child = childVal[key$1];
  3821. if (parent && !Array.isArray(parent)) {
  3822. parent = [parent];
  3823. }
  3824. ret[key$1] = parent
  3825. ? parent.concat(child)
  3826. : Array.isArray(child) ? child : [child];
  3827. }
  3828. return ret
  3829. };
  3830. /**
  3831. * Other object hashes.
  3832. */
  3833. strats.props =
  3834. strats.methods =
  3835. strats.inject =
  3836. strats.computed = function (
  3837. parentVal,
  3838. childVal,
  3839. vm,
  3840. key
  3841. ) {
  3842. if (childVal && "development" !== 'production') {
  3843. assertObjectType(key, childVal, vm);
  3844. }
  3845. if (!parentVal) { return childVal }
  3846. var ret = Object.create(null);
  3847. extend(ret, parentVal);
  3848. if (childVal) { extend(ret, childVal); }
  3849. return ret
  3850. };
  3851. strats.provide = mergeDataOrFn;
  3852. /**
  3853. * Default strategy.
  3854. */
  3855. var defaultStrat = function (parentVal, childVal) {
  3856. return childVal === undefined
  3857. ? parentVal
  3858. : childVal
  3859. };
  3860. /**
  3861. * Validate component names
  3862. */
  3863. function checkComponents (options) {
  3864. for (var key in options.components) {
  3865. validateComponentName(key);
  3866. }
  3867. }
  3868. function validateComponentName (name) {
  3869. if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
  3870. warn(
  3871. 'Invalid component name: "' + name + '". Component names ' +
  3872. 'should conform to valid custom element name in html5 specification.'
  3873. );
  3874. }
  3875. if (isBuiltInTag(name) || config.isReservedTag(name)) {
  3876. warn(
  3877. 'Do not use built-in or reserved HTML elements as component ' +
  3878. 'id: ' + name
  3879. );
  3880. }
  3881. }
  3882. /**
  3883. * Ensure all props option syntax are normalized into the
  3884. * Object-based format.
  3885. */
  3886. function normalizeProps (options, vm) {
  3887. var props = options.props;
  3888. if (!props) { return }
  3889. var res = {};
  3890. var i, val, name;
  3891. if (Array.isArray(props)) {
  3892. i = props.length;
  3893. while (i--) {
  3894. val = props[i];
  3895. if (typeof val === 'string') {
  3896. name = camelize(val);
  3897. res[name] = { type: null };
  3898. } else if (true) {
  3899. warn('props must be strings when using array syntax.');
  3900. }
  3901. }
  3902. } else if (isPlainObject(props)) {
  3903. for (var key in props) {
  3904. val = props[key];
  3905. name = camelize(key);
  3906. res[name] = isPlainObject(val)
  3907. ? val
  3908. : { type: val };
  3909. }
  3910. } else if (true) {
  3911. warn(
  3912. "Invalid value for option \"props\": expected an Array or an Object, " +
  3913. "but got " + (toRawType(props)) + ".",
  3914. vm
  3915. );
  3916. }
  3917. options.props = res;
  3918. }
  3919. /**
  3920. * Normalize all injections into Object-based format
  3921. */
  3922. function normalizeInject (options, vm) {
  3923. var inject = options.inject;
  3924. if (!inject) { return }
  3925. var normalized = options.inject = {};
  3926. if (Array.isArray(inject)) {
  3927. for (var i = 0; i < inject.length; i++) {
  3928. normalized[inject[i]] = { from: inject[i] };
  3929. }
  3930. } else if (isPlainObject(inject)) {
  3931. for (var key in inject) {
  3932. var val = inject[key];
  3933. normalized[key] = isPlainObject(val)
  3934. ? extend({ from: key }, val)
  3935. : { from: val };
  3936. }
  3937. } else if (true) {
  3938. warn(
  3939. "Invalid value for option \"inject\": expected an Array or an Object, " +
  3940. "but got " + (toRawType(inject)) + ".",
  3941. vm
  3942. );
  3943. }
  3944. }
  3945. /**
  3946. * Normalize raw function directives into object format.
  3947. */
  3948. function normalizeDirectives (options) {
  3949. var dirs = options.directives;
  3950. if (dirs) {
  3951. for (var key in dirs) {
  3952. var def$$1 = dirs[key];
  3953. if (typeof def$$1 === 'function') {
  3954. dirs[key] = { bind: def$$1, update: def$$1 };
  3955. }
  3956. }
  3957. }
  3958. }
  3959. function assertObjectType (name, value, vm) {
  3960. if (!isPlainObject(value)) {
  3961. warn(
  3962. "Invalid value for option \"" + name + "\": expected an Object, " +
  3963. "but got " + (toRawType(value)) + ".",
  3964. vm
  3965. );
  3966. }
  3967. }
  3968. /**
  3969. * Merge two option objects into a new one.
  3970. * Core utility used in both instantiation and inheritance.
  3971. */
  3972. function mergeOptions (
  3973. parent,
  3974. child,
  3975. vm
  3976. ) {
  3977. if (true) {
  3978. checkComponents(child);
  3979. }
  3980. if (typeof child === 'function') {
  3981. child = child.options;
  3982. }
  3983. normalizeProps(child, vm);
  3984. normalizeInject(child, vm);
  3985. normalizeDirectives(child);
  3986. // Apply extends and mixins on the child options,
  3987. // but only if it is a raw options object that isn't
  3988. // the result of another mergeOptions call.
  3989. // Only merged options has the _base property.
  3990. if (!child._base) {
  3991. if (child.extends) {
  3992. parent = mergeOptions(parent, child.extends, vm);
  3993. }
  3994. if (child.mixins) {
  3995. for (var i = 0, l = child.mixins.length; i < l; i++) {
  3996. parent = mergeOptions(parent, child.mixins[i], vm);
  3997. }
  3998. }
  3999. }
  4000. var options = {};
  4001. var key;
  4002. for (key in parent) {
  4003. mergeField(key);
  4004. }
  4005. for (key in child) {
  4006. if (!hasOwn(parent, key)) {
  4007. mergeField(key);
  4008. }
  4009. }
  4010. function mergeField (key) {
  4011. var strat = strats[key] || defaultStrat;
  4012. options[key] = strat(parent[key], child[key], vm, key);
  4013. }
  4014. return options
  4015. }
  4016. /**
  4017. * Resolve an asset.
  4018. * This function is used because child instances need access
  4019. * to assets defined in its ancestor chain.
  4020. */
  4021. function resolveAsset (
  4022. options,
  4023. type,
  4024. id,
  4025. warnMissing
  4026. ) {
  4027. /* istanbul ignore if */
  4028. if (typeof id !== 'string') {
  4029. return
  4030. }
  4031. var assets = options[type];
  4032. // check local registration variations first
  4033. if (hasOwn(assets, id)) { return assets[id] }
  4034. var camelizedId = camelize(id);
  4035. if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }
  4036. var PascalCaseId = capitalize(camelizedId);
  4037. if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }
  4038. // fallback to prototype chain
  4039. var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];
  4040. if ( true && warnMissing && !res) {
  4041. warn(
  4042. 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,
  4043. options
  4044. );
  4045. }
  4046. return res
  4047. }
  4048. /* */
  4049. function validateProp (
  4050. key,
  4051. propOptions,
  4052. propsData,
  4053. vm
  4054. ) {
  4055. var prop = propOptions[key];
  4056. var absent = !hasOwn(propsData, key);
  4057. var value = propsData[key];
  4058. // boolean casting
  4059. var booleanIndex = getTypeIndex(Boolean, prop.type);
  4060. if (booleanIndex > -1) {
  4061. if (absent && !hasOwn(prop, 'default')) {
  4062. value = false;
  4063. } else if (value === '' || value === hyphenate(key)) {
  4064. // only cast empty string / same name to boolean if
  4065. // boolean has higher priority
  4066. var stringIndex = getTypeIndex(String, prop.type);
  4067. if (stringIndex < 0 || booleanIndex < stringIndex) {
  4068. value = true;
  4069. }
  4070. }
  4071. }
  4072. // check default value
  4073. if (value === undefined) {
  4074. value = getPropDefaultValue(vm, prop, key);
  4075. // since the default value is a fresh copy,
  4076. // make sure to observe it.
  4077. var prevShouldObserve = shouldObserve;
  4078. toggleObserving(true);
  4079. observe(value);
  4080. toggleObserving(prevShouldObserve);
  4081. }
  4082. if (
  4083. true
  4084. ) {
  4085. assertProp(prop, key, value, vm, absent);
  4086. }
  4087. return value
  4088. }
  4089. /**
  4090. * Get the default value of a prop.
  4091. */
  4092. function getPropDefaultValue (vm, prop, key) {
  4093. // no default, return undefined
  4094. if (!hasOwn(prop, 'default')) {
  4095. return undefined
  4096. }
  4097. var def = prop.default;
  4098. // warn against non-factory defaults for Object & Array
  4099. if ( true && isObject(def)) {
  4100. warn(
  4101. 'Invalid default value for prop "' + key + '": ' +
  4102. 'Props with type Object/Array must use a factory function ' +
  4103. 'to return the default value.',
  4104. vm
  4105. );
  4106. }
  4107. // the raw prop value was also undefined from previous render,
  4108. // return previous default value to avoid unnecessary watcher trigger
  4109. if (vm && vm.$options.propsData &&
  4110. vm.$options.propsData[key] === undefined &&
  4111. vm._props[key] !== undefined
  4112. ) {
  4113. return vm._props[key]
  4114. }
  4115. // call factory function for non-Function types
  4116. // a value is Function if its prototype is function even across different execution context
  4117. return typeof def === 'function' && getType(prop.type) !== 'Function'
  4118. ? def.call(vm)
  4119. : def
  4120. }
  4121. /**
  4122. * Assert whether a prop is valid.
  4123. */
  4124. function assertProp (
  4125. prop,
  4126. name,
  4127. value,
  4128. vm,
  4129. absent
  4130. ) {
  4131. if (prop.required && absent) {
  4132. warn(
  4133. 'Missing required prop: "' + name + '"',
  4134. vm
  4135. );
  4136. return
  4137. }
  4138. if (value == null && !prop.required) {
  4139. return
  4140. }
  4141. var type = prop.type;
  4142. var valid = !type || type === true;
  4143. var expectedTypes = [];
  4144. if (type) {
  4145. if (!Array.isArray(type)) {
  4146. type = [type];
  4147. }
  4148. for (var i = 0; i < type.length && !valid; i++) {
  4149. var assertedType = assertType(value, type[i]);
  4150. expectedTypes.push(assertedType.expectedType || '');
  4151. valid = assertedType.valid;
  4152. }
  4153. }
  4154. if (!valid) {
  4155. warn(
  4156. getInvalidTypeMessage(name, value, expectedTypes),
  4157. vm
  4158. );
  4159. return
  4160. }
  4161. var validator = prop.validator;
  4162. if (validator) {
  4163. if (!validator(value)) {
  4164. warn(
  4165. 'Invalid prop: custom validator check failed for prop "' + name + '".',
  4166. vm
  4167. );
  4168. }
  4169. }
  4170. }
  4171. var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;
  4172. function assertType (value, type) {
  4173. var valid;
  4174. var expectedType = getType(type);
  4175. if (simpleCheckRE.test(expectedType)) {
  4176. var t = typeof value;
  4177. valid = t === expectedType.toLowerCase();
  4178. // for primitive wrapper objects
  4179. if (!valid && t === 'object') {
  4180. valid = value instanceof type;
  4181. }
  4182. } else if (expectedType === 'Object') {
  4183. valid = isPlainObject(value);
  4184. } else if (expectedType === 'Array') {
  4185. valid = Array.isArray(value);
  4186. } else {
  4187. valid = value instanceof type;
  4188. }
  4189. return {
  4190. valid: valid,
  4191. expectedType: expectedType
  4192. }
  4193. }
  4194. /**
  4195. * Use function string name to check built-in types,
  4196. * because a simple equality check will fail when running
  4197. * across different vms / iframes.
  4198. */
  4199. function getType (fn) {
  4200. var match = fn && fn.toString().match(/^\s*function (\w+)/);
  4201. return match ? match[1] : ''
  4202. }
  4203. function isSameType (a, b) {
  4204. return getType(a) === getType(b)
  4205. }
  4206. function getTypeIndex (type, expectedTypes) {
  4207. if (!Array.isArray(expectedTypes)) {
  4208. return isSameType(expectedTypes, type) ? 0 : -1
  4209. }
  4210. for (var i = 0, len = expectedTypes.length; i < len; i++) {
  4211. if (isSameType(expectedTypes[i], type)) {
  4212. return i
  4213. }
  4214. }
  4215. return -1
  4216. }
  4217. function getInvalidTypeMessage (name, value, expectedTypes) {
  4218. var message = "Invalid prop: type check failed for prop \"" + name + "\"." +
  4219. " Expected " + (expectedTypes.map(capitalize).join(', '));
  4220. var expectedType = expectedTypes[0];
  4221. var receivedType = toRawType(value);
  4222. var expectedValue = styleValue(value, expectedType);
  4223. var receivedValue = styleValue(value, receivedType);
  4224. // check if we need to specify expected value
  4225. if (expectedTypes.length === 1 &&
  4226. isExplicable(expectedType) &&
  4227. !isBoolean(expectedType, receivedType)) {
  4228. message += " with value " + expectedValue;
  4229. }
  4230. message += ", got " + receivedType + " ";
  4231. // check if we need to specify received value
  4232. if (isExplicable(receivedType)) {
  4233. message += "with value " + receivedValue + ".";
  4234. }
  4235. return message
  4236. }
  4237. function styleValue (value, type) {
  4238. if (type === 'String') {
  4239. return ("\"" + value + "\"")
  4240. } else if (type === 'Number') {
  4241. return ("" + (Number(value)))
  4242. } else {
  4243. return ("" + value)
  4244. }
  4245. }
  4246. function isExplicable (value) {
  4247. var explicitTypes = ['string', 'number', 'boolean'];
  4248. return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })
  4249. }
  4250. function isBoolean () {
  4251. var args = [], len = arguments.length;
  4252. while ( len-- ) args[ len ] = arguments[ len ];
  4253. return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })
  4254. }
  4255. /* */
  4256. function handleError (err, vm, info) {
  4257. // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
  4258. // See: https://github.com/vuejs/vuex/issues/1505
  4259. pushTarget();
  4260. try {
  4261. if (vm) {
  4262. var cur = vm;
  4263. while ((cur = cur.$parent)) {
  4264. var hooks = cur.$options.errorCaptured;
  4265. if (hooks) {
  4266. for (var i = 0; i < hooks.length; i++) {
  4267. try {
  4268. var capture = hooks[i].call(cur, err, vm, info) === false;
  4269. if (capture) { return }
  4270. } catch (e) {
  4271. globalHandleError(e, cur, 'errorCaptured hook');
  4272. }
  4273. }
  4274. }
  4275. }
  4276. }
  4277. globalHandleError(err, vm, info);
  4278. } finally {
  4279. popTarget();
  4280. }
  4281. }
  4282. function invokeWithErrorHandling (
  4283. handler,
  4284. context,
  4285. args,
  4286. vm,
  4287. info
  4288. ) {
  4289. var res;
  4290. try {
  4291. res = args ? handler.apply(context, args) : handler.call(context);
  4292. if (res && !res._isVue && isPromise(res) && !res._handled) {
  4293. res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
  4294. // issue #9511
  4295. // avoid catch triggering multiple times when nested calls
  4296. res._handled = true;
  4297. }
  4298. } catch (e) {
  4299. handleError(e, vm, info);
  4300. }
  4301. return res
  4302. }
  4303. function globalHandleError (err, vm, info) {
  4304. if (config.errorHandler) {
  4305. try {
  4306. return config.errorHandler.call(null, err, vm, info)
  4307. } catch (e) {
  4308. // if the user intentionally throws the original error in the handler,
  4309. // do not log it twice
  4310. if (e !== err) {
  4311. logError(e, null, 'config.errorHandler');
  4312. }
  4313. }
  4314. }
  4315. logError(err, vm, info);
  4316. }
  4317. function logError (err, vm, info) {
  4318. if (true) {
  4319. warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
  4320. }
  4321. /* istanbul ignore else */
  4322. if ((inBrowser || inWeex) && typeof console !== 'undefined') {
  4323. console.error(err);
  4324. } else {
  4325. throw err
  4326. }
  4327. }
  4328. /* */
  4329. var callbacks = [];
  4330. var pending = false;
  4331. function flushCallbacks () {
  4332. pending = false;
  4333. var copies = callbacks.slice(0);
  4334. callbacks.length = 0;
  4335. for (var i = 0; i < copies.length; i++) {
  4336. copies[i]();
  4337. }
  4338. }
  4339. // Here we have async deferring wrappers using microtasks.
  4340. // In 2.5 we used (macro) tasks (in combination with microtasks).
  4341. // However, it has subtle problems when state is changed right before repaint
  4342. // (e.g. #6813, out-in transitions).
  4343. // Also, using (macro) tasks in event handler would cause some weird behaviors
  4344. // that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).
  4345. // So we now use microtasks everywhere, again.
  4346. // A major drawback of this tradeoff is that there are some scenarios
  4347. // where microtasks have too high a priority and fire in between supposedly
  4348. // sequential events (e.g. #4521, #6690, which have workarounds)
  4349. // or even between bubbling of the same event (#6566).
  4350. var timerFunc;
  4351. // The nextTick behavior leverages the microtask queue, which can be accessed
  4352. // via either native Promise.then or MutationObserver.
  4353. // MutationObserver has wider support, however it is seriously bugged in
  4354. // UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
  4355. // completely stops working after triggering a few times... so, if native
  4356. // Promise is available, we will use it:
  4357. /* istanbul ignore next, $flow-disable-line */
  4358. if (typeof Promise !== 'undefined' && isNative(Promise)) {
  4359. var p = Promise.resolve();
  4360. timerFunc = function () {
  4361. p.then(flushCallbacks);
  4362. // In problematic UIWebViews, Promise.then doesn't completely break, but
  4363. // it can get stuck in a weird state where callbacks are pushed into the
  4364. // microtask queue but the queue isn't being flushed, until the browser
  4365. // needs to do some other work, e.g. handle a timer. Therefore we can
  4366. // "force" the microtask queue to be flushed by adding an empty timer.
  4367. if (isIOS) { setTimeout(noop); }
  4368. };
  4369. } else if (!isIE && typeof MutationObserver !== 'undefined' && (
  4370. isNative(MutationObserver) ||
  4371. // PhantomJS and iOS 7.x
  4372. MutationObserver.toString() === '[object MutationObserverConstructor]'
  4373. )) {
  4374. // Use MutationObserver where native Promise is not available,
  4375. // e.g. PhantomJS, iOS7, Android 4.4
  4376. // (#6466 MutationObserver is unreliable in IE11)
  4377. var counter = 1;
  4378. var observer = new MutationObserver(flushCallbacks);
  4379. var textNode = document.createTextNode(String(counter));
  4380. observer.observe(textNode, {
  4381. characterData: true
  4382. });
  4383. timerFunc = function () {
  4384. counter = (counter + 1) % 2;
  4385. textNode.data = String(counter);
  4386. };
  4387. } else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
  4388. // Fallback to setImmediate.
  4389. // Technically it leverages the (macro) task queue,
  4390. // but it is still a better choice than setTimeout.
  4391. timerFunc = function () {
  4392. setImmediate(flushCallbacks);
  4393. };
  4394. } else {
  4395. // Fallback to setTimeout.
  4396. timerFunc = function () {
  4397. setTimeout(flushCallbacks, 0);
  4398. };
  4399. }
  4400. function nextTick (cb, ctx) {
  4401. var _resolve;
  4402. callbacks.push(function () {
  4403. if (cb) {
  4404. try {
  4405. cb.call(ctx);
  4406. } catch (e) {
  4407. handleError(e, ctx, 'nextTick');
  4408. }
  4409. } else if (_resolve) {
  4410. _resolve(ctx);
  4411. }
  4412. });
  4413. if (!pending) {
  4414. pending = true;
  4415. timerFunc();
  4416. }
  4417. // $flow-disable-line
  4418. if (!cb && typeof Promise !== 'undefined') {
  4419. return new Promise(function (resolve) {
  4420. _resolve = resolve;
  4421. })
  4422. }
  4423. }
  4424. /* */
  4425. /* not type checking this file because flow doesn't play well with Proxy */
  4426. var initProxy;
  4427. if (true) {
  4428. var allowedGlobals = makeMap(
  4429. 'Infinity,undefined,NaN,isFinite,isNaN,' +
  4430. 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +
  4431. 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +
  4432. 'require' // for Webpack/Browserify
  4433. );
  4434. var warnNonPresent = function (target, key) {
  4435. warn(
  4436. "Property or method \"" + key + "\" is not defined on the instance but " +
  4437. 'referenced during render. Make sure that this property is reactive, ' +
  4438. 'either in the data option, or for class-based components, by ' +
  4439. 'initializing the property. ' +
  4440. 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
  4441. target
  4442. );
  4443. };
  4444. var warnReservedPrefix = function (target, key) {
  4445. warn(
  4446. "Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
  4447. 'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
  4448. 'prevent conflicts with Vue internals. ' +
  4449. 'See: https://vuejs.org/v2/api/#data',
  4450. target
  4451. );
  4452. };
  4453. var hasProxy =
  4454. typeof Proxy !== 'undefined' && isNative(Proxy);
  4455. if (hasProxy) {
  4456. var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');
  4457. config.keyCodes = new Proxy(config.keyCodes, {
  4458. set: function set (target, key, value) {
  4459. if (isBuiltInModifier(key)) {
  4460. warn(("Avoid overwriting built-in modifier in config.keyCodes: ." + key));
  4461. return false
  4462. } else {
  4463. target[key] = value;
  4464. return true
  4465. }
  4466. }
  4467. });
  4468. }
  4469. var hasHandler = {
  4470. has: function has (target, key) {
  4471. var has = key in target;
  4472. var isAllowed = allowedGlobals(key) ||
  4473. (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));
  4474. if (!has && !isAllowed) {
  4475. if (key in target.$data) { warnReservedPrefix(target, key); }
  4476. else { warnNonPresent(target, key); }
  4477. }
  4478. return has || !isAllowed
  4479. }
  4480. };
  4481. var getHandler = {
  4482. get: function get (target, key) {
  4483. if (typeof key === 'string' && !(key in target)) {
  4484. if (key in target.$data) { warnReservedPrefix(target, key); }
  4485. else { warnNonPresent(target, key); }
  4486. }
  4487. return target[key]
  4488. }
  4489. };
  4490. initProxy = function initProxy (vm) {
  4491. if (hasProxy) {
  4492. // determine which proxy handler to use
  4493. var options = vm.$options;
  4494. var handlers = options.render && options.render._withStripped
  4495. ? getHandler
  4496. : hasHandler;
  4497. vm._renderProxy = new Proxy(vm, handlers);
  4498. } else {
  4499. vm._renderProxy = vm;
  4500. }
  4501. };
  4502. }
  4503. /* */
  4504. var seenObjects = new _Set();
  4505. /**
  4506. * Recursively traverse an object to evoke all converted
  4507. * getters, so that every nested property inside the object
  4508. * is collected as a "deep" dependency.
  4509. */
  4510. function traverse (val) {
  4511. _traverse(val, seenObjects);
  4512. seenObjects.clear();
  4513. }
  4514. function _traverse (val, seen) {
  4515. var i, keys;
  4516. var isA = Array.isArray(val);
  4517. if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {
  4518. return
  4519. }
  4520. if (val.__ob__) {
  4521. var depId = val.__ob__.dep.id;
  4522. if (seen.has(depId)) {
  4523. return
  4524. }
  4525. seen.add(depId);
  4526. }
  4527. if (isA) {
  4528. i = val.length;
  4529. while (i--) { _traverse(val[i], seen); }
  4530. } else {
  4531. keys = Object.keys(val);
  4532. i = keys.length;
  4533. while (i--) { _traverse(val[keys[i]], seen); }
  4534. }
  4535. }
  4536. var mark;
  4537. var measure;
  4538. if (true) {
  4539. var perf = inBrowser && window.performance;
  4540. /* istanbul ignore if */
  4541. if (
  4542. perf &&
  4543. perf.mark &&
  4544. perf.measure &&
  4545. perf.clearMarks &&
  4546. perf.clearMeasures
  4547. ) {
  4548. mark = function (tag) { return perf.mark(tag); };
  4549. measure = function (name, startTag, endTag) {
  4550. perf.measure(name, startTag, endTag);
  4551. perf.clearMarks(startTag);
  4552. perf.clearMarks(endTag);
  4553. // perf.clearMeasures(name)
  4554. };
  4555. }
  4556. }
  4557. /* */
  4558. var normalizeEvent = cached(function (name) {
  4559. var passive = name.charAt(0) === '&';
  4560. name = passive ? name.slice(1) : name;
  4561. var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first
  4562. name = once$$1 ? name.slice(1) : name;
  4563. var capture = name.charAt(0) === '!';
  4564. name = capture ? name.slice(1) : name;
  4565. return {
  4566. name: name,
  4567. once: once$$1,
  4568. capture: capture,
  4569. passive: passive
  4570. }
  4571. });
  4572. function createFnInvoker (fns, vm) {
  4573. function invoker () {
  4574. var arguments$1 = arguments;
  4575. var fns = invoker.fns;
  4576. if (Array.isArray(fns)) {
  4577. var cloned = fns.slice();
  4578. for (var i = 0; i < cloned.length; i++) {
  4579. invokeWithErrorHandling(cloned[i], null, arguments$1, vm, "v-on handler");
  4580. }
  4581. } else {
  4582. // return handler return value for single handlers
  4583. return invokeWithErrorHandling(fns, null, arguments, vm, "v-on handler")
  4584. }
  4585. }
  4586. invoker.fns = fns;
  4587. return invoker
  4588. }
  4589. function updateListeners (
  4590. on,
  4591. oldOn,
  4592. add,
  4593. remove$$1,
  4594. createOnceHandler,
  4595. vm
  4596. ) {
  4597. var name, def$$1, cur, old, event;
  4598. for (name in on) {
  4599. def$$1 = cur = on[name];
  4600. old = oldOn[name];
  4601. event = normalizeEvent(name);
  4602. if (isUndef(cur)) {
  4603. true && warn(
  4604. "Invalid handler for event \"" + (event.name) + "\": got " + String(cur),
  4605. vm
  4606. );
  4607. } else if (isUndef(old)) {
  4608. if (isUndef(cur.fns)) {
  4609. cur = on[name] = createFnInvoker(cur, vm);
  4610. }
  4611. if (isTrue(event.once)) {
  4612. cur = on[name] = createOnceHandler(event.name, cur, event.capture);
  4613. }
  4614. add(event.name, cur, event.capture, event.passive, event.params);
  4615. } else if (cur !== old) {
  4616. old.fns = cur;
  4617. on[name] = old;
  4618. }
  4619. }
  4620. for (name in oldOn) {
  4621. if (isUndef(on[name])) {
  4622. event = normalizeEvent(name);
  4623. remove$$1(event.name, oldOn[name], event.capture);
  4624. }
  4625. }
  4626. }
  4627. /* */
  4628. /* */
  4629. // fixed by xxxxxx (mp properties)
  4630. function extractPropertiesFromVNodeData(data, Ctor, res, context) {
  4631. var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;
  4632. if (isUndef(propOptions)) {
  4633. return res
  4634. }
  4635. var externalClasses = Ctor.options.mpOptions.externalClasses || [];
  4636. var attrs = data.attrs;
  4637. var props = data.props;
  4638. if (isDef(attrs) || isDef(props)) {
  4639. for (var key in propOptions) {
  4640. var altKey = hyphenate(key);
  4641. var result = checkProp(res, props, key, altKey, true) ||
  4642. checkProp(res, attrs, key, altKey, false);
  4643. // externalClass
  4644. if (
  4645. result &&
  4646. res[key] &&
  4647. externalClasses.indexOf(altKey) !== -1 &&
  4648. context[camelize(res[key])]
  4649. ) {
  4650. // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)
  4651. res[key] = context[camelize(res[key])];
  4652. }
  4653. }
  4654. }
  4655. return res
  4656. }
  4657. function extractPropsFromVNodeData (
  4658. data,
  4659. Ctor,
  4660. tag,
  4661. context// fixed by xxxxxx
  4662. ) {
  4663. // we are only extracting raw values here.
  4664. // validation and default values are handled in the child
  4665. // component itself.
  4666. var propOptions = Ctor.options.props;
  4667. if (isUndef(propOptions)) {
  4668. // fixed by xxxxxx
  4669. return extractPropertiesFromVNodeData(data, Ctor, {}, context)
  4670. }
  4671. var res = {};
  4672. var attrs = data.attrs;
  4673. var props = data.props;
  4674. if (isDef(attrs) || isDef(props)) {
  4675. for (var key in propOptions) {
  4676. var altKey = hyphenate(key);
  4677. if (true) {
  4678. var keyInLowerCase = key.toLowerCase();
  4679. if (
  4680. key !== keyInLowerCase &&
  4681. attrs && hasOwn(attrs, keyInLowerCase)
  4682. ) {
  4683. tip(
  4684. "Prop \"" + keyInLowerCase + "\" is passed to component " +
  4685. (formatComponentName(tag || Ctor)) + ", but the declared prop name is" +
  4686. " \"" + key + "\". " +
  4687. "Note that HTML attributes are case-insensitive and camelCased " +
  4688. "props need to use their kebab-case equivalents when using in-DOM " +
  4689. "templates. You should probably use \"" + altKey + "\" instead of \"" + key + "\"."
  4690. );
  4691. }
  4692. }
  4693. checkProp(res, props, key, altKey, true) ||
  4694. checkProp(res, attrs, key, altKey, false);
  4695. }
  4696. }
  4697. // fixed by xxxxxx
  4698. return extractPropertiesFromVNodeData(data, Ctor, res, context)
  4699. }
  4700. function checkProp (
  4701. res,
  4702. hash,
  4703. key,
  4704. altKey,
  4705. preserve
  4706. ) {
  4707. if (isDef(hash)) {
  4708. if (hasOwn(hash, key)) {
  4709. res[key] = hash[key];
  4710. if (!preserve) {
  4711. delete hash[key];
  4712. }
  4713. return true
  4714. } else if (hasOwn(hash, altKey)) {
  4715. res[key] = hash[altKey];
  4716. if (!preserve) {
  4717. delete hash[altKey];
  4718. }
  4719. return true
  4720. }
  4721. }
  4722. return false
  4723. }
  4724. /* */
  4725. // The template compiler attempts to minimize the need for normalization by
  4726. // statically analyzing the template at compile time.
  4727. //
  4728. // For plain HTML markup, normalization can be completely skipped because the
  4729. // generated render function is guaranteed to return Array<VNode>. There are
  4730. // two cases where extra normalization is needed:
  4731. // 1. When the children contains components - because a functional component
  4732. // may return an Array instead of a single root. In this case, just a simple
  4733. // normalization is needed - if any child is an Array, we flatten the whole
  4734. // thing with Array.prototype.concat. It is guaranteed to be only 1-level deep
  4735. // because functional components already normalize their own children.
  4736. function simpleNormalizeChildren (children) {
  4737. for (var i = 0; i < children.length; i++) {
  4738. if (Array.isArray(children[i])) {
  4739. return Array.prototype.concat.apply([], children)
  4740. }
  4741. }
  4742. return children
  4743. }
  4744. // 2. When the children contains constructs that always generated nested Arrays,
  4745. // e.g. <template>, <slot>, v-for, or when the children is provided by user
  4746. // with hand-written render functions / JSX. In such cases a full normalization
  4747. // is needed to cater to all possible types of children values.
  4748. function normalizeChildren (children) {
  4749. return isPrimitive(children)
  4750. ? [createTextVNode(children)]
  4751. : Array.isArray(children)
  4752. ? normalizeArrayChildren(children)
  4753. : undefined
  4754. }
  4755. function isTextNode (node) {
  4756. return isDef(node) && isDef(node.text) && isFalse(node.isComment)
  4757. }
  4758. function normalizeArrayChildren (children, nestedIndex) {
  4759. var res = [];
  4760. var i, c, lastIndex, last;
  4761. for (i = 0; i < children.length; i++) {
  4762. c = children[i];
  4763. if (isUndef(c) || typeof c === 'boolean') { continue }
  4764. lastIndex = res.length - 1;
  4765. last = res[lastIndex];
  4766. // nested
  4767. if (Array.isArray(c)) {
  4768. if (c.length > 0) {
  4769. c = normalizeArrayChildren(c, ((nestedIndex || '') + "_" + i));
  4770. // merge adjacent text nodes
  4771. if (isTextNode(c[0]) && isTextNode(last)) {
  4772. res[lastIndex] = createTextVNode(last.text + (c[0]).text);
  4773. c.shift();
  4774. }
  4775. res.push.apply(res, c);
  4776. }
  4777. } else if (isPrimitive(c)) {
  4778. if (isTextNode(last)) {
  4779. // merge adjacent text nodes
  4780. // this is necessary for SSR hydration because text nodes are
  4781. // essentially merged when rendered to HTML strings
  4782. res[lastIndex] = createTextVNode(last.text + c);
  4783. } else if (c !== '') {
  4784. // convert primitive to vnode
  4785. res.push(createTextVNode(c));
  4786. }
  4787. } else {
  4788. if (isTextNode(c) && isTextNode(last)) {
  4789. // merge adjacent text nodes
  4790. res[lastIndex] = createTextVNode(last.text + c.text);
  4791. } else {
  4792. // default key for nested array children (likely generated by v-for)
  4793. if (isTrue(children._isVList) &&
  4794. isDef(c.tag) &&
  4795. isUndef(c.key) &&
  4796. isDef(nestedIndex)) {
  4797. c.key = "__vlist" + nestedIndex + "_" + i + "__";
  4798. }
  4799. res.push(c);
  4800. }
  4801. }
  4802. }
  4803. return res
  4804. }
  4805. /* */
  4806. function initProvide (vm) {
  4807. var provide = vm.$options.provide;
  4808. if (provide) {
  4809. vm._provided = typeof provide === 'function'
  4810. ? provide.call(vm)
  4811. : provide;
  4812. }
  4813. }
  4814. function initInjections (vm) {
  4815. var result = resolveInject(vm.$options.inject, vm);
  4816. if (result) {
  4817. toggleObserving(false);
  4818. Object.keys(result).forEach(function (key) {
  4819. /* istanbul ignore else */
  4820. if (true) {
  4821. defineReactive$$1(vm, key, result[key], function () {
  4822. warn(
  4823. "Avoid mutating an injected value directly since the changes will be " +
  4824. "overwritten whenever the provided component re-renders. " +
  4825. "injection being mutated: \"" + key + "\"",
  4826. vm
  4827. );
  4828. });
  4829. } else {}
  4830. });
  4831. toggleObserving(true);
  4832. }
  4833. }
  4834. function resolveInject (inject, vm) {
  4835. if (inject) {
  4836. // inject is :any because flow is not smart enough to figure out cached
  4837. var result = Object.create(null);
  4838. var keys = hasSymbol
  4839. ? Reflect.ownKeys(inject)
  4840. : Object.keys(inject);
  4841. for (var i = 0; i < keys.length; i++) {
  4842. var key = keys[i];
  4843. // #6574 in case the inject object is observed...
  4844. if (key === '__ob__') { continue }
  4845. var provideKey = inject[key].from;
  4846. var source = vm;
  4847. while (source) {
  4848. if (source._provided && hasOwn(source._provided, provideKey)) {
  4849. result[key] = source._provided[provideKey];
  4850. break
  4851. }
  4852. source = source.$parent;
  4853. }
  4854. if (!source) {
  4855. if ('default' in inject[key]) {
  4856. var provideDefault = inject[key].default;
  4857. result[key] = typeof provideDefault === 'function'
  4858. ? provideDefault.call(vm)
  4859. : provideDefault;
  4860. } else if (true) {
  4861. warn(("Injection \"" + key + "\" not found"), vm);
  4862. }
  4863. }
  4864. }
  4865. return result
  4866. }
  4867. }
  4868. /* */
  4869. /**
  4870. * Runtime helper for resolving raw children VNodes into a slot object.
  4871. */
  4872. function resolveSlots (
  4873. children,
  4874. context
  4875. ) {
  4876. if (!children || !children.length) {
  4877. return {}
  4878. }
  4879. var slots = {};
  4880. for (var i = 0, l = children.length; i < l; i++) {
  4881. var child = children[i];
  4882. var data = child.data;
  4883. // remove slot attribute if the node is resolved as a Vue slot node
  4884. if (data && data.attrs && data.attrs.slot) {
  4885. delete data.attrs.slot;
  4886. }
  4887. // named slots should only be respected if the vnode was rendered in the
  4888. // same context.
  4889. if ((child.context === context || child.fnContext === context) &&
  4890. data && data.slot != null
  4891. ) {
  4892. var name = data.slot;
  4893. var slot = (slots[name] || (slots[name] = []));
  4894. if (child.tag === 'template') {
  4895. slot.push.apply(slot, child.children || []);
  4896. } else {
  4897. slot.push(child);
  4898. }
  4899. } else {
  4900. // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page
  4901. if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){
  4902. (slots['page'] || (slots['page'] = [])).push(child);
  4903. }else{
  4904. (slots.default || (slots.default = [])).push(child);
  4905. }
  4906. }
  4907. }
  4908. // ignore slots that contains only whitespace
  4909. for (var name$1 in slots) {
  4910. if (slots[name$1].every(isWhitespace)) {
  4911. delete slots[name$1];
  4912. }
  4913. }
  4914. return slots
  4915. }
  4916. function isWhitespace (node) {
  4917. return (node.isComment && !node.asyncFactory) || node.text === ' '
  4918. }
  4919. /* */
  4920. function normalizeScopedSlots (
  4921. slots,
  4922. normalSlots,
  4923. prevSlots
  4924. ) {
  4925. var res;
  4926. var hasNormalSlots = Object.keys(normalSlots).length > 0;
  4927. var isStable = slots ? !!slots.$stable : !hasNormalSlots;
  4928. var key = slots && slots.$key;
  4929. if (!slots) {
  4930. res = {};
  4931. } else if (slots._normalized) {
  4932. // fast path 1: child component re-render only, parent did not change
  4933. return slots._normalized
  4934. } else if (
  4935. isStable &&
  4936. prevSlots &&
  4937. prevSlots !== emptyObject &&
  4938. key === prevSlots.$key &&
  4939. !hasNormalSlots &&
  4940. !prevSlots.$hasNormal
  4941. ) {
  4942. // fast path 2: stable scoped slots w/ no normal slots to proxy,
  4943. // only need to normalize once
  4944. return prevSlots
  4945. } else {
  4946. res = {};
  4947. for (var key$1 in slots) {
  4948. if (slots[key$1] && key$1[0] !== '$') {
  4949. res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
  4950. }
  4951. }
  4952. }
  4953. // expose normal slots on scopedSlots
  4954. for (var key$2 in normalSlots) {
  4955. if (!(key$2 in res)) {
  4956. res[key$2] = proxyNormalSlot(normalSlots, key$2);
  4957. }
  4958. }
  4959. // avoriaz seems to mock a non-extensible $scopedSlots object
  4960. // and when that is passed down this would cause an error
  4961. if (slots && Object.isExtensible(slots)) {
  4962. (slots)._normalized = res;
  4963. }
  4964. def(res, '$stable', isStable);
  4965. def(res, '$key', key);
  4966. def(res, '$hasNormal', hasNormalSlots);
  4967. return res
  4968. }
  4969. function normalizeScopedSlot(normalSlots, key, fn) {
  4970. var normalized = function () {
  4971. var res = arguments.length ? fn.apply(null, arguments) : fn({});
  4972. res = res && typeof res === 'object' && !Array.isArray(res)
  4973. ? [res] // single vnode
  4974. : normalizeChildren(res);
  4975. return res && (
  4976. res.length === 0 ||
  4977. (res.length === 1 && res[0].isComment) // #9658
  4978. ) ? undefined
  4979. : res
  4980. };
  4981. // this is a slot using the new v-slot syntax without scope. although it is
  4982. // compiled as a scoped slot, render fn users would expect it to be present
  4983. // on this.$slots because the usage is semantically a normal slot.
  4984. if (fn.proxy) {
  4985. Object.defineProperty(normalSlots, key, {
  4986. get: normalized,
  4987. enumerable: true,
  4988. configurable: true
  4989. });
  4990. }
  4991. return normalized
  4992. }
  4993. function proxyNormalSlot(slots, key) {
  4994. return function () { return slots[key]; }
  4995. }
  4996. /* */
  4997. /**
  4998. * Runtime helper for rendering v-for lists.
  4999. */
  5000. function renderList (
  5001. val,
  5002. render
  5003. ) {
  5004. var ret, i, l, keys, key;
  5005. if (Array.isArray(val) || typeof val === 'string') {
  5006. ret = new Array(val.length);
  5007. for (i = 0, l = val.length; i < l; i++) {
  5008. ret[i] = render(val[i], i, i, i); // fixed by xxxxxx
  5009. }
  5010. } else if (typeof val === 'number') {
  5011. ret = new Array(val);
  5012. for (i = 0; i < val; i++) {
  5013. ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx
  5014. }
  5015. } else if (isObject(val)) {
  5016. if (hasSymbol && val[Symbol.iterator]) {
  5017. ret = [];
  5018. var iterator = val[Symbol.iterator]();
  5019. var result = iterator.next();
  5020. while (!result.done) {
  5021. ret.push(render(result.value, ret.length, i, i++)); // fixed by xxxxxx
  5022. result = iterator.next();
  5023. }
  5024. } else {
  5025. keys = Object.keys(val);
  5026. ret = new Array(keys.length);
  5027. for (i = 0, l = keys.length; i < l; i++) {
  5028. key = keys[i];
  5029. ret[i] = render(val[key], key, i, i); // fixed by xxxxxx
  5030. }
  5031. }
  5032. }
  5033. if (!isDef(ret)) {
  5034. ret = [];
  5035. }
  5036. (ret)._isVList = true;
  5037. return ret
  5038. }
  5039. /* */
  5040. /**
  5041. * Runtime helper for rendering <slot>
  5042. */
  5043. function renderSlot (
  5044. name,
  5045. fallback,
  5046. props,
  5047. bindObject
  5048. ) {
  5049. var scopedSlotFn = this.$scopedSlots[name];
  5050. var nodes;
  5051. if (scopedSlotFn) { // scoped slot
  5052. props = props || {};
  5053. if (bindObject) {
  5054. if ( true && !isObject(bindObject)) {
  5055. warn(
  5056. 'slot v-bind without argument expects an Object',
  5057. this
  5058. );
  5059. }
  5060. props = extend(extend({}, bindObject), props);
  5061. }
  5062. // fixed by xxxxxx app-plus scopedSlot
  5063. nodes = scopedSlotFn(props, this, props._i) || fallback;
  5064. } else {
  5065. nodes = this.$slots[name] || fallback;
  5066. }
  5067. var target = props && props.slot;
  5068. if (target) {
  5069. return this.$createElement('template', { slot: target }, nodes)
  5070. } else {
  5071. return nodes
  5072. }
  5073. }
  5074. /* */
  5075. /**
  5076. * Runtime helper for resolving filters
  5077. */
  5078. function resolveFilter (id) {
  5079. return resolveAsset(this.$options, 'filters', id, true) || identity
  5080. }
  5081. /* */
  5082. function isKeyNotMatch (expect, actual) {
  5083. if (Array.isArray(expect)) {
  5084. return expect.indexOf(actual) === -1
  5085. } else {
  5086. return expect !== actual
  5087. }
  5088. }
  5089. /**
  5090. * Runtime helper for checking keyCodes from config.
  5091. * exposed as Vue.prototype._k
  5092. * passing in eventKeyName as last argument separately for backwards compat
  5093. */
  5094. function checkKeyCodes (
  5095. eventKeyCode,
  5096. key,
  5097. builtInKeyCode,
  5098. eventKeyName,
  5099. builtInKeyName
  5100. ) {
  5101. var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;
  5102. if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {
  5103. return isKeyNotMatch(builtInKeyName, eventKeyName)
  5104. } else if (mappedKeyCode) {
  5105. return isKeyNotMatch(mappedKeyCode, eventKeyCode)
  5106. } else if (eventKeyName) {
  5107. return hyphenate(eventKeyName) !== key
  5108. }
  5109. }
  5110. /* */
  5111. /**
  5112. * Runtime helper for merging v-bind="object" into a VNode's data.
  5113. */
  5114. function bindObjectProps (
  5115. data,
  5116. tag,
  5117. value,
  5118. asProp,
  5119. isSync
  5120. ) {
  5121. if (value) {
  5122. if (!isObject(value)) {
  5123. true && warn(
  5124. 'v-bind without argument expects an Object or Array value',
  5125. this
  5126. );
  5127. } else {
  5128. if (Array.isArray(value)) {
  5129. value = toObject(value);
  5130. }
  5131. var hash;
  5132. var loop = function ( key ) {
  5133. if (
  5134. key === 'class' ||
  5135. key === 'style' ||
  5136. isReservedAttribute(key)
  5137. ) {
  5138. hash = data;
  5139. } else {
  5140. var type = data.attrs && data.attrs.type;
  5141. hash = asProp || config.mustUseProp(tag, type, key)
  5142. ? data.domProps || (data.domProps = {})
  5143. : data.attrs || (data.attrs = {});
  5144. }
  5145. var camelizedKey = camelize(key);
  5146. var hyphenatedKey = hyphenate(key);
  5147. if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
  5148. hash[key] = value[key];
  5149. if (isSync) {
  5150. var on = data.on || (data.on = {});
  5151. on[("update:" + key)] = function ($event) {
  5152. value[key] = $event;
  5153. };
  5154. }
  5155. }
  5156. };
  5157. for (var key in value) loop( key );
  5158. }
  5159. }
  5160. return data
  5161. }
  5162. /* */
  5163. /**
  5164. * Runtime helper for rendering static trees.
  5165. */
  5166. function renderStatic (
  5167. index,
  5168. isInFor
  5169. ) {
  5170. var cached = this._staticTrees || (this._staticTrees = []);
  5171. var tree = cached[index];
  5172. // if has already-rendered static tree and not inside v-for,
  5173. // we can reuse the same tree.
  5174. if (tree && !isInFor) {
  5175. return tree
  5176. }
  5177. // otherwise, render a fresh tree.
  5178. tree = cached[index] = this.$options.staticRenderFns[index].call(
  5179. this._renderProxy,
  5180. null,
  5181. this // for render fns generated for functional component templates
  5182. );
  5183. markStatic(tree, ("__static__" + index), false);
  5184. return tree
  5185. }
  5186. /**
  5187. * Runtime helper for v-once.
  5188. * Effectively it means marking the node as static with a unique key.
  5189. */
  5190. function markOnce (
  5191. tree,
  5192. index,
  5193. key
  5194. ) {
  5195. markStatic(tree, ("__once__" + index + (key ? ("_" + key) : "")), true);
  5196. return tree
  5197. }
  5198. function markStatic (
  5199. tree,
  5200. key,
  5201. isOnce
  5202. ) {
  5203. if (Array.isArray(tree)) {
  5204. for (var i = 0; i < tree.length; i++) {
  5205. if (tree[i] && typeof tree[i] !== 'string') {
  5206. markStaticNode(tree[i], (key + "_" + i), isOnce);
  5207. }
  5208. }
  5209. } else {
  5210. markStaticNode(tree, key, isOnce);
  5211. }
  5212. }
  5213. function markStaticNode (node, key, isOnce) {
  5214. node.isStatic = true;
  5215. node.key = key;
  5216. node.isOnce = isOnce;
  5217. }
  5218. /* */
  5219. function bindObjectListeners (data, value) {
  5220. if (value) {
  5221. if (!isPlainObject(value)) {
  5222. true && warn(
  5223. 'v-on without argument expects an Object value',
  5224. this
  5225. );
  5226. } else {
  5227. var on = data.on = data.on ? extend({}, data.on) : {};
  5228. for (var key in value) {
  5229. var existing = on[key];
  5230. var ours = value[key];
  5231. on[key] = existing ? [].concat(existing, ours) : ours;
  5232. }
  5233. }
  5234. }
  5235. return data
  5236. }
  5237. /* */
  5238. function resolveScopedSlots (
  5239. fns, // see flow/vnode
  5240. res,
  5241. // the following are added in 2.6
  5242. hasDynamicKeys,
  5243. contentHashKey
  5244. ) {
  5245. res = res || { $stable: !hasDynamicKeys };
  5246. for (var i = 0; i < fns.length; i++) {
  5247. var slot = fns[i];
  5248. if (Array.isArray(slot)) {
  5249. resolveScopedSlots(slot, res, hasDynamicKeys);
  5250. } else if (slot) {
  5251. // marker for reverse proxying v-slot without scope on this.$slots
  5252. if (slot.proxy) {
  5253. slot.fn.proxy = true;
  5254. }
  5255. res[slot.key] = slot.fn;
  5256. }
  5257. }
  5258. if (contentHashKey) {
  5259. (res).$key = contentHashKey;
  5260. }
  5261. return res
  5262. }
  5263. /* */
  5264. function bindDynamicKeys (baseObj, values) {
  5265. for (var i = 0; i < values.length; i += 2) {
  5266. var key = values[i];
  5267. if (typeof key === 'string' && key) {
  5268. baseObj[values[i]] = values[i + 1];
  5269. } else if ( true && key !== '' && key !== null) {
  5270. // null is a special value for explicitly removing a binding
  5271. warn(
  5272. ("Invalid value for dynamic directive argument (expected string or null): " + key),
  5273. this
  5274. );
  5275. }
  5276. }
  5277. return baseObj
  5278. }
  5279. // helper to dynamically append modifier runtime markers to event names.
  5280. // ensure only append when value is already string, otherwise it will be cast
  5281. // to string and cause the type check to miss.
  5282. function prependModifier (value, symbol) {
  5283. return typeof value === 'string' ? symbol + value : value
  5284. }
  5285. /* */
  5286. function installRenderHelpers (target) {
  5287. target._o = markOnce;
  5288. target._n = toNumber;
  5289. target._s = toString;
  5290. target._l = renderList;
  5291. target._t = renderSlot;
  5292. target._q = looseEqual;
  5293. target._i = looseIndexOf;
  5294. target._m = renderStatic;
  5295. target._f = resolveFilter;
  5296. target._k = checkKeyCodes;
  5297. target._b = bindObjectProps;
  5298. target._v = createTextVNode;
  5299. target._e = createEmptyVNode;
  5300. target._u = resolveScopedSlots;
  5301. target._g = bindObjectListeners;
  5302. target._d = bindDynamicKeys;
  5303. target._p = prependModifier;
  5304. }
  5305. /* */
  5306. function FunctionalRenderContext (
  5307. data,
  5308. props,
  5309. children,
  5310. parent,
  5311. Ctor
  5312. ) {
  5313. var this$1 = this;
  5314. var options = Ctor.options;
  5315. // ensure the createElement function in functional components
  5316. // gets a unique context - this is necessary for correct named slot check
  5317. var contextVm;
  5318. if (hasOwn(parent, '_uid')) {
  5319. contextVm = Object.create(parent);
  5320. // $flow-disable-line
  5321. contextVm._original = parent;
  5322. } else {
  5323. // the context vm passed in is a functional context as well.
  5324. // in this case we want to make sure we are able to get a hold to the
  5325. // real context instance.
  5326. contextVm = parent;
  5327. // $flow-disable-line
  5328. parent = parent._original;
  5329. }
  5330. var isCompiled = isTrue(options._compiled);
  5331. var needNormalization = !isCompiled;
  5332. this.data = data;
  5333. this.props = props;
  5334. this.children = children;
  5335. this.parent = parent;
  5336. this.listeners = data.on || emptyObject;
  5337. this.injections = resolveInject(options.inject, parent);
  5338. this.slots = function () {
  5339. if (!this$1.$slots) {
  5340. normalizeScopedSlots(
  5341. data.scopedSlots,
  5342. this$1.$slots = resolveSlots(children, parent)
  5343. );
  5344. }
  5345. return this$1.$slots
  5346. };
  5347. Object.defineProperty(this, 'scopedSlots', ({
  5348. enumerable: true,
  5349. get: function get () {
  5350. return normalizeScopedSlots(data.scopedSlots, this.slots())
  5351. }
  5352. }));
  5353. // support for compiled functional template
  5354. if (isCompiled) {
  5355. // exposing $options for renderStatic()
  5356. this.$options = options;
  5357. // pre-resolve slots for renderSlot()
  5358. this.$slots = this.slots();
  5359. this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);
  5360. }
  5361. if (options._scopeId) {
  5362. this._c = function (a, b, c, d) {
  5363. var vnode = createElement(contextVm, a, b, c, d, needNormalization);
  5364. if (vnode && !Array.isArray(vnode)) {
  5365. vnode.fnScopeId = options._scopeId;
  5366. vnode.fnContext = parent;
  5367. }
  5368. return vnode
  5369. };
  5370. } else {
  5371. this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };
  5372. }
  5373. }
  5374. installRenderHelpers(FunctionalRenderContext.prototype);
  5375. function createFunctionalComponent (
  5376. Ctor,
  5377. propsData,
  5378. data,
  5379. contextVm,
  5380. children
  5381. ) {
  5382. var options = Ctor.options;
  5383. var props = {};
  5384. var propOptions = options.props;
  5385. if (isDef(propOptions)) {
  5386. for (var key in propOptions) {
  5387. props[key] = validateProp(key, propOptions, propsData || emptyObject);
  5388. }
  5389. } else {
  5390. if (isDef(data.attrs)) { mergeProps(props, data.attrs); }
  5391. if (isDef(data.props)) { mergeProps(props, data.props); }
  5392. }
  5393. var renderContext = new FunctionalRenderContext(
  5394. data,
  5395. props,
  5396. children,
  5397. contextVm,
  5398. Ctor
  5399. );
  5400. var vnode = options.render.call(null, renderContext._c, renderContext);
  5401. if (vnode instanceof VNode) {
  5402. return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
  5403. } else if (Array.isArray(vnode)) {
  5404. var vnodes = normalizeChildren(vnode) || [];
  5405. var res = new Array(vnodes.length);
  5406. for (var i = 0; i < vnodes.length; i++) {
  5407. res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);
  5408. }
  5409. return res
  5410. }
  5411. }
  5412. function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
  5413. // #7817 clone node before setting fnContext, otherwise if the node is reused
  5414. // (e.g. it was from a cached normal slot) the fnContext causes named slots
  5415. // that should not be matched to match.
  5416. var clone = cloneVNode(vnode);
  5417. clone.fnContext = contextVm;
  5418. clone.fnOptions = options;
  5419. if (true) {
  5420. (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;
  5421. }
  5422. if (data.slot) {
  5423. (clone.data || (clone.data = {})).slot = data.slot;
  5424. }
  5425. return clone
  5426. }
  5427. function mergeProps (to, from) {
  5428. for (var key in from) {
  5429. to[camelize(key)] = from[key];
  5430. }
  5431. }
  5432. /* */
  5433. /* */
  5434. /* */
  5435. /* */
  5436. // inline hooks to be invoked on component VNodes during patch
  5437. var componentVNodeHooks = {
  5438. init: function init (vnode, hydrating) {
  5439. if (
  5440. vnode.componentInstance &&
  5441. !vnode.componentInstance._isDestroyed &&
  5442. vnode.data.keepAlive
  5443. ) {
  5444. // kept-alive components, treat as a patch
  5445. var mountedNode = vnode; // work around flow
  5446. componentVNodeHooks.prepatch(mountedNode, mountedNode);
  5447. } else {
  5448. var child = vnode.componentInstance = createComponentInstanceForVnode(
  5449. vnode,
  5450. activeInstance
  5451. );
  5452. child.$mount(hydrating ? vnode.elm : undefined, hydrating);
  5453. }
  5454. },
  5455. prepatch: function prepatch (oldVnode, vnode) {
  5456. var options = vnode.componentOptions;
  5457. var child = vnode.componentInstance = oldVnode.componentInstance;
  5458. updateChildComponent(
  5459. child,
  5460. options.propsData, // updated props
  5461. options.listeners, // updated listeners
  5462. vnode, // new parent vnode
  5463. options.children // new children
  5464. );
  5465. },
  5466. insert: function insert (vnode) {
  5467. var context = vnode.context;
  5468. var componentInstance = vnode.componentInstance;
  5469. if (!componentInstance._isMounted) {
  5470. callHook(componentInstance, 'onServiceCreated');
  5471. callHook(componentInstance, 'onServiceAttached');
  5472. componentInstance._isMounted = true;
  5473. callHook(componentInstance, 'mounted');
  5474. }
  5475. if (vnode.data.keepAlive) {
  5476. if (context._isMounted) {
  5477. // vue-router#1212
  5478. // During updates, a kept-alive component's child components may
  5479. // change, so directly walking the tree here may call activated hooks
  5480. // on incorrect children. Instead we push them into a queue which will
  5481. // be processed after the whole patch process ended.
  5482. queueActivatedComponent(componentInstance);
  5483. } else {
  5484. activateChildComponent(componentInstance, true /* direct */);
  5485. }
  5486. }
  5487. },
  5488. destroy: function destroy (vnode) {
  5489. var componentInstance = vnode.componentInstance;
  5490. if (!componentInstance._isDestroyed) {
  5491. if (!vnode.data.keepAlive) {
  5492. componentInstance.$destroy();
  5493. } else {
  5494. deactivateChildComponent(componentInstance, true /* direct */);
  5495. }
  5496. }
  5497. }
  5498. };
  5499. var hooksToMerge = Object.keys(componentVNodeHooks);
  5500. function createComponent (
  5501. Ctor,
  5502. data,
  5503. context,
  5504. children,
  5505. tag
  5506. ) {
  5507. if (isUndef(Ctor)) {
  5508. return
  5509. }
  5510. var baseCtor = context.$options._base;
  5511. // plain options object: turn it into a constructor
  5512. if (isObject(Ctor)) {
  5513. Ctor = baseCtor.extend(Ctor);
  5514. }
  5515. // if at this stage it's not a constructor or an async component factory,
  5516. // reject.
  5517. if (typeof Ctor !== 'function') {
  5518. if (true) {
  5519. warn(("Invalid Component definition: " + (String(Ctor))), context);
  5520. }
  5521. return
  5522. }
  5523. // async component
  5524. var asyncFactory;
  5525. if (isUndef(Ctor.cid)) {
  5526. asyncFactory = Ctor;
  5527. Ctor = resolveAsyncComponent(asyncFactory, baseCtor);
  5528. if (Ctor === undefined) {
  5529. // return a placeholder node for async component, which is rendered
  5530. // as a comment node but preserves all the raw information for the node.
  5531. // the information will be used for async server-rendering and hydration.
  5532. return createAsyncPlaceholder(
  5533. asyncFactory,
  5534. data,
  5535. context,
  5536. children,
  5537. tag
  5538. )
  5539. }
  5540. }
  5541. data = data || {};
  5542. // resolve constructor options in case global mixins are applied after
  5543. // component constructor creation
  5544. resolveConstructorOptions(Ctor);
  5545. // transform component v-model data into props & events
  5546. if (isDef(data.model)) {
  5547. transformModel(Ctor.options, data);
  5548. }
  5549. // extract props
  5550. var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx
  5551. // functional component
  5552. if (isTrue(Ctor.options.functional)) {
  5553. return createFunctionalComponent(Ctor, propsData, data, context, children)
  5554. }
  5555. // extract listeners, since these needs to be treated as
  5556. // child component listeners instead of DOM listeners
  5557. var listeners = data.on;
  5558. // replace with listeners with .native modifier
  5559. // so it gets processed during parent component patch.
  5560. data.on = data.nativeOn;
  5561. if (isTrue(Ctor.options.abstract)) {
  5562. // abstract components do not keep anything
  5563. // other than props & listeners & slot
  5564. // work around flow
  5565. var slot = data.slot;
  5566. data = {};
  5567. if (slot) {
  5568. data.slot = slot;
  5569. }
  5570. }
  5571. // install component management hooks onto the placeholder node
  5572. installComponentHooks(data);
  5573. // return a placeholder vnode
  5574. var name = Ctor.options.name || tag;
  5575. var vnode = new VNode(
  5576. ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')),
  5577. data, undefined, undefined, undefined, context,
  5578. { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },
  5579. asyncFactory
  5580. );
  5581. return vnode
  5582. }
  5583. function createComponentInstanceForVnode (
  5584. vnode, // we know it's MountedComponentVNode but flow doesn't
  5585. parent // activeInstance in lifecycle state
  5586. ) {
  5587. var options = {
  5588. _isComponent: true,
  5589. _parentVnode: vnode,
  5590. parent: parent
  5591. };
  5592. // check inline-template render functions
  5593. var inlineTemplate = vnode.data.inlineTemplate;
  5594. if (isDef(inlineTemplate)) {
  5595. options.render = inlineTemplate.render;
  5596. options.staticRenderFns = inlineTemplate.staticRenderFns;
  5597. }
  5598. return new vnode.componentOptions.Ctor(options)
  5599. }
  5600. function installComponentHooks (data) {
  5601. var hooks = data.hook || (data.hook = {});
  5602. for (var i = 0; i < hooksToMerge.length; i++) {
  5603. var key = hooksToMerge[i];
  5604. var existing = hooks[key];
  5605. var toMerge = componentVNodeHooks[key];
  5606. if (existing !== toMerge && !(existing && existing._merged)) {
  5607. hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;
  5608. }
  5609. }
  5610. }
  5611. function mergeHook$1 (f1, f2) {
  5612. var merged = function (a, b) {
  5613. // flow complains about extra args which is why we use any
  5614. f1(a, b);
  5615. f2(a, b);
  5616. };
  5617. merged._merged = true;
  5618. return merged
  5619. }
  5620. // transform component v-model info (value and callback) into
  5621. // prop and event handler respectively.
  5622. function transformModel (options, data) {
  5623. var prop = (options.model && options.model.prop) || 'value';
  5624. var event = (options.model && options.model.event) || 'input'
  5625. ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;
  5626. var on = data.on || (data.on = {});
  5627. var existing = on[event];
  5628. var callback = data.model.callback;
  5629. if (isDef(existing)) {
  5630. if (
  5631. Array.isArray(existing)
  5632. ? existing.indexOf(callback) === -1
  5633. : existing !== callback
  5634. ) {
  5635. on[event] = [callback].concat(existing);
  5636. }
  5637. } else {
  5638. on[event] = callback;
  5639. }
  5640. }
  5641. /* */
  5642. var SIMPLE_NORMALIZE = 1;
  5643. var ALWAYS_NORMALIZE = 2;
  5644. // wrapper function for providing a more flexible interface
  5645. // without getting yelled at by flow
  5646. function createElement (
  5647. context,
  5648. tag,
  5649. data,
  5650. children,
  5651. normalizationType,
  5652. alwaysNormalize
  5653. ) {
  5654. if (Array.isArray(data) || isPrimitive(data)) {
  5655. normalizationType = children;
  5656. children = data;
  5657. data = undefined;
  5658. }
  5659. if (isTrue(alwaysNormalize)) {
  5660. normalizationType = ALWAYS_NORMALIZE;
  5661. }
  5662. return _createElement(context, tag, data, children, normalizationType)
  5663. }
  5664. function _createElement (
  5665. context,
  5666. tag,
  5667. data,
  5668. children,
  5669. normalizationType
  5670. ) {
  5671. if (isDef(data) && isDef((data).__ob__)) {
  5672. true && warn(
  5673. "Avoid using observed data object as vnode data: " + (JSON.stringify(data)) + "\n" +
  5674. 'Always create fresh vnode data objects in each render!',
  5675. context
  5676. );
  5677. return createEmptyVNode()
  5678. }
  5679. // object syntax in v-bind
  5680. if (isDef(data) && isDef(data.is)) {
  5681. tag = data.is;
  5682. }
  5683. if (!tag) {
  5684. // in case of component :is set to falsy value
  5685. return createEmptyVNode()
  5686. }
  5687. // warn against non-primitive key
  5688. if ( true &&
  5689. isDef(data) && isDef(data.key) && !isPrimitive(data.key)
  5690. ) {
  5691. {
  5692. warn(
  5693. 'Avoid using non-primitive value as key, ' +
  5694. 'use string/number value instead.',
  5695. context
  5696. );
  5697. }
  5698. }
  5699. // support single function children as default scoped slot
  5700. if (Array.isArray(children) &&
  5701. typeof children[0] === 'function'
  5702. ) {
  5703. data = data || {};
  5704. data.scopedSlots = { default: children[0] };
  5705. children.length = 0;
  5706. }
  5707. if (normalizationType === ALWAYS_NORMALIZE) {
  5708. children = normalizeChildren(children);
  5709. } else if (normalizationType === SIMPLE_NORMALIZE) {
  5710. children = simpleNormalizeChildren(children);
  5711. }
  5712. var vnode, ns;
  5713. if (typeof tag === 'string') {
  5714. var Ctor;
  5715. ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
  5716. if (config.isReservedTag(tag)) {
  5717. // platform built-in elements
  5718. if ( true && isDef(data) && isDef(data.nativeOn)) {
  5719. warn(
  5720. ("The .native modifier for v-on is only valid on components but it was used on <" + tag + ">."),
  5721. context
  5722. );
  5723. }
  5724. vnode = new VNode(
  5725. config.parsePlatformTagName(tag), data, children,
  5726. undefined, undefined, context
  5727. );
  5728. } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {
  5729. // component
  5730. vnode = createComponent(Ctor, data, context, children, tag);
  5731. } else {
  5732. // unknown or unlisted namespaced elements
  5733. // check at runtime because it may get assigned a namespace when its
  5734. // parent normalizes children
  5735. vnode = new VNode(
  5736. tag, data, children,
  5737. undefined, undefined, context
  5738. );
  5739. }
  5740. } else {
  5741. // direct component options / constructor
  5742. vnode = createComponent(tag, data, context, children);
  5743. }
  5744. if (Array.isArray(vnode)) {
  5745. return vnode
  5746. } else if (isDef(vnode)) {
  5747. if (isDef(ns)) { applyNS(vnode, ns); }
  5748. if (isDef(data)) { registerDeepBindings(data); }
  5749. return vnode
  5750. } else {
  5751. return createEmptyVNode()
  5752. }
  5753. }
  5754. function applyNS (vnode, ns, force) {
  5755. vnode.ns = ns;
  5756. if (vnode.tag === 'foreignObject') {
  5757. // use default namespace inside foreignObject
  5758. ns = undefined;
  5759. force = true;
  5760. }
  5761. if (isDef(vnode.children)) {
  5762. for (var i = 0, l = vnode.children.length; i < l; i++) {
  5763. var child = vnode.children[i];
  5764. if (isDef(child.tag) && (
  5765. isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {
  5766. applyNS(child, ns, force);
  5767. }
  5768. }
  5769. }
  5770. }
  5771. // ref #5318
  5772. // necessary to ensure parent re-render when deep bindings like :style and
  5773. // :class are used on slot nodes
  5774. function registerDeepBindings (data) {
  5775. if (isObject(data.style)) {
  5776. traverse(data.style);
  5777. }
  5778. if (isObject(data.class)) {
  5779. traverse(data.class);
  5780. }
  5781. }
  5782. /* */
  5783. function initRender (vm) {
  5784. vm._vnode = null; // the root of the child tree
  5785. vm._staticTrees = null; // v-once cached trees
  5786. var options = vm.$options;
  5787. var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree
  5788. var renderContext = parentVnode && parentVnode.context;
  5789. vm.$slots = resolveSlots(options._renderChildren, renderContext);
  5790. vm.$scopedSlots = emptyObject;
  5791. // bind the createElement fn to this instance
  5792. // so that we get proper render context inside it.
  5793. // args order: tag, data, children, normalizationType, alwaysNormalize
  5794. // internal version is used by render functions compiled from templates
  5795. vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };
  5796. // normalization is always applied for the public version, used in
  5797. // user-written render functions.
  5798. vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };
  5799. // $attrs & $listeners are exposed for easier HOC creation.
  5800. // they need to be reactive so that HOCs using them are always updated
  5801. var parentData = parentVnode && parentVnode.data;
  5802. /* istanbul ignore else */
  5803. if (true) {
  5804. defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {
  5805. !isUpdatingChildComponent && warn("$attrs is readonly.", vm);
  5806. }, true);
  5807. defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {
  5808. !isUpdatingChildComponent && warn("$listeners is readonly.", vm);
  5809. }, true);
  5810. } else {}
  5811. }
  5812. var currentRenderingInstance = null;
  5813. function renderMixin (Vue) {
  5814. // install runtime convenience helpers
  5815. installRenderHelpers(Vue.prototype);
  5816. Vue.prototype.$nextTick = function (fn) {
  5817. return nextTick(fn, this)
  5818. };
  5819. Vue.prototype._render = function () {
  5820. var vm = this;
  5821. var ref = vm.$options;
  5822. var render = ref.render;
  5823. var _parentVnode = ref._parentVnode;
  5824. if (_parentVnode) {
  5825. vm.$scopedSlots = normalizeScopedSlots(
  5826. _parentVnode.data.scopedSlots,
  5827. vm.$slots,
  5828. vm.$scopedSlots
  5829. );
  5830. }
  5831. // set parent vnode. this allows render functions to have access
  5832. // to the data on the placeholder node.
  5833. vm.$vnode = _parentVnode;
  5834. // render self
  5835. var vnode;
  5836. try {
  5837. // There's no need to maintain a stack because all render fns are called
  5838. // separately from one another. Nested component's render fns are called
  5839. // when parent component is patched.
  5840. currentRenderingInstance = vm;
  5841. vnode = render.call(vm._renderProxy, vm.$createElement);
  5842. } catch (e) {
  5843. handleError(e, vm, "render");
  5844. // return error render result,
  5845. // or previous vnode to prevent render error causing blank component
  5846. /* istanbul ignore else */
  5847. if ( true && vm.$options.renderError) {
  5848. try {
  5849. vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);
  5850. } catch (e) {
  5851. handleError(e, vm, "renderError");
  5852. vnode = vm._vnode;
  5853. }
  5854. } else {
  5855. vnode = vm._vnode;
  5856. }
  5857. } finally {
  5858. currentRenderingInstance = null;
  5859. }
  5860. // if the returned array contains only a single node, allow it
  5861. if (Array.isArray(vnode) && vnode.length === 1) {
  5862. vnode = vnode[0];
  5863. }
  5864. // return empty vnode in case the render function errored out
  5865. if (!(vnode instanceof VNode)) {
  5866. if ( true && Array.isArray(vnode)) {
  5867. warn(
  5868. 'Multiple root nodes returned from render function. Render function ' +
  5869. 'should return a single root node.',
  5870. vm
  5871. );
  5872. }
  5873. vnode = createEmptyVNode();
  5874. }
  5875. // set parent
  5876. vnode.parent = _parentVnode;
  5877. return vnode
  5878. };
  5879. }
  5880. /* */
  5881. function ensureCtor (comp, base) {
  5882. if (
  5883. comp.__esModule ||
  5884. (hasSymbol && comp[Symbol.toStringTag] === 'Module')
  5885. ) {
  5886. comp = comp.default;
  5887. }
  5888. return isObject(comp)
  5889. ? base.extend(comp)
  5890. : comp
  5891. }
  5892. function createAsyncPlaceholder (
  5893. factory,
  5894. data,
  5895. context,
  5896. children,
  5897. tag
  5898. ) {
  5899. var node = createEmptyVNode();
  5900. node.asyncFactory = factory;
  5901. node.asyncMeta = { data: data, context: context, children: children, tag: tag };
  5902. return node
  5903. }
  5904. function resolveAsyncComponent (
  5905. factory,
  5906. baseCtor
  5907. ) {
  5908. if (isTrue(factory.error) && isDef(factory.errorComp)) {
  5909. return factory.errorComp
  5910. }
  5911. if (isDef(factory.resolved)) {
  5912. return factory.resolved
  5913. }
  5914. var owner = currentRenderingInstance;
  5915. if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
  5916. // already pending
  5917. factory.owners.push(owner);
  5918. }
  5919. if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
  5920. return factory.loadingComp
  5921. }
  5922. if (owner && !isDef(factory.owners)) {
  5923. var owners = factory.owners = [owner];
  5924. var sync = true;
  5925. var timerLoading = null;
  5926. var timerTimeout = null
  5927. ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });
  5928. var forceRender = function (renderCompleted) {
  5929. for (var i = 0, l = owners.length; i < l; i++) {
  5930. (owners[i]).$forceUpdate();
  5931. }
  5932. if (renderCompleted) {
  5933. owners.length = 0;
  5934. if (timerLoading !== null) {
  5935. clearTimeout(timerLoading);
  5936. timerLoading = null;
  5937. }
  5938. if (timerTimeout !== null) {
  5939. clearTimeout(timerTimeout);
  5940. timerTimeout = null;
  5941. }
  5942. }
  5943. };
  5944. var resolve = once(function (res) {
  5945. // cache resolved
  5946. factory.resolved = ensureCtor(res, baseCtor);
  5947. // invoke callbacks only if this is not a synchronous resolve
  5948. // (async resolves are shimmed as synchronous during SSR)
  5949. if (!sync) {
  5950. forceRender(true);
  5951. } else {
  5952. owners.length = 0;
  5953. }
  5954. });
  5955. var reject = once(function (reason) {
  5956. true && warn(
  5957. "Failed to resolve async component: " + (String(factory)) +
  5958. (reason ? ("\nReason: " + reason) : '')
  5959. );
  5960. if (isDef(factory.errorComp)) {
  5961. factory.error = true;
  5962. forceRender(true);
  5963. }
  5964. });
  5965. var res = factory(resolve, reject);
  5966. if (isObject(res)) {
  5967. if (isPromise(res)) {
  5968. // () => Promise
  5969. if (isUndef(factory.resolved)) {
  5970. res.then(resolve, reject);
  5971. }
  5972. } else if (isPromise(res.component)) {
  5973. res.component.then(resolve, reject);
  5974. if (isDef(res.error)) {
  5975. factory.errorComp = ensureCtor(res.error, baseCtor);
  5976. }
  5977. if (isDef(res.loading)) {
  5978. factory.loadingComp = ensureCtor(res.loading, baseCtor);
  5979. if (res.delay === 0) {
  5980. factory.loading = true;
  5981. } else {
  5982. timerLoading = setTimeout(function () {
  5983. timerLoading = null;
  5984. if (isUndef(factory.resolved) && isUndef(factory.error)) {
  5985. factory.loading = true;
  5986. forceRender(false);
  5987. }
  5988. }, res.delay || 200);
  5989. }
  5990. }
  5991. if (isDef(res.timeout)) {
  5992. timerTimeout = setTimeout(function () {
  5993. timerTimeout = null;
  5994. if (isUndef(factory.resolved)) {
  5995. reject(
  5996. true
  5997. ? ("timeout (" + (res.timeout) + "ms)")
  5998. : undefined
  5999. );
  6000. }
  6001. }, res.timeout);
  6002. }
  6003. }
  6004. }
  6005. sync = false;
  6006. // return in case resolved synchronously
  6007. return factory.loading
  6008. ? factory.loadingComp
  6009. : factory.resolved
  6010. }
  6011. }
  6012. /* */
  6013. function isAsyncPlaceholder (node) {
  6014. return node.isComment && node.asyncFactory
  6015. }
  6016. /* */
  6017. function getFirstComponentChild (children) {
  6018. if (Array.isArray(children)) {
  6019. for (var i = 0; i < children.length; i++) {
  6020. var c = children[i];
  6021. if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {
  6022. return c
  6023. }
  6024. }
  6025. }
  6026. }
  6027. /* */
  6028. /* */
  6029. function initEvents (vm) {
  6030. vm._events = Object.create(null);
  6031. vm._hasHookEvent = false;
  6032. // init parent attached events
  6033. var listeners = vm.$options._parentListeners;
  6034. if (listeners) {
  6035. updateComponentListeners(vm, listeners);
  6036. }
  6037. }
  6038. var target;
  6039. function add (event, fn) {
  6040. target.$on(event, fn);
  6041. }
  6042. function remove$1 (event, fn) {
  6043. target.$off(event, fn);
  6044. }
  6045. function createOnceHandler (event, fn) {
  6046. var _target = target;
  6047. return function onceHandler () {
  6048. var res = fn.apply(null, arguments);
  6049. if (res !== null) {
  6050. _target.$off(event, onceHandler);
  6051. }
  6052. }
  6053. }
  6054. function updateComponentListeners (
  6055. vm,
  6056. listeners,
  6057. oldListeners
  6058. ) {
  6059. target = vm;
  6060. updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);
  6061. target = undefined;
  6062. }
  6063. function eventsMixin (Vue) {
  6064. var hookRE = /^hook:/;
  6065. Vue.prototype.$on = function (event, fn) {
  6066. var vm = this;
  6067. if (Array.isArray(event)) {
  6068. for (var i = 0, l = event.length; i < l; i++) {
  6069. vm.$on(event[i], fn);
  6070. }
  6071. } else {
  6072. (vm._events[event] || (vm._events[event] = [])).push(fn);
  6073. // optimize hook:event cost by using a boolean flag marked at registration
  6074. // instead of a hash lookup
  6075. if (hookRE.test(event)) {
  6076. vm._hasHookEvent = true;
  6077. }
  6078. }
  6079. return vm
  6080. };
  6081. Vue.prototype.$once = function (event, fn) {
  6082. var vm = this;
  6083. function on () {
  6084. vm.$off(event, on);
  6085. fn.apply(vm, arguments);
  6086. }
  6087. on.fn = fn;
  6088. vm.$on(event, on);
  6089. return vm
  6090. };
  6091. Vue.prototype.$off = function (event, fn) {
  6092. var vm = this;
  6093. // all
  6094. if (!arguments.length) {
  6095. vm._events = Object.create(null);
  6096. return vm
  6097. }
  6098. // array of events
  6099. if (Array.isArray(event)) {
  6100. for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {
  6101. vm.$off(event[i$1], fn);
  6102. }
  6103. return vm
  6104. }
  6105. // specific event
  6106. var cbs = vm._events[event];
  6107. if (!cbs) {
  6108. return vm
  6109. }
  6110. if (!fn) {
  6111. vm._events[event] = null;
  6112. return vm
  6113. }
  6114. // specific handler
  6115. var cb;
  6116. var i = cbs.length;
  6117. while (i--) {
  6118. cb = cbs[i];
  6119. if (cb === fn || cb.fn === fn) {
  6120. cbs.splice(i, 1);
  6121. break
  6122. }
  6123. }
  6124. return vm
  6125. };
  6126. Vue.prototype.$emit = function (event) {
  6127. var vm = this;
  6128. if (true) {
  6129. var lowerCaseEvent = event.toLowerCase();
  6130. if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {
  6131. tip(
  6132. "Event \"" + lowerCaseEvent + "\" is emitted in component " +
  6133. (formatComponentName(vm)) + " but the handler is registered for \"" + event + "\". " +
  6134. "Note that HTML attributes are case-insensitive and you cannot use " +
  6135. "v-on to listen to camelCase events when using in-DOM templates. " +
  6136. "You should probably use \"" + (hyphenate(event)) + "\" instead of \"" + event + "\"."
  6137. );
  6138. }
  6139. }
  6140. var cbs = vm._events[event];
  6141. if (cbs) {
  6142. cbs = cbs.length > 1 ? toArray(cbs) : cbs;
  6143. var args = toArray(arguments, 1);
  6144. var info = "event handler for \"" + event + "\"";
  6145. for (var i = 0, l = cbs.length; i < l; i++) {
  6146. invokeWithErrorHandling(cbs[i], vm, args, vm, info);
  6147. }
  6148. }
  6149. return vm
  6150. };
  6151. }
  6152. /* */
  6153. var activeInstance = null;
  6154. var isUpdatingChildComponent = false;
  6155. function setActiveInstance(vm) {
  6156. var prevActiveInstance = activeInstance;
  6157. activeInstance = vm;
  6158. return function () {
  6159. activeInstance = prevActiveInstance;
  6160. }
  6161. }
  6162. function initLifecycle (vm) {
  6163. var options = vm.$options;
  6164. // locate first non-abstract parent
  6165. var parent = options.parent;
  6166. if (parent && !options.abstract) {
  6167. while (parent.$options.abstract && parent.$parent) {
  6168. parent = parent.$parent;
  6169. }
  6170. parent.$children.push(vm);
  6171. }
  6172. vm.$parent = parent;
  6173. vm.$root = parent ? parent.$root : vm;
  6174. vm.$children = [];
  6175. vm.$refs = {};
  6176. vm._watcher = null;
  6177. vm._inactive = null;
  6178. vm._directInactive = false;
  6179. vm._isMounted = false;
  6180. vm._isDestroyed = false;
  6181. vm._isBeingDestroyed = false;
  6182. }
  6183. function lifecycleMixin (Vue) {
  6184. Vue.prototype._update = function (vnode, hydrating) {
  6185. var vm = this;
  6186. var prevEl = vm.$el;
  6187. var prevVnode = vm._vnode;
  6188. var restoreActiveInstance = setActiveInstance(vm);
  6189. vm._vnode = vnode;
  6190. // Vue.prototype.__patch__ is injected in entry points
  6191. // based on the rendering backend used.
  6192. if (!prevVnode) {
  6193. // initial render
  6194. vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);
  6195. } else {
  6196. // updates
  6197. vm.$el = vm.__patch__(prevVnode, vnode);
  6198. }
  6199. restoreActiveInstance();
  6200. // update __vue__ reference
  6201. if (prevEl) {
  6202. prevEl.__vue__ = null;
  6203. }
  6204. if (vm.$el) {
  6205. vm.$el.__vue__ = vm;
  6206. }
  6207. // if parent is an HOC, update its $el as well
  6208. if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {
  6209. vm.$parent.$el = vm.$el;
  6210. }
  6211. // updated hook is called by the scheduler to ensure that children are
  6212. // updated in a parent's updated hook.
  6213. };
  6214. Vue.prototype.$forceUpdate = function () {
  6215. var vm = this;
  6216. if (vm._watcher) {
  6217. vm._watcher.update();
  6218. }
  6219. };
  6220. Vue.prototype.$destroy = function () {
  6221. var vm = this;
  6222. if (vm._isBeingDestroyed) {
  6223. return
  6224. }
  6225. callHook(vm, 'beforeDestroy');
  6226. vm._isBeingDestroyed = true;
  6227. // remove self from parent
  6228. var parent = vm.$parent;
  6229. if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {
  6230. remove(parent.$children, vm);
  6231. }
  6232. // teardown watchers
  6233. if (vm._watcher) {
  6234. vm._watcher.teardown();
  6235. }
  6236. var i = vm._watchers.length;
  6237. while (i--) {
  6238. vm._watchers[i].teardown();
  6239. }
  6240. // remove reference from data ob
  6241. // frozen object may not have observer.
  6242. if (vm._data.__ob__) {
  6243. vm._data.__ob__.vmCount--;
  6244. }
  6245. // call the last hook...
  6246. vm._isDestroyed = true;
  6247. // invoke destroy hooks on current rendered tree
  6248. vm.__patch__(vm._vnode, null);
  6249. // fire destroyed hook
  6250. callHook(vm, 'destroyed');
  6251. // turn off all instance listeners.
  6252. vm.$off();
  6253. // remove __vue__ reference
  6254. if (vm.$el) {
  6255. vm.$el.__vue__ = null;
  6256. }
  6257. // release circular reference (#6759)
  6258. if (vm.$vnode) {
  6259. vm.$vnode.parent = null;
  6260. }
  6261. };
  6262. }
  6263. function updateChildComponent (
  6264. vm,
  6265. propsData,
  6266. listeners,
  6267. parentVnode,
  6268. renderChildren
  6269. ) {
  6270. if (true) {
  6271. isUpdatingChildComponent = true;
  6272. }
  6273. // determine whether component has slot children
  6274. // we need to do this before overwriting $options._renderChildren.
  6275. // check if there are dynamic scopedSlots (hand-written or compiled but with
  6276. // dynamic slot names). Static scoped slots compiled from template has the
  6277. // "$stable" marker.
  6278. var newScopedSlots = parentVnode.data.scopedSlots;
  6279. var oldScopedSlots = vm.$scopedSlots;
  6280. var hasDynamicScopedSlot = !!(
  6281. (newScopedSlots && !newScopedSlots.$stable) ||
  6282. (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
  6283. (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)
  6284. );
  6285. // Any static slot children from the parent may have changed during parent's
  6286. // update. Dynamic scoped slots may also have changed. In such cases, a forced
  6287. // update is necessary to ensure correctness.
  6288. var needsForceUpdate = !!(
  6289. renderChildren || // has new static slots
  6290. vm.$options._renderChildren || // has old static slots
  6291. hasDynamicScopedSlot
  6292. );
  6293. vm.$options._parentVnode = parentVnode;
  6294. vm.$vnode = parentVnode; // update vm's placeholder node without re-render
  6295. if (vm._vnode) { // update child tree's parent
  6296. vm._vnode.parent = parentVnode;
  6297. }
  6298. vm.$options._renderChildren = renderChildren;
  6299. // update $attrs and $listeners hash
  6300. // these are also reactive so they may trigger child update if the child
  6301. // used them during render
  6302. vm.$attrs = parentVnode.data.attrs || emptyObject;
  6303. vm.$listeners = listeners || emptyObject;
  6304. // update props
  6305. if (propsData && vm.$options.props) {
  6306. toggleObserving(false);
  6307. var props = vm._props;
  6308. var propKeys = vm.$options._propKeys || [];
  6309. for (var i = 0; i < propKeys.length; i++) {
  6310. var key = propKeys[i];
  6311. var propOptions = vm.$options.props; // wtf flow?
  6312. props[key] = validateProp(key, propOptions, propsData, vm);
  6313. }
  6314. toggleObserving(true);
  6315. // keep a copy of raw propsData
  6316. vm.$options.propsData = propsData;
  6317. }
  6318. // fixed by xxxxxx update properties(mp runtime)
  6319. vm._$updateProperties && vm._$updateProperties(vm);
  6320. // update listeners
  6321. listeners = listeners || emptyObject;
  6322. var oldListeners = vm.$options._parentListeners;
  6323. vm.$options._parentListeners = listeners;
  6324. updateComponentListeners(vm, listeners, oldListeners);
  6325. // resolve slots + force update if has children
  6326. if (needsForceUpdate) {
  6327. vm.$slots = resolveSlots(renderChildren, parentVnode.context);
  6328. vm.$forceUpdate();
  6329. }
  6330. if (true) {
  6331. isUpdatingChildComponent = false;
  6332. }
  6333. }
  6334. function isInInactiveTree (vm) {
  6335. while (vm && (vm = vm.$parent)) {
  6336. if (vm._inactive) { return true }
  6337. }
  6338. return false
  6339. }
  6340. function activateChildComponent (vm, direct) {
  6341. if (direct) {
  6342. vm._directInactive = false;
  6343. if (isInInactiveTree(vm)) {
  6344. return
  6345. }
  6346. } else if (vm._directInactive) {
  6347. return
  6348. }
  6349. if (vm._inactive || vm._inactive === null) {
  6350. vm._inactive = false;
  6351. for (var i = 0; i < vm.$children.length; i++) {
  6352. activateChildComponent(vm.$children[i]);
  6353. }
  6354. callHook(vm, 'activated');
  6355. }
  6356. }
  6357. function deactivateChildComponent (vm, direct) {
  6358. if (direct) {
  6359. vm._directInactive = true;
  6360. if (isInInactiveTree(vm)) {
  6361. return
  6362. }
  6363. }
  6364. if (!vm._inactive) {
  6365. vm._inactive = true;
  6366. for (var i = 0; i < vm.$children.length; i++) {
  6367. deactivateChildComponent(vm.$children[i]);
  6368. }
  6369. callHook(vm, 'deactivated');
  6370. }
  6371. }
  6372. function callHook (vm, hook) {
  6373. // #7573 disable dep collection when invoking lifecycle hooks
  6374. pushTarget();
  6375. var handlers = vm.$options[hook];
  6376. var info = hook + " hook";
  6377. if (handlers) {
  6378. for (var i = 0, j = handlers.length; i < j; i++) {
  6379. invokeWithErrorHandling(handlers[i], vm, null, vm, info);
  6380. }
  6381. }
  6382. if (vm._hasHookEvent) {
  6383. vm.$emit('hook:' + hook);
  6384. }
  6385. popTarget();
  6386. }
  6387. /* */
  6388. var MAX_UPDATE_COUNT = 100;
  6389. var queue = [];
  6390. var activatedChildren = [];
  6391. var has = {};
  6392. var circular = {};
  6393. var waiting = false;
  6394. var flushing = false;
  6395. var index = 0;
  6396. /**
  6397. * Reset the scheduler's state.
  6398. */
  6399. function resetSchedulerState () {
  6400. index = queue.length = activatedChildren.length = 0;
  6401. has = {};
  6402. if (true) {
  6403. circular = {};
  6404. }
  6405. waiting = flushing = false;
  6406. }
  6407. // Async edge case #6566 requires saving the timestamp when event listeners are
  6408. // attached. However, calling performance.now() has a perf overhead especially
  6409. // if the page has thousands of event listeners. Instead, we take a timestamp
  6410. // every time the scheduler flushes and use that for all event listeners
  6411. // attached during that flush.
  6412. var currentFlushTimestamp = 0;
  6413. // Async edge case fix requires storing an event listener's attach timestamp.
  6414. var getNow = Date.now;
  6415. // Determine what event timestamp the browser is using. Annoyingly, the
  6416. // timestamp can either be hi-res (relative to page load) or low-res
  6417. // (relative to UNIX epoch), so in order to compare time we have to use the
  6418. // same timestamp type when saving the flush timestamp.
  6419. // All IE versions use low-res event timestamps, and have problematic clock
  6420. // implementations (#9632)
  6421. if (inBrowser && !isIE) {
  6422. var performance = window.performance;
  6423. if (
  6424. performance &&
  6425. typeof performance.now === 'function' &&
  6426. getNow() > document.createEvent('Event').timeStamp
  6427. ) {
  6428. // if the event timestamp, although evaluated AFTER the Date.now(), is
  6429. // smaller than it, it means the event is using a hi-res timestamp,
  6430. // and we need to use the hi-res version for event listener timestamps as
  6431. // well.
  6432. getNow = function () { return performance.now(); };
  6433. }
  6434. }
  6435. /**
  6436. * Flush both queues and run the watchers.
  6437. */
  6438. function flushSchedulerQueue () {
  6439. currentFlushTimestamp = getNow();
  6440. flushing = true;
  6441. var watcher, id;
  6442. // Sort queue before flush.
  6443. // This ensures that:
  6444. // 1. Components are updated from parent to child. (because parent is always
  6445. // created before the child)
  6446. // 2. A component's user watchers are run before its render watcher (because
  6447. // user watchers are created before the render watcher)
  6448. // 3. If a component is destroyed during a parent component's watcher run,
  6449. // its watchers can be skipped.
  6450. queue.sort(function (a, b) { return a.id - b.id; });
  6451. // do not cache length because more watchers might be pushed
  6452. // as we run existing watchers
  6453. for (index = 0; index < queue.length; index++) {
  6454. watcher = queue[index];
  6455. if (watcher.before) {
  6456. watcher.before();
  6457. }
  6458. id = watcher.id;
  6459. has[id] = null;
  6460. watcher.run();
  6461. // in dev build, check and stop circular updates.
  6462. if ( true && has[id] != null) {
  6463. circular[id] = (circular[id] || 0) + 1;
  6464. if (circular[id] > MAX_UPDATE_COUNT) {
  6465. warn(
  6466. 'You may have an infinite update loop ' + (
  6467. watcher.user
  6468. ? ("in watcher with expression \"" + (watcher.expression) + "\"")
  6469. : "in a component render function."
  6470. ),
  6471. watcher.vm
  6472. );
  6473. break
  6474. }
  6475. }
  6476. }
  6477. // keep copies of post queues before resetting state
  6478. var activatedQueue = activatedChildren.slice();
  6479. var updatedQueue = queue.slice();
  6480. resetSchedulerState();
  6481. // call component updated and activated hooks
  6482. callActivatedHooks(activatedQueue);
  6483. callUpdatedHooks(updatedQueue);
  6484. // devtool hook
  6485. /* istanbul ignore if */
  6486. if (devtools && config.devtools) {
  6487. devtools.emit('flush');
  6488. }
  6489. }
  6490. function callUpdatedHooks (queue) {
  6491. var i = queue.length;
  6492. while (i--) {
  6493. var watcher = queue[i];
  6494. var vm = watcher.vm;
  6495. if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {
  6496. callHook(vm, 'updated');
  6497. }
  6498. }
  6499. }
  6500. /**
  6501. * Queue a kept-alive component that was activated during patch.
  6502. * The queue will be processed after the entire tree has been patched.
  6503. */
  6504. function queueActivatedComponent (vm) {
  6505. // setting _inactive to false here so that a render function can
  6506. // rely on checking whether it's in an inactive tree (e.g. router-view)
  6507. vm._inactive = false;
  6508. activatedChildren.push(vm);
  6509. }
  6510. function callActivatedHooks (queue) {
  6511. for (var i = 0; i < queue.length; i++) {
  6512. queue[i]._inactive = true;
  6513. activateChildComponent(queue[i], true /* true */);
  6514. }
  6515. }
  6516. /**
  6517. * Push a watcher into the watcher queue.
  6518. * Jobs with duplicate IDs will be skipped unless it's
  6519. * pushed when the queue is being flushed.
  6520. */
  6521. function queueWatcher (watcher) {
  6522. var id = watcher.id;
  6523. if (has[id] == null) {
  6524. has[id] = true;
  6525. if (!flushing) {
  6526. queue.push(watcher);
  6527. } else {
  6528. // if already flushing, splice the watcher based on its id
  6529. // if already past its id, it will be run next immediately.
  6530. var i = queue.length - 1;
  6531. while (i > index && queue[i].id > watcher.id) {
  6532. i--;
  6533. }
  6534. queue.splice(i + 1, 0, watcher);
  6535. }
  6536. // queue the flush
  6537. if (!waiting) {
  6538. waiting = true;
  6539. if ( true && !config.async) {
  6540. flushSchedulerQueue();
  6541. return
  6542. }
  6543. nextTick(flushSchedulerQueue);
  6544. }
  6545. }
  6546. }
  6547. /* */
  6548. var uid$2 = 0;
  6549. /**
  6550. * A watcher parses an expression, collects dependencies,
  6551. * and fires callback when the expression value changes.
  6552. * This is used for both the $watch() api and directives.
  6553. */
  6554. var Watcher = function Watcher (
  6555. vm,
  6556. expOrFn,
  6557. cb,
  6558. options,
  6559. isRenderWatcher
  6560. ) {
  6561. this.vm = vm;
  6562. if (isRenderWatcher) {
  6563. vm._watcher = this;
  6564. }
  6565. vm._watchers.push(this);
  6566. // options
  6567. if (options) {
  6568. this.deep = !!options.deep;
  6569. this.user = !!options.user;
  6570. this.lazy = !!options.lazy;
  6571. this.sync = !!options.sync;
  6572. this.before = options.before;
  6573. } else {
  6574. this.deep = this.user = this.lazy = this.sync = false;
  6575. }
  6576. this.cb = cb;
  6577. this.id = ++uid$2; // uid for batching
  6578. this.active = true;
  6579. this.dirty = this.lazy; // for lazy watchers
  6580. this.deps = [];
  6581. this.newDeps = [];
  6582. this.depIds = new _Set();
  6583. this.newDepIds = new _Set();
  6584. this.expression = true
  6585. ? expOrFn.toString()
  6586. : undefined;
  6587. // parse expression for getter
  6588. if (typeof expOrFn === 'function') {
  6589. this.getter = expOrFn;
  6590. } else {
  6591. this.getter = parsePath(expOrFn);
  6592. if (!this.getter) {
  6593. this.getter = noop;
  6594. true && warn(
  6595. "Failed watching path: \"" + expOrFn + "\" " +
  6596. 'Watcher only accepts simple dot-delimited paths. ' +
  6597. 'For full control, use a function instead.',
  6598. vm
  6599. );
  6600. }
  6601. }
  6602. this.value = this.lazy
  6603. ? undefined
  6604. : this.get();
  6605. };
  6606. /**
  6607. * Evaluate the getter, and re-collect dependencies.
  6608. */
  6609. Watcher.prototype.get = function get () {
  6610. pushTarget(this);
  6611. var value;
  6612. var vm = this.vm;
  6613. try {
  6614. value = this.getter.call(vm, vm);
  6615. } catch (e) {
  6616. if (this.user) {
  6617. handleError(e, vm, ("getter for watcher \"" + (this.expression) + "\""));
  6618. } else {
  6619. throw e
  6620. }
  6621. } finally {
  6622. // "touch" every property so they are all tracked as
  6623. // dependencies for deep watching
  6624. if (this.deep) {
  6625. traverse(value);
  6626. }
  6627. popTarget();
  6628. this.cleanupDeps();
  6629. }
  6630. return value
  6631. };
  6632. /**
  6633. * Add a dependency to this directive.
  6634. */
  6635. Watcher.prototype.addDep = function addDep (dep) {
  6636. var id = dep.id;
  6637. if (!this.newDepIds.has(id)) {
  6638. this.newDepIds.add(id);
  6639. this.newDeps.push(dep);
  6640. if (!this.depIds.has(id)) {
  6641. dep.addSub(this);
  6642. }
  6643. }
  6644. };
  6645. /**
  6646. * Clean up for dependency collection.
  6647. */
  6648. Watcher.prototype.cleanupDeps = function cleanupDeps () {
  6649. var i = this.deps.length;
  6650. while (i--) {
  6651. var dep = this.deps[i];
  6652. if (!this.newDepIds.has(dep.id)) {
  6653. dep.removeSub(this);
  6654. }
  6655. }
  6656. var tmp = this.depIds;
  6657. this.depIds = this.newDepIds;
  6658. this.newDepIds = tmp;
  6659. this.newDepIds.clear();
  6660. tmp = this.deps;
  6661. this.deps = this.newDeps;
  6662. this.newDeps = tmp;
  6663. this.newDeps.length = 0;
  6664. };
  6665. /**
  6666. * Subscriber interface.
  6667. * Will be called when a dependency changes.
  6668. */
  6669. Watcher.prototype.update = function update () {
  6670. /* istanbul ignore else */
  6671. if (this.lazy) {
  6672. this.dirty = true;
  6673. } else if (this.sync) {
  6674. this.run();
  6675. } else {
  6676. queueWatcher(this);
  6677. }
  6678. };
  6679. /**
  6680. * Scheduler job interface.
  6681. * Will be called by the scheduler.
  6682. */
  6683. Watcher.prototype.run = function run () {
  6684. if (this.active) {
  6685. var value = this.get();
  6686. if (
  6687. value !== this.value ||
  6688. // Deep watchers and watchers on Object/Arrays should fire even
  6689. // when the value is the same, because the value may
  6690. // have mutated.
  6691. isObject(value) ||
  6692. this.deep
  6693. ) {
  6694. // set new value
  6695. var oldValue = this.value;
  6696. this.value = value;
  6697. if (this.user) {
  6698. try {
  6699. this.cb.call(this.vm, value, oldValue);
  6700. } catch (e) {
  6701. handleError(e, this.vm, ("callback for watcher \"" + (this.expression) + "\""));
  6702. }
  6703. } else {
  6704. this.cb.call(this.vm, value, oldValue);
  6705. }
  6706. }
  6707. }
  6708. };
  6709. /**
  6710. * Evaluate the value of the watcher.
  6711. * This only gets called for lazy watchers.
  6712. */
  6713. Watcher.prototype.evaluate = function evaluate () {
  6714. this.value = this.get();
  6715. this.dirty = false;
  6716. };
  6717. /**
  6718. * Depend on all deps collected by this watcher.
  6719. */
  6720. Watcher.prototype.depend = function depend () {
  6721. var i = this.deps.length;
  6722. while (i--) {
  6723. this.deps[i].depend();
  6724. }
  6725. };
  6726. /**
  6727. * Remove self from all dependencies' subscriber list.
  6728. */
  6729. Watcher.prototype.teardown = function teardown () {
  6730. if (this.active) {
  6731. // remove self from vm's watcher list
  6732. // this is a somewhat expensive operation so we skip it
  6733. // if the vm is being destroyed.
  6734. if (!this.vm._isBeingDestroyed) {
  6735. remove(this.vm._watchers, this);
  6736. }
  6737. var i = this.deps.length;
  6738. while (i--) {
  6739. this.deps[i].removeSub(this);
  6740. }
  6741. this.active = false;
  6742. }
  6743. };
  6744. /* */
  6745. var sharedPropertyDefinition = {
  6746. enumerable: true,
  6747. configurable: true,
  6748. get: noop,
  6749. set: noop
  6750. };
  6751. function proxy (target, sourceKey, key) {
  6752. sharedPropertyDefinition.get = function proxyGetter () {
  6753. return this[sourceKey][key]
  6754. };
  6755. sharedPropertyDefinition.set = function proxySetter (val) {
  6756. this[sourceKey][key] = val;
  6757. };
  6758. Object.defineProperty(target, key, sharedPropertyDefinition);
  6759. }
  6760. function initState (vm) {
  6761. vm._watchers = [];
  6762. var opts = vm.$options;
  6763. if (opts.props) { initProps(vm, opts.props); }
  6764. if (opts.methods) { initMethods(vm, opts.methods); }
  6765. if (opts.data) {
  6766. initData(vm);
  6767. } else {
  6768. observe(vm._data = {}, true /* asRootData */);
  6769. }
  6770. if (opts.computed) { initComputed(vm, opts.computed); }
  6771. if (opts.watch && opts.watch !== nativeWatch) {
  6772. initWatch(vm, opts.watch);
  6773. }
  6774. }
  6775. function initProps (vm, propsOptions) {
  6776. var propsData = vm.$options.propsData || {};
  6777. var props = vm._props = {};
  6778. // cache prop keys so that future props updates can iterate using Array
  6779. // instead of dynamic object key enumeration.
  6780. var keys = vm.$options._propKeys = [];
  6781. var isRoot = !vm.$parent;
  6782. // root instance props should be converted
  6783. if (!isRoot) {
  6784. toggleObserving(false);
  6785. }
  6786. var loop = function ( key ) {
  6787. keys.push(key);
  6788. var value = validateProp(key, propsOptions, propsData, vm);
  6789. /* istanbul ignore else */
  6790. if (true) {
  6791. var hyphenatedKey = hyphenate(key);
  6792. if (isReservedAttribute(hyphenatedKey) ||
  6793. config.isReservedAttr(hyphenatedKey)) {
  6794. warn(
  6795. ("\"" + hyphenatedKey + "\" is a reserved attribute and cannot be used as component prop."),
  6796. vm
  6797. );
  6798. }
  6799. defineReactive$$1(props, key, value, function () {
  6800. if (!isRoot && !isUpdatingChildComponent) {
  6801. {
  6802. if(vm.mpHost === 'mp-baidu' || vm.mpHost === 'mp-kuaishou' || vm.mpHost === 'mp-xhs'){//百度、快手、小红书 observer 在 setData callback 之后触发,直接忽略该 warn
  6803. return
  6804. }
  6805. //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警
  6806. if(
  6807. key === 'value' &&
  6808. Array.isArray(vm.$options.behaviors) &&
  6809. vm.$options.behaviors.indexOf('uni://form-field') !== -1
  6810. ){
  6811. return
  6812. }
  6813. if(vm._getFormData){
  6814. return
  6815. }
  6816. var $parent = vm.$parent;
  6817. while($parent){
  6818. if($parent.__next_tick_pending){
  6819. return
  6820. }
  6821. $parent = $parent.$parent;
  6822. }
  6823. }
  6824. warn(
  6825. "Avoid mutating a prop directly since the value will be " +
  6826. "overwritten whenever the parent component re-renders. " +
  6827. "Instead, use a data or computed property based on the prop's " +
  6828. "value. Prop being mutated: \"" + key + "\"",
  6829. vm
  6830. );
  6831. }
  6832. });
  6833. } else {}
  6834. // static props are already proxied on the component's prototype
  6835. // during Vue.extend(). We only need to proxy props defined at
  6836. // instantiation here.
  6837. if (!(key in vm)) {
  6838. proxy(vm, "_props", key);
  6839. }
  6840. };
  6841. for (var key in propsOptions) loop( key );
  6842. toggleObserving(true);
  6843. }
  6844. function initData (vm) {
  6845. var data = vm.$options.data;
  6846. data = vm._data = typeof data === 'function'
  6847. ? getData(data, vm)
  6848. : data || {};
  6849. if (!isPlainObject(data)) {
  6850. data = {};
  6851. true && warn(
  6852. 'data functions should return an object:\n' +
  6853. 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
  6854. vm
  6855. );
  6856. }
  6857. // proxy data on instance
  6858. var keys = Object.keys(data);
  6859. var props = vm.$options.props;
  6860. var methods = vm.$options.methods;
  6861. var i = keys.length;
  6862. while (i--) {
  6863. var key = keys[i];
  6864. if (true) {
  6865. if (methods && hasOwn(methods, key)) {
  6866. warn(
  6867. ("Method \"" + key + "\" has already been defined as a data property."),
  6868. vm
  6869. );
  6870. }
  6871. }
  6872. if (props && hasOwn(props, key)) {
  6873. true && warn(
  6874. "The data property \"" + key + "\" is already declared as a prop. " +
  6875. "Use prop default value instead.",
  6876. vm
  6877. );
  6878. } else if (!isReserved(key)) {
  6879. proxy(vm, "_data", key);
  6880. }
  6881. }
  6882. // observe data
  6883. observe(data, true /* asRootData */);
  6884. }
  6885. function getData (data, vm) {
  6886. // #7573 disable dep collection when invoking data getters
  6887. pushTarget();
  6888. try {
  6889. return data.call(vm, vm)
  6890. } catch (e) {
  6891. handleError(e, vm, "data()");
  6892. return {}
  6893. } finally {
  6894. popTarget();
  6895. }
  6896. }
  6897. var computedWatcherOptions = { lazy: true };
  6898. function initComputed (vm, computed) {
  6899. // $flow-disable-line
  6900. var watchers = vm._computedWatchers = Object.create(null);
  6901. // computed properties are just getters during SSR
  6902. var isSSR = isServerRendering();
  6903. for (var key in computed) {
  6904. var userDef = computed[key];
  6905. var getter = typeof userDef === 'function' ? userDef : userDef.get;
  6906. if ( true && getter == null) {
  6907. warn(
  6908. ("Getter is missing for computed property \"" + key + "\"."),
  6909. vm
  6910. );
  6911. }
  6912. if (!isSSR) {
  6913. // create internal watcher for the computed property.
  6914. watchers[key] = new Watcher(
  6915. vm,
  6916. getter || noop,
  6917. noop,
  6918. computedWatcherOptions
  6919. );
  6920. }
  6921. // component-defined computed properties are already defined on the
  6922. // component prototype. We only need to define computed properties defined
  6923. // at instantiation here.
  6924. if (!(key in vm)) {
  6925. defineComputed(vm, key, userDef);
  6926. } else if (true) {
  6927. if (key in vm.$data) {
  6928. warn(("The computed property \"" + key + "\" is already defined in data."), vm);
  6929. } else if (vm.$options.props && key in vm.$options.props) {
  6930. warn(("The computed property \"" + key + "\" is already defined as a prop."), vm);
  6931. }
  6932. }
  6933. }
  6934. }
  6935. function defineComputed (
  6936. target,
  6937. key,
  6938. userDef
  6939. ) {
  6940. var shouldCache = !isServerRendering();
  6941. if (typeof userDef === 'function') {
  6942. sharedPropertyDefinition.get = shouldCache
  6943. ? createComputedGetter(key)
  6944. : createGetterInvoker(userDef);
  6945. sharedPropertyDefinition.set = noop;
  6946. } else {
  6947. sharedPropertyDefinition.get = userDef.get
  6948. ? shouldCache && userDef.cache !== false
  6949. ? createComputedGetter(key)
  6950. : createGetterInvoker(userDef.get)
  6951. : noop;
  6952. sharedPropertyDefinition.set = userDef.set || noop;
  6953. }
  6954. if ( true &&
  6955. sharedPropertyDefinition.set === noop) {
  6956. sharedPropertyDefinition.set = function () {
  6957. warn(
  6958. ("Computed property \"" + key + "\" was assigned to but it has no setter."),
  6959. this
  6960. );
  6961. };
  6962. }
  6963. Object.defineProperty(target, key, sharedPropertyDefinition);
  6964. }
  6965. function createComputedGetter (key) {
  6966. return function computedGetter () {
  6967. var watcher = this._computedWatchers && this._computedWatchers[key];
  6968. if (watcher) {
  6969. if (watcher.dirty) {
  6970. watcher.evaluate();
  6971. }
  6972. if (Dep.SharedObject.target) {// fixed by xxxxxx
  6973. watcher.depend();
  6974. }
  6975. return watcher.value
  6976. }
  6977. }
  6978. }
  6979. function createGetterInvoker(fn) {
  6980. return function computedGetter () {
  6981. return fn.call(this, this)
  6982. }
  6983. }
  6984. function initMethods (vm, methods) {
  6985. var props = vm.$options.props;
  6986. for (var key in methods) {
  6987. if (true) {
  6988. if (typeof methods[key] !== 'function') {
  6989. warn(
  6990. "Method \"" + key + "\" has type \"" + (typeof methods[key]) + "\" in the component definition. " +
  6991. "Did you reference the function correctly?",
  6992. vm
  6993. );
  6994. }
  6995. if (props && hasOwn(props, key)) {
  6996. warn(
  6997. ("Method \"" + key + "\" has already been defined as a prop."),
  6998. vm
  6999. );
  7000. }
  7001. if ((key in vm) && isReserved(key)) {
  7002. warn(
  7003. "Method \"" + key + "\" conflicts with an existing Vue instance method. " +
  7004. "Avoid defining component methods that start with _ or $."
  7005. );
  7006. }
  7007. }
  7008. vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);
  7009. }
  7010. }
  7011. function initWatch (vm, watch) {
  7012. for (var key in watch) {
  7013. var handler = watch[key];
  7014. if (Array.isArray(handler)) {
  7015. for (var i = 0; i < handler.length; i++) {
  7016. createWatcher(vm, key, handler[i]);
  7017. }
  7018. } else {
  7019. createWatcher(vm, key, handler);
  7020. }
  7021. }
  7022. }
  7023. function createWatcher (
  7024. vm,
  7025. expOrFn,
  7026. handler,
  7027. options
  7028. ) {
  7029. if (isPlainObject(handler)) {
  7030. options = handler;
  7031. handler = handler.handler;
  7032. }
  7033. if (typeof handler === 'string') {
  7034. handler = vm[handler];
  7035. }
  7036. return vm.$watch(expOrFn, handler, options)
  7037. }
  7038. function stateMixin (Vue) {
  7039. // flow somehow has problems with directly declared definition object
  7040. // when using Object.defineProperty, so we have to procedurally build up
  7041. // the object here.
  7042. var dataDef = {};
  7043. dataDef.get = function () { return this._data };
  7044. var propsDef = {};
  7045. propsDef.get = function () { return this._props };
  7046. if (true) {
  7047. dataDef.set = function () {
  7048. warn(
  7049. 'Avoid replacing instance root $data. ' +
  7050. 'Use nested data properties instead.',
  7051. this
  7052. );
  7053. };
  7054. propsDef.set = function () {
  7055. warn("$props is readonly.", this);
  7056. };
  7057. }
  7058. Object.defineProperty(Vue.prototype, '$data', dataDef);
  7059. Object.defineProperty(Vue.prototype, '$props', propsDef);
  7060. Vue.prototype.$set = set;
  7061. Vue.prototype.$delete = del;
  7062. Vue.prototype.$watch = function (
  7063. expOrFn,
  7064. cb,
  7065. options
  7066. ) {
  7067. var vm = this;
  7068. if (isPlainObject(cb)) {
  7069. return createWatcher(vm, expOrFn, cb, options)
  7070. }
  7071. options = options || {};
  7072. options.user = true;
  7073. var watcher = new Watcher(vm, expOrFn, cb, options);
  7074. if (options.immediate) {
  7075. try {
  7076. cb.call(vm, watcher.value);
  7077. } catch (error) {
  7078. handleError(error, vm, ("callback for immediate watcher \"" + (watcher.expression) + "\""));
  7079. }
  7080. }
  7081. return function unwatchFn () {
  7082. watcher.teardown();
  7083. }
  7084. };
  7085. }
  7086. /* */
  7087. var uid$3 = 0;
  7088. function initMixin (Vue) {
  7089. Vue.prototype._init = function (options) {
  7090. var vm = this;
  7091. // a uid
  7092. vm._uid = uid$3++;
  7093. var startTag, endTag;
  7094. /* istanbul ignore if */
  7095. if ( true && config.performance && mark) {
  7096. startTag = "vue-perf-start:" + (vm._uid);
  7097. endTag = "vue-perf-end:" + (vm._uid);
  7098. mark(startTag);
  7099. }
  7100. // a flag to avoid this being observed
  7101. vm._isVue = true;
  7102. // merge options
  7103. if (options && options._isComponent) {
  7104. // optimize internal component instantiation
  7105. // since dynamic options merging is pretty slow, and none of the
  7106. // internal component options needs special treatment.
  7107. initInternalComponent(vm, options);
  7108. } else {
  7109. vm.$options = mergeOptions(
  7110. resolveConstructorOptions(vm.constructor),
  7111. options || {},
  7112. vm
  7113. );
  7114. }
  7115. /* istanbul ignore else */
  7116. if (true) {
  7117. initProxy(vm);
  7118. } else {}
  7119. // expose real self
  7120. vm._self = vm;
  7121. initLifecycle(vm);
  7122. initEvents(vm);
  7123. initRender(vm);
  7124. callHook(vm, 'beforeCreate');
  7125. !vm._$fallback && initInjections(vm); // resolve injections before data/props
  7126. initState(vm);
  7127. !vm._$fallback && initProvide(vm); // resolve provide after data/props
  7128. !vm._$fallback && callHook(vm, 'created');
  7129. /* istanbul ignore if */
  7130. if ( true && config.performance && mark) {
  7131. vm._name = formatComponentName(vm, false);
  7132. mark(endTag);
  7133. measure(("vue " + (vm._name) + " init"), startTag, endTag);
  7134. }
  7135. if (vm.$options.el) {
  7136. vm.$mount(vm.$options.el);
  7137. }
  7138. };
  7139. }
  7140. function initInternalComponent (vm, options) {
  7141. var opts = vm.$options = Object.create(vm.constructor.options);
  7142. // doing this because it's faster than dynamic enumeration.
  7143. var parentVnode = options._parentVnode;
  7144. opts.parent = options.parent;
  7145. opts._parentVnode = parentVnode;
  7146. var vnodeComponentOptions = parentVnode.componentOptions;
  7147. opts.propsData = vnodeComponentOptions.propsData;
  7148. opts._parentListeners = vnodeComponentOptions.listeners;
  7149. opts._renderChildren = vnodeComponentOptions.children;
  7150. opts._componentTag = vnodeComponentOptions.tag;
  7151. if (options.render) {
  7152. opts.render = options.render;
  7153. opts.staticRenderFns = options.staticRenderFns;
  7154. }
  7155. }
  7156. function resolveConstructorOptions (Ctor) {
  7157. var options = Ctor.options;
  7158. if (Ctor.super) {
  7159. var superOptions = resolveConstructorOptions(Ctor.super);
  7160. var cachedSuperOptions = Ctor.superOptions;
  7161. if (superOptions !== cachedSuperOptions) {
  7162. // super option changed,
  7163. // need to resolve new options.
  7164. Ctor.superOptions = superOptions;
  7165. // check if there are any late-modified/attached options (#4976)
  7166. var modifiedOptions = resolveModifiedOptions(Ctor);
  7167. // update base extend options
  7168. if (modifiedOptions) {
  7169. extend(Ctor.extendOptions, modifiedOptions);
  7170. }
  7171. options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);
  7172. if (options.name) {
  7173. options.components[options.name] = Ctor;
  7174. }
  7175. }
  7176. }
  7177. return options
  7178. }
  7179. function resolveModifiedOptions (Ctor) {
  7180. var modified;
  7181. var latest = Ctor.options;
  7182. var sealed = Ctor.sealedOptions;
  7183. for (var key in latest) {
  7184. if (latest[key] !== sealed[key]) {
  7185. if (!modified) { modified = {}; }
  7186. modified[key] = latest[key];
  7187. }
  7188. }
  7189. return modified
  7190. }
  7191. function Vue (options) {
  7192. if ( true &&
  7193. !(this instanceof Vue)
  7194. ) {
  7195. warn('Vue is a constructor and should be called with the `new` keyword');
  7196. }
  7197. this._init(options);
  7198. }
  7199. initMixin(Vue);
  7200. stateMixin(Vue);
  7201. eventsMixin(Vue);
  7202. lifecycleMixin(Vue);
  7203. renderMixin(Vue);
  7204. /* */
  7205. function initUse (Vue) {
  7206. Vue.use = function (plugin) {
  7207. var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));
  7208. if (installedPlugins.indexOf(plugin) > -1) {
  7209. return this
  7210. }
  7211. // additional parameters
  7212. var args = toArray(arguments, 1);
  7213. args.unshift(this);
  7214. if (typeof plugin.install === 'function') {
  7215. plugin.install.apply(plugin, args);
  7216. } else if (typeof plugin === 'function') {
  7217. plugin.apply(null, args);
  7218. }
  7219. installedPlugins.push(plugin);
  7220. return this
  7221. };
  7222. }
  7223. /* */
  7224. function initMixin$1 (Vue) {
  7225. Vue.mixin = function (mixin) {
  7226. this.options = mergeOptions(this.options, mixin);
  7227. return this
  7228. };
  7229. }
  7230. /* */
  7231. function initExtend (Vue) {
  7232. /**
  7233. * Each instance constructor, including Vue, has a unique
  7234. * cid. This enables us to create wrapped "child
  7235. * constructors" for prototypal inheritance and cache them.
  7236. */
  7237. Vue.cid = 0;
  7238. var cid = 1;
  7239. /**
  7240. * Class inheritance
  7241. */
  7242. Vue.extend = function (extendOptions) {
  7243. extendOptions = extendOptions || {};
  7244. var Super = this;
  7245. var SuperId = Super.cid;
  7246. var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});
  7247. if (cachedCtors[SuperId]) {
  7248. return cachedCtors[SuperId]
  7249. }
  7250. var name = extendOptions.name || Super.options.name;
  7251. if ( true && name) {
  7252. validateComponentName(name);
  7253. }
  7254. var Sub = function VueComponent (options) {
  7255. this._init(options);
  7256. };
  7257. Sub.prototype = Object.create(Super.prototype);
  7258. Sub.prototype.constructor = Sub;
  7259. Sub.cid = cid++;
  7260. Sub.options = mergeOptions(
  7261. Super.options,
  7262. extendOptions
  7263. );
  7264. Sub['super'] = Super;
  7265. // For props and computed properties, we define the proxy getters on
  7266. // the Vue instances at extension time, on the extended prototype. This
  7267. // avoids Object.defineProperty calls for each instance created.
  7268. if (Sub.options.props) {
  7269. initProps$1(Sub);
  7270. }
  7271. if (Sub.options.computed) {
  7272. initComputed$1(Sub);
  7273. }
  7274. // allow further extension/mixin/plugin usage
  7275. Sub.extend = Super.extend;
  7276. Sub.mixin = Super.mixin;
  7277. Sub.use = Super.use;
  7278. // create asset registers, so extended classes
  7279. // can have their private assets too.
  7280. ASSET_TYPES.forEach(function (type) {
  7281. Sub[type] = Super[type];
  7282. });
  7283. // enable recursive self-lookup
  7284. if (name) {
  7285. Sub.options.components[name] = Sub;
  7286. }
  7287. // keep a reference to the super options at extension time.
  7288. // later at instantiation we can check if Super's options have
  7289. // been updated.
  7290. Sub.superOptions = Super.options;
  7291. Sub.extendOptions = extendOptions;
  7292. Sub.sealedOptions = extend({}, Sub.options);
  7293. // cache constructor
  7294. cachedCtors[SuperId] = Sub;
  7295. return Sub
  7296. };
  7297. }
  7298. function initProps$1 (Comp) {
  7299. var props = Comp.options.props;
  7300. for (var key in props) {
  7301. proxy(Comp.prototype, "_props", key);
  7302. }
  7303. }
  7304. function initComputed$1 (Comp) {
  7305. var computed = Comp.options.computed;
  7306. for (var key in computed) {
  7307. defineComputed(Comp.prototype, key, computed[key]);
  7308. }
  7309. }
  7310. /* */
  7311. function initAssetRegisters (Vue) {
  7312. /**
  7313. * Create asset registration methods.
  7314. */
  7315. ASSET_TYPES.forEach(function (type) {
  7316. Vue[type] = function (
  7317. id,
  7318. definition
  7319. ) {
  7320. if (!definition) {
  7321. return this.options[type + 's'][id]
  7322. } else {
  7323. /* istanbul ignore if */
  7324. if ( true && type === 'component') {
  7325. validateComponentName(id);
  7326. }
  7327. if (type === 'component' && isPlainObject(definition)) {
  7328. definition.name = definition.name || id;
  7329. definition = this.options._base.extend(definition);
  7330. }
  7331. if (type === 'directive' && typeof definition === 'function') {
  7332. definition = { bind: definition, update: definition };
  7333. }
  7334. this.options[type + 's'][id] = definition;
  7335. return definition
  7336. }
  7337. };
  7338. });
  7339. }
  7340. /* */
  7341. function getComponentName (opts) {
  7342. return opts && (opts.Ctor.options.name || opts.tag)
  7343. }
  7344. function matches (pattern, name) {
  7345. if (Array.isArray(pattern)) {
  7346. return pattern.indexOf(name) > -1
  7347. } else if (typeof pattern === 'string') {
  7348. return pattern.split(',').indexOf(name) > -1
  7349. } else if (isRegExp(pattern)) {
  7350. return pattern.test(name)
  7351. }
  7352. /* istanbul ignore next */
  7353. return false
  7354. }
  7355. function pruneCache (keepAliveInstance, filter) {
  7356. var cache = keepAliveInstance.cache;
  7357. var keys = keepAliveInstance.keys;
  7358. var _vnode = keepAliveInstance._vnode;
  7359. for (var key in cache) {
  7360. var cachedNode = cache[key];
  7361. if (cachedNode) {
  7362. var name = getComponentName(cachedNode.componentOptions);
  7363. if (name && !filter(name)) {
  7364. pruneCacheEntry(cache, key, keys, _vnode);
  7365. }
  7366. }
  7367. }
  7368. }
  7369. function pruneCacheEntry (
  7370. cache,
  7371. key,
  7372. keys,
  7373. current
  7374. ) {
  7375. var cached$$1 = cache[key];
  7376. if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {
  7377. cached$$1.componentInstance.$destroy();
  7378. }
  7379. cache[key] = null;
  7380. remove(keys, key);
  7381. }
  7382. var patternTypes = [String, RegExp, Array];
  7383. var KeepAlive = {
  7384. name: 'keep-alive',
  7385. abstract: true,
  7386. props: {
  7387. include: patternTypes,
  7388. exclude: patternTypes,
  7389. max: [String, Number]
  7390. },
  7391. created: function created () {
  7392. this.cache = Object.create(null);
  7393. this.keys = [];
  7394. },
  7395. destroyed: function destroyed () {
  7396. for (var key in this.cache) {
  7397. pruneCacheEntry(this.cache, key, this.keys);
  7398. }
  7399. },
  7400. mounted: function mounted () {
  7401. var this$1 = this;
  7402. this.$watch('include', function (val) {
  7403. pruneCache(this$1, function (name) { return matches(val, name); });
  7404. });
  7405. this.$watch('exclude', function (val) {
  7406. pruneCache(this$1, function (name) { return !matches(val, name); });
  7407. });
  7408. },
  7409. render: function render () {
  7410. var slot = this.$slots.default;
  7411. var vnode = getFirstComponentChild(slot);
  7412. var componentOptions = vnode && vnode.componentOptions;
  7413. if (componentOptions) {
  7414. // check pattern
  7415. var name = getComponentName(componentOptions);
  7416. var ref = this;
  7417. var include = ref.include;
  7418. var exclude = ref.exclude;
  7419. if (
  7420. // not included
  7421. (include && (!name || !matches(include, name))) ||
  7422. // excluded
  7423. (exclude && name && matches(exclude, name))
  7424. ) {
  7425. return vnode
  7426. }
  7427. var ref$1 = this;
  7428. var cache = ref$1.cache;
  7429. var keys = ref$1.keys;
  7430. var key = vnode.key == null
  7431. // same constructor may get registered as different local components
  7432. // so cid alone is not enough (#3269)
  7433. ? componentOptions.Ctor.cid + (componentOptions.tag ? ("::" + (componentOptions.tag)) : '')
  7434. : vnode.key;
  7435. if (cache[key]) {
  7436. vnode.componentInstance = cache[key].componentInstance;
  7437. // make current key freshest
  7438. remove(keys, key);
  7439. keys.push(key);
  7440. } else {
  7441. cache[key] = vnode;
  7442. keys.push(key);
  7443. // prune oldest entry
  7444. if (this.max && keys.length > parseInt(this.max)) {
  7445. pruneCacheEntry(cache, keys[0], keys, this._vnode);
  7446. }
  7447. }
  7448. vnode.data.keepAlive = true;
  7449. }
  7450. return vnode || (slot && slot[0])
  7451. }
  7452. };
  7453. var builtInComponents = {
  7454. KeepAlive: KeepAlive
  7455. };
  7456. /* */
  7457. function initGlobalAPI (Vue) {
  7458. // config
  7459. var configDef = {};
  7460. configDef.get = function () { return config; };
  7461. if (true) {
  7462. configDef.set = function () {
  7463. warn(
  7464. 'Do not replace the Vue.config object, set individual fields instead.'
  7465. );
  7466. };
  7467. }
  7468. Object.defineProperty(Vue, 'config', configDef);
  7469. // exposed util methods.
  7470. // NOTE: these are not considered part of the public API - avoid relying on
  7471. // them unless you are aware of the risk.
  7472. Vue.util = {
  7473. warn: warn,
  7474. extend: extend,
  7475. mergeOptions: mergeOptions,
  7476. defineReactive: defineReactive$$1
  7477. };
  7478. Vue.set = set;
  7479. Vue.delete = del;
  7480. Vue.nextTick = nextTick;
  7481. // 2.6 explicit observable API
  7482. Vue.observable = function (obj) {
  7483. observe(obj);
  7484. return obj
  7485. };
  7486. Vue.options = Object.create(null);
  7487. ASSET_TYPES.forEach(function (type) {
  7488. Vue.options[type + 's'] = Object.create(null);
  7489. });
  7490. // this is used to identify the "base" constructor to extend all plain-object
  7491. // components with in Weex's multi-instance scenarios.
  7492. Vue.options._base = Vue;
  7493. extend(Vue.options.components, builtInComponents);
  7494. initUse(Vue);
  7495. initMixin$1(Vue);
  7496. initExtend(Vue);
  7497. initAssetRegisters(Vue);
  7498. }
  7499. initGlobalAPI(Vue);
  7500. Object.defineProperty(Vue.prototype, '$isServer', {
  7501. get: isServerRendering
  7502. });
  7503. Object.defineProperty(Vue.prototype, '$ssrContext', {
  7504. get: function get () {
  7505. /* istanbul ignore next */
  7506. return this.$vnode && this.$vnode.ssrContext
  7507. }
  7508. });
  7509. // expose FunctionalRenderContext for ssr runtime helper installation
  7510. Object.defineProperty(Vue, 'FunctionalRenderContext', {
  7511. value: FunctionalRenderContext
  7512. });
  7513. Vue.version = '2.6.11';
  7514. /**
  7515. * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js
  7516. */
  7517. var ARRAYTYPE = '[object Array]';
  7518. var OBJECTTYPE = '[object Object]';
  7519. // const FUNCTIONTYPE = '[object Function]'
  7520. function diff(current, pre) {
  7521. var result = {};
  7522. syncKeys(current, pre);
  7523. _diff(current, pre, '', result);
  7524. return result
  7525. }
  7526. function syncKeys(current, pre) {
  7527. if (current === pre) { return }
  7528. var rootCurrentType = type(current);
  7529. var rootPreType = type(pre);
  7530. if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {
  7531. if(Object.keys(current).length >= Object.keys(pre).length){
  7532. for (var key in pre) {
  7533. var currentValue = current[key];
  7534. if (currentValue === undefined) {
  7535. current[key] = null;
  7536. } else {
  7537. syncKeys(currentValue, pre[key]);
  7538. }
  7539. }
  7540. }
  7541. } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {
  7542. if (current.length >= pre.length) {
  7543. pre.forEach(function (item, index) {
  7544. syncKeys(current[index], item);
  7545. });
  7546. }
  7547. }
  7548. }
  7549. function _diff(current, pre, path, result) {
  7550. if (current === pre) { return }
  7551. var rootCurrentType = type(current);
  7552. var rootPreType = type(pre);
  7553. if (rootCurrentType == OBJECTTYPE) {
  7554. if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {
  7555. setResult(result, path, current);
  7556. } else {
  7557. var loop = function ( key ) {
  7558. var currentValue = current[key];
  7559. var preValue = pre[key];
  7560. var currentType = type(currentValue);
  7561. var preType = type(preValue);
  7562. if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {
  7563. if (currentValue !== pre[key]) {
  7564. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7565. }
  7566. } else if (currentType == ARRAYTYPE) {
  7567. if (preType != ARRAYTYPE) {
  7568. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7569. } else {
  7570. if (currentValue.length < preValue.length) {
  7571. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7572. } else {
  7573. currentValue.forEach(function (item, index) {
  7574. _diff(item, preValue[index], (path == '' ? '' : path + ".") + key + '[' + index + ']', result);
  7575. });
  7576. }
  7577. }
  7578. } else if (currentType == OBJECTTYPE) {
  7579. if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {
  7580. setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7581. } else {
  7582. for (var subKey in currentValue) {
  7583. _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + ".") + key + '.' + subKey, result);
  7584. }
  7585. }
  7586. }
  7587. };
  7588. for (var key in current) loop( key );
  7589. }
  7590. } else if (rootCurrentType == ARRAYTYPE) {
  7591. if (rootPreType != ARRAYTYPE) {
  7592. setResult(result, path, current);
  7593. } else {
  7594. if (current.length < pre.length) {
  7595. setResult(result, path, current);
  7596. } else {
  7597. current.forEach(function (item, index) {
  7598. _diff(item, pre[index], path + '[' + index + ']', result);
  7599. });
  7600. }
  7601. }
  7602. } else {
  7603. setResult(result, path, current);
  7604. }
  7605. }
  7606. function setResult(result, k, v) {
  7607. // if (type(v) != FUNCTIONTYPE) {
  7608. result[k] = v;
  7609. // }
  7610. }
  7611. function type(obj) {
  7612. return Object.prototype.toString.call(obj)
  7613. }
  7614. /* */
  7615. function flushCallbacks$1(vm) {
  7616. if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {
  7617. if (Object({"NODE_ENV":"development","VUE_APP_NAME":"扫码点餐","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
  7618. var mpInstance = vm.$scope;
  7619. console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
  7620. ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');
  7621. }
  7622. var copies = vm.__next_tick_callbacks.slice(0);
  7623. vm.__next_tick_callbacks.length = 0;
  7624. for (var i = 0; i < copies.length; i++) {
  7625. copies[i]();
  7626. }
  7627. }
  7628. }
  7629. function hasRenderWatcher(vm) {
  7630. return queue.find(function (watcher) { return vm._watcher === watcher; })
  7631. }
  7632. function nextTick$1(vm, cb) {
  7633. //1.nextTick 之前 已 setData 且 setData 还未回调完成
  7634. //2.nextTick 之前存在 render watcher
  7635. if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {
  7636. if(Object({"NODE_ENV":"development","VUE_APP_NAME":"扫码点餐","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
  7637. var mpInstance = vm.$scope;
  7638. console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
  7639. ']:nextVueTick');
  7640. }
  7641. return nextTick(cb, vm)
  7642. }else{
  7643. if(Object({"NODE_ENV":"development","VUE_APP_NAME":"扫码点餐","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
  7644. var mpInstance$1 = vm.$scope;
  7645. console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +
  7646. ']:nextMPTick');
  7647. }
  7648. }
  7649. var _resolve;
  7650. if (!vm.__next_tick_callbacks) {
  7651. vm.__next_tick_callbacks = [];
  7652. }
  7653. vm.__next_tick_callbacks.push(function () {
  7654. if (cb) {
  7655. try {
  7656. cb.call(vm);
  7657. } catch (e) {
  7658. handleError(e, vm, 'nextTick');
  7659. }
  7660. } else if (_resolve) {
  7661. _resolve(vm);
  7662. }
  7663. });
  7664. // $flow-disable-line
  7665. if (!cb && typeof Promise !== 'undefined') {
  7666. return new Promise(function (resolve) {
  7667. _resolve = resolve;
  7668. })
  7669. }
  7670. }
  7671. /* */
  7672. function cloneWithData(vm) {
  7673. // 确保当前 vm 所有数据被同步
  7674. var ret = Object.create(null);
  7675. var dataKeys = [].concat(
  7676. Object.keys(vm._data || {}),
  7677. Object.keys(vm._computedWatchers || {}));
  7678. dataKeys.reduce(function(ret, key) {
  7679. ret[key] = vm[key];
  7680. return ret
  7681. }, ret);
  7682. // vue-composition-api
  7683. var compositionApiState = vm.__composition_api_state__ || vm.__secret_vfa_state__;
  7684. var rawBindings = compositionApiState && compositionApiState.rawBindings;
  7685. if (rawBindings) {
  7686. Object.keys(rawBindings).forEach(function (key) {
  7687. ret[key] = vm[key];
  7688. });
  7689. }
  7690. //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据
  7691. Object.assign(ret, vm.$mp.data || {});
  7692. if (
  7693. Array.isArray(vm.$options.behaviors) &&
  7694. vm.$options.behaviors.indexOf('uni://form-field') !== -1
  7695. ) { //form-field
  7696. ret['name'] = vm.name;
  7697. ret['value'] = vm.value;
  7698. }
  7699. return JSON.parse(JSON.stringify(ret))
  7700. }
  7701. var patch = function(oldVnode, vnode) {
  7702. var this$1 = this;
  7703. if (vnode === null) { //destroy
  7704. return
  7705. }
  7706. if (this.mpType === 'page' || this.mpType === 'component') {
  7707. var mpInstance = this.$scope;
  7708. var data = Object.create(null);
  7709. try {
  7710. data = cloneWithData(this);
  7711. } catch (err) {
  7712. console.error(err);
  7713. }
  7714. data.__webviewId__ = mpInstance.data.__webviewId__;
  7715. var mpData = Object.create(null);
  7716. Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据
  7717. mpData[key] = mpInstance.data[key];
  7718. });
  7719. var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);
  7720. if (Object.keys(diffData).length) {
  7721. if (Object({"NODE_ENV":"development","VUE_APP_NAME":"扫码点餐","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
  7722. console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +
  7723. ']差量更新',
  7724. JSON.stringify(diffData));
  7725. }
  7726. this.__next_tick_pending = true;
  7727. mpInstance.setData(diffData, function () {
  7728. this$1.__next_tick_pending = false;
  7729. flushCallbacks$1(this$1);
  7730. });
  7731. } else {
  7732. flushCallbacks$1(this);
  7733. }
  7734. }
  7735. };
  7736. /* */
  7737. function createEmptyRender() {
  7738. }
  7739. function mountComponent$1(
  7740. vm,
  7741. el,
  7742. hydrating
  7743. ) {
  7744. if (!vm.mpType) {//main.js 中的 new Vue
  7745. return vm
  7746. }
  7747. if (vm.mpType === 'app') {
  7748. vm.$options.render = createEmptyRender;
  7749. }
  7750. if (!vm.$options.render) {
  7751. vm.$options.render = createEmptyRender;
  7752. if (true) {
  7753. /* istanbul ignore if */
  7754. if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||
  7755. vm.$options.el || el) {
  7756. warn(
  7757. 'You are using the runtime-only build of Vue where the template ' +
  7758. 'compiler is not available. Either pre-compile the templates into ' +
  7759. 'render functions, or use the compiler-included build.',
  7760. vm
  7761. );
  7762. } else {
  7763. warn(
  7764. 'Failed to mount component: template or render function not defined.',
  7765. vm
  7766. );
  7767. }
  7768. }
  7769. }
  7770. !vm._$fallback && callHook(vm, 'beforeMount');
  7771. var updateComponent = function () {
  7772. vm._update(vm._render(), hydrating);
  7773. };
  7774. // we set this to vm._watcher inside the watcher's constructor
  7775. // since the watcher's initial patch may call $forceUpdate (e.g. inside child
  7776. // component's mounted hook), which relies on vm._watcher being already defined
  7777. new Watcher(vm, updateComponent, noop, {
  7778. before: function before() {
  7779. if (vm._isMounted && !vm._isDestroyed) {
  7780. callHook(vm, 'beforeUpdate');
  7781. }
  7782. }
  7783. }, true /* isRenderWatcher */);
  7784. hydrating = false;
  7785. return vm
  7786. }
  7787. /* */
  7788. function renderClass (
  7789. staticClass,
  7790. dynamicClass
  7791. ) {
  7792. if (isDef(staticClass) || isDef(dynamicClass)) {
  7793. return concat(staticClass, stringifyClass(dynamicClass))
  7794. }
  7795. /* istanbul ignore next */
  7796. return ''
  7797. }
  7798. function concat (a, b) {
  7799. return a ? b ? (a + ' ' + b) : a : (b || '')
  7800. }
  7801. function stringifyClass (value) {
  7802. if (Array.isArray(value)) {
  7803. return stringifyArray(value)
  7804. }
  7805. if (isObject(value)) {
  7806. return stringifyObject(value)
  7807. }
  7808. if (typeof value === 'string') {
  7809. return value
  7810. }
  7811. /* istanbul ignore next */
  7812. return ''
  7813. }
  7814. function stringifyArray (value) {
  7815. var res = '';
  7816. var stringified;
  7817. for (var i = 0, l = value.length; i < l; i++) {
  7818. if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {
  7819. if (res) { res += ' '; }
  7820. res += stringified;
  7821. }
  7822. }
  7823. return res
  7824. }
  7825. function stringifyObject (value) {
  7826. var res = '';
  7827. for (var key in value) {
  7828. if (value[key]) {
  7829. if (res) { res += ' '; }
  7830. res += key;
  7831. }
  7832. }
  7833. return res
  7834. }
  7835. /* */
  7836. var parseStyleText = cached(function (cssText) {
  7837. var res = {};
  7838. var listDelimiter = /;(?![^(]*\))/g;
  7839. var propertyDelimiter = /:(.+)/;
  7840. cssText.split(listDelimiter).forEach(function (item) {
  7841. if (item) {
  7842. var tmp = item.split(propertyDelimiter);
  7843. tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());
  7844. }
  7845. });
  7846. return res
  7847. });
  7848. // normalize possible array / string values into Object
  7849. function normalizeStyleBinding (bindingStyle) {
  7850. if (Array.isArray(bindingStyle)) {
  7851. return toObject(bindingStyle)
  7852. }
  7853. if (typeof bindingStyle === 'string') {
  7854. return parseStyleText(bindingStyle)
  7855. }
  7856. return bindingStyle
  7857. }
  7858. /* */
  7859. var MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];
  7860. function getTarget(obj, path) {
  7861. var parts = path.split('.');
  7862. var key = parts[0];
  7863. if (key.indexOf('__$n') === 0) { //number index
  7864. key = parseInt(key.replace('__$n', ''));
  7865. }
  7866. if (parts.length === 1) {
  7867. return obj[key]
  7868. }
  7869. return getTarget(obj[key], parts.slice(1).join('.'))
  7870. }
  7871. function internalMixin(Vue) {
  7872. Vue.config.errorHandler = function(err, vm, info) {
  7873. Vue.util.warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
  7874. console.error(err);
  7875. /* eslint-disable no-undef */
  7876. var app = typeof getApp === 'function' && getApp();
  7877. if (app && app.onError) {
  7878. app.onError(err);
  7879. }
  7880. };
  7881. var oldEmit = Vue.prototype.$emit;
  7882. Vue.prototype.$emit = function(event) {
  7883. if (this.$scope && event) {
  7884. var triggerEvent = this.$scope['_triggerEvent'] || this.$scope['triggerEvent'];
  7885. if (triggerEvent) {
  7886. triggerEvent.call(this.$scope, event, {
  7887. __args__: toArray(arguments, 1)
  7888. });
  7889. }
  7890. }
  7891. return oldEmit.apply(this, arguments)
  7892. };
  7893. Vue.prototype.$nextTick = function(fn) {
  7894. return nextTick$1(this, fn)
  7895. };
  7896. MP_METHODS.forEach(function (method) {
  7897. Vue.prototype[method] = function(args) {
  7898. if (this.$scope && this.$scope[method]) {
  7899. return this.$scope[method](args)
  7900. }
  7901. // mp-alipay
  7902. if (typeof my === 'undefined') {
  7903. return
  7904. }
  7905. if (method === 'createSelectorQuery') {
  7906. /* eslint-disable no-undef */
  7907. return my.createSelectorQuery(args)
  7908. } else if (method === 'createIntersectionObserver') {
  7909. /* eslint-disable no-undef */
  7910. return my.createIntersectionObserver(args)
  7911. }
  7912. // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent
  7913. };
  7914. });
  7915. Vue.prototype.__init_provide = initProvide;
  7916. Vue.prototype.__init_injections = initInjections;
  7917. Vue.prototype.__call_hook = function(hook, args) {
  7918. var vm = this;
  7919. // #7573 disable dep collection when invoking lifecycle hooks
  7920. pushTarget();
  7921. var handlers = vm.$options[hook];
  7922. var info = hook + " hook";
  7923. var ret;
  7924. if (handlers) {
  7925. for (var i = 0, j = handlers.length; i < j; i++) {
  7926. ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);
  7927. }
  7928. }
  7929. if (vm._hasHookEvent) {
  7930. vm.$emit('hook:' + hook, args);
  7931. }
  7932. popTarget();
  7933. return ret
  7934. };
  7935. Vue.prototype.__set_model = function(target, key, value, modifiers) {
  7936. if (Array.isArray(modifiers)) {
  7937. if (modifiers.indexOf('trim') !== -1) {
  7938. value = value.trim();
  7939. }
  7940. if (modifiers.indexOf('number') !== -1) {
  7941. value = this._n(value);
  7942. }
  7943. }
  7944. if (!target) {
  7945. target = this;
  7946. }
  7947. // 解决动态属性添加
  7948. Vue.set(target, key, value);
  7949. };
  7950. Vue.prototype.__set_sync = function(target, key, value) {
  7951. if (!target) {
  7952. target = this;
  7953. }
  7954. // 解决动态属性添加
  7955. Vue.set(target, key, value);
  7956. };
  7957. Vue.prototype.__get_orig = function(item) {
  7958. if (isPlainObject(item)) {
  7959. return item['$orig'] || item
  7960. }
  7961. return item
  7962. };
  7963. Vue.prototype.__get_value = function(dataPath, target) {
  7964. return getTarget(target || this, dataPath)
  7965. };
  7966. Vue.prototype.__get_class = function(dynamicClass, staticClass) {
  7967. return renderClass(staticClass, dynamicClass)
  7968. };
  7969. Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {
  7970. if (!dynamicStyle && !staticStyle) {
  7971. return ''
  7972. }
  7973. var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);
  7974. var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;
  7975. return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + ":" + (styleObj[name])); }).join(';')
  7976. };
  7977. Vue.prototype.__map = function(val, iteratee) {
  7978. //TODO 暂不考虑 string
  7979. var ret, i, l, keys, key;
  7980. if (Array.isArray(val)) {
  7981. ret = new Array(val.length);
  7982. for (i = 0, l = val.length; i < l; i++) {
  7983. ret[i] = iteratee(val[i], i);
  7984. }
  7985. return ret
  7986. } else if (isObject(val)) {
  7987. keys = Object.keys(val);
  7988. ret = Object.create(null);
  7989. for (i = 0, l = keys.length; i < l; i++) {
  7990. key = keys[i];
  7991. ret[key] = iteratee(val[key], key, i);
  7992. }
  7993. return ret
  7994. } else if (typeof val === 'number') {
  7995. ret = new Array(val);
  7996. for (i = 0, l = val; i < l; i++) {
  7997. // 第一个参数暂时仍和小程序一致
  7998. ret[i] = iteratee(i, i);
  7999. }
  8000. return ret
  8001. }
  8002. return []
  8003. };
  8004. }
  8005. /* */
  8006. var LIFECYCLE_HOOKS$1 = [
  8007. //App
  8008. 'onLaunch',
  8009. 'onShow',
  8010. 'onHide',
  8011. 'onUniNViewMessage',
  8012. 'onPageNotFound',
  8013. 'onThemeChange',
  8014. 'onError',
  8015. 'onUnhandledRejection',
  8016. //Page
  8017. 'onInit',
  8018. 'onLoad',
  8019. // 'onShow',
  8020. 'onReady',
  8021. // 'onHide',
  8022. 'onUnload',
  8023. 'onPullDownRefresh',
  8024. 'onReachBottom',
  8025. 'onTabItemTap',
  8026. 'onAddToFavorites',
  8027. 'onShareTimeline',
  8028. 'onShareAppMessage',
  8029. 'onResize',
  8030. 'onPageScroll',
  8031. 'onNavigationBarButtonTap',
  8032. 'onBackPress',
  8033. 'onNavigationBarSearchInputChanged',
  8034. 'onNavigationBarSearchInputConfirmed',
  8035. 'onNavigationBarSearchInputClicked',
  8036. //Component
  8037. // 'onReady', // 兼容旧版本,应该移除该事件
  8038. 'onPageShow',
  8039. 'onPageHide',
  8040. 'onPageResize',
  8041. 'onUploadDouyinVideo'
  8042. ];
  8043. function lifecycleMixin$1(Vue) {
  8044. //fixed vue-class-component
  8045. var oldExtend = Vue.extend;
  8046. Vue.extend = function(extendOptions) {
  8047. extendOptions = extendOptions || {};
  8048. var methods = extendOptions.methods;
  8049. if (methods) {
  8050. Object.keys(methods).forEach(function (methodName) {
  8051. if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {
  8052. extendOptions[methodName] = methods[methodName];
  8053. delete methods[methodName];
  8054. }
  8055. });
  8056. }
  8057. return oldExtend.call(this, extendOptions)
  8058. };
  8059. var strategies = Vue.config.optionMergeStrategies;
  8060. var mergeHook = strategies.created;
  8061. LIFECYCLE_HOOKS$1.forEach(function (hook) {
  8062. strategies[hook] = mergeHook;
  8063. });
  8064. Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;
  8065. }
  8066. /* */
  8067. // install platform patch function
  8068. Vue.prototype.__patch__ = patch;
  8069. // public mount method
  8070. Vue.prototype.$mount = function(
  8071. el ,
  8072. hydrating
  8073. ) {
  8074. return mountComponent$1(this, el, hydrating)
  8075. };
  8076. lifecycleMixin$1(Vue);
  8077. internalMixin(Vue);
  8078. /* */
  8079. /* harmony default export */ __webpack_exports__["default"] = (Vue);
  8080. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../webpack/buildin/global.js */ 2)))
  8081. /***/ }),
  8082. /* 5 */
  8083. /*!*******************************************!*\
  8084. !*** D:/wxproject/项目模板/uniapp/pages.json ***!
  8085. \*******************************************/
  8086. /*! no static exports found */
  8087. /***/ (function(module, exports) {
  8088. /***/ }),
  8089. /* 6 */,
  8090. /* 7 */,
  8091. /* 8 */,
  8092. /* 9 */,
  8093. /* 10 */,
  8094. /* 11 */
  8095. /*!**********************************************************************************************************!*\
  8096. !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js ***!
  8097. \**********************************************************************************************************/
  8098. /*! exports provided: default */
  8099. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  8100. "use strict";
  8101. __webpack_require__.r(__webpack_exports__);
  8102. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
  8103. /* globals __VUE_SSR_CONTEXT__ */
  8104. // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
  8105. // This module is a runtime utility for cleaner component module output and will
  8106. // be included in the final webpack user bundle.
  8107. function normalizeComponent (
  8108. scriptExports,
  8109. render,
  8110. staticRenderFns,
  8111. functionalTemplate,
  8112. injectStyles,
  8113. scopeId,
  8114. moduleIdentifier, /* server only */
  8115. shadowMode, /* vue-cli only */
  8116. components, // fixed by xxxxxx auto components
  8117. renderjs // fixed by xxxxxx renderjs
  8118. ) {
  8119. // Vue.extend constructor export interop
  8120. var options = typeof scriptExports === 'function'
  8121. ? scriptExports.options
  8122. : scriptExports
  8123. // fixed by xxxxxx auto components
  8124. if (components) {
  8125. if (!options.components) {
  8126. options.components = {}
  8127. }
  8128. var hasOwn = Object.prototype.hasOwnProperty
  8129. for (var name in components) {
  8130. if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {
  8131. options.components[name] = components[name]
  8132. }
  8133. }
  8134. }
  8135. // fixed by xxxxxx renderjs
  8136. if (renderjs) {
  8137. (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {
  8138. this[renderjs.__module] = this
  8139. });
  8140. (options.mixins || (options.mixins = [])).push(renderjs)
  8141. }
  8142. // render functions
  8143. if (render) {
  8144. options.render = render
  8145. options.staticRenderFns = staticRenderFns
  8146. options._compiled = true
  8147. }
  8148. // functional template
  8149. if (functionalTemplate) {
  8150. options.functional = true
  8151. }
  8152. // scopedId
  8153. if (scopeId) {
  8154. options._scopeId = 'data-v-' + scopeId
  8155. }
  8156. var hook
  8157. if (moduleIdentifier) { // server build
  8158. hook = function (context) {
  8159. // 2.3 injection
  8160. context =
  8161. context || // cached call
  8162. (this.$vnode && this.$vnode.ssrContext) || // stateful
  8163. (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
  8164. // 2.2 with runInNewContext: true
  8165. if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
  8166. context = __VUE_SSR_CONTEXT__
  8167. }
  8168. // inject component styles
  8169. if (injectStyles) {
  8170. injectStyles.call(this, context)
  8171. }
  8172. // register component module identifier for async chunk inferrence
  8173. if (context && context._registeredComponents) {
  8174. context._registeredComponents.add(moduleIdentifier)
  8175. }
  8176. }
  8177. // used by ssr in case component is cached and beforeCreate
  8178. // never gets called
  8179. options._ssrRegister = hook
  8180. } else if (injectStyles) {
  8181. hook = shadowMode
  8182. ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
  8183. : injectStyles
  8184. }
  8185. if (hook) {
  8186. if (options.functional) {
  8187. // for template-only hot-reload because in that case the render fn doesn't
  8188. // go through the normalizer
  8189. options._injectStyles = hook
  8190. // register for functioal component in vue file
  8191. var originalRender = options.render
  8192. options.render = function renderWithStyleInjection (h, context) {
  8193. hook.call(context)
  8194. return originalRender(h, context)
  8195. }
  8196. } else {
  8197. // inject component registration as beforeCreate hook
  8198. var existing = options.beforeCreate
  8199. options.beforeCreate = existing
  8200. ? [].concat(existing, hook)
  8201. : [hook]
  8202. }
  8203. }
  8204. return {
  8205. exports: scriptExports,
  8206. options: options
  8207. }
  8208. }
  8209. /***/ }),
  8210. /* 12 */
  8211. /*!*************************************************!*\
  8212. !*** D:/wxproject/项目模板/uniapp/common/config.js ***!
  8213. \*************************************************/
  8214. /*! no static exports found */
  8215. /***/ (function(module, exports, __webpack_require__) {
  8216. "use strict";
  8217. /* WEBPACK VAR INJECTION */(function(uni) {Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = {
  8218. // 接口地址
  8219. serverUrl: "http://192.168.1.113:10102",
  8220. wechatUrl: "https://broadcast.waityou24.cn",
  8221. // 设备信息
  8222. system: uni.getSystemInfoSync(),
  8223. // 节目类型
  8224. pro_type: [//
  8225. {
  8226. dict_label: '电视节目',
  8227. dict_value: '0' },
  8228. {
  8229. dict_label: '电影节目',
  8230. dict_value: '1' }] };exports.default = _default;
  8231. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
  8232. /***/ }),
  8233. /* 13 */
  8234. /*!**********************************************!*\
  8235. !*** D:/wxproject/项目模板/uniapp/common/api.js ***!
  8236. \**********************************************/
  8237. /*! no static exports found */
  8238. /***/ (function(module, exports, __webpack_require__) {
  8239. "use strict";
  8240. /* WEBPACK VAR INJECTION */(function(uni) {Object.defineProperty(exports, "__esModule", { value: true });exports.requestFile = exports.requestBase = void 0;var _regenerator = _interopRequireDefault(__webpack_require__(/*! ./node_modules/@babel/runtime/regenerator */ 14));var _config = _interopRequireDefault(__webpack_require__(/*! ../common/config */ 12));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {try {var info = gen[key](arg);var value = info.value;} catch (error) {reject(error);return;}if (info.done) {resolve(value);} else {Promise.resolve(value).then(_next, _throw);}}function _asyncToGenerator(fn) {return function () {var self = this,args = arguments;return new Promise(function (resolve, reject) {var gen = fn.apply(self, args);function _next(value) {asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);}function _throw(err) {asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);}_next(undefined);});};}
  8241. var getDomain = function getDomain(uri, type) {var
  8242. serverUrl =
  8243. _config.default.serverUrl,wechatUrl = _config.default.wechatUrl;
  8244. // 自定义
  8245. if (uri.includes("http")) return uri;
  8246. // 微信
  8247. if (uri.startsWith("/wechat/api")) return wechatUrl + uri;
  8248. // 地址前缀
  8249. else if (type) return serverUrl + "/projectadmin/".concat(type, "/api/") + uri;
  8250. // 常规
  8251. return serverUrl + "/projectadmin/api/" + uri;
  8252. };
  8253. // 常规请求
  8254. var requestBase = /*#__PURE__*/function () {var _ref = _asyncToGenerator( /*#__PURE__*/_regenerator.default.mark(function _callee(uri) {var method,data,type,baseUrl,header,token,_args = arguments;return _regenerator.default.wrap(function _callee$(_context) {while (1) {switch (_context.prev = _context.next) {case 0:method = _args.length > 1 && _args[1] !== undefined ? _args[1] : "GET";data = _args.length > 2 ? _args[2] : undefined;type = _args.length > 3 ? _args[3] : undefined;
  8255. // 请求地址
  8256. baseUrl = getDomain(uri, type);
  8257. // 请求头
  8258. header = {};
  8259. // 用户信息
  8260. token = "";
  8261. if (token) header.token = token;return _context.abrupt("return",
  8262. new Promise(function (resolve, reject) {
  8263. uni.request({
  8264. url: baseUrl,
  8265. method: method,
  8266. data: data,
  8267. header: header,
  8268. success: function success(res) {return toResolve(resolve, res);},
  8269. fail: function fail(err) {
  8270. console.log(err);
  8271. } });
  8272. }));case 8:case "end":return _context.stop();}}}, _callee);}));return function requestBase(_x) {return _ref.apply(this, arguments);};}();
  8273. // 图片请求
  8274. exports.requestBase = requestBase;var requestFile = function requestFile(uri, method, data, type) {
  8275. // 请求地址
  8276. var baseUrl = getDomain(uri, type);
  8277. return new Promise(function (resolve, reject) {
  8278. uni.uploadFile({
  8279. url: "https://broadcast.waityou24.cn/".concat(uri),
  8280. filePath: data,
  8281. name: 'file',
  8282. formData: {},
  8283. success: function success(res) {return toResolve(resolve, res);},
  8284. error: function error(e) {return toReject(reject, e);} });
  8285. });
  8286. };exports.requestFile = requestFile;
  8287. var toResolve = function toResolve(resolve, result) {
  8288. if (result.statusCode === 200) resolve(result.data);
  8289. };
  8290. var toReject = function toReject(reject, result) {
  8291. reject(result);
  8292. };
  8293. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
  8294. /***/ }),
  8295. /* 14 */
  8296. /*!**********************************************************!*\
  8297. !*** ./node_modules/@babel/runtime/regenerator/index.js ***!
  8298. \**********************************************************/
  8299. /*! no static exports found */
  8300. /***/ (function(module, exports, __webpack_require__) {
  8301. module.exports = __webpack_require__(/*! regenerator-runtime */ 15);
  8302. /***/ }),
  8303. /* 15 */
  8304. /*!************************************************************!*\
  8305. !*** ./node_modules/regenerator-runtime/runtime-module.js ***!
  8306. \************************************************************/
  8307. /*! no static exports found */
  8308. /***/ (function(module, exports, __webpack_require__) {
  8309. /**
  8310. * Copyright (c) 2014-present, Facebook, Inc.
  8311. *
  8312. * This source code is licensed under the MIT license found in the
  8313. * LICENSE file in the root directory of this source tree.
  8314. */
  8315. // This method of obtaining a reference to the global object needs to be
  8316. // kept identical to the way it is obtained in runtime.js
  8317. var g = (function() {
  8318. return this || (typeof self === "object" && self);
  8319. })() || Function("return this")();
  8320. // Use `getOwnPropertyNames` because not all browsers support calling
  8321. // `hasOwnProperty` on the global `self` object in a worker. See #183.
  8322. var hadRuntime = g.regeneratorRuntime &&
  8323. Object.getOwnPropertyNames(g).indexOf("regeneratorRuntime") >= 0;
  8324. // Save the old regeneratorRuntime in case it needs to be restored later.
  8325. var oldRuntime = hadRuntime && g.regeneratorRuntime;
  8326. // Force reevalutation of runtime.js.
  8327. g.regeneratorRuntime = undefined;
  8328. module.exports = __webpack_require__(/*! ./runtime */ 16);
  8329. if (hadRuntime) {
  8330. // Restore the original runtime.
  8331. g.regeneratorRuntime = oldRuntime;
  8332. } else {
  8333. // Remove the global property added by runtime.js.
  8334. try {
  8335. delete g.regeneratorRuntime;
  8336. } catch(e) {
  8337. g.regeneratorRuntime = undefined;
  8338. }
  8339. }
  8340. /***/ }),
  8341. /* 16 */
  8342. /*!*****************************************************!*\
  8343. !*** ./node_modules/regenerator-runtime/runtime.js ***!
  8344. \*****************************************************/
  8345. /*! no static exports found */
  8346. /***/ (function(module, exports) {
  8347. /**
  8348. * Copyright (c) 2014-present, Facebook, Inc.
  8349. *
  8350. * This source code is licensed under the MIT license found in the
  8351. * LICENSE file in the root directory of this source tree.
  8352. */
  8353. !(function(global) {
  8354. "use strict";
  8355. var Op = Object.prototype;
  8356. var hasOwn = Op.hasOwnProperty;
  8357. var undefined; // More compressible than void 0.
  8358. var $Symbol = typeof Symbol === "function" ? Symbol : {};
  8359. var iteratorSymbol = $Symbol.iterator || "@@iterator";
  8360. var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  8361. var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
  8362. var inModule = typeof module === "object";
  8363. var runtime = global.regeneratorRuntime;
  8364. if (runtime) {
  8365. if (inModule) {
  8366. // If regeneratorRuntime is defined globally and we're in a module,
  8367. // make the exports object identical to regeneratorRuntime.
  8368. module.exports = runtime;
  8369. }
  8370. // Don't bother evaluating the rest of this file if the runtime was
  8371. // already defined globally.
  8372. return;
  8373. }
  8374. // Define the runtime globally (as expected by generated code) as either
  8375. // module.exports (if we're in a module) or a new, empty object.
  8376. runtime = global.regeneratorRuntime = inModule ? module.exports : {};
  8377. function wrap(innerFn, outerFn, self, tryLocsList) {
  8378. // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
  8379. var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
  8380. var generator = Object.create(protoGenerator.prototype);
  8381. var context = new Context(tryLocsList || []);
  8382. // The ._invoke method unifies the implementations of the .next,
  8383. // .throw, and .return methods.
  8384. generator._invoke = makeInvokeMethod(innerFn, self, context);
  8385. return generator;
  8386. }
  8387. runtime.wrap = wrap;
  8388. // Try/catch helper to minimize deoptimizations. Returns a completion
  8389. // record like context.tryEntries[i].completion. This interface could
  8390. // have been (and was previously) designed to take a closure to be
  8391. // invoked without arguments, but in all the cases we care about we
  8392. // already have an existing method we want to call, so there's no need
  8393. // to create a new function object. We can even get away with assuming
  8394. // the method takes exactly one argument, since that happens to be true
  8395. // in every case, so we don't have to touch the arguments object. The
  8396. // only additional allocation required is the completion record, which
  8397. // has a stable shape and so hopefully should be cheap to allocate.
  8398. function tryCatch(fn, obj, arg) {
  8399. try {
  8400. return { type: "normal", arg: fn.call(obj, arg) };
  8401. } catch (err) {
  8402. return { type: "throw", arg: err };
  8403. }
  8404. }
  8405. var GenStateSuspendedStart = "suspendedStart";
  8406. var GenStateSuspendedYield = "suspendedYield";
  8407. var GenStateExecuting = "executing";
  8408. var GenStateCompleted = "completed";
  8409. // Returning this object from the innerFn has the same effect as
  8410. // breaking out of the dispatch switch statement.
  8411. var ContinueSentinel = {};
  8412. // Dummy constructor functions that we use as the .constructor and
  8413. // .constructor.prototype properties for functions that return Generator
  8414. // objects. For full spec compliance, you may wish to configure your
  8415. // minifier not to mangle the names of these two functions.
  8416. function Generator() {}
  8417. function GeneratorFunction() {}
  8418. function GeneratorFunctionPrototype() {}
  8419. // This is a polyfill for %IteratorPrototype% for environments that
  8420. // don't natively support it.
  8421. var IteratorPrototype = {};
  8422. IteratorPrototype[iteratorSymbol] = function () {
  8423. return this;
  8424. };
  8425. var getProto = Object.getPrototypeOf;
  8426. var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  8427. if (NativeIteratorPrototype &&
  8428. NativeIteratorPrototype !== Op &&
  8429. hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
  8430. // This environment has a native %IteratorPrototype%; use it instead
  8431. // of the polyfill.
  8432. IteratorPrototype = NativeIteratorPrototype;
  8433. }
  8434. var Gp = GeneratorFunctionPrototype.prototype =
  8435. Generator.prototype = Object.create(IteratorPrototype);
  8436. GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  8437. GeneratorFunctionPrototype.constructor = GeneratorFunction;
  8438. GeneratorFunctionPrototype[toStringTagSymbol] =
  8439. GeneratorFunction.displayName = "GeneratorFunction";
  8440. // Helper for defining the .next, .throw, and .return methods of the
  8441. // Iterator interface in terms of a single ._invoke method.
  8442. function defineIteratorMethods(prototype) {
  8443. ["next", "throw", "return"].forEach(function(method) {
  8444. prototype[method] = function(arg) {
  8445. return this._invoke(method, arg);
  8446. };
  8447. });
  8448. }
  8449. runtime.isGeneratorFunction = function(genFun) {
  8450. var ctor = typeof genFun === "function" && genFun.constructor;
  8451. return ctor
  8452. ? ctor === GeneratorFunction ||
  8453. // For the native GeneratorFunction constructor, the best we can
  8454. // do is to check its .name property.
  8455. (ctor.displayName || ctor.name) === "GeneratorFunction"
  8456. : false;
  8457. };
  8458. runtime.mark = function(genFun) {
  8459. if (Object.setPrototypeOf) {
  8460. Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
  8461. } else {
  8462. genFun.__proto__ = GeneratorFunctionPrototype;
  8463. if (!(toStringTagSymbol in genFun)) {
  8464. genFun[toStringTagSymbol] = "GeneratorFunction";
  8465. }
  8466. }
  8467. genFun.prototype = Object.create(Gp);
  8468. return genFun;
  8469. };
  8470. // Within the body of any async function, `await x` is transformed to
  8471. // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  8472. // `hasOwn.call(value, "__await")` to determine if the yielded value is
  8473. // meant to be awaited.
  8474. runtime.awrap = function(arg) {
  8475. return { __await: arg };
  8476. };
  8477. function AsyncIterator(generator) {
  8478. function invoke(method, arg, resolve, reject) {
  8479. var record = tryCatch(generator[method], generator, arg);
  8480. if (record.type === "throw") {
  8481. reject(record.arg);
  8482. } else {
  8483. var result = record.arg;
  8484. var value = result.value;
  8485. if (value &&
  8486. typeof value === "object" &&
  8487. hasOwn.call(value, "__await")) {
  8488. return Promise.resolve(value.__await).then(function(value) {
  8489. invoke("next", value, resolve, reject);
  8490. }, function(err) {
  8491. invoke("throw", err, resolve, reject);
  8492. });
  8493. }
  8494. return Promise.resolve(value).then(function(unwrapped) {
  8495. // When a yielded Promise is resolved, its final value becomes
  8496. // the .value of the Promise<{value,done}> result for the
  8497. // current iteration.
  8498. result.value = unwrapped;
  8499. resolve(result);
  8500. }, function(error) {
  8501. // If a rejected Promise was yielded, throw the rejection back
  8502. // into the async generator function so it can be handled there.
  8503. return invoke("throw", error, resolve, reject);
  8504. });
  8505. }
  8506. }
  8507. var previousPromise;
  8508. function enqueue(method, arg) {
  8509. function callInvokeWithMethodAndArg() {
  8510. return new Promise(function(resolve, reject) {
  8511. invoke(method, arg, resolve, reject);
  8512. });
  8513. }
  8514. return previousPromise =
  8515. // If enqueue has been called before, then we want to wait until
  8516. // all previous Promises have been resolved before calling invoke,
  8517. // so that results are always delivered in the correct order. If
  8518. // enqueue has not been called before, then it is important to
  8519. // call invoke immediately, without waiting on a callback to fire,
  8520. // so that the async generator function has the opportunity to do
  8521. // any necessary setup in a predictable way. This predictability
  8522. // is why the Promise constructor synchronously invokes its
  8523. // executor callback, and why async functions synchronously
  8524. // execute code before the first await. Since we implement simple
  8525. // async functions in terms of async generators, it is especially
  8526. // important to get this right, even though it requires care.
  8527. previousPromise ? previousPromise.then(
  8528. callInvokeWithMethodAndArg,
  8529. // Avoid propagating failures to Promises returned by later
  8530. // invocations of the iterator.
  8531. callInvokeWithMethodAndArg
  8532. ) : callInvokeWithMethodAndArg();
  8533. }
  8534. // Define the unified helper method that is used to implement .next,
  8535. // .throw, and .return (see defineIteratorMethods).
  8536. this._invoke = enqueue;
  8537. }
  8538. defineIteratorMethods(AsyncIterator.prototype);
  8539. AsyncIterator.prototype[asyncIteratorSymbol] = function () {
  8540. return this;
  8541. };
  8542. runtime.AsyncIterator = AsyncIterator;
  8543. // Note that simple async functions are implemented on top of
  8544. // AsyncIterator objects; they just return a Promise for the value of
  8545. // the final result produced by the iterator.
  8546. runtime.async = function(innerFn, outerFn, self, tryLocsList) {
  8547. var iter = new AsyncIterator(
  8548. wrap(innerFn, outerFn, self, tryLocsList)
  8549. );
  8550. return runtime.isGeneratorFunction(outerFn)
  8551. ? iter // If outerFn is a generator, return the full iterator.
  8552. : iter.next().then(function(result) {
  8553. return result.done ? result.value : iter.next();
  8554. });
  8555. };
  8556. function makeInvokeMethod(innerFn, self, context) {
  8557. var state = GenStateSuspendedStart;
  8558. return function invoke(method, arg) {
  8559. if (state === GenStateExecuting) {
  8560. throw new Error("Generator is already running");
  8561. }
  8562. if (state === GenStateCompleted) {
  8563. if (method === "throw") {
  8564. throw arg;
  8565. }
  8566. // Be forgiving, per 25.3.3.3.3 of the spec:
  8567. // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
  8568. return doneResult();
  8569. }
  8570. context.method = method;
  8571. context.arg = arg;
  8572. while (true) {
  8573. var delegate = context.delegate;
  8574. if (delegate) {
  8575. var delegateResult = maybeInvokeDelegate(delegate, context);
  8576. if (delegateResult) {
  8577. if (delegateResult === ContinueSentinel) continue;
  8578. return delegateResult;
  8579. }
  8580. }
  8581. if (context.method === "next") {
  8582. // Setting context._sent for legacy support of Babel's
  8583. // function.sent implementation.
  8584. context.sent = context._sent = context.arg;
  8585. } else if (context.method === "throw") {
  8586. if (state === GenStateSuspendedStart) {
  8587. state = GenStateCompleted;
  8588. throw context.arg;
  8589. }
  8590. context.dispatchException(context.arg);
  8591. } else if (context.method === "return") {
  8592. context.abrupt("return", context.arg);
  8593. }
  8594. state = GenStateExecuting;
  8595. var record = tryCatch(innerFn, self, context);
  8596. if (record.type === "normal") {
  8597. // If an exception is thrown from innerFn, we leave state ===
  8598. // GenStateExecuting and loop back for another invocation.
  8599. state = context.done
  8600. ? GenStateCompleted
  8601. : GenStateSuspendedYield;
  8602. if (record.arg === ContinueSentinel) {
  8603. continue;
  8604. }
  8605. return {
  8606. value: record.arg,
  8607. done: context.done
  8608. };
  8609. } else if (record.type === "throw") {
  8610. state = GenStateCompleted;
  8611. // Dispatch the exception by looping back around to the
  8612. // context.dispatchException(context.arg) call above.
  8613. context.method = "throw";
  8614. context.arg = record.arg;
  8615. }
  8616. }
  8617. };
  8618. }
  8619. // Call delegate.iterator[context.method](context.arg) and handle the
  8620. // result, either by returning a { value, done } result from the
  8621. // delegate iterator, or by modifying context.method and context.arg,
  8622. // setting context.delegate to null, and returning the ContinueSentinel.
  8623. function maybeInvokeDelegate(delegate, context) {
  8624. var method = delegate.iterator[context.method];
  8625. if (method === undefined) {
  8626. // A .throw or .return when the delegate iterator has no .throw
  8627. // method always terminates the yield* loop.
  8628. context.delegate = null;
  8629. if (context.method === "throw") {
  8630. if (delegate.iterator.return) {
  8631. // If the delegate iterator has a return method, give it a
  8632. // chance to clean up.
  8633. context.method = "return";
  8634. context.arg = undefined;
  8635. maybeInvokeDelegate(delegate, context);
  8636. if (context.method === "throw") {
  8637. // If maybeInvokeDelegate(context) changed context.method from
  8638. // "return" to "throw", let that override the TypeError below.
  8639. return ContinueSentinel;
  8640. }
  8641. }
  8642. context.method = "throw";
  8643. context.arg = new TypeError(
  8644. "The iterator does not provide a 'throw' method");
  8645. }
  8646. return ContinueSentinel;
  8647. }
  8648. var record = tryCatch(method, delegate.iterator, context.arg);
  8649. if (record.type === "throw") {
  8650. context.method = "throw";
  8651. context.arg = record.arg;
  8652. context.delegate = null;
  8653. return ContinueSentinel;
  8654. }
  8655. var info = record.arg;
  8656. if (! info) {
  8657. context.method = "throw";
  8658. context.arg = new TypeError("iterator result is not an object");
  8659. context.delegate = null;
  8660. return ContinueSentinel;
  8661. }
  8662. if (info.done) {
  8663. // Assign the result of the finished delegate to the temporary
  8664. // variable specified by delegate.resultName (see delegateYield).
  8665. context[delegate.resultName] = info.value;
  8666. // Resume execution at the desired location (see delegateYield).
  8667. context.next = delegate.nextLoc;
  8668. // If context.method was "throw" but the delegate handled the
  8669. // exception, let the outer generator proceed normally. If
  8670. // context.method was "next", forget context.arg since it has been
  8671. // "consumed" by the delegate iterator. If context.method was
  8672. // "return", allow the original .return call to continue in the
  8673. // outer generator.
  8674. if (context.method !== "return") {
  8675. context.method = "next";
  8676. context.arg = undefined;
  8677. }
  8678. } else {
  8679. // Re-yield the result returned by the delegate method.
  8680. return info;
  8681. }
  8682. // The delegate iterator is finished, so forget it and continue with
  8683. // the outer generator.
  8684. context.delegate = null;
  8685. return ContinueSentinel;
  8686. }
  8687. // Define Generator.prototype.{next,throw,return} in terms of the
  8688. // unified ._invoke helper method.
  8689. defineIteratorMethods(Gp);
  8690. Gp[toStringTagSymbol] = "Generator";
  8691. // A Generator should always return itself as the iterator object when the
  8692. // @@iterator function is called on it. Some browsers' implementations of the
  8693. // iterator prototype chain incorrectly implement this, causing the Generator
  8694. // object to not be returned from this call. This ensures that doesn't happen.
  8695. // See https://github.com/facebook/regenerator/issues/274 for more details.
  8696. Gp[iteratorSymbol] = function() {
  8697. return this;
  8698. };
  8699. Gp.toString = function() {
  8700. return "[object Generator]";
  8701. };
  8702. function pushTryEntry(locs) {
  8703. var entry = { tryLoc: locs[0] };
  8704. if (1 in locs) {
  8705. entry.catchLoc = locs[1];
  8706. }
  8707. if (2 in locs) {
  8708. entry.finallyLoc = locs[2];
  8709. entry.afterLoc = locs[3];
  8710. }
  8711. this.tryEntries.push(entry);
  8712. }
  8713. function resetTryEntry(entry) {
  8714. var record = entry.completion || {};
  8715. record.type = "normal";
  8716. delete record.arg;
  8717. entry.completion = record;
  8718. }
  8719. function Context(tryLocsList) {
  8720. // The root entry object (effectively a try statement without a catch
  8721. // or a finally block) gives us a place to store values thrown from
  8722. // locations where there is no enclosing try statement.
  8723. this.tryEntries = [{ tryLoc: "root" }];
  8724. tryLocsList.forEach(pushTryEntry, this);
  8725. this.reset(true);
  8726. }
  8727. runtime.keys = function(object) {
  8728. var keys = [];
  8729. for (var key in object) {
  8730. keys.push(key);
  8731. }
  8732. keys.reverse();
  8733. // Rather than returning an object with a next method, we keep
  8734. // things simple and return the next function itself.
  8735. return function next() {
  8736. while (keys.length) {
  8737. var key = keys.pop();
  8738. if (key in object) {
  8739. next.value = key;
  8740. next.done = false;
  8741. return next;
  8742. }
  8743. }
  8744. // To avoid creating an additional object, we just hang the .value
  8745. // and .done properties off the next function object itself. This
  8746. // also ensures that the minifier will not anonymize the function.
  8747. next.done = true;
  8748. return next;
  8749. };
  8750. };
  8751. function values(iterable) {
  8752. if (iterable) {
  8753. var iteratorMethod = iterable[iteratorSymbol];
  8754. if (iteratorMethod) {
  8755. return iteratorMethod.call(iterable);
  8756. }
  8757. if (typeof iterable.next === "function") {
  8758. return iterable;
  8759. }
  8760. if (!isNaN(iterable.length)) {
  8761. var i = -1, next = function next() {
  8762. while (++i < iterable.length) {
  8763. if (hasOwn.call(iterable, i)) {
  8764. next.value = iterable[i];
  8765. next.done = false;
  8766. return next;
  8767. }
  8768. }
  8769. next.value = undefined;
  8770. next.done = true;
  8771. return next;
  8772. };
  8773. return next.next = next;
  8774. }
  8775. }
  8776. // Return an iterator with no values.
  8777. return { next: doneResult };
  8778. }
  8779. runtime.values = values;
  8780. function doneResult() {
  8781. return { value: undefined, done: true };
  8782. }
  8783. Context.prototype = {
  8784. constructor: Context,
  8785. reset: function(skipTempReset) {
  8786. this.prev = 0;
  8787. this.next = 0;
  8788. // Resetting context._sent for legacy support of Babel's
  8789. // function.sent implementation.
  8790. this.sent = this._sent = undefined;
  8791. this.done = false;
  8792. this.delegate = null;
  8793. this.method = "next";
  8794. this.arg = undefined;
  8795. this.tryEntries.forEach(resetTryEntry);
  8796. if (!skipTempReset) {
  8797. for (var name in this) {
  8798. // Not sure about the optimal order of these conditions:
  8799. if (name.charAt(0) === "t" &&
  8800. hasOwn.call(this, name) &&
  8801. !isNaN(+name.slice(1))) {
  8802. this[name] = undefined;
  8803. }
  8804. }
  8805. }
  8806. },
  8807. stop: function() {
  8808. this.done = true;
  8809. var rootEntry = this.tryEntries[0];
  8810. var rootRecord = rootEntry.completion;
  8811. if (rootRecord.type === "throw") {
  8812. throw rootRecord.arg;
  8813. }
  8814. return this.rval;
  8815. },
  8816. dispatchException: function(exception) {
  8817. if (this.done) {
  8818. throw exception;
  8819. }
  8820. var context = this;
  8821. function handle(loc, caught) {
  8822. record.type = "throw";
  8823. record.arg = exception;
  8824. context.next = loc;
  8825. if (caught) {
  8826. // If the dispatched exception was caught by a catch block,
  8827. // then let that catch block handle the exception normally.
  8828. context.method = "next";
  8829. context.arg = undefined;
  8830. }
  8831. return !! caught;
  8832. }
  8833. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  8834. var entry = this.tryEntries[i];
  8835. var record = entry.completion;
  8836. if (entry.tryLoc === "root") {
  8837. // Exception thrown outside of any try block that could handle
  8838. // it, so set the completion value of the entire function to
  8839. // throw the exception.
  8840. return handle("end");
  8841. }
  8842. if (entry.tryLoc <= this.prev) {
  8843. var hasCatch = hasOwn.call(entry, "catchLoc");
  8844. var hasFinally = hasOwn.call(entry, "finallyLoc");
  8845. if (hasCatch && hasFinally) {
  8846. if (this.prev < entry.catchLoc) {
  8847. return handle(entry.catchLoc, true);
  8848. } else if (this.prev < entry.finallyLoc) {
  8849. return handle(entry.finallyLoc);
  8850. }
  8851. } else if (hasCatch) {
  8852. if (this.prev < entry.catchLoc) {
  8853. return handle(entry.catchLoc, true);
  8854. }
  8855. } else if (hasFinally) {
  8856. if (this.prev < entry.finallyLoc) {
  8857. return handle(entry.finallyLoc);
  8858. }
  8859. } else {
  8860. throw new Error("try statement without catch or finally");
  8861. }
  8862. }
  8863. }
  8864. },
  8865. abrupt: function(type, arg) {
  8866. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  8867. var entry = this.tryEntries[i];
  8868. if (entry.tryLoc <= this.prev &&
  8869. hasOwn.call(entry, "finallyLoc") &&
  8870. this.prev < entry.finallyLoc) {
  8871. var finallyEntry = entry;
  8872. break;
  8873. }
  8874. }
  8875. if (finallyEntry &&
  8876. (type === "break" ||
  8877. type === "continue") &&
  8878. finallyEntry.tryLoc <= arg &&
  8879. arg <= finallyEntry.finallyLoc) {
  8880. // Ignore the finally entry if control is not jumping to a
  8881. // location outside the try/catch block.
  8882. finallyEntry = null;
  8883. }
  8884. var record = finallyEntry ? finallyEntry.completion : {};
  8885. record.type = type;
  8886. record.arg = arg;
  8887. if (finallyEntry) {
  8888. this.method = "next";
  8889. this.next = finallyEntry.finallyLoc;
  8890. return ContinueSentinel;
  8891. }
  8892. return this.complete(record);
  8893. },
  8894. complete: function(record, afterLoc) {
  8895. if (record.type === "throw") {
  8896. throw record.arg;
  8897. }
  8898. if (record.type === "break" ||
  8899. record.type === "continue") {
  8900. this.next = record.arg;
  8901. } else if (record.type === "return") {
  8902. this.rval = this.arg = record.arg;
  8903. this.method = "return";
  8904. this.next = "end";
  8905. } else if (record.type === "normal" && afterLoc) {
  8906. this.next = afterLoc;
  8907. }
  8908. return ContinueSentinel;
  8909. },
  8910. finish: function(finallyLoc) {
  8911. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  8912. var entry = this.tryEntries[i];
  8913. if (entry.finallyLoc === finallyLoc) {
  8914. this.complete(entry.completion, entry.afterLoc);
  8915. resetTryEntry(entry);
  8916. return ContinueSentinel;
  8917. }
  8918. }
  8919. },
  8920. "catch": function(tryLoc) {
  8921. for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  8922. var entry = this.tryEntries[i];
  8923. if (entry.tryLoc === tryLoc) {
  8924. var record = entry.completion;
  8925. if (record.type === "throw") {
  8926. var thrown = record.arg;
  8927. resetTryEntry(entry);
  8928. }
  8929. return thrown;
  8930. }
  8931. }
  8932. // The context.catch method must only be called with a location
  8933. // argument that corresponds to a known catch block.
  8934. throw new Error("illegal catch attempt");
  8935. },
  8936. delegateYield: function(iterable, resultName, nextLoc) {
  8937. this.delegate = {
  8938. iterator: values(iterable),
  8939. resultName: resultName,
  8940. nextLoc: nextLoc
  8941. };
  8942. if (this.method === "next") {
  8943. // Deliberately forget the last sent value so that we don't
  8944. // accidentally pass it on to the delegate.
  8945. this.arg = undefined;
  8946. }
  8947. return ContinueSentinel;
  8948. }
  8949. };
  8950. })(
  8951. // In sloppy mode, unbound `this` refers to the global object, fallback to
  8952. // Function constructor if we're in global strict mode. That is sadly a form
  8953. // of indirect eval which violates Content Security Policy.
  8954. (function() {
  8955. return this || (typeof self === "object" && self);
  8956. })() || Function("return this")()
  8957. );
  8958. /***/ }),
  8959. /* 17 */
  8960. /*!***************************************************!*\
  8961. !*** D:/wxproject/项目模板/uniapp/common/computed.js ***!
  8962. \***************************************************/
  8963. /*! no static exports found */
  8964. /***/ (function(module, exports, __webpack_require__) {
  8965. "use strict";
  8966. var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 4));
  8967. var _decimal = _interopRequireDefault(__webpack_require__(/*! decimal.js */ 18));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}
  8968. var toNumber = function toNumber(num) {
  8969. return new _decimal.default(num).toNumber();
  8970. };
  8971. var plus = function plus() {var n1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;var n2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  8972. var number1 = new _decimal.default(n1);
  8973. var number2 = new _decimal.default(n2);
  8974. var result = number1.add(number2);
  8975. result = result.toFixed(2, _decimal.default.ROUND_DOWN);
  8976. return toNumber(result);
  8977. };
  8978. var minus = function minus() {var n1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;var n2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  8979. var number1 = new _decimal.default(n1);
  8980. var number2 = new _decimal.default(n2);
  8981. var result = number1.minus(number2);
  8982. result = result.toFixed(2, _decimal.default.ROUND_DOWN);
  8983. return toNumber(result);
  8984. };
  8985. var multiply = function multiply() {var n1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;var n2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  8986. var number1 = new _decimal.default(n1);
  8987. var number2 = new _decimal.default(n2);
  8988. var result = number1.mul(number2);
  8989. result = result.toFixed(2, _decimal.default.ROUND_DOWN);
  8990. return toNumber(result);
  8991. };
  8992. var divide = function divide() {var n1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;var n2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  8993. var number1 = new _decimal.default(n1);
  8994. var number2 = new _decimal.default(n2);
  8995. var result = number1.div(number2);
  8996. result = result.toFixed(2, _decimal.default.ROUND_DOWN);
  8997. return toNumber(result);
  8998. };
  8999. _vue.default.prototype.$plus = plus;
  9000. _vue.default.prototype.$minus = minus;
  9001. _vue.default.prototype.$multiply = multiply;
  9002. _vue.default.prototype.$divide = divide;
  9003. /***/ }),
  9004. /* 18 */
  9005. /*!*******************************************************************!*\
  9006. !*** D:/wxproject/项目模板/uniapp/node_modules/decimal.js/decimal.js ***!
  9007. \*******************************************************************/
  9008. /*! no static exports found */
  9009. /***/ (function(module, exports, __webpack_require__) {
  9010. var __WEBPACK_AMD_DEFINE_RESULT__;;(function (globalScope) {
  9011. 'use strict';
  9012. /*!
  9013. * decimal.js v10.4.1
  9014. * An arbitrary-precision Decimal type for JavaScript.
  9015. * https://github.com/MikeMcl/decimal.js
  9016. * Copyright (c) 2022 Michael Mclaughlin <M8ch88l@gmail.com>
  9017. * MIT Licence
  9018. */
  9019. // ----------------------------------- EDITABLE DEFAULTS ------------------------------------ //
  9020. // The maximum exponent magnitude.
  9021. // The limit on the value of `toExpNeg`, `toExpPos`, `minE` and `maxE`.
  9022. var EXP_LIMIT = 9e15, // 0 to 9e15
  9023. // The limit on the value of `precision`, and on the value of the first argument to
  9024. // `toDecimalPlaces`, `toExponential`, `toFixed`, `toPrecision` and `toSignificantDigits`.
  9025. MAX_DIGITS = 1e9, // 0 to 1e9
  9026. // Base conversion alphabet.
  9027. NUMERALS = '0123456789abcdef',
  9028. // The natural logarithm of 10 (1025 digits).
  9029. LN10 = '2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058',
  9030. // Pi (1025 digits).
  9031. PI = '3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789',
  9032. // The initial configuration properties of the Decimal constructor.
  9033. DEFAULTS = {
  9034. // These values must be integers within the stated ranges (inclusive).
  9035. // Most of these values can be changed at run-time using the `Decimal.config` method.
  9036. // The maximum number of significant digits of the result of a calculation or base conversion.
  9037. // E.g. `Decimal.config({ precision: 20 });`
  9038. precision: 20, // 1 to MAX_DIGITS
  9039. // The rounding mode used when rounding to `precision`.
  9040. //
  9041. // ROUND_UP 0 Away from zero.
  9042. // ROUND_DOWN 1 Towards zero.
  9043. // ROUND_CEIL 2 Towards +Infinity.
  9044. // ROUND_FLOOR 3 Towards -Infinity.
  9045. // ROUND_HALF_UP 4 Towards nearest neighbour. If equidistant, up.
  9046. // ROUND_HALF_DOWN 5 Towards nearest neighbour. If equidistant, down.
  9047. // ROUND_HALF_EVEN 6 Towards nearest neighbour. If equidistant, towards even neighbour.
  9048. // ROUND_HALF_CEIL 7 Towards nearest neighbour. If equidistant, towards +Infinity.
  9049. // ROUND_HALF_FLOOR 8 Towards nearest neighbour. If equidistant, towards -Infinity.
  9050. //
  9051. // E.g.
  9052. // `Decimal.rounding = 4;`
  9053. // `Decimal.rounding = Decimal.ROUND_HALF_UP;`
  9054. rounding: 4, // 0 to 8
  9055. // The modulo mode used when calculating the modulus: a mod n.
  9056. // The quotient (q = a / n) is calculated according to the corresponding rounding mode.
  9057. // The remainder (r) is calculated as: r = a - n * q.
  9058. //
  9059. // UP 0 The remainder is positive if the dividend is negative, else is negative.
  9060. // DOWN 1 The remainder has the same sign as the dividend (JavaScript %).
  9061. // FLOOR 3 The remainder has the same sign as the divisor (Python %).
  9062. // HALF_EVEN 6 The IEEE 754 remainder function.
  9063. // EUCLID 9 Euclidian division. q = sign(n) * floor(a / abs(n)). Always positive.
  9064. //
  9065. // Truncated division (1), floored division (3), the IEEE 754 remainder (6), and Euclidian
  9066. // division (9) are commonly used for the modulus operation. The other rounding modes can also
  9067. // be used, but they may not give useful results.
  9068. modulo: 1, // 0 to 9
  9069. // The exponent value at and beneath which `toString` returns exponential notation.
  9070. // JavaScript numbers: -7
  9071. toExpNeg: -7, // 0 to -EXP_LIMIT
  9072. // The exponent value at and above which `toString` returns exponential notation.
  9073. // JavaScript numbers: 21
  9074. toExpPos: 21, // 0 to EXP_LIMIT
  9075. // The minimum exponent value, beneath which underflow to zero occurs.
  9076. // JavaScript numbers: -324 (5e-324)
  9077. minE: -EXP_LIMIT, // -1 to -EXP_LIMIT
  9078. // The maximum exponent value, above which overflow to Infinity occurs.
  9079. // JavaScript numbers: 308 (1.7976931348623157e+308)
  9080. maxE: EXP_LIMIT, // 1 to EXP_LIMIT
  9081. // Whether to use cryptographically-secure random number generation, if available.
  9082. crypto: false // true/false
  9083. },
  9084. // ----------------------------------- END OF EDITABLE DEFAULTS ------------------------------- //
  9085. Decimal,inexact,noConflict,quadrant,
  9086. external = true,
  9087. decimalError = '[DecimalError] ',
  9088. invalidArgument = decimalError + 'Invalid argument: ',
  9089. precisionLimitExceeded = decimalError + 'Precision limit exceeded',
  9090. cryptoUnavailable = decimalError + 'crypto unavailable',
  9091. tag = '[object Decimal]',
  9092. mathfloor = Math.floor,
  9093. mathpow = Math.pow,
  9094. isBinary = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,
  9095. isHex = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,
  9096. isOctal = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,
  9097. isDecimal = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,
  9098. BASE = 1e7,
  9099. LOG_BASE = 7,
  9100. MAX_SAFE_INTEGER = 9007199254740991,
  9101. LN10_PRECISION = LN10.length - 1,
  9102. PI_PRECISION = PI.length - 1,
  9103. // Decimal.prototype object
  9104. P = { toStringTag: tag };
  9105. // Decimal prototype methods
  9106. /*
  9107. * absoluteValue abs
  9108. * ceil
  9109. * clampedTo clamp
  9110. * comparedTo cmp
  9111. * cosine cos
  9112. * cubeRoot cbrt
  9113. * decimalPlaces dp
  9114. * dividedBy div
  9115. * dividedToIntegerBy divToInt
  9116. * equals eq
  9117. * floor
  9118. * greaterThan gt
  9119. * greaterThanOrEqualTo gte
  9120. * hyperbolicCosine cosh
  9121. * hyperbolicSine sinh
  9122. * hyperbolicTangent tanh
  9123. * inverseCosine acos
  9124. * inverseHyperbolicCosine acosh
  9125. * inverseHyperbolicSine asinh
  9126. * inverseHyperbolicTangent atanh
  9127. * inverseSine asin
  9128. * inverseTangent atan
  9129. * isFinite
  9130. * isInteger isInt
  9131. * isNaN
  9132. * isNegative isNeg
  9133. * isPositive isPos
  9134. * isZero
  9135. * lessThan lt
  9136. * lessThanOrEqualTo lte
  9137. * logarithm log
  9138. * [maximum] [max]
  9139. * [minimum] [min]
  9140. * minus sub
  9141. * modulo mod
  9142. * naturalExponential exp
  9143. * naturalLogarithm ln
  9144. * negated neg
  9145. * plus add
  9146. * precision sd
  9147. * round
  9148. * sine sin
  9149. * squareRoot sqrt
  9150. * tangent tan
  9151. * times mul
  9152. * toBinary
  9153. * toDecimalPlaces toDP
  9154. * toExponential
  9155. * toFixed
  9156. * toFraction
  9157. * toHexadecimal toHex
  9158. * toNearest
  9159. * toNumber
  9160. * toOctal
  9161. * toPower pow
  9162. * toPrecision
  9163. * toSignificantDigits toSD
  9164. * toString
  9165. * truncated trunc
  9166. * valueOf toJSON
  9167. */
  9168. /*
  9169. * Return a new Decimal whose value is the absolute value of this Decimal.
  9170. *
  9171. */
  9172. P.absoluteValue = P.abs = function () {
  9173. var x = new this.constructor(this);
  9174. if (x.s < 0) x.s = 1;
  9175. return finalise(x);
  9176. };
  9177. /*
  9178. * Return a new Decimal whose value is the value of this Decimal rounded to a whole number in the
  9179. * direction of positive Infinity.
  9180. *
  9181. */
  9182. P.ceil = function () {
  9183. return finalise(new this.constructor(this), this.e + 1, 2);
  9184. };
  9185. /*
  9186. * Return a new Decimal whose value is the value of this Decimal clamped to the range
  9187. * delineated by `min` and `max`.
  9188. *
  9189. * min {number|string|Decimal}
  9190. * max {number|string|Decimal}
  9191. *
  9192. */
  9193. P.clampedTo = P.clamp = function (min, max) {
  9194. var k,
  9195. x = this,
  9196. Ctor = x.constructor;
  9197. min = new Ctor(min);
  9198. max = new Ctor(max);
  9199. if (!min.s || !max.s) return new Ctor(NaN);
  9200. if (min.gt(max)) throw Error(invalidArgument + max);
  9201. k = x.cmp(min);
  9202. return k < 0 ? min : x.cmp(max) > 0 ? max : new Ctor(x);
  9203. };
  9204. /*
  9205. * Return
  9206. * 1 if the value of this Decimal is greater than the value of `y`,
  9207. * -1 if the value of this Decimal is less than the value of `y`,
  9208. * 0 if they have the same value,
  9209. * NaN if the value of either Decimal is NaN.
  9210. *
  9211. */
  9212. P.comparedTo = P.cmp = function (y) {
  9213. var i,j,xdL,ydL,
  9214. x = this,
  9215. xd = x.d,
  9216. yd = (y = new x.constructor(y)).d,
  9217. xs = x.s,
  9218. ys = y.s;
  9219. // Either NaN or ±Infinity?
  9220. if (!xd || !yd) {
  9221. return !xs || !ys ? NaN : xs !== ys ? xs : xd === yd ? 0 : !xd ^ xs < 0 ? 1 : -1;
  9222. }
  9223. // Either zero?
  9224. if (!xd[0] || !yd[0]) return xd[0] ? xs : yd[0] ? -ys : 0;
  9225. // Signs differ?
  9226. if (xs !== ys) return xs;
  9227. // Compare exponents.
  9228. if (x.e !== y.e) return x.e > y.e ^ xs < 0 ? 1 : -1;
  9229. xdL = xd.length;
  9230. ydL = yd.length;
  9231. // Compare digit by digit.
  9232. for (i = 0, j = xdL < ydL ? xdL : ydL; i < j; ++i) {
  9233. if (xd[i] !== yd[i]) return xd[i] > yd[i] ^ xs < 0 ? 1 : -1;
  9234. }
  9235. // Compare lengths.
  9236. return xdL === ydL ? 0 : xdL > ydL ^ xs < 0 ? 1 : -1;
  9237. };
  9238. /*
  9239. * Return a new Decimal whose value is the cosine of the value in radians of this Decimal.
  9240. *
  9241. * Domain: [-Infinity, Infinity]
  9242. * Range: [-1, 1]
  9243. *
  9244. * cos(0) = 1
  9245. * cos(-0) = 1
  9246. * cos(Infinity) = NaN
  9247. * cos(-Infinity) = NaN
  9248. * cos(NaN) = NaN
  9249. *
  9250. */
  9251. P.cosine = P.cos = function () {
  9252. var pr,rm,
  9253. x = this,
  9254. Ctor = x.constructor;
  9255. if (!x.d) return new Ctor(NaN);
  9256. // cos(0) = cos(-0) = 1
  9257. if (!x.d[0]) return new Ctor(1);
  9258. pr = Ctor.precision;
  9259. rm = Ctor.rounding;
  9260. Ctor.precision = pr + Math.max(x.e, x.sd()) + LOG_BASE;
  9261. Ctor.rounding = 1;
  9262. x = cosine(Ctor, toLessThanHalfPi(Ctor, x));
  9263. Ctor.precision = pr;
  9264. Ctor.rounding = rm;
  9265. return finalise(quadrant == 2 || quadrant == 3 ? x.neg() : x, pr, rm, true);
  9266. };
  9267. /*
  9268. *
  9269. * Return a new Decimal whose value is the cube root of the value of this Decimal, rounded to
  9270. * `precision` significant digits using rounding mode `rounding`.
  9271. *
  9272. * cbrt(0) = 0
  9273. * cbrt(-0) = -0
  9274. * cbrt(1) = 1
  9275. * cbrt(-1) = -1
  9276. * cbrt(N) = N
  9277. * cbrt(-I) = -I
  9278. * cbrt(I) = I
  9279. *
  9280. * Math.cbrt(x) = (x < 0 ? -Math.pow(-x, 1/3) : Math.pow(x, 1/3))
  9281. *
  9282. */
  9283. P.cubeRoot = P.cbrt = function () {
  9284. var e,m,n,r,rep,s,sd,t,t3,t3plusx,
  9285. x = this,
  9286. Ctor = x.constructor;
  9287. if (!x.isFinite() || x.isZero()) return new Ctor(x);
  9288. external = false;
  9289. // Initial estimate.
  9290. s = x.s * mathpow(x.s * x, 1 / 3);
  9291. // Math.cbrt underflow/overflow?
  9292. // Pass x to Math.pow as integer, then adjust the exponent of the result.
  9293. if (!s || Math.abs(s) == 1 / 0) {
  9294. n = digitsToString(x.d);
  9295. e = x.e;
  9296. // Adjust n exponent so it is a multiple of 3 away from x exponent.
  9297. if (s = (e - n.length + 1) % 3) n += s == 1 || s == -2 ? '0' : '00';
  9298. s = mathpow(n, 1 / 3);
  9299. // Rarely, e may be one less than the result exponent value.
  9300. e = mathfloor((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2));
  9301. if (s == 1 / 0) {
  9302. n = '5e' + e;
  9303. } else {
  9304. n = s.toExponential();
  9305. n = n.slice(0, n.indexOf('e') + 1) + e;
  9306. }
  9307. r = new Ctor(n);
  9308. r.s = x.s;
  9309. } else {
  9310. r = new Ctor(s.toString());
  9311. }
  9312. sd = (e = Ctor.precision) + 3;
  9313. // Halley's method.
  9314. // TODO? Compare Newton's method.
  9315. for (;;) {
  9316. t = r;
  9317. t3 = t.times(t).times(t);
  9318. t3plusx = t3.plus(x);
  9319. r = divide(t3plusx.plus(x).times(t), t3plusx.plus(t3), sd + 2, 1);
  9320. // TODO? Replace with for-loop and checkRoundingDigits.
  9321. if (digitsToString(t.d).slice(0, sd) === (n = digitsToString(r.d)).slice(0, sd)) {
  9322. n = n.slice(sd - 3, sd + 1);
  9323. // The 4th rounding digit may be in error by -1 so if the 4 rounding digits are 9999 or 4999
  9324. // , i.e. approaching a rounding boundary, continue the iteration.
  9325. if (n == '9999' || !rep && n == '4999') {
  9326. // On the first iteration only, check to see if rounding up gives the exact result as the
  9327. // nines may infinitely repeat.
  9328. if (!rep) {
  9329. finalise(t, e + 1, 0);
  9330. if (t.times(t).times(t).eq(x)) {
  9331. r = t;
  9332. break;
  9333. }
  9334. }
  9335. sd += 4;
  9336. rep = 1;
  9337. } else {
  9338. // If the rounding digits are null, 0{0,4} or 50{0,3}, check for an exact result.
  9339. // If not, then there are further digits and m will be truthy.
  9340. if (!+n || !+n.slice(1) && n.charAt(0) == '5') {
  9341. // Truncate to the first rounding digit.
  9342. finalise(r, e + 1, 1);
  9343. m = !r.times(r).times(r).eq(x);
  9344. }
  9345. break;
  9346. }
  9347. }
  9348. }
  9349. external = true;
  9350. return finalise(r, e, Ctor.rounding, m);
  9351. };
  9352. /*
  9353. * Return the number of decimal places of the value of this Decimal.
  9354. *
  9355. */
  9356. P.decimalPlaces = P.dp = function () {
  9357. var w,
  9358. d = this.d,
  9359. n = NaN;
  9360. if (d) {
  9361. w = d.length - 1;
  9362. n = (w - mathfloor(this.e / LOG_BASE)) * LOG_BASE;
  9363. // Subtract the number of trailing zeros of the last word.
  9364. w = d[w];
  9365. if (w) for (; w % 10 == 0; w /= 10) {n--;}
  9366. if (n < 0) n = 0;
  9367. }
  9368. return n;
  9369. };
  9370. /*
  9371. * n / 0 = I
  9372. * n / N = N
  9373. * n / I = 0
  9374. * 0 / n = 0
  9375. * 0 / 0 = N
  9376. * 0 / N = N
  9377. * 0 / I = 0
  9378. * N / n = N
  9379. * N / 0 = N
  9380. * N / N = N
  9381. * N / I = N
  9382. * I / n = I
  9383. * I / 0 = I
  9384. * I / N = N
  9385. * I / I = N
  9386. *
  9387. * Return a new Decimal whose value is the value of this Decimal divided by `y`, rounded to
  9388. * `precision` significant digits using rounding mode `rounding`.
  9389. *
  9390. */
  9391. P.dividedBy = P.div = function (y) {
  9392. return divide(this, new this.constructor(y));
  9393. };
  9394. /*
  9395. * Return a new Decimal whose value is the integer part of dividing the value of this Decimal
  9396. * by the value of `y`, rounded to `precision` significant digits using rounding mode `rounding`.
  9397. *
  9398. */
  9399. P.dividedToIntegerBy = P.divToInt = function (y) {
  9400. var x = this,
  9401. Ctor = x.constructor;
  9402. return finalise(divide(x, new Ctor(y), 0, 1, 1), Ctor.precision, Ctor.rounding);
  9403. };
  9404. /*
  9405. * Return true if the value of this Decimal is equal to the value of `y`, otherwise return false.
  9406. *
  9407. */
  9408. P.equals = P.eq = function (y) {
  9409. return this.cmp(y) === 0;
  9410. };
  9411. /*
  9412. * Return a new Decimal whose value is the value of this Decimal rounded to a whole number in the
  9413. * direction of negative Infinity.
  9414. *
  9415. */
  9416. P.floor = function () {
  9417. return finalise(new this.constructor(this), this.e + 1, 3);
  9418. };
  9419. /*
  9420. * Return true if the value of this Decimal is greater than the value of `y`, otherwise return
  9421. * false.
  9422. *
  9423. */
  9424. P.greaterThan = P.gt = function (y) {
  9425. return this.cmp(y) > 0;
  9426. };
  9427. /*
  9428. * Return true if the value of this Decimal is greater than or equal to the value of `y`,
  9429. * otherwise return false.
  9430. *
  9431. */
  9432. P.greaterThanOrEqualTo = P.gte = function (y) {
  9433. var k = this.cmp(y);
  9434. return k == 1 || k === 0;
  9435. };
  9436. /*
  9437. * Return a new Decimal whose value is the hyperbolic cosine of the value in radians of this
  9438. * Decimal.
  9439. *
  9440. * Domain: [-Infinity, Infinity]
  9441. * Range: [1, Infinity]
  9442. *
  9443. * cosh(x) = 1 + x^2/2! + x^4/4! + x^6/6! + ...
  9444. *
  9445. * cosh(0) = 1
  9446. * cosh(-0) = 1
  9447. * cosh(Infinity) = Infinity
  9448. * cosh(-Infinity) = Infinity
  9449. * cosh(NaN) = NaN
  9450. *
  9451. * x time taken (ms) result
  9452. * 1000 9 9.8503555700852349694e+433
  9453. * 10000 25 4.4034091128314607936e+4342
  9454. * 100000 171 1.4033316802130615897e+43429
  9455. * 1000000 3817 1.5166076984010437725e+434294
  9456. * 10000000 abandoned after 2 minute wait
  9457. *
  9458. * TODO? Compare performance of cosh(x) = 0.5 * (exp(x) + exp(-x))
  9459. *
  9460. */
  9461. P.hyperbolicCosine = P.cosh = function () {
  9462. var k,n,pr,rm,len,
  9463. x = this,
  9464. Ctor = x.constructor,
  9465. one = new Ctor(1);
  9466. if (!x.isFinite()) return new Ctor(x.s ? 1 / 0 : NaN);
  9467. if (x.isZero()) return one;
  9468. pr = Ctor.precision;
  9469. rm = Ctor.rounding;
  9470. Ctor.precision = pr + Math.max(x.e, x.sd()) + 4;
  9471. Ctor.rounding = 1;
  9472. len = x.d.length;
  9473. // Argument reduction: cos(4x) = 1 - 8cos^2(x) + 8cos^4(x) + 1
  9474. // i.e. cos(x) = 1 - cos^2(x/4)(8 - 8cos^2(x/4))
  9475. // Estimate the optimum number of times to use the argument reduction.
  9476. // TODO? Estimation reused from cosine() and may not be optimal here.
  9477. if (len < 32) {
  9478. k = Math.ceil(len / 3);
  9479. n = (1 / tinyPow(4, k)).toString();
  9480. } else {
  9481. k = 16;
  9482. n = '2.3283064365386962890625e-10';
  9483. }
  9484. x = taylorSeries(Ctor, 1, x.times(n), new Ctor(1), true);
  9485. // Reverse argument reduction
  9486. var cosh2_x,
  9487. i = k,
  9488. d8 = new Ctor(8);
  9489. for (; i--;) {
  9490. cosh2_x = x.times(x);
  9491. x = one.minus(cosh2_x.times(d8.minus(cosh2_x.times(d8))));
  9492. }
  9493. return finalise(x, Ctor.precision = pr, Ctor.rounding = rm, true);
  9494. };
  9495. /*
  9496. * Return a new Decimal whose value is the hyperbolic sine of the value in radians of this
  9497. * Decimal.
  9498. *
  9499. * Domain: [-Infinity, Infinity]
  9500. * Range: [-Infinity, Infinity]
  9501. *
  9502. * sinh(x) = x + x^3/3! + x^5/5! + x^7/7! + ...
  9503. *
  9504. * sinh(0) = 0
  9505. * sinh(-0) = -0
  9506. * sinh(Infinity) = Infinity
  9507. * sinh(-Infinity) = -Infinity
  9508. * sinh(NaN) = NaN
  9509. *
  9510. * x time taken (ms)
  9511. * 10 2 ms
  9512. * 100 5 ms
  9513. * 1000 14 ms
  9514. * 10000 82 ms
  9515. * 100000 886 ms 1.4033316802130615897e+43429
  9516. * 200000 2613 ms
  9517. * 300000 5407 ms
  9518. * 400000 8824 ms
  9519. * 500000 13026 ms 8.7080643612718084129e+217146
  9520. * 1000000 48543 ms
  9521. *
  9522. * TODO? Compare performance of sinh(x) = 0.5 * (exp(x) - exp(-x))
  9523. *
  9524. */
  9525. P.hyperbolicSine = P.sinh = function () {
  9526. var k,pr,rm,len,
  9527. x = this,
  9528. Ctor = x.constructor;
  9529. if (!x.isFinite() || x.isZero()) return new Ctor(x);
  9530. pr = Ctor.precision;
  9531. rm = Ctor.rounding;
  9532. Ctor.precision = pr + Math.max(x.e, x.sd()) + 4;
  9533. Ctor.rounding = 1;
  9534. len = x.d.length;
  9535. if (len < 3) {
  9536. x = taylorSeries(Ctor, 2, x, x, true);
  9537. } else {
  9538. // Alternative argument reduction: sinh(3x) = sinh(x)(3 + 4sinh^2(x))
  9539. // i.e. sinh(x) = sinh(x/3)(3 + 4sinh^2(x/3))
  9540. // 3 multiplications and 1 addition
  9541. // Argument reduction: sinh(5x) = sinh(x)(5 + sinh^2(x)(20 + 16sinh^2(x)))
  9542. // i.e. sinh(x) = sinh(x/5)(5 + sinh^2(x/5)(20 + 16sinh^2(x/5)))
  9543. // 4 multiplications and 2 additions
  9544. // Estimate the optimum number of times to use the argument reduction.
  9545. k = 1.4 * Math.sqrt(len);
  9546. k = k > 16 ? 16 : k | 0;
  9547. x = x.times(1 / tinyPow(5, k));
  9548. x = taylorSeries(Ctor, 2, x, x, true);
  9549. // Reverse argument reduction
  9550. var sinh2_x,
  9551. d5 = new Ctor(5),
  9552. d16 = new Ctor(16),
  9553. d20 = new Ctor(20);
  9554. for (; k--;) {
  9555. sinh2_x = x.times(x);
  9556. x = x.times(d5.plus(sinh2_x.times(d16.times(sinh2_x).plus(d20))));
  9557. }
  9558. }
  9559. Ctor.precision = pr;
  9560. Ctor.rounding = rm;
  9561. return finalise(x, pr, rm, true);
  9562. };
  9563. /*
  9564. * Return a new Decimal whose value is the hyperbolic tangent of the value in radians of this
  9565. * Decimal.
  9566. *
  9567. * Domain: [-Infinity, Infinity]
  9568. * Range: [-1, 1]
  9569. *
  9570. * tanh(x) = sinh(x) / cosh(x)
  9571. *
  9572. * tanh(0) = 0
  9573. * tanh(-0) = -0
  9574. * tanh(Infinity) = 1
  9575. * tanh(-Infinity) = -1
  9576. * tanh(NaN) = NaN
  9577. *
  9578. */
  9579. P.hyperbolicTangent = P.tanh = function () {
  9580. var pr,rm,
  9581. x = this,
  9582. Ctor = x.constructor;
  9583. if (!x.isFinite()) return new Ctor(x.s);
  9584. if (x.isZero()) return new Ctor(x);
  9585. pr = Ctor.precision;
  9586. rm = Ctor.rounding;
  9587. Ctor.precision = pr + 7;
  9588. Ctor.rounding = 1;
  9589. return divide(x.sinh(), x.cosh(), Ctor.precision = pr, Ctor.rounding = rm);
  9590. };
  9591. /*
  9592. * Return a new Decimal whose value is the arccosine (inverse cosine) in radians of the value of
  9593. * this Decimal.
  9594. *
  9595. * Domain: [-1, 1]
  9596. * Range: [0, pi]
  9597. *
  9598. * acos(x) = pi/2 - asin(x)
  9599. *
  9600. * acos(0) = pi/2
  9601. * acos(-0) = pi/2
  9602. * acos(1) = 0
  9603. * acos(-1) = pi
  9604. * acos(1/2) = pi/3
  9605. * acos(-1/2) = 2*pi/3
  9606. * acos(|x| > 1) = NaN
  9607. * acos(NaN) = NaN
  9608. *
  9609. */
  9610. P.inverseCosine = P.acos = function () {
  9611. var halfPi,
  9612. x = this,
  9613. Ctor = x.constructor,
  9614. k = x.abs().cmp(1),
  9615. pr = Ctor.precision,
  9616. rm = Ctor.rounding;
  9617. if (k !== -1) {
  9618. return k === 0
  9619. // |x| is 1
  9620. ? x.isNeg() ? getPi(Ctor, pr, rm) : new Ctor(0)
  9621. // |x| > 1 or x is NaN
  9622. : new Ctor(NaN);
  9623. }
  9624. if (x.isZero()) return getPi(Ctor, pr + 4, rm).times(0.5);
  9625. // TODO? Special case acos(0.5) = pi/3 and acos(-0.5) = 2*pi/3
  9626. Ctor.precision = pr + 6;
  9627. Ctor.rounding = 1;
  9628. x = x.asin();
  9629. halfPi = getPi(Ctor, pr + 4, rm).times(0.5);
  9630. Ctor.precision = pr;
  9631. Ctor.rounding = rm;
  9632. return halfPi.minus(x);
  9633. };
  9634. /*
  9635. * Return a new Decimal whose value is the inverse of the hyperbolic cosine in radians of the
  9636. * value of this Decimal.
  9637. *
  9638. * Domain: [1, Infinity]
  9639. * Range: [0, Infinity]
  9640. *
  9641. * acosh(x) = ln(x + sqrt(x^2 - 1))
  9642. *
  9643. * acosh(x < 1) = NaN
  9644. * acosh(NaN) = NaN
  9645. * acosh(Infinity) = Infinity
  9646. * acosh(-Infinity) = NaN
  9647. * acosh(0) = NaN
  9648. * acosh(-0) = NaN
  9649. * acosh(1) = 0
  9650. * acosh(-1) = NaN
  9651. *
  9652. */
  9653. P.inverseHyperbolicCosine = P.acosh = function () {
  9654. var pr,rm,
  9655. x = this,
  9656. Ctor = x.constructor;
  9657. if (x.lte(1)) return new Ctor(x.eq(1) ? 0 : NaN);
  9658. if (!x.isFinite()) return new Ctor(x);
  9659. pr = Ctor.precision;
  9660. rm = Ctor.rounding;
  9661. Ctor.precision = pr + Math.max(Math.abs(x.e), x.sd()) + 4;
  9662. Ctor.rounding = 1;
  9663. external = false;
  9664. x = x.times(x).minus(1).sqrt().plus(x);
  9665. external = true;
  9666. Ctor.precision = pr;
  9667. Ctor.rounding = rm;
  9668. return x.ln();
  9669. };
  9670. /*
  9671. * Return a new Decimal whose value is the inverse of the hyperbolic sine in radians of the value
  9672. * of this Decimal.
  9673. *
  9674. * Domain: [-Infinity, Infinity]
  9675. * Range: [-Infinity, Infinity]
  9676. *
  9677. * asinh(x) = ln(x + sqrt(x^2 + 1))
  9678. *
  9679. * asinh(NaN) = NaN
  9680. * asinh(Infinity) = Infinity
  9681. * asinh(-Infinity) = -Infinity
  9682. * asinh(0) = 0
  9683. * asinh(-0) = -0
  9684. *
  9685. */
  9686. P.inverseHyperbolicSine = P.asinh = function () {
  9687. var pr,rm,
  9688. x = this,
  9689. Ctor = x.constructor;
  9690. if (!x.isFinite() || x.isZero()) return new Ctor(x);
  9691. pr = Ctor.precision;
  9692. rm = Ctor.rounding;
  9693. Ctor.precision = pr + 2 * Math.max(Math.abs(x.e), x.sd()) + 6;
  9694. Ctor.rounding = 1;
  9695. external = false;
  9696. x = x.times(x).plus(1).sqrt().plus(x);
  9697. external = true;
  9698. Ctor.precision = pr;
  9699. Ctor.rounding = rm;
  9700. return x.ln();
  9701. };
  9702. /*
  9703. * Return a new Decimal whose value is the inverse of the hyperbolic tangent in radians of the
  9704. * value of this Decimal.
  9705. *
  9706. * Domain: [-1, 1]
  9707. * Range: [-Infinity, Infinity]
  9708. *
  9709. * atanh(x) = 0.5 * ln((1 + x) / (1 - x))
  9710. *
  9711. * atanh(|x| > 1) = NaN
  9712. * atanh(NaN) = NaN
  9713. * atanh(Infinity) = NaN
  9714. * atanh(-Infinity) = NaN
  9715. * atanh(0) = 0
  9716. * atanh(-0) = -0
  9717. * atanh(1) = Infinity
  9718. * atanh(-1) = -Infinity
  9719. *
  9720. */
  9721. P.inverseHyperbolicTangent = P.atanh = function () {
  9722. var pr,rm,wpr,xsd,
  9723. x = this,
  9724. Ctor = x.constructor;
  9725. if (!x.isFinite()) return new Ctor(NaN);
  9726. if (x.e >= 0) return new Ctor(x.abs().eq(1) ? x.s / 0 : x.isZero() ? x : NaN);
  9727. pr = Ctor.precision;
  9728. rm = Ctor.rounding;
  9729. xsd = x.sd();
  9730. if (Math.max(xsd, pr) < 2 * -x.e - 1) return finalise(new Ctor(x), pr, rm, true);
  9731. Ctor.precision = wpr = xsd - x.e;
  9732. x = divide(x.plus(1), new Ctor(1).minus(x), wpr + pr, 1);
  9733. Ctor.precision = pr + 4;
  9734. Ctor.rounding = 1;
  9735. x = x.ln();
  9736. Ctor.precision = pr;
  9737. Ctor.rounding = rm;
  9738. return x.times(0.5);
  9739. };
  9740. /*
  9741. * Return a new Decimal whose value is the arcsine (inverse sine) in radians of the value of this
  9742. * Decimal.
  9743. *
  9744. * Domain: [-Infinity, Infinity]
  9745. * Range: [-pi/2, pi/2]
  9746. *
  9747. * asin(x) = 2*atan(x/(1 + sqrt(1 - x^2)))
  9748. *
  9749. * asin(0) = 0
  9750. * asin(-0) = -0
  9751. * asin(1/2) = pi/6
  9752. * asin(-1/2) = -pi/6
  9753. * asin(1) = pi/2
  9754. * asin(-1) = -pi/2
  9755. * asin(|x| > 1) = NaN
  9756. * asin(NaN) = NaN
  9757. *
  9758. * TODO? Compare performance of Taylor series.
  9759. *
  9760. */
  9761. P.inverseSine = P.asin = function () {
  9762. var halfPi,k,
  9763. pr,rm,
  9764. x = this,
  9765. Ctor = x.constructor;
  9766. if (x.isZero()) return new Ctor(x);
  9767. k = x.abs().cmp(1);
  9768. pr = Ctor.precision;
  9769. rm = Ctor.rounding;
  9770. if (k !== -1) {
  9771. // |x| is 1
  9772. if (k === 0) {
  9773. halfPi = getPi(Ctor, pr + 4, rm).times(0.5);
  9774. halfPi.s = x.s;
  9775. return halfPi;
  9776. }
  9777. // |x| > 1 or x is NaN
  9778. return new Ctor(NaN);
  9779. }
  9780. // TODO? Special case asin(1/2) = pi/6 and asin(-1/2) = -pi/6
  9781. Ctor.precision = pr + 6;
  9782. Ctor.rounding = 1;
  9783. x = x.div(new Ctor(1).minus(x.times(x)).sqrt().plus(1)).atan();
  9784. Ctor.precision = pr;
  9785. Ctor.rounding = rm;
  9786. return x.times(2);
  9787. };
  9788. /*
  9789. * Return a new Decimal whose value is the arctangent (inverse tangent) in radians of the value
  9790. * of this Decimal.
  9791. *
  9792. * Domain: [-Infinity, Infinity]
  9793. * Range: [-pi/2, pi/2]
  9794. *
  9795. * atan(x) = x - x^3/3 + x^5/5 - x^7/7 + ...
  9796. *
  9797. * atan(0) = 0
  9798. * atan(-0) = -0
  9799. * atan(1) = pi/4
  9800. * atan(-1) = -pi/4
  9801. * atan(Infinity) = pi/2
  9802. * atan(-Infinity) = -pi/2
  9803. * atan(NaN) = NaN
  9804. *
  9805. */
  9806. P.inverseTangent = P.atan = function () {
  9807. var i,j,k,n,px,t,r,wpr,x2,
  9808. x = this,
  9809. Ctor = x.constructor,
  9810. pr = Ctor.precision,
  9811. rm = Ctor.rounding;
  9812. if (!x.isFinite()) {
  9813. if (!x.s) return new Ctor(NaN);
  9814. if (pr + 4 <= PI_PRECISION) {
  9815. r = getPi(Ctor, pr + 4, rm).times(0.5);
  9816. r.s = x.s;
  9817. return r;
  9818. }
  9819. } else if (x.isZero()) {
  9820. return new Ctor(x);
  9821. } else if (x.abs().eq(1) && pr + 4 <= PI_PRECISION) {
  9822. r = getPi(Ctor, pr + 4, rm).times(0.25);
  9823. r.s = x.s;
  9824. return r;
  9825. }
  9826. Ctor.precision = wpr = pr + 10;
  9827. Ctor.rounding = 1;
  9828. // TODO? if (x >= 1 && pr <= PI_PRECISION) atan(x) = halfPi * x.s - atan(1 / x);
  9829. // Argument reduction
  9830. // Ensure |x| < 0.42
  9831. // atan(x) = 2 * atan(x / (1 + sqrt(1 + x^2)))
  9832. k = Math.min(28, wpr / LOG_BASE + 2 | 0);
  9833. for (i = k; i; --i) {x = x.div(x.times(x).plus(1).sqrt().plus(1));}
  9834. external = false;
  9835. j = Math.ceil(wpr / LOG_BASE);
  9836. n = 1;
  9837. x2 = x.times(x);
  9838. r = new Ctor(x);
  9839. px = x;
  9840. // atan(x) = x - x^3/3 + x^5/5 - x^7/7 + ...
  9841. for (; i !== -1;) {
  9842. px = px.times(x2);
  9843. t = r.minus(px.div(n += 2));
  9844. px = px.times(x2);
  9845. r = t.plus(px.div(n += 2));
  9846. if (r.d[j] !== void 0) for (i = j; r.d[i] === t.d[i] && i--;) {;}
  9847. }
  9848. if (k) r = r.times(2 << k - 1);
  9849. external = true;
  9850. return finalise(r, Ctor.precision = pr, Ctor.rounding = rm, true);
  9851. };
  9852. /*
  9853. * Return true if the value of this Decimal is a finite number, otherwise return false.
  9854. *
  9855. */
  9856. P.isFinite = function () {
  9857. return !!this.d;
  9858. };
  9859. /*
  9860. * Return true if the value of this Decimal is an integer, otherwise return false.
  9861. *
  9862. */
  9863. P.isInteger = P.isInt = function () {
  9864. return !!this.d && mathfloor(this.e / LOG_BASE) > this.d.length - 2;
  9865. };
  9866. /*
  9867. * Return true if the value of this Decimal is NaN, otherwise return false.
  9868. *
  9869. */
  9870. P.isNaN = function () {
  9871. return !this.s;
  9872. };
  9873. /*
  9874. * Return true if the value of this Decimal is negative, otherwise return false.
  9875. *
  9876. */
  9877. P.isNegative = P.isNeg = function () {
  9878. return this.s < 0;
  9879. };
  9880. /*
  9881. * Return true if the value of this Decimal is positive, otherwise return false.
  9882. *
  9883. */
  9884. P.isPositive = P.isPos = function () {
  9885. return this.s > 0;
  9886. };
  9887. /*
  9888. * Return true if the value of this Decimal is 0 or -0, otherwise return false.
  9889. *
  9890. */
  9891. P.isZero = function () {
  9892. return !!this.d && this.d[0] === 0;
  9893. };
  9894. /*
  9895. * Return true if the value of this Decimal is less than `y`, otherwise return false.
  9896. *
  9897. */
  9898. P.lessThan = P.lt = function (y) {
  9899. return this.cmp(y) < 0;
  9900. };
  9901. /*
  9902. * Return true if the value of this Decimal is less than or equal to `y`, otherwise return false.
  9903. *
  9904. */
  9905. P.lessThanOrEqualTo = P.lte = function (y) {
  9906. return this.cmp(y) < 1;
  9907. };
  9908. /*
  9909. * Return the logarithm of the value of this Decimal to the specified base, rounded to `precision`
  9910. * significant digits using rounding mode `rounding`.
  9911. *
  9912. * If no base is specified, return log[10](arg).
  9913. *
  9914. * log[base](arg) = ln(arg) / ln(base)
  9915. *
  9916. * The result will always be correctly rounded if the base of the log is 10, and 'almost always'
  9917. * otherwise:
  9918. *
  9919. * Depending on the rounding mode, the result may be incorrectly rounded if the first fifteen
  9920. * rounding digits are [49]99999999999999 or [50]00000000000000. In that case, the maximum error
  9921. * between the result and the correctly rounded result will be one ulp (unit in the last place).
  9922. *
  9923. * log[-b](a) = NaN
  9924. * log[0](a) = NaN
  9925. * log[1](a) = NaN
  9926. * log[NaN](a) = NaN
  9927. * log[Infinity](a) = NaN
  9928. * log[b](0) = -Infinity
  9929. * log[b](-0) = -Infinity
  9930. * log[b](-a) = NaN
  9931. * log[b](1) = 0
  9932. * log[b](Infinity) = Infinity
  9933. * log[b](NaN) = NaN
  9934. *
  9935. * [base] {number|string|Decimal} The base of the logarithm.
  9936. *
  9937. */
  9938. P.logarithm = P.log = function (base) {
  9939. var isBase10,d,denominator,k,inf,num,sd,r,
  9940. arg = this,
  9941. Ctor = arg.constructor,
  9942. pr = Ctor.precision,
  9943. rm = Ctor.rounding,
  9944. guard = 5;
  9945. // Default base is 10.
  9946. if (base == null) {
  9947. base = new Ctor(10);
  9948. isBase10 = true;
  9949. } else {
  9950. base = new Ctor(base);
  9951. d = base.d;
  9952. // Return NaN if base is negative, or non-finite, or is 0 or 1.
  9953. if (base.s < 0 || !d || !d[0] || base.eq(1)) return new Ctor(NaN);
  9954. isBase10 = base.eq(10);
  9955. }
  9956. d = arg.d;
  9957. // Is arg negative, non-finite, 0 or 1?
  9958. if (arg.s < 0 || !d || !d[0] || arg.eq(1)) {
  9959. return new Ctor(d && !d[0] ? -1 / 0 : arg.s != 1 ? NaN : d ? 0 : 1 / 0);
  9960. }
  9961. // The result will have a non-terminating decimal expansion if base is 10 and arg is not an
  9962. // integer power of 10.
  9963. if (isBase10) {
  9964. if (d.length > 1) {
  9965. inf = true;
  9966. } else {
  9967. for (k = d[0]; k % 10 === 0;) {k /= 10;}
  9968. inf = k !== 1;
  9969. }
  9970. }
  9971. external = false;
  9972. sd = pr + guard;
  9973. num = naturalLogarithm(arg, sd);
  9974. denominator = isBase10 ? getLn10(Ctor, sd + 10) : naturalLogarithm(base, sd);
  9975. // The result will have 5 rounding digits.
  9976. r = divide(num, denominator, sd, 1);
  9977. // If at a rounding boundary, i.e. the result's rounding digits are [49]9999 or [50]0000,
  9978. // calculate 10 further digits.
  9979. //
  9980. // If the result is known to have an infinite decimal expansion, repeat this until it is clear
  9981. // that the result is above or below the boundary. Otherwise, if after calculating the 10
  9982. // further digits, the last 14 are nines, round up and assume the result is exact.
  9983. // Also assume the result is exact if the last 14 are zero.
  9984. //
  9985. // Example of a result that will be incorrectly rounded:
  9986. // log[1048576](4503599627370502) = 2.60000000000000009610279511444746...
  9987. // The above result correctly rounded using ROUND_CEIL to 1 decimal place should be 2.7, but it
  9988. // will be given as 2.6 as there are 15 zeros immediately after the requested decimal place, so
  9989. // the exact result would be assumed to be 2.6, which rounded using ROUND_CEIL to 1 decimal
  9990. // place is still 2.6.
  9991. if (checkRoundingDigits(r.d, k = pr, rm)) {
  9992. do {
  9993. sd += 10;
  9994. num = naturalLogarithm(arg, sd);
  9995. denominator = isBase10 ? getLn10(Ctor, sd + 10) : naturalLogarithm(base, sd);
  9996. r = divide(num, denominator, sd, 1);
  9997. if (!inf) {
  9998. // Check for 14 nines from the 2nd rounding digit, as the first may be 4.
  9999. if (+digitsToString(r.d).slice(k + 1, k + 15) + 1 == 1e14) {
  10000. r = finalise(r, pr + 1, 0);
  10001. }
  10002. break;
  10003. }
  10004. } while (checkRoundingDigits(r.d, k += 10, rm));
  10005. }
  10006. external = true;
  10007. return finalise(r, pr, rm);
  10008. };
  10009. /*
  10010. * Return a new Decimal whose value is the maximum of the arguments and the value of this Decimal.
  10011. *
  10012. * arguments {number|string|Decimal}
  10013. *
  10014. P.max = function () {
  10015. Array.prototype.push.call(arguments, this);
  10016. return maxOrMin(this.constructor, arguments, 'lt');
  10017. };
  10018. */
  10019. /*
  10020. * Return a new Decimal whose value is the minimum of the arguments and the value of this Decimal.
  10021. *
  10022. * arguments {number|string|Decimal}
  10023. *
  10024. P.min = function () {
  10025. Array.prototype.push.call(arguments, this);
  10026. return maxOrMin(this.constructor, arguments, 'gt');
  10027. };
  10028. */
  10029. /*
  10030. * n - 0 = n
  10031. * n - N = N
  10032. * n - I = -I
  10033. * 0 - n = -n
  10034. * 0 - 0 = 0
  10035. * 0 - N = N
  10036. * 0 - I = -I
  10037. * N - n = N
  10038. * N - 0 = N
  10039. * N - N = N
  10040. * N - I = N
  10041. * I - n = I
  10042. * I - 0 = I
  10043. * I - N = N
  10044. * I - I = N
  10045. *
  10046. * Return a new Decimal whose value is the value of this Decimal minus `y`, rounded to `precision`
  10047. * significant digits using rounding mode `rounding`.
  10048. *
  10049. */
  10050. P.minus = P.sub = function (y) {
  10051. var d,e,i,j,k,len,pr,rm,xd,xe,xLTy,yd,
  10052. x = this,
  10053. Ctor = x.constructor;
  10054. y = new Ctor(y);
  10055. // If either is not finite...
  10056. if (!x.d || !y.d) {
  10057. // Return NaN if either is NaN.
  10058. if (!x.s || !y.s) y = new Ctor(NaN);
  10059. // Return y negated if x is finite and y is ±Infinity.
  10060. else if (x.d) y.s = -y.s;
  10061. // Return x if y is finite and x is ±Infinity.
  10062. // Return x if both are ±Infinity with different signs.
  10063. // Return NaN if both are ±Infinity with the same sign.
  10064. else y = new Ctor(y.d || x.s !== y.s ? x : NaN);
  10065. return y;
  10066. }
  10067. // If signs differ...
  10068. if (x.s != y.s) {
  10069. y.s = -y.s;
  10070. return x.plus(y);
  10071. }
  10072. xd = x.d;
  10073. yd = y.d;
  10074. pr = Ctor.precision;
  10075. rm = Ctor.rounding;
  10076. // If either is zero...
  10077. if (!xd[0] || !yd[0]) {
  10078. // Return y negated if x is zero and y is non-zero.
  10079. if (yd[0]) y.s = -y.s;
  10080. // Return x if y is zero and x is non-zero.
  10081. else if (xd[0]) y = new Ctor(x);
  10082. // Return zero if both are zero.
  10083. // From IEEE 754 (2008) 6.3: 0 - 0 = -0 - -0 = -0 when rounding to -Infinity.
  10084. else return new Ctor(rm === 3 ? -0 : 0);
  10085. return external ? finalise(y, pr, rm) : y;
  10086. }
  10087. // x and y are finite, non-zero numbers with the same sign.
  10088. // Calculate base 1e7 exponents.
  10089. e = mathfloor(y.e / LOG_BASE);
  10090. xe = mathfloor(x.e / LOG_BASE);
  10091. xd = xd.slice();
  10092. k = xe - e;
  10093. // If base 1e7 exponents differ...
  10094. if (k) {
  10095. xLTy = k < 0;
  10096. if (xLTy) {
  10097. d = xd;
  10098. k = -k;
  10099. len = yd.length;
  10100. } else {
  10101. d = yd;
  10102. e = xe;
  10103. len = xd.length;
  10104. }
  10105. // Numbers with massively different exponents would result in a very high number of
  10106. // zeros needing to be prepended, but this can be avoided while still ensuring correct
  10107. // rounding by limiting the number of zeros to `Math.ceil(pr / LOG_BASE) + 2`.
  10108. i = Math.max(Math.ceil(pr / LOG_BASE), len) + 2;
  10109. if (k > i) {
  10110. k = i;
  10111. d.length = 1;
  10112. }
  10113. // Prepend zeros to equalise exponents.
  10114. d.reverse();
  10115. for (i = k; i--;) {d.push(0);}
  10116. d.reverse();
  10117. // Base 1e7 exponents equal.
  10118. } else {
  10119. // Check digits to determine which is the bigger number.
  10120. i = xd.length;
  10121. len = yd.length;
  10122. xLTy = i < len;
  10123. if (xLTy) len = i;
  10124. for (i = 0; i < len; i++) {
  10125. if (xd[i] != yd[i]) {
  10126. xLTy = xd[i] < yd[i];
  10127. break;
  10128. }
  10129. }
  10130. k = 0;
  10131. }
  10132. if (xLTy) {
  10133. d = xd;
  10134. xd = yd;
  10135. yd = d;
  10136. y.s = -y.s;
  10137. }
  10138. len = xd.length;
  10139. // Append zeros to `xd` if shorter.
  10140. // Don't add zeros to `yd` if shorter as subtraction only needs to start at `yd` length.
  10141. for (i = yd.length - len; i > 0; --i) {xd[len++] = 0;}
  10142. // Subtract yd from xd.
  10143. for (i = yd.length; i > k;) {
  10144. if (xd[--i] < yd[i]) {
  10145. for (j = i; j && xd[--j] === 0;) {xd[j] = BASE - 1;}
  10146. --xd[j];
  10147. xd[i] += BASE;
  10148. }
  10149. xd[i] -= yd[i];
  10150. }
  10151. // Remove trailing zeros.
  10152. for (; xd[--len] === 0;) {xd.pop();}
  10153. // Remove leading zeros and adjust exponent accordingly.
  10154. for (; xd[0] === 0; xd.shift()) {--e;}
  10155. // Zero?
  10156. if (!xd[0]) return new Ctor(rm === 3 ? -0 : 0);
  10157. y.d = xd;
  10158. y.e = getBase10Exponent(xd, e);
  10159. return external ? finalise(y, pr, rm) : y;
  10160. };
  10161. /*
  10162. * n % 0 = N
  10163. * n % N = N
  10164. * n % I = n
  10165. * 0 % n = 0
  10166. * -0 % n = -0
  10167. * 0 % 0 = N
  10168. * 0 % N = N
  10169. * 0 % I = 0
  10170. * N % n = N
  10171. * N % 0 = N
  10172. * N % N = N
  10173. * N % I = N
  10174. * I % n = N
  10175. * I % 0 = N
  10176. * I % N = N
  10177. * I % I = N
  10178. *
  10179. * Return a new Decimal whose value is the value of this Decimal modulo `y`, rounded to
  10180. * `precision` significant digits using rounding mode `rounding`.
  10181. *
  10182. * The result depends on the modulo mode.
  10183. *
  10184. */
  10185. P.modulo = P.mod = function (y) {
  10186. var q,
  10187. x = this,
  10188. Ctor = x.constructor;
  10189. y = new Ctor(y);
  10190. // Return NaN if x is ±Infinity or NaN, or y is NaN or ±0.
  10191. if (!x.d || !y.s || y.d && !y.d[0]) return new Ctor(NaN);
  10192. // Return x if y is ±Infinity or x is ±0.
  10193. if (!y.d || x.d && !x.d[0]) {
  10194. return finalise(new Ctor(x), Ctor.precision, Ctor.rounding);
  10195. }
  10196. // Prevent rounding of intermediate calculations.
  10197. external = false;
  10198. if (Ctor.modulo == 9) {
  10199. // Euclidian division: q = sign(y) * floor(x / abs(y))
  10200. // result = x - q * y where 0 <= result < abs(y)
  10201. q = divide(x, y.abs(), 0, 3, 1);
  10202. q.s *= y.s;
  10203. } else {
  10204. q = divide(x, y, 0, Ctor.modulo, 1);
  10205. }
  10206. q = q.times(y);
  10207. external = true;
  10208. return x.minus(q);
  10209. };
  10210. /*
  10211. * Return a new Decimal whose value is the natural exponential of the value of this Decimal,
  10212. * i.e. the base e raised to the power the value of this Decimal, rounded to `precision`
  10213. * significant digits using rounding mode `rounding`.
  10214. *
  10215. */
  10216. P.naturalExponential = P.exp = function () {
  10217. return naturalExponential(this);
  10218. };
  10219. /*
  10220. * Return a new Decimal whose value is the natural logarithm of the value of this Decimal,
  10221. * rounded to `precision` significant digits using rounding mode `rounding`.
  10222. *
  10223. */
  10224. P.naturalLogarithm = P.ln = function () {
  10225. return naturalLogarithm(this);
  10226. };
  10227. /*
  10228. * Return a new Decimal whose value is the value of this Decimal negated, i.e. as if multiplied by
  10229. * -1.
  10230. *
  10231. */
  10232. P.negated = P.neg = function () {
  10233. var x = new this.constructor(this);
  10234. x.s = -x.s;
  10235. return finalise(x);
  10236. };
  10237. /*
  10238. * n + 0 = n
  10239. * n + N = N
  10240. * n + I = I
  10241. * 0 + n = n
  10242. * 0 + 0 = 0
  10243. * 0 + N = N
  10244. * 0 + I = I
  10245. * N + n = N
  10246. * N + 0 = N
  10247. * N + N = N
  10248. * N + I = N
  10249. * I + n = I
  10250. * I + 0 = I
  10251. * I + N = N
  10252. * I + I = I
  10253. *
  10254. * Return a new Decimal whose value is the value of this Decimal plus `y`, rounded to `precision`
  10255. * significant digits using rounding mode `rounding`.
  10256. *
  10257. */
  10258. P.plus = P.add = function (y) {
  10259. var carry,d,e,i,k,len,pr,rm,xd,yd,
  10260. x = this,
  10261. Ctor = x.constructor;
  10262. y = new Ctor(y);
  10263. // If either is not finite...
  10264. if (!x.d || !y.d) {
  10265. // Return NaN if either is NaN.
  10266. if (!x.s || !y.s) y = new Ctor(NaN);
  10267. // Return x if y is finite and x is ±Infinity.
  10268. // Return x if both are ±Infinity with the same sign.
  10269. // Return NaN if both are ±Infinity with different signs.
  10270. // Return y if x is finite and y is ±Infinity.
  10271. else if (!x.d) y = new Ctor(y.d || x.s === y.s ? x : NaN);
  10272. return y;
  10273. }
  10274. // If signs differ...
  10275. if (x.s != y.s) {
  10276. y.s = -y.s;
  10277. return x.minus(y);
  10278. }
  10279. xd = x.d;
  10280. yd = y.d;
  10281. pr = Ctor.precision;
  10282. rm = Ctor.rounding;
  10283. // If either is zero...
  10284. if (!xd[0] || !yd[0]) {
  10285. // Return x if y is zero.
  10286. // Return y if y is non-zero.
  10287. if (!yd[0]) y = new Ctor(x);
  10288. return external ? finalise(y, pr, rm) : y;
  10289. }
  10290. // x and y are finite, non-zero numbers with the same sign.
  10291. // Calculate base 1e7 exponents.
  10292. k = mathfloor(x.e / LOG_BASE);
  10293. e = mathfloor(y.e / LOG_BASE);
  10294. xd = xd.slice();
  10295. i = k - e;
  10296. // If base 1e7 exponents differ...
  10297. if (i) {
  10298. if (i < 0) {
  10299. d = xd;
  10300. i = -i;
  10301. len = yd.length;
  10302. } else {
  10303. d = yd;
  10304. e = k;
  10305. len = xd.length;
  10306. }
  10307. // Limit number of zeros prepended to max(ceil(pr / LOG_BASE), len) + 1.
  10308. k = Math.ceil(pr / LOG_BASE);
  10309. len = k > len ? k + 1 : len + 1;
  10310. if (i > len) {
  10311. i = len;
  10312. d.length = 1;
  10313. }
  10314. // Prepend zeros to equalise exponents. Note: Faster to use reverse then do unshifts.
  10315. d.reverse();
  10316. for (; i--;) {d.push(0);}
  10317. d.reverse();
  10318. }
  10319. len = xd.length;
  10320. i = yd.length;
  10321. // If yd is longer than xd, swap xd and yd so xd points to the longer array.
  10322. if (len - i < 0) {
  10323. i = len;
  10324. d = yd;
  10325. yd = xd;
  10326. xd = d;
  10327. }
  10328. // Only start adding at yd.length - 1 as the further digits of xd can be left as they are.
  10329. for (carry = 0; i;) {
  10330. carry = (xd[--i] = xd[i] + yd[i] + carry) / BASE | 0;
  10331. xd[i] %= BASE;
  10332. }
  10333. if (carry) {
  10334. xd.unshift(carry);
  10335. ++e;
  10336. }
  10337. // Remove trailing zeros.
  10338. // No need to check for zero, as +x + +y != 0 && -x + -y != 0
  10339. for (len = xd.length; xd[--len] == 0;) {xd.pop();}
  10340. y.d = xd;
  10341. y.e = getBase10Exponent(xd, e);
  10342. return external ? finalise(y, pr, rm) : y;
  10343. };
  10344. /*
  10345. * Return the number of significant digits of the value of this Decimal.
  10346. *
  10347. * [z] {boolean|number} Whether to count integer-part trailing zeros: true, false, 1 or 0.
  10348. *
  10349. */
  10350. P.precision = P.sd = function (z) {
  10351. var k,
  10352. x = this;
  10353. if (z !== void 0 && z !== !!z && z !== 1 && z !== 0) throw Error(invalidArgument + z);
  10354. if (x.d) {
  10355. k = getPrecision(x.d);
  10356. if (z && x.e + 1 > k) k = x.e + 1;
  10357. } else {
  10358. k = NaN;
  10359. }
  10360. return k;
  10361. };
  10362. /*
  10363. * Return a new Decimal whose value is the value of this Decimal rounded to a whole number using
  10364. * rounding mode `rounding`.
  10365. *
  10366. */
  10367. P.round = function () {
  10368. var x = this,
  10369. Ctor = x.constructor;
  10370. return finalise(new Ctor(x), x.e + 1, Ctor.rounding);
  10371. };
  10372. /*
  10373. * Return a new Decimal whose value is the sine of the value in radians of this Decimal.
  10374. *
  10375. * Domain: [-Infinity, Infinity]
  10376. * Range: [-1, 1]
  10377. *
  10378. * sin(x) = x - x^3/3! + x^5/5! - ...
  10379. *
  10380. * sin(0) = 0
  10381. * sin(-0) = -0
  10382. * sin(Infinity) = NaN
  10383. * sin(-Infinity) = NaN
  10384. * sin(NaN) = NaN
  10385. *
  10386. */
  10387. P.sine = P.sin = function () {
  10388. var pr,rm,
  10389. x = this,
  10390. Ctor = x.constructor;
  10391. if (!x.isFinite()) return new Ctor(NaN);
  10392. if (x.isZero()) return new Ctor(x);
  10393. pr = Ctor.precision;
  10394. rm = Ctor.rounding;
  10395. Ctor.precision = pr + Math.max(x.e, x.sd()) + LOG_BASE;
  10396. Ctor.rounding = 1;
  10397. x = sine(Ctor, toLessThanHalfPi(Ctor, x));
  10398. Ctor.precision = pr;
  10399. Ctor.rounding = rm;
  10400. return finalise(quadrant > 2 ? x.neg() : x, pr, rm, true);
  10401. };
  10402. /*
  10403. * Return a new Decimal whose value is the square root of this Decimal, rounded to `precision`
  10404. * significant digits using rounding mode `rounding`.
  10405. *
  10406. * sqrt(-n) = N
  10407. * sqrt(N) = N
  10408. * sqrt(-I) = N
  10409. * sqrt(I) = I
  10410. * sqrt(0) = 0
  10411. * sqrt(-0) = -0
  10412. *
  10413. */
  10414. P.squareRoot = P.sqrt = function () {
  10415. var m,n,sd,r,rep,t,
  10416. x = this,
  10417. d = x.d,
  10418. e = x.e,
  10419. s = x.s,
  10420. Ctor = x.constructor;
  10421. // Negative/NaN/Infinity/zero?
  10422. if (s !== 1 || !d || !d[0]) {
  10423. return new Ctor(!s || s < 0 && (!d || d[0]) ? NaN : d ? x : 1 / 0);
  10424. }
  10425. external = false;
  10426. // Initial estimate.
  10427. s = Math.sqrt(+x);
  10428. // Math.sqrt underflow/overflow?
  10429. // Pass x to Math.sqrt as integer, then adjust the exponent of the result.
  10430. if (s == 0 || s == 1 / 0) {
  10431. n = digitsToString(d);
  10432. if ((n.length + e) % 2 == 0) n += '0';
  10433. s = Math.sqrt(n);
  10434. e = mathfloor((e + 1) / 2) - (e < 0 || e % 2);
  10435. if (s == 1 / 0) {
  10436. n = '5e' + e;
  10437. } else {
  10438. n = s.toExponential();
  10439. n = n.slice(0, n.indexOf('e') + 1) + e;
  10440. }
  10441. r = new Ctor(n);
  10442. } else {
  10443. r = new Ctor(s.toString());
  10444. }
  10445. sd = (e = Ctor.precision) + 3;
  10446. // Newton-Raphson iteration.
  10447. for (;;) {
  10448. t = r;
  10449. r = t.plus(divide(x, t, sd + 2, 1)).times(0.5);
  10450. // TODO? Replace with for-loop and checkRoundingDigits.
  10451. if (digitsToString(t.d).slice(0, sd) === (n = digitsToString(r.d)).slice(0, sd)) {
  10452. n = n.slice(sd - 3, sd + 1);
  10453. // The 4th rounding digit may be in error by -1 so if the 4 rounding digits are 9999 or
  10454. // 4999, i.e. approaching a rounding boundary, continue the iteration.
  10455. if (n == '9999' || !rep && n == '4999') {
  10456. // On the first iteration only, check to see if rounding up gives the exact result as the
  10457. // nines may infinitely repeat.
  10458. if (!rep) {
  10459. finalise(t, e + 1, 0);
  10460. if (t.times(t).eq(x)) {
  10461. r = t;
  10462. break;
  10463. }
  10464. }
  10465. sd += 4;
  10466. rep = 1;
  10467. } else {
  10468. // If the rounding digits are null, 0{0,4} or 50{0,3}, check for an exact result.
  10469. // If not, then there are further digits and m will be truthy.
  10470. if (!+n || !+n.slice(1) && n.charAt(0) == '5') {
  10471. // Truncate to the first rounding digit.
  10472. finalise(r, e + 1, 1);
  10473. m = !r.times(r).eq(x);
  10474. }
  10475. break;
  10476. }
  10477. }
  10478. }
  10479. external = true;
  10480. return finalise(r, e, Ctor.rounding, m);
  10481. };
  10482. /*
  10483. * Return a new Decimal whose value is the tangent of the value in radians of this Decimal.
  10484. *
  10485. * Domain: [-Infinity, Infinity]
  10486. * Range: [-Infinity, Infinity]
  10487. *
  10488. * tan(0) = 0
  10489. * tan(-0) = -0
  10490. * tan(Infinity) = NaN
  10491. * tan(-Infinity) = NaN
  10492. * tan(NaN) = NaN
  10493. *
  10494. */
  10495. P.tangent = P.tan = function () {
  10496. var pr,rm,
  10497. x = this,
  10498. Ctor = x.constructor;
  10499. if (!x.isFinite()) return new Ctor(NaN);
  10500. if (x.isZero()) return new Ctor(x);
  10501. pr = Ctor.precision;
  10502. rm = Ctor.rounding;
  10503. Ctor.precision = pr + 10;
  10504. Ctor.rounding = 1;
  10505. x = x.sin();
  10506. x.s = 1;
  10507. x = divide(x, new Ctor(1).minus(x.times(x)).sqrt(), pr + 10, 0);
  10508. Ctor.precision = pr;
  10509. Ctor.rounding = rm;
  10510. return finalise(quadrant == 2 || quadrant == 4 ? x.neg() : x, pr, rm, true);
  10511. };
  10512. /*
  10513. * n * 0 = 0
  10514. * n * N = N
  10515. * n * I = I
  10516. * 0 * n = 0
  10517. * 0 * 0 = 0
  10518. * 0 * N = N
  10519. * 0 * I = N
  10520. * N * n = N
  10521. * N * 0 = N
  10522. * N * N = N
  10523. * N * I = N
  10524. * I * n = I
  10525. * I * 0 = N
  10526. * I * N = N
  10527. * I * I = I
  10528. *
  10529. * Return a new Decimal whose value is this Decimal times `y`, rounded to `precision` significant
  10530. * digits using rounding mode `rounding`.
  10531. *
  10532. */
  10533. P.times = P.mul = function (y) {
  10534. var carry,e,i,k,r,rL,t,xdL,ydL,
  10535. x = this,
  10536. Ctor = x.constructor,
  10537. xd = x.d,
  10538. yd = (y = new Ctor(y)).d;
  10539. y.s *= x.s;
  10540. // If either is NaN, ±Infinity or ±0...
  10541. if (!xd || !xd[0] || !yd || !yd[0]) {
  10542. return new Ctor(!y.s || xd && !xd[0] && !yd || yd && !yd[0] && !xd
  10543. // Return NaN if either is NaN.
  10544. // Return NaN if x is ±0 and y is ±Infinity, or y is ±0 and x is ±Infinity.
  10545. ? NaN
  10546. // Return ±Infinity if either is ±Infinity.
  10547. // Return ±0 if either is ±0.
  10548. : !xd || !yd ? y.s / 0 : y.s * 0);
  10549. }
  10550. e = mathfloor(x.e / LOG_BASE) + mathfloor(y.e / LOG_BASE);
  10551. xdL = xd.length;
  10552. ydL = yd.length;
  10553. // Ensure xd points to the longer array.
  10554. if (xdL < ydL) {
  10555. r = xd;
  10556. xd = yd;
  10557. yd = r;
  10558. rL = xdL;
  10559. xdL = ydL;
  10560. ydL = rL;
  10561. }
  10562. // Initialise the result array with zeros.
  10563. r = [];
  10564. rL = xdL + ydL;
  10565. for (i = rL; i--;) {r.push(0);}
  10566. // Multiply!
  10567. for (i = ydL; --i >= 0;) {
  10568. carry = 0;
  10569. for (k = xdL + i; k > i;) {
  10570. t = r[k] + yd[i] * xd[k - i - 1] + carry;
  10571. r[k--] = t % BASE | 0;
  10572. carry = t / BASE | 0;
  10573. }
  10574. r[k] = (r[k] + carry) % BASE | 0;
  10575. }
  10576. // Remove trailing zeros.
  10577. for (; !r[--rL];) {r.pop();}
  10578. if (carry) ++e;else
  10579. r.shift();
  10580. y.d = r;
  10581. y.e = getBase10Exponent(r, e);
  10582. return external ? finalise(y, Ctor.precision, Ctor.rounding) : y;
  10583. };
  10584. /*
  10585. * Return a string representing the value of this Decimal in base 2, round to `sd` significant
  10586. * digits using rounding mode `rm`.
  10587. *
  10588. * If the optional `sd` argument is present then return binary exponential notation.
  10589. *
  10590. * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.
  10591. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10592. *
  10593. */
  10594. P.toBinary = function (sd, rm) {
  10595. return toStringBinary(this, 2, sd, rm);
  10596. };
  10597. /*
  10598. * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `dp`
  10599. * decimal places using rounding mode `rm` or `rounding` if `rm` is omitted.
  10600. *
  10601. * If `dp` is omitted, return a new Decimal whose value is the value of this Decimal.
  10602. *
  10603. * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive.
  10604. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10605. *
  10606. */
  10607. P.toDecimalPlaces = P.toDP = function (dp, rm) {
  10608. var x = this,
  10609. Ctor = x.constructor;
  10610. x = new Ctor(x);
  10611. if (dp === void 0) return x;
  10612. checkInt32(dp, 0, MAX_DIGITS);
  10613. if (rm === void 0) rm = Ctor.rounding;else
  10614. checkInt32(rm, 0, 8);
  10615. return finalise(x, dp + x.e + 1, rm);
  10616. };
  10617. /*
  10618. * Return a string representing the value of this Decimal in exponential notation rounded to
  10619. * `dp` fixed decimal places using rounding mode `rounding`.
  10620. *
  10621. * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive.
  10622. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10623. *
  10624. */
  10625. P.toExponential = function (dp, rm) {
  10626. var str,
  10627. x = this,
  10628. Ctor = x.constructor;
  10629. if (dp === void 0) {
  10630. str = finiteToString(x, true);
  10631. } else {
  10632. checkInt32(dp, 0, MAX_DIGITS);
  10633. if (rm === void 0) rm = Ctor.rounding;else
  10634. checkInt32(rm, 0, 8);
  10635. x = finalise(new Ctor(x), dp + 1, rm);
  10636. str = finiteToString(x, true, dp + 1);
  10637. }
  10638. return x.isNeg() && !x.isZero() ? '-' + str : str;
  10639. };
  10640. /*
  10641. * Return a string representing the value of this Decimal in normal (fixed-point) notation to
  10642. * `dp` fixed decimal places and rounded using rounding mode `rm` or `rounding` if `rm` is
  10643. * omitted.
  10644. *
  10645. * As with JavaScript numbers, (-0).toFixed(0) is '0', but e.g. (-0.00001).toFixed(0) is '-0'.
  10646. *
  10647. * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive.
  10648. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10649. *
  10650. * (-0).toFixed(0) is '0', but (-0.1).toFixed(0) is '-0'.
  10651. * (-0).toFixed(1) is '0.0', but (-0.01).toFixed(1) is '-0.0'.
  10652. * (-0).toFixed(3) is '0.000'.
  10653. * (-0.5).toFixed(0) is '-0'.
  10654. *
  10655. */
  10656. P.toFixed = function (dp, rm) {
  10657. var str,y,
  10658. x = this,
  10659. Ctor = x.constructor;
  10660. if (dp === void 0) {
  10661. str = finiteToString(x);
  10662. } else {
  10663. checkInt32(dp, 0, MAX_DIGITS);
  10664. if (rm === void 0) rm = Ctor.rounding;else
  10665. checkInt32(rm, 0, 8);
  10666. y = finalise(new Ctor(x), dp + x.e + 1, rm);
  10667. str = finiteToString(y, false, dp + y.e + 1);
  10668. }
  10669. // To determine whether to add the minus sign look at the value before it was rounded,
  10670. // i.e. look at `x` rather than `y`.
  10671. return x.isNeg() && !x.isZero() ? '-' + str : str;
  10672. };
  10673. /*
  10674. * Return an array representing the value of this Decimal as a simple fraction with an integer
  10675. * numerator and an integer denominator.
  10676. *
  10677. * The denominator will be a positive non-zero value less than or equal to the specified maximum
  10678. * denominator. If a maximum denominator is not specified, the denominator will be the lowest
  10679. * value necessary to represent the number exactly.
  10680. *
  10681. * [maxD] {number|string|Decimal} Maximum denominator. Integer >= 1 and < Infinity.
  10682. *
  10683. */
  10684. P.toFraction = function (maxD) {
  10685. var d,d0,d1,d2,e,k,n,n0,n1,pr,q,r,
  10686. x = this,
  10687. xd = x.d,
  10688. Ctor = x.constructor;
  10689. if (!xd) return new Ctor(x);
  10690. n1 = d0 = new Ctor(1);
  10691. d1 = n0 = new Ctor(0);
  10692. d = new Ctor(d1);
  10693. e = d.e = getPrecision(xd) - x.e - 1;
  10694. k = e % LOG_BASE;
  10695. d.d[0] = mathpow(10, k < 0 ? LOG_BASE + k : k);
  10696. if (maxD == null) {
  10697. // d is 10**e, the minimum max-denominator needed.
  10698. maxD = e > 0 ? d : n1;
  10699. } else {
  10700. n = new Ctor(maxD);
  10701. if (!n.isInt() || n.lt(n1)) throw Error(invalidArgument + n);
  10702. maxD = n.gt(d) ? e > 0 ? d : n1 : n;
  10703. }
  10704. external = false;
  10705. n = new Ctor(digitsToString(xd));
  10706. pr = Ctor.precision;
  10707. Ctor.precision = e = xd.length * LOG_BASE * 2;
  10708. for (;;) {
  10709. q = divide(n, d, 0, 1, 1);
  10710. d2 = d0.plus(q.times(d1));
  10711. if (d2.cmp(maxD) == 1) break;
  10712. d0 = d1;
  10713. d1 = d2;
  10714. d2 = n1;
  10715. n1 = n0.plus(q.times(d2));
  10716. n0 = d2;
  10717. d2 = d;
  10718. d = n.minus(q.times(d2));
  10719. n = d2;
  10720. }
  10721. d2 = divide(maxD.minus(d0), d1, 0, 1, 1);
  10722. n0 = n0.plus(d2.times(n1));
  10723. d0 = d0.plus(d2.times(d1));
  10724. n0.s = n1.s = x.s;
  10725. // Determine which fraction is closer to x, n0/d0 or n1/d1?
  10726. r = divide(n1, d1, e, 1).minus(x).abs().cmp(divide(n0, d0, e, 1).minus(x).abs()) < 1 ?
  10727. [n1, d1] : [n0, d0];
  10728. Ctor.precision = pr;
  10729. external = true;
  10730. return r;
  10731. };
  10732. /*
  10733. * Return a string representing the value of this Decimal in base 16, round to `sd` significant
  10734. * digits using rounding mode `rm`.
  10735. *
  10736. * If the optional `sd` argument is present then return binary exponential notation.
  10737. *
  10738. * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.
  10739. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10740. *
  10741. */
  10742. P.toHexadecimal = P.toHex = function (sd, rm) {
  10743. return toStringBinary(this, 16, sd, rm);
  10744. };
  10745. /*
  10746. * Returns a new Decimal whose value is the nearest multiple of `y` in the direction of rounding
  10747. * mode `rm`, or `Decimal.rounding` if `rm` is omitted, to the value of this Decimal.
  10748. *
  10749. * The return value will always have the same sign as this Decimal, unless either this Decimal
  10750. * or `y` is NaN, in which case the return value will be also be NaN.
  10751. *
  10752. * The return value is not affected by the value of `precision`.
  10753. *
  10754. * y {number|string|Decimal} The magnitude to round to a multiple of.
  10755. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10756. *
  10757. * 'toNearest() rounding mode not an integer: {rm}'
  10758. * 'toNearest() rounding mode out of range: {rm}'
  10759. *
  10760. */
  10761. P.toNearest = function (y, rm) {
  10762. var x = this,
  10763. Ctor = x.constructor;
  10764. x = new Ctor(x);
  10765. if (y == null) {
  10766. // If x is not finite, return x.
  10767. if (!x.d) return x;
  10768. y = new Ctor(1);
  10769. rm = Ctor.rounding;
  10770. } else {
  10771. y = new Ctor(y);
  10772. if (rm === void 0) {
  10773. rm = Ctor.rounding;
  10774. } else {
  10775. checkInt32(rm, 0, 8);
  10776. }
  10777. // If x is not finite, return x if y is not NaN, else NaN.
  10778. if (!x.d) return y.s ? x : y;
  10779. // If y is not finite, return Infinity with the sign of x if y is Infinity, else NaN.
  10780. if (!y.d) {
  10781. if (y.s) y.s = x.s;
  10782. return y;
  10783. }
  10784. }
  10785. // If y is not zero, calculate the nearest multiple of y to x.
  10786. if (y.d[0]) {
  10787. external = false;
  10788. x = divide(x, y, 0, rm, 1).times(y);
  10789. external = true;
  10790. finalise(x);
  10791. // If y is zero, return zero with the sign of x.
  10792. } else {
  10793. y.s = x.s;
  10794. x = y;
  10795. }
  10796. return x;
  10797. };
  10798. /*
  10799. * Return the value of this Decimal converted to a number primitive.
  10800. * Zero keeps its sign.
  10801. *
  10802. */
  10803. P.toNumber = function () {
  10804. return +this;
  10805. };
  10806. /*
  10807. * Return a string representing the value of this Decimal in base 8, round to `sd` significant
  10808. * digits using rounding mode `rm`.
  10809. *
  10810. * If the optional `sd` argument is present then return binary exponential notation.
  10811. *
  10812. * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.
  10813. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10814. *
  10815. */
  10816. P.toOctal = function (sd, rm) {
  10817. return toStringBinary(this, 8, sd, rm);
  10818. };
  10819. /*
  10820. * Return a new Decimal whose value is the value of this Decimal raised to the power `y`, rounded
  10821. * to `precision` significant digits using rounding mode `rounding`.
  10822. *
  10823. * ECMAScript compliant.
  10824. *
  10825. * pow(x, NaN) = NaN
  10826. * pow(x, ±0) = 1
  10827. * pow(NaN, non-zero) = NaN
  10828. * pow(abs(x) > 1, +Infinity) = +Infinity
  10829. * pow(abs(x) > 1, -Infinity) = +0
  10830. * pow(abs(x) == 1, ±Infinity) = NaN
  10831. * pow(abs(x) < 1, +Infinity) = +0
  10832. * pow(abs(x) < 1, -Infinity) = +Infinity
  10833. * pow(+Infinity, y > 0) = +Infinity
  10834. * pow(+Infinity, y < 0) = +0
  10835. * pow(-Infinity, odd integer > 0) = -Infinity
  10836. * pow(-Infinity, even integer > 0) = +Infinity
  10837. * pow(-Infinity, odd integer < 0) = -0
  10838. * pow(-Infinity, even integer < 0) = +0
  10839. * pow(+0, y > 0) = +0
  10840. * pow(+0, y < 0) = +Infinity
  10841. * pow(-0, odd integer > 0) = -0
  10842. * pow(-0, even integer > 0) = +0
  10843. * pow(-0, odd integer < 0) = -Infinity
  10844. * pow(-0, even integer < 0) = +Infinity
  10845. * pow(finite x < 0, finite non-integer) = NaN
  10846. *
  10847. * For non-integer or very large exponents pow(x, y) is calculated using
  10848. *
  10849. * x^y = exp(y*ln(x))
  10850. *
  10851. * Assuming the first 15 rounding digits are each equally likely to be any digit 0-9, the
  10852. * probability of an incorrectly rounded result
  10853. * P([49]9{14} | [50]0{14}) = 2 * 0.2 * 10^-14 = 4e-15 = 1/2.5e+14
  10854. * i.e. 1 in 250,000,000,000,000
  10855. *
  10856. * If a result is incorrectly rounded the maximum error will be 1 ulp (unit in last place).
  10857. *
  10858. * y {number|string|Decimal} The power to which to raise this Decimal.
  10859. *
  10860. */
  10861. P.toPower = P.pow = function (y) {
  10862. var e,k,pr,r,rm,s,
  10863. x = this,
  10864. Ctor = x.constructor,
  10865. yn = +(y = new Ctor(y));
  10866. // Either ±Infinity, NaN or ±0?
  10867. if (!x.d || !y.d || !x.d[0] || !y.d[0]) return new Ctor(mathpow(+x, yn));
  10868. x = new Ctor(x);
  10869. if (x.eq(1)) return x;
  10870. pr = Ctor.precision;
  10871. rm = Ctor.rounding;
  10872. if (y.eq(1)) return finalise(x, pr, rm);
  10873. // y exponent
  10874. e = mathfloor(y.e / LOG_BASE);
  10875. // If y is a small integer use the 'exponentiation by squaring' algorithm.
  10876. if (e >= y.d.length - 1 && (k = yn < 0 ? -yn : yn) <= MAX_SAFE_INTEGER) {
  10877. r = intPow(Ctor, x, k, pr);
  10878. return y.s < 0 ? new Ctor(1).div(r) : finalise(r, pr, rm);
  10879. }
  10880. s = x.s;
  10881. // if x is negative
  10882. if (s < 0) {
  10883. // if y is not an integer
  10884. if (e < y.d.length - 1) return new Ctor(NaN);
  10885. // Result is positive if x is negative and the last digit of integer y is even.
  10886. if ((y.d[e] & 1) == 0) s = 1;
  10887. // if x.eq(-1)
  10888. if (x.e == 0 && x.d[0] == 1 && x.d.length == 1) {
  10889. x.s = s;
  10890. return x;
  10891. }
  10892. }
  10893. // Estimate result exponent.
  10894. // x^y = 10^e, where e = y * log10(x)
  10895. // log10(x) = log10(x_significand) + x_exponent
  10896. // log10(x_significand) = ln(x_significand) / ln(10)
  10897. k = mathpow(+x, yn);
  10898. e = k == 0 || !isFinite(k) ?
  10899. mathfloor(yn * (Math.log('0.' + digitsToString(x.d)) / Math.LN10 + x.e + 1)) :
  10900. new Ctor(k + '').e;
  10901. // Exponent estimate may be incorrect e.g. x: 0.999999999999999999, y: 2.29, e: 0, r.e: -1.
  10902. // Overflow/underflow?
  10903. if (e > Ctor.maxE + 1 || e < Ctor.minE - 1) return new Ctor(e > 0 ? s / 0 : 0);
  10904. external = false;
  10905. Ctor.rounding = x.s = 1;
  10906. // Estimate the extra guard digits needed to ensure five correct rounding digits from
  10907. // naturalLogarithm(x). Example of failure without these extra digits (precision: 10):
  10908. // new Decimal(2.32456).pow('2087987436534566.46411')
  10909. // should be 1.162377823e+764914905173815, but is 1.162355823e+764914905173815
  10910. k = Math.min(12, (e + '').length);
  10911. // r = x^y = exp(y*ln(x))
  10912. r = naturalExponential(y.times(naturalLogarithm(x, pr + k)), pr);
  10913. // r may be Infinity, e.g. (0.9999999999999999).pow(-1e+40)
  10914. if (r.d) {
  10915. // Truncate to the required precision plus five rounding digits.
  10916. r = finalise(r, pr + 5, 1);
  10917. // If the rounding digits are [49]9999 or [50]0000 increase the precision by 10 and recalculate
  10918. // the result.
  10919. if (checkRoundingDigits(r.d, pr, rm)) {
  10920. e = pr + 10;
  10921. // Truncate to the increased precision plus five rounding digits.
  10922. r = finalise(naturalExponential(y.times(naturalLogarithm(x, e + k)), e), e + 5, 1);
  10923. // Check for 14 nines from the 2nd rounding digit (the first rounding digit may be 4 or 9).
  10924. if (+digitsToString(r.d).slice(pr + 1, pr + 15) + 1 == 1e14) {
  10925. r = finalise(r, pr + 1, 0);
  10926. }
  10927. }
  10928. }
  10929. r.s = s;
  10930. external = true;
  10931. Ctor.rounding = rm;
  10932. return finalise(r, pr, rm);
  10933. };
  10934. /*
  10935. * Return a string representing the value of this Decimal rounded to `sd` significant digits
  10936. * using rounding mode `rounding`.
  10937. *
  10938. * Return exponential notation if `sd` is less than the number of digits necessary to represent
  10939. * the integer part of the value in normal notation.
  10940. *
  10941. * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.
  10942. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10943. *
  10944. */
  10945. P.toPrecision = function (sd, rm) {
  10946. var str,
  10947. x = this,
  10948. Ctor = x.constructor;
  10949. if (sd === void 0) {
  10950. str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos);
  10951. } else {
  10952. checkInt32(sd, 1, MAX_DIGITS);
  10953. if (rm === void 0) rm = Ctor.rounding;else
  10954. checkInt32(rm, 0, 8);
  10955. x = finalise(new Ctor(x), sd, rm);
  10956. str = finiteToString(x, sd <= x.e || x.e <= Ctor.toExpNeg, sd);
  10957. }
  10958. return x.isNeg() && !x.isZero() ? '-' + str : str;
  10959. };
  10960. /*
  10961. * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `sd`
  10962. * significant digits using rounding mode `rm`, or to `precision` and `rounding` respectively if
  10963. * omitted.
  10964. *
  10965. * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.
  10966. * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.
  10967. *
  10968. * 'toSD() digits out of range: {sd}'
  10969. * 'toSD() digits not an integer: {sd}'
  10970. * 'toSD() rounding mode not an integer: {rm}'
  10971. * 'toSD() rounding mode out of range: {rm}'
  10972. *
  10973. */
  10974. P.toSignificantDigits = P.toSD = function (sd, rm) {
  10975. var x = this,
  10976. Ctor = x.constructor;
  10977. if (sd === void 0) {
  10978. sd = Ctor.precision;
  10979. rm = Ctor.rounding;
  10980. } else {
  10981. checkInt32(sd, 1, MAX_DIGITS);
  10982. if (rm === void 0) rm = Ctor.rounding;else
  10983. checkInt32(rm, 0, 8);
  10984. }
  10985. return finalise(new Ctor(x), sd, rm);
  10986. };
  10987. /*
  10988. * Return a string representing the value of this Decimal.
  10989. *
  10990. * Return exponential notation if this Decimal has a positive exponent equal to or greater than
  10991. * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`.
  10992. *
  10993. */
  10994. P.toString = function () {
  10995. var x = this,
  10996. Ctor = x.constructor,
  10997. str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos);
  10998. return x.isNeg() && !x.isZero() ? '-' + str : str;
  10999. };
  11000. /*
  11001. * Return a new Decimal whose value is the value of this Decimal truncated to a whole number.
  11002. *
  11003. */
  11004. P.truncated = P.trunc = function () {
  11005. return finalise(new this.constructor(this), this.e + 1, 1);
  11006. };
  11007. /*
  11008. * Return a string representing the value of this Decimal.
  11009. * Unlike `toString`, negative zero will include the minus sign.
  11010. *
  11011. */
  11012. P.valueOf = P.toJSON = function () {
  11013. var x = this,
  11014. Ctor = x.constructor,
  11015. str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos);
  11016. return x.isNeg() ? '-' + str : str;
  11017. };
  11018. // Helper functions for Decimal.prototype (P) and/or Decimal methods, and their callers.
  11019. /*
  11020. * digitsToString P.cubeRoot, P.logarithm, P.squareRoot, P.toFraction, P.toPower,
  11021. * finiteToString, naturalExponential, naturalLogarithm
  11022. * checkInt32 P.toDecimalPlaces, P.toExponential, P.toFixed, P.toNearest,
  11023. * P.toPrecision, P.toSignificantDigits, toStringBinary, random
  11024. * checkRoundingDigits P.logarithm, P.toPower, naturalExponential, naturalLogarithm
  11025. * convertBase toStringBinary, parseOther
  11026. * cos P.cos
  11027. * divide P.atanh, P.cubeRoot, P.dividedBy, P.dividedToIntegerBy,
  11028. * P.logarithm, P.modulo, P.squareRoot, P.tan, P.tanh, P.toFraction,
  11029. * P.toNearest, toStringBinary, naturalExponential, naturalLogarithm,
  11030. * taylorSeries, atan2, parseOther
  11031. * finalise P.absoluteValue, P.atan, P.atanh, P.ceil, P.cos, P.cosh,
  11032. * P.cubeRoot, P.dividedToIntegerBy, P.floor, P.logarithm, P.minus,
  11033. * P.modulo, P.negated, P.plus, P.round, P.sin, P.sinh, P.squareRoot,
  11034. * P.tan, P.times, P.toDecimalPlaces, P.toExponential, P.toFixed,
  11035. * P.toNearest, P.toPower, P.toPrecision, P.toSignificantDigits,
  11036. * P.truncated, divide, getLn10, getPi, naturalExponential,
  11037. * naturalLogarithm, ceil, floor, round, trunc
  11038. * finiteToString P.toExponential, P.toFixed, P.toPrecision, P.toString, P.valueOf,
  11039. * toStringBinary
  11040. * getBase10Exponent P.minus, P.plus, P.times, parseOther
  11041. * getLn10 P.logarithm, naturalLogarithm
  11042. * getPi P.acos, P.asin, P.atan, toLessThanHalfPi, atan2
  11043. * getPrecision P.precision, P.toFraction
  11044. * getZeroString digitsToString, finiteToString
  11045. * intPow P.toPower, parseOther
  11046. * isOdd toLessThanHalfPi
  11047. * maxOrMin max, min
  11048. * naturalExponential P.naturalExponential, P.toPower
  11049. * naturalLogarithm P.acosh, P.asinh, P.atanh, P.logarithm, P.naturalLogarithm,
  11050. * P.toPower, naturalExponential
  11051. * nonFiniteToString finiteToString, toStringBinary
  11052. * parseDecimal Decimal
  11053. * parseOther Decimal
  11054. * sin P.sin
  11055. * taylorSeries P.cosh, P.sinh, cos, sin
  11056. * toLessThanHalfPi P.cos, P.sin
  11057. * toStringBinary P.toBinary, P.toHexadecimal, P.toOctal
  11058. * truncate intPow
  11059. *
  11060. * Throws: P.logarithm, P.precision, P.toFraction, checkInt32, getLn10, getPi,
  11061. * naturalLogarithm, config, parseOther, random, Decimal
  11062. */
  11063. function digitsToString(d) {
  11064. var i,k,ws,
  11065. indexOfLastWord = d.length - 1,
  11066. str = '',
  11067. w = d[0];
  11068. if (indexOfLastWord > 0) {
  11069. str += w;
  11070. for (i = 1; i < indexOfLastWord; i++) {
  11071. ws = d[i] + '';
  11072. k = LOG_BASE - ws.length;
  11073. if (k) str += getZeroString(k);
  11074. str += ws;
  11075. }
  11076. w = d[i];
  11077. ws = w + '';
  11078. k = LOG_BASE - ws.length;
  11079. if (k) str += getZeroString(k);
  11080. } else if (w === 0) {
  11081. return '0';
  11082. }
  11083. // Remove trailing zeros of last w.
  11084. for (; w % 10 === 0;) {w /= 10;}
  11085. return str + w;
  11086. }
  11087. function checkInt32(i, min, max) {
  11088. if (i !== ~~i || i < min || i > max) {
  11089. throw Error(invalidArgument + i);
  11090. }
  11091. }
  11092. /*
  11093. * Check 5 rounding digits if `repeating` is null, 4 otherwise.
  11094. * `repeating == null` if caller is `log` or `pow`,
  11095. * `repeating != null` if caller is `naturalLogarithm` or `naturalExponential`.
  11096. */
  11097. function checkRoundingDigits(d, i, rm, repeating) {
  11098. var di, k, r, rd;
  11099. // Get the length of the first word of the array d.
  11100. for (k = d[0]; k >= 10; k /= 10) {--i;}
  11101. // Is the rounding digit in the first word of d?
  11102. if (--i < 0) {
  11103. i += LOG_BASE;
  11104. di = 0;
  11105. } else {
  11106. di = Math.ceil((i + 1) / LOG_BASE);
  11107. i %= LOG_BASE;
  11108. }
  11109. // i is the index (0 - 6) of the rounding digit.
  11110. // E.g. if within the word 3487563 the first rounding digit is 5,
  11111. // then i = 4, k = 1000, rd = 3487563 % 1000 = 563
  11112. k = mathpow(10, LOG_BASE - i);
  11113. rd = d[di] % k | 0;
  11114. if (repeating == null) {
  11115. if (i < 3) {
  11116. if (i == 0) rd = rd / 100 | 0;else
  11117. if (i == 1) rd = rd / 10 | 0;
  11118. r = rm < 4 && rd == 99999 || rm > 3 && rd == 49999 || rd == 50000 || rd == 0;
  11119. } else {
  11120. r = (rm < 4 && rd + 1 == k || rm > 3 && rd + 1 == k / 2) &&
  11121. (d[di + 1] / k / 100 | 0) == mathpow(10, i - 2) - 1 ||
  11122. (rd == k / 2 || rd == 0) && (d[di + 1] / k / 100 | 0) == 0;
  11123. }
  11124. } else {
  11125. if (i < 4) {
  11126. if (i == 0) rd = rd / 1000 | 0;else
  11127. if (i == 1) rd = rd / 100 | 0;else
  11128. if (i == 2) rd = rd / 10 | 0;
  11129. r = (repeating || rm < 4) && rd == 9999 || !repeating && rm > 3 && rd == 4999;
  11130. } else {
  11131. r = ((repeating || rm < 4) && rd + 1 == k ||
  11132. !repeating && rm > 3 && rd + 1 == k / 2) &&
  11133. (d[di + 1] / k / 1000 | 0) == mathpow(10, i - 3) - 1;
  11134. }
  11135. }
  11136. return r;
  11137. }
  11138. // Convert string of `baseIn` to an array of numbers of `baseOut`.
  11139. // Eg. convertBase('255', 10, 16) returns [15, 15].
  11140. // Eg. convertBase('ff', 16, 10) returns [2, 5, 5].
  11141. function convertBase(str, baseIn, baseOut) {
  11142. var j,
  11143. arr = [0],
  11144. arrL,
  11145. i = 0,
  11146. strL = str.length;
  11147. for (; i < strL;) {
  11148. for (arrL = arr.length; arrL--;) {arr[arrL] *= baseIn;}
  11149. arr[0] += NUMERALS.indexOf(str.charAt(i++));
  11150. for (j = 0; j < arr.length; j++) {
  11151. if (arr[j] > baseOut - 1) {
  11152. if (arr[j + 1] === void 0) arr[j + 1] = 0;
  11153. arr[j + 1] += arr[j] / baseOut | 0;
  11154. arr[j] %= baseOut;
  11155. }
  11156. }
  11157. }
  11158. return arr.reverse();
  11159. }
  11160. /*
  11161. * cos(x) = 1 - x^2/2! + x^4/4! - ...
  11162. * |x| < pi/2
  11163. *
  11164. */
  11165. function cosine(Ctor, x) {
  11166. var k, len, y;
  11167. if (x.isZero()) return x;
  11168. // Argument reduction: cos(4x) = 8*(cos^4(x) - cos^2(x)) + 1
  11169. // i.e. cos(x) = 8*(cos^4(x/4) - cos^2(x/4)) + 1
  11170. // Estimate the optimum number of times to use the argument reduction.
  11171. len = x.d.length;
  11172. if (len < 32) {
  11173. k = Math.ceil(len / 3);
  11174. y = (1 / tinyPow(4, k)).toString();
  11175. } else {
  11176. k = 16;
  11177. y = '2.3283064365386962890625e-10';
  11178. }
  11179. Ctor.precision += k;
  11180. x = taylorSeries(Ctor, 1, x.times(y), new Ctor(1));
  11181. // Reverse argument reduction
  11182. for (var i = k; i--;) {
  11183. var cos2x = x.times(x);
  11184. x = cos2x.times(cos2x).minus(cos2x).times(8).plus(1);
  11185. }
  11186. Ctor.precision -= k;
  11187. return x;
  11188. }
  11189. /*
  11190. * Perform division in the specified base.
  11191. */
  11192. var divide = function () {
  11193. // Assumes non-zero x and k, and hence non-zero result.
  11194. function multiplyInteger(x, k, base) {
  11195. var temp,
  11196. carry = 0,
  11197. i = x.length;
  11198. for (x = x.slice(); i--;) {
  11199. temp = x[i] * k + carry;
  11200. x[i] = temp % base | 0;
  11201. carry = temp / base | 0;
  11202. }
  11203. if (carry) x.unshift(carry);
  11204. return x;
  11205. }
  11206. function compare(a, b, aL, bL) {
  11207. var i, r;
  11208. if (aL != bL) {
  11209. r = aL > bL ? 1 : -1;
  11210. } else {
  11211. for (i = r = 0; i < aL; i++) {
  11212. if (a[i] != b[i]) {
  11213. r = a[i] > b[i] ? 1 : -1;
  11214. break;
  11215. }
  11216. }
  11217. }
  11218. return r;
  11219. }
  11220. function subtract(a, b, aL, base) {
  11221. var i = 0;
  11222. // Subtract b from a.
  11223. for (; aL--;) {
  11224. a[aL] -= i;
  11225. i = a[aL] < b[aL] ? 1 : 0;
  11226. a[aL] = i * base + a[aL] - b[aL];
  11227. }
  11228. // Remove leading zeros.
  11229. for (; !a[0] && a.length > 1;) {a.shift();}
  11230. }
  11231. return function (x, y, pr, rm, dp, base) {
  11232. var cmp,e,i,k,logBase,more,prod,prodL,q,qd,rem,remL,rem0,sd,t,xi,xL,yd0,
  11233. yL,yz,
  11234. Ctor = x.constructor,
  11235. sign = x.s == y.s ? 1 : -1,
  11236. xd = x.d,
  11237. yd = y.d;
  11238. // Either NaN, Infinity or 0?
  11239. if (!xd || !xd[0] || !yd || !yd[0]) {
  11240. return new Ctor( // Return NaN if either NaN, or both Infinity or 0.
  11241. !x.s || !y.s || (xd ? yd && xd[0] == yd[0] : !yd) ? NaN :
  11242. // Return ±0 if x is 0 or y is ±Infinity, or return ±Infinity as y is 0.
  11243. xd && xd[0] == 0 || !yd ? sign * 0 : sign / 0);
  11244. }
  11245. if (base) {
  11246. logBase = 1;
  11247. e = x.e - y.e;
  11248. } else {
  11249. base = BASE;
  11250. logBase = LOG_BASE;
  11251. e = mathfloor(x.e / logBase) - mathfloor(y.e / logBase);
  11252. }
  11253. yL = yd.length;
  11254. xL = xd.length;
  11255. q = new Ctor(sign);
  11256. qd = q.d = [];
  11257. // Result exponent may be one less than e.
  11258. // The digit array of a Decimal from toStringBinary may have trailing zeros.
  11259. for (i = 0; yd[i] == (xd[i] || 0); i++) {;}
  11260. if (yd[i] > (xd[i] || 0)) e--;
  11261. if (pr == null) {
  11262. sd = pr = Ctor.precision;
  11263. rm = Ctor.rounding;
  11264. } else if (dp) {
  11265. sd = pr + (x.e - y.e) + 1;
  11266. } else {
  11267. sd = pr;
  11268. }
  11269. if (sd < 0) {
  11270. qd.push(1);
  11271. more = true;
  11272. } else {
  11273. // Convert precision in number of base 10 digits to base 1e7 digits.
  11274. sd = sd / logBase + 2 | 0;
  11275. i = 0;
  11276. // divisor < 1e7
  11277. if (yL == 1) {
  11278. k = 0;
  11279. yd = yd[0];
  11280. sd++;
  11281. // k is the carry.
  11282. for (; (i < xL || k) && sd--; i++) {
  11283. t = k * base + (xd[i] || 0);
  11284. qd[i] = t / yd | 0;
  11285. k = t % yd | 0;
  11286. }
  11287. more = k || i < xL;
  11288. // divisor >= 1e7
  11289. } else {
  11290. // Normalise xd and yd so highest order digit of yd is >= base/2
  11291. k = base / (yd[0] + 1) | 0;
  11292. if (k > 1) {
  11293. yd = multiplyInteger(yd, k, base);
  11294. xd = multiplyInteger(xd, k, base);
  11295. yL = yd.length;
  11296. xL = xd.length;
  11297. }
  11298. xi = yL;
  11299. rem = xd.slice(0, yL);
  11300. remL = rem.length;
  11301. // Add zeros to make remainder as long as divisor.
  11302. for (; remL < yL;) {rem[remL++] = 0;}
  11303. yz = yd.slice();
  11304. yz.unshift(0);
  11305. yd0 = yd[0];
  11306. if (yd[1] >= base / 2) ++yd0;
  11307. do {
  11308. k = 0;
  11309. // Compare divisor and remainder.
  11310. cmp = compare(yd, rem, yL, remL);
  11311. // If divisor < remainder.
  11312. if (cmp < 0) {
  11313. // Calculate trial digit, k.
  11314. rem0 = rem[0];
  11315. if (yL != remL) rem0 = rem0 * base + (rem[1] || 0);
  11316. // k will be how many times the divisor goes into the current remainder.
  11317. k = rem0 / yd0 | 0;
  11318. // Algorithm:
  11319. // 1. product = divisor * trial digit (k)
  11320. // 2. if product > remainder: product -= divisor, k--
  11321. // 3. remainder -= product
  11322. // 4. if product was < remainder at 2:
  11323. // 5. compare new remainder and divisor
  11324. // 6. If remainder > divisor: remainder -= divisor, k++
  11325. if (k > 1) {
  11326. if (k >= base) k = base - 1;
  11327. // product = divisor * trial digit.
  11328. prod = multiplyInteger(yd, k, base);
  11329. prodL = prod.length;
  11330. remL = rem.length;
  11331. // Compare product and remainder.
  11332. cmp = compare(prod, rem, prodL, remL);
  11333. // product > remainder.
  11334. if (cmp == 1) {
  11335. k--;
  11336. // Subtract divisor from product.
  11337. subtract(prod, yL < prodL ? yz : yd, prodL, base);
  11338. }
  11339. } else {
  11340. // cmp is -1.
  11341. // If k is 0, there is no need to compare yd and rem again below, so change cmp to 1
  11342. // to avoid it. If k is 1 there is a need to compare yd and rem again below.
  11343. if (k == 0) cmp = k = 1;
  11344. prod = yd.slice();
  11345. }
  11346. prodL = prod.length;
  11347. if (prodL < remL) prod.unshift(0);
  11348. // Subtract product from remainder.
  11349. subtract(rem, prod, remL, base);
  11350. // If product was < previous remainder.
  11351. if (cmp == -1) {
  11352. remL = rem.length;
  11353. // Compare divisor and new remainder.
  11354. cmp = compare(yd, rem, yL, remL);
  11355. // If divisor < new remainder, subtract divisor from remainder.
  11356. if (cmp < 1) {
  11357. k++;
  11358. // Subtract divisor from remainder.
  11359. subtract(rem, yL < remL ? yz : yd, remL, base);
  11360. }
  11361. }
  11362. remL = rem.length;
  11363. } else if (cmp === 0) {
  11364. k++;
  11365. rem = [0];
  11366. } // if cmp === 1, k will be 0
  11367. // Add the next digit, k, to the result array.
  11368. qd[i++] = k;
  11369. // Update the remainder.
  11370. if (cmp && rem[0]) {
  11371. rem[remL++] = xd[xi] || 0;
  11372. } else {
  11373. rem = [xd[xi]];
  11374. remL = 1;
  11375. }
  11376. } while ((xi++ < xL || rem[0] !== void 0) && sd--);
  11377. more = rem[0] !== void 0;
  11378. }
  11379. // Leading zero?
  11380. if (!qd[0]) qd.shift();
  11381. }
  11382. // logBase is 1 when divide is being used for base conversion.
  11383. if (logBase == 1) {
  11384. q.e = e;
  11385. inexact = more;
  11386. } else {
  11387. // To calculate q.e, first get the number of digits of qd[0].
  11388. for (i = 1, k = qd[0]; k >= 10; k /= 10) {i++;}
  11389. q.e = i + e * logBase - 1;
  11390. finalise(q, dp ? pr + q.e + 1 : pr, rm, more);
  11391. }
  11392. return q;
  11393. };
  11394. }();
  11395. /*
  11396. * Round `x` to `sd` significant digits using rounding mode `rm`.
  11397. * Check for over/under-flow.
  11398. */
  11399. function finalise(x, sd, rm, isTruncated) {
  11400. var digits,i,j,k,rd,roundUp,w,xd,xdi,
  11401. Ctor = x.constructor;
  11402. // Don't round if sd is null or undefined.
  11403. out: if (sd != null) {
  11404. xd = x.d;
  11405. // Infinity/NaN.
  11406. if (!xd) return x;
  11407. // rd: the rounding digit, i.e. the digit after the digit that may be rounded up.
  11408. // w: the word of xd containing rd, a base 1e7 number.
  11409. // xdi: the index of w within xd.
  11410. // digits: the number of digits of w.
  11411. // i: what would be the index of rd within w if all the numbers were 7 digits long (i.e. if
  11412. // they had leading zeros)
  11413. // j: if > 0, the actual index of rd within w (if < 0, rd is a leading zero).
  11414. // Get the length of the first word of the digits array xd.
  11415. for (digits = 1, k = xd[0]; k >= 10; k /= 10) {digits++;}
  11416. i = sd - digits;
  11417. // Is the rounding digit in the first word of xd?
  11418. if (i < 0) {
  11419. i += LOG_BASE;
  11420. j = sd;
  11421. w = xd[xdi = 0];
  11422. // Get the rounding digit at index j of w.
  11423. rd = w / mathpow(10, digits - j - 1) % 10 | 0;
  11424. } else {
  11425. xdi = Math.ceil((i + 1) / LOG_BASE);
  11426. k = xd.length;
  11427. if (xdi >= k) {
  11428. if (isTruncated) {
  11429. // Needed by `naturalExponential`, `naturalLogarithm` and `squareRoot`.
  11430. for (; k++ <= xdi;) {xd.push(0);}
  11431. w = rd = 0;
  11432. digits = 1;
  11433. i %= LOG_BASE;
  11434. j = i - LOG_BASE + 1;
  11435. } else {
  11436. break out;
  11437. }
  11438. } else {
  11439. w = k = xd[xdi];
  11440. // Get the number of digits of w.
  11441. for (digits = 1; k >= 10; k /= 10) {digits++;}
  11442. // Get the index of rd within w.
  11443. i %= LOG_BASE;
  11444. // Get the index of rd within w, adjusted for leading zeros.
  11445. // The number of leading zeros of w is given by LOG_BASE - digits.
  11446. j = i - LOG_BASE + digits;
  11447. // Get the rounding digit at index j of w.
  11448. rd = j < 0 ? 0 : w / mathpow(10, digits - j - 1) % 10 | 0;
  11449. }
  11450. }
  11451. // Are there any non-zero digits after the rounding digit?
  11452. isTruncated = isTruncated || sd < 0 ||
  11453. xd[xdi + 1] !== void 0 || (j < 0 ? w : w % mathpow(10, digits - j - 1));
  11454. // The expression `w % mathpow(10, digits - j - 1)` returns all the digits of w to the right
  11455. // of the digit at (left-to-right) index j, e.g. if w is 908714 and j is 2, the expression
  11456. // will give 714.
  11457. roundUp = rm < 4 ?
  11458. (rd || isTruncated) && (rm == 0 || rm == (x.s < 0 ? 3 : 2)) :
  11459. rd > 5 || rd == 5 && (rm == 4 || isTruncated || rm == 6 &&
  11460. // Check whether the digit to the left of the rounding digit is odd.
  11461. (i > 0 ? j > 0 ? w / mathpow(10, digits - j) : 0 : xd[xdi - 1]) % 10 & 1 ||
  11462. rm == (x.s < 0 ? 8 : 7));
  11463. if (sd < 1 || !xd[0]) {
  11464. xd.length = 0;
  11465. if (roundUp) {
  11466. // Convert sd to decimal places.
  11467. sd -= x.e + 1;
  11468. // 1, 0.1, 0.01, 0.001, 0.0001 etc.
  11469. xd[0] = mathpow(10, (LOG_BASE - sd % LOG_BASE) % LOG_BASE);
  11470. x.e = -sd || 0;
  11471. } else {
  11472. // Zero.
  11473. xd[0] = x.e = 0;
  11474. }
  11475. return x;
  11476. }
  11477. // Remove excess digits.
  11478. if (i == 0) {
  11479. xd.length = xdi;
  11480. k = 1;
  11481. xdi--;
  11482. } else {
  11483. xd.length = xdi + 1;
  11484. k = mathpow(10, LOG_BASE - i);
  11485. // E.g. 56700 becomes 56000 if 7 is the rounding digit.
  11486. // j > 0 means i > number of leading zeros of w.
  11487. xd[xdi] = j > 0 ? (w / mathpow(10, digits - j) % mathpow(10, j) | 0) * k : 0;
  11488. }
  11489. if (roundUp) {
  11490. for (;;) {
  11491. // Is the digit to be rounded up in the first word of xd?
  11492. if (xdi == 0) {
  11493. // i will be the length of xd[0] before k is added.
  11494. for (i = 1, j = xd[0]; j >= 10; j /= 10) {i++;}
  11495. j = xd[0] += k;
  11496. for (k = 1; j >= 10; j /= 10) {k++;}
  11497. // if i != k the length has increased.
  11498. if (i != k) {
  11499. x.e++;
  11500. if (xd[0] == BASE) xd[0] = 1;
  11501. }
  11502. break;
  11503. } else {
  11504. xd[xdi] += k;
  11505. if (xd[xdi] != BASE) break;
  11506. xd[xdi--] = 0;
  11507. k = 1;
  11508. }
  11509. }
  11510. }
  11511. // Remove trailing zeros.
  11512. for (i = xd.length; xd[--i] === 0;) {xd.pop();}
  11513. }
  11514. if (external) {
  11515. // Overflow?
  11516. if (x.e > Ctor.maxE) {
  11517. // Infinity.
  11518. x.d = null;
  11519. x.e = NaN;
  11520. // Underflow?
  11521. } else if (x.e < Ctor.minE) {
  11522. // Zero.
  11523. x.e = 0;
  11524. x.d = [0];
  11525. // Ctor.underflow = true;
  11526. } // else Ctor.underflow = false;
  11527. }
  11528. return x;
  11529. }
  11530. function finiteToString(x, isExp, sd) {
  11531. if (!x.isFinite()) return nonFiniteToString(x);
  11532. var k,
  11533. e = x.e,
  11534. str = digitsToString(x.d),
  11535. len = str.length;
  11536. if (isExp) {
  11537. if (sd && (k = sd - len) > 0) {
  11538. str = str.charAt(0) + '.' + str.slice(1) + getZeroString(k);
  11539. } else if (len > 1) {
  11540. str = str.charAt(0) + '.' + str.slice(1);
  11541. }
  11542. str = str + (x.e < 0 ? 'e' : 'e+') + x.e;
  11543. } else if (e < 0) {
  11544. str = '0.' + getZeroString(-e - 1) + str;
  11545. if (sd && (k = sd - len) > 0) str += getZeroString(k);
  11546. } else if (e >= len) {
  11547. str += getZeroString(e + 1 - len);
  11548. if (sd && (k = sd - e - 1) > 0) str = str + '.' + getZeroString(k);
  11549. } else {
  11550. if ((k = e + 1) < len) str = str.slice(0, k) + '.' + str.slice(k);
  11551. if (sd && (k = sd - len) > 0) {
  11552. if (e + 1 === len) str += '.';
  11553. str += getZeroString(k);
  11554. }
  11555. }
  11556. return str;
  11557. }
  11558. // Calculate the base 10 exponent from the base 1e7 exponent.
  11559. function getBase10Exponent(digits, e) {
  11560. var w = digits[0];
  11561. // Add the number of digits of the first word of the digits array.
  11562. for (e *= LOG_BASE; w >= 10; w /= 10) {e++;}
  11563. return e;
  11564. }
  11565. function getLn10(Ctor, sd, pr) {
  11566. if (sd > LN10_PRECISION) {
  11567. // Reset global state in case the exception is caught.
  11568. external = true;
  11569. if (pr) Ctor.precision = pr;
  11570. throw Error(precisionLimitExceeded);
  11571. }
  11572. return finalise(new Ctor(LN10), sd, 1, true);
  11573. }
  11574. function getPi(Ctor, sd, rm) {
  11575. if (sd > PI_PRECISION) throw Error(precisionLimitExceeded);
  11576. return finalise(new Ctor(PI), sd, rm, true);
  11577. }
  11578. function getPrecision(digits) {
  11579. var w = digits.length - 1,
  11580. len = w * LOG_BASE + 1;
  11581. w = digits[w];
  11582. // If non-zero...
  11583. if (w) {
  11584. // Subtract the number of trailing zeros of the last word.
  11585. for (; w % 10 == 0; w /= 10) {len--;}
  11586. // Add the number of digits of the first word.
  11587. for (w = digits[0]; w >= 10; w /= 10) {len++;}
  11588. }
  11589. return len;
  11590. }
  11591. function getZeroString(k) {
  11592. var zs = '';
  11593. for (; k--;) {zs += '0';}
  11594. return zs;
  11595. }
  11596. /*
  11597. * Return a new Decimal whose value is the value of Decimal `x` to the power `n`, where `n` is an
  11598. * integer of type number.
  11599. *
  11600. * Implements 'exponentiation by squaring'. Called by `pow` and `parseOther`.
  11601. *
  11602. */
  11603. function intPow(Ctor, x, n, pr) {
  11604. var isTruncated,
  11605. r = new Ctor(1),
  11606. // Max n of 9007199254740991 takes 53 loop iterations.
  11607. // Maximum digits array length; leaves [28, 34] guard digits.
  11608. k = Math.ceil(pr / LOG_BASE + 4);
  11609. external = false;
  11610. for (;;) {
  11611. if (n % 2) {
  11612. r = r.times(x);
  11613. if (truncate(r.d, k)) isTruncated = true;
  11614. }
  11615. n = mathfloor(n / 2);
  11616. if (n === 0) {
  11617. // To ensure correct rounding when r.d is truncated, increment the last word if it is zero.
  11618. n = r.d.length - 1;
  11619. if (isTruncated && r.d[n] === 0) ++r.d[n];
  11620. break;
  11621. }
  11622. x = x.times(x);
  11623. truncate(x.d, k);
  11624. }
  11625. external = true;
  11626. return r;
  11627. }
  11628. function isOdd(n) {
  11629. return n.d[n.d.length - 1] & 1;
  11630. }
  11631. /*
  11632. * Handle `max` and `min`. `ltgt` is 'lt' or 'gt'.
  11633. */
  11634. function maxOrMin(Ctor, args, ltgt) {
  11635. var y,
  11636. x = new Ctor(args[0]),
  11637. i = 0;
  11638. for (; ++i < args.length;) {
  11639. y = new Ctor(args[i]);
  11640. if (!y.s) {
  11641. x = y;
  11642. break;
  11643. } else if (x[ltgt](y)) {
  11644. x = y;
  11645. }
  11646. }
  11647. return x;
  11648. }
  11649. /*
  11650. * Return a new Decimal whose value is the natural exponential of `x` rounded to `sd` significant
  11651. * digits.
  11652. *
  11653. * Taylor/Maclaurin series.
  11654. *
  11655. * exp(x) = x^0/0! + x^1/1! + x^2/2! + x^3/3! + ...
  11656. *
  11657. * Argument reduction:
  11658. * Repeat x = x / 32, k += 5, until |x| < 0.1
  11659. * exp(x) = exp(x / 2^k)^(2^k)
  11660. *
  11661. * Previously, the argument was initially reduced by
  11662. * exp(x) = exp(r) * 10^k where r = x - k * ln10, k = floor(x / ln10)
  11663. * to first put r in the range [0, ln10], before dividing by 32 until |x| < 0.1, but this was
  11664. * found to be slower than just dividing repeatedly by 32 as above.
  11665. *
  11666. * Max integer argument: exp('20723265836946413') = 6.3e+9000000000000000
  11667. * Min integer argument: exp('-20723265836946411') = 1.2e-9000000000000000
  11668. * (Math object integer min/max: Math.exp(709) = 8.2e+307, Math.exp(-745) = 5e-324)
  11669. *
  11670. * exp(Infinity) = Infinity
  11671. * exp(-Infinity) = 0
  11672. * exp(NaN) = NaN
  11673. * exp(±0) = 1
  11674. *
  11675. * exp(x) is non-terminating for any finite, non-zero x.
  11676. *
  11677. * The result will always be correctly rounded.
  11678. *
  11679. */
  11680. function naturalExponential(x, sd) {
  11681. var denominator,guard,j,pow,sum,t,wpr,
  11682. rep = 0,
  11683. i = 0,
  11684. k = 0,
  11685. Ctor = x.constructor,
  11686. rm = Ctor.rounding,
  11687. pr = Ctor.precision;
  11688. // 0/NaN/Infinity?
  11689. if (!x.d || !x.d[0] || x.e > 17) {
  11690. return new Ctor(x.d ?
  11691. !x.d[0] ? 1 : x.s < 0 ? 0 : 1 / 0 :
  11692. x.s ? x.s < 0 ? 0 : x : 0 / 0);
  11693. }
  11694. if (sd == null) {
  11695. external = false;
  11696. wpr = pr;
  11697. } else {
  11698. wpr = sd;
  11699. }
  11700. t = new Ctor(0.03125);
  11701. // while abs(x) >= 0.1
  11702. while (x.e > -2) {
  11703. // x = x / 2^5
  11704. x = x.times(t);
  11705. k += 5;
  11706. }
  11707. // Use 2 * log10(2^k) + 5 (empirically derived) to estimate the increase in precision
  11708. // necessary to ensure the first 4 rounding digits are correct.
  11709. guard = Math.log(mathpow(2, k)) / Math.LN10 * 2 + 5 | 0;
  11710. wpr += guard;
  11711. denominator = pow = sum = new Ctor(1);
  11712. Ctor.precision = wpr;
  11713. for (;;) {
  11714. pow = finalise(pow.times(x), wpr, 1);
  11715. denominator = denominator.times(++i);
  11716. t = sum.plus(divide(pow, denominator, wpr, 1));
  11717. if (digitsToString(t.d).slice(0, wpr) === digitsToString(sum.d).slice(0, wpr)) {
  11718. j = k;
  11719. while (j--) {sum = finalise(sum.times(sum), wpr, 1);}
  11720. // Check to see if the first 4 rounding digits are [49]999.
  11721. // If so, repeat the summation with a higher precision, otherwise
  11722. // e.g. with precision: 18, rounding: 1
  11723. // exp(18.404272462595034083567793919843761) = 98372560.1229999999 (should be 98372560.123)
  11724. // `wpr - guard` is the index of first rounding digit.
  11725. if (sd == null) {
  11726. if (rep < 3 && checkRoundingDigits(sum.d, wpr - guard, rm, rep)) {
  11727. Ctor.precision = wpr += 10;
  11728. denominator = pow = t = new Ctor(1);
  11729. i = 0;
  11730. rep++;
  11731. } else {
  11732. return finalise(sum, Ctor.precision = pr, rm, external = true);
  11733. }
  11734. } else {
  11735. Ctor.precision = pr;
  11736. return sum;
  11737. }
  11738. }
  11739. sum = t;
  11740. }
  11741. }
  11742. /*
  11743. * Return a new Decimal whose value is the natural logarithm of `x` rounded to `sd` significant
  11744. * digits.
  11745. *
  11746. * ln(-n) = NaN
  11747. * ln(0) = -Infinity
  11748. * ln(-0) = -Infinity
  11749. * ln(1) = 0
  11750. * ln(Infinity) = Infinity
  11751. * ln(-Infinity) = NaN
  11752. * ln(NaN) = NaN
  11753. *
  11754. * ln(n) (n != 1) is non-terminating.
  11755. *
  11756. */
  11757. function naturalLogarithm(y, sd) {
  11758. var c,c0,denominator,e,numerator,rep,sum,t,wpr,x1,x2,
  11759. n = 1,
  11760. guard = 10,
  11761. x = y,
  11762. xd = x.d,
  11763. Ctor = x.constructor,
  11764. rm = Ctor.rounding,
  11765. pr = Ctor.precision;
  11766. // Is x negative or Infinity, NaN, 0 or 1?
  11767. if (x.s < 0 || !xd || !xd[0] || !x.e && xd[0] == 1 && xd.length == 1) {
  11768. return new Ctor(xd && !xd[0] ? -1 / 0 : x.s != 1 ? NaN : xd ? 0 : x);
  11769. }
  11770. if (sd == null) {
  11771. external = false;
  11772. wpr = pr;
  11773. } else {
  11774. wpr = sd;
  11775. }
  11776. Ctor.precision = wpr += guard;
  11777. c = digitsToString(xd);
  11778. c0 = c.charAt(0);
  11779. if (Math.abs(e = x.e) < 1.5e15) {
  11780. // Argument reduction.
  11781. // The series converges faster the closer the argument is to 1, so using
  11782. // ln(a^b) = b * ln(a), ln(a) = ln(a^b) / b
  11783. // multiply the argument by itself until the leading digits of the significand are 7, 8, 9,
  11784. // 10, 11, 12 or 13, recording the number of multiplications so the sum of the series can
  11785. // later be divided by this number, then separate out the power of 10 using
  11786. // ln(a*10^b) = ln(a) + b*ln(10).
  11787. // max n is 21 (gives 0.9, 1.0 or 1.1) (9e15 / 21 = 4.2e14).
  11788. //while (c0 < 9 && c0 != 1 || c0 == 1 && c.charAt(1) > 1) {
  11789. // max n is 6 (gives 0.7 - 1.3)
  11790. while (c0 < 7 && c0 != 1 || c0 == 1 && c.charAt(1) > 3) {
  11791. x = x.times(y);
  11792. c = digitsToString(x.d);
  11793. c0 = c.charAt(0);
  11794. n++;
  11795. }
  11796. e = x.e;
  11797. if (c0 > 1) {
  11798. x = new Ctor('0.' + c);
  11799. e++;
  11800. } else {
  11801. x = new Ctor(c0 + '.' + c.slice(1));
  11802. }
  11803. } else {
  11804. // The argument reduction method above may result in overflow if the argument y is a massive
  11805. // number with exponent >= 1500000000000000 (9e15 / 6 = 1.5e15), so instead recall this
  11806. // function using ln(x*10^e) = ln(x) + e*ln(10).
  11807. t = getLn10(Ctor, wpr + 2, pr).times(e + '');
  11808. x = naturalLogarithm(new Ctor(c0 + '.' + c.slice(1)), wpr - guard).plus(t);
  11809. Ctor.precision = pr;
  11810. return sd == null ? finalise(x, pr, rm, external = true) : x;
  11811. }
  11812. // x1 is x reduced to a value near 1.
  11813. x1 = x;
  11814. // Taylor series.
  11815. // ln(y) = ln((1 + x)/(1 - x)) = 2(x + x^3/3 + x^5/5 + x^7/7 + ...)
  11816. // where x = (y - 1)/(y + 1) (|x| < 1)
  11817. sum = numerator = x = divide(x.minus(1), x.plus(1), wpr, 1);
  11818. x2 = finalise(x.times(x), wpr, 1);
  11819. denominator = 3;
  11820. for (;;) {
  11821. numerator = finalise(numerator.times(x2), wpr, 1);
  11822. t = sum.plus(divide(numerator, new Ctor(denominator), wpr, 1));
  11823. if (digitsToString(t.d).slice(0, wpr) === digitsToString(sum.d).slice(0, wpr)) {
  11824. sum = sum.times(2);
  11825. // Reverse the argument reduction. Check that e is not 0 because, besides preventing an
  11826. // unnecessary calculation, -0 + 0 = +0 and to ensure correct rounding -0 needs to stay -0.
  11827. if (e !== 0) sum = sum.plus(getLn10(Ctor, wpr + 2, pr).times(e + ''));
  11828. sum = divide(sum, new Ctor(n), wpr, 1);
  11829. // Is rm > 3 and the first 4 rounding digits 4999, or rm < 4 (or the summation has
  11830. // been repeated previously) and the first 4 rounding digits 9999?
  11831. // If so, restart the summation with a higher precision, otherwise
  11832. // e.g. with precision: 12, rounding: 1
  11833. // ln(135520028.6126091714265381533) = 18.7246299999 when it should be 18.72463.
  11834. // `wpr - guard` is the index of first rounding digit.
  11835. if (sd == null) {
  11836. if (checkRoundingDigits(sum.d, wpr - guard, rm, rep)) {
  11837. Ctor.precision = wpr += guard;
  11838. t = numerator = x = divide(x1.minus(1), x1.plus(1), wpr, 1);
  11839. x2 = finalise(x.times(x), wpr, 1);
  11840. denominator = rep = 1;
  11841. } else {
  11842. return finalise(sum, Ctor.precision = pr, rm, external = true);
  11843. }
  11844. } else {
  11845. Ctor.precision = pr;
  11846. return sum;
  11847. }
  11848. }
  11849. sum = t;
  11850. denominator += 2;
  11851. }
  11852. }
  11853. // ±Infinity, NaN.
  11854. function nonFiniteToString(x) {
  11855. // Unsigned.
  11856. return String(x.s * x.s / 0);
  11857. }
  11858. /*
  11859. * Parse the value of a new Decimal `x` from string `str`.
  11860. */
  11861. function parseDecimal(x, str) {
  11862. var e, i, len;
  11863. // Decimal point?
  11864. if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');
  11865. // Exponential form?
  11866. if ((i = str.search(/e/i)) > 0) {
  11867. // Determine exponent.
  11868. if (e < 0) e = i;
  11869. e += +str.slice(i + 1);
  11870. str = str.substring(0, i);
  11871. } else if (e < 0) {
  11872. // Integer.
  11873. e = str.length;
  11874. }
  11875. // Determine leading zeros.
  11876. for (i = 0; str.charCodeAt(i) === 48; i++) {;}
  11877. // Determine trailing zeros.
  11878. for (len = str.length; str.charCodeAt(len - 1) === 48; --len) {;}
  11879. str = str.slice(i, len);
  11880. if (str) {
  11881. len -= i;
  11882. x.e = e = e - i - 1;
  11883. x.d = [];
  11884. // Transform base
  11885. // e is the base 10 exponent.
  11886. // i is where to slice str to get the first word of the digits array.
  11887. i = (e + 1) % LOG_BASE;
  11888. if (e < 0) i += LOG_BASE;
  11889. if (i < len) {
  11890. if (i) x.d.push(+str.slice(0, i));
  11891. for (len -= LOG_BASE; i < len;) {x.d.push(+str.slice(i, i += LOG_BASE));}
  11892. str = str.slice(i);
  11893. i = LOG_BASE - str.length;
  11894. } else {
  11895. i -= len;
  11896. }
  11897. for (; i--;) {str += '0';}
  11898. x.d.push(+str);
  11899. if (external) {
  11900. // Overflow?
  11901. if (x.e > x.constructor.maxE) {
  11902. // Infinity.
  11903. x.d = null;
  11904. x.e = NaN;
  11905. // Underflow?
  11906. } else if (x.e < x.constructor.minE) {
  11907. // Zero.
  11908. x.e = 0;
  11909. x.d = [0];
  11910. // x.constructor.underflow = true;
  11911. } // else x.constructor.underflow = false;
  11912. }
  11913. } else {
  11914. // Zero.
  11915. x.e = 0;
  11916. x.d = [0];
  11917. }
  11918. return x;
  11919. }
  11920. /*
  11921. * Parse the value of a new Decimal `x` from a string `str`, which is not a decimal value.
  11922. */
  11923. function parseOther(x, str) {
  11924. var base, Ctor, divisor, i, isFloat, len, p, xd, xe;
  11925. if (str.indexOf('_') > -1) {
  11926. str = str.replace(/(\d)_(?=\d)/g, '$1');
  11927. if (isDecimal.test(str)) return parseDecimal(x, str);
  11928. } else if (str === 'Infinity' || str === 'NaN') {
  11929. if (!+str) x.s = NaN;
  11930. x.e = NaN;
  11931. x.d = null;
  11932. return x;
  11933. }
  11934. if (isHex.test(str)) {
  11935. base = 16;
  11936. str = str.toLowerCase();
  11937. } else if (isBinary.test(str)) {
  11938. base = 2;
  11939. } else if (isOctal.test(str)) {
  11940. base = 8;
  11941. } else {
  11942. throw Error(invalidArgument + str);
  11943. }
  11944. // Is there a binary exponent part?
  11945. i = str.search(/p/i);
  11946. if (i > 0) {
  11947. p = +str.slice(i + 1);
  11948. str = str.substring(2, i);
  11949. } else {
  11950. str = str.slice(2);
  11951. }
  11952. // Convert `str` as an integer then divide the result by `base` raised to a power such that the
  11953. // fraction part will be restored.
  11954. i = str.indexOf('.');
  11955. isFloat = i >= 0;
  11956. Ctor = x.constructor;
  11957. if (isFloat) {
  11958. str = str.replace('.', '');
  11959. len = str.length;
  11960. i = len - i;
  11961. // log[10](16) = 1.2041... , log[10](88) = 1.9444....
  11962. divisor = intPow(Ctor, new Ctor(base), i, i * 2);
  11963. }
  11964. xd = convertBase(str, base, BASE);
  11965. xe = xd.length - 1;
  11966. // Remove trailing zeros.
  11967. for (i = xe; xd[i] === 0; --i) {xd.pop();}
  11968. if (i < 0) return new Ctor(x.s * 0);
  11969. x.e = getBase10Exponent(xd, xe);
  11970. x.d = xd;
  11971. external = false;
  11972. // At what precision to perform the division to ensure exact conversion?
  11973. // maxDecimalIntegerPartDigitCount = ceil(log[10](b) * otherBaseIntegerPartDigitCount)
  11974. // log[10](2) = 0.30103, log[10](8) = 0.90309, log[10](16) = 1.20412
  11975. // E.g. ceil(1.2 * 3) = 4, so up to 4 decimal digits are needed to represent 3 hex int digits.
  11976. // maxDecimalFractionPartDigitCount = {Hex:4|Oct:3|Bin:1} * otherBaseFractionPartDigitCount
  11977. // Therefore using 4 * the number of digits of str will always be enough.
  11978. if (isFloat) x = divide(x, divisor, len * 4);
  11979. // Multiply by the binary exponent part if present.
  11980. if (p) x = x.times(Math.abs(p) < 54 ? mathpow(2, p) : Decimal.pow(2, p));
  11981. external = true;
  11982. return x;
  11983. }
  11984. /*
  11985. * sin(x) = x - x^3/3! + x^5/5! - ...
  11986. * |x| < pi/2
  11987. *
  11988. */
  11989. function sine(Ctor, x) {
  11990. var k,
  11991. len = x.d.length;
  11992. if (len < 3) {
  11993. return x.isZero() ? x : taylorSeries(Ctor, 2, x, x);
  11994. }
  11995. // Argument reduction: sin(5x) = 16*sin^5(x) - 20*sin^3(x) + 5*sin(x)
  11996. // i.e. sin(x) = 16*sin^5(x/5) - 20*sin^3(x/5) + 5*sin(x/5)
  11997. // and sin(x) = sin(x/5)(5 + sin^2(x/5)(16sin^2(x/5) - 20))
  11998. // Estimate the optimum number of times to use the argument reduction.
  11999. k = 1.4 * Math.sqrt(len);
  12000. k = k > 16 ? 16 : k | 0;
  12001. x = x.times(1 / tinyPow(5, k));
  12002. x = taylorSeries(Ctor, 2, x, x);
  12003. // Reverse argument reduction
  12004. var sin2_x,
  12005. d5 = new Ctor(5),
  12006. d16 = new Ctor(16),
  12007. d20 = new Ctor(20);
  12008. for (; k--;) {
  12009. sin2_x = x.times(x);
  12010. x = x.times(d5.plus(sin2_x.times(d16.times(sin2_x).minus(d20))));
  12011. }
  12012. return x;
  12013. }
  12014. // Calculate Taylor series for `cos`, `cosh`, `sin` and `sinh`.
  12015. function taylorSeries(Ctor, n, x, y, isHyperbolic) {
  12016. var j,t,u,x2,
  12017. i = 1,
  12018. pr = Ctor.precision,
  12019. k = Math.ceil(pr / LOG_BASE);
  12020. external = false;
  12021. x2 = x.times(x);
  12022. u = new Ctor(y);
  12023. for (;;) {
  12024. t = divide(u.times(x2), new Ctor(n++ * n++), pr, 1);
  12025. u = isHyperbolic ? y.plus(t) : y.minus(t);
  12026. y = divide(t.times(x2), new Ctor(n++ * n++), pr, 1);
  12027. t = u.plus(y);
  12028. if (t.d[k] !== void 0) {
  12029. for (j = k; t.d[j] === u.d[j] && j--;) {;}
  12030. if (j == -1) break;
  12031. }
  12032. j = u;
  12033. u = y;
  12034. y = t;
  12035. t = j;
  12036. i++;
  12037. }
  12038. external = true;
  12039. t.d.length = k + 1;
  12040. return t;
  12041. }
  12042. // Exponent e must be positive and non-zero.
  12043. function tinyPow(b, e) {
  12044. var n = b;
  12045. while (--e) {n *= b;}
  12046. return n;
  12047. }
  12048. // Return the absolute value of `x` reduced to less than or equal to half pi.
  12049. function toLessThanHalfPi(Ctor, x) {
  12050. var t,
  12051. isNeg = x.s < 0,
  12052. pi = getPi(Ctor, Ctor.precision, 1),
  12053. halfPi = pi.times(0.5);
  12054. x = x.abs();
  12055. if (x.lte(halfPi)) {
  12056. quadrant = isNeg ? 4 : 1;
  12057. return x;
  12058. }
  12059. t = x.divToInt(pi);
  12060. if (t.isZero()) {
  12061. quadrant = isNeg ? 3 : 2;
  12062. } else {
  12063. x = x.minus(t.times(pi));
  12064. // 0 <= x < pi
  12065. if (x.lte(halfPi)) {
  12066. quadrant = isOdd(t) ? isNeg ? 2 : 3 : isNeg ? 4 : 1;
  12067. return x;
  12068. }
  12069. quadrant = isOdd(t) ? isNeg ? 1 : 4 : isNeg ? 3 : 2;
  12070. }
  12071. return x.minus(pi).abs();
  12072. }
  12073. /*
  12074. * Return the value of Decimal `x` as a string in base `baseOut`.
  12075. *
  12076. * If the optional `sd` argument is present include a binary exponent suffix.
  12077. */
  12078. function toStringBinary(x, baseOut, sd, rm) {
  12079. var base,e,i,k,len,roundUp,str,xd,y,
  12080. Ctor = x.constructor,
  12081. isExp = sd !== void 0;
  12082. if (isExp) {
  12083. checkInt32(sd, 1, MAX_DIGITS);
  12084. if (rm === void 0) rm = Ctor.rounding;else
  12085. checkInt32(rm, 0, 8);
  12086. } else {
  12087. sd = Ctor.precision;
  12088. rm = Ctor.rounding;
  12089. }
  12090. if (!x.isFinite()) {
  12091. str = nonFiniteToString(x);
  12092. } else {
  12093. str = finiteToString(x);
  12094. i = str.indexOf('.');
  12095. // Use exponential notation according to `toExpPos` and `toExpNeg`? No, but if required:
  12096. // maxBinaryExponent = floor((decimalExponent + 1) * log[2](10))
  12097. // minBinaryExponent = floor(decimalExponent * log[2](10))
  12098. // log[2](10) = 3.321928094887362347870319429489390175864
  12099. if (isExp) {
  12100. base = 2;
  12101. if (baseOut == 16) {
  12102. sd = sd * 4 - 3;
  12103. } else if (baseOut == 8) {
  12104. sd = sd * 3 - 2;
  12105. }
  12106. } else {
  12107. base = baseOut;
  12108. }
  12109. // Convert the number as an integer then divide the result by its base raised to a power such
  12110. // that the fraction part will be restored.
  12111. // Non-integer.
  12112. if (i >= 0) {
  12113. str = str.replace('.', '');
  12114. y = new Ctor(1);
  12115. y.e = str.length - i;
  12116. y.d = convertBase(finiteToString(y), 10, base);
  12117. y.e = y.d.length;
  12118. }
  12119. xd = convertBase(str, 10, base);
  12120. e = len = xd.length;
  12121. // Remove trailing zeros.
  12122. for (; xd[--len] == 0;) {xd.pop();}
  12123. if (!xd[0]) {
  12124. str = isExp ? '0p+0' : '0';
  12125. } else {
  12126. if (i < 0) {
  12127. e--;
  12128. } else {
  12129. x = new Ctor(x);
  12130. x.d = xd;
  12131. x.e = e;
  12132. x = divide(x, y, sd, rm, 0, base);
  12133. xd = x.d;
  12134. e = x.e;
  12135. roundUp = inexact;
  12136. }
  12137. // The rounding digit, i.e. the digit after the digit that may be rounded up.
  12138. i = xd[sd];
  12139. k = base / 2;
  12140. roundUp = roundUp || xd[sd + 1] !== void 0;
  12141. roundUp = rm < 4 ?
  12142. (i !== void 0 || roundUp) && (rm === 0 || rm === (x.s < 0 ? 3 : 2)) :
  12143. i > k || i === k && (rm === 4 || roundUp || rm === 6 && xd[sd - 1] & 1 ||
  12144. rm === (x.s < 0 ? 8 : 7));
  12145. xd.length = sd;
  12146. if (roundUp) {
  12147. // Rounding up may mean the previous digit has to be rounded up and so on.
  12148. for (; ++xd[--sd] > base - 1;) {
  12149. xd[sd] = 0;
  12150. if (!sd) {
  12151. ++e;
  12152. xd.unshift(1);
  12153. }
  12154. }
  12155. }
  12156. // Determine trailing zeros.
  12157. for (len = xd.length; !xd[len - 1]; --len) {;}
  12158. // E.g. [4, 11, 15] becomes 4bf.
  12159. for (i = 0, str = ''; i < len; i++) {str += NUMERALS.charAt(xd[i]);}
  12160. // Add binary exponent suffix?
  12161. if (isExp) {
  12162. if (len > 1) {
  12163. if (baseOut == 16 || baseOut == 8) {
  12164. i = baseOut == 16 ? 4 : 3;
  12165. for (--len; len % i; len++) {str += '0';}
  12166. xd = convertBase(str, base, baseOut);
  12167. for (len = xd.length; !xd[len - 1]; --len) {;}
  12168. // xd[0] will always be be 1
  12169. for (i = 1, str = '1.'; i < len; i++) {str += NUMERALS.charAt(xd[i]);}
  12170. } else {
  12171. str = str.charAt(0) + '.' + str.slice(1);
  12172. }
  12173. }
  12174. str = str + (e < 0 ? 'p' : 'p+') + e;
  12175. } else if (e < 0) {
  12176. for (; ++e;) {str = '0' + str;}
  12177. str = '0.' + str;
  12178. } else {
  12179. if (++e > len) for (e -= len; e--;) {str += '0';} else
  12180. if (e < len) str = str.slice(0, e) + '.' + str.slice(e);
  12181. }
  12182. }
  12183. str = (baseOut == 16 ? '0x' : baseOut == 2 ? '0b' : baseOut == 8 ? '0o' : '') + str;
  12184. }
  12185. return x.s < 0 ? '-' + str : str;
  12186. }
  12187. // Does not strip trailing zeros.
  12188. function truncate(arr, len) {
  12189. if (arr.length > len) {
  12190. arr.length = len;
  12191. return true;
  12192. }
  12193. }
  12194. // Decimal methods
  12195. /*
  12196. * abs
  12197. * acos
  12198. * acosh
  12199. * add
  12200. * asin
  12201. * asinh
  12202. * atan
  12203. * atanh
  12204. * atan2
  12205. * cbrt
  12206. * ceil
  12207. * clamp
  12208. * clone
  12209. * config
  12210. * cos
  12211. * cosh
  12212. * div
  12213. * exp
  12214. * floor
  12215. * hypot
  12216. * ln
  12217. * log
  12218. * log2
  12219. * log10
  12220. * max
  12221. * min
  12222. * mod
  12223. * mul
  12224. * pow
  12225. * random
  12226. * round
  12227. * set
  12228. * sign
  12229. * sin
  12230. * sinh
  12231. * sqrt
  12232. * sub
  12233. * sum
  12234. * tan
  12235. * tanh
  12236. * trunc
  12237. */
  12238. /*
  12239. * Return a new Decimal whose value is the absolute value of `x`.
  12240. *
  12241. * x {number|string|Decimal}
  12242. *
  12243. */
  12244. function abs(x) {
  12245. return new this(x).abs();
  12246. }
  12247. /*
  12248. * Return a new Decimal whose value is the arccosine in radians of `x`.
  12249. *
  12250. * x {number|string|Decimal}
  12251. *
  12252. */
  12253. function acos(x) {
  12254. return new this(x).acos();
  12255. }
  12256. /*
  12257. * Return a new Decimal whose value is the inverse of the hyperbolic cosine of `x`, rounded to
  12258. * `precision` significant digits using rounding mode `rounding`.
  12259. *
  12260. * x {number|string|Decimal} A value in radians.
  12261. *
  12262. */
  12263. function acosh(x) {
  12264. return new this(x).acosh();
  12265. }
  12266. /*
  12267. * Return a new Decimal whose value is the sum of `x` and `y`, rounded to `precision` significant
  12268. * digits using rounding mode `rounding`.
  12269. *
  12270. * x {number|string|Decimal}
  12271. * y {number|string|Decimal}
  12272. *
  12273. */
  12274. function add(x, y) {
  12275. return new this(x).plus(y);
  12276. }
  12277. /*
  12278. * Return a new Decimal whose value is the arcsine in radians of `x`, rounded to `precision`
  12279. * significant digits using rounding mode `rounding`.
  12280. *
  12281. * x {number|string|Decimal}
  12282. *
  12283. */
  12284. function asin(x) {
  12285. return new this(x).asin();
  12286. }
  12287. /*
  12288. * Return a new Decimal whose value is the inverse of the hyperbolic sine of `x`, rounded to
  12289. * `precision` significant digits using rounding mode `rounding`.
  12290. *
  12291. * x {number|string|Decimal} A value in radians.
  12292. *
  12293. */
  12294. function asinh(x) {
  12295. return new this(x).asinh();
  12296. }
  12297. /*
  12298. * Return a new Decimal whose value is the arctangent in radians of `x`, rounded to `precision`
  12299. * significant digits using rounding mode `rounding`.
  12300. *
  12301. * x {number|string|Decimal}
  12302. *
  12303. */
  12304. function atan(x) {
  12305. return new this(x).atan();
  12306. }
  12307. /*
  12308. * Return a new Decimal whose value is the inverse of the hyperbolic tangent of `x`, rounded to
  12309. * `precision` significant digits using rounding mode `rounding`.
  12310. *
  12311. * x {number|string|Decimal} A value in radians.
  12312. *
  12313. */
  12314. function atanh(x) {
  12315. return new this(x).atanh();
  12316. }
  12317. /*
  12318. * Return a new Decimal whose value is the arctangent in radians of `y/x` in the range -pi to pi
  12319. * (inclusive), rounded to `precision` significant digits using rounding mode `rounding`.
  12320. *
  12321. * Domain: [-Infinity, Infinity]
  12322. * Range: [-pi, pi]
  12323. *
  12324. * y {number|string|Decimal} The y-coordinate.
  12325. * x {number|string|Decimal} The x-coordinate.
  12326. *
  12327. * atan2(±0, -0) = ±pi
  12328. * atan2(±0, +0) = ±0
  12329. * atan2(±0, -x) = ±pi for x > 0
  12330. * atan2(±0, x) = ±0 for x > 0
  12331. * atan2(-y, ±0) = -pi/2 for y > 0
  12332. * atan2(y, ±0) = pi/2 for y > 0
  12333. * atan2(±y, -Infinity) = ±pi for finite y > 0
  12334. * atan2(±y, +Infinity) = ±0 for finite y > 0
  12335. * atan2(±Infinity, x) = ±pi/2 for finite x
  12336. * atan2(±Infinity, -Infinity) = ±3*pi/4
  12337. * atan2(±Infinity, +Infinity) = ±pi/4
  12338. * atan2(NaN, x) = NaN
  12339. * atan2(y, NaN) = NaN
  12340. *
  12341. */
  12342. function atan2(y, x) {
  12343. y = new this(y);
  12344. x = new this(x);
  12345. var r,
  12346. pr = this.precision,
  12347. rm = this.rounding,
  12348. wpr = pr + 4;
  12349. // Either NaN
  12350. if (!y.s || !x.s) {
  12351. r = new this(NaN);
  12352. // Both ±Infinity
  12353. } else if (!y.d && !x.d) {
  12354. r = getPi(this, wpr, 1).times(x.s > 0 ? 0.25 : 0.75);
  12355. r.s = y.s;
  12356. // x is ±Infinity or y is ±0
  12357. } else if (!x.d || y.isZero()) {
  12358. r = x.s < 0 ? getPi(this, pr, rm) : new this(0);
  12359. r.s = y.s;
  12360. // y is ±Infinity or x is ±0
  12361. } else if (!y.d || x.isZero()) {
  12362. r = getPi(this, wpr, 1).times(0.5);
  12363. r.s = y.s;
  12364. // Both non-zero and finite
  12365. } else if (x.s < 0) {
  12366. this.precision = wpr;
  12367. this.rounding = 1;
  12368. r = this.atan(divide(y, x, wpr, 1));
  12369. x = getPi(this, wpr, 1);
  12370. this.precision = pr;
  12371. this.rounding = rm;
  12372. r = y.s < 0 ? r.minus(x) : r.plus(x);
  12373. } else {
  12374. r = this.atan(divide(y, x, wpr, 1));
  12375. }
  12376. return r;
  12377. }
  12378. /*
  12379. * Return a new Decimal whose value is the cube root of `x`, rounded to `precision` significant
  12380. * digits using rounding mode `rounding`.
  12381. *
  12382. * x {number|string|Decimal}
  12383. *
  12384. */
  12385. function cbrt(x) {
  12386. return new this(x).cbrt();
  12387. }
  12388. /*
  12389. * Return a new Decimal whose value is `x` rounded to an integer using `ROUND_CEIL`.
  12390. *
  12391. * x {number|string|Decimal}
  12392. *
  12393. */
  12394. function ceil(x) {
  12395. return finalise(x = new this(x), x.e + 1, 2);
  12396. }
  12397. /*
  12398. * Return a new Decimal whose value is `x` clamped to the range delineated by `min` and `max`.
  12399. *
  12400. * x {number|string|Decimal}
  12401. * min {number|string|Decimal}
  12402. * max {number|string|Decimal}
  12403. *
  12404. */
  12405. function clamp(x, min, max) {
  12406. return new this(x).clamp(min, max);
  12407. }
  12408. /*
  12409. * Configure global settings for a Decimal constructor.
  12410. *
  12411. * `obj` is an object with one or more of the following properties,
  12412. *
  12413. * precision {number}
  12414. * rounding {number}
  12415. * toExpNeg {number}
  12416. * toExpPos {number}
  12417. * maxE {number}
  12418. * minE {number}
  12419. * modulo {number}
  12420. * crypto {boolean|number}
  12421. * defaults {true}
  12422. *
  12423. * E.g. Decimal.config({ precision: 20, rounding: 4 })
  12424. *
  12425. */
  12426. function config(obj) {
  12427. if (!obj || typeof obj !== 'object') throw Error(decimalError + 'Object expected');
  12428. var i,p,v,
  12429. useDefaults = obj.defaults === true,
  12430. ps = [
  12431. 'precision', 1, MAX_DIGITS,
  12432. 'rounding', 0, 8,
  12433. 'toExpNeg', -EXP_LIMIT, 0,
  12434. 'toExpPos', 0, EXP_LIMIT,
  12435. 'maxE', 0, EXP_LIMIT,
  12436. 'minE', -EXP_LIMIT, 0,
  12437. 'modulo', 0, 9];
  12438. for (i = 0; i < ps.length; i += 3) {
  12439. if (p = ps[i], useDefaults) this[p] = DEFAULTS[p];
  12440. if ((v = obj[p]) !== void 0) {
  12441. if (mathfloor(v) === v && v >= ps[i + 1] && v <= ps[i + 2]) this[p] = v;else
  12442. throw Error(invalidArgument + p + ': ' + v);
  12443. }
  12444. }
  12445. if (p = 'crypto', useDefaults) this[p] = DEFAULTS[p];
  12446. if ((v = obj[p]) !== void 0) {
  12447. if (v === true || v === false || v === 0 || v === 1) {
  12448. if (v) {
  12449. if (typeof crypto != 'undefined' && crypto && (
  12450. crypto.getRandomValues || crypto.randomBytes)) {
  12451. this[p] = true;
  12452. } else {
  12453. throw Error(cryptoUnavailable);
  12454. }
  12455. } else {
  12456. this[p] = false;
  12457. }
  12458. } else {
  12459. throw Error(invalidArgument + p + ': ' + v);
  12460. }
  12461. }
  12462. return this;
  12463. }
  12464. /*
  12465. * Return a new Decimal whose value is the cosine of `x`, rounded to `precision` significant
  12466. * digits using rounding mode `rounding`.
  12467. *
  12468. * x {number|string|Decimal} A value in radians.
  12469. *
  12470. */
  12471. function cos(x) {
  12472. return new this(x).cos();
  12473. }
  12474. /*
  12475. * Return a new Decimal whose value is the hyperbolic cosine of `x`, rounded to precision
  12476. * significant digits using rounding mode `rounding`.
  12477. *
  12478. * x {number|string|Decimal} A value in radians.
  12479. *
  12480. */
  12481. function cosh(x) {
  12482. return new this(x).cosh();
  12483. }
  12484. /*
  12485. * Create and return a Decimal constructor with the same configuration properties as this Decimal
  12486. * constructor.
  12487. *
  12488. */
  12489. function clone(obj) {
  12490. var i, p, ps;
  12491. /*
  12492. * The Decimal constructor and exported function.
  12493. * Return a new Decimal instance.
  12494. *
  12495. * v {number|string|Decimal} A numeric value.
  12496. *
  12497. */
  12498. function Decimal(v) {
  12499. var e,i,t,
  12500. x = this;
  12501. // Decimal called without new.
  12502. if (!(x instanceof Decimal)) return new Decimal(v);
  12503. // Retain a reference to this Decimal constructor, and shadow Decimal.prototype.constructor
  12504. // which points to Object.
  12505. x.constructor = Decimal;
  12506. // Duplicate.
  12507. if (isDecimalInstance(v)) {
  12508. x.s = v.s;
  12509. if (external) {
  12510. if (!v.d || v.e > Decimal.maxE) {
  12511. // Infinity.
  12512. x.e = NaN;
  12513. x.d = null;
  12514. } else if (v.e < Decimal.minE) {
  12515. // Zero.
  12516. x.e = 0;
  12517. x.d = [0];
  12518. } else {
  12519. x.e = v.e;
  12520. x.d = v.d.slice();
  12521. }
  12522. } else {
  12523. x.e = v.e;
  12524. x.d = v.d ? v.d.slice() : v.d;
  12525. }
  12526. return;
  12527. }
  12528. t = typeof v;
  12529. if (t === 'number') {
  12530. if (v === 0) {
  12531. x.s = 1 / v < 0 ? -1 : 1;
  12532. x.e = 0;
  12533. x.d = [0];
  12534. return;
  12535. }
  12536. if (v < 0) {
  12537. v = -v;
  12538. x.s = -1;
  12539. } else {
  12540. x.s = 1;
  12541. }
  12542. // Fast path for small integers.
  12543. if (v === ~~v && v < 1e7) {
  12544. for (e = 0, i = v; i >= 10; i /= 10) {e++;}
  12545. if (external) {
  12546. if (e > Decimal.maxE) {
  12547. x.e = NaN;
  12548. x.d = null;
  12549. } else if (e < Decimal.minE) {
  12550. x.e = 0;
  12551. x.d = [0];
  12552. } else {
  12553. x.e = e;
  12554. x.d = [v];
  12555. }
  12556. } else {
  12557. x.e = e;
  12558. x.d = [v];
  12559. }
  12560. return;
  12561. // Infinity, NaN.
  12562. } else if (v * 0 !== 0) {
  12563. if (!v) x.s = NaN;
  12564. x.e = NaN;
  12565. x.d = null;
  12566. return;
  12567. }
  12568. return parseDecimal(x, v.toString());
  12569. } else if (t !== 'string') {
  12570. throw Error(invalidArgument + v);
  12571. }
  12572. // Minus sign?
  12573. if ((i = v.charCodeAt(0)) === 45) {
  12574. v = v.slice(1);
  12575. x.s = -1;
  12576. } else {
  12577. // Plus sign?
  12578. if (i === 43) v = v.slice(1);
  12579. x.s = 1;
  12580. }
  12581. return isDecimal.test(v) ? parseDecimal(x, v) : parseOther(x, v);
  12582. }
  12583. Decimal.prototype = P;
  12584. Decimal.ROUND_UP = 0;
  12585. Decimal.ROUND_DOWN = 1;
  12586. Decimal.ROUND_CEIL = 2;
  12587. Decimal.ROUND_FLOOR = 3;
  12588. Decimal.ROUND_HALF_UP = 4;
  12589. Decimal.ROUND_HALF_DOWN = 5;
  12590. Decimal.ROUND_HALF_EVEN = 6;
  12591. Decimal.ROUND_HALF_CEIL = 7;
  12592. Decimal.ROUND_HALF_FLOOR = 8;
  12593. Decimal.EUCLID = 9;
  12594. Decimal.config = Decimal.set = config;
  12595. Decimal.clone = clone;
  12596. Decimal.isDecimal = isDecimalInstance;
  12597. Decimal.abs = abs;
  12598. Decimal.acos = acos;
  12599. Decimal.acosh = acosh; // ES6
  12600. Decimal.add = add;
  12601. Decimal.asin = asin;
  12602. Decimal.asinh = asinh; // ES6
  12603. Decimal.atan = atan;
  12604. Decimal.atanh = atanh; // ES6
  12605. Decimal.atan2 = atan2;
  12606. Decimal.cbrt = cbrt; // ES6
  12607. Decimal.ceil = ceil;
  12608. Decimal.clamp = clamp;
  12609. Decimal.cos = cos;
  12610. Decimal.cosh = cosh; // ES6
  12611. Decimal.div = div;
  12612. Decimal.exp = exp;
  12613. Decimal.floor = floor;
  12614. Decimal.hypot = hypot; // ES6
  12615. Decimal.ln = ln;
  12616. Decimal.log = log;
  12617. Decimal.log10 = log10; // ES6
  12618. Decimal.log2 = log2; // ES6
  12619. Decimal.max = max;
  12620. Decimal.min = min;
  12621. Decimal.mod = mod;
  12622. Decimal.mul = mul;
  12623. Decimal.pow = pow;
  12624. Decimal.random = random;
  12625. Decimal.round = round;
  12626. Decimal.sign = sign; // ES6
  12627. Decimal.sin = sin;
  12628. Decimal.sinh = sinh; // ES6
  12629. Decimal.sqrt = sqrt;
  12630. Decimal.sub = sub;
  12631. Decimal.sum = sum;
  12632. Decimal.tan = tan;
  12633. Decimal.tanh = tanh; // ES6
  12634. Decimal.trunc = trunc; // ES6
  12635. if (obj === void 0) obj = {};
  12636. if (obj) {
  12637. if (obj.defaults !== true) {
  12638. ps = ['precision', 'rounding', 'toExpNeg', 'toExpPos', 'maxE', 'minE', 'modulo', 'crypto'];
  12639. for (i = 0; i < ps.length;) {if (!obj.hasOwnProperty(p = ps[i++])) obj[p] = this[p];}
  12640. }
  12641. }
  12642. Decimal.config(obj);
  12643. return Decimal;
  12644. }
  12645. /*
  12646. * Return a new Decimal whose value is `x` divided by `y`, rounded to `precision` significant
  12647. * digits using rounding mode `rounding`.
  12648. *
  12649. * x {number|string|Decimal}
  12650. * y {number|string|Decimal}
  12651. *
  12652. */
  12653. function div(x, y) {
  12654. return new this(x).div(y);
  12655. }
  12656. /*
  12657. * Return a new Decimal whose value is the natural exponential of `x`, rounded to `precision`
  12658. * significant digits using rounding mode `rounding`.
  12659. *
  12660. * x {number|string|Decimal} The power to which to raise the base of the natural log.
  12661. *
  12662. */
  12663. function exp(x) {
  12664. return new this(x).exp();
  12665. }
  12666. /*
  12667. * Return a new Decimal whose value is `x` round to an integer using `ROUND_FLOOR`.
  12668. *
  12669. * x {number|string|Decimal}
  12670. *
  12671. */
  12672. function floor(x) {
  12673. return finalise(x = new this(x), x.e + 1, 3);
  12674. }
  12675. /*
  12676. * Return a new Decimal whose value is the square root of the sum of the squares of the arguments,
  12677. * rounded to `precision` significant digits using rounding mode `rounding`.
  12678. *
  12679. * hypot(a, b, ...) = sqrt(a^2 + b^2 + ...)
  12680. *
  12681. * arguments {number|string|Decimal}
  12682. *
  12683. */
  12684. function hypot() {
  12685. var i,n,
  12686. t = new this(0);
  12687. external = false;
  12688. for (i = 0; i < arguments.length;) {
  12689. n = new this(arguments[i++]);
  12690. if (!n.d) {
  12691. if (n.s) {
  12692. external = true;
  12693. return new this(1 / 0);
  12694. }
  12695. t = n;
  12696. } else if (t.d) {
  12697. t = t.plus(n.times(n));
  12698. }
  12699. }
  12700. external = true;
  12701. return t.sqrt();
  12702. }
  12703. /*
  12704. * Return true if object is a Decimal instance (where Decimal is any Decimal constructor),
  12705. * otherwise return false.
  12706. *
  12707. */
  12708. function isDecimalInstance(obj) {
  12709. return obj instanceof Decimal || obj && obj.toStringTag === tag || false;
  12710. }
  12711. /*
  12712. * Return a new Decimal whose value is the natural logarithm of `x`, rounded to `precision`
  12713. * significant digits using rounding mode `rounding`.
  12714. *
  12715. * x {number|string|Decimal}
  12716. *
  12717. */
  12718. function ln(x) {
  12719. return new this(x).ln();
  12720. }
  12721. /*
  12722. * Return a new Decimal whose value is the log of `x` to the base `y`, or to base 10 if no base
  12723. * is specified, rounded to `precision` significant digits using rounding mode `rounding`.
  12724. *
  12725. * log[y](x)
  12726. *
  12727. * x {number|string|Decimal} The argument of the logarithm.
  12728. * y {number|string|Decimal} The base of the logarithm.
  12729. *
  12730. */
  12731. function log(x, y) {
  12732. return new this(x).log(y);
  12733. }
  12734. /*
  12735. * Return a new Decimal whose value is the base 2 logarithm of `x`, rounded to `precision`
  12736. * significant digits using rounding mode `rounding`.
  12737. *
  12738. * x {number|string|Decimal}
  12739. *
  12740. */
  12741. function log2(x) {
  12742. return new this(x).log(2);
  12743. }
  12744. /*
  12745. * Return a new Decimal whose value is the base 10 logarithm of `x`, rounded to `precision`
  12746. * significant digits using rounding mode `rounding`.
  12747. *
  12748. * x {number|string|Decimal}
  12749. *
  12750. */
  12751. function log10(x) {
  12752. return new this(x).log(10);
  12753. }
  12754. /*
  12755. * Return a new Decimal whose value is the maximum of the arguments.
  12756. *
  12757. * arguments {number|string|Decimal}
  12758. *
  12759. */
  12760. function max() {
  12761. return maxOrMin(this, arguments, 'lt');
  12762. }
  12763. /*
  12764. * Return a new Decimal whose value is the minimum of the arguments.
  12765. *
  12766. * arguments {number|string|Decimal}
  12767. *
  12768. */
  12769. function min() {
  12770. return maxOrMin(this, arguments, 'gt');
  12771. }
  12772. /*
  12773. * Return a new Decimal whose value is `x` modulo `y`, rounded to `precision` significant digits
  12774. * using rounding mode `rounding`.
  12775. *
  12776. * x {number|string|Decimal}
  12777. * y {number|string|Decimal}
  12778. *
  12779. */
  12780. function mod(x, y) {
  12781. return new this(x).mod(y);
  12782. }
  12783. /*
  12784. * Return a new Decimal whose value is `x` multiplied by `y`, rounded to `precision` significant
  12785. * digits using rounding mode `rounding`.
  12786. *
  12787. * x {number|string|Decimal}
  12788. * y {number|string|Decimal}
  12789. *
  12790. */
  12791. function mul(x, y) {
  12792. return new this(x).mul(y);
  12793. }
  12794. /*
  12795. * Return a new Decimal whose value is `x` raised to the power `y`, rounded to precision
  12796. * significant digits using rounding mode `rounding`.
  12797. *
  12798. * x {number|string|Decimal} The base.
  12799. * y {number|string|Decimal} The exponent.
  12800. *
  12801. */
  12802. function pow(x, y) {
  12803. return new this(x).pow(y);
  12804. }
  12805. /*
  12806. * Returns a new Decimal with a random value equal to or greater than 0 and less than 1, and with
  12807. * `sd`, or `Decimal.precision` if `sd` is omitted, significant digits (or less if trailing zeros
  12808. * are produced).
  12809. *
  12810. * [sd] {number} Significant digits. Integer, 0 to MAX_DIGITS inclusive.
  12811. *
  12812. */
  12813. function random(sd) {
  12814. var d,e,k,n,
  12815. i = 0,
  12816. r = new this(1),
  12817. rd = [];
  12818. if (sd === void 0) sd = this.precision;else
  12819. checkInt32(sd, 1, MAX_DIGITS);
  12820. k = Math.ceil(sd / LOG_BASE);
  12821. if (!this.crypto) {
  12822. for (; i < k;) {rd[i++] = Math.random() * 1e7 | 0;}
  12823. // Browsers supporting crypto.getRandomValues.
  12824. } else if (crypto.getRandomValues) {
  12825. d = crypto.getRandomValues(new Uint32Array(k));
  12826. for (; i < k;) {
  12827. n = d[i];
  12828. // 0 <= n < 4294967296
  12829. // Probability n >= 4.29e9, is 4967296 / 4294967296 = 0.00116 (1 in 865).
  12830. if (n >= 4.29e9) {
  12831. d[i] = crypto.getRandomValues(new Uint32Array(1))[0];
  12832. } else {
  12833. // 0 <= n <= 4289999999
  12834. // 0 <= (n % 1e7) <= 9999999
  12835. rd[i++] = n % 1e7;
  12836. }
  12837. }
  12838. // Node.js supporting crypto.randomBytes.
  12839. } else if (crypto.randomBytes) {
  12840. // buffer
  12841. d = crypto.randomBytes(k *= 4);
  12842. for (; i < k;) {
  12843. // 0 <= n < 2147483648
  12844. n = d[i] + (d[i + 1] << 8) + (d[i + 2] << 16) + ((d[i + 3] & 0x7f) << 24);
  12845. // Probability n >= 2.14e9, is 7483648 / 2147483648 = 0.0035 (1 in 286).
  12846. if (n >= 2.14e9) {
  12847. crypto.randomBytes(4).copy(d, i);
  12848. } else {
  12849. // 0 <= n <= 2139999999
  12850. // 0 <= (n % 1e7) <= 9999999
  12851. rd.push(n % 1e7);
  12852. i += 4;
  12853. }
  12854. }
  12855. i = k / 4;
  12856. } else {
  12857. throw Error(cryptoUnavailable);
  12858. }
  12859. k = rd[--i];
  12860. sd %= LOG_BASE;
  12861. // Convert trailing digits to zeros according to sd.
  12862. if (k && sd) {
  12863. n = mathpow(10, LOG_BASE - sd);
  12864. rd[i] = (k / n | 0) * n;
  12865. }
  12866. // Remove trailing words which are zero.
  12867. for (; rd[i] === 0; i--) {rd.pop();}
  12868. // Zero?
  12869. if (i < 0) {
  12870. e = 0;
  12871. rd = [0];
  12872. } else {
  12873. e = -1;
  12874. // Remove leading words which are zero and adjust exponent accordingly.
  12875. for (; rd[0] === 0; e -= LOG_BASE) {rd.shift();}
  12876. // Count the digits of the first word of rd to determine leading zeros.
  12877. for (k = 1, n = rd[0]; n >= 10; n /= 10) {k++;}
  12878. // Adjust the exponent for leading zeros of the first word of rd.
  12879. if (k < LOG_BASE) e -= LOG_BASE - k;
  12880. }
  12881. r.e = e;
  12882. r.d = rd;
  12883. return r;
  12884. }
  12885. /*
  12886. * Return a new Decimal whose value is `x` rounded to an integer using rounding mode `rounding`.
  12887. *
  12888. * To emulate `Math.round`, set rounding to 7 (ROUND_HALF_CEIL).
  12889. *
  12890. * x {number|string|Decimal}
  12891. *
  12892. */
  12893. function round(x) {
  12894. return finalise(x = new this(x), x.e + 1, this.rounding);
  12895. }
  12896. /*
  12897. * Return
  12898. * 1 if x > 0,
  12899. * -1 if x < 0,
  12900. * 0 if x is 0,
  12901. * -0 if x is -0,
  12902. * NaN otherwise
  12903. *
  12904. * x {number|string|Decimal}
  12905. *
  12906. */
  12907. function sign(x) {
  12908. x = new this(x);
  12909. return x.d ? x.d[0] ? x.s : 0 * x.s : x.s || NaN;
  12910. }
  12911. /*
  12912. * Return a new Decimal whose value is the sine of `x`, rounded to `precision` significant digits
  12913. * using rounding mode `rounding`.
  12914. *
  12915. * x {number|string|Decimal} A value in radians.
  12916. *
  12917. */
  12918. function sin(x) {
  12919. return new this(x).sin();
  12920. }
  12921. /*
  12922. * Return a new Decimal whose value is the hyperbolic sine of `x`, rounded to `precision`
  12923. * significant digits using rounding mode `rounding`.
  12924. *
  12925. * x {number|string|Decimal} A value in radians.
  12926. *
  12927. */
  12928. function sinh(x) {
  12929. return new this(x).sinh();
  12930. }
  12931. /*
  12932. * Return a new Decimal whose value is the square root of `x`, rounded to `precision` significant
  12933. * digits using rounding mode `rounding`.
  12934. *
  12935. * x {number|string|Decimal}
  12936. *
  12937. */
  12938. function sqrt(x) {
  12939. return new this(x).sqrt();
  12940. }
  12941. /*
  12942. * Return a new Decimal whose value is `x` minus `y`, rounded to `precision` significant digits
  12943. * using rounding mode `rounding`.
  12944. *
  12945. * x {number|string|Decimal}
  12946. * y {number|string|Decimal}
  12947. *
  12948. */
  12949. function sub(x, y) {
  12950. return new this(x).sub(y);
  12951. }
  12952. /*
  12953. * Return a new Decimal whose value is the sum of the arguments, rounded to `precision`
  12954. * significant digits using rounding mode `rounding`.
  12955. *
  12956. * Only the result is rounded, not the intermediate calculations.
  12957. *
  12958. * arguments {number|string|Decimal}
  12959. *
  12960. */
  12961. function sum() {
  12962. var i = 0,
  12963. args = arguments,
  12964. x = new this(args[i]);
  12965. external = false;
  12966. for (; x.s && ++i < args.length;) {x = x.plus(args[i]);}
  12967. external = true;
  12968. return finalise(x, this.precision, this.rounding);
  12969. }
  12970. /*
  12971. * Return a new Decimal whose value is the tangent of `x`, rounded to `precision` significant
  12972. * digits using rounding mode `rounding`.
  12973. *
  12974. * x {number|string|Decimal} A value in radians.
  12975. *
  12976. */
  12977. function tan(x) {
  12978. return new this(x).tan();
  12979. }
  12980. /*
  12981. * Return a new Decimal whose value is the hyperbolic tangent of `x`, rounded to `precision`
  12982. * significant digits using rounding mode `rounding`.
  12983. *
  12984. * x {number|string|Decimal} A value in radians.
  12985. *
  12986. */
  12987. function tanh(x) {
  12988. return new this(x).tanh();
  12989. }
  12990. /*
  12991. * Return a new Decimal whose value is `x` truncated to an integer.
  12992. *
  12993. * x {number|string|Decimal}
  12994. *
  12995. */
  12996. function trunc(x) {
  12997. return finalise(x = new this(x), x.e + 1, 1);
  12998. }
  12999. // Create and configure initial Decimal constructor.
  13000. Decimal = clone(DEFAULTS);
  13001. Decimal.prototype.constructor = Decimal;
  13002. Decimal['default'] = Decimal.Decimal = Decimal;
  13003. // Create the internal constants from their string values.
  13004. LN10 = new Decimal(LN10);
  13005. PI = new Decimal(PI);
  13006. // Export.
  13007. // AMD.
  13008. if (true) {
  13009. !(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {
  13010. return Decimal;
  13011. }).call(exports, __webpack_require__, exports, module),
  13012. __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  13013. // Node and other environments that support module.exports.
  13014. } else {}
  13015. })(this);
  13016. /***/ }),
  13017. /* 19 */,
  13018. /* 20 */,
  13019. /* 21 */,
  13020. /* 22 */,
  13021. /* 23 */,
  13022. /* 24 */,
  13023. /* 25 */
  13024. /*!****************************************************!*\
  13025. !*** D:/wxproject/项目模板/uniapp/static/foods_2.webp ***!
  13026. \****************************************************/
  13027. /*! no static exports found */
  13028. /***/ (function(module, exports) {
  13029. module.exports = "/static/foods_2.webp";
  13030. /***/ }),
  13031. /* 26 */,
  13032. /* 27 */,
  13033. /* 28 */,
  13034. /* 29 */,
  13035. /* 30 */,
  13036. /* 31 */,
  13037. /* 32 */,
  13038. /* 33 */,
  13039. /* 34 */,
  13040. /* 35 */,
  13041. /* 36 */,
  13042. /* 37 */,
  13043. /* 38 */,
  13044. /* 39 */,
  13045. /* 40 */,
  13046. /* 41 */,
  13047. /* 42 */
  13048. /*!**************************************************************!*\
  13049. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/moment.js ***!
  13050. \**************************************************************/
  13051. /*! no static exports found */
  13052. /***/ (function(module, exports, __webpack_require__) {
  13053. /* WEBPACK VAR INJECTION */(function(module) {var require;//! moment.js
  13054. //! version : 2.29.4
  13055. //! authors : Tim Wood, Iskren Chernev, Moment.js contributors
  13056. //! license : MIT
  13057. //! momentjs.com
  13058. ;(function (global, factory) {
  13059. true ? module.exports = factory() :
  13060. undefined;
  13061. })(this, function () {'use strict';
  13062. var hookCallback;
  13063. function hooks() {
  13064. return hookCallback.apply(null, arguments);
  13065. }
  13066. // This is done to register the method called with moment()
  13067. // without creating circular dependencies.
  13068. function setHookCallback(callback) {
  13069. hookCallback = callback;
  13070. }
  13071. function isArray(input) {
  13072. return (
  13073. input instanceof Array ||
  13074. Object.prototype.toString.call(input) === '[object Array]');
  13075. }
  13076. function isObject(input) {
  13077. // IE8 will treat undefined and null as object if it wasn't for
  13078. // input != null
  13079. return (
  13080. input != null &&
  13081. Object.prototype.toString.call(input) === '[object Object]');
  13082. }
  13083. function hasOwnProp(a, b) {
  13084. return Object.prototype.hasOwnProperty.call(a, b);
  13085. }
  13086. function isObjectEmpty(obj) {
  13087. if (Object.getOwnPropertyNames) {
  13088. return Object.getOwnPropertyNames(obj).length === 0;
  13089. } else {
  13090. var k;
  13091. for (k in obj) {
  13092. if (hasOwnProp(obj, k)) {
  13093. return false;
  13094. }
  13095. }
  13096. return true;
  13097. }
  13098. }
  13099. function isUndefined(input) {
  13100. return input === void 0;
  13101. }
  13102. function isNumber(input) {
  13103. return (
  13104. typeof input === 'number' ||
  13105. Object.prototype.toString.call(input) === '[object Number]');
  13106. }
  13107. function isDate(input) {
  13108. return (
  13109. input instanceof Date ||
  13110. Object.prototype.toString.call(input) === '[object Date]');
  13111. }
  13112. function map(arr, fn) {
  13113. var res = [],
  13114. i,
  13115. arrLen = arr.length;
  13116. for (i = 0; i < arrLen; ++i) {
  13117. res.push(fn(arr[i], i));
  13118. }
  13119. return res;
  13120. }
  13121. function extend(a, b) {
  13122. for (var i in b) {
  13123. if (hasOwnProp(b, i)) {
  13124. a[i] = b[i];
  13125. }
  13126. }
  13127. if (hasOwnProp(b, 'toString')) {
  13128. a.toString = b.toString;
  13129. }
  13130. if (hasOwnProp(b, 'valueOf')) {
  13131. a.valueOf = b.valueOf;
  13132. }
  13133. return a;
  13134. }
  13135. function createUTC(input, format, locale, strict) {
  13136. return createLocalOrUTC(input, format, locale, strict, true).utc();
  13137. }
  13138. function defaultParsingFlags() {
  13139. // We need to deep clone this object.
  13140. return {
  13141. empty: false,
  13142. unusedTokens: [],
  13143. unusedInput: [],
  13144. overflow: -2,
  13145. charsLeftOver: 0,
  13146. nullInput: false,
  13147. invalidEra: null,
  13148. invalidMonth: null,
  13149. invalidFormat: false,
  13150. userInvalidated: false,
  13151. iso: false,
  13152. parsedDateParts: [],
  13153. era: null,
  13154. meridiem: null,
  13155. rfc2822: false,
  13156. weekdayMismatch: false };
  13157. }
  13158. function getParsingFlags(m) {
  13159. if (m._pf == null) {
  13160. m._pf = defaultParsingFlags();
  13161. }
  13162. return m._pf;
  13163. }
  13164. var some;
  13165. if (Array.prototype.some) {
  13166. some = Array.prototype.some;
  13167. } else {
  13168. some = function some(fun) {
  13169. var t = Object(this),
  13170. len = t.length >>> 0,
  13171. i;
  13172. for (i = 0; i < len; i++) {
  13173. if (i in t && fun.call(this, t[i], i, t)) {
  13174. return true;
  13175. }
  13176. }
  13177. return false;
  13178. };
  13179. }
  13180. function isValid(m) {
  13181. if (m._isValid == null) {
  13182. var flags = getParsingFlags(m),
  13183. parsedParts = some.call(flags.parsedDateParts, function (i) {
  13184. return i != null;
  13185. }),
  13186. isNowValid =
  13187. !isNaN(m._d.getTime()) &&
  13188. flags.overflow < 0 &&
  13189. !flags.empty &&
  13190. !flags.invalidEra &&
  13191. !flags.invalidMonth &&
  13192. !flags.invalidWeekday &&
  13193. !flags.weekdayMismatch &&
  13194. !flags.nullInput &&
  13195. !flags.invalidFormat &&
  13196. !flags.userInvalidated && (
  13197. !flags.meridiem || flags.meridiem && parsedParts);
  13198. if (m._strict) {
  13199. isNowValid =
  13200. isNowValid &&
  13201. flags.charsLeftOver === 0 &&
  13202. flags.unusedTokens.length === 0 &&
  13203. flags.bigHour === undefined;
  13204. }
  13205. if (Object.isFrozen == null || !Object.isFrozen(m)) {
  13206. m._isValid = isNowValid;
  13207. } else {
  13208. return isNowValid;
  13209. }
  13210. }
  13211. return m._isValid;
  13212. }
  13213. function createInvalid(flags) {
  13214. var m = createUTC(NaN);
  13215. if (flags != null) {
  13216. extend(getParsingFlags(m), flags);
  13217. } else {
  13218. getParsingFlags(m).userInvalidated = true;
  13219. }
  13220. return m;
  13221. }
  13222. // Plugins that add properties should also add the key here (null value),
  13223. // so we can properly clone ourselves.
  13224. var momentProperties = hooks.momentProperties = [],
  13225. updateInProgress = false;
  13226. function copyConfig(to, from) {
  13227. var i,
  13228. prop,
  13229. val,
  13230. momentPropertiesLen = momentProperties.length;
  13231. if (!isUndefined(from._isAMomentObject)) {
  13232. to._isAMomentObject = from._isAMomentObject;
  13233. }
  13234. if (!isUndefined(from._i)) {
  13235. to._i = from._i;
  13236. }
  13237. if (!isUndefined(from._f)) {
  13238. to._f = from._f;
  13239. }
  13240. if (!isUndefined(from._l)) {
  13241. to._l = from._l;
  13242. }
  13243. if (!isUndefined(from._strict)) {
  13244. to._strict = from._strict;
  13245. }
  13246. if (!isUndefined(from._tzm)) {
  13247. to._tzm = from._tzm;
  13248. }
  13249. if (!isUndefined(from._isUTC)) {
  13250. to._isUTC = from._isUTC;
  13251. }
  13252. if (!isUndefined(from._offset)) {
  13253. to._offset = from._offset;
  13254. }
  13255. if (!isUndefined(from._pf)) {
  13256. to._pf = getParsingFlags(from);
  13257. }
  13258. if (!isUndefined(from._locale)) {
  13259. to._locale = from._locale;
  13260. }
  13261. if (momentPropertiesLen > 0) {
  13262. for (i = 0; i < momentPropertiesLen; i++) {
  13263. prop = momentProperties[i];
  13264. val = from[prop];
  13265. if (!isUndefined(val)) {
  13266. to[prop] = val;
  13267. }
  13268. }
  13269. }
  13270. return to;
  13271. }
  13272. // Moment prototype object
  13273. function Moment(config) {
  13274. copyConfig(this, config);
  13275. this._d = new Date(config._d != null ? config._d.getTime() : NaN);
  13276. if (!this.isValid()) {
  13277. this._d = new Date(NaN);
  13278. }
  13279. // Prevent infinite loop in case updateOffset creates new moment
  13280. // objects.
  13281. if (updateInProgress === false) {
  13282. updateInProgress = true;
  13283. hooks.updateOffset(this);
  13284. updateInProgress = false;
  13285. }
  13286. }
  13287. function isMoment(obj) {
  13288. return (
  13289. obj instanceof Moment || obj != null && obj._isAMomentObject != null);
  13290. }
  13291. function warn(msg) {
  13292. if (
  13293. hooks.suppressDeprecationWarnings === false &&
  13294. typeof console !== 'undefined' &&
  13295. console.warn)
  13296. {
  13297. console.warn('Deprecation warning: ' + msg);
  13298. }
  13299. }
  13300. function deprecate(msg, fn) {
  13301. var firstTime = true;
  13302. return extend(function () {
  13303. if (hooks.deprecationHandler != null) {
  13304. hooks.deprecationHandler(null, msg);
  13305. }
  13306. if (firstTime) {
  13307. var args = [],
  13308. arg,
  13309. i,
  13310. key,
  13311. argLen = arguments.length;
  13312. for (i = 0; i < argLen; i++) {
  13313. arg = '';
  13314. if (typeof arguments[i] === 'object') {
  13315. arg += '\n[' + i + '] ';
  13316. for (key in arguments[0]) {
  13317. if (hasOwnProp(arguments[0], key)) {
  13318. arg += key + ': ' + arguments[0][key] + ', ';
  13319. }
  13320. }
  13321. arg = arg.slice(0, -2); // Remove trailing comma and space
  13322. } else {
  13323. arg = arguments[i];
  13324. }
  13325. args.push(arg);
  13326. }
  13327. warn(
  13328. msg +
  13329. '\nArguments: ' +
  13330. Array.prototype.slice.call(args).join('') +
  13331. '\n' +
  13332. new Error().stack);
  13333. firstTime = false;
  13334. }
  13335. return fn.apply(this, arguments);
  13336. }, fn);
  13337. }
  13338. var deprecations = {};
  13339. function deprecateSimple(name, msg) {
  13340. if (hooks.deprecationHandler != null) {
  13341. hooks.deprecationHandler(name, msg);
  13342. }
  13343. if (!deprecations[name]) {
  13344. warn(msg);
  13345. deprecations[name] = true;
  13346. }
  13347. }
  13348. hooks.suppressDeprecationWarnings = false;
  13349. hooks.deprecationHandler = null;
  13350. function isFunction(input) {
  13351. return (
  13352. typeof Function !== 'undefined' && input instanceof Function ||
  13353. Object.prototype.toString.call(input) === '[object Function]');
  13354. }
  13355. function set(config) {
  13356. var prop, i;
  13357. for (i in config) {
  13358. if (hasOwnProp(config, i)) {
  13359. prop = config[i];
  13360. if (isFunction(prop)) {
  13361. this[i] = prop;
  13362. } else {
  13363. this['_' + i] = prop;
  13364. }
  13365. }
  13366. }
  13367. this._config = config;
  13368. // Lenient ordinal parsing accepts just a number in addition to
  13369. // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.
  13370. // TODO: Remove "ordinalParse" fallback in next major release.
  13371. this._dayOfMonthOrdinalParseLenient = new RegExp(
  13372. (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +
  13373. '|' +
  13374. /\d{1,2}/.source);
  13375. }
  13376. function mergeConfigs(parentConfig, childConfig) {
  13377. var res = extend({}, parentConfig),
  13378. prop;
  13379. for (prop in childConfig) {
  13380. if (hasOwnProp(childConfig, prop)) {
  13381. if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {
  13382. res[prop] = {};
  13383. extend(res[prop], parentConfig[prop]);
  13384. extend(res[prop], childConfig[prop]);
  13385. } else if (childConfig[prop] != null) {
  13386. res[prop] = childConfig[prop];
  13387. } else {
  13388. delete res[prop];
  13389. }
  13390. }
  13391. }
  13392. for (prop in parentConfig) {
  13393. if (
  13394. hasOwnProp(parentConfig, prop) &&
  13395. !hasOwnProp(childConfig, prop) &&
  13396. isObject(parentConfig[prop]))
  13397. {
  13398. // make sure changes to properties don't modify parent config
  13399. res[prop] = extend({}, res[prop]);
  13400. }
  13401. }
  13402. return res;
  13403. }
  13404. function Locale(config) {
  13405. if (config != null) {
  13406. this.set(config);
  13407. }
  13408. }
  13409. var keys;
  13410. if (Object.keys) {
  13411. keys = Object.keys;
  13412. } else {
  13413. keys = function keys(obj) {
  13414. var i,
  13415. res = [];
  13416. for (i in obj) {
  13417. if (hasOwnProp(obj, i)) {
  13418. res.push(i);
  13419. }
  13420. }
  13421. return res;
  13422. };
  13423. }
  13424. var defaultCalendar = {
  13425. sameDay: '[Today at] LT',
  13426. nextDay: '[Tomorrow at] LT',
  13427. nextWeek: 'dddd [at] LT',
  13428. lastDay: '[Yesterday at] LT',
  13429. lastWeek: '[Last] dddd [at] LT',
  13430. sameElse: 'L' };
  13431. function calendar(key, mom, now) {
  13432. var output = this._calendar[key] || this._calendar['sameElse'];
  13433. return isFunction(output) ? output.call(mom, now) : output;
  13434. }
  13435. function zeroFill(number, targetLength, forceSign) {
  13436. var absNumber = '' + Math.abs(number),
  13437. zerosToFill = targetLength - absNumber.length,
  13438. sign = number >= 0;
  13439. return (
  13440. (sign ? forceSign ? '+' : '' : '-') +
  13441. Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +
  13442. absNumber);
  13443. }
  13444. var formattingTokens =
  13445. /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,
  13446. localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,
  13447. formatFunctions = {},
  13448. formatTokenFunctions = {};
  13449. // token: 'M'
  13450. // padded: ['MM', 2]
  13451. // ordinal: 'Mo'
  13452. // callback: function () { this.month() + 1 }
  13453. function addFormatToken(token, padded, ordinal, callback) {
  13454. var func = callback;
  13455. if (typeof callback === 'string') {
  13456. func = function func() {
  13457. return this[callback]();
  13458. };
  13459. }
  13460. if (token) {
  13461. formatTokenFunctions[token] = func;
  13462. }
  13463. if (padded) {
  13464. formatTokenFunctions[padded[0]] = function () {
  13465. return zeroFill(func.apply(this, arguments), padded[1], padded[2]);
  13466. };
  13467. }
  13468. if (ordinal) {
  13469. formatTokenFunctions[ordinal] = function () {
  13470. return this.localeData().ordinal(
  13471. func.apply(this, arguments),
  13472. token);
  13473. };
  13474. }
  13475. }
  13476. function removeFormattingTokens(input) {
  13477. if (input.match(/\[[\s\S]/)) {
  13478. return input.replace(/^\[|\]$/g, '');
  13479. }
  13480. return input.replace(/\\/g, '');
  13481. }
  13482. function makeFormatFunction(format) {
  13483. var array = format.match(formattingTokens),
  13484. i,
  13485. length;
  13486. for (i = 0, length = array.length; i < length; i++) {
  13487. if (formatTokenFunctions[array[i]]) {
  13488. array[i] = formatTokenFunctions[array[i]];
  13489. } else {
  13490. array[i] = removeFormattingTokens(array[i]);
  13491. }
  13492. }
  13493. return function (mom) {
  13494. var output = '',
  13495. i;
  13496. for (i = 0; i < length; i++) {
  13497. output += isFunction(array[i]) ?
  13498. array[i].call(mom, format) :
  13499. array[i];
  13500. }
  13501. return output;
  13502. };
  13503. }
  13504. // format date using native date object
  13505. function formatMoment(m, format) {
  13506. if (!m.isValid()) {
  13507. return m.localeData().invalidDate();
  13508. }
  13509. format = expandFormat(format, m.localeData());
  13510. formatFunctions[format] =
  13511. formatFunctions[format] || makeFormatFunction(format);
  13512. return formatFunctions[format](m);
  13513. }
  13514. function expandFormat(format, locale) {
  13515. var i = 5;
  13516. function replaceLongDateFormatTokens(input) {
  13517. return locale.longDateFormat(input) || input;
  13518. }
  13519. localFormattingTokens.lastIndex = 0;
  13520. while (i >= 0 && localFormattingTokens.test(format)) {
  13521. format = format.replace(
  13522. localFormattingTokens,
  13523. replaceLongDateFormatTokens);
  13524. localFormattingTokens.lastIndex = 0;
  13525. i -= 1;
  13526. }
  13527. return format;
  13528. }
  13529. var defaultLongDateFormat = {
  13530. LTS: 'h:mm:ss A',
  13531. LT: 'h:mm A',
  13532. L: 'MM/DD/YYYY',
  13533. LL: 'MMMM D, YYYY',
  13534. LLL: 'MMMM D, YYYY h:mm A',
  13535. LLLL: 'dddd, MMMM D, YYYY h:mm A' };
  13536. function longDateFormat(key) {
  13537. var format = this._longDateFormat[key],
  13538. formatUpper = this._longDateFormat[key.toUpperCase()];
  13539. if (format || !formatUpper) {
  13540. return format;
  13541. }
  13542. this._longDateFormat[key] = formatUpper.
  13543. match(formattingTokens).
  13544. map(function (tok) {
  13545. if (
  13546. tok === 'MMMM' ||
  13547. tok === 'MM' ||
  13548. tok === 'DD' ||
  13549. tok === 'dddd')
  13550. {
  13551. return tok.slice(1);
  13552. }
  13553. return tok;
  13554. }).
  13555. join('');
  13556. return this._longDateFormat[key];
  13557. }
  13558. var defaultInvalidDate = 'Invalid date';
  13559. function invalidDate() {
  13560. return this._invalidDate;
  13561. }
  13562. var defaultOrdinal = '%d',
  13563. defaultDayOfMonthOrdinalParse = /\d{1,2}/;
  13564. function ordinal(number) {
  13565. return this._ordinal.replace('%d', number);
  13566. }
  13567. var defaultRelativeTime = {
  13568. future: 'in %s',
  13569. past: '%s ago',
  13570. s: 'a few seconds',
  13571. ss: '%d seconds',
  13572. m: 'a minute',
  13573. mm: '%d minutes',
  13574. h: 'an hour',
  13575. hh: '%d hours',
  13576. d: 'a day',
  13577. dd: '%d days',
  13578. w: 'a week',
  13579. ww: '%d weeks',
  13580. M: 'a month',
  13581. MM: '%d months',
  13582. y: 'a year',
  13583. yy: '%d years' };
  13584. function relativeTime(number, withoutSuffix, string, isFuture) {
  13585. var output = this._relativeTime[string];
  13586. return isFunction(output) ?
  13587. output(number, withoutSuffix, string, isFuture) :
  13588. output.replace(/%d/i, number);
  13589. }
  13590. function pastFuture(diff, output) {
  13591. var format = this._relativeTime[diff > 0 ? 'future' : 'past'];
  13592. return isFunction(format) ? format(output) : format.replace(/%s/i, output);
  13593. }
  13594. var aliases = {};
  13595. function addUnitAlias(unit, shorthand) {
  13596. var lowerCase = unit.toLowerCase();
  13597. aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;
  13598. }
  13599. function normalizeUnits(units) {
  13600. return typeof units === 'string' ?
  13601. aliases[units] || aliases[units.toLowerCase()] :
  13602. undefined;
  13603. }
  13604. function normalizeObjectUnits(inputObject) {
  13605. var normalizedInput = {},
  13606. normalizedProp,
  13607. prop;
  13608. for (prop in inputObject) {
  13609. if (hasOwnProp(inputObject, prop)) {
  13610. normalizedProp = normalizeUnits(prop);
  13611. if (normalizedProp) {
  13612. normalizedInput[normalizedProp] = inputObject[prop];
  13613. }
  13614. }
  13615. }
  13616. return normalizedInput;
  13617. }
  13618. var priorities = {};
  13619. function addUnitPriority(unit, priority) {
  13620. priorities[unit] = priority;
  13621. }
  13622. function getPrioritizedUnits(unitsObj) {
  13623. var units = [],
  13624. u;
  13625. for (u in unitsObj) {
  13626. if (hasOwnProp(unitsObj, u)) {
  13627. units.push({ unit: u, priority: priorities[u] });
  13628. }
  13629. }
  13630. units.sort(function (a, b) {
  13631. return a.priority - b.priority;
  13632. });
  13633. return units;
  13634. }
  13635. function isLeapYear(year) {
  13636. return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
  13637. }
  13638. function absFloor(number) {
  13639. if (number < 0) {
  13640. // -0 -> 0
  13641. return Math.ceil(number) || 0;
  13642. } else {
  13643. return Math.floor(number);
  13644. }
  13645. }
  13646. function toInt(argumentForCoercion) {
  13647. var coercedNumber = +argumentForCoercion,
  13648. value = 0;
  13649. if (coercedNumber !== 0 && isFinite(coercedNumber)) {
  13650. value = absFloor(coercedNumber);
  13651. }
  13652. return value;
  13653. }
  13654. function makeGetSet(unit, keepTime) {
  13655. return function (value) {
  13656. if (value != null) {
  13657. set$1(this, unit, value);
  13658. hooks.updateOffset(this, keepTime);
  13659. return this;
  13660. } else {
  13661. return get(this, unit);
  13662. }
  13663. };
  13664. }
  13665. function get(mom, unit) {
  13666. return mom.isValid() ?
  13667. mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() :
  13668. NaN;
  13669. }
  13670. function set$1(mom, unit, value) {
  13671. if (mom.isValid() && !isNaN(value)) {
  13672. if (
  13673. unit === 'FullYear' &&
  13674. isLeapYear(mom.year()) &&
  13675. mom.month() === 1 &&
  13676. mom.date() === 29)
  13677. {
  13678. value = toInt(value);
  13679. mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](
  13680. value,
  13681. mom.month(),
  13682. daysInMonth(value, mom.month()));
  13683. } else {
  13684. mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);
  13685. }
  13686. }
  13687. }
  13688. // MOMENTS
  13689. function stringGet(units) {
  13690. units = normalizeUnits(units);
  13691. if (isFunction(this[units])) {
  13692. return this[units]();
  13693. }
  13694. return this;
  13695. }
  13696. function stringSet(units, value) {
  13697. if (typeof units === 'object') {
  13698. units = normalizeObjectUnits(units);
  13699. var prioritized = getPrioritizedUnits(units),
  13700. i,
  13701. prioritizedLen = prioritized.length;
  13702. for (i = 0; i < prioritizedLen; i++) {
  13703. this[prioritized[i].unit](units[prioritized[i].unit]);
  13704. }
  13705. } else {
  13706. units = normalizeUnits(units);
  13707. if (isFunction(this[units])) {
  13708. return this[units](value);
  13709. }
  13710. }
  13711. return this;
  13712. }
  13713. var match1 = /\d/, // 0 - 9
  13714. match2 = /\d\d/, // 00 - 99
  13715. match3 = /\d{3}/, // 000 - 999
  13716. match4 = /\d{4}/, // 0000 - 9999
  13717. match6 = /[+-]?\d{6}/, // -999999 - 999999
  13718. match1to2 = /\d\d?/, // 0 - 99
  13719. match3to4 = /\d\d\d\d?/, // 999 - 9999
  13720. match5to6 = /\d\d\d\d\d\d?/, // 99999 - 999999
  13721. match1to3 = /\d{1,3}/, // 0 - 999
  13722. match1to4 = /\d{1,4}/, // 0 - 9999
  13723. match1to6 = /[+-]?\d{1,6}/, // -999999 - 999999
  13724. matchUnsigned = /\d+/, // 0 - inf
  13725. matchSigned = /[+-]?\d+/, // -inf - inf
  13726. matchOffset = /Z|[+-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z
  13727. matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z
  13728. matchTimestamp = /[+-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123
  13729. // any word (or two) characters or numbers including two/three word month in arabic.
  13730. // includes scottish gaelic two word and hyphenated months
  13731. matchWord =
  13732. /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,
  13733. regexes;
  13734. regexes = {};
  13735. function addRegexToken(token, regex, strictRegex) {
  13736. regexes[token] = isFunction(regex) ?
  13737. regex :
  13738. function (isStrict, localeData) {
  13739. return isStrict && strictRegex ? strictRegex : regex;
  13740. };
  13741. }
  13742. function getParseRegexForToken(token, config) {
  13743. if (!hasOwnProp(regexes, token)) {
  13744. return new RegExp(unescapeFormat(token));
  13745. }
  13746. return regexes[token](config._strict, config._locale);
  13747. }
  13748. // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript
  13749. function unescapeFormat(s) {
  13750. return regexEscape(
  13751. s.
  13752. replace('\\', '').
  13753. replace(
  13754. /\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,
  13755. function (matched, p1, p2, p3, p4) {
  13756. return p1 || p2 || p3 || p4;
  13757. }));
  13758. }
  13759. function regexEscape(s) {
  13760. return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
  13761. }
  13762. var tokens = {};
  13763. function addParseToken(token, callback) {
  13764. var i,
  13765. func = callback,
  13766. tokenLen;
  13767. if (typeof token === 'string') {
  13768. token = [token];
  13769. }
  13770. if (isNumber(callback)) {
  13771. func = function func(input, array) {
  13772. array[callback] = toInt(input);
  13773. };
  13774. }
  13775. tokenLen = token.length;
  13776. for (i = 0; i < tokenLen; i++) {
  13777. tokens[token[i]] = func;
  13778. }
  13779. }
  13780. function addWeekParseToken(token, callback) {
  13781. addParseToken(token, function (input, array, config, token) {
  13782. config._w = config._w || {};
  13783. callback(input, config._w, config, token);
  13784. });
  13785. }
  13786. function addTimeToArrayFromToken(token, input, config) {
  13787. if (input != null && hasOwnProp(tokens, token)) {
  13788. tokens[token](input, config._a, config, token);
  13789. }
  13790. }
  13791. var YEAR = 0,
  13792. MONTH = 1,
  13793. DATE = 2,
  13794. HOUR = 3,
  13795. MINUTE = 4,
  13796. SECOND = 5,
  13797. MILLISECOND = 6,
  13798. WEEK = 7,
  13799. WEEKDAY = 8;
  13800. function mod(n, x) {
  13801. return (n % x + x) % x;
  13802. }
  13803. var indexOf;
  13804. if (Array.prototype.indexOf) {
  13805. indexOf = Array.prototype.indexOf;
  13806. } else {
  13807. indexOf = function indexOf(o) {
  13808. // I know
  13809. var i;
  13810. for (i = 0; i < this.length; ++i) {
  13811. if (this[i] === o) {
  13812. return i;
  13813. }
  13814. }
  13815. return -1;
  13816. };
  13817. }
  13818. function daysInMonth(year, month) {
  13819. if (isNaN(year) || isNaN(month)) {
  13820. return NaN;
  13821. }
  13822. var modMonth = mod(month, 12);
  13823. year += (month - modMonth) / 12;
  13824. return modMonth === 1 ?
  13825. isLeapYear(year) ?
  13826. 29 :
  13827. 28 :
  13828. 31 - modMonth % 7 % 2;
  13829. }
  13830. // FORMATTING
  13831. addFormatToken('M', ['MM', 2], 'Mo', function () {
  13832. return this.month() + 1;
  13833. });
  13834. addFormatToken('MMM', 0, 0, function (format) {
  13835. return this.localeData().monthsShort(this, format);
  13836. });
  13837. addFormatToken('MMMM', 0, 0, function (format) {
  13838. return this.localeData().months(this, format);
  13839. });
  13840. // ALIASES
  13841. addUnitAlias('month', 'M');
  13842. // PRIORITY
  13843. addUnitPriority('month', 8);
  13844. // PARSING
  13845. addRegexToken('M', match1to2);
  13846. addRegexToken('MM', match1to2, match2);
  13847. addRegexToken('MMM', function (isStrict, locale) {
  13848. return locale.monthsShortRegex(isStrict);
  13849. });
  13850. addRegexToken('MMMM', function (isStrict, locale) {
  13851. return locale.monthsRegex(isStrict);
  13852. });
  13853. addParseToken(['M', 'MM'], function (input, array) {
  13854. array[MONTH] = toInt(input) - 1;
  13855. });
  13856. addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {
  13857. var month = config._locale.monthsParse(input, token, config._strict);
  13858. // if we didn't find a month name, mark the date as invalid.
  13859. if (month != null) {
  13860. array[MONTH] = month;
  13861. } else {
  13862. getParsingFlags(config).invalidMonth = input;
  13863. }
  13864. });
  13865. // LOCALES
  13866. var defaultLocaleMonths =
  13867. 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  13868. '_'),
  13869. defaultLocaleMonthsShort =
  13870. 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  13871. MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,
  13872. defaultMonthsShortRegex = matchWord,
  13873. defaultMonthsRegex = matchWord;
  13874. function localeMonths(m, format) {
  13875. if (!m) {
  13876. return isArray(this._months) ?
  13877. this._months :
  13878. this._months['standalone'];
  13879. }
  13880. return isArray(this._months) ?
  13881. this._months[m.month()] :
  13882. this._months[
  13883. (this._months.isFormat || MONTHS_IN_FORMAT).test(format) ?
  13884. 'format' :
  13885. 'standalone'][
  13886. m.month()];
  13887. }
  13888. function localeMonthsShort(m, format) {
  13889. if (!m) {
  13890. return isArray(this._monthsShort) ?
  13891. this._monthsShort :
  13892. this._monthsShort['standalone'];
  13893. }
  13894. return isArray(this._monthsShort) ?
  13895. this._monthsShort[m.month()] :
  13896. this._monthsShort[
  13897. MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'][
  13898. m.month()];
  13899. }
  13900. function handleStrictParse(monthName, format, strict) {
  13901. var i,
  13902. ii,
  13903. mom,
  13904. llc = monthName.toLocaleLowerCase();
  13905. if (!this._monthsParse) {
  13906. // this is not used
  13907. this._monthsParse = [];
  13908. this._longMonthsParse = [];
  13909. this._shortMonthsParse = [];
  13910. for (i = 0; i < 12; ++i) {
  13911. mom = createUTC([2000, i]);
  13912. this._shortMonthsParse[i] = this.monthsShort(
  13913. mom,
  13914. '').
  13915. toLocaleLowerCase();
  13916. this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();
  13917. }
  13918. }
  13919. if (strict) {
  13920. if (format === 'MMM') {
  13921. ii = indexOf.call(this._shortMonthsParse, llc);
  13922. return ii !== -1 ? ii : null;
  13923. } else {
  13924. ii = indexOf.call(this._longMonthsParse, llc);
  13925. return ii !== -1 ? ii : null;
  13926. }
  13927. } else {
  13928. if (format === 'MMM') {
  13929. ii = indexOf.call(this._shortMonthsParse, llc);
  13930. if (ii !== -1) {
  13931. return ii;
  13932. }
  13933. ii = indexOf.call(this._longMonthsParse, llc);
  13934. return ii !== -1 ? ii : null;
  13935. } else {
  13936. ii = indexOf.call(this._longMonthsParse, llc);
  13937. if (ii !== -1) {
  13938. return ii;
  13939. }
  13940. ii = indexOf.call(this._shortMonthsParse, llc);
  13941. return ii !== -1 ? ii : null;
  13942. }
  13943. }
  13944. }
  13945. function localeMonthsParse(monthName, format, strict) {
  13946. var i, mom, regex;
  13947. if (this._monthsParseExact) {
  13948. return handleStrictParse.call(this, monthName, format, strict);
  13949. }
  13950. if (!this._monthsParse) {
  13951. this._monthsParse = [];
  13952. this._longMonthsParse = [];
  13953. this._shortMonthsParse = [];
  13954. }
  13955. // TODO: add sorting
  13956. // Sorting makes sure if one month (or abbr) is a prefix of another
  13957. // see sorting in computeMonthsParse
  13958. for (i = 0; i < 12; i++) {
  13959. // make the regex if we don't have it already
  13960. mom = createUTC([2000, i]);
  13961. if (strict && !this._longMonthsParse[i]) {
  13962. this._longMonthsParse[i] = new RegExp(
  13963. '^' + this.months(mom, '').replace('.', '') + '$',
  13964. 'i');
  13965. this._shortMonthsParse[i] = new RegExp(
  13966. '^' + this.monthsShort(mom, '').replace('.', '') + '$',
  13967. 'i');
  13968. }
  13969. if (!strict && !this._monthsParse[i]) {
  13970. regex =
  13971. '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');
  13972. this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');
  13973. }
  13974. // test the regex
  13975. if (
  13976. strict &&
  13977. format === 'MMMM' &&
  13978. this._longMonthsParse[i].test(monthName))
  13979. {
  13980. return i;
  13981. } else if (
  13982. strict &&
  13983. format === 'MMM' &&
  13984. this._shortMonthsParse[i].test(monthName))
  13985. {
  13986. return i;
  13987. } else if (!strict && this._monthsParse[i].test(monthName)) {
  13988. return i;
  13989. }
  13990. }
  13991. }
  13992. // MOMENTS
  13993. function setMonth(mom, value) {
  13994. var dayOfMonth;
  13995. if (!mom.isValid()) {
  13996. // No op
  13997. return mom;
  13998. }
  13999. if (typeof value === 'string') {
  14000. if (/^\d+$/.test(value)) {
  14001. value = toInt(value);
  14002. } else {
  14003. value = mom.localeData().monthsParse(value);
  14004. // TODO: Another silent failure?
  14005. if (!isNumber(value)) {
  14006. return mom;
  14007. }
  14008. }
  14009. }
  14010. dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));
  14011. mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);
  14012. return mom;
  14013. }
  14014. function getSetMonth(value) {
  14015. if (value != null) {
  14016. setMonth(this, value);
  14017. hooks.updateOffset(this, true);
  14018. return this;
  14019. } else {
  14020. return get(this, 'Month');
  14021. }
  14022. }
  14023. function getDaysInMonth() {
  14024. return daysInMonth(this.year(), this.month());
  14025. }
  14026. function monthsShortRegex(isStrict) {
  14027. if (this._monthsParseExact) {
  14028. if (!hasOwnProp(this, '_monthsRegex')) {
  14029. computeMonthsParse.call(this);
  14030. }
  14031. if (isStrict) {
  14032. return this._monthsShortStrictRegex;
  14033. } else {
  14034. return this._monthsShortRegex;
  14035. }
  14036. } else {
  14037. if (!hasOwnProp(this, '_monthsShortRegex')) {
  14038. this._monthsShortRegex = defaultMonthsShortRegex;
  14039. }
  14040. return this._monthsShortStrictRegex && isStrict ?
  14041. this._monthsShortStrictRegex :
  14042. this._monthsShortRegex;
  14043. }
  14044. }
  14045. function monthsRegex(isStrict) {
  14046. if (this._monthsParseExact) {
  14047. if (!hasOwnProp(this, '_monthsRegex')) {
  14048. computeMonthsParse.call(this);
  14049. }
  14050. if (isStrict) {
  14051. return this._monthsStrictRegex;
  14052. } else {
  14053. return this._monthsRegex;
  14054. }
  14055. } else {
  14056. if (!hasOwnProp(this, '_monthsRegex')) {
  14057. this._monthsRegex = defaultMonthsRegex;
  14058. }
  14059. return this._monthsStrictRegex && isStrict ?
  14060. this._monthsStrictRegex :
  14061. this._monthsRegex;
  14062. }
  14063. }
  14064. function computeMonthsParse() {
  14065. function cmpLenRev(a, b) {
  14066. return b.length - a.length;
  14067. }
  14068. var shortPieces = [],
  14069. longPieces = [],
  14070. mixedPieces = [],
  14071. i,
  14072. mom;
  14073. for (i = 0; i < 12; i++) {
  14074. // make the regex if we don't have it already
  14075. mom = createUTC([2000, i]);
  14076. shortPieces.push(this.monthsShort(mom, ''));
  14077. longPieces.push(this.months(mom, ''));
  14078. mixedPieces.push(this.months(mom, ''));
  14079. mixedPieces.push(this.monthsShort(mom, ''));
  14080. }
  14081. // Sorting makes sure if one month (or abbr) is a prefix of another it
  14082. // will match the longer piece.
  14083. shortPieces.sort(cmpLenRev);
  14084. longPieces.sort(cmpLenRev);
  14085. mixedPieces.sort(cmpLenRev);
  14086. for (i = 0; i < 12; i++) {
  14087. shortPieces[i] = regexEscape(shortPieces[i]);
  14088. longPieces[i] = regexEscape(longPieces[i]);
  14089. }
  14090. for (i = 0; i < 24; i++) {
  14091. mixedPieces[i] = regexEscape(mixedPieces[i]);
  14092. }
  14093. this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');
  14094. this._monthsShortRegex = this._monthsRegex;
  14095. this._monthsStrictRegex = new RegExp(
  14096. '^(' + longPieces.join('|') + ')',
  14097. 'i');
  14098. this._monthsShortStrictRegex = new RegExp(
  14099. '^(' + shortPieces.join('|') + ')',
  14100. 'i');
  14101. }
  14102. // FORMATTING
  14103. addFormatToken('Y', 0, 0, function () {
  14104. var y = this.year();
  14105. return y <= 9999 ? zeroFill(y, 4) : '+' + y;
  14106. });
  14107. addFormatToken(0, ['YY', 2], 0, function () {
  14108. return this.year() % 100;
  14109. });
  14110. addFormatToken(0, ['YYYY', 4], 0, 'year');
  14111. addFormatToken(0, ['YYYYY', 5], 0, 'year');
  14112. addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');
  14113. // ALIASES
  14114. addUnitAlias('year', 'y');
  14115. // PRIORITIES
  14116. addUnitPriority('year', 1);
  14117. // PARSING
  14118. addRegexToken('Y', matchSigned);
  14119. addRegexToken('YY', match1to2, match2);
  14120. addRegexToken('YYYY', match1to4, match4);
  14121. addRegexToken('YYYYY', match1to6, match6);
  14122. addRegexToken('YYYYYY', match1to6, match6);
  14123. addParseToken(['YYYYY', 'YYYYYY'], YEAR);
  14124. addParseToken('YYYY', function (input, array) {
  14125. array[YEAR] =
  14126. input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);
  14127. });
  14128. addParseToken('YY', function (input, array) {
  14129. array[YEAR] = hooks.parseTwoDigitYear(input);
  14130. });
  14131. addParseToken('Y', function (input, array) {
  14132. array[YEAR] = parseInt(input, 10);
  14133. });
  14134. // HELPERS
  14135. function daysInYear(year) {
  14136. return isLeapYear(year) ? 366 : 365;
  14137. }
  14138. // HOOKS
  14139. hooks.parseTwoDigitYear = function (input) {
  14140. return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);
  14141. };
  14142. // MOMENTS
  14143. var getSetYear = makeGetSet('FullYear', true);
  14144. function getIsLeapYear() {
  14145. return isLeapYear(this.year());
  14146. }
  14147. function createDate(y, m, d, h, M, s, ms) {
  14148. // can't just apply() to create a date:
  14149. // https://stackoverflow.com/q/181348
  14150. var date;
  14151. // the date constructor remaps years 0-99 to 1900-1999
  14152. if (y < 100 && y >= 0) {
  14153. // preserve leap years using a full 400 year cycle, then reset
  14154. date = new Date(y + 400, m, d, h, M, s, ms);
  14155. if (isFinite(date.getFullYear())) {
  14156. date.setFullYear(y);
  14157. }
  14158. } else {
  14159. date = new Date(y, m, d, h, M, s, ms);
  14160. }
  14161. return date;
  14162. }
  14163. function createUTCDate(y) {
  14164. var date, args;
  14165. // the Date.UTC function remaps years 0-99 to 1900-1999
  14166. if (y < 100 && y >= 0) {
  14167. args = Array.prototype.slice.call(arguments);
  14168. // preserve leap years using a full 400 year cycle, then reset
  14169. args[0] = y + 400;
  14170. date = new Date(Date.UTC.apply(null, args));
  14171. if (isFinite(date.getUTCFullYear())) {
  14172. date.setUTCFullYear(y);
  14173. }
  14174. } else {
  14175. date = new Date(Date.UTC.apply(null, arguments));
  14176. }
  14177. return date;
  14178. }
  14179. // start-of-first-week - start-of-year
  14180. function firstWeekOffset(year, dow, doy) {
  14181. var // first-week day -- which january is always in the first week (4 for iso, 1 for other)
  14182. fwd = 7 + dow - doy,
  14183. // first-week day local weekday -- which local weekday is fwd
  14184. fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;
  14185. return -fwdlw + fwd - 1;
  14186. }
  14187. // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday
  14188. function dayOfYearFromWeeks(year, week, weekday, dow, doy) {
  14189. var localWeekday = (7 + weekday - dow) % 7,
  14190. weekOffset = firstWeekOffset(year, dow, doy),
  14191. dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,
  14192. resYear,
  14193. resDayOfYear;
  14194. if (dayOfYear <= 0) {
  14195. resYear = year - 1;
  14196. resDayOfYear = daysInYear(resYear) + dayOfYear;
  14197. } else if (dayOfYear > daysInYear(year)) {
  14198. resYear = year + 1;
  14199. resDayOfYear = dayOfYear - daysInYear(year);
  14200. } else {
  14201. resYear = year;
  14202. resDayOfYear = dayOfYear;
  14203. }
  14204. return {
  14205. year: resYear,
  14206. dayOfYear: resDayOfYear };
  14207. }
  14208. function weekOfYear(mom, dow, doy) {
  14209. var weekOffset = firstWeekOffset(mom.year(), dow, doy),
  14210. week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,
  14211. resWeek,
  14212. resYear;
  14213. if (week < 1) {
  14214. resYear = mom.year() - 1;
  14215. resWeek = week + weeksInYear(resYear, dow, doy);
  14216. } else if (week > weeksInYear(mom.year(), dow, doy)) {
  14217. resWeek = week - weeksInYear(mom.year(), dow, doy);
  14218. resYear = mom.year() + 1;
  14219. } else {
  14220. resYear = mom.year();
  14221. resWeek = week;
  14222. }
  14223. return {
  14224. week: resWeek,
  14225. year: resYear };
  14226. }
  14227. function weeksInYear(year, dow, doy) {
  14228. var weekOffset = firstWeekOffset(year, dow, doy),
  14229. weekOffsetNext = firstWeekOffset(year + 1, dow, doy);
  14230. return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;
  14231. }
  14232. // FORMATTING
  14233. addFormatToken('w', ['ww', 2], 'wo', 'week');
  14234. addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');
  14235. // ALIASES
  14236. addUnitAlias('week', 'w');
  14237. addUnitAlias('isoWeek', 'W');
  14238. // PRIORITIES
  14239. addUnitPriority('week', 5);
  14240. addUnitPriority('isoWeek', 5);
  14241. // PARSING
  14242. addRegexToken('w', match1to2);
  14243. addRegexToken('ww', match1to2, match2);
  14244. addRegexToken('W', match1to2);
  14245. addRegexToken('WW', match1to2, match2);
  14246. addWeekParseToken(
  14247. ['w', 'ww', 'W', 'WW'],
  14248. function (input, week, config, token) {
  14249. week[token.substr(0, 1)] = toInt(input);
  14250. });
  14251. // HELPERS
  14252. // LOCALES
  14253. function localeWeek(mom) {
  14254. return weekOfYear(mom, this._week.dow, this._week.doy).week;
  14255. }
  14256. var defaultLocaleWeek = {
  14257. dow: 0, // Sunday is the first day of the week.
  14258. doy: 6 // The week that contains Jan 6th is the first week of the year.
  14259. };
  14260. function localeFirstDayOfWeek() {
  14261. return this._week.dow;
  14262. }
  14263. function localeFirstDayOfYear() {
  14264. return this._week.doy;
  14265. }
  14266. // MOMENTS
  14267. function getSetWeek(input) {
  14268. var week = this.localeData().week(this);
  14269. return input == null ? week : this.add((input - week) * 7, 'd');
  14270. }
  14271. function getSetISOWeek(input) {
  14272. var week = weekOfYear(this, 1, 4).week;
  14273. return input == null ? week : this.add((input - week) * 7, 'd');
  14274. }
  14275. // FORMATTING
  14276. addFormatToken('d', 0, 'do', 'day');
  14277. addFormatToken('dd', 0, 0, function (format) {
  14278. return this.localeData().weekdaysMin(this, format);
  14279. });
  14280. addFormatToken('ddd', 0, 0, function (format) {
  14281. return this.localeData().weekdaysShort(this, format);
  14282. });
  14283. addFormatToken('dddd', 0, 0, function (format) {
  14284. return this.localeData().weekdays(this, format);
  14285. });
  14286. addFormatToken('e', 0, 0, 'weekday');
  14287. addFormatToken('E', 0, 0, 'isoWeekday');
  14288. // ALIASES
  14289. addUnitAlias('day', 'd');
  14290. addUnitAlias('weekday', 'e');
  14291. addUnitAlias('isoWeekday', 'E');
  14292. // PRIORITY
  14293. addUnitPriority('day', 11);
  14294. addUnitPriority('weekday', 11);
  14295. addUnitPriority('isoWeekday', 11);
  14296. // PARSING
  14297. addRegexToken('d', match1to2);
  14298. addRegexToken('e', match1to2);
  14299. addRegexToken('E', match1to2);
  14300. addRegexToken('dd', function (isStrict, locale) {
  14301. return locale.weekdaysMinRegex(isStrict);
  14302. });
  14303. addRegexToken('ddd', function (isStrict, locale) {
  14304. return locale.weekdaysShortRegex(isStrict);
  14305. });
  14306. addRegexToken('dddd', function (isStrict, locale) {
  14307. return locale.weekdaysRegex(isStrict);
  14308. });
  14309. addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {
  14310. var weekday = config._locale.weekdaysParse(input, token, config._strict);
  14311. // if we didn't get a weekday name, mark the date as invalid
  14312. if (weekday != null) {
  14313. week.d = weekday;
  14314. } else {
  14315. getParsingFlags(config).invalidWeekday = input;
  14316. }
  14317. });
  14318. addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {
  14319. week[token] = toInt(input);
  14320. });
  14321. // HELPERS
  14322. function parseWeekday(input, locale) {
  14323. if (typeof input !== 'string') {
  14324. return input;
  14325. }
  14326. if (!isNaN(input)) {
  14327. return parseInt(input, 10);
  14328. }
  14329. input = locale.weekdaysParse(input);
  14330. if (typeof input === 'number') {
  14331. return input;
  14332. }
  14333. return null;
  14334. }
  14335. function parseIsoWeekday(input, locale) {
  14336. if (typeof input === 'string') {
  14337. return locale.weekdaysParse(input) % 7 || 7;
  14338. }
  14339. return isNaN(input) ? null : input;
  14340. }
  14341. // LOCALES
  14342. function shiftWeekdays(ws, n) {
  14343. return ws.slice(n, 7).concat(ws.slice(0, n));
  14344. }
  14345. var defaultLocaleWeekdays =
  14346. 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
  14347. defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  14348. defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  14349. defaultWeekdaysRegex = matchWord,
  14350. defaultWeekdaysShortRegex = matchWord,
  14351. defaultWeekdaysMinRegex = matchWord;
  14352. function localeWeekdays(m, format) {
  14353. var weekdays = isArray(this._weekdays) ?
  14354. this._weekdays :
  14355. this._weekdays[
  14356. m && m !== true && this._weekdays.isFormat.test(format) ?
  14357. 'format' :
  14358. 'standalone'];
  14359. return m === true ?
  14360. shiftWeekdays(weekdays, this._week.dow) :
  14361. m ?
  14362. weekdays[m.day()] :
  14363. weekdays;
  14364. }
  14365. function localeWeekdaysShort(m) {
  14366. return m === true ?
  14367. shiftWeekdays(this._weekdaysShort, this._week.dow) :
  14368. m ?
  14369. this._weekdaysShort[m.day()] :
  14370. this._weekdaysShort;
  14371. }
  14372. function localeWeekdaysMin(m) {
  14373. return m === true ?
  14374. shiftWeekdays(this._weekdaysMin, this._week.dow) :
  14375. m ?
  14376. this._weekdaysMin[m.day()] :
  14377. this._weekdaysMin;
  14378. }
  14379. function handleStrictParse$1(weekdayName, format, strict) {
  14380. var i,
  14381. ii,
  14382. mom,
  14383. llc = weekdayName.toLocaleLowerCase();
  14384. if (!this._weekdaysParse) {
  14385. this._weekdaysParse = [];
  14386. this._shortWeekdaysParse = [];
  14387. this._minWeekdaysParse = [];
  14388. for (i = 0; i < 7; ++i) {
  14389. mom = createUTC([2000, 1]).day(i);
  14390. this._minWeekdaysParse[i] = this.weekdaysMin(
  14391. mom,
  14392. '').
  14393. toLocaleLowerCase();
  14394. this._shortWeekdaysParse[i] = this.weekdaysShort(
  14395. mom,
  14396. '').
  14397. toLocaleLowerCase();
  14398. this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();
  14399. }
  14400. }
  14401. if (strict) {
  14402. if (format === 'dddd') {
  14403. ii = indexOf.call(this._weekdaysParse, llc);
  14404. return ii !== -1 ? ii : null;
  14405. } else if (format === 'ddd') {
  14406. ii = indexOf.call(this._shortWeekdaysParse, llc);
  14407. return ii !== -1 ? ii : null;
  14408. } else {
  14409. ii = indexOf.call(this._minWeekdaysParse, llc);
  14410. return ii !== -1 ? ii : null;
  14411. }
  14412. } else {
  14413. if (format === 'dddd') {
  14414. ii = indexOf.call(this._weekdaysParse, llc);
  14415. if (ii !== -1) {
  14416. return ii;
  14417. }
  14418. ii = indexOf.call(this._shortWeekdaysParse, llc);
  14419. if (ii !== -1) {
  14420. return ii;
  14421. }
  14422. ii = indexOf.call(this._minWeekdaysParse, llc);
  14423. return ii !== -1 ? ii : null;
  14424. } else if (format === 'ddd') {
  14425. ii = indexOf.call(this._shortWeekdaysParse, llc);
  14426. if (ii !== -1) {
  14427. return ii;
  14428. }
  14429. ii = indexOf.call(this._weekdaysParse, llc);
  14430. if (ii !== -1) {
  14431. return ii;
  14432. }
  14433. ii = indexOf.call(this._minWeekdaysParse, llc);
  14434. return ii !== -1 ? ii : null;
  14435. } else {
  14436. ii = indexOf.call(this._minWeekdaysParse, llc);
  14437. if (ii !== -1) {
  14438. return ii;
  14439. }
  14440. ii = indexOf.call(this._weekdaysParse, llc);
  14441. if (ii !== -1) {
  14442. return ii;
  14443. }
  14444. ii = indexOf.call(this._shortWeekdaysParse, llc);
  14445. return ii !== -1 ? ii : null;
  14446. }
  14447. }
  14448. }
  14449. function localeWeekdaysParse(weekdayName, format, strict) {
  14450. var i, mom, regex;
  14451. if (this._weekdaysParseExact) {
  14452. return handleStrictParse$1.call(this, weekdayName, format, strict);
  14453. }
  14454. if (!this._weekdaysParse) {
  14455. this._weekdaysParse = [];
  14456. this._minWeekdaysParse = [];
  14457. this._shortWeekdaysParse = [];
  14458. this._fullWeekdaysParse = [];
  14459. }
  14460. for (i = 0; i < 7; i++) {
  14461. // make the regex if we don't have it already
  14462. mom = createUTC([2000, 1]).day(i);
  14463. if (strict && !this._fullWeekdaysParse[i]) {
  14464. this._fullWeekdaysParse[i] = new RegExp(
  14465. '^' + this.weekdays(mom, '').replace('.', '\\.?') + '$',
  14466. 'i');
  14467. this._shortWeekdaysParse[i] = new RegExp(
  14468. '^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$',
  14469. 'i');
  14470. this._minWeekdaysParse[i] = new RegExp(
  14471. '^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$',
  14472. 'i');
  14473. }
  14474. if (!this._weekdaysParse[i]) {
  14475. regex =
  14476. '^' +
  14477. this.weekdays(mom, '') +
  14478. '|^' +
  14479. this.weekdaysShort(mom, '') +
  14480. '|^' +
  14481. this.weekdaysMin(mom, '');
  14482. this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');
  14483. }
  14484. // test the regex
  14485. if (
  14486. strict &&
  14487. format === 'dddd' &&
  14488. this._fullWeekdaysParse[i].test(weekdayName))
  14489. {
  14490. return i;
  14491. } else if (
  14492. strict &&
  14493. format === 'ddd' &&
  14494. this._shortWeekdaysParse[i].test(weekdayName))
  14495. {
  14496. return i;
  14497. } else if (
  14498. strict &&
  14499. format === 'dd' &&
  14500. this._minWeekdaysParse[i].test(weekdayName))
  14501. {
  14502. return i;
  14503. } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {
  14504. return i;
  14505. }
  14506. }
  14507. }
  14508. // MOMENTS
  14509. function getSetDayOfWeek(input) {
  14510. if (!this.isValid()) {
  14511. return input != null ? this : NaN;
  14512. }
  14513. var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
  14514. if (input != null) {
  14515. input = parseWeekday(input, this.localeData());
  14516. return this.add(input - day, 'd');
  14517. } else {
  14518. return day;
  14519. }
  14520. }
  14521. function getSetLocaleDayOfWeek(input) {
  14522. if (!this.isValid()) {
  14523. return input != null ? this : NaN;
  14524. }
  14525. var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;
  14526. return input == null ? weekday : this.add(input - weekday, 'd');
  14527. }
  14528. function getSetISODayOfWeek(input) {
  14529. if (!this.isValid()) {
  14530. return input != null ? this : NaN;
  14531. }
  14532. // behaves the same as moment#day except
  14533. // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)
  14534. // as a setter, sunday should belong to the previous week.
  14535. if (input != null) {
  14536. var weekday = parseIsoWeekday(input, this.localeData());
  14537. return this.day(this.day() % 7 ? weekday : weekday - 7);
  14538. } else {
  14539. return this.day() || 7;
  14540. }
  14541. }
  14542. function weekdaysRegex(isStrict) {
  14543. if (this._weekdaysParseExact) {
  14544. if (!hasOwnProp(this, '_weekdaysRegex')) {
  14545. computeWeekdaysParse.call(this);
  14546. }
  14547. if (isStrict) {
  14548. return this._weekdaysStrictRegex;
  14549. } else {
  14550. return this._weekdaysRegex;
  14551. }
  14552. } else {
  14553. if (!hasOwnProp(this, '_weekdaysRegex')) {
  14554. this._weekdaysRegex = defaultWeekdaysRegex;
  14555. }
  14556. return this._weekdaysStrictRegex && isStrict ?
  14557. this._weekdaysStrictRegex :
  14558. this._weekdaysRegex;
  14559. }
  14560. }
  14561. function weekdaysShortRegex(isStrict) {
  14562. if (this._weekdaysParseExact) {
  14563. if (!hasOwnProp(this, '_weekdaysRegex')) {
  14564. computeWeekdaysParse.call(this);
  14565. }
  14566. if (isStrict) {
  14567. return this._weekdaysShortStrictRegex;
  14568. } else {
  14569. return this._weekdaysShortRegex;
  14570. }
  14571. } else {
  14572. if (!hasOwnProp(this, '_weekdaysShortRegex')) {
  14573. this._weekdaysShortRegex = defaultWeekdaysShortRegex;
  14574. }
  14575. return this._weekdaysShortStrictRegex && isStrict ?
  14576. this._weekdaysShortStrictRegex :
  14577. this._weekdaysShortRegex;
  14578. }
  14579. }
  14580. function weekdaysMinRegex(isStrict) {
  14581. if (this._weekdaysParseExact) {
  14582. if (!hasOwnProp(this, '_weekdaysRegex')) {
  14583. computeWeekdaysParse.call(this);
  14584. }
  14585. if (isStrict) {
  14586. return this._weekdaysMinStrictRegex;
  14587. } else {
  14588. return this._weekdaysMinRegex;
  14589. }
  14590. } else {
  14591. if (!hasOwnProp(this, '_weekdaysMinRegex')) {
  14592. this._weekdaysMinRegex = defaultWeekdaysMinRegex;
  14593. }
  14594. return this._weekdaysMinStrictRegex && isStrict ?
  14595. this._weekdaysMinStrictRegex :
  14596. this._weekdaysMinRegex;
  14597. }
  14598. }
  14599. function computeWeekdaysParse() {
  14600. function cmpLenRev(a, b) {
  14601. return b.length - a.length;
  14602. }
  14603. var minPieces = [],
  14604. shortPieces = [],
  14605. longPieces = [],
  14606. mixedPieces = [],
  14607. i,
  14608. mom,
  14609. minp,
  14610. shortp,
  14611. longp;
  14612. for (i = 0; i < 7; i++) {
  14613. // make the regex if we don't have it already
  14614. mom = createUTC([2000, 1]).day(i);
  14615. minp = regexEscape(this.weekdaysMin(mom, ''));
  14616. shortp = regexEscape(this.weekdaysShort(mom, ''));
  14617. longp = regexEscape(this.weekdays(mom, ''));
  14618. minPieces.push(minp);
  14619. shortPieces.push(shortp);
  14620. longPieces.push(longp);
  14621. mixedPieces.push(minp);
  14622. mixedPieces.push(shortp);
  14623. mixedPieces.push(longp);
  14624. }
  14625. // Sorting makes sure if one weekday (or abbr) is a prefix of another it
  14626. // will match the longer piece.
  14627. minPieces.sort(cmpLenRev);
  14628. shortPieces.sort(cmpLenRev);
  14629. longPieces.sort(cmpLenRev);
  14630. mixedPieces.sort(cmpLenRev);
  14631. this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');
  14632. this._weekdaysShortRegex = this._weekdaysRegex;
  14633. this._weekdaysMinRegex = this._weekdaysRegex;
  14634. this._weekdaysStrictRegex = new RegExp(
  14635. '^(' + longPieces.join('|') + ')',
  14636. 'i');
  14637. this._weekdaysShortStrictRegex = new RegExp(
  14638. '^(' + shortPieces.join('|') + ')',
  14639. 'i');
  14640. this._weekdaysMinStrictRegex = new RegExp(
  14641. '^(' + minPieces.join('|') + ')',
  14642. 'i');
  14643. }
  14644. // FORMATTING
  14645. function hFormat() {
  14646. return this.hours() % 12 || 12;
  14647. }
  14648. function kFormat() {
  14649. return this.hours() || 24;
  14650. }
  14651. addFormatToken('H', ['HH', 2], 0, 'hour');
  14652. addFormatToken('h', ['hh', 2], 0, hFormat);
  14653. addFormatToken('k', ['kk', 2], 0, kFormat);
  14654. addFormatToken('hmm', 0, 0, function () {
  14655. return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);
  14656. });
  14657. addFormatToken('hmmss', 0, 0, function () {
  14658. return (
  14659. '' +
  14660. hFormat.apply(this) +
  14661. zeroFill(this.minutes(), 2) +
  14662. zeroFill(this.seconds(), 2));
  14663. });
  14664. addFormatToken('Hmm', 0, 0, function () {
  14665. return '' + this.hours() + zeroFill(this.minutes(), 2);
  14666. });
  14667. addFormatToken('Hmmss', 0, 0, function () {
  14668. return (
  14669. '' +
  14670. this.hours() +
  14671. zeroFill(this.minutes(), 2) +
  14672. zeroFill(this.seconds(), 2));
  14673. });
  14674. function meridiem(token, lowercase) {
  14675. addFormatToken(token, 0, 0, function () {
  14676. return this.localeData().meridiem(
  14677. this.hours(),
  14678. this.minutes(),
  14679. lowercase);
  14680. });
  14681. }
  14682. meridiem('a', true);
  14683. meridiem('A', false);
  14684. // ALIASES
  14685. addUnitAlias('hour', 'h');
  14686. // PRIORITY
  14687. addUnitPriority('hour', 13);
  14688. // PARSING
  14689. function matchMeridiem(isStrict, locale) {
  14690. return locale._meridiemParse;
  14691. }
  14692. addRegexToken('a', matchMeridiem);
  14693. addRegexToken('A', matchMeridiem);
  14694. addRegexToken('H', match1to2);
  14695. addRegexToken('h', match1to2);
  14696. addRegexToken('k', match1to2);
  14697. addRegexToken('HH', match1to2, match2);
  14698. addRegexToken('hh', match1to2, match2);
  14699. addRegexToken('kk', match1to2, match2);
  14700. addRegexToken('hmm', match3to4);
  14701. addRegexToken('hmmss', match5to6);
  14702. addRegexToken('Hmm', match3to4);
  14703. addRegexToken('Hmmss', match5to6);
  14704. addParseToken(['H', 'HH'], HOUR);
  14705. addParseToken(['k', 'kk'], function (input, array, config) {
  14706. var kInput = toInt(input);
  14707. array[HOUR] = kInput === 24 ? 0 : kInput;
  14708. });
  14709. addParseToken(['a', 'A'], function (input, array, config) {
  14710. config._isPm = config._locale.isPM(input);
  14711. config._meridiem = input;
  14712. });
  14713. addParseToken(['h', 'hh'], function (input, array, config) {
  14714. array[HOUR] = toInt(input);
  14715. getParsingFlags(config).bigHour = true;
  14716. });
  14717. addParseToken('hmm', function (input, array, config) {
  14718. var pos = input.length - 2;
  14719. array[HOUR] = toInt(input.substr(0, pos));
  14720. array[MINUTE] = toInt(input.substr(pos));
  14721. getParsingFlags(config).bigHour = true;
  14722. });
  14723. addParseToken('hmmss', function (input, array, config) {
  14724. var pos1 = input.length - 4,
  14725. pos2 = input.length - 2;
  14726. array[HOUR] = toInt(input.substr(0, pos1));
  14727. array[MINUTE] = toInt(input.substr(pos1, 2));
  14728. array[SECOND] = toInt(input.substr(pos2));
  14729. getParsingFlags(config).bigHour = true;
  14730. });
  14731. addParseToken('Hmm', function (input, array, config) {
  14732. var pos = input.length - 2;
  14733. array[HOUR] = toInt(input.substr(0, pos));
  14734. array[MINUTE] = toInt(input.substr(pos));
  14735. });
  14736. addParseToken('Hmmss', function (input, array, config) {
  14737. var pos1 = input.length - 4,
  14738. pos2 = input.length - 2;
  14739. array[HOUR] = toInt(input.substr(0, pos1));
  14740. array[MINUTE] = toInt(input.substr(pos1, 2));
  14741. array[SECOND] = toInt(input.substr(pos2));
  14742. });
  14743. // LOCALES
  14744. function localeIsPM(input) {
  14745. // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays
  14746. // Using charAt should be more compatible.
  14747. return (input + '').toLowerCase().charAt(0) === 'p';
  14748. }
  14749. var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i,
  14750. // Setting the hour should keep the time, because the user explicitly
  14751. // specified which hour they want. So trying to maintain the same hour (in
  14752. // a new timezone) makes sense. Adding/subtracting hours does not follow
  14753. // this rule.
  14754. getSetHour = makeGetSet('Hours', true);
  14755. function localeMeridiem(hours, minutes, isLower) {
  14756. if (hours > 11) {
  14757. return isLower ? 'pm' : 'PM';
  14758. } else {
  14759. return isLower ? 'am' : 'AM';
  14760. }
  14761. }
  14762. var baseConfig = {
  14763. calendar: defaultCalendar,
  14764. longDateFormat: defaultLongDateFormat,
  14765. invalidDate: defaultInvalidDate,
  14766. ordinal: defaultOrdinal,
  14767. dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,
  14768. relativeTime: defaultRelativeTime,
  14769. months: defaultLocaleMonths,
  14770. monthsShort: defaultLocaleMonthsShort,
  14771. week: defaultLocaleWeek,
  14772. weekdays: defaultLocaleWeekdays,
  14773. weekdaysMin: defaultLocaleWeekdaysMin,
  14774. weekdaysShort: defaultLocaleWeekdaysShort,
  14775. meridiemParse: defaultLocaleMeridiemParse };
  14776. // internal storage for locale config files
  14777. var locales = {},
  14778. localeFamilies = {},
  14779. globalLocale;
  14780. function commonPrefix(arr1, arr2) {
  14781. var i,
  14782. minl = Math.min(arr1.length, arr2.length);
  14783. for (i = 0; i < minl; i += 1) {
  14784. if (arr1[i] !== arr2[i]) {
  14785. return i;
  14786. }
  14787. }
  14788. return minl;
  14789. }
  14790. function normalizeLocale(key) {
  14791. return key ? key.toLowerCase().replace('_', '-') : key;
  14792. }
  14793. // pick the locale from the array
  14794. // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each
  14795. // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root
  14796. function chooseLocale(names) {
  14797. var i = 0,
  14798. j,
  14799. next,
  14800. locale,
  14801. split;
  14802. while (i < names.length) {
  14803. split = normalizeLocale(names[i]).split('-');
  14804. j = split.length;
  14805. next = normalizeLocale(names[i + 1]);
  14806. next = next ? next.split('-') : null;
  14807. while (j > 0) {
  14808. locale = loadLocale(split.slice(0, j).join('-'));
  14809. if (locale) {
  14810. return locale;
  14811. }
  14812. if (
  14813. next &&
  14814. next.length >= j &&
  14815. commonPrefix(split, next) >= j - 1)
  14816. {
  14817. //the next array item is better than a shallower substring of this one
  14818. break;
  14819. }
  14820. j--;
  14821. }
  14822. i++;
  14823. }
  14824. return globalLocale;
  14825. }
  14826. function isLocaleNameSane(name) {
  14827. // Prevent names that look like filesystem paths, i.e contain '/' or '\'
  14828. return name.match('^[^/\\\\]*$') != null;
  14829. }
  14830. function loadLocale(name) {
  14831. var oldLocale = null,
  14832. aliasedRequire;
  14833. // TODO: Find a better way to register and load all the locales in Node
  14834. if (
  14835. locales[name] === undefined &&
  14836. typeof module !== 'undefined' &&
  14837. module &&
  14838. module.exports &&
  14839. isLocaleNameSane(name))
  14840. {
  14841. try {
  14842. oldLocale = globalLocale._abbr;
  14843. aliasedRequire = require;
  14844. __webpack_require__(44)("./" + name);
  14845. getSetGlobalLocale(oldLocale);
  14846. } catch (e) {
  14847. // mark as not found to avoid repeating expensive file require call causing high CPU
  14848. // when trying to find en-US, en_US, en-us for every format call
  14849. locales[name] = null; // null means not found
  14850. }
  14851. }
  14852. return locales[name];
  14853. }
  14854. // This function will load locale and then set the global locale. If
  14855. // no arguments are passed in, it will simply return the current global
  14856. // locale key.
  14857. function getSetGlobalLocale(key, values) {
  14858. var data;
  14859. if (key) {
  14860. if (isUndefined(values)) {
  14861. data = getLocale(key);
  14862. } else {
  14863. data = defineLocale(key, values);
  14864. }
  14865. if (data) {
  14866. // moment.duration._locale = moment._locale = data;
  14867. globalLocale = data;
  14868. } else {
  14869. if (typeof console !== 'undefined' && console.warn) {
  14870. //warn user if arguments are passed but the locale could not be set
  14871. console.warn(
  14872. 'Locale ' + key + ' not found. Did you forget to load it?');
  14873. }
  14874. }
  14875. }
  14876. return globalLocale._abbr;
  14877. }
  14878. function defineLocale(name, config) {
  14879. if (config !== null) {
  14880. var locale,
  14881. parentConfig = baseConfig;
  14882. config.abbr = name;
  14883. if (locales[name] != null) {
  14884. deprecateSimple(
  14885. 'defineLocaleOverride',
  14886. 'use moment.updateLocale(localeName, config) to change ' +
  14887. 'an existing locale. moment.defineLocale(localeName, ' +
  14888. 'config) should only be used for creating a new locale ' +
  14889. 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.');
  14890. parentConfig = locales[name]._config;
  14891. } else if (config.parentLocale != null) {
  14892. if (locales[config.parentLocale] != null) {
  14893. parentConfig = locales[config.parentLocale]._config;
  14894. } else {
  14895. locale = loadLocale(config.parentLocale);
  14896. if (locale != null) {
  14897. parentConfig = locale._config;
  14898. } else {
  14899. if (!localeFamilies[config.parentLocale]) {
  14900. localeFamilies[config.parentLocale] = [];
  14901. }
  14902. localeFamilies[config.parentLocale].push({
  14903. name: name,
  14904. config: config });
  14905. return null;
  14906. }
  14907. }
  14908. }
  14909. locales[name] = new Locale(mergeConfigs(parentConfig, config));
  14910. if (localeFamilies[name]) {
  14911. localeFamilies[name].forEach(function (x) {
  14912. defineLocale(x.name, x.config);
  14913. });
  14914. }
  14915. // backwards compat for now: also set the locale
  14916. // make sure we set the locale AFTER all child locales have been
  14917. // created, so we won't end up with the child locale set.
  14918. getSetGlobalLocale(name);
  14919. return locales[name];
  14920. } else {
  14921. // useful for testing
  14922. delete locales[name];
  14923. return null;
  14924. }
  14925. }
  14926. function updateLocale(name, config) {
  14927. if (config != null) {
  14928. var locale,
  14929. tmpLocale,
  14930. parentConfig = baseConfig;
  14931. if (locales[name] != null && locales[name].parentLocale != null) {
  14932. // Update existing child locale in-place to avoid memory-leaks
  14933. locales[name].set(mergeConfigs(locales[name]._config, config));
  14934. } else {
  14935. // MERGE
  14936. tmpLocale = loadLocale(name);
  14937. if (tmpLocale != null) {
  14938. parentConfig = tmpLocale._config;
  14939. }
  14940. config = mergeConfigs(parentConfig, config);
  14941. if (tmpLocale == null) {
  14942. // updateLocale is called for creating a new locale
  14943. // Set abbr so it will have a name (getters return
  14944. // undefined otherwise).
  14945. config.abbr = name;
  14946. }
  14947. locale = new Locale(config);
  14948. locale.parentLocale = locales[name];
  14949. locales[name] = locale;
  14950. }
  14951. // backwards compat for now: also set the locale
  14952. getSetGlobalLocale(name);
  14953. } else {
  14954. // pass null for config to unupdate, useful for tests
  14955. if (locales[name] != null) {
  14956. if (locales[name].parentLocale != null) {
  14957. locales[name] = locales[name].parentLocale;
  14958. if (name === getSetGlobalLocale()) {
  14959. getSetGlobalLocale(name);
  14960. }
  14961. } else if (locales[name] != null) {
  14962. delete locales[name];
  14963. }
  14964. }
  14965. }
  14966. return locales[name];
  14967. }
  14968. // returns locale data
  14969. function getLocale(key) {
  14970. var locale;
  14971. if (key && key._locale && key._locale._abbr) {
  14972. key = key._locale._abbr;
  14973. }
  14974. if (!key) {
  14975. return globalLocale;
  14976. }
  14977. if (!isArray(key)) {
  14978. //short-circuit everything else
  14979. locale = loadLocale(key);
  14980. if (locale) {
  14981. return locale;
  14982. }
  14983. key = [key];
  14984. }
  14985. return chooseLocale(key);
  14986. }
  14987. function listLocales() {
  14988. return keys(locales);
  14989. }
  14990. function checkOverflow(m) {
  14991. var overflow,
  14992. a = m._a;
  14993. if (a && getParsingFlags(m).overflow === -2) {
  14994. overflow =
  14995. a[MONTH] < 0 || a[MONTH] > 11 ?
  14996. MONTH :
  14997. a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ?
  14998. DATE :
  14999. a[HOUR] < 0 ||
  15000. a[HOUR] > 24 ||
  15001. a[HOUR] === 24 && (
  15002. a[MINUTE] !== 0 ||
  15003. a[SECOND] !== 0 ||
  15004. a[MILLISECOND] !== 0) ?
  15005. HOUR :
  15006. a[MINUTE] < 0 || a[MINUTE] > 59 ?
  15007. MINUTE :
  15008. a[SECOND] < 0 || a[SECOND] > 59 ?
  15009. SECOND :
  15010. a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ?
  15011. MILLISECOND :
  15012. -1;
  15013. if (
  15014. getParsingFlags(m)._overflowDayOfYear && (
  15015. overflow < YEAR || overflow > DATE))
  15016. {
  15017. overflow = DATE;
  15018. }
  15019. if (getParsingFlags(m)._overflowWeeks && overflow === -1) {
  15020. overflow = WEEK;
  15021. }
  15022. if (getParsingFlags(m)._overflowWeekday && overflow === -1) {
  15023. overflow = WEEKDAY;
  15024. }
  15025. getParsingFlags(m).overflow = overflow;
  15026. }
  15027. return m;
  15028. }
  15029. // iso 8601 regex
  15030. // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)
  15031. var extendedIsoRegex =
  15032. /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
  15033. basicIsoRegex =
  15034. /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
  15035. tzRegex = /Z|[+-]\d\d(?::?\d\d)?/,
  15036. isoDates = [
  15037. ['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/],
  15038. ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/],
  15039. ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/],
  15040. ['GGGG-[W]WW', /\d{4}-W\d\d/, false],
  15041. ['YYYY-DDD', /\d{4}-\d{3}/],
  15042. ['YYYY-MM', /\d{4}-\d\d/, false],
  15043. ['YYYYYYMMDD', /[+-]\d{10}/],
  15044. ['YYYYMMDD', /\d{8}/],
  15045. ['GGGG[W]WWE', /\d{4}W\d{3}/],
  15046. ['GGGG[W]WW', /\d{4}W\d{2}/, false],
  15047. ['YYYYDDD', /\d{7}/],
  15048. ['YYYYMM', /\d{6}/, false],
  15049. ['YYYY', /\d{4}/, false]],
  15050. // iso time formats and regexes
  15051. isoTimes = [
  15052. ['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/],
  15053. ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/],
  15054. ['HH:mm:ss', /\d\d:\d\d:\d\d/],
  15055. ['HH:mm', /\d\d:\d\d/],
  15056. ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/],
  15057. ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/],
  15058. ['HHmmss', /\d\d\d\d\d\d/],
  15059. ['HHmm', /\d\d\d\d/],
  15060. ['HH', /\d\d/]],
  15061. aspNetJsonRegex = /^\/?Date\((-?\d+)/i,
  15062. // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3
  15063. rfc2822 =
  15064. /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,
  15065. obsOffsets = {
  15066. UT: 0,
  15067. GMT: 0,
  15068. EDT: -4 * 60,
  15069. EST: -5 * 60,
  15070. CDT: -5 * 60,
  15071. CST: -6 * 60,
  15072. MDT: -6 * 60,
  15073. MST: -7 * 60,
  15074. PDT: -7 * 60,
  15075. PST: -8 * 60 };
  15076. // date from iso format
  15077. function configFromISO(config) {
  15078. var i,
  15079. l,
  15080. string = config._i,
  15081. match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),
  15082. allowTime,
  15083. dateFormat,
  15084. timeFormat,
  15085. tzFormat,
  15086. isoDatesLen = isoDates.length,
  15087. isoTimesLen = isoTimes.length;
  15088. if (match) {
  15089. getParsingFlags(config).iso = true;
  15090. for (i = 0, l = isoDatesLen; i < l; i++) {
  15091. if (isoDates[i][1].exec(match[1])) {
  15092. dateFormat = isoDates[i][0];
  15093. allowTime = isoDates[i][2] !== false;
  15094. break;
  15095. }
  15096. }
  15097. if (dateFormat == null) {
  15098. config._isValid = false;
  15099. return;
  15100. }
  15101. if (match[3]) {
  15102. for (i = 0, l = isoTimesLen; i < l; i++) {
  15103. if (isoTimes[i][1].exec(match[3])) {
  15104. // match[2] should be 'T' or space
  15105. timeFormat = (match[2] || ' ') + isoTimes[i][0];
  15106. break;
  15107. }
  15108. }
  15109. if (timeFormat == null) {
  15110. config._isValid = false;
  15111. return;
  15112. }
  15113. }
  15114. if (!allowTime && timeFormat != null) {
  15115. config._isValid = false;
  15116. return;
  15117. }
  15118. if (match[4]) {
  15119. if (tzRegex.exec(match[4])) {
  15120. tzFormat = 'Z';
  15121. } else {
  15122. config._isValid = false;
  15123. return;
  15124. }
  15125. }
  15126. config._f = dateFormat + (timeFormat || '') + (tzFormat || '');
  15127. configFromStringAndFormat(config);
  15128. } else {
  15129. config._isValid = false;
  15130. }
  15131. }
  15132. function extractFromRFC2822Strings(
  15133. yearStr,
  15134. monthStr,
  15135. dayStr,
  15136. hourStr,
  15137. minuteStr,
  15138. secondStr)
  15139. {
  15140. var result = [
  15141. untruncateYear(yearStr),
  15142. defaultLocaleMonthsShort.indexOf(monthStr),
  15143. parseInt(dayStr, 10),
  15144. parseInt(hourStr, 10),
  15145. parseInt(minuteStr, 10)];
  15146. if (secondStr) {
  15147. result.push(parseInt(secondStr, 10));
  15148. }
  15149. return result;
  15150. }
  15151. function untruncateYear(yearStr) {
  15152. var year = parseInt(yearStr, 10);
  15153. if (year <= 49) {
  15154. return 2000 + year;
  15155. } else if (year <= 999) {
  15156. return 1900 + year;
  15157. }
  15158. return year;
  15159. }
  15160. function preprocessRFC2822(s) {
  15161. // Remove comments and folding whitespace and replace multiple-spaces with a single space
  15162. return s.
  15163. replace(/\([^()]*\)|[\n\t]/g, ' ').
  15164. replace(/(\s\s+)/g, ' ').
  15165. replace(/^\s\s*/, '').
  15166. replace(/\s\s*$/, '');
  15167. }
  15168. function checkWeekday(weekdayStr, parsedInput, config) {
  15169. if (weekdayStr) {
  15170. // TODO: Replace the vanilla JS Date object with an independent day-of-week check.
  15171. var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),
  15172. weekdayActual = new Date(
  15173. parsedInput[0],
  15174. parsedInput[1],
  15175. parsedInput[2]).
  15176. getDay();
  15177. if (weekdayProvided !== weekdayActual) {
  15178. getParsingFlags(config).weekdayMismatch = true;
  15179. config._isValid = false;
  15180. return false;
  15181. }
  15182. }
  15183. return true;
  15184. }
  15185. function calculateOffset(obsOffset, militaryOffset, numOffset) {
  15186. if (obsOffset) {
  15187. return obsOffsets[obsOffset];
  15188. } else if (militaryOffset) {
  15189. // the only allowed military tz is Z
  15190. return 0;
  15191. } else {
  15192. var hm = parseInt(numOffset, 10),
  15193. m = hm % 100,
  15194. h = (hm - m) / 100;
  15195. return h * 60 + m;
  15196. }
  15197. }
  15198. // date and time from ref 2822 format
  15199. function configFromRFC2822(config) {
  15200. var match = rfc2822.exec(preprocessRFC2822(config._i)),
  15201. parsedArray;
  15202. if (match) {
  15203. parsedArray = extractFromRFC2822Strings(
  15204. match[4],
  15205. match[3],
  15206. match[2],
  15207. match[5],
  15208. match[6],
  15209. match[7]);
  15210. if (!checkWeekday(match[1], parsedArray, config)) {
  15211. return;
  15212. }
  15213. config._a = parsedArray;
  15214. config._tzm = calculateOffset(match[8], match[9], match[10]);
  15215. config._d = createUTCDate.apply(null, config._a);
  15216. config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
  15217. getParsingFlags(config).rfc2822 = true;
  15218. } else {
  15219. config._isValid = false;
  15220. }
  15221. }
  15222. // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict
  15223. function configFromString(config) {
  15224. var matched = aspNetJsonRegex.exec(config._i);
  15225. if (matched !== null) {
  15226. config._d = new Date(+matched[1]);
  15227. return;
  15228. }
  15229. configFromISO(config);
  15230. if (config._isValid === false) {
  15231. delete config._isValid;
  15232. } else {
  15233. return;
  15234. }
  15235. configFromRFC2822(config);
  15236. if (config._isValid === false) {
  15237. delete config._isValid;
  15238. } else {
  15239. return;
  15240. }
  15241. if (config._strict) {
  15242. config._isValid = false;
  15243. } else {
  15244. // Final attempt, use Input Fallback
  15245. hooks.createFromInputFallback(config);
  15246. }
  15247. }
  15248. hooks.createFromInputFallback = deprecate(
  15249. 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +
  15250. 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +
  15251. 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',
  15252. function (config) {
  15253. config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));
  15254. });
  15255. // Pick the first defined of two or three arguments.
  15256. function defaults(a, b, c) {
  15257. if (a != null) {
  15258. return a;
  15259. }
  15260. if (b != null) {
  15261. return b;
  15262. }
  15263. return c;
  15264. }
  15265. function currentDateArray(config) {
  15266. // hooks is actually the exported moment object
  15267. var nowValue = new Date(hooks.now());
  15268. if (config._useUTC) {
  15269. return [
  15270. nowValue.getUTCFullYear(),
  15271. nowValue.getUTCMonth(),
  15272. nowValue.getUTCDate()];
  15273. }
  15274. return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];
  15275. }
  15276. // convert an array to a date.
  15277. // the array should mirror the parameters below
  15278. // note: all values past the year are optional and will default to the lowest possible value.
  15279. // [year, month, day , hour, minute, second, millisecond]
  15280. function configFromArray(config) {
  15281. var i,
  15282. date,
  15283. input = [],
  15284. currentDate,
  15285. expectedWeekday,
  15286. yearToUse;
  15287. if (config._d) {
  15288. return;
  15289. }
  15290. currentDate = currentDateArray(config);
  15291. //compute day of the year from weeks and weekdays
  15292. if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {
  15293. dayOfYearFromWeekInfo(config);
  15294. }
  15295. //if the day of the year is set, figure out what it is
  15296. if (config._dayOfYear != null) {
  15297. yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
  15298. if (
  15299. config._dayOfYear > daysInYear(yearToUse) ||
  15300. config._dayOfYear === 0)
  15301. {
  15302. getParsingFlags(config)._overflowDayOfYear = true;
  15303. }
  15304. date = createUTCDate(yearToUse, 0, config._dayOfYear);
  15305. config._a[MONTH] = date.getUTCMonth();
  15306. config._a[DATE] = date.getUTCDate();
  15307. }
  15308. // Default to current date.
  15309. // * if no year, month, day of month are given, default to today
  15310. // * if day of month is given, default month and year
  15311. // * if month is given, default only year
  15312. // * if year is given, don't default anything
  15313. for (i = 0; i < 3 && config._a[i] == null; ++i) {
  15314. config._a[i] = input[i] = currentDate[i];
  15315. }
  15316. // Zero out whatever was not defaulted, including time
  15317. for (; i < 7; i++) {
  15318. config._a[i] = input[i] =
  15319. config._a[i] == null ? i === 2 ? 1 : 0 : config._a[i];
  15320. }
  15321. // Check for 24:00:00.000
  15322. if (
  15323. config._a[HOUR] === 24 &&
  15324. config._a[MINUTE] === 0 &&
  15325. config._a[SECOND] === 0 &&
  15326. config._a[MILLISECOND] === 0)
  15327. {
  15328. config._nextDay = true;
  15329. config._a[HOUR] = 0;
  15330. }
  15331. config._d = (config._useUTC ? createUTCDate : createDate).apply(
  15332. null,
  15333. input);
  15334. expectedWeekday = config._useUTC ?
  15335. config._d.getUTCDay() :
  15336. config._d.getDay();
  15337. // Apply timezone offset from input. The actual utcOffset can be changed
  15338. // with parseZone.
  15339. if (config._tzm != null) {
  15340. config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
  15341. }
  15342. if (config._nextDay) {
  15343. config._a[HOUR] = 24;
  15344. }
  15345. // check for mismatching day of week
  15346. if (
  15347. config._w &&
  15348. typeof config._w.d !== 'undefined' &&
  15349. config._w.d !== expectedWeekday)
  15350. {
  15351. getParsingFlags(config).weekdayMismatch = true;
  15352. }
  15353. }
  15354. function dayOfYearFromWeekInfo(config) {
  15355. var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;
  15356. w = config._w;
  15357. if (w.GG != null || w.W != null || w.E != null) {
  15358. dow = 1;
  15359. doy = 4;
  15360. // TODO: We need to take the current isoWeekYear, but that depends on
  15361. // how we interpret now (local, utc, fixed offset). So create
  15362. // a now version of current config (take local/utc/offset flags, and
  15363. // create now).
  15364. weekYear = defaults(
  15365. w.GG,
  15366. config._a[YEAR],
  15367. weekOfYear(createLocal(), 1, 4).year);
  15368. week = defaults(w.W, 1);
  15369. weekday = defaults(w.E, 1);
  15370. if (weekday < 1 || weekday > 7) {
  15371. weekdayOverflow = true;
  15372. }
  15373. } else {
  15374. dow = config._locale._week.dow;
  15375. doy = config._locale._week.doy;
  15376. curWeek = weekOfYear(createLocal(), dow, doy);
  15377. weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);
  15378. // Default to current week.
  15379. week = defaults(w.w, curWeek.week);
  15380. if (w.d != null) {
  15381. // weekday -- low day numbers are considered next week
  15382. weekday = w.d;
  15383. if (weekday < 0 || weekday > 6) {
  15384. weekdayOverflow = true;
  15385. }
  15386. } else if (w.e != null) {
  15387. // local weekday -- counting starts from beginning of week
  15388. weekday = w.e + dow;
  15389. if (w.e < 0 || w.e > 6) {
  15390. weekdayOverflow = true;
  15391. }
  15392. } else {
  15393. // default to beginning of week
  15394. weekday = dow;
  15395. }
  15396. }
  15397. if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {
  15398. getParsingFlags(config)._overflowWeeks = true;
  15399. } else if (weekdayOverflow != null) {
  15400. getParsingFlags(config)._overflowWeekday = true;
  15401. } else {
  15402. temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);
  15403. config._a[YEAR] = temp.year;
  15404. config._dayOfYear = temp.dayOfYear;
  15405. }
  15406. }
  15407. // constant that refers to the ISO standard
  15408. hooks.ISO_8601 = function () {};
  15409. // constant that refers to the RFC 2822 form
  15410. hooks.RFC_2822 = function () {};
  15411. // date from string and format string
  15412. function configFromStringAndFormat(config) {
  15413. // TODO: Move this to another part of the creation flow to prevent circular deps
  15414. if (config._f === hooks.ISO_8601) {
  15415. configFromISO(config);
  15416. return;
  15417. }
  15418. if (config._f === hooks.RFC_2822) {
  15419. configFromRFC2822(config);
  15420. return;
  15421. }
  15422. config._a = [];
  15423. getParsingFlags(config).empty = true;
  15424. // This array is used to make a Date, either with `new Date` or `Date.UTC`
  15425. var string = '' + config._i,
  15426. i,
  15427. parsedInput,
  15428. tokens,
  15429. token,
  15430. skipped,
  15431. stringLength = string.length,
  15432. totalParsedInputLength = 0,
  15433. era,
  15434. tokenLen;
  15435. tokens =
  15436. expandFormat(config._f, config._locale).match(formattingTokens) || [];
  15437. tokenLen = tokens.length;
  15438. for (i = 0; i < tokenLen; i++) {
  15439. token = tokens[i];
  15440. parsedInput = (string.match(getParseRegexForToken(token, config)) ||
  15441. [])[0];
  15442. if (parsedInput) {
  15443. skipped = string.substr(0, string.indexOf(parsedInput));
  15444. if (skipped.length > 0) {
  15445. getParsingFlags(config).unusedInput.push(skipped);
  15446. }
  15447. string = string.slice(
  15448. string.indexOf(parsedInput) + parsedInput.length);
  15449. totalParsedInputLength += parsedInput.length;
  15450. }
  15451. // don't parse if it's not a known token
  15452. if (formatTokenFunctions[token]) {
  15453. if (parsedInput) {
  15454. getParsingFlags(config).empty = false;
  15455. } else {
  15456. getParsingFlags(config).unusedTokens.push(token);
  15457. }
  15458. addTimeToArrayFromToken(token, parsedInput, config);
  15459. } else if (config._strict && !parsedInput) {
  15460. getParsingFlags(config).unusedTokens.push(token);
  15461. }
  15462. }
  15463. // add remaining unparsed input length to the string
  15464. getParsingFlags(config).charsLeftOver =
  15465. stringLength - totalParsedInputLength;
  15466. if (string.length > 0) {
  15467. getParsingFlags(config).unusedInput.push(string);
  15468. }
  15469. // clear _12h flag if hour is <= 12
  15470. if (
  15471. config._a[HOUR] <= 12 &&
  15472. getParsingFlags(config).bigHour === true &&
  15473. config._a[HOUR] > 0)
  15474. {
  15475. getParsingFlags(config).bigHour = undefined;
  15476. }
  15477. getParsingFlags(config).parsedDateParts = config._a.slice(0);
  15478. getParsingFlags(config).meridiem = config._meridiem;
  15479. // handle meridiem
  15480. config._a[HOUR] = meridiemFixWrap(
  15481. config._locale,
  15482. config._a[HOUR],
  15483. config._meridiem);
  15484. // handle era
  15485. era = getParsingFlags(config).era;
  15486. if (era !== null) {
  15487. config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);
  15488. }
  15489. configFromArray(config);
  15490. checkOverflow(config);
  15491. }
  15492. function meridiemFixWrap(locale, hour, meridiem) {
  15493. var isPm;
  15494. if (meridiem == null) {
  15495. // nothing to do
  15496. return hour;
  15497. }
  15498. if (locale.meridiemHour != null) {
  15499. return locale.meridiemHour(hour, meridiem);
  15500. } else if (locale.isPM != null) {
  15501. // Fallback
  15502. isPm = locale.isPM(meridiem);
  15503. if (isPm && hour < 12) {
  15504. hour += 12;
  15505. }
  15506. if (!isPm && hour === 12) {
  15507. hour = 0;
  15508. }
  15509. return hour;
  15510. } else {
  15511. // this is not supposed to happen
  15512. return hour;
  15513. }
  15514. }
  15515. // date from string and array of format strings
  15516. function configFromStringAndArray(config) {
  15517. var tempConfig,
  15518. bestMoment,
  15519. scoreToBeat,
  15520. i,
  15521. currentScore,
  15522. validFormatFound,
  15523. bestFormatIsValid = false,
  15524. configfLen = config._f.length;
  15525. if (configfLen === 0) {
  15526. getParsingFlags(config).invalidFormat = true;
  15527. config._d = new Date(NaN);
  15528. return;
  15529. }
  15530. for (i = 0; i < configfLen; i++) {
  15531. currentScore = 0;
  15532. validFormatFound = false;
  15533. tempConfig = copyConfig({}, config);
  15534. if (config._useUTC != null) {
  15535. tempConfig._useUTC = config._useUTC;
  15536. }
  15537. tempConfig._f = config._f[i];
  15538. configFromStringAndFormat(tempConfig);
  15539. if (isValid(tempConfig)) {
  15540. validFormatFound = true;
  15541. }
  15542. // if there is any input that was not parsed add a penalty for that format
  15543. currentScore += getParsingFlags(tempConfig).charsLeftOver;
  15544. //or tokens
  15545. currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
  15546. getParsingFlags(tempConfig).score = currentScore;
  15547. if (!bestFormatIsValid) {
  15548. if (
  15549. scoreToBeat == null ||
  15550. currentScore < scoreToBeat ||
  15551. validFormatFound)
  15552. {
  15553. scoreToBeat = currentScore;
  15554. bestMoment = tempConfig;
  15555. if (validFormatFound) {
  15556. bestFormatIsValid = true;
  15557. }
  15558. }
  15559. } else {
  15560. if (currentScore < scoreToBeat) {
  15561. scoreToBeat = currentScore;
  15562. bestMoment = tempConfig;
  15563. }
  15564. }
  15565. }
  15566. extend(config, bestMoment || tempConfig);
  15567. }
  15568. function configFromObject(config) {
  15569. if (config._d) {
  15570. return;
  15571. }
  15572. var i = normalizeObjectUnits(config._i),
  15573. dayOrDate = i.day === undefined ? i.date : i.day;
  15574. config._a = map(
  15575. [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],
  15576. function (obj) {
  15577. return obj && parseInt(obj, 10);
  15578. });
  15579. configFromArray(config);
  15580. }
  15581. function createFromConfig(config) {
  15582. var res = new Moment(checkOverflow(prepareConfig(config)));
  15583. if (res._nextDay) {
  15584. // Adding is smart enough around DST
  15585. res.add(1, 'd');
  15586. res._nextDay = undefined;
  15587. }
  15588. return res;
  15589. }
  15590. function prepareConfig(config) {
  15591. var input = config._i,
  15592. format = config._f;
  15593. config._locale = config._locale || getLocale(config._l);
  15594. if (input === null || format === undefined && input === '') {
  15595. return createInvalid({ nullInput: true });
  15596. }
  15597. if (typeof input === 'string') {
  15598. config._i = input = config._locale.preparse(input);
  15599. }
  15600. if (isMoment(input)) {
  15601. return new Moment(checkOverflow(input));
  15602. } else if (isDate(input)) {
  15603. config._d = input;
  15604. } else if (isArray(format)) {
  15605. configFromStringAndArray(config);
  15606. } else if (format) {
  15607. configFromStringAndFormat(config);
  15608. } else {
  15609. configFromInput(config);
  15610. }
  15611. if (!isValid(config)) {
  15612. config._d = null;
  15613. }
  15614. return config;
  15615. }
  15616. function configFromInput(config) {
  15617. var input = config._i;
  15618. if (isUndefined(input)) {
  15619. config._d = new Date(hooks.now());
  15620. } else if (isDate(input)) {
  15621. config._d = new Date(input.valueOf());
  15622. } else if (typeof input === 'string') {
  15623. configFromString(config);
  15624. } else if (isArray(input)) {
  15625. config._a = map(input.slice(0), function (obj) {
  15626. return parseInt(obj, 10);
  15627. });
  15628. configFromArray(config);
  15629. } else if (isObject(input)) {
  15630. configFromObject(config);
  15631. } else if (isNumber(input)) {
  15632. // from milliseconds
  15633. config._d = new Date(input);
  15634. } else {
  15635. hooks.createFromInputFallback(config);
  15636. }
  15637. }
  15638. function createLocalOrUTC(input, format, locale, strict, isUTC) {
  15639. var c = {};
  15640. if (format === true || format === false) {
  15641. strict = format;
  15642. format = undefined;
  15643. }
  15644. if (locale === true || locale === false) {
  15645. strict = locale;
  15646. locale = undefined;
  15647. }
  15648. if (
  15649. isObject(input) && isObjectEmpty(input) ||
  15650. isArray(input) && input.length === 0)
  15651. {
  15652. input = undefined;
  15653. }
  15654. // object construction must be done this way.
  15655. // https://github.com/moment/moment/issues/1423
  15656. c._isAMomentObject = true;
  15657. c._useUTC = c._isUTC = isUTC;
  15658. c._l = locale;
  15659. c._i = input;
  15660. c._f = format;
  15661. c._strict = strict;
  15662. return createFromConfig(c);
  15663. }
  15664. function createLocal(input, format, locale, strict) {
  15665. return createLocalOrUTC(input, format, locale, strict, false);
  15666. }
  15667. var prototypeMin = deprecate(
  15668. 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',
  15669. function () {
  15670. var other = createLocal.apply(null, arguments);
  15671. if (this.isValid() && other.isValid()) {
  15672. return other < this ? this : other;
  15673. } else {
  15674. return createInvalid();
  15675. }
  15676. }),
  15677. prototypeMax = deprecate(
  15678. 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',
  15679. function () {
  15680. var other = createLocal.apply(null, arguments);
  15681. if (this.isValid() && other.isValid()) {
  15682. return other > this ? this : other;
  15683. } else {
  15684. return createInvalid();
  15685. }
  15686. });
  15687. // Pick a moment m from moments so that m[fn](other) is true for all
  15688. // other. This relies on the function fn to be transitive.
  15689. //
  15690. // moments should either be an array of moment objects or an array, whose
  15691. // first element is an array of moment objects.
  15692. function pickBy(fn, moments) {
  15693. var res, i;
  15694. if (moments.length === 1 && isArray(moments[0])) {
  15695. moments = moments[0];
  15696. }
  15697. if (!moments.length) {
  15698. return createLocal();
  15699. }
  15700. res = moments[0];
  15701. for (i = 1; i < moments.length; ++i) {
  15702. if (!moments[i].isValid() || moments[i][fn](res)) {
  15703. res = moments[i];
  15704. }
  15705. }
  15706. return res;
  15707. }
  15708. // TODO: Use [].sort instead?
  15709. function min() {
  15710. var args = [].slice.call(arguments, 0);
  15711. return pickBy('isBefore', args);
  15712. }
  15713. function max() {
  15714. var args = [].slice.call(arguments, 0);
  15715. return pickBy('isAfter', args);
  15716. }
  15717. var now = function now() {
  15718. return Date.now ? Date.now() : +new Date();
  15719. };
  15720. var ordering = [
  15721. 'year',
  15722. 'quarter',
  15723. 'month',
  15724. 'week',
  15725. 'day',
  15726. 'hour',
  15727. 'minute',
  15728. 'second',
  15729. 'millisecond'];
  15730. function isDurationValid(m) {
  15731. var key,
  15732. unitHasDecimal = false,
  15733. i,
  15734. orderLen = ordering.length;
  15735. for (key in m) {
  15736. if (
  15737. hasOwnProp(m, key) &&
  15738. !(
  15739. indexOf.call(ordering, key) !== -1 && (
  15740. m[key] == null || !isNaN(m[key]))))
  15741. {
  15742. return false;
  15743. }
  15744. }
  15745. for (i = 0; i < orderLen; ++i) {
  15746. if (m[ordering[i]]) {
  15747. if (unitHasDecimal) {
  15748. return false; // only allow non-integers for smallest unit
  15749. }
  15750. if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {
  15751. unitHasDecimal = true;
  15752. }
  15753. }
  15754. }
  15755. return true;
  15756. }
  15757. function isValid$1() {
  15758. return this._isValid;
  15759. }
  15760. function createInvalid$1() {
  15761. return createDuration(NaN);
  15762. }
  15763. function Duration(duration) {
  15764. var normalizedInput = normalizeObjectUnits(duration),
  15765. years = normalizedInput.year || 0,
  15766. quarters = normalizedInput.quarter || 0,
  15767. months = normalizedInput.month || 0,
  15768. weeks = normalizedInput.week || normalizedInput.isoWeek || 0,
  15769. days = normalizedInput.day || 0,
  15770. hours = normalizedInput.hour || 0,
  15771. minutes = normalizedInput.minute || 0,
  15772. seconds = normalizedInput.second || 0,
  15773. milliseconds = normalizedInput.millisecond || 0;
  15774. this._isValid = isDurationValid(normalizedInput);
  15775. // representation for dateAddRemove
  15776. this._milliseconds =
  15777. +milliseconds +
  15778. seconds * 1e3 + // 1000
  15779. minutes * 6e4 + // 1000 * 60
  15780. hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978
  15781. // Because of dateAddRemove treats 24 hours as different from a
  15782. // day when working around DST, we need to store them separately
  15783. this._days = +days + weeks * 7;
  15784. // It is impossible to translate months into days without knowing
  15785. // which months you are are talking about, so we have to store
  15786. // it separately.
  15787. this._months = +months + quarters * 3 + years * 12;
  15788. this._data = {};
  15789. this._locale = getLocale();
  15790. this._bubble();
  15791. }
  15792. function isDuration(obj) {
  15793. return obj instanceof Duration;
  15794. }
  15795. function absRound(number) {
  15796. if (number < 0) {
  15797. return Math.round(-1 * number) * -1;
  15798. } else {
  15799. return Math.round(number);
  15800. }
  15801. }
  15802. // compare two arrays, return the number of differences
  15803. function compareArrays(array1, array2, dontConvert) {
  15804. var len = Math.min(array1.length, array2.length),
  15805. lengthDiff = Math.abs(array1.length - array2.length),
  15806. diffs = 0,
  15807. i;
  15808. for (i = 0; i < len; i++) {
  15809. if (
  15810. dontConvert && array1[i] !== array2[i] ||
  15811. !dontConvert && toInt(array1[i]) !== toInt(array2[i]))
  15812. {
  15813. diffs++;
  15814. }
  15815. }
  15816. return diffs + lengthDiff;
  15817. }
  15818. // FORMATTING
  15819. function offset(token, separator) {
  15820. addFormatToken(token, 0, 0, function () {
  15821. var offset = this.utcOffset(),
  15822. sign = '+';
  15823. if (offset < 0) {
  15824. offset = -offset;
  15825. sign = '-';
  15826. }
  15827. return (
  15828. sign +
  15829. zeroFill(~~(offset / 60), 2) +
  15830. separator +
  15831. zeroFill(~~offset % 60, 2));
  15832. });
  15833. }
  15834. offset('Z', ':');
  15835. offset('ZZ', '');
  15836. // PARSING
  15837. addRegexToken('Z', matchShortOffset);
  15838. addRegexToken('ZZ', matchShortOffset);
  15839. addParseToken(['Z', 'ZZ'], function (input, array, config) {
  15840. config._useUTC = true;
  15841. config._tzm = offsetFromString(matchShortOffset, input);
  15842. });
  15843. // HELPERS
  15844. // timezone chunker
  15845. // '+10:00' > ['10', '00']
  15846. // '-1530' > ['-15', '30']
  15847. var chunkOffset = /([\+\-]|\d\d)/gi;
  15848. function offsetFromString(matcher, string) {
  15849. var matches = (string || '').match(matcher),
  15850. chunk,
  15851. parts,
  15852. minutes;
  15853. if (matches === null) {
  15854. return null;
  15855. }
  15856. chunk = matches[matches.length - 1] || [];
  15857. parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];
  15858. minutes = +(parts[1] * 60) + toInt(parts[2]);
  15859. return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;
  15860. }
  15861. // Return a moment from input, that is local/utc/zone equivalent to model.
  15862. function cloneWithOffset(input, model) {
  15863. var res, diff;
  15864. if (model._isUTC) {
  15865. res = model.clone();
  15866. diff =
  15867. (isMoment(input) || isDate(input) ?
  15868. input.valueOf() :
  15869. createLocal(input).valueOf()) - res.valueOf();
  15870. // Use low-level api, because this fn is low-level api.
  15871. res._d.setTime(res._d.valueOf() + diff);
  15872. hooks.updateOffset(res, false);
  15873. return res;
  15874. } else {
  15875. return createLocal(input).local();
  15876. }
  15877. }
  15878. function getDateOffset(m) {
  15879. // On Firefox.24 Date#getTimezoneOffset returns a floating point.
  15880. // https://github.com/moment/moment/pull/1871
  15881. return -Math.round(m._d.getTimezoneOffset());
  15882. }
  15883. // HOOKS
  15884. // This function will be called whenever a moment is mutated.
  15885. // It is intended to keep the offset in sync with the timezone.
  15886. hooks.updateOffset = function () {};
  15887. // MOMENTS
  15888. // keepLocalTime = true means only change the timezone, without
  15889. // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
  15890. // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
  15891. // +0200, so we adjust the time as needed, to be valid.
  15892. //
  15893. // Keeping the time actually adds/subtracts (one hour)
  15894. // from the actual represented time. That is why we call updateOffset
  15895. // a second time. In case it wants us to change the offset again
  15896. // _changeInProgress == true case, then we have to adjust, because
  15897. // there is no such time in the given timezone.
  15898. function getSetOffset(input, keepLocalTime, keepMinutes) {
  15899. var offset = this._offset || 0,
  15900. localAdjust;
  15901. if (!this.isValid()) {
  15902. return input != null ? this : NaN;
  15903. }
  15904. if (input != null) {
  15905. if (typeof input === 'string') {
  15906. input = offsetFromString(matchShortOffset, input);
  15907. if (input === null) {
  15908. return this;
  15909. }
  15910. } else if (Math.abs(input) < 16 && !keepMinutes) {
  15911. input = input * 60;
  15912. }
  15913. if (!this._isUTC && keepLocalTime) {
  15914. localAdjust = getDateOffset(this);
  15915. }
  15916. this._offset = input;
  15917. this._isUTC = true;
  15918. if (localAdjust != null) {
  15919. this.add(localAdjust, 'm');
  15920. }
  15921. if (offset !== input) {
  15922. if (!keepLocalTime || this._changeInProgress) {
  15923. addSubtract(
  15924. this,
  15925. createDuration(input - offset, 'm'),
  15926. 1,
  15927. false);
  15928. } else if (!this._changeInProgress) {
  15929. this._changeInProgress = true;
  15930. hooks.updateOffset(this, true);
  15931. this._changeInProgress = null;
  15932. }
  15933. }
  15934. return this;
  15935. } else {
  15936. return this._isUTC ? offset : getDateOffset(this);
  15937. }
  15938. }
  15939. function getSetZone(input, keepLocalTime) {
  15940. if (input != null) {
  15941. if (typeof input !== 'string') {
  15942. input = -input;
  15943. }
  15944. this.utcOffset(input, keepLocalTime);
  15945. return this;
  15946. } else {
  15947. return -this.utcOffset();
  15948. }
  15949. }
  15950. function setOffsetToUTC(keepLocalTime) {
  15951. return this.utcOffset(0, keepLocalTime);
  15952. }
  15953. function setOffsetToLocal(keepLocalTime) {
  15954. if (this._isUTC) {
  15955. this.utcOffset(0, keepLocalTime);
  15956. this._isUTC = false;
  15957. if (keepLocalTime) {
  15958. this.subtract(getDateOffset(this), 'm');
  15959. }
  15960. }
  15961. return this;
  15962. }
  15963. function setOffsetToParsedOffset() {
  15964. if (this._tzm != null) {
  15965. this.utcOffset(this._tzm, false, true);
  15966. } else if (typeof this._i === 'string') {
  15967. var tZone = offsetFromString(matchOffset, this._i);
  15968. if (tZone != null) {
  15969. this.utcOffset(tZone);
  15970. } else {
  15971. this.utcOffset(0, true);
  15972. }
  15973. }
  15974. return this;
  15975. }
  15976. function hasAlignedHourOffset(input) {
  15977. if (!this.isValid()) {
  15978. return false;
  15979. }
  15980. input = input ? createLocal(input).utcOffset() : 0;
  15981. return (this.utcOffset() - input) % 60 === 0;
  15982. }
  15983. function isDaylightSavingTime() {
  15984. return (
  15985. this.utcOffset() > this.clone().month(0).utcOffset() ||
  15986. this.utcOffset() > this.clone().month(5).utcOffset());
  15987. }
  15988. function isDaylightSavingTimeShifted() {
  15989. if (!isUndefined(this._isDSTShifted)) {
  15990. return this._isDSTShifted;
  15991. }
  15992. var c = {},
  15993. other;
  15994. copyConfig(c, this);
  15995. c = prepareConfig(c);
  15996. if (c._a) {
  15997. other = c._isUTC ? createUTC(c._a) : createLocal(c._a);
  15998. this._isDSTShifted =
  15999. this.isValid() && compareArrays(c._a, other.toArray()) > 0;
  16000. } else {
  16001. this._isDSTShifted = false;
  16002. }
  16003. return this._isDSTShifted;
  16004. }
  16005. function isLocal() {
  16006. return this.isValid() ? !this._isUTC : false;
  16007. }
  16008. function isUtcOffset() {
  16009. return this.isValid() ? this._isUTC : false;
  16010. }
  16011. function isUtc() {
  16012. return this.isValid() ? this._isUTC && this._offset === 0 : false;
  16013. }
  16014. // ASP.NET json date format regex
  16015. var aspNetRegex = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,
  16016. // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html
  16017. // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere
  16018. // and further modified to allow for strings containing both week and day
  16019. isoRegex =
  16020. /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;
  16021. function createDuration(input, key) {
  16022. var duration = input,
  16023. // matching against regexp is expensive, do it on demand
  16024. match = null,
  16025. sign,
  16026. ret,
  16027. diffRes;
  16028. if (isDuration(input)) {
  16029. duration = {
  16030. ms: input._milliseconds,
  16031. d: input._days,
  16032. M: input._months };
  16033. } else if (isNumber(input) || !isNaN(+input)) {
  16034. duration = {};
  16035. if (key) {
  16036. duration[key] = +input;
  16037. } else {
  16038. duration.milliseconds = +input;
  16039. }
  16040. } else if (match = aspNetRegex.exec(input)) {
  16041. sign = match[1] === '-' ? -1 : 1;
  16042. duration = {
  16043. y: 0,
  16044. d: toInt(match[DATE]) * sign,
  16045. h: toInt(match[HOUR]) * sign,
  16046. m: toInt(match[MINUTE]) * sign,
  16047. s: toInt(match[SECOND]) * sign,
  16048. ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match
  16049. };
  16050. } else if (match = isoRegex.exec(input)) {
  16051. sign = match[1] === '-' ? -1 : 1;
  16052. duration = {
  16053. y: parseIso(match[2], sign),
  16054. M: parseIso(match[3], sign),
  16055. w: parseIso(match[4], sign),
  16056. d: parseIso(match[5], sign),
  16057. h: parseIso(match[6], sign),
  16058. m: parseIso(match[7], sign),
  16059. s: parseIso(match[8], sign) };
  16060. } else if (duration == null) {
  16061. // checks for null or undefined
  16062. duration = {};
  16063. } else if (
  16064. typeof duration === 'object' && (
  16065. 'from' in duration || 'to' in duration))
  16066. {
  16067. diffRes = momentsDifference(
  16068. createLocal(duration.from),
  16069. createLocal(duration.to));
  16070. duration = {};
  16071. duration.ms = diffRes.milliseconds;
  16072. duration.M = diffRes.months;
  16073. }
  16074. ret = new Duration(duration);
  16075. if (isDuration(input) && hasOwnProp(input, '_locale')) {
  16076. ret._locale = input._locale;
  16077. }
  16078. if (isDuration(input) && hasOwnProp(input, '_isValid')) {
  16079. ret._isValid = input._isValid;
  16080. }
  16081. return ret;
  16082. }
  16083. createDuration.fn = Duration.prototype;
  16084. createDuration.invalid = createInvalid$1;
  16085. function parseIso(inp, sign) {
  16086. // We'd normally use ~~inp for this, but unfortunately it also
  16087. // converts floats to ints.
  16088. // inp may be undefined, so careful calling replace on it.
  16089. var res = inp && parseFloat(inp.replace(',', '.'));
  16090. // apply sign while we're at it
  16091. return (isNaN(res) ? 0 : res) * sign;
  16092. }
  16093. function positiveMomentsDifference(base, other) {
  16094. var res = {};
  16095. res.months =
  16096. other.month() - base.month() + (other.year() - base.year()) * 12;
  16097. if (base.clone().add(res.months, 'M').isAfter(other)) {
  16098. --res.months;
  16099. }
  16100. res.milliseconds = +other - +base.clone().add(res.months, 'M');
  16101. return res;
  16102. }
  16103. function momentsDifference(base, other) {
  16104. var res;
  16105. if (!(base.isValid() && other.isValid())) {
  16106. return { milliseconds: 0, months: 0 };
  16107. }
  16108. other = cloneWithOffset(other, base);
  16109. if (base.isBefore(other)) {
  16110. res = positiveMomentsDifference(base, other);
  16111. } else {
  16112. res = positiveMomentsDifference(other, base);
  16113. res.milliseconds = -res.milliseconds;
  16114. res.months = -res.months;
  16115. }
  16116. return res;
  16117. }
  16118. // TODO: remove 'name' arg after deprecation is removed
  16119. function createAdder(direction, name) {
  16120. return function (val, period) {
  16121. var dur, tmp;
  16122. //invert the arguments, but complain about it
  16123. if (period !== null && !isNaN(+period)) {
  16124. deprecateSimple(
  16125. name,
  16126. 'moment().' +
  16127. name +
  16128. '(period, number) is deprecated. Please use moment().' +
  16129. name +
  16130. '(number, period). ' +
  16131. 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.');
  16132. tmp = val;
  16133. val = period;
  16134. period = tmp;
  16135. }
  16136. dur = createDuration(val, period);
  16137. addSubtract(this, dur, direction);
  16138. return this;
  16139. };
  16140. }
  16141. function addSubtract(mom, duration, isAdding, updateOffset) {
  16142. var milliseconds = duration._milliseconds,
  16143. days = absRound(duration._days),
  16144. months = absRound(duration._months);
  16145. if (!mom.isValid()) {
  16146. // No op
  16147. return;
  16148. }
  16149. updateOffset = updateOffset == null ? true : updateOffset;
  16150. if (months) {
  16151. setMonth(mom, get(mom, 'Month') + months * isAdding);
  16152. }
  16153. if (days) {
  16154. set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);
  16155. }
  16156. if (milliseconds) {
  16157. mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);
  16158. }
  16159. if (updateOffset) {
  16160. hooks.updateOffset(mom, days || months);
  16161. }
  16162. }
  16163. var add = createAdder(1, 'add'),
  16164. subtract = createAdder(-1, 'subtract');
  16165. function isString(input) {
  16166. return typeof input === 'string' || input instanceof String;
  16167. }
  16168. // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined
  16169. function isMomentInput(input) {
  16170. return (
  16171. isMoment(input) ||
  16172. isDate(input) ||
  16173. isString(input) ||
  16174. isNumber(input) ||
  16175. isNumberOrStringArray(input) ||
  16176. isMomentInputObject(input) ||
  16177. input === null ||
  16178. input === undefined);
  16179. }
  16180. function isMomentInputObject(input) {
  16181. var objectTest = isObject(input) && !isObjectEmpty(input),
  16182. propertyTest = false,
  16183. properties = [
  16184. 'years',
  16185. 'year',
  16186. 'y',
  16187. 'months',
  16188. 'month',
  16189. 'M',
  16190. 'days',
  16191. 'day',
  16192. 'd',
  16193. 'dates',
  16194. 'date',
  16195. 'D',
  16196. 'hours',
  16197. 'hour',
  16198. 'h',
  16199. 'minutes',
  16200. 'minute',
  16201. 'm',
  16202. 'seconds',
  16203. 'second',
  16204. 's',
  16205. 'milliseconds',
  16206. 'millisecond',
  16207. 'ms'],
  16208. i,
  16209. property,
  16210. propertyLen = properties.length;
  16211. for (i = 0; i < propertyLen; i += 1) {
  16212. property = properties[i];
  16213. propertyTest = propertyTest || hasOwnProp(input, property);
  16214. }
  16215. return objectTest && propertyTest;
  16216. }
  16217. function isNumberOrStringArray(input) {
  16218. var arrayTest = isArray(input),
  16219. dataTypeTest = false;
  16220. if (arrayTest) {
  16221. dataTypeTest =
  16222. input.filter(function (item) {
  16223. return !isNumber(item) && isString(input);
  16224. }).length === 0;
  16225. }
  16226. return arrayTest && dataTypeTest;
  16227. }
  16228. function isCalendarSpec(input) {
  16229. var objectTest = isObject(input) && !isObjectEmpty(input),
  16230. propertyTest = false,
  16231. properties = [
  16232. 'sameDay',
  16233. 'nextDay',
  16234. 'lastDay',
  16235. 'nextWeek',
  16236. 'lastWeek',
  16237. 'sameElse'],
  16238. i,
  16239. property;
  16240. for (i = 0; i < properties.length; i += 1) {
  16241. property = properties[i];
  16242. propertyTest = propertyTest || hasOwnProp(input, property);
  16243. }
  16244. return objectTest && propertyTest;
  16245. }
  16246. function getCalendarFormat(myMoment, now) {
  16247. var diff = myMoment.diff(now, 'days', true);
  16248. return diff < -6 ?
  16249. 'sameElse' :
  16250. diff < -1 ?
  16251. 'lastWeek' :
  16252. diff < 0 ?
  16253. 'lastDay' :
  16254. diff < 1 ?
  16255. 'sameDay' :
  16256. diff < 2 ?
  16257. 'nextDay' :
  16258. diff < 7 ?
  16259. 'nextWeek' :
  16260. 'sameElse';
  16261. }
  16262. function calendar$1(time, formats) {
  16263. // Support for single parameter, formats only overload to the calendar function
  16264. if (arguments.length === 1) {
  16265. if (!arguments[0]) {
  16266. time = undefined;
  16267. formats = undefined;
  16268. } else if (isMomentInput(arguments[0])) {
  16269. time = arguments[0];
  16270. formats = undefined;
  16271. } else if (isCalendarSpec(arguments[0])) {
  16272. formats = arguments[0];
  16273. time = undefined;
  16274. }
  16275. }
  16276. // We want to compare the start of today, vs this.
  16277. // Getting start-of-today depends on whether we're local/utc/offset or not.
  16278. var now = time || createLocal(),
  16279. sod = cloneWithOffset(now, this).startOf('day'),
  16280. format = hooks.calendarFormat(this, sod) || 'sameElse',
  16281. output =
  16282. formats && (
  16283. isFunction(formats[format]) ?
  16284. formats[format].call(this, now) :
  16285. formats[format]);
  16286. return this.format(
  16287. output || this.localeData().calendar(format, this, createLocal(now)));
  16288. }
  16289. function clone() {
  16290. return new Moment(this);
  16291. }
  16292. function isAfter(input, units) {
  16293. var localInput = isMoment(input) ? input : createLocal(input);
  16294. if (!(this.isValid() && localInput.isValid())) {
  16295. return false;
  16296. }
  16297. units = normalizeUnits(units) || 'millisecond';
  16298. if (units === 'millisecond') {
  16299. return this.valueOf() > localInput.valueOf();
  16300. } else {
  16301. return localInput.valueOf() < this.clone().startOf(units).valueOf();
  16302. }
  16303. }
  16304. function isBefore(input, units) {
  16305. var localInput = isMoment(input) ? input : createLocal(input);
  16306. if (!(this.isValid() && localInput.isValid())) {
  16307. return false;
  16308. }
  16309. units = normalizeUnits(units) || 'millisecond';
  16310. if (units === 'millisecond') {
  16311. return this.valueOf() < localInput.valueOf();
  16312. } else {
  16313. return this.clone().endOf(units).valueOf() < localInput.valueOf();
  16314. }
  16315. }
  16316. function isBetween(from, to, units, inclusivity) {
  16317. var localFrom = isMoment(from) ? from : createLocal(from),
  16318. localTo = isMoment(to) ? to : createLocal(to);
  16319. if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {
  16320. return false;
  16321. }
  16322. inclusivity = inclusivity || '()';
  16323. return (
  16324. (inclusivity[0] === '(' ?
  16325. this.isAfter(localFrom, units) :
  16326. !this.isBefore(localFrom, units)) && (
  16327. inclusivity[1] === ')' ?
  16328. this.isBefore(localTo, units) :
  16329. !this.isAfter(localTo, units)));
  16330. }
  16331. function isSame(input, units) {
  16332. var localInput = isMoment(input) ? input : createLocal(input),
  16333. inputMs;
  16334. if (!(this.isValid() && localInput.isValid())) {
  16335. return false;
  16336. }
  16337. units = normalizeUnits(units) || 'millisecond';
  16338. if (units === 'millisecond') {
  16339. return this.valueOf() === localInput.valueOf();
  16340. } else {
  16341. inputMs = localInput.valueOf();
  16342. return (
  16343. this.clone().startOf(units).valueOf() <= inputMs &&
  16344. inputMs <= this.clone().endOf(units).valueOf());
  16345. }
  16346. }
  16347. function isSameOrAfter(input, units) {
  16348. return this.isSame(input, units) || this.isAfter(input, units);
  16349. }
  16350. function isSameOrBefore(input, units) {
  16351. return this.isSame(input, units) || this.isBefore(input, units);
  16352. }
  16353. function diff(input, units, asFloat) {
  16354. var that, zoneDelta, output;
  16355. if (!this.isValid()) {
  16356. return NaN;
  16357. }
  16358. that = cloneWithOffset(input, this);
  16359. if (!that.isValid()) {
  16360. return NaN;
  16361. }
  16362. zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;
  16363. units = normalizeUnits(units);
  16364. switch (units) {
  16365. case 'year':
  16366. output = monthDiff(this, that) / 12;
  16367. break;
  16368. case 'month':
  16369. output = monthDiff(this, that);
  16370. break;
  16371. case 'quarter':
  16372. output = monthDiff(this, that) / 3;
  16373. break;
  16374. case 'second':
  16375. output = (this - that) / 1e3;
  16376. break; // 1000
  16377. case 'minute':
  16378. output = (this - that) / 6e4;
  16379. break; // 1000 * 60
  16380. case 'hour':
  16381. output = (this - that) / 36e5;
  16382. break; // 1000 * 60 * 60
  16383. case 'day':
  16384. output = (this - that - zoneDelta) / 864e5;
  16385. break; // 1000 * 60 * 60 * 24, negate dst
  16386. case 'week':
  16387. output = (this - that - zoneDelta) / 6048e5;
  16388. break; // 1000 * 60 * 60 * 24 * 7, negate dst
  16389. default:
  16390. output = this - that;}
  16391. return asFloat ? output : absFloor(output);
  16392. }
  16393. function monthDiff(a, b) {
  16394. if (a.date() < b.date()) {
  16395. // end-of-month calculations work correct when the start month has more
  16396. // days than the end month.
  16397. return -monthDiff(b, a);
  16398. }
  16399. // difference in months
  16400. var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),
  16401. // b is in (anchor - 1 month, anchor + 1 month)
  16402. anchor = a.clone().add(wholeMonthDiff, 'months'),
  16403. anchor2,
  16404. adjust;
  16405. if (b - anchor < 0) {
  16406. anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');
  16407. // linear across the month
  16408. adjust = (b - anchor) / (anchor - anchor2);
  16409. } else {
  16410. anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');
  16411. // linear across the month
  16412. adjust = (b - anchor) / (anchor2 - anchor);
  16413. }
  16414. //check for negative zero, return zero if negative zero
  16415. return -(wholeMonthDiff + adjust) || 0;
  16416. }
  16417. hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';
  16418. hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';
  16419. function toString() {
  16420. return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
  16421. }
  16422. function toISOString(keepOffset) {
  16423. if (!this.isValid()) {
  16424. return null;
  16425. }
  16426. var utc = keepOffset !== true,
  16427. m = utc ? this.clone().utc() : this;
  16428. if (m.year() < 0 || m.year() > 9999) {
  16429. return formatMoment(
  16430. m,
  16431. utc ?
  16432. 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' :
  16433. 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ');
  16434. }
  16435. if (isFunction(Date.prototype.toISOString)) {
  16436. // native implementation is ~50x faster, use it when we can
  16437. if (utc) {
  16438. return this.toDate().toISOString();
  16439. } else {
  16440. return new Date(this.valueOf() + this.utcOffset() * 60 * 1000).
  16441. toISOString().
  16442. replace('Z', formatMoment(m, 'Z'));
  16443. }
  16444. }
  16445. return formatMoment(
  16446. m,
  16447. utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ');
  16448. }
  16449. /**
  16450. * Return a human readable representation of a moment that can
  16451. * also be evaluated to get a new moment which is the same
  16452. *
  16453. * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects
  16454. */
  16455. function inspect() {
  16456. if (!this.isValid()) {
  16457. return 'moment.invalid(/* ' + this._i + ' */)';
  16458. }
  16459. var func = 'moment',
  16460. zone = '',
  16461. prefix,
  16462. year,
  16463. datetime,
  16464. suffix;
  16465. if (!this.isLocal()) {
  16466. func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';
  16467. zone = 'Z';
  16468. }
  16469. prefix = '[' + func + '("]';
  16470. year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';
  16471. datetime = '-MM-DD[T]HH:mm:ss.SSS';
  16472. suffix = zone + '[")]';
  16473. return this.format(prefix + year + datetime + suffix);
  16474. }
  16475. function format(inputString) {
  16476. if (!inputString) {
  16477. inputString = this.isUtc() ?
  16478. hooks.defaultFormatUtc :
  16479. hooks.defaultFormat;
  16480. }
  16481. var output = formatMoment(this, inputString);
  16482. return this.localeData().postformat(output);
  16483. }
  16484. function from(time, withoutSuffix) {
  16485. if (
  16486. this.isValid() && (
  16487. isMoment(time) && time.isValid() || createLocal(time).isValid()))
  16488. {
  16489. return createDuration({ to: this, from: time }).
  16490. locale(this.locale()).
  16491. humanize(!withoutSuffix);
  16492. } else {
  16493. return this.localeData().invalidDate();
  16494. }
  16495. }
  16496. function fromNow(withoutSuffix) {
  16497. return this.from(createLocal(), withoutSuffix);
  16498. }
  16499. function to(time, withoutSuffix) {
  16500. if (
  16501. this.isValid() && (
  16502. isMoment(time) && time.isValid() || createLocal(time).isValid()))
  16503. {
  16504. return createDuration({ from: this, to: time }).
  16505. locale(this.locale()).
  16506. humanize(!withoutSuffix);
  16507. } else {
  16508. return this.localeData().invalidDate();
  16509. }
  16510. }
  16511. function toNow(withoutSuffix) {
  16512. return this.to(createLocal(), withoutSuffix);
  16513. }
  16514. // If passed a locale key, it will set the locale for this
  16515. // instance. Otherwise, it will return the locale configuration
  16516. // variables for this instance.
  16517. function locale(key) {
  16518. var newLocaleData;
  16519. if (key === undefined) {
  16520. return this._locale._abbr;
  16521. } else {
  16522. newLocaleData = getLocale(key);
  16523. if (newLocaleData != null) {
  16524. this._locale = newLocaleData;
  16525. }
  16526. return this;
  16527. }
  16528. }
  16529. var lang = deprecate(
  16530. 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',
  16531. function (key) {
  16532. if (key === undefined) {
  16533. return this.localeData();
  16534. } else {
  16535. return this.locale(key);
  16536. }
  16537. });
  16538. function localeData() {
  16539. return this._locale;
  16540. }
  16541. var MS_PER_SECOND = 1000,
  16542. MS_PER_MINUTE = 60 * MS_PER_SECOND,
  16543. MS_PER_HOUR = 60 * MS_PER_MINUTE,
  16544. MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;
  16545. // actual modulo - handles negative numbers (for dates before 1970):
  16546. function mod$1(dividend, divisor) {
  16547. return (dividend % divisor + divisor) % divisor;
  16548. }
  16549. function localStartOfDate(y, m, d) {
  16550. // the date constructor remaps years 0-99 to 1900-1999
  16551. if (y < 100 && y >= 0) {
  16552. // preserve leap years using a full 400 year cycle, then reset
  16553. return new Date(y + 400, m, d) - MS_PER_400_YEARS;
  16554. } else {
  16555. return new Date(y, m, d).valueOf();
  16556. }
  16557. }
  16558. function utcStartOfDate(y, m, d) {
  16559. // Date.UTC remaps years 0-99 to 1900-1999
  16560. if (y < 100 && y >= 0) {
  16561. // preserve leap years using a full 400 year cycle, then reset
  16562. return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;
  16563. } else {
  16564. return Date.UTC(y, m, d);
  16565. }
  16566. }
  16567. function startOf(units) {
  16568. var time, startOfDate;
  16569. units = normalizeUnits(units);
  16570. if (units === undefined || units === 'millisecond' || !this.isValid()) {
  16571. return this;
  16572. }
  16573. startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;
  16574. switch (units) {
  16575. case 'year':
  16576. time = startOfDate(this.year(), 0, 1);
  16577. break;
  16578. case 'quarter':
  16579. time = startOfDate(
  16580. this.year(),
  16581. this.month() - this.month() % 3,
  16582. 1);
  16583. break;
  16584. case 'month':
  16585. time = startOfDate(this.year(), this.month(), 1);
  16586. break;
  16587. case 'week':
  16588. time = startOfDate(
  16589. this.year(),
  16590. this.month(),
  16591. this.date() - this.weekday());
  16592. break;
  16593. case 'isoWeek':
  16594. time = startOfDate(
  16595. this.year(),
  16596. this.month(),
  16597. this.date() - (this.isoWeekday() - 1));
  16598. break;
  16599. case 'day':
  16600. case 'date':
  16601. time = startOfDate(this.year(), this.month(), this.date());
  16602. break;
  16603. case 'hour':
  16604. time = this._d.valueOf();
  16605. time -= mod$1(
  16606. time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),
  16607. MS_PER_HOUR);
  16608. break;
  16609. case 'minute':
  16610. time = this._d.valueOf();
  16611. time -= mod$1(time, MS_PER_MINUTE);
  16612. break;
  16613. case 'second':
  16614. time = this._d.valueOf();
  16615. time -= mod$1(time, MS_PER_SECOND);
  16616. break;}
  16617. this._d.setTime(time);
  16618. hooks.updateOffset(this, true);
  16619. return this;
  16620. }
  16621. function endOf(units) {
  16622. var time, startOfDate;
  16623. units = normalizeUnits(units);
  16624. if (units === undefined || units === 'millisecond' || !this.isValid()) {
  16625. return this;
  16626. }
  16627. startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;
  16628. switch (units) {
  16629. case 'year':
  16630. time = startOfDate(this.year() + 1, 0, 1) - 1;
  16631. break;
  16632. case 'quarter':
  16633. time =
  16634. startOfDate(
  16635. this.year(),
  16636. this.month() - this.month() % 3 + 3,
  16637. 1) -
  16638. 1;
  16639. break;
  16640. case 'month':
  16641. time = startOfDate(this.year(), this.month() + 1, 1) - 1;
  16642. break;
  16643. case 'week':
  16644. time =
  16645. startOfDate(
  16646. this.year(),
  16647. this.month(),
  16648. this.date() - this.weekday() + 7) -
  16649. 1;
  16650. break;
  16651. case 'isoWeek':
  16652. time =
  16653. startOfDate(
  16654. this.year(),
  16655. this.month(),
  16656. this.date() - (this.isoWeekday() - 1) + 7) -
  16657. 1;
  16658. break;
  16659. case 'day':
  16660. case 'date':
  16661. time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;
  16662. break;
  16663. case 'hour':
  16664. time = this._d.valueOf();
  16665. time +=
  16666. MS_PER_HOUR -
  16667. mod$1(
  16668. time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),
  16669. MS_PER_HOUR) -
  16670. 1;
  16671. break;
  16672. case 'minute':
  16673. time = this._d.valueOf();
  16674. time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;
  16675. break;
  16676. case 'second':
  16677. time = this._d.valueOf();
  16678. time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;
  16679. break;}
  16680. this._d.setTime(time);
  16681. hooks.updateOffset(this, true);
  16682. return this;
  16683. }
  16684. function valueOf() {
  16685. return this._d.valueOf() - (this._offset || 0) * 60000;
  16686. }
  16687. function unix() {
  16688. return Math.floor(this.valueOf() / 1000);
  16689. }
  16690. function toDate() {
  16691. return new Date(this.valueOf());
  16692. }
  16693. function toArray() {
  16694. var m = this;
  16695. return [
  16696. m.year(),
  16697. m.month(),
  16698. m.date(),
  16699. m.hour(),
  16700. m.minute(),
  16701. m.second(),
  16702. m.millisecond()];
  16703. }
  16704. function toObject() {
  16705. var m = this;
  16706. return {
  16707. years: m.year(),
  16708. months: m.month(),
  16709. date: m.date(),
  16710. hours: m.hours(),
  16711. minutes: m.minutes(),
  16712. seconds: m.seconds(),
  16713. milliseconds: m.milliseconds() };
  16714. }
  16715. function toJSON() {
  16716. // new Date(NaN).toJSON() === null
  16717. return this.isValid() ? this.toISOString() : null;
  16718. }
  16719. function isValid$2() {
  16720. return isValid(this);
  16721. }
  16722. function parsingFlags() {
  16723. return extend({}, getParsingFlags(this));
  16724. }
  16725. function invalidAt() {
  16726. return getParsingFlags(this).overflow;
  16727. }
  16728. function creationData() {
  16729. return {
  16730. input: this._i,
  16731. format: this._f,
  16732. locale: this._locale,
  16733. isUTC: this._isUTC,
  16734. strict: this._strict };
  16735. }
  16736. addFormatToken('N', 0, 0, 'eraAbbr');
  16737. addFormatToken('NN', 0, 0, 'eraAbbr');
  16738. addFormatToken('NNN', 0, 0, 'eraAbbr');
  16739. addFormatToken('NNNN', 0, 0, 'eraName');
  16740. addFormatToken('NNNNN', 0, 0, 'eraNarrow');
  16741. addFormatToken('y', ['y', 1], 'yo', 'eraYear');
  16742. addFormatToken('y', ['yy', 2], 0, 'eraYear');
  16743. addFormatToken('y', ['yyy', 3], 0, 'eraYear');
  16744. addFormatToken('y', ['yyyy', 4], 0, 'eraYear');
  16745. addRegexToken('N', matchEraAbbr);
  16746. addRegexToken('NN', matchEraAbbr);
  16747. addRegexToken('NNN', matchEraAbbr);
  16748. addRegexToken('NNNN', matchEraName);
  16749. addRegexToken('NNNNN', matchEraNarrow);
  16750. addParseToken(
  16751. ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],
  16752. function (input, array, config, token) {
  16753. var era = config._locale.erasParse(input, token, config._strict);
  16754. if (era) {
  16755. getParsingFlags(config).era = era;
  16756. } else {
  16757. getParsingFlags(config).invalidEra = input;
  16758. }
  16759. });
  16760. addRegexToken('y', matchUnsigned);
  16761. addRegexToken('yy', matchUnsigned);
  16762. addRegexToken('yyy', matchUnsigned);
  16763. addRegexToken('yyyy', matchUnsigned);
  16764. addRegexToken('yo', matchEraYearOrdinal);
  16765. addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);
  16766. addParseToken(['yo'], function (input, array, config, token) {
  16767. var match;
  16768. if (config._locale._eraYearOrdinalRegex) {
  16769. match = input.match(config._locale._eraYearOrdinalRegex);
  16770. }
  16771. if (config._locale.eraYearOrdinalParse) {
  16772. array[YEAR] = config._locale.eraYearOrdinalParse(input, match);
  16773. } else {
  16774. array[YEAR] = parseInt(input, 10);
  16775. }
  16776. });
  16777. function localeEras(m, format) {
  16778. var i,
  16779. l,
  16780. date,
  16781. eras = this._eras || getLocale('en')._eras;
  16782. for (i = 0, l = eras.length; i < l; ++i) {
  16783. switch (typeof eras[i].since) {
  16784. case 'string':
  16785. // truncate time
  16786. date = hooks(eras[i].since).startOf('day');
  16787. eras[i].since = date.valueOf();
  16788. break;}
  16789. switch (typeof eras[i].until) {
  16790. case 'undefined':
  16791. eras[i].until = +Infinity;
  16792. break;
  16793. case 'string':
  16794. // truncate time
  16795. date = hooks(eras[i].until).startOf('day').valueOf();
  16796. eras[i].until = date.valueOf();
  16797. break;}
  16798. }
  16799. return eras;
  16800. }
  16801. function localeErasParse(eraName, format, strict) {
  16802. var i,
  16803. l,
  16804. eras = this.eras(),
  16805. name,
  16806. abbr,
  16807. narrow;
  16808. eraName = eraName.toUpperCase();
  16809. for (i = 0, l = eras.length; i < l; ++i) {
  16810. name = eras[i].name.toUpperCase();
  16811. abbr = eras[i].abbr.toUpperCase();
  16812. narrow = eras[i].narrow.toUpperCase();
  16813. if (strict) {
  16814. switch (format) {
  16815. case 'N':
  16816. case 'NN':
  16817. case 'NNN':
  16818. if (abbr === eraName) {
  16819. return eras[i];
  16820. }
  16821. break;
  16822. case 'NNNN':
  16823. if (name === eraName) {
  16824. return eras[i];
  16825. }
  16826. break;
  16827. case 'NNNNN':
  16828. if (narrow === eraName) {
  16829. return eras[i];
  16830. }
  16831. break;}
  16832. } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {
  16833. return eras[i];
  16834. }
  16835. }
  16836. }
  16837. function localeErasConvertYear(era, year) {
  16838. var dir = era.since <= era.until ? +1 : -1;
  16839. if (year === undefined) {
  16840. return hooks(era.since).year();
  16841. } else {
  16842. return hooks(era.since).year() + (year - era.offset) * dir;
  16843. }
  16844. }
  16845. function getEraName() {
  16846. var i,
  16847. l,
  16848. val,
  16849. eras = this.localeData().eras();
  16850. for (i = 0, l = eras.length; i < l; ++i) {
  16851. // truncate time
  16852. val = this.clone().startOf('day').valueOf();
  16853. if (eras[i].since <= val && val <= eras[i].until) {
  16854. return eras[i].name;
  16855. }
  16856. if (eras[i].until <= val && val <= eras[i].since) {
  16857. return eras[i].name;
  16858. }
  16859. }
  16860. return '';
  16861. }
  16862. function getEraNarrow() {
  16863. var i,
  16864. l,
  16865. val,
  16866. eras = this.localeData().eras();
  16867. for (i = 0, l = eras.length; i < l; ++i) {
  16868. // truncate time
  16869. val = this.clone().startOf('day').valueOf();
  16870. if (eras[i].since <= val && val <= eras[i].until) {
  16871. return eras[i].narrow;
  16872. }
  16873. if (eras[i].until <= val && val <= eras[i].since) {
  16874. return eras[i].narrow;
  16875. }
  16876. }
  16877. return '';
  16878. }
  16879. function getEraAbbr() {
  16880. var i,
  16881. l,
  16882. val,
  16883. eras = this.localeData().eras();
  16884. for (i = 0, l = eras.length; i < l; ++i) {
  16885. // truncate time
  16886. val = this.clone().startOf('day').valueOf();
  16887. if (eras[i].since <= val && val <= eras[i].until) {
  16888. return eras[i].abbr;
  16889. }
  16890. if (eras[i].until <= val && val <= eras[i].since) {
  16891. return eras[i].abbr;
  16892. }
  16893. }
  16894. return '';
  16895. }
  16896. function getEraYear() {
  16897. var i,
  16898. l,
  16899. dir,
  16900. val,
  16901. eras = this.localeData().eras();
  16902. for (i = 0, l = eras.length; i < l; ++i) {
  16903. dir = eras[i].since <= eras[i].until ? +1 : -1;
  16904. // truncate time
  16905. val = this.clone().startOf('day').valueOf();
  16906. if (
  16907. eras[i].since <= val && val <= eras[i].until ||
  16908. eras[i].until <= val && val <= eras[i].since)
  16909. {
  16910. return (
  16911. (this.year() - hooks(eras[i].since).year()) * dir +
  16912. eras[i].offset);
  16913. }
  16914. }
  16915. return this.year();
  16916. }
  16917. function erasNameRegex(isStrict) {
  16918. if (!hasOwnProp(this, '_erasNameRegex')) {
  16919. computeErasParse.call(this);
  16920. }
  16921. return isStrict ? this._erasNameRegex : this._erasRegex;
  16922. }
  16923. function erasAbbrRegex(isStrict) {
  16924. if (!hasOwnProp(this, '_erasAbbrRegex')) {
  16925. computeErasParse.call(this);
  16926. }
  16927. return isStrict ? this._erasAbbrRegex : this._erasRegex;
  16928. }
  16929. function erasNarrowRegex(isStrict) {
  16930. if (!hasOwnProp(this, '_erasNarrowRegex')) {
  16931. computeErasParse.call(this);
  16932. }
  16933. return isStrict ? this._erasNarrowRegex : this._erasRegex;
  16934. }
  16935. function matchEraAbbr(isStrict, locale) {
  16936. return locale.erasAbbrRegex(isStrict);
  16937. }
  16938. function matchEraName(isStrict, locale) {
  16939. return locale.erasNameRegex(isStrict);
  16940. }
  16941. function matchEraNarrow(isStrict, locale) {
  16942. return locale.erasNarrowRegex(isStrict);
  16943. }
  16944. function matchEraYearOrdinal(isStrict, locale) {
  16945. return locale._eraYearOrdinalRegex || matchUnsigned;
  16946. }
  16947. function computeErasParse() {
  16948. var abbrPieces = [],
  16949. namePieces = [],
  16950. narrowPieces = [],
  16951. mixedPieces = [],
  16952. i,
  16953. l,
  16954. eras = this.eras();
  16955. for (i = 0, l = eras.length; i < l; ++i) {
  16956. namePieces.push(regexEscape(eras[i].name));
  16957. abbrPieces.push(regexEscape(eras[i].abbr));
  16958. narrowPieces.push(regexEscape(eras[i].narrow));
  16959. mixedPieces.push(regexEscape(eras[i].name));
  16960. mixedPieces.push(regexEscape(eras[i].abbr));
  16961. mixedPieces.push(regexEscape(eras[i].narrow));
  16962. }
  16963. this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');
  16964. this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');
  16965. this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');
  16966. this._erasNarrowRegex = new RegExp(
  16967. '^(' + narrowPieces.join('|') + ')',
  16968. 'i');
  16969. }
  16970. // FORMATTING
  16971. addFormatToken(0, ['gg', 2], 0, function () {
  16972. return this.weekYear() % 100;
  16973. });
  16974. addFormatToken(0, ['GG', 2], 0, function () {
  16975. return this.isoWeekYear() % 100;
  16976. });
  16977. function addWeekYearFormatToken(token, getter) {
  16978. addFormatToken(0, [token, token.length], 0, getter);
  16979. }
  16980. addWeekYearFormatToken('gggg', 'weekYear');
  16981. addWeekYearFormatToken('ggggg', 'weekYear');
  16982. addWeekYearFormatToken('GGGG', 'isoWeekYear');
  16983. addWeekYearFormatToken('GGGGG', 'isoWeekYear');
  16984. // ALIASES
  16985. addUnitAlias('weekYear', 'gg');
  16986. addUnitAlias('isoWeekYear', 'GG');
  16987. // PRIORITY
  16988. addUnitPriority('weekYear', 1);
  16989. addUnitPriority('isoWeekYear', 1);
  16990. // PARSING
  16991. addRegexToken('G', matchSigned);
  16992. addRegexToken('g', matchSigned);
  16993. addRegexToken('GG', match1to2, match2);
  16994. addRegexToken('gg', match1to2, match2);
  16995. addRegexToken('GGGG', match1to4, match4);
  16996. addRegexToken('gggg', match1to4, match4);
  16997. addRegexToken('GGGGG', match1to6, match6);
  16998. addRegexToken('ggggg', match1to6, match6);
  16999. addWeekParseToken(
  17000. ['gggg', 'ggggg', 'GGGG', 'GGGGG'],
  17001. function (input, week, config, token) {
  17002. week[token.substr(0, 2)] = toInt(input);
  17003. });
  17004. addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {
  17005. week[token] = hooks.parseTwoDigitYear(input);
  17006. });
  17007. // MOMENTS
  17008. function getSetWeekYear(input) {
  17009. return getSetWeekYearHelper.call(
  17010. this,
  17011. input,
  17012. this.week(),
  17013. this.weekday(),
  17014. this.localeData()._week.dow,
  17015. this.localeData()._week.doy);
  17016. }
  17017. function getSetISOWeekYear(input) {
  17018. return getSetWeekYearHelper.call(
  17019. this,
  17020. input,
  17021. this.isoWeek(),
  17022. this.isoWeekday(),
  17023. 1,
  17024. 4);
  17025. }
  17026. function getISOWeeksInYear() {
  17027. return weeksInYear(this.year(), 1, 4);
  17028. }
  17029. function getISOWeeksInISOWeekYear() {
  17030. return weeksInYear(this.isoWeekYear(), 1, 4);
  17031. }
  17032. function getWeeksInYear() {
  17033. var weekInfo = this.localeData()._week;
  17034. return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);
  17035. }
  17036. function getWeeksInWeekYear() {
  17037. var weekInfo = this.localeData()._week;
  17038. return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);
  17039. }
  17040. function getSetWeekYearHelper(input, week, weekday, dow, doy) {
  17041. var weeksTarget;
  17042. if (input == null) {
  17043. return weekOfYear(this, dow, doy).year;
  17044. } else {
  17045. weeksTarget = weeksInYear(input, dow, doy);
  17046. if (week > weeksTarget) {
  17047. week = weeksTarget;
  17048. }
  17049. return setWeekAll.call(this, input, week, weekday, dow, doy);
  17050. }
  17051. }
  17052. function setWeekAll(weekYear, week, weekday, dow, doy) {
  17053. var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),
  17054. date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);
  17055. this.year(date.getUTCFullYear());
  17056. this.month(date.getUTCMonth());
  17057. this.date(date.getUTCDate());
  17058. return this;
  17059. }
  17060. // FORMATTING
  17061. addFormatToken('Q', 0, 'Qo', 'quarter');
  17062. // ALIASES
  17063. addUnitAlias('quarter', 'Q');
  17064. // PRIORITY
  17065. addUnitPriority('quarter', 7);
  17066. // PARSING
  17067. addRegexToken('Q', match1);
  17068. addParseToken('Q', function (input, array) {
  17069. array[MONTH] = (toInt(input) - 1) * 3;
  17070. });
  17071. // MOMENTS
  17072. function getSetQuarter(input) {
  17073. return input == null ?
  17074. Math.ceil((this.month() + 1) / 3) :
  17075. this.month((input - 1) * 3 + this.month() % 3);
  17076. }
  17077. // FORMATTING
  17078. addFormatToken('D', ['DD', 2], 'Do', 'date');
  17079. // ALIASES
  17080. addUnitAlias('date', 'D');
  17081. // PRIORITY
  17082. addUnitPriority('date', 9);
  17083. // PARSING
  17084. addRegexToken('D', match1to2);
  17085. addRegexToken('DD', match1to2, match2);
  17086. addRegexToken('Do', function (isStrict, locale) {
  17087. // TODO: Remove "ordinalParse" fallback in next major release.
  17088. return isStrict ?
  17089. locale._dayOfMonthOrdinalParse || locale._ordinalParse :
  17090. locale._dayOfMonthOrdinalParseLenient;
  17091. });
  17092. addParseToken(['D', 'DD'], DATE);
  17093. addParseToken('Do', function (input, array) {
  17094. array[DATE] = toInt(input.match(match1to2)[0]);
  17095. });
  17096. // MOMENTS
  17097. var getSetDayOfMonth = makeGetSet('Date', true);
  17098. // FORMATTING
  17099. addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');
  17100. // ALIASES
  17101. addUnitAlias('dayOfYear', 'DDD');
  17102. // PRIORITY
  17103. addUnitPriority('dayOfYear', 4);
  17104. // PARSING
  17105. addRegexToken('DDD', match1to3);
  17106. addRegexToken('DDDD', match3);
  17107. addParseToken(['DDD', 'DDDD'], function (input, array, config) {
  17108. config._dayOfYear = toInt(input);
  17109. });
  17110. // HELPERS
  17111. // MOMENTS
  17112. function getSetDayOfYear(input) {
  17113. var dayOfYear =
  17114. Math.round(
  17115. (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) +
  17116. 1;
  17117. return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');
  17118. }
  17119. // FORMATTING
  17120. addFormatToken('m', ['mm', 2], 0, 'minute');
  17121. // ALIASES
  17122. addUnitAlias('minute', 'm');
  17123. // PRIORITY
  17124. addUnitPriority('minute', 14);
  17125. // PARSING
  17126. addRegexToken('m', match1to2);
  17127. addRegexToken('mm', match1to2, match2);
  17128. addParseToken(['m', 'mm'], MINUTE);
  17129. // MOMENTS
  17130. var getSetMinute = makeGetSet('Minutes', false);
  17131. // FORMATTING
  17132. addFormatToken('s', ['ss', 2], 0, 'second');
  17133. // ALIASES
  17134. addUnitAlias('second', 's');
  17135. // PRIORITY
  17136. addUnitPriority('second', 15);
  17137. // PARSING
  17138. addRegexToken('s', match1to2);
  17139. addRegexToken('ss', match1to2, match2);
  17140. addParseToken(['s', 'ss'], SECOND);
  17141. // MOMENTS
  17142. var getSetSecond = makeGetSet('Seconds', false);
  17143. // FORMATTING
  17144. addFormatToken('S', 0, 0, function () {
  17145. return ~~(this.millisecond() / 100);
  17146. });
  17147. addFormatToken(0, ['SS', 2], 0, function () {
  17148. return ~~(this.millisecond() / 10);
  17149. });
  17150. addFormatToken(0, ['SSS', 3], 0, 'millisecond');
  17151. addFormatToken(0, ['SSSS', 4], 0, function () {
  17152. return this.millisecond() * 10;
  17153. });
  17154. addFormatToken(0, ['SSSSS', 5], 0, function () {
  17155. return this.millisecond() * 100;
  17156. });
  17157. addFormatToken(0, ['SSSSSS', 6], 0, function () {
  17158. return this.millisecond() * 1000;
  17159. });
  17160. addFormatToken(0, ['SSSSSSS', 7], 0, function () {
  17161. return this.millisecond() * 10000;
  17162. });
  17163. addFormatToken(0, ['SSSSSSSS', 8], 0, function () {
  17164. return this.millisecond() * 100000;
  17165. });
  17166. addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {
  17167. return this.millisecond() * 1000000;
  17168. });
  17169. // ALIASES
  17170. addUnitAlias('millisecond', 'ms');
  17171. // PRIORITY
  17172. addUnitPriority('millisecond', 16);
  17173. // PARSING
  17174. addRegexToken('S', match1to3, match1);
  17175. addRegexToken('SS', match1to3, match2);
  17176. addRegexToken('SSS', match1to3, match3);
  17177. var token, getSetMillisecond;
  17178. for (token = 'SSSS'; token.length <= 9; token += 'S') {
  17179. addRegexToken(token, matchUnsigned);
  17180. }
  17181. function parseMs(input, array) {
  17182. array[MILLISECOND] = toInt(('0.' + input) * 1000);
  17183. }
  17184. for (token = 'S'; token.length <= 9; token += 'S') {
  17185. addParseToken(token, parseMs);
  17186. }
  17187. getSetMillisecond = makeGetSet('Milliseconds', false);
  17188. // FORMATTING
  17189. addFormatToken('z', 0, 0, 'zoneAbbr');
  17190. addFormatToken('zz', 0, 0, 'zoneName');
  17191. // MOMENTS
  17192. function getZoneAbbr() {
  17193. return this._isUTC ? 'UTC' : '';
  17194. }
  17195. function getZoneName() {
  17196. return this._isUTC ? 'Coordinated Universal Time' : '';
  17197. }
  17198. var proto = Moment.prototype;
  17199. proto.add = add;
  17200. proto.calendar = calendar$1;
  17201. proto.clone = clone;
  17202. proto.diff = diff;
  17203. proto.endOf = endOf;
  17204. proto.format = format;
  17205. proto.from = from;
  17206. proto.fromNow = fromNow;
  17207. proto.to = to;
  17208. proto.toNow = toNow;
  17209. proto.get = stringGet;
  17210. proto.invalidAt = invalidAt;
  17211. proto.isAfter = isAfter;
  17212. proto.isBefore = isBefore;
  17213. proto.isBetween = isBetween;
  17214. proto.isSame = isSame;
  17215. proto.isSameOrAfter = isSameOrAfter;
  17216. proto.isSameOrBefore = isSameOrBefore;
  17217. proto.isValid = isValid$2;
  17218. proto.lang = lang;
  17219. proto.locale = locale;
  17220. proto.localeData = localeData;
  17221. proto.max = prototypeMax;
  17222. proto.min = prototypeMin;
  17223. proto.parsingFlags = parsingFlags;
  17224. proto.set = stringSet;
  17225. proto.startOf = startOf;
  17226. proto.subtract = subtract;
  17227. proto.toArray = toArray;
  17228. proto.toObject = toObject;
  17229. proto.toDate = toDate;
  17230. proto.toISOString = toISOString;
  17231. proto.inspect = inspect;
  17232. if (typeof Symbol !== 'undefined' && Symbol.for != null) {
  17233. proto[Symbol.for('nodejs.util.inspect.custom')] = function () {
  17234. return 'Moment<' + this.format() + '>';
  17235. };
  17236. }
  17237. proto.toJSON = toJSON;
  17238. proto.toString = toString;
  17239. proto.unix = unix;
  17240. proto.valueOf = valueOf;
  17241. proto.creationData = creationData;
  17242. proto.eraName = getEraName;
  17243. proto.eraNarrow = getEraNarrow;
  17244. proto.eraAbbr = getEraAbbr;
  17245. proto.eraYear = getEraYear;
  17246. proto.year = getSetYear;
  17247. proto.isLeapYear = getIsLeapYear;
  17248. proto.weekYear = getSetWeekYear;
  17249. proto.isoWeekYear = getSetISOWeekYear;
  17250. proto.quarter = proto.quarters = getSetQuarter;
  17251. proto.month = getSetMonth;
  17252. proto.daysInMonth = getDaysInMonth;
  17253. proto.week = proto.weeks = getSetWeek;
  17254. proto.isoWeek = proto.isoWeeks = getSetISOWeek;
  17255. proto.weeksInYear = getWeeksInYear;
  17256. proto.weeksInWeekYear = getWeeksInWeekYear;
  17257. proto.isoWeeksInYear = getISOWeeksInYear;
  17258. proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;
  17259. proto.date = getSetDayOfMonth;
  17260. proto.day = proto.days = getSetDayOfWeek;
  17261. proto.weekday = getSetLocaleDayOfWeek;
  17262. proto.isoWeekday = getSetISODayOfWeek;
  17263. proto.dayOfYear = getSetDayOfYear;
  17264. proto.hour = proto.hours = getSetHour;
  17265. proto.minute = proto.minutes = getSetMinute;
  17266. proto.second = proto.seconds = getSetSecond;
  17267. proto.millisecond = proto.milliseconds = getSetMillisecond;
  17268. proto.utcOffset = getSetOffset;
  17269. proto.utc = setOffsetToUTC;
  17270. proto.local = setOffsetToLocal;
  17271. proto.parseZone = setOffsetToParsedOffset;
  17272. proto.hasAlignedHourOffset = hasAlignedHourOffset;
  17273. proto.isDST = isDaylightSavingTime;
  17274. proto.isLocal = isLocal;
  17275. proto.isUtcOffset = isUtcOffset;
  17276. proto.isUtc = isUtc;
  17277. proto.isUTC = isUtc;
  17278. proto.zoneAbbr = getZoneAbbr;
  17279. proto.zoneName = getZoneName;
  17280. proto.dates = deprecate(
  17281. 'dates accessor is deprecated. Use date instead.',
  17282. getSetDayOfMonth);
  17283. proto.months = deprecate(
  17284. 'months accessor is deprecated. Use month instead',
  17285. getSetMonth);
  17286. proto.years = deprecate(
  17287. 'years accessor is deprecated. Use year instead',
  17288. getSetYear);
  17289. proto.zone = deprecate(
  17290. 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',
  17291. getSetZone);
  17292. proto.isDSTShifted = deprecate(
  17293. 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',
  17294. isDaylightSavingTimeShifted);
  17295. function createUnix(input) {
  17296. return createLocal(input * 1000);
  17297. }
  17298. function createInZone() {
  17299. return createLocal.apply(null, arguments).parseZone();
  17300. }
  17301. function preParsePostFormat(string) {
  17302. return string;
  17303. }
  17304. var proto$1 = Locale.prototype;
  17305. proto$1.calendar = calendar;
  17306. proto$1.longDateFormat = longDateFormat;
  17307. proto$1.invalidDate = invalidDate;
  17308. proto$1.ordinal = ordinal;
  17309. proto$1.preparse = preParsePostFormat;
  17310. proto$1.postformat = preParsePostFormat;
  17311. proto$1.relativeTime = relativeTime;
  17312. proto$1.pastFuture = pastFuture;
  17313. proto$1.set = set;
  17314. proto$1.eras = localeEras;
  17315. proto$1.erasParse = localeErasParse;
  17316. proto$1.erasConvertYear = localeErasConvertYear;
  17317. proto$1.erasAbbrRegex = erasAbbrRegex;
  17318. proto$1.erasNameRegex = erasNameRegex;
  17319. proto$1.erasNarrowRegex = erasNarrowRegex;
  17320. proto$1.months = localeMonths;
  17321. proto$1.monthsShort = localeMonthsShort;
  17322. proto$1.monthsParse = localeMonthsParse;
  17323. proto$1.monthsRegex = monthsRegex;
  17324. proto$1.monthsShortRegex = monthsShortRegex;
  17325. proto$1.week = localeWeek;
  17326. proto$1.firstDayOfYear = localeFirstDayOfYear;
  17327. proto$1.firstDayOfWeek = localeFirstDayOfWeek;
  17328. proto$1.weekdays = localeWeekdays;
  17329. proto$1.weekdaysMin = localeWeekdaysMin;
  17330. proto$1.weekdaysShort = localeWeekdaysShort;
  17331. proto$1.weekdaysParse = localeWeekdaysParse;
  17332. proto$1.weekdaysRegex = weekdaysRegex;
  17333. proto$1.weekdaysShortRegex = weekdaysShortRegex;
  17334. proto$1.weekdaysMinRegex = weekdaysMinRegex;
  17335. proto$1.isPM = localeIsPM;
  17336. proto$1.meridiem = localeMeridiem;
  17337. function get$1(format, index, field, setter) {
  17338. var locale = getLocale(),
  17339. utc = createUTC().set(setter, index);
  17340. return locale[field](utc, format);
  17341. }
  17342. function listMonthsImpl(format, index, field) {
  17343. if (isNumber(format)) {
  17344. index = format;
  17345. format = undefined;
  17346. }
  17347. format = format || '';
  17348. if (index != null) {
  17349. return get$1(format, index, field, 'month');
  17350. }
  17351. var i,
  17352. out = [];
  17353. for (i = 0; i < 12; i++) {
  17354. out[i] = get$1(format, i, field, 'month');
  17355. }
  17356. return out;
  17357. }
  17358. // ()
  17359. // (5)
  17360. // (fmt, 5)
  17361. // (fmt)
  17362. // (true)
  17363. // (true, 5)
  17364. // (true, fmt, 5)
  17365. // (true, fmt)
  17366. function listWeekdaysImpl(localeSorted, format, index, field) {
  17367. if (typeof localeSorted === 'boolean') {
  17368. if (isNumber(format)) {
  17369. index = format;
  17370. format = undefined;
  17371. }
  17372. format = format || '';
  17373. } else {
  17374. format = localeSorted;
  17375. index = format;
  17376. localeSorted = false;
  17377. if (isNumber(format)) {
  17378. index = format;
  17379. format = undefined;
  17380. }
  17381. format = format || '';
  17382. }
  17383. var locale = getLocale(),
  17384. shift = localeSorted ? locale._week.dow : 0,
  17385. i,
  17386. out = [];
  17387. if (index != null) {
  17388. return get$1(format, (index + shift) % 7, field, 'day');
  17389. }
  17390. for (i = 0; i < 7; i++) {
  17391. out[i] = get$1(format, (i + shift) % 7, field, 'day');
  17392. }
  17393. return out;
  17394. }
  17395. function listMonths(format, index) {
  17396. return listMonthsImpl(format, index, 'months');
  17397. }
  17398. function listMonthsShort(format, index) {
  17399. return listMonthsImpl(format, index, 'monthsShort');
  17400. }
  17401. function listWeekdays(localeSorted, format, index) {
  17402. return listWeekdaysImpl(localeSorted, format, index, 'weekdays');
  17403. }
  17404. function listWeekdaysShort(localeSorted, format, index) {
  17405. return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');
  17406. }
  17407. function listWeekdaysMin(localeSorted, format, index) {
  17408. return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');
  17409. }
  17410. getSetGlobalLocale('en', {
  17411. eras: [
  17412. {
  17413. since: '0001-01-01',
  17414. until: +Infinity,
  17415. offset: 1,
  17416. name: 'Anno Domini',
  17417. narrow: 'AD',
  17418. abbr: 'AD' },
  17419. {
  17420. since: '0000-12-31',
  17421. until: -Infinity,
  17422. offset: 1,
  17423. name: 'Before Christ',
  17424. narrow: 'BC',
  17425. abbr: 'BC' }],
  17426. dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
  17427. ordinal: function ordinal(number) {
  17428. var b = number % 10,
  17429. output =
  17430. toInt(number % 100 / 10) === 1 ?
  17431. 'th' :
  17432. b === 1 ?
  17433. 'st' :
  17434. b === 2 ?
  17435. 'nd' :
  17436. b === 3 ?
  17437. 'rd' :
  17438. 'th';
  17439. return number + output;
  17440. } });
  17441. // Side effect imports
  17442. hooks.lang = deprecate(
  17443. 'moment.lang is deprecated. Use moment.locale instead.',
  17444. getSetGlobalLocale);
  17445. hooks.langData = deprecate(
  17446. 'moment.langData is deprecated. Use moment.localeData instead.',
  17447. getLocale);
  17448. var mathAbs = Math.abs;
  17449. function abs() {
  17450. var data = this._data;
  17451. this._milliseconds = mathAbs(this._milliseconds);
  17452. this._days = mathAbs(this._days);
  17453. this._months = mathAbs(this._months);
  17454. data.milliseconds = mathAbs(data.milliseconds);
  17455. data.seconds = mathAbs(data.seconds);
  17456. data.minutes = mathAbs(data.minutes);
  17457. data.hours = mathAbs(data.hours);
  17458. data.months = mathAbs(data.months);
  17459. data.years = mathAbs(data.years);
  17460. return this;
  17461. }
  17462. function addSubtract$1(duration, input, value, direction) {
  17463. var other = createDuration(input, value);
  17464. duration._milliseconds += direction * other._milliseconds;
  17465. duration._days += direction * other._days;
  17466. duration._months += direction * other._months;
  17467. return duration._bubble();
  17468. }
  17469. // supports only 2.0-style add(1, 's') or add(duration)
  17470. function add$1(input, value) {
  17471. return addSubtract$1(this, input, value, 1);
  17472. }
  17473. // supports only 2.0-style subtract(1, 's') or subtract(duration)
  17474. function subtract$1(input, value) {
  17475. return addSubtract$1(this, input, value, -1);
  17476. }
  17477. function absCeil(number) {
  17478. if (number < 0) {
  17479. return Math.floor(number);
  17480. } else {
  17481. return Math.ceil(number);
  17482. }
  17483. }
  17484. function bubble() {
  17485. var milliseconds = this._milliseconds,
  17486. days = this._days,
  17487. months = this._months,
  17488. data = this._data,
  17489. seconds,
  17490. minutes,
  17491. hours,
  17492. years,
  17493. monthsFromDays;
  17494. // if we have a mix of positive and negative values, bubble down first
  17495. // check: https://github.com/moment/moment/issues/2166
  17496. if (
  17497. !(
  17498. milliseconds >= 0 && days >= 0 && months >= 0 ||
  17499. milliseconds <= 0 && days <= 0 && months <= 0))
  17500. {
  17501. milliseconds += absCeil(monthsToDays(months) + days) * 864e5;
  17502. days = 0;
  17503. months = 0;
  17504. }
  17505. // The following code bubbles up values, see the tests for
  17506. // examples of what that means.
  17507. data.milliseconds = milliseconds % 1000;
  17508. seconds = absFloor(milliseconds / 1000);
  17509. data.seconds = seconds % 60;
  17510. minutes = absFloor(seconds / 60);
  17511. data.minutes = minutes % 60;
  17512. hours = absFloor(minutes / 60);
  17513. data.hours = hours % 24;
  17514. days += absFloor(hours / 24);
  17515. // convert days to months
  17516. monthsFromDays = absFloor(daysToMonths(days));
  17517. months += monthsFromDays;
  17518. days -= absCeil(monthsToDays(monthsFromDays));
  17519. // 12 months -> 1 year
  17520. years = absFloor(months / 12);
  17521. months %= 12;
  17522. data.days = days;
  17523. data.months = months;
  17524. data.years = years;
  17525. return this;
  17526. }
  17527. function daysToMonths(days) {
  17528. // 400 years have 146097 days (taking into account leap year rules)
  17529. // 400 years have 12 months === 4800
  17530. return days * 4800 / 146097;
  17531. }
  17532. function monthsToDays(months) {
  17533. // the reverse of daysToMonths
  17534. return months * 146097 / 4800;
  17535. }
  17536. function as(units) {
  17537. if (!this.isValid()) {
  17538. return NaN;
  17539. }
  17540. var days,
  17541. months,
  17542. milliseconds = this._milliseconds;
  17543. units = normalizeUnits(units);
  17544. if (units === 'month' || units === 'quarter' || units === 'year') {
  17545. days = this._days + milliseconds / 864e5;
  17546. months = this._months + daysToMonths(days);
  17547. switch (units) {
  17548. case 'month':
  17549. return months;
  17550. case 'quarter':
  17551. return months / 3;
  17552. case 'year':
  17553. return months / 12;}
  17554. } else {
  17555. // handle milliseconds separately because of floating point math errors (issue #1867)
  17556. days = this._days + Math.round(monthsToDays(this._months));
  17557. switch (units) {
  17558. case 'week':
  17559. return days / 7 + milliseconds / 6048e5;
  17560. case 'day':
  17561. return days + milliseconds / 864e5;
  17562. case 'hour':
  17563. return days * 24 + milliseconds / 36e5;
  17564. case 'minute':
  17565. return days * 1440 + milliseconds / 6e4;
  17566. case 'second':
  17567. return days * 86400 + milliseconds / 1000;
  17568. // Math.floor prevents floating point math errors here
  17569. case 'millisecond':
  17570. return Math.floor(days * 864e5) + milliseconds;
  17571. default:
  17572. throw new Error('Unknown unit ' + units);}
  17573. }
  17574. }
  17575. // TODO: Use this.as('ms')?
  17576. function valueOf$1() {
  17577. if (!this.isValid()) {
  17578. return NaN;
  17579. }
  17580. return (
  17581. this._milliseconds +
  17582. this._days * 864e5 +
  17583. this._months % 12 * 2592e6 +
  17584. toInt(this._months / 12) * 31536e6);
  17585. }
  17586. function makeAs(alias) {
  17587. return function () {
  17588. return this.as(alias);
  17589. };
  17590. }
  17591. var asMilliseconds = makeAs('ms'),
  17592. asSeconds = makeAs('s'),
  17593. asMinutes = makeAs('m'),
  17594. asHours = makeAs('h'),
  17595. asDays = makeAs('d'),
  17596. asWeeks = makeAs('w'),
  17597. asMonths = makeAs('M'),
  17598. asQuarters = makeAs('Q'),
  17599. asYears = makeAs('y');
  17600. function clone$1() {
  17601. return createDuration(this);
  17602. }
  17603. function get$2(units) {
  17604. units = normalizeUnits(units);
  17605. return this.isValid() ? this[units + 's']() : NaN;
  17606. }
  17607. function makeGetter(name) {
  17608. return function () {
  17609. return this.isValid() ? this._data[name] : NaN;
  17610. };
  17611. }
  17612. var milliseconds = makeGetter('milliseconds'),
  17613. seconds = makeGetter('seconds'),
  17614. minutes = makeGetter('minutes'),
  17615. hours = makeGetter('hours'),
  17616. days = makeGetter('days'),
  17617. months = makeGetter('months'),
  17618. years = makeGetter('years');
  17619. function weeks() {
  17620. return absFloor(this.days() / 7);
  17621. }
  17622. var round = Math.round,
  17623. thresholds = {
  17624. ss: 44, // a few seconds to seconds
  17625. s: 45, // seconds to minute
  17626. m: 45, // minutes to hour
  17627. h: 22, // hours to day
  17628. d: 26, // days to month/week
  17629. w: null, // weeks to month
  17630. M: 11 // months to year
  17631. };
  17632. // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize
  17633. function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {
  17634. return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);
  17635. }
  17636. function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {
  17637. var duration = createDuration(posNegDuration).abs(),
  17638. seconds = round(duration.as('s')),
  17639. minutes = round(duration.as('m')),
  17640. hours = round(duration.as('h')),
  17641. days = round(duration.as('d')),
  17642. months = round(duration.as('M')),
  17643. weeks = round(duration.as('w')),
  17644. years = round(duration.as('y')),
  17645. a =
  17646. seconds <= thresholds.ss && ['s', seconds] ||
  17647. seconds < thresholds.s && ['ss', seconds] ||
  17648. minutes <= 1 && ['m'] ||
  17649. minutes < thresholds.m && ['mm', minutes] ||
  17650. hours <= 1 && ['h'] ||
  17651. hours < thresholds.h && ['hh', hours] ||
  17652. days <= 1 && ['d'] ||
  17653. days < thresholds.d && ['dd', days];
  17654. if (thresholds.w != null) {
  17655. a =
  17656. a ||
  17657. weeks <= 1 && ['w'] ||
  17658. weeks < thresholds.w && ['ww', weeks];
  17659. }
  17660. a = a ||
  17661. months <= 1 && ['M'] ||
  17662. months < thresholds.M && ['MM', months] ||
  17663. years <= 1 && ['y'] || ['yy', years];
  17664. a[2] = withoutSuffix;
  17665. a[3] = +posNegDuration > 0;
  17666. a[4] = locale;
  17667. return substituteTimeAgo.apply(null, a);
  17668. }
  17669. // This function allows you to set the rounding function for relative time strings
  17670. function getSetRelativeTimeRounding(roundingFunction) {
  17671. if (roundingFunction === undefined) {
  17672. return round;
  17673. }
  17674. if (typeof roundingFunction === 'function') {
  17675. round = roundingFunction;
  17676. return true;
  17677. }
  17678. return false;
  17679. }
  17680. // This function allows you to set a threshold for relative time strings
  17681. function getSetRelativeTimeThreshold(threshold, limit) {
  17682. if (thresholds[threshold] === undefined) {
  17683. return false;
  17684. }
  17685. if (limit === undefined) {
  17686. return thresholds[threshold];
  17687. }
  17688. thresholds[threshold] = limit;
  17689. if (threshold === 's') {
  17690. thresholds.ss = limit - 1;
  17691. }
  17692. return true;
  17693. }
  17694. function humanize(argWithSuffix, argThresholds) {
  17695. if (!this.isValid()) {
  17696. return this.localeData().invalidDate();
  17697. }
  17698. var withSuffix = false,
  17699. th = thresholds,
  17700. locale,
  17701. output;
  17702. if (typeof argWithSuffix === 'object') {
  17703. argThresholds = argWithSuffix;
  17704. argWithSuffix = false;
  17705. }
  17706. if (typeof argWithSuffix === 'boolean') {
  17707. withSuffix = argWithSuffix;
  17708. }
  17709. if (typeof argThresholds === 'object') {
  17710. th = Object.assign({}, thresholds, argThresholds);
  17711. if (argThresholds.s != null && argThresholds.ss == null) {
  17712. th.ss = argThresholds.s - 1;
  17713. }
  17714. }
  17715. locale = this.localeData();
  17716. output = relativeTime$1(this, !withSuffix, th, locale);
  17717. if (withSuffix) {
  17718. output = locale.pastFuture(+this, output);
  17719. }
  17720. return locale.postformat(output);
  17721. }
  17722. var abs$1 = Math.abs;
  17723. function sign(x) {
  17724. return (x > 0) - (x < 0) || +x;
  17725. }
  17726. function toISOString$1() {
  17727. // for ISO strings we do not use the normal bubbling rules:
  17728. // * milliseconds bubble up until they become hours
  17729. // * days do not bubble at all
  17730. // * months bubble up until they become years
  17731. // This is because there is no context-free conversion between hours and days
  17732. // (think of clock changes)
  17733. // and also not between days and months (28-31 days per month)
  17734. if (!this.isValid()) {
  17735. return this.localeData().invalidDate();
  17736. }
  17737. var seconds = abs$1(this._milliseconds) / 1000,
  17738. days = abs$1(this._days),
  17739. months = abs$1(this._months),
  17740. minutes,
  17741. hours,
  17742. years,
  17743. s,
  17744. total = this.asSeconds(),
  17745. totalSign,
  17746. ymSign,
  17747. daysSign,
  17748. hmsSign;
  17749. if (!total) {
  17750. // this is the same as C#'s (Noda) and python (isodate)...
  17751. // but not other JS (goog.date)
  17752. return 'P0D';
  17753. }
  17754. // 3600 seconds -> 60 minutes -> 1 hour
  17755. minutes = absFloor(seconds / 60);
  17756. hours = absFloor(minutes / 60);
  17757. seconds %= 60;
  17758. minutes %= 60;
  17759. // 12 months -> 1 year
  17760. years = absFloor(months / 12);
  17761. months %= 12;
  17762. // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js
  17763. s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : '';
  17764. totalSign = total < 0 ? '-' : '';
  17765. ymSign = sign(this._months) !== sign(total) ? '-' : '';
  17766. daysSign = sign(this._days) !== sign(total) ? '-' : '';
  17767. hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';
  17768. return (
  17769. totalSign +
  17770. 'P' + (
  17771. years ? ymSign + years + 'Y' : '') + (
  17772. months ? ymSign + months + 'M' : '') + (
  17773. days ? daysSign + days + 'D' : '') + (
  17774. hours || minutes || seconds ? 'T' : '') + (
  17775. hours ? hmsSign + hours + 'H' : '') + (
  17776. minutes ? hmsSign + minutes + 'M' : '') + (
  17777. seconds ? hmsSign + s + 'S' : ''));
  17778. }
  17779. var proto$2 = Duration.prototype;
  17780. proto$2.isValid = isValid$1;
  17781. proto$2.abs = abs;
  17782. proto$2.add = add$1;
  17783. proto$2.subtract = subtract$1;
  17784. proto$2.as = as;
  17785. proto$2.asMilliseconds = asMilliseconds;
  17786. proto$2.asSeconds = asSeconds;
  17787. proto$2.asMinutes = asMinutes;
  17788. proto$2.asHours = asHours;
  17789. proto$2.asDays = asDays;
  17790. proto$2.asWeeks = asWeeks;
  17791. proto$2.asMonths = asMonths;
  17792. proto$2.asQuarters = asQuarters;
  17793. proto$2.asYears = asYears;
  17794. proto$2.valueOf = valueOf$1;
  17795. proto$2._bubble = bubble;
  17796. proto$2.clone = clone$1;
  17797. proto$2.get = get$2;
  17798. proto$2.milliseconds = milliseconds;
  17799. proto$2.seconds = seconds;
  17800. proto$2.minutes = minutes;
  17801. proto$2.hours = hours;
  17802. proto$2.days = days;
  17803. proto$2.weeks = weeks;
  17804. proto$2.months = months;
  17805. proto$2.years = years;
  17806. proto$2.humanize = humanize;
  17807. proto$2.toISOString = toISOString$1;
  17808. proto$2.toString = toISOString$1;
  17809. proto$2.toJSON = toISOString$1;
  17810. proto$2.locale = locale;
  17811. proto$2.localeData = localeData;
  17812. proto$2.toIsoString = deprecate(
  17813. 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',
  17814. toISOString$1);
  17815. proto$2.lang = lang;
  17816. // FORMATTING
  17817. addFormatToken('X', 0, 0, 'unix');
  17818. addFormatToken('x', 0, 0, 'valueOf');
  17819. // PARSING
  17820. addRegexToken('x', matchSigned);
  17821. addRegexToken('X', matchTimestamp);
  17822. addParseToken('X', function (input, array, config) {
  17823. config._d = new Date(parseFloat(input) * 1000);
  17824. });
  17825. addParseToken('x', function (input, array, config) {
  17826. config._d = new Date(toInt(input));
  17827. });
  17828. //! moment.js
  17829. hooks.version = '2.29.4';
  17830. setHookCallback(createLocal);
  17831. hooks.fn = proto;
  17832. hooks.min = min;
  17833. hooks.max = max;
  17834. hooks.now = now;
  17835. hooks.utc = createUTC;
  17836. hooks.unix = createUnix;
  17837. hooks.months = listMonths;
  17838. hooks.isDate = isDate;
  17839. hooks.locale = getSetGlobalLocale;
  17840. hooks.invalid = createInvalid;
  17841. hooks.duration = createDuration;
  17842. hooks.isMoment = isMoment;
  17843. hooks.weekdays = listWeekdays;
  17844. hooks.parseZone = createInZone;
  17845. hooks.localeData = getLocale;
  17846. hooks.isDuration = isDuration;
  17847. hooks.monthsShort = listMonthsShort;
  17848. hooks.weekdaysMin = listWeekdaysMin;
  17849. hooks.defineLocale = defineLocale;
  17850. hooks.updateLocale = updateLocale;
  17851. hooks.locales = listLocales;
  17852. hooks.weekdaysShort = listWeekdaysShort;
  17853. hooks.normalizeUnits = normalizeUnits;
  17854. hooks.relativeTimeRounding = getSetRelativeTimeRounding;
  17855. hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;
  17856. hooks.calendarFormat = getCalendarFormat;
  17857. hooks.prototype = proto;
  17858. // currently HTML5 input type only supports 24-hour formats
  17859. hooks.HTML5_FMT = {
  17860. DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // <input type="datetime-local" />
  17861. DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // <input type="datetime-local" step="1" />
  17862. DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // <input type="datetime-local" step="0.001" />
  17863. DATE: 'YYYY-MM-DD', // <input type="date" />
  17864. TIME: 'HH:mm', // <input type="time" />
  17865. TIME_SECONDS: 'HH:mm:ss', // <input type="time" step="1" />
  17866. TIME_MS: 'HH:mm:ss.SSS', // <input type="time" step="0.001" />
  17867. WEEK: 'GGGG-[W]WW', // <input type="week" />
  17868. MONTH: 'YYYY-MM' // <input type="month" />
  17869. };
  17870. return hooks;
  17871. });
  17872. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../HBuilderX/plugins/uniapp-cli/node_modules/webpack/buildin/module.js */ 43)(module)))
  17873. /***/ }),
  17874. /* 43 */
  17875. /*!***********************************!*\
  17876. !*** (webpack)/buildin/module.js ***!
  17877. \***********************************/
  17878. /*! no static exports found */
  17879. /***/ (function(module, exports) {
  17880. module.exports = function(module) {
  17881. if (!module.webpackPolyfill) {
  17882. module.deprecate = function() {};
  17883. module.paths = [];
  17884. // module.parent = undefined by default
  17885. if (!module.children) module.children = [];
  17886. Object.defineProperty(module, "loaded", {
  17887. enumerable: true,
  17888. get: function() {
  17889. return module.l;
  17890. }
  17891. });
  17892. Object.defineProperty(module, "id", {
  17893. enumerable: true,
  17894. get: function() {
  17895. return module.i;
  17896. }
  17897. });
  17898. module.webpackPolyfill = 1;
  17899. }
  17900. return module;
  17901. };
  17902. /***/ }),
  17903. /* 44 */
  17904. /*!*************************************************************************!*\
  17905. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale sync ^\.\/.*$ ***!
  17906. \*************************************************************************/
  17907. /*! no static exports found */
  17908. /***/ (function(module, exports, __webpack_require__) {
  17909. var map = {
  17910. "./af": 45,
  17911. "./af.js": 45,
  17912. "./ar": 46,
  17913. "./ar-dz": 47,
  17914. "./ar-dz.js": 47,
  17915. "./ar-kw": 48,
  17916. "./ar-kw.js": 48,
  17917. "./ar-ly": 49,
  17918. "./ar-ly.js": 49,
  17919. "./ar-ma": 50,
  17920. "./ar-ma.js": 50,
  17921. "./ar-sa": 51,
  17922. "./ar-sa.js": 51,
  17923. "./ar-tn": 52,
  17924. "./ar-tn.js": 52,
  17925. "./ar.js": 46,
  17926. "./az": 53,
  17927. "./az.js": 53,
  17928. "./be": 54,
  17929. "./be.js": 54,
  17930. "./bg": 55,
  17931. "./bg.js": 55,
  17932. "./bm": 56,
  17933. "./bm.js": 56,
  17934. "./bn": 57,
  17935. "./bn-bd": 58,
  17936. "./bn-bd.js": 58,
  17937. "./bn.js": 57,
  17938. "./bo": 59,
  17939. "./bo.js": 59,
  17940. "./br": 60,
  17941. "./br.js": 60,
  17942. "./bs": 61,
  17943. "./bs.js": 61,
  17944. "./ca": 62,
  17945. "./ca.js": 62,
  17946. "./cs": 63,
  17947. "./cs.js": 63,
  17948. "./cv": 64,
  17949. "./cv.js": 64,
  17950. "./cy": 65,
  17951. "./cy.js": 65,
  17952. "./da": 66,
  17953. "./da.js": 66,
  17954. "./de": 67,
  17955. "./de-at": 68,
  17956. "./de-at.js": 68,
  17957. "./de-ch": 69,
  17958. "./de-ch.js": 69,
  17959. "./de.js": 67,
  17960. "./dv": 70,
  17961. "./dv.js": 70,
  17962. "./el": 71,
  17963. "./el.js": 71,
  17964. "./en-au": 72,
  17965. "./en-au.js": 72,
  17966. "./en-ca": 73,
  17967. "./en-ca.js": 73,
  17968. "./en-gb": 74,
  17969. "./en-gb.js": 74,
  17970. "./en-ie": 75,
  17971. "./en-ie.js": 75,
  17972. "./en-il": 76,
  17973. "./en-il.js": 76,
  17974. "./en-in": 77,
  17975. "./en-in.js": 77,
  17976. "./en-nz": 78,
  17977. "./en-nz.js": 78,
  17978. "./en-sg": 79,
  17979. "./en-sg.js": 79,
  17980. "./eo": 80,
  17981. "./eo.js": 80,
  17982. "./es": 81,
  17983. "./es-do": 82,
  17984. "./es-do.js": 82,
  17985. "./es-mx": 83,
  17986. "./es-mx.js": 83,
  17987. "./es-us": 84,
  17988. "./es-us.js": 84,
  17989. "./es.js": 81,
  17990. "./et": 85,
  17991. "./et.js": 85,
  17992. "./eu": 86,
  17993. "./eu.js": 86,
  17994. "./fa": 87,
  17995. "./fa.js": 87,
  17996. "./fi": 88,
  17997. "./fi.js": 88,
  17998. "./fil": 89,
  17999. "./fil.js": 89,
  18000. "./fo": 90,
  18001. "./fo.js": 90,
  18002. "./fr": 91,
  18003. "./fr-ca": 92,
  18004. "./fr-ca.js": 92,
  18005. "./fr-ch": 93,
  18006. "./fr-ch.js": 93,
  18007. "./fr.js": 91,
  18008. "./fy": 94,
  18009. "./fy.js": 94,
  18010. "./ga": 95,
  18011. "./ga.js": 95,
  18012. "./gd": 96,
  18013. "./gd.js": 96,
  18014. "./gl": 97,
  18015. "./gl.js": 97,
  18016. "./gom-deva": 98,
  18017. "./gom-deva.js": 98,
  18018. "./gom-latn": 99,
  18019. "./gom-latn.js": 99,
  18020. "./gu": 100,
  18021. "./gu.js": 100,
  18022. "./he": 101,
  18023. "./he.js": 101,
  18024. "./hi": 102,
  18025. "./hi.js": 102,
  18026. "./hr": 103,
  18027. "./hr.js": 103,
  18028. "./hu": 104,
  18029. "./hu.js": 104,
  18030. "./hy-am": 105,
  18031. "./hy-am.js": 105,
  18032. "./id": 106,
  18033. "./id.js": 106,
  18034. "./is": 107,
  18035. "./is.js": 107,
  18036. "./it": 108,
  18037. "./it-ch": 109,
  18038. "./it-ch.js": 109,
  18039. "./it.js": 108,
  18040. "./ja": 110,
  18041. "./ja.js": 110,
  18042. "./jv": 111,
  18043. "./jv.js": 111,
  18044. "./ka": 112,
  18045. "./ka.js": 112,
  18046. "./kk": 113,
  18047. "./kk.js": 113,
  18048. "./km": 114,
  18049. "./km.js": 114,
  18050. "./kn": 115,
  18051. "./kn.js": 115,
  18052. "./ko": 116,
  18053. "./ko.js": 116,
  18054. "./ku": 117,
  18055. "./ku.js": 117,
  18056. "./ky": 118,
  18057. "./ky.js": 118,
  18058. "./lb": 119,
  18059. "./lb.js": 119,
  18060. "./lo": 120,
  18061. "./lo.js": 120,
  18062. "./lt": 121,
  18063. "./lt.js": 121,
  18064. "./lv": 122,
  18065. "./lv.js": 122,
  18066. "./me": 123,
  18067. "./me.js": 123,
  18068. "./mi": 124,
  18069. "./mi.js": 124,
  18070. "./mk": 125,
  18071. "./mk.js": 125,
  18072. "./ml": 126,
  18073. "./ml.js": 126,
  18074. "./mn": 127,
  18075. "./mn.js": 127,
  18076. "./mr": 128,
  18077. "./mr.js": 128,
  18078. "./ms": 129,
  18079. "./ms-my": 130,
  18080. "./ms-my.js": 130,
  18081. "./ms.js": 129,
  18082. "./mt": 131,
  18083. "./mt.js": 131,
  18084. "./my": 132,
  18085. "./my.js": 132,
  18086. "./nb": 133,
  18087. "./nb.js": 133,
  18088. "./ne": 134,
  18089. "./ne.js": 134,
  18090. "./nl": 135,
  18091. "./nl-be": 136,
  18092. "./nl-be.js": 136,
  18093. "./nl.js": 135,
  18094. "./nn": 137,
  18095. "./nn.js": 137,
  18096. "./oc-lnc": 138,
  18097. "./oc-lnc.js": 138,
  18098. "./pa-in": 139,
  18099. "./pa-in.js": 139,
  18100. "./pl": 140,
  18101. "./pl.js": 140,
  18102. "./pt": 141,
  18103. "./pt-br": 142,
  18104. "./pt-br.js": 142,
  18105. "./pt.js": 141,
  18106. "./ro": 143,
  18107. "./ro.js": 143,
  18108. "./ru": 144,
  18109. "./ru.js": 144,
  18110. "./sd": 145,
  18111. "./sd.js": 145,
  18112. "./se": 146,
  18113. "./se.js": 146,
  18114. "./si": 147,
  18115. "./si.js": 147,
  18116. "./sk": 148,
  18117. "./sk.js": 148,
  18118. "./sl": 149,
  18119. "./sl.js": 149,
  18120. "./sq": 150,
  18121. "./sq.js": 150,
  18122. "./sr": 151,
  18123. "./sr-cyrl": 152,
  18124. "./sr-cyrl.js": 152,
  18125. "./sr.js": 151,
  18126. "./ss": 153,
  18127. "./ss.js": 153,
  18128. "./sv": 154,
  18129. "./sv.js": 154,
  18130. "./sw": 155,
  18131. "./sw.js": 155,
  18132. "./ta": 156,
  18133. "./ta.js": 156,
  18134. "./te": 157,
  18135. "./te.js": 157,
  18136. "./tet": 158,
  18137. "./tet.js": 158,
  18138. "./tg": 159,
  18139. "./tg.js": 159,
  18140. "./th": 160,
  18141. "./th.js": 160,
  18142. "./tk": 161,
  18143. "./tk.js": 161,
  18144. "./tl-ph": 162,
  18145. "./tl-ph.js": 162,
  18146. "./tlh": 163,
  18147. "./tlh.js": 163,
  18148. "./tr": 164,
  18149. "./tr.js": 164,
  18150. "./tzl": 165,
  18151. "./tzl.js": 165,
  18152. "./tzm": 166,
  18153. "./tzm-latn": 167,
  18154. "./tzm-latn.js": 167,
  18155. "./tzm.js": 166,
  18156. "./ug-cn": 168,
  18157. "./ug-cn.js": 168,
  18158. "./uk": 169,
  18159. "./uk.js": 169,
  18160. "./ur": 170,
  18161. "./ur.js": 170,
  18162. "./uz": 171,
  18163. "./uz-latn": 172,
  18164. "./uz-latn.js": 172,
  18165. "./uz.js": 171,
  18166. "./vi": 173,
  18167. "./vi.js": 173,
  18168. "./x-pseudo": 174,
  18169. "./x-pseudo.js": 174,
  18170. "./yo": 175,
  18171. "./yo.js": 175,
  18172. "./zh-cn": 176,
  18173. "./zh-cn.js": 176,
  18174. "./zh-hk": 177,
  18175. "./zh-hk.js": 177,
  18176. "./zh-mo": 178,
  18177. "./zh-mo.js": 178,
  18178. "./zh-tw": 179,
  18179. "./zh-tw.js": 179
  18180. };
  18181. function webpackContext(req) {
  18182. var id = webpackContextResolve(req);
  18183. return __webpack_require__(id);
  18184. }
  18185. function webpackContextResolve(req) {
  18186. if(!__webpack_require__.o(map, req)) {
  18187. var e = new Error("Cannot find module '" + req + "'");
  18188. e.code = 'MODULE_NOT_FOUND';
  18189. throw e;
  18190. }
  18191. return map[req];
  18192. }
  18193. webpackContext.keys = function webpackContextKeys() {
  18194. return Object.keys(map);
  18195. };
  18196. webpackContext.resolve = webpackContextResolve;
  18197. module.exports = webpackContext;
  18198. webpackContext.id = 44;
  18199. /***/ }),
  18200. /* 45 */
  18201. /*!*****************************************************************!*\
  18202. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/af.js ***!
  18203. \*****************************************************************/
  18204. /*! no static exports found */
  18205. /***/ (function(module, exports, __webpack_require__) {
  18206. //! moment.js locale configuration
  18207. //! locale : Afrikaans [af]
  18208. //! author : Werner Mollentze : https://github.com/wernerm
  18209. ;(function (global, factory) {
  18210. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18211. undefined;
  18212. })(this, function (moment) {'use strict';
  18213. //! moment.js locale configuration
  18214. var af = moment.defineLocale('af', {
  18215. months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split(
  18216. '_'),
  18217. monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),
  18218. weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split(
  18219. '_'),
  18220. weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),
  18221. weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),
  18222. meridiemParse: /vm|nm/i,
  18223. isPM: function isPM(input) {
  18224. return /^nm$/i.test(input);
  18225. },
  18226. meridiem: function meridiem(hours, minutes, isLower) {
  18227. if (hours < 12) {
  18228. return isLower ? 'vm' : 'VM';
  18229. } else {
  18230. return isLower ? 'nm' : 'NM';
  18231. }
  18232. },
  18233. longDateFormat: {
  18234. LT: 'HH:mm',
  18235. LTS: 'HH:mm:ss',
  18236. L: 'DD/MM/YYYY',
  18237. LL: 'D MMMM YYYY',
  18238. LLL: 'D MMMM YYYY HH:mm',
  18239. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  18240. calendar: {
  18241. sameDay: '[Vandag om] LT',
  18242. nextDay: '[Môre om] LT',
  18243. nextWeek: 'dddd [om] LT',
  18244. lastDay: '[Gister om] LT',
  18245. lastWeek: '[Laas] dddd [om] LT',
  18246. sameElse: 'L' },
  18247. relativeTime: {
  18248. future: 'oor %s',
  18249. past: '%s gelede',
  18250. s: "'n paar sekondes",
  18251. ss: '%d sekondes',
  18252. m: "'n minuut",
  18253. mm: '%d minute',
  18254. h: "'n uur",
  18255. hh: '%d ure',
  18256. d: "'n dag",
  18257. dd: '%d dae',
  18258. M: "'n maand",
  18259. MM: '%d maande',
  18260. y: "'n jaar",
  18261. yy: '%d jaar' },
  18262. dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
  18263. ordinal: function ordinal(number) {
  18264. return (
  18265. number + (
  18266. number === 1 || number === 8 || number >= 20 ? 'ste' : 'de'));
  18267. // Thanks to Joris Röling : https://github.com/jjupiter
  18268. },
  18269. week: {
  18270. dow: 1, // Maandag is die eerste dag van die week.
  18271. doy: 4 // Die week wat die 4de Januarie bevat is die eerste week van die jaar.
  18272. } });
  18273. return af;
  18274. });
  18275. /***/ }),
  18276. /* 46 */
  18277. /*!*****************************************************************!*\
  18278. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar.js ***!
  18279. \*****************************************************************/
  18280. /*! no static exports found */
  18281. /***/ (function(module, exports, __webpack_require__) {
  18282. //! moment.js locale configuration
  18283. //! locale : Arabic [ar]
  18284. //! author : Abdel Said: https://github.com/abdelsaid
  18285. //! author : Ahmed Elkhatib
  18286. //! author : forabi https://github.com/forabi
  18287. ;(function (global, factory) {
  18288. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18289. undefined;
  18290. })(this, function (moment) {'use strict';
  18291. //! moment.js locale configuration
  18292. var symbolMap = {
  18293. 1: '١',
  18294. 2: '٢',
  18295. 3: '٣',
  18296. 4: '٤',
  18297. 5: '٥',
  18298. 6: '٦',
  18299. 7: '٧',
  18300. 8: '٨',
  18301. 9: '٩',
  18302. 0: '٠' },
  18303. numberMap = {
  18304. '١': '1',
  18305. '٢': '2',
  18306. '٣': '3',
  18307. '٤': '4',
  18308. '٥': '5',
  18309. '٦': '6',
  18310. '٧': '7',
  18311. '٨': '8',
  18312. '٩': '9',
  18313. '٠': '0' },
  18314. pluralForm = function pluralForm(n) {
  18315. return n === 0 ?
  18316. 0 :
  18317. n === 1 ?
  18318. 1 :
  18319. n === 2 ?
  18320. 2 :
  18321. n % 100 >= 3 && n % 100 <= 10 ?
  18322. 3 :
  18323. n % 100 >= 11 ?
  18324. 4 :
  18325. 5;
  18326. },
  18327. plurals = {
  18328. s: [
  18329. 'أقل من ثانية',
  18330. 'ثانية واحدة',
  18331. ['ثانيتان', 'ثانيتين'],
  18332. '%d ثوان',
  18333. '%d ثانية',
  18334. '%d ثانية'],
  18335. m: [
  18336. 'أقل من دقيقة',
  18337. 'دقيقة واحدة',
  18338. ['دقيقتان', 'دقيقتين'],
  18339. '%d دقائق',
  18340. '%d دقيقة',
  18341. '%d دقيقة'],
  18342. h: [
  18343. 'أقل من ساعة',
  18344. 'ساعة واحدة',
  18345. ['ساعتان', 'ساعتين'],
  18346. '%d ساعات',
  18347. '%d ساعة',
  18348. '%d ساعة'],
  18349. d: [
  18350. 'أقل من يوم',
  18351. 'يوم واحد',
  18352. ['يومان', 'يومين'],
  18353. '%d أيام',
  18354. '%d يومًا',
  18355. '%d يوم'],
  18356. M: [
  18357. 'أقل من شهر',
  18358. 'شهر واحد',
  18359. ['شهران', 'شهرين'],
  18360. '%d أشهر',
  18361. '%d شهرا',
  18362. '%d شهر'],
  18363. y: [
  18364. 'أقل من عام',
  18365. 'عام واحد',
  18366. ['عامان', 'عامين'],
  18367. '%d أعوام',
  18368. '%d عامًا',
  18369. '%d عام'] },
  18370. pluralize = function pluralize(u) {
  18371. return function (number, withoutSuffix, string, isFuture) {
  18372. var f = pluralForm(number),
  18373. str = plurals[u][pluralForm(number)];
  18374. if (f === 2) {
  18375. str = str[withoutSuffix ? 0 : 1];
  18376. }
  18377. return str.replace(/%d/i, number);
  18378. };
  18379. },
  18380. months = [
  18381. 'يناير',
  18382. 'فبراير',
  18383. 'مارس',
  18384. 'أبريل',
  18385. 'مايو',
  18386. 'يونيو',
  18387. 'يوليو',
  18388. 'أغسطس',
  18389. 'سبتمبر',
  18390. 'أكتوبر',
  18391. 'نوفمبر',
  18392. 'ديسمبر'];
  18393. var ar = moment.defineLocale('ar', {
  18394. months: months,
  18395. monthsShort: months,
  18396. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  18397. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  18398. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  18399. weekdaysParseExact: true,
  18400. longDateFormat: {
  18401. LT: 'HH:mm',
  18402. LTS: 'HH:mm:ss',
  18403. L: "D/\u200FM/\u200FYYYY",
  18404. LL: 'D MMMM YYYY',
  18405. LLL: 'D MMMM YYYY HH:mm',
  18406. LLLL: 'dddd D MMMM YYYY HH:mm' },
  18407. meridiemParse: /ص|م/,
  18408. isPM: function isPM(input) {
  18409. return 'م' === input;
  18410. },
  18411. meridiem: function meridiem(hour, minute, isLower) {
  18412. if (hour < 12) {
  18413. return 'ص';
  18414. } else {
  18415. return 'م';
  18416. }
  18417. },
  18418. calendar: {
  18419. sameDay: '[اليوم عند الساعة] LT',
  18420. nextDay: '[غدًا عند الساعة] LT',
  18421. nextWeek: 'dddd [عند الساعة] LT',
  18422. lastDay: '[أمس عند الساعة] LT',
  18423. lastWeek: 'dddd [عند الساعة] LT',
  18424. sameElse: 'L' },
  18425. relativeTime: {
  18426. future: 'بعد %s',
  18427. past: 'منذ %s',
  18428. s: pluralize('s'),
  18429. ss: pluralize('s'),
  18430. m: pluralize('m'),
  18431. mm: pluralize('m'),
  18432. h: pluralize('h'),
  18433. hh: pluralize('h'),
  18434. d: pluralize('d'),
  18435. dd: pluralize('d'),
  18436. M: pluralize('M'),
  18437. MM: pluralize('M'),
  18438. y: pluralize('y'),
  18439. yy: pluralize('y') },
  18440. preparse: function preparse(string) {
  18441. return string.
  18442. replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
  18443. return numberMap[match];
  18444. }).
  18445. replace(/،/g, ',');
  18446. },
  18447. postformat: function postformat(string) {
  18448. return string.
  18449. replace(/\d/g, function (match) {
  18450. return symbolMap[match];
  18451. }).
  18452. replace(/,/g, '،');
  18453. },
  18454. week: {
  18455. dow: 6, // Saturday is the first day of the week.
  18456. doy: 12 // The week that contains Jan 12th is the first week of the year.
  18457. } });
  18458. return ar;
  18459. });
  18460. /***/ }),
  18461. /* 47 */
  18462. /*!********************************************************************!*\
  18463. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar-dz.js ***!
  18464. \********************************************************************/
  18465. /*! no static exports found */
  18466. /***/ (function(module, exports, __webpack_require__) {
  18467. //! moment.js locale configuration
  18468. //! locale : Arabic (Algeria) [ar-dz]
  18469. //! author : Amine Roukh: https://github.com/Amine27
  18470. //! author : Abdel Said: https://github.com/abdelsaid
  18471. //! author : Ahmed Elkhatib
  18472. //! author : forabi https://github.com/forabi
  18473. //! author : Noureddine LOUAHEDJ : https://github.com/noureddinem
  18474. ;(function (global, factory) {
  18475. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18476. undefined;
  18477. })(this, function (moment) {'use strict';
  18478. //! moment.js locale configuration
  18479. var pluralForm = function pluralForm(n) {
  18480. return n === 0 ?
  18481. 0 :
  18482. n === 1 ?
  18483. 1 :
  18484. n === 2 ?
  18485. 2 :
  18486. n % 100 >= 3 && n % 100 <= 10 ?
  18487. 3 :
  18488. n % 100 >= 11 ?
  18489. 4 :
  18490. 5;
  18491. },
  18492. plurals = {
  18493. s: [
  18494. 'أقل من ثانية',
  18495. 'ثانية واحدة',
  18496. ['ثانيتان', 'ثانيتين'],
  18497. '%d ثوان',
  18498. '%d ثانية',
  18499. '%d ثانية'],
  18500. m: [
  18501. 'أقل من دقيقة',
  18502. 'دقيقة واحدة',
  18503. ['دقيقتان', 'دقيقتين'],
  18504. '%d دقائق',
  18505. '%d دقيقة',
  18506. '%d دقيقة'],
  18507. h: [
  18508. 'أقل من ساعة',
  18509. 'ساعة واحدة',
  18510. ['ساعتان', 'ساعتين'],
  18511. '%d ساعات',
  18512. '%d ساعة',
  18513. '%d ساعة'],
  18514. d: [
  18515. 'أقل من يوم',
  18516. 'يوم واحد',
  18517. ['يومان', 'يومين'],
  18518. '%d أيام',
  18519. '%d يومًا',
  18520. '%d يوم'],
  18521. M: [
  18522. 'أقل من شهر',
  18523. 'شهر واحد',
  18524. ['شهران', 'شهرين'],
  18525. '%d أشهر',
  18526. '%d شهرا',
  18527. '%d شهر'],
  18528. y: [
  18529. 'أقل من عام',
  18530. 'عام واحد',
  18531. ['عامان', 'عامين'],
  18532. '%d أعوام',
  18533. '%d عامًا',
  18534. '%d عام'] },
  18535. pluralize = function pluralize(u) {
  18536. return function (number, withoutSuffix, string, isFuture) {
  18537. var f = pluralForm(number),
  18538. str = plurals[u][pluralForm(number)];
  18539. if (f === 2) {
  18540. str = str[withoutSuffix ? 0 : 1];
  18541. }
  18542. return str.replace(/%d/i, number);
  18543. };
  18544. },
  18545. months = [
  18546. 'جانفي',
  18547. 'فيفري',
  18548. 'مارس',
  18549. 'أفريل',
  18550. 'ماي',
  18551. 'جوان',
  18552. 'جويلية',
  18553. 'أوت',
  18554. 'سبتمبر',
  18555. 'أكتوبر',
  18556. 'نوفمبر',
  18557. 'ديسمبر'];
  18558. var arDz = moment.defineLocale('ar-dz', {
  18559. months: months,
  18560. monthsShort: months,
  18561. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  18562. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  18563. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  18564. weekdaysParseExact: true,
  18565. longDateFormat: {
  18566. LT: 'HH:mm',
  18567. LTS: 'HH:mm:ss',
  18568. L: "D/\u200FM/\u200FYYYY",
  18569. LL: 'D MMMM YYYY',
  18570. LLL: 'D MMMM YYYY HH:mm',
  18571. LLLL: 'dddd D MMMM YYYY HH:mm' },
  18572. meridiemParse: /ص|م/,
  18573. isPM: function isPM(input) {
  18574. return 'م' === input;
  18575. },
  18576. meridiem: function meridiem(hour, minute, isLower) {
  18577. if (hour < 12) {
  18578. return 'ص';
  18579. } else {
  18580. return 'م';
  18581. }
  18582. },
  18583. calendar: {
  18584. sameDay: '[اليوم عند الساعة] LT',
  18585. nextDay: '[غدًا عند الساعة] LT',
  18586. nextWeek: 'dddd [عند الساعة] LT',
  18587. lastDay: '[أمس عند الساعة] LT',
  18588. lastWeek: 'dddd [عند الساعة] LT',
  18589. sameElse: 'L' },
  18590. relativeTime: {
  18591. future: 'بعد %s',
  18592. past: 'منذ %s',
  18593. s: pluralize('s'),
  18594. ss: pluralize('s'),
  18595. m: pluralize('m'),
  18596. mm: pluralize('m'),
  18597. h: pluralize('h'),
  18598. hh: pluralize('h'),
  18599. d: pluralize('d'),
  18600. dd: pluralize('d'),
  18601. M: pluralize('M'),
  18602. MM: pluralize('M'),
  18603. y: pluralize('y'),
  18604. yy: pluralize('y') },
  18605. postformat: function postformat(string) {
  18606. return string.replace(/,/g, '،');
  18607. },
  18608. week: {
  18609. dow: 0, // Sunday is the first day of the week.
  18610. doy: 4 // The week that contains Jan 4th is the first week of the year.
  18611. } });
  18612. return arDz;
  18613. });
  18614. /***/ }),
  18615. /* 48 */
  18616. /*!********************************************************************!*\
  18617. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar-kw.js ***!
  18618. \********************************************************************/
  18619. /*! no static exports found */
  18620. /***/ (function(module, exports, __webpack_require__) {
  18621. //! moment.js locale configuration
  18622. //! locale : Arabic (Kuwait) [ar-kw]
  18623. //! author : Nusret Parlak: https://github.com/nusretparlak
  18624. ;(function (global, factory) {
  18625. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18626. undefined;
  18627. })(this, function (moment) {'use strict';
  18628. //! moment.js locale configuration
  18629. var arKw = moment.defineLocale('ar-kw', {
  18630. months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(
  18631. '_'),
  18632. monthsShort:
  18633. 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(
  18634. '_'),
  18635. weekdays: 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  18636. weekdaysShort: 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),
  18637. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  18638. weekdaysParseExact: true,
  18639. longDateFormat: {
  18640. LT: 'HH:mm',
  18641. LTS: 'HH:mm:ss',
  18642. L: 'DD/MM/YYYY',
  18643. LL: 'D MMMM YYYY',
  18644. LLL: 'D MMMM YYYY HH:mm',
  18645. LLLL: 'dddd D MMMM YYYY HH:mm' },
  18646. calendar: {
  18647. sameDay: '[اليوم على الساعة] LT',
  18648. nextDay: '[غدا على الساعة] LT',
  18649. nextWeek: 'dddd [على الساعة] LT',
  18650. lastDay: '[أمس على الساعة] LT',
  18651. lastWeek: 'dddd [على الساعة] LT',
  18652. sameElse: 'L' },
  18653. relativeTime: {
  18654. future: 'في %s',
  18655. past: 'منذ %s',
  18656. s: 'ثوان',
  18657. ss: '%d ثانية',
  18658. m: 'دقيقة',
  18659. mm: '%d دقائق',
  18660. h: 'ساعة',
  18661. hh: '%d ساعات',
  18662. d: 'يوم',
  18663. dd: '%d أيام',
  18664. M: 'شهر',
  18665. MM: '%d أشهر',
  18666. y: 'سنة',
  18667. yy: '%d سنوات' },
  18668. week: {
  18669. dow: 0, // Sunday is the first day of the week.
  18670. doy: 12 // The week that contains Jan 12th is the first week of the year.
  18671. } });
  18672. return arKw;
  18673. });
  18674. /***/ }),
  18675. /* 49 */
  18676. /*!********************************************************************!*\
  18677. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar-ly.js ***!
  18678. \********************************************************************/
  18679. /*! no static exports found */
  18680. /***/ (function(module, exports, __webpack_require__) {
  18681. //! moment.js locale configuration
  18682. //! locale : Arabic (Libya) [ar-ly]
  18683. //! author : Ali Hmer: https://github.com/kikoanis
  18684. ;(function (global, factory) {
  18685. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18686. undefined;
  18687. })(this, function (moment) {'use strict';
  18688. //! moment.js locale configuration
  18689. var symbolMap = {
  18690. 1: '1',
  18691. 2: '2',
  18692. 3: '3',
  18693. 4: '4',
  18694. 5: '5',
  18695. 6: '6',
  18696. 7: '7',
  18697. 8: '8',
  18698. 9: '9',
  18699. 0: '0' },
  18700. pluralForm = function pluralForm(n) {
  18701. return n === 0 ?
  18702. 0 :
  18703. n === 1 ?
  18704. 1 :
  18705. n === 2 ?
  18706. 2 :
  18707. n % 100 >= 3 && n % 100 <= 10 ?
  18708. 3 :
  18709. n % 100 >= 11 ?
  18710. 4 :
  18711. 5;
  18712. },
  18713. plurals = {
  18714. s: [
  18715. 'أقل من ثانية',
  18716. 'ثانية واحدة',
  18717. ['ثانيتان', 'ثانيتين'],
  18718. '%d ثوان',
  18719. '%d ثانية',
  18720. '%d ثانية'],
  18721. m: [
  18722. 'أقل من دقيقة',
  18723. 'دقيقة واحدة',
  18724. ['دقيقتان', 'دقيقتين'],
  18725. '%d دقائق',
  18726. '%d دقيقة',
  18727. '%d دقيقة'],
  18728. h: [
  18729. 'أقل من ساعة',
  18730. 'ساعة واحدة',
  18731. ['ساعتان', 'ساعتين'],
  18732. '%d ساعات',
  18733. '%d ساعة',
  18734. '%d ساعة'],
  18735. d: [
  18736. 'أقل من يوم',
  18737. 'يوم واحد',
  18738. ['يومان', 'يومين'],
  18739. '%d أيام',
  18740. '%d يومًا',
  18741. '%d يوم'],
  18742. M: [
  18743. 'أقل من شهر',
  18744. 'شهر واحد',
  18745. ['شهران', 'شهرين'],
  18746. '%d أشهر',
  18747. '%d شهرا',
  18748. '%d شهر'],
  18749. y: [
  18750. 'أقل من عام',
  18751. 'عام واحد',
  18752. ['عامان', 'عامين'],
  18753. '%d أعوام',
  18754. '%d عامًا',
  18755. '%d عام'] },
  18756. pluralize = function pluralize(u) {
  18757. return function (number, withoutSuffix, string, isFuture) {
  18758. var f = pluralForm(number),
  18759. str = plurals[u][pluralForm(number)];
  18760. if (f === 2) {
  18761. str = str[withoutSuffix ? 0 : 1];
  18762. }
  18763. return str.replace(/%d/i, number);
  18764. };
  18765. },
  18766. months = [
  18767. 'يناير',
  18768. 'فبراير',
  18769. 'مارس',
  18770. 'أبريل',
  18771. 'مايو',
  18772. 'يونيو',
  18773. 'يوليو',
  18774. 'أغسطس',
  18775. 'سبتمبر',
  18776. 'أكتوبر',
  18777. 'نوفمبر',
  18778. 'ديسمبر'];
  18779. var arLy = moment.defineLocale('ar-ly', {
  18780. months: months,
  18781. monthsShort: months,
  18782. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  18783. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  18784. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  18785. weekdaysParseExact: true,
  18786. longDateFormat: {
  18787. LT: 'HH:mm',
  18788. LTS: 'HH:mm:ss',
  18789. L: "D/\u200FM/\u200FYYYY",
  18790. LL: 'D MMMM YYYY',
  18791. LLL: 'D MMMM YYYY HH:mm',
  18792. LLLL: 'dddd D MMMM YYYY HH:mm' },
  18793. meridiemParse: /ص|م/,
  18794. isPM: function isPM(input) {
  18795. return 'م' === input;
  18796. },
  18797. meridiem: function meridiem(hour, minute, isLower) {
  18798. if (hour < 12) {
  18799. return 'ص';
  18800. } else {
  18801. return 'م';
  18802. }
  18803. },
  18804. calendar: {
  18805. sameDay: '[اليوم عند الساعة] LT',
  18806. nextDay: '[غدًا عند الساعة] LT',
  18807. nextWeek: 'dddd [عند الساعة] LT',
  18808. lastDay: '[أمس عند الساعة] LT',
  18809. lastWeek: 'dddd [عند الساعة] LT',
  18810. sameElse: 'L' },
  18811. relativeTime: {
  18812. future: 'بعد %s',
  18813. past: 'منذ %s',
  18814. s: pluralize('s'),
  18815. ss: pluralize('s'),
  18816. m: pluralize('m'),
  18817. mm: pluralize('m'),
  18818. h: pluralize('h'),
  18819. hh: pluralize('h'),
  18820. d: pluralize('d'),
  18821. dd: pluralize('d'),
  18822. M: pluralize('M'),
  18823. MM: pluralize('M'),
  18824. y: pluralize('y'),
  18825. yy: pluralize('y') },
  18826. preparse: function preparse(string) {
  18827. return string.replace(/،/g, ',');
  18828. },
  18829. postformat: function postformat(string) {
  18830. return string.
  18831. replace(/\d/g, function (match) {
  18832. return symbolMap[match];
  18833. }).
  18834. replace(/,/g, '،');
  18835. },
  18836. week: {
  18837. dow: 6, // Saturday is the first day of the week.
  18838. doy: 12 // The week that contains Jan 12th is the first week of the year.
  18839. } });
  18840. return arLy;
  18841. });
  18842. /***/ }),
  18843. /* 50 */
  18844. /*!********************************************************************!*\
  18845. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar-ma.js ***!
  18846. \********************************************************************/
  18847. /*! no static exports found */
  18848. /***/ (function(module, exports, __webpack_require__) {
  18849. //! moment.js locale configuration
  18850. //! locale : Arabic (Morocco) [ar-ma]
  18851. //! author : ElFadili Yassine : https://github.com/ElFadiliY
  18852. //! author : Abdel Said : https://github.com/abdelsaid
  18853. ;(function (global, factory) {
  18854. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18855. undefined;
  18856. })(this, function (moment) {'use strict';
  18857. //! moment.js locale configuration
  18858. var arMa = moment.defineLocale('ar-ma', {
  18859. months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(
  18860. '_'),
  18861. monthsShort:
  18862. 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(
  18863. '_'),
  18864. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  18865. weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),
  18866. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  18867. weekdaysParseExact: true,
  18868. longDateFormat: {
  18869. LT: 'HH:mm',
  18870. LTS: 'HH:mm:ss',
  18871. L: 'DD/MM/YYYY',
  18872. LL: 'D MMMM YYYY',
  18873. LLL: 'D MMMM YYYY HH:mm',
  18874. LLLL: 'dddd D MMMM YYYY HH:mm' },
  18875. calendar: {
  18876. sameDay: '[اليوم على الساعة] LT',
  18877. nextDay: '[غدا على الساعة] LT',
  18878. nextWeek: 'dddd [على الساعة] LT',
  18879. lastDay: '[أمس على الساعة] LT',
  18880. lastWeek: 'dddd [على الساعة] LT',
  18881. sameElse: 'L' },
  18882. relativeTime: {
  18883. future: 'في %s',
  18884. past: 'منذ %s',
  18885. s: 'ثوان',
  18886. ss: '%d ثانية',
  18887. m: 'دقيقة',
  18888. mm: '%d دقائق',
  18889. h: 'ساعة',
  18890. hh: '%d ساعات',
  18891. d: 'يوم',
  18892. dd: '%d أيام',
  18893. M: 'شهر',
  18894. MM: '%d أشهر',
  18895. y: 'سنة',
  18896. yy: '%d سنوات' },
  18897. week: {
  18898. dow: 1, // Monday is the first day of the week.
  18899. doy: 4 // The week that contains Jan 4th is the first week of the year.
  18900. } });
  18901. return arMa;
  18902. });
  18903. /***/ }),
  18904. /* 51 */
  18905. /*!********************************************************************!*\
  18906. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar-sa.js ***!
  18907. \********************************************************************/
  18908. /*! no static exports found */
  18909. /***/ (function(module, exports, __webpack_require__) {
  18910. //! moment.js locale configuration
  18911. //! locale : Arabic (Saudi Arabia) [ar-sa]
  18912. //! author : Suhail Alkowaileet : https://github.com/xsoh
  18913. ;(function (global, factory) {
  18914. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  18915. undefined;
  18916. })(this, function (moment) {'use strict';
  18917. //! moment.js locale configuration
  18918. var symbolMap = {
  18919. 1: '١',
  18920. 2: '٢',
  18921. 3: '٣',
  18922. 4: '٤',
  18923. 5: '٥',
  18924. 6: '٦',
  18925. 7: '٧',
  18926. 8: '٨',
  18927. 9: '٩',
  18928. 0: '٠' },
  18929. numberMap = {
  18930. '١': '1',
  18931. '٢': '2',
  18932. '٣': '3',
  18933. '٤': '4',
  18934. '٥': '5',
  18935. '٦': '6',
  18936. '٧': '7',
  18937. '٨': '8',
  18938. '٩': '9',
  18939. '٠': '0' };
  18940. var arSa = moment.defineLocale('ar-sa', {
  18941. months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  18942. '_'),
  18943. monthsShort:
  18944. 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  18945. '_'),
  18946. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  18947. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  18948. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  18949. weekdaysParseExact: true,
  18950. longDateFormat: {
  18951. LT: 'HH:mm',
  18952. LTS: 'HH:mm:ss',
  18953. L: 'DD/MM/YYYY',
  18954. LL: 'D MMMM YYYY',
  18955. LLL: 'D MMMM YYYY HH:mm',
  18956. LLLL: 'dddd D MMMM YYYY HH:mm' },
  18957. meridiemParse: /ص|م/,
  18958. isPM: function isPM(input) {
  18959. return 'م' === input;
  18960. },
  18961. meridiem: function meridiem(hour, minute, isLower) {
  18962. if (hour < 12) {
  18963. return 'ص';
  18964. } else {
  18965. return 'م';
  18966. }
  18967. },
  18968. calendar: {
  18969. sameDay: '[اليوم على الساعة] LT',
  18970. nextDay: '[غدا على الساعة] LT',
  18971. nextWeek: 'dddd [على الساعة] LT',
  18972. lastDay: '[أمس على الساعة] LT',
  18973. lastWeek: 'dddd [على الساعة] LT',
  18974. sameElse: 'L' },
  18975. relativeTime: {
  18976. future: 'في %s',
  18977. past: 'منذ %s',
  18978. s: 'ثوان',
  18979. ss: '%d ثانية',
  18980. m: 'دقيقة',
  18981. mm: '%d دقائق',
  18982. h: 'ساعة',
  18983. hh: '%d ساعات',
  18984. d: 'يوم',
  18985. dd: '%d أيام',
  18986. M: 'شهر',
  18987. MM: '%d أشهر',
  18988. y: 'سنة',
  18989. yy: '%d سنوات' },
  18990. preparse: function preparse(string) {
  18991. return string.
  18992. replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
  18993. return numberMap[match];
  18994. }).
  18995. replace(/،/g, ',');
  18996. },
  18997. postformat: function postformat(string) {
  18998. return string.
  18999. replace(/\d/g, function (match) {
  19000. return symbolMap[match];
  19001. }).
  19002. replace(/,/g, '،');
  19003. },
  19004. week: {
  19005. dow: 0, // Sunday is the first day of the week.
  19006. doy: 6 // The week that contains Jan 6th is the first week of the year.
  19007. } });
  19008. return arSa;
  19009. });
  19010. /***/ }),
  19011. /* 52 */
  19012. /*!********************************************************************!*\
  19013. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ar-tn.js ***!
  19014. \********************************************************************/
  19015. /*! no static exports found */
  19016. /***/ (function(module, exports, __webpack_require__) {
  19017. //! moment.js locale configuration
  19018. //! locale : Arabic (Tunisia) [ar-tn]
  19019. //! author : Nader Toukabri : https://github.com/naderio
  19020. ;(function (global, factory) {
  19021. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19022. undefined;
  19023. })(this, function (moment) {'use strict';
  19024. //! moment.js locale configuration
  19025. var arTn = moment.defineLocale('ar-tn', {
  19026. months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  19027. '_'),
  19028. monthsShort:
  19029. 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  19030. '_'),
  19031. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  19032. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  19033. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  19034. weekdaysParseExact: true,
  19035. longDateFormat: {
  19036. LT: 'HH:mm',
  19037. LTS: 'HH:mm:ss',
  19038. L: 'DD/MM/YYYY',
  19039. LL: 'D MMMM YYYY',
  19040. LLL: 'D MMMM YYYY HH:mm',
  19041. LLLL: 'dddd D MMMM YYYY HH:mm' },
  19042. calendar: {
  19043. sameDay: '[اليوم على الساعة] LT',
  19044. nextDay: '[غدا على الساعة] LT',
  19045. nextWeek: 'dddd [على الساعة] LT',
  19046. lastDay: '[أمس على الساعة] LT',
  19047. lastWeek: 'dddd [على الساعة] LT',
  19048. sameElse: 'L' },
  19049. relativeTime: {
  19050. future: 'في %s',
  19051. past: 'منذ %s',
  19052. s: 'ثوان',
  19053. ss: '%d ثانية',
  19054. m: 'دقيقة',
  19055. mm: '%d دقائق',
  19056. h: 'ساعة',
  19057. hh: '%d ساعات',
  19058. d: 'يوم',
  19059. dd: '%d أيام',
  19060. M: 'شهر',
  19061. MM: '%d أشهر',
  19062. y: 'سنة',
  19063. yy: '%d سنوات' },
  19064. week: {
  19065. dow: 1, // Monday is the first day of the week.
  19066. doy: 4 // The week that contains Jan 4th is the first week of the year.
  19067. } });
  19068. return arTn;
  19069. });
  19070. /***/ }),
  19071. /* 53 */
  19072. /*!*****************************************************************!*\
  19073. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/az.js ***!
  19074. \*****************************************************************/
  19075. /*! no static exports found */
  19076. /***/ (function(module, exports, __webpack_require__) {
  19077. //! moment.js locale configuration
  19078. //! locale : Azerbaijani [az]
  19079. //! author : topchiyev : https://github.com/topchiyev
  19080. ;(function (global, factory) {
  19081. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19082. undefined;
  19083. })(this, function (moment) {'use strict';
  19084. //! moment.js locale configuration
  19085. var suffixes = {
  19086. 1: '-inci',
  19087. 5: '-inci',
  19088. 8: '-inci',
  19089. 70: '-inci',
  19090. 80: '-inci',
  19091. 2: '-nci',
  19092. 7: '-nci',
  19093. 20: '-nci',
  19094. 50: '-nci',
  19095. 3: '-üncü',
  19096. 4: '-üncü',
  19097. 100: '-üncü',
  19098. 6: '-ncı',
  19099. 9: '-uncu',
  19100. 10: '-uncu',
  19101. 30: '-uncu',
  19102. 60: '-ıncı',
  19103. 90: '-ıncı' };
  19104. var az = moment.defineLocale('az', {
  19105. months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split(
  19106. '_'),
  19107. monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),
  19108. weekdays:
  19109. 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split(
  19110. '_'),
  19111. weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),
  19112. weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),
  19113. weekdaysParseExact: true,
  19114. longDateFormat: {
  19115. LT: 'HH:mm',
  19116. LTS: 'HH:mm:ss',
  19117. L: 'DD.MM.YYYY',
  19118. LL: 'D MMMM YYYY',
  19119. LLL: 'D MMMM YYYY HH:mm',
  19120. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  19121. calendar: {
  19122. sameDay: '[bugün saat] LT',
  19123. nextDay: '[sabah saat] LT',
  19124. nextWeek: '[gələn həftə] dddd [saat] LT',
  19125. lastDay: '[dünən] LT',
  19126. lastWeek: '[keçən həftə] dddd [saat] LT',
  19127. sameElse: 'L' },
  19128. relativeTime: {
  19129. future: '%s sonra',
  19130. past: '%s əvvəl',
  19131. s: 'bir neçə saniyə',
  19132. ss: '%d saniyə',
  19133. m: 'bir dəqiqə',
  19134. mm: '%d dəqiqə',
  19135. h: 'bir saat',
  19136. hh: '%d saat',
  19137. d: 'bir gün',
  19138. dd: '%d gün',
  19139. M: 'bir ay',
  19140. MM: '%d ay',
  19141. y: 'bir il',
  19142. yy: '%d il' },
  19143. meridiemParse: /gecə|səhər|gündüz|axşam/,
  19144. isPM: function isPM(input) {
  19145. return /^(gündüz|axşam)$/.test(input);
  19146. },
  19147. meridiem: function meridiem(hour, minute, isLower) {
  19148. if (hour < 4) {
  19149. return 'gecə';
  19150. } else if (hour < 12) {
  19151. return 'səhər';
  19152. } else if (hour < 17) {
  19153. return 'gündüz';
  19154. } else {
  19155. return 'axşam';
  19156. }
  19157. },
  19158. dayOfMonthOrdinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,
  19159. ordinal: function ordinal(number) {
  19160. if (number === 0) {
  19161. // special case for zero
  19162. return number + '-ıncı';
  19163. }
  19164. var a = number % 10,
  19165. b = number % 100 - a,
  19166. c = number >= 100 ? 100 : null;
  19167. return number + (suffixes[a] || suffixes[b] || suffixes[c]);
  19168. },
  19169. week: {
  19170. dow: 1, // Monday is the first day of the week.
  19171. doy: 7 // The week that contains Jan 7th is the first week of the year.
  19172. } });
  19173. return az;
  19174. });
  19175. /***/ }),
  19176. /* 54 */
  19177. /*!*****************************************************************!*\
  19178. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/be.js ***!
  19179. \*****************************************************************/
  19180. /*! no static exports found */
  19181. /***/ (function(module, exports, __webpack_require__) {
  19182. //! moment.js locale configuration
  19183. //! locale : Belarusian [be]
  19184. //! author : Dmitry Demidov : https://github.com/demidov91
  19185. //! author: Praleska: http://praleska.pro/
  19186. //! Author : Menelion Elensúle : https://github.com/Oire
  19187. ;(function (global, factory) {
  19188. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19189. undefined;
  19190. })(this, function (moment) {'use strict';
  19191. //! moment.js locale configuration
  19192. function plural(word, num) {
  19193. var forms = word.split('_');
  19194. return num % 10 === 1 && num % 100 !== 11 ?
  19195. forms[0] :
  19196. num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ?
  19197. forms[1] :
  19198. forms[2];
  19199. }
  19200. function relativeTimeWithPlural(number, withoutSuffix, key) {
  19201. var format = {
  19202. ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',
  19203. mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',
  19204. hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',
  19205. dd: 'дзень_дні_дзён',
  19206. MM: 'месяц_месяцы_месяцаў',
  19207. yy: 'год_гады_гадоў' };
  19208. if (key === 'm') {
  19209. return withoutSuffix ? 'хвіліна' : 'хвіліну';
  19210. } else if (key === 'h') {
  19211. return withoutSuffix ? 'гадзіна' : 'гадзіну';
  19212. } else {
  19213. return number + ' ' + plural(format[key], +number);
  19214. }
  19215. }
  19216. var be = moment.defineLocale('be', {
  19217. months: {
  19218. format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split(
  19219. '_'),
  19220. standalone:
  19221. 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split(
  19222. '_') },
  19223. monthsShort:
  19224. 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),
  19225. weekdays: {
  19226. format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split(
  19227. '_'),
  19228. standalone:
  19229. 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split(
  19230. '_'),
  19231. isFormat: /\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/ },
  19232. weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
  19233. weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
  19234. longDateFormat: {
  19235. LT: 'HH:mm',
  19236. LTS: 'HH:mm:ss',
  19237. L: 'DD.MM.YYYY',
  19238. LL: 'D MMMM YYYY г.',
  19239. LLL: 'D MMMM YYYY г., HH:mm',
  19240. LLLL: 'dddd, D MMMM YYYY г., HH:mm' },
  19241. calendar: {
  19242. sameDay: '[Сёння ў] LT',
  19243. nextDay: '[Заўтра ў] LT',
  19244. lastDay: '[Учора ў] LT',
  19245. nextWeek: function nextWeek() {
  19246. return '[У] dddd [ў] LT';
  19247. },
  19248. lastWeek: function lastWeek() {
  19249. switch (this.day()) {
  19250. case 0:
  19251. case 3:
  19252. case 5:
  19253. case 6:
  19254. return '[У мінулую] dddd [ў] LT';
  19255. case 1:
  19256. case 2:
  19257. case 4:
  19258. return '[У мінулы] dddd [ў] LT';}
  19259. },
  19260. sameElse: 'L' },
  19261. relativeTime: {
  19262. future: 'праз %s',
  19263. past: '%s таму',
  19264. s: 'некалькі секунд',
  19265. m: relativeTimeWithPlural,
  19266. mm: relativeTimeWithPlural,
  19267. h: relativeTimeWithPlural,
  19268. hh: relativeTimeWithPlural,
  19269. d: 'дзень',
  19270. dd: relativeTimeWithPlural,
  19271. M: 'месяц',
  19272. MM: relativeTimeWithPlural,
  19273. y: 'год',
  19274. yy: relativeTimeWithPlural },
  19275. meridiemParse: /ночы|раніцы|дня|вечара/,
  19276. isPM: function isPM(input) {
  19277. return /^(дня|вечара)$/.test(input);
  19278. },
  19279. meridiem: function meridiem(hour, minute, isLower) {
  19280. if (hour < 4) {
  19281. return 'ночы';
  19282. } else if (hour < 12) {
  19283. return 'раніцы';
  19284. } else if (hour < 17) {
  19285. return 'дня';
  19286. } else {
  19287. return 'вечара';
  19288. }
  19289. },
  19290. dayOfMonthOrdinalParse: /\d{1,2}-(і|ы|га)/,
  19291. ordinal: function ordinal(number, period) {
  19292. switch (period) {
  19293. case 'M':
  19294. case 'd':
  19295. case 'DDD':
  19296. case 'w':
  19297. case 'W':
  19298. return (number % 10 === 2 || number % 10 === 3) &&
  19299. number % 100 !== 12 &&
  19300. number % 100 !== 13 ?
  19301. number + '-і' :
  19302. number + '-ы';
  19303. case 'D':
  19304. return number + '-га';
  19305. default:
  19306. return number;}
  19307. },
  19308. week: {
  19309. dow: 1, // Monday is the first day of the week.
  19310. doy: 7 // The week that contains Jan 7th is the first week of the year.
  19311. } });
  19312. return be;
  19313. });
  19314. /***/ }),
  19315. /* 55 */
  19316. /*!*****************************************************************!*\
  19317. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/bg.js ***!
  19318. \*****************************************************************/
  19319. /*! no static exports found */
  19320. /***/ (function(module, exports, __webpack_require__) {
  19321. //! moment.js locale configuration
  19322. //! locale : Bulgarian [bg]
  19323. //! author : Krasen Borisov : https://github.com/kraz
  19324. ;(function (global, factory) {
  19325. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19326. undefined;
  19327. })(this, function (moment) {'use strict';
  19328. //! moment.js locale configuration
  19329. var bg = moment.defineLocale('bg', {
  19330. months: 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split(
  19331. '_'),
  19332. monthsShort: 'яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),
  19333. weekdays: 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split(
  19334. '_'),
  19335. weekdaysShort: 'нед_пон_вто_сря_чет_пет_съб'.split('_'),
  19336. weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
  19337. longDateFormat: {
  19338. LT: 'H:mm',
  19339. LTS: 'H:mm:ss',
  19340. L: 'D.MM.YYYY',
  19341. LL: 'D MMMM YYYY',
  19342. LLL: 'D MMMM YYYY H:mm',
  19343. LLLL: 'dddd, D MMMM YYYY H:mm' },
  19344. calendar: {
  19345. sameDay: '[Днес в] LT',
  19346. nextDay: '[Утре в] LT',
  19347. nextWeek: 'dddd [в] LT',
  19348. lastDay: '[Вчера в] LT',
  19349. lastWeek: function lastWeek() {
  19350. switch (this.day()) {
  19351. case 0:
  19352. case 3:
  19353. case 6:
  19354. return '[Миналата] dddd [в] LT';
  19355. case 1:
  19356. case 2:
  19357. case 4:
  19358. case 5:
  19359. return '[Миналия] dddd [в] LT';}
  19360. },
  19361. sameElse: 'L' },
  19362. relativeTime: {
  19363. future: 'след %s',
  19364. past: 'преди %s',
  19365. s: 'няколко секунди',
  19366. ss: '%d секунди',
  19367. m: 'минута',
  19368. mm: '%d минути',
  19369. h: 'час',
  19370. hh: '%d часа',
  19371. d: 'ден',
  19372. dd: '%d дена',
  19373. w: 'седмица',
  19374. ww: '%d седмици',
  19375. M: 'месец',
  19376. MM: '%d месеца',
  19377. y: 'година',
  19378. yy: '%d години' },
  19379. dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
  19380. ordinal: function ordinal(number) {
  19381. var lastDigit = number % 10,
  19382. last2Digits = number % 100;
  19383. if (number === 0) {
  19384. return number + '-ев';
  19385. } else if (last2Digits === 0) {
  19386. return number + '-ен';
  19387. } else if (last2Digits > 10 && last2Digits < 20) {
  19388. return number + '-ти';
  19389. } else if (lastDigit === 1) {
  19390. return number + '-ви';
  19391. } else if (lastDigit === 2) {
  19392. return number + '-ри';
  19393. } else if (lastDigit === 7 || lastDigit === 8) {
  19394. return number + '-ми';
  19395. } else {
  19396. return number + '-ти';
  19397. }
  19398. },
  19399. week: {
  19400. dow: 1, // Monday is the first day of the week.
  19401. doy: 7 // The week that contains Jan 7th is the first week of the year.
  19402. } });
  19403. return bg;
  19404. });
  19405. /***/ }),
  19406. /* 56 */
  19407. /*!*****************************************************************!*\
  19408. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/bm.js ***!
  19409. \*****************************************************************/
  19410. /*! no static exports found */
  19411. /***/ (function(module, exports, __webpack_require__) {
  19412. //! moment.js locale configuration
  19413. //! locale : Bambara [bm]
  19414. //! author : Estelle Comment : https://github.com/estellecomment
  19415. ;(function (global, factory) {
  19416. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19417. undefined;
  19418. })(this, function (moment) {'use strict';
  19419. //! moment.js locale configuration
  19420. var bm = moment.defineLocale('bm', {
  19421. months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split(
  19422. '_'),
  19423. monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),
  19424. weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),
  19425. weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),
  19426. weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),
  19427. longDateFormat: {
  19428. LT: 'HH:mm',
  19429. LTS: 'HH:mm:ss',
  19430. L: 'DD/MM/YYYY',
  19431. LL: 'MMMM [tile] D [san] YYYY',
  19432. LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',
  19433. LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm' },
  19434. calendar: {
  19435. sameDay: '[Bi lɛrɛ] LT',
  19436. nextDay: '[Sini lɛrɛ] LT',
  19437. nextWeek: 'dddd [don lɛrɛ] LT',
  19438. lastDay: '[Kunu lɛrɛ] LT',
  19439. lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT',
  19440. sameElse: 'L' },
  19441. relativeTime: {
  19442. future: '%s kɔnɔ',
  19443. past: 'a bɛ %s bɔ',
  19444. s: 'sanga dama dama',
  19445. ss: 'sekondi %d',
  19446. m: 'miniti kelen',
  19447. mm: 'miniti %d',
  19448. h: 'lɛrɛ kelen',
  19449. hh: 'lɛrɛ %d',
  19450. d: 'tile kelen',
  19451. dd: 'tile %d',
  19452. M: 'kalo kelen',
  19453. MM: 'kalo %d',
  19454. y: 'san kelen',
  19455. yy: 'san %d' },
  19456. week: {
  19457. dow: 1, // Monday is the first day of the week.
  19458. doy: 4 // The week that contains Jan 4th is the first week of the year.
  19459. } });
  19460. return bm;
  19461. });
  19462. /***/ }),
  19463. /* 57 */
  19464. /*!*****************************************************************!*\
  19465. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/bn.js ***!
  19466. \*****************************************************************/
  19467. /*! no static exports found */
  19468. /***/ (function(module, exports, __webpack_require__) {
  19469. //! moment.js locale configuration
  19470. //! locale : Bengali [bn]
  19471. //! author : Kaushik Gandhi : https://github.com/kaushikgandhi
  19472. ;(function (global, factory) {
  19473. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19474. undefined;
  19475. })(this, function (moment) {'use strict';
  19476. //! moment.js locale configuration
  19477. var symbolMap = {
  19478. 1: '১',
  19479. 2: '২',
  19480. 3: '৩',
  19481. 4: '৪',
  19482. 5: '৫',
  19483. 6: '৬',
  19484. 7: '৭',
  19485. 8: '৮',
  19486. 9: '৯',
  19487. 0: '০' },
  19488. numberMap = {
  19489. '১': '1',
  19490. '২': '2',
  19491. '৩': '3',
  19492. '৪': '4',
  19493. '৫': '5',
  19494. '৬': '6',
  19495. '৭': '7',
  19496. '৮': '8',
  19497. '৯': '9',
  19498. '০': '0' };
  19499. var bn = moment.defineLocale('bn', {
  19500. months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(
  19501. '_'),
  19502. monthsShort:
  19503. 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(
  19504. '_'),
  19505. weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(
  19506. '_'),
  19507. weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),
  19508. weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),
  19509. longDateFormat: {
  19510. LT: 'A h:mm সময়',
  19511. LTS: 'A h:mm:ss সময়',
  19512. L: 'DD/MM/YYYY',
  19513. LL: 'D MMMM YYYY',
  19514. LLL: 'D MMMM YYYY, A h:mm সময়',
  19515. LLLL: 'dddd, D MMMM YYYY, A h:mm সময়' },
  19516. calendar: {
  19517. sameDay: '[আজ] LT',
  19518. nextDay: '[আগামীকাল] LT',
  19519. nextWeek: 'dddd, LT',
  19520. lastDay: '[গতকাল] LT',
  19521. lastWeek: '[গত] dddd, LT',
  19522. sameElse: 'L' },
  19523. relativeTime: {
  19524. future: '%s পরে',
  19525. past: '%s আগে',
  19526. s: 'কয়েক সেকেন্ড',
  19527. ss: '%d সেকেন্ড',
  19528. m: 'এক মিনিট',
  19529. mm: '%d মিনিট',
  19530. h: 'এক ঘন্টা',
  19531. hh: '%d ঘন্টা',
  19532. d: 'এক দিন',
  19533. dd: '%d দিন',
  19534. M: 'এক মাস',
  19535. MM: '%d মাস',
  19536. y: 'এক বছর',
  19537. yy: '%d বছর' },
  19538. preparse: function preparse(string) {
  19539. return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {
  19540. return numberMap[match];
  19541. });
  19542. },
  19543. postformat: function postformat(string) {
  19544. return string.replace(/\d/g, function (match) {
  19545. return symbolMap[match];
  19546. });
  19547. },
  19548. meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,
  19549. meridiemHour: function meridiemHour(hour, meridiem) {
  19550. if (hour === 12) {
  19551. hour = 0;
  19552. }
  19553. if (
  19554. meridiem === 'রাত' && hour >= 4 ||
  19555. meridiem === 'দুপুর' && hour < 5 ||
  19556. meridiem === 'বিকাল')
  19557. {
  19558. return hour + 12;
  19559. } else {
  19560. return hour;
  19561. }
  19562. },
  19563. meridiem: function meridiem(hour, minute, isLower) {
  19564. if (hour < 4) {
  19565. return 'রাত';
  19566. } else if (hour < 10) {
  19567. return 'সকাল';
  19568. } else if (hour < 17) {
  19569. return 'দুপুর';
  19570. } else if (hour < 20) {
  19571. return 'বিকাল';
  19572. } else {
  19573. return 'রাত';
  19574. }
  19575. },
  19576. week: {
  19577. dow: 0, // Sunday is the first day of the week.
  19578. doy: 6 // The week that contains Jan 6th is the first week of the year.
  19579. } });
  19580. return bn;
  19581. });
  19582. /***/ }),
  19583. /* 58 */
  19584. /*!********************************************************************!*\
  19585. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/bn-bd.js ***!
  19586. \********************************************************************/
  19587. /*! no static exports found */
  19588. /***/ (function(module, exports, __webpack_require__) {
  19589. //! moment.js locale configuration
  19590. //! locale : Bengali (Bangladesh) [bn-bd]
  19591. //! author : Asraf Hossain Patoary : https://github.com/ashwoolford
  19592. ;(function (global, factory) {
  19593. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19594. undefined;
  19595. })(this, function (moment) {'use strict';
  19596. //! moment.js locale configuration
  19597. var symbolMap = {
  19598. 1: '১',
  19599. 2: '২',
  19600. 3: '৩',
  19601. 4: '৪',
  19602. 5: '৫',
  19603. 6: '৬',
  19604. 7: '৭',
  19605. 8: '৮',
  19606. 9: '৯',
  19607. 0: '০' },
  19608. numberMap = {
  19609. '১': '1',
  19610. '২': '2',
  19611. '৩': '3',
  19612. '৪': '4',
  19613. '৫': '5',
  19614. '৬': '6',
  19615. '৭': '7',
  19616. '৮': '8',
  19617. '৯': '9',
  19618. '০': '0' };
  19619. var bnBd = moment.defineLocale('bn-bd', {
  19620. months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(
  19621. '_'),
  19622. monthsShort:
  19623. 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(
  19624. '_'),
  19625. weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(
  19626. '_'),
  19627. weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),
  19628. weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),
  19629. longDateFormat: {
  19630. LT: 'A h:mm সময়',
  19631. LTS: 'A h:mm:ss সময়',
  19632. L: 'DD/MM/YYYY',
  19633. LL: 'D MMMM YYYY',
  19634. LLL: 'D MMMM YYYY, A h:mm সময়',
  19635. LLLL: 'dddd, D MMMM YYYY, A h:mm সময়' },
  19636. calendar: {
  19637. sameDay: '[আজ] LT',
  19638. nextDay: '[আগামীকাল] LT',
  19639. nextWeek: 'dddd, LT',
  19640. lastDay: '[গতকাল] LT',
  19641. lastWeek: '[গত] dddd, LT',
  19642. sameElse: 'L' },
  19643. relativeTime: {
  19644. future: '%s পরে',
  19645. past: '%s আগে',
  19646. s: 'কয়েক সেকেন্ড',
  19647. ss: '%d সেকেন্ড',
  19648. m: 'এক মিনিট',
  19649. mm: '%d মিনিট',
  19650. h: 'এক ঘন্টা',
  19651. hh: '%d ঘন্টা',
  19652. d: 'এক দিন',
  19653. dd: '%d দিন',
  19654. M: 'এক মাস',
  19655. MM: '%d মাস',
  19656. y: 'এক বছর',
  19657. yy: '%d বছর' },
  19658. preparse: function preparse(string) {
  19659. return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {
  19660. return numberMap[match];
  19661. });
  19662. },
  19663. postformat: function postformat(string) {
  19664. return string.replace(/\d/g, function (match) {
  19665. return symbolMap[match];
  19666. });
  19667. },
  19668. meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,
  19669. meridiemHour: function meridiemHour(hour, meridiem) {
  19670. if (hour === 12) {
  19671. hour = 0;
  19672. }
  19673. if (meridiem === 'রাত') {
  19674. return hour < 4 ? hour : hour + 12;
  19675. } else if (meridiem === 'ভোর') {
  19676. return hour;
  19677. } else if (meridiem === 'সকাল') {
  19678. return hour;
  19679. } else if (meridiem === 'দুপুর') {
  19680. return hour >= 3 ? hour : hour + 12;
  19681. } else if (meridiem === 'বিকাল') {
  19682. return hour + 12;
  19683. } else if (meridiem === 'সন্ধ্যা') {
  19684. return hour + 12;
  19685. }
  19686. },
  19687. meridiem: function meridiem(hour, minute, isLower) {
  19688. if (hour < 4) {
  19689. return 'রাত';
  19690. } else if (hour < 6) {
  19691. return 'ভোর';
  19692. } else if (hour < 12) {
  19693. return 'সকাল';
  19694. } else if (hour < 15) {
  19695. return 'দুপুর';
  19696. } else if (hour < 18) {
  19697. return 'বিকাল';
  19698. } else if (hour < 20) {
  19699. return 'সন্ধ্যা';
  19700. } else {
  19701. return 'রাত';
  19702. }
  19703. },
  19704. week: {
  19705. dow: 0, // Sunday is the first day of the week.
  19706. doy: 6 // The week that contains Jan 6th is the first week of the year.
  19707. } });
  19708. return bnBd;
  19709. });
  19710. /***/ }),
  19711. /* 59 */
  19712. /*!*****************************************************************!*\
  19713. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/bo.js ***!
  19714. \*****************************************************************/
  19715. /*! no static exports found */
  19716. /***/ (function(module, exports, __webpack_require__) {
  19717. //! moment.js locale configuration
  19718. //! locale : Tibetan [bo]
  19719. //! author : Thupten N. Chakrishar : https://github.com/vajradog
  19720. ;(function (global, factory) {
  19721. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19722. undefined;
  19723. })(this, function (moment) {'use strict';
  19724. //! moment.js locale configuration
  19725. var symbolMap = {
  19726. 1: '༡',
  19727. 2: '༢',
  19728. 3: '༣',
  19729. 4: '༤',
  19730. 5: '༥',
  19731. 6: '༦',
  19732. 7: '༧',
  19733. 8: '༨',
  19734. 9: '༩',
  19735. 0: '༠' },
  19736. numberMap = {
  19737. '༡': '1',
  19738. '༢': '2',
  19739. '༣': '3',
  19740. '༤': '4',
  19741. '༥': '5',
  19742. '༦': '6',
  19743. '༧': '7',
  19744. '༨': '8',
  19745. '༩': '9',
  19746. '༠': '0' };
  19747. var bo = moment.defineLocale('bo', {
  19748. months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split(
  19749. '_'),
  19750. monthsShort:
  19751. 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split(
  19752. '_'),
  19753. monthsShortRegex: /^(ཟླ་\d{1,2})/,
  19754. monthsParseExact: true,
  19755. weekdays:
  19756. 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split(
  19757. '_'),
  19758. weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split(
  19759. '_'),
  19760. weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'),
  19761. longDateFormat: {
  19762. LT: 'A h:mm',
  19763. LTS: 'A h:mm:ss',
  19764. L: 'DD/MM/YYYY',
  19765. LL: 'D MMMM YYYY',
  19766. LLL: 'D MMMM YYYY, A h:mm',
  19767. LLLL: 'dddd, D MMMM YYYY, A h:mm' },
  19768. calendar: {
  19769. sameDay: '[དི་རིང] LT',
  19770. nextDay: '[སང་ཉིན] LT',
  19771. nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT',
  19772. lastDay: '[ཁ་སང] LT',
  19773. lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',
  19774. sameElse: 'L' },
  19775. relativeTime: {
  19776. future: '%s ལ་',
  19777. past: '%s སྔན་ལ',
  19778. s: 'ལམ་སང',
  19779. ss: '%d སྐར་ཆ།',
  19780. m: 'སྐར་མ་གཅིག',
  19781. mm: '%d སྐར་མ',
  19782. h: 'ཆུ་ཚོད་གཅིག',
  19783. hh: '%d ཆུ་ཚོད',
  19784. d: 'ཉིན་གཅིག',
  19785. dd: '%d ཉིན་',
  19786. M: 'ཟླ་བ་གཅིག',
  19787. MM: '%d ཟླ་བ',
  19788. y: 'ལོ་གཅིག',
  19789. yy: '%d ལོ' },
  19790. preparse: function preparse(string) {
  19791. return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {
  19792. return numberMap[match];
  19793. });
  19794. },
  19795. postformat: function postformat(string) {
  19796. return string.replace(/\d/g, function (match) {
  19797. return symbolMap[match];
  19798. });
  19799. },
  19800. meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
  19801. meridiemHour: function meridiemHour(hour, meridiem) {
  19802. if (hour === 12) {
  19803. hour = 0;
  19804. }
  19805. if (
  19806. meridiem === 'མཚན་མོ' && hour >= 4 ||
  19807. meridiem === 'ཉིན་གུང' && hour < 5 ||
  19808. meridiem === 'དགོང་དག')
  19809. {
  19810. return hour + 12;
  19811. } else {
  19812. return hour;
  19813. }
  19814. },
  19815. meridiem: function meridiem(hour, minute, isLower) {
  19816. if (hour < 4) {
  19817. return 'མཚན་མོ';
  19818. } else if (hour < 10) {
  19819. return 'ཞོགས་ཀས';
  19820. } else if (hour < 17) {
  19821. return 'ཉིན་གུང';
  19822. } else if (hour < 20) {
  19823. return 'དགོང་དག';
  19824. } else {
  19825. return 'མཚན་མོ';
  19826. }
  19827. },
  19828. week: {
  19829. dow: 0, // Sunday is the first day of the week.
  19830. doy: 6 // The week that contains Jan 6th is the first week of the year.
  19831. } });
  19832. return bo;
  19833. });
  19834. /***/ }),
  19835. /* 60 */
  19836. /*!*****************************************************************!*\
  19837. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/br.js ***!
  19838. \*****************************************************************/
  19839. /*! no static exports found */
  19840. /***/ (function(module, exports, __webpack_require__) {
  19841. //! moment.js locale configuration
  19842. //! locale : Breton [br]
  19843. //! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou
  19844. ;(function (global, factory) {
  19845. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  19846. undefined;
  19847. })(this, function (moment) {'use strict';
  19848. //! moment.js locale configuration
  19849. function relativeTimeWithMutation(number, withoutSuffix, key) {
  19850. var format = {
  19851. mm: 'munutenn',
  19852. MM: 'miz',
  19853. dd: 'devezh' };
  19854. return number + ' ' + mutation(format[key], number);
  19855. }
  19856. function specialMutationForYears(number) {
  19857. switch (lastNumber(number)) {
  19858. case 1:
  19859. case 3:
  19860. case 4:
  19861. case 5:
  19862. case 9:
  19863. return number + ' bloaz';
  19864. default:
  19865. return number + ' vloaz';}
  19866. }
  19867. function lastNumber(number) {
  19868. if (number > 9) {
  19869. return lastNumber(number % 10);
  19870. }
  19871. return number;
  19872. }
  19873. function mutation(text, number) {
  19874. if (number === 2) {
  19875. return softMutation(text);
  19876. }
  19877. return text;
  19878. }
  19879. function softMutation(text) {
  19880. var mutationTable = {
  19881. m: 'v',
  19882. b: 'v',
  19883. d: 'z' };
  19884. if (mutationTable[text.charAt(0)] === undefined) {
  19885. return text;
  19886. }
  19887. return mutationTable[text.charAt(0)] + text.substring(1);
  19888. }
  19889. var monthsParse = [
  19890. /^gen/i,
  19891. /^c[ʼ\']hwe/i,
  19892. /^meu/i,
  19893. /^ebr/i,
  19894. /^mae/i,
  19895. /^(mez|eve)/i,
  19896. /^gou/i,
  19897. /^eos/i,
  19898. /^gwe/i,
  19899. /^her/i,
  19900. /^du/i,
  19901. /^ker/i],
  19902. monthsRegex =
  19903. /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,
  19904. monthsStrictRegex =
  19905. /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,
  19906. monthsShortStrictRegex =
  19907. /^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,
  19908. fullWeekdaysParse = [
  19909. /^sul/i,
  19910. /^lun/i,
  19911. /^meurzh/i,
  19912. /^merc[ʼ\']her/i,
  19913. /^yaou/i,
  19914. /^gwener/i,
  19915. /^sadorn/i],
  19916. shortWeekdaysParse = [
  19917. /^Sul/i,
  19918. /^Lun/i,
  19919. /^Meu/i,
  19920. /^Mer/i,
  19921. /^Yao/i,
  19922. /^Gwe/i,
  19923. /^Sad/i],
  19924. minWeekdaysParse = [
  19925. /^Su/i,
  19926. /^Lu/i,
  19927. /^Me([^r]|$)/i,
  19928. /^Mer/i,
  19929. /^Ya/i,
  19930. /^Gw/i,
  19931. /^Sa/i];
  19932. var br = moment.defineLocale('br', {
  19933. months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split(
  19934. '_'),
  19935. monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),
  19936. weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'),
  19937. weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),
  19938. weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),
  19939. weekdaysParse: minWeekdaysParse,
  19940. fullWeekdaysParse: fullWeekdaysParse,
  19941. shortWeekdaysParse: shortWeekdaysParse,
  19942. minWeekdaysParse: minWeekdaysParse,
  19943. monthsRegex: monthsRegex,
  19944. monthsShortRegex: monthsRegex,
  19945. monthsStrictRegex: monthsStrictRegex,
  19946. monthsShortStrictRegex: monthsShortStrictRegex,
  19947. monthsParse: monthsParse,
  19948. longMonthsParse: monthsParse,
  19949. shortMonthsParse: monthsParse,
  19950. longDateFormat: {
  19951. LT: 'HH:mm',
  19952. LTS: 'HH:mm:ss',
  19953. L: 'DD/MM/YYYY',
  19954. LL: 'D [a viz] MMMM YYYY',
  19955. LLL: 'D [a viz] MMMM YYYY HH:mm',
  19956. LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm' },
  19957. calendar: {
  19958. sameDay: '[Hiziv da] LT',
  19959. nextDay: '[Warcʼhoazh da] LT',
  19960. nextWeek: 'dddd [da] LT',
  19961. lastDay: '[Decʼh da] LT',
  19962. lastWeek: 'dddd [paset da] LT',
  19963. sameElse: 'L' },
  19964. relativeTime: {
  19965. future: 'a-benn %s',
  19966. past: '%s ʼzo',
  19967. s: 'un nebeud segondennoù',
  19968. ss: '%d eilenn',
  19969. m: 'ur vunutenn',
  19970. mm: relativeTimeWithMutation,
  19971. h: 'un eur',
  19972. hh: '%d eur',
  19973. d: 'un devezh',
  19974. dd: relativeTimeWithMutation,
  19975. M: 'ur miz',
  19976. MM: relativeTimeWithMutation,
  19977. y: 'ur bloaz',
  19978. yy: specialMutationForYears },
  19979. dayOfMonthOrdinalParse: /\d{1,2}(añ|vet)/,
  19980. ordinal: function ordinal(number) {
  19981. var output = number === 1 ? 'añ' : 'vet';
  19982. return number + output;
  19983. },
  19984. week: {
  19985. dow: 1, // Monday is the first day of the week.
  19986. doy: 4 // The week that contains Jan 4th is the first week of the year.
  19987. },
  19988. meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn
  19989. isPM: function isPM(token) {
  19990. return token === 'g.m.';
  19991. },
  19992. meridiem: function meridiem(hour, minute, isLower) {
  19993. return hour < 12 ? 'a.m.' : 'g.m.';
  19994. } });
  19995. return br;
  19996. });
  19997. /***/ }),
  19998. /* 61 */
  19999. /*!*****************************************************************!*\
  20000. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/bs.js ***!
  20001. \*****************************************************************/
  20002. /*! no static exports found */
  20003. /***/ (function(module, exports, __webpack_require__) {
  20004. //! moment.js locale configuration
  20005. //! locale : Bosnian [bs]
  20006. //! author : Nedim Cholich : https://github.com/frontyard
  20007. //! based on (hr) translation by Bojan Marković
  20008. ;(function (global, factory) {
  20009. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20010. undefined;
  20011. })(this, function (moment) {'use strict';
  20012. //! moment.js locale configuration
  20013. function translate(number, withoutSuffix, key) {
  20014. var result = number + ' ';
  20015. switch (key) {
  20016. case 'ss':
  20017. if (number === 1) {
  20018. result += 'sekunda';
  20019. } else if (number === 2 || number === 3 || number === 4) {
  20020. result += 'sekunde';
  20021. } else {
  20022. result += 'sekundi';
  20023. }
  20024. return result;
  20025. case 'm':
  20026. return withoutSuffix ? 'jedna minuta' : 'jedne minute';
  20027. case 'mm':
  20028. if (number === 1) {
  20029. result += 'minuta';
  20030. } else if (number === 2 || number === 3 || number === 4) {
  20031. result += 'minute';
  20032. } else {
  20033. result += 'minuta';
  20034. }
  20035. return result;
  20036. case 'h':
  20037. return withoutSuffix ? 'jedan sat' : 'jednog sata';
  20038. case 'hh':
  20039. if (number === 1) {
  20040. result += 'sat';
  20041. } else if (number === 2 || number === 3 || number === 4) {
  20042. result += 'sata';
  20043. } else {
  20044. result += 'sati';
  20045. }
  20046. return result;
  20047. case 'dd':
  20048. if (number === 1) {
  20049. result += 'dan';
  20050. } else {
  20051. result += 'dana';
  20052. }
  20053. return result;
  20054. case 'MM':
  20055. if (number === 1) {
  20056. result += 'mjesec';
  20057. } else if (number === 2 || number === 3 || number === 4) {
  20058. result += 'mjeseca';
  20059. } else {
  20060. result += 'mjeseci';
  20061. }
  20062. return result;
  20063. case 'yy':
  20064. if (number === 1) {
  20065. result += 'godina';
  20066. } else if (number === 2 || number === 3 || number === 4) {
  20067. result += 'godine';
  20068. } else {
  20069. result += 'godina';
  20070. }
  20071. return result;}
  20072. }
  20073. var bs = moment.defineLocale('bs', {
  20074. months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split(
  20075. '_'),
  20076. monthsShort:
  20077. 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split(
  20078. '_'),
  20079. monthsParseExact: true,
  20080. weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(
  20081. '_'),
  20082. weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
  20083. weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),
  20084. weekdaysParseExact: true,
  20085. longDateFormat: {
  20086. LT: 'H:mm',
  20087. LTS: 'H:mm:ss',
  20088. L: 'DD.MM.YYYY',
  20089. LL: 'D. MMMM YYYY',
  20090. LLL: 'D. MMMM YYYY H:mm',
  20091. LLLL: 'dddd, D. MMMM YYYY H:mm' },
  20092. calendar: {
  20093. sameDay: '[danas u] LT',
  20094. nextDay: '[sutra u] LT',
  20095. nextWeek: function nextWeek() {
  20096. switch (this.day()) {
  20097. case 0:
  20098. return '[u] [nedjelju] [u] LT';
  20099. case 3:
  20100. return '[u] [srijedu] [u] LT';
  20101. case 6:
  20102. return '[u] [subotu] [u] LT';
  20103. case 1:
  20104. case 2:
  20105. case 4:
  20106. case 5:
  20107. return '[u] dddd [u] LT';}
  20108. },
  20109. lastDay: '[jučer u] LT',
  20110. lastWeek: function lastWeek() {
  20111. switch (this.day()) {
  20112. case 0:
  20113. case 3:
  20114. return '[prošlu] dddd [u] LT';
  20115. case 6:
  20116. return '[prošle] [subote] [u] LT';
  20117. case 1:
  20118. case 2:
  20119. case 4:
  20120. case 5:
  20121. return '[prošli] dddd [u] LT';}
  20122. },
  20123. sameElse: 'L' },
  20124. relativeTime: {
  20125. future: 'za %s',
  20126. past: 'prije %s',
  20127. s: 'par sekundi',
  20128. ss: translate,
  20129. m: translate,
  20130. mm: translate,
  20131. h: translate,
  20132. hh: translate,
  20133. d: 'dan',
  20134. dd: translate,
  20135. M: 'mjesec',
  20136. MM: translate,
  20137. y: 'godinu',
  20138. yy: translate },
  20139. dayOfMonthOrdinalParse: /\d{1,2}\./,
  20140. ordinal: '%d.',
  20141. week: {
  20142. dow: 1, // Monday is the first day of the week.
  20143. doy: 7 // The week that contains Jan 7th is the first week of the year.
  20144. } });
  20145. return bs;
  20146. });
  20147. /***/ }),
  20148. /* 62 */
  20149. /*!*****************************************************************!*\
  20150. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ca.js ***!
  20151. \*****************************************************************/
  20152. /*! no static exports found */
  20153. /***/ (function(module, exports, __webpack_require__) {
  20154. //! moment.js locale configuration
  20155. //! locale : Catalan [ca]
  20156. //! author : Juan G. Hurtado : https://github.com/juanghurtado
  20157. ;(function (global, factory) {
  20158. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20159. undefined;
  20160. })(this, function (moment) {'use strict';
  20161. //! moment.js locale configuration
  20162. var ca = moment.defineLocale('ca', {
  20163. months: {
  20164. standalone:
  20165. 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split(
  20166. '_'),
  20167. format: "de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split(
  20168. '_'),
  20169. isFormat: /D[oD]?(\s)+MMMM/ },
  20170. monthsShort:
  20171. 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split(
  20172. '_'),
  20173. monthsParseExact: true,
  20174. weekdays:
  20175. 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split(
  20176. '_'),
  20177. weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),
  20178. weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'),
  20179. weekdaysParseExact: true,
  20180. longDateFormat: {
  20181. LT: 'H:mm',
  20182. LTS: 'H:mm:ss',
  20183. L: 'DD/MM/YYYY',
  20184. LL: 'D MMMM [de] YYYY',
  20185. ll: 'D MMM YYYY',
  20186. LLL: 'D MMMM [de] YYYY [a les] H:mm',
  20187. lll: 'D MMM YYYY, H:mm',
  20188. LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm',
  20189. llll: 'ddd D MMM YYYY, H:mm' },
  20190. calendar: {
  20191. sameDay: function sameDay() {
  20192. return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';
  20193. },
  20194. nextDay: function nextDay() {
  20195. return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';
  20196. },
  20197. nextWeek: function nextWeek() {
  20198. return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';
  20199. },
  20200. lastDay: function lastDay() {
  20201. return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';
  20202. },
  20203. lastWeek: function lastWeek() {
  20204. return (
  20205. '[el] dddd [passat a ' + (
  20206. this.hours() !== 1 ? 'les' : 'la') +
  20207. '] LT');
  20208. },
  20209. sameElse: 'L' },
  20210. relativeTime: {
  20211. future: "d'aquí %s",
  20212. past: 'fa %s',
  20213. s: 'uns segons',
  20214. ss: '%d segons',
  20215. m: 'un minut',
  20216. mm: '%d minuts',
  20217. h: 'una hora',
  20218. hh: '%d hores',
  20219. d: 'un dia',
  20220. dd: '%d dies',
  20221. M: 'un mes',
  20222. MM: '%d mesos',
  20223. y: 'un any',
  20224. yy: '%d anys' },
  20225. dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/,
  20226. ordinal: function ordinal(number, period) {
  20227. var output =
  20228. number === 1 ?
  20229. 'r' :
  20230. number === 2 ?
  20231. 'n' :
  20232. number === 3 ?
  20233. 'r' :
  20234. number === 4 ?
  20235. 't' :
  20236. 'è';
  20237. if (period === 'w' || period === 'W') {
  20238. output = 'a';
  20239. }
  20240. return number + output;
  20241. },
  20242. week: {
  20243. dow: 1, // Monday is the first day of the week.
  20244. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20245. } });
  20246. return ca;
  20247. });
  20248. /***/ }),
  20249. /* 63 */
  20250. /*!*****************************************************************!*\
  20251. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/cs.js ***!
  20252. \*****************************************************************/
  20253. /*! no static exports found */
  20254. /***/ (function(module, exports, __webpack_require__) {
  20255. //! moment.js locale configuration
  20256. //! locale : Czech [cs]
  20257. //! author : petrbela : https://github.com/petrbela
  20258. ;(function (global, factory) {
  20259. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20260. undefined;
  20261. })(this, function (moment) {'use strict';
  20262. //! moment.js locale configuration
  20263. var months = {
  20264. format: 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split(
  20265. '_'),
  20266. standalone:
  20267. 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split(
  20268. '_') },
  20269. monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'),
  20270. monthsParse = [
  20271. /^led/i,
  20272. /^úno/i,
  20273. /^bře/i,
  20274. /^dub/i,
  20275. /^kvě/i,
  20276. /^(čvn|červen$|června)/i,
  20277. /^(čvc|červenec|července)/i,
  20278. /^srp/i,
  20279. /^zář/i,
  20280. /^říj/i,
  20281. /^lis/i,
  20282. /^pro/i],
  20283. // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.
  20284. // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.
  20285. monthsRegex =
  20286. /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;
  20287. function plural(n) {
  20288. return n > 1 && n < 5 && ~~(n / 10) !== 1;
  20289. }
  20290. function translate(number, withoutSuffix, key, isFuture) {
  20291. var result = number + ' ';
  20292. switch (key) {
  20293. case 's': // a few seconds / in a few seconds / a few seconds ago
  20294. return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';
  20295. case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago
  20296. if (withoutSuffix || isFuture) {
  20297. return result + (plural(number) ? 'sekundy' : 'sekund');
  20298. } else {
  20299. return result + 'sekundami';
  20300. }
  20301. case 'm': // a minute / in a minute / a minute ago
  20302. return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';
  20303. case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago
  20304. if (withoutSuffix || isFuture) {
  20305. return result + (plural(number) ? 'minuty' : 'minut');
  20306. } else {
  20307. return result + 'minutami';
  20308. }
  20309. case 'h': // an hour / in an hour / an hour ago
  20310. return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';
  20311. case 'hh': // 9 hours / in 9 hours / 9 hours ago
  20312. if (withoutSuffix || isFuture) {
  20313. return result + (plural(number) ? 'hodiny' : 'hodin');
  20314. } else {
  20315. return result + 'hodinami';
  20316. }
  20317. case 'd': // a day / in a day / a day ago
  20318. return withoutSuffix || isFuture ? 'den' : 'dnem';
  20319. case 'dd': // 9 days / in 9 days / 9 days ago
  20320. if (withoutSuffix || isFuture) {
  20321. return result + (plural(number) ? 'dny' : 'dní');
  20322. } else {
  20323. return result + 'dny';
  20324. }
  20325. case 'M': // a month / in a month / a month ago
  20326. return withoutSuffix || isFuture ? 'měsíc' : 'měsícem';
  20327. case 'MM': // 9 months / in 9 months / 9 months ago
  20328. if (withoutSuffix || isFuture) {
  20329. return result + (plural(number) ? 'měsíce' : 'měsíců');
  20330. } else {
  20331. return result + 'měsíci';
  20332. }
  20333. case 'y': // a year / in a year / a year ago
  20334. return withoutSuffix || isFuture ? 'rok' : 'rokem';
  20335. case 'yy': // 9 years / in 9 years / 9 years ago
  20336. if (withoutSuffix || isFuture) {
  20337. return result + (plural(number) ? 'roky' : 'let');
  20338. } else {
  20339. return result + 'lety';
  20340. }}
  20341. }
  20342. var cs = moment.defineLocale('cs', {
  20343. months: months,
  20344. monthsShort: monthsShort,
  20345. monthsRegex: monthsRegex,
  20346. monthsShortRegex: monthsRegex,
  20347. // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.
  20348. // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.
  20349. monthsStrictRegex:
  20350. /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,
  20351. monthsShortStrictRegex:
  20352. /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,
  20353. monthsParse: monthsParse,
  20354. longMonthsParse: monthsParse,
  20355. shortMonthsParse: monthsParse,
  20356. weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),
  20357. weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'),
  20358. weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'),
  20359. longDateFormat: {
  20360. LT: 'H:mm',
  20361. LTS: 'H:mm:ss',
  20362. L: 'DD.MM.YYYY',
  20363. LL: 'D. MMMM YYYY',
  20364. LLL: 'D. MMMM YYYY H:mm',
  20365. LLLL: 'dddd D. MMMM YYYY H:mm',
  20366. l: 'D. M. YYYY' },
  20367. calendar: {
  20368. sameDay: '[dnes v] LT',
  20369. nextDay: '[zítra v] LT',
  20370. nextWeek: function nextWeek() {
  20371. switch (this.day()) {
  20372. case 0:
  20373. return '[v neděli v] LT';
  20374. case 1:
  20375. case 2:
  20376. return '[v] dddd [v] LT';
  20377. case 3:
  20378. return '[ve středu v] LT';
  20379. case 4:
  20380. return '[ve čtvrtek v] LT';
  20381. case 5:
  20382. return '[v pátek v] LT';
  20383. case 6:
  20384. return '[v sobotu v] LT';}
  20385. },
  20386. lastDay: '[včera v] LT',
  20387. lastWeek: function lastWeek() {
  20388. switch (this.day()) {
  20389. case 0:
  20390. return '[minulou neděli v] LT';
  20391. case 1:
  20392. case 2:
  20393. return '[minulé] dddd [v] LT';
  20394. case 3:
  20395. return '[minulou středu v] LT';
  20396. case 4:
  20397. case 5:
  20398. return '[minulý] dddd [v] LT';
  20399. case 6:
  20400. return '[minulou sobotu v] LT';}
  20401. },
  20402. sameElse: 'L' },
  20403. relativeTime: {
  20404. future: 'za %s',
  20405. past: 'před %s',
  20406. s: translate,
  20407. ss: translate,
  20408. m: translate,
  20409. mm: translate,
  20410. h: translate,
  20411. hh: translate,
  20412. d: translate,
  20413. dd: translate,
  20414. M: translate,
  20415. MM: translate,
  20416. y: translate,
  20417. yy: translate },
  20418. dayOfMonthOrdinalParse: /\d{1,2}\./,
  20419. ordinal: '%d.',
  20420. week: {
  20421. dow: 1, // Monday is the first day of the week.
  20422. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20423. } });
  20424. return cs;
  20425. });
  20426. /***/ }),
  20427. /* 64 */
  20428. /*!*****************************************************************!*\
  20429. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/cv.js ***!
  20430. \*****************************************************************/
  20431. /*! no static exports found */
  20432. /***/ (function(module, exports, __webpack_require__) {
  20433. //! moment.js locale configuration
  20434. //! locale : Chuvash [cv]
  20435. //! author : Anatoly Mironov : https://github.com/mirontoli
  20436. ;(function (global, factory) {
  20437. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20438. undefined;
  20439. })(this, function (moment) {'use strict';
  20440. //! moment.js locale configuration
  20441. var cv = moment.defineLocale('cv', {
  20442. months: 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split(
  20443. '_'),
  20444. monthsShort: 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),
  20445. weekdays:
  20446. 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split(
  20447. '_'),
  20448. weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),
  20449. weekdaysMin: 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),
  20450. longDateFormat: {
  20451. LT: 'HH:mm',
  20452. LTS: 'HH:mm:ss',
  20453. L: 'DD-MM-YYYY',
  20454. LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',
  20455. LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',
  20456. LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm' },
  20457. calendar: {
  20458. sameDay: '[Паян] LT [сехетре]',
  20459. nextDay: '[Ыран] LT [сехетре]',
  20460. lastDay: '[Ӗнер] LT [сехетре]',
  20461. nextWeek: '[Ҫитес] dddd LT [сехетре]',
  20462. lastWeek: '[Иртнӗ] dddd LT [сехетре]',
  20463. sameElse: 'L' },
  20464. relativeTime: {
  20465. future: function future(output) {
  20466. var affix = /сехет$/i.exec(output) ?
  20467. 'рен' :
  20468. /ҫул$/i.exec(output) ?
  20469. 'тан' :
  20470. 'ран';
  20471. return output + affix;
  20472. },
  20473. past: '%s каялла',
  20474. s: 'пӗр-ик ҫеккунт',
  20475. ss: '%d ҫеккунт',
  20476. m: 'пӗр минут',
  20477. mm: '%d минут',
  20478. h: 'пӗр сехет',
  20479. hh: '%d сехет',
  20480. d: 'пӗр кун',
  20481. dd: '%d кун',
  20482. M: 'пӗр уйӑх',
  20483. MM: '%d уйӑх',
  20484. y: 'пӗр ҫул',
  20485. yy: '%d ҫул' },
  20486. dayOfMonthOrdinalParse: /\d{1,2}-мӗш/,
  20487. ordinal: '%d-мӗш',
  20488. week: {
  20489. dow: 1, // Monday is the first day of the week.
  20490. doy: 7 // The week that contains Jan 7th is the first week of the year.
  20491. } });
  20492. return cv;
  20493. });
  20494. /***/ }),
  20495. /* 65 */
  20496. /*!*****************************************************************!*\
  20497. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/cy.js ***!
  20498. \*****************************************************************/
  20499. /*! no static exports found */
  20500. /***/ (function(module, exports, __webpack_require__) {
  20501. //! moment.js locale configuration
  20502. //! locale : Welsh [cy]
  20503. //! author : Robert Allen : https://github.com/robgallen
  20504. //! author : https://github.com/ryangreaves
  20505. ;(function (global, factory) {
  20506. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20507. undefined;
  20508. })(this, function (moment) {'use strict';
  20509. //! moment.js locale configuration
  20510. var cy = moment.defineLocale('cy', {
  20511. months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split(
  20512. '_'),
  20513. monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split(
  20514. '_'),
  20515. weekdays:
  20516. 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split(
  20517. '_'),
  20518. weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),
  20519. weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),
  20520. weekdaysParseExact: true,
  20521. // time formats are the same as en-gb
  20522. longDateFormat: {
  20523. LT: 'HH:mm',
  20524. LTS: 'HH:mm:ss',
  20525. L: 'DD/MM/YYYY',
  20526. LL: 'D MMMM YYYY',
  20527. LLL: 'D MMMM YYYY HH:mm',
  20528. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  20529. calendar: {
  20530. sameDay: '[Heddiw am] LT',
  20531. nextDay: '[Yfory am] LT',
  20532. nextWeek: 'dddd [am] LT',
  20533. lastDay: '[Ddoe am] LT',
  20534. lastWeek: 'dddd [diwethaf am] LT',
  20535. sameElse: 'L' },
  20536. relativeTime: {
  20537. future: 'mewn %s',
  20538. past: '%s yn ôl',
  20539. s: 'ychydig eiliadau',
  20540. ss: '%d eiliad',
  20541. m: 'munud',
  20542. mm: '%d munud',
  20543. h: 'awr',
  20544. hh: '%d awr',
  20545. d: 'diwrnod',
  20546. dd: '%d diwrnod',
  20547. M: 'mis',
  20548. MM: '%d mis',
  20549. y: 'blwyddyn',
  20550. yy: '%d flynedd' },
  20551. dayOfMonthOrdinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,
  20552. // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh
  20553. ordinal: function ordinal(number) {
  20554. var b = number,
  20555. output = '',
  20556. lookup = [
  20557. '',
  20558. 'af',
  20559. 'il',
  20560. 'ydd',
  20561. 'ydd',
  20562. 'ed',
  20563. 'ed',
  20564. 'ed',
  20565. 'fed',
  20566. 'fed',
  20567. 'fed', // 1af to 10fed
  20568. 'eg',
  20569. 'fed',
  20570. 'eg',
  20571. 'eg',
  20572. 'fed',
  20573. 'eg',
  20574. 'eg',
  20575. 'fed',
  20576. 'eg',
  20577. 'fed' // 11eg to 20fed
  20578. ];
  20579. if (b > 20) {
  20580. if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {
  20581. output = 'fed'; // not 30ain, 70ain or 90ain
  20582. } else {
  20583. output = 'ain';
  20584. }
  20585. } else if (b > 0) {
  20586. output = lookup[b];
  20587. }
  20588. return number + output;
  20589. },
  20590. week: {
  20591. dow: 1, // Monday is the first day of the week.
  20592. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20593. } });
  20594. return cy;
  20595. });
  20596. /***/ }),
  20597. /* 66 */
  20598. /*!*****************************************************************!*\
  20599. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/da.js ***!
  20600. \*****************************************************************/
  20601. /*! no static exports found */
  20602. /***/ (function(module, exports, __webpack_require__) {
  20603. //! moment.js locale configuration
  20604. //! locale : Danish [da]
  20605. //! author : Ulrik Nielsen : https://github.com/mrbase
  20606. ;(function (global, factory) {
  20607. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20608. undefined;
  20609. })(this, function (moment) {'use strict';
  20610. //! moment.js locale configuration
  20611. var da = moment.defineLocale('da', {
  20612. months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split(
  20613. '_'),
  20614. monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),
  20615. weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),
  20616. weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'),
  20617. weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),
  20618. longDateFormat: {
  20619. LT: 'HH:mm',
  20620. LTS: 'HH:mm:ss',
  20621. L: 'DD.MM.YYYY',
  20622. LL: 'D. MMMM YYYY',
  20623. LLL: 'D. MMMM YYYY HH:mm',
  20624. LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm' },
  20625. calendar: {
  20626. sameDay: '[i dag kl.] LT',
  20627. nextDay: '[i morgen kl.] LT',
  20628. nextWeek: 'på dddd [kl.] LT',
  20629. lastDay: '[i går kl.] LT',
  20630. lastWeek: '[i] dddd[s kl.] LT',
  20631. sameElse: 'L' },
  20632. relativeTime: {
  20633. future: 'om %s',
  20634. past: '%s siden',
  20635. s: 'få sekunder',
  20636. ss: '%d sekunder',
  20637. m: 'et minut',
  20638. mm: '%d minutter',
  20639. h: 'en time',
  20640. hh: '%d timer',
  20641. d: 'en dag',
  20642. dd: '%d dage',
  20643. M: 'en måned',
  20644. MM: '%d måneder',
  20645. y: 'et år',
  20646. yy: '%d år' },
  20647. dayOfMonthOrdinalParse: /\d{1,2}\./,
  20648. ordinal: '%d.',
  20649. week: {
  20650. dow: 1, // Monday is the first day of the week.
  20651. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20652. } });
  20653. return da;
  20654. });
  20655. /***/ }),
  20656. /* 67 */
  20657. /*!*****************************************************************!*\
  20658. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/de.js ***!
  20659. \*****************************************************************/
  20660. /*! no static exports found */
  20661. /***/ (function(module, exports, __webpack_require__) {
  20662. //! moment.js locale configuration
  20663. //! locale : German [de]
  20664. //! author : lluchs : https://github.com/lluchs
  20665. //! author: Menelion Elensúle: https://github.com/Oire
  20666. //! author : Mikolaj Dadela : https://github.com/mik01aj
  20667. ;(function (global, factory) {
  20668. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20669. undefined;
  20670. })(this, function (moment) {'use strict';
  20671. //! moment.js locale configuration
  20672. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  20673. var format = {
  20674. m: ['eine Minute', 'einer Minute'],
  20675. h: ['eine Stunde', 'einer Stunde'],
  20676. d: ['ein Tag', 'einem Tag'],
  20677. dd: [number + ' Tage', number + ' Tagen'],
  20678. w: ['eine Woche', 'einer Woche'],
  20679. M: ['ein Monat', 'einem Monat'],
  20680. MM: [number + ' Monate', number + ' Monaten'],
  20681. y: ['ein Jahr', 'einem Jahr'],
  20682. yy: [number + ' Jahre', number + ' Jahren'] };
  20683. return withoutSuffix ? format[key][0] : format[key][1];
  20684. }
  20685. var de = moment.defineLocale('de', {
  20686. months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(
  20687. '_'),
  20688. monthsShort:
  20689. 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),
  20690. monthsParseExact: true,
  20691. weekdays:
  20692. 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(
  20693. '_'),
  20694. weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),
  20695. weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
  20696. weekdaysParseExact: true,
  20697. longDateFormat: {
  20698. LT: 'HH:mm',
  20699. LTS: 'HH:mm:ss',
  20700. L: 'DD.MM.YYYY',
  20701. LL: 'D. MMMM YYYY',
  20702. LLL: 'D. MMMM YYYY HH:mm',
  20703. LLLL: 'dddd, D. MMMM YYYY HH:mm' },
  20704. calendar: {
  20705. sameDay: '[heute um] LT [Uhr]',
  20706. sameElse: 'L',
  20707. nextDay: '[morgen um] LT [Uhr]',
  20708. nextWeek: 'dddd [um] LT [Uhr]',
  20709. lastDay: '[gestern um] LT [Uhr]',
  20710. lastWeek: '[letzten] dddd [um] LT [Uhr]' },
  20711. relativeTime: {
  20712. future: 'in %s',
  20713. past: 'vor %s',
  20714. s: 'ein paar Sekunden',
  20715. ss: '%d Sekunden',
  20716. m: processRelativeTime,
  20717. mm: '%d Minuten',
  20718. h: processRelativeTime,
  20719. hh: '%d Stunden',
  20720. d: processRelativeTime,
  20721. dd: processRelativeTime,
  20722. w: processRelativeTime,
  20723. ww: '%d Wochen',
  20724. M: processRelativeTime,
  20725. MM: processRelativeTime,
  20726. y: processRelativeTime,
  20727. yy: processRelativeTime },
  20728. dayOfMonthOrdinalParse: /\d{1,2}\./,
  20729. ordinal: '%d.',
  20730. week: {
  20731. dow: 1, // Monday is the first day of the week.
  20732. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20733. } });
  20734. return de;
  20735. });
  20736. /***/ }),
  20737. /* 68 */
  20738. /*!********************************************************************!*\
  20739. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/de-at.js ***!
  20740. \********************************************************************/
  20741. /*! no static exports found */
  20742. /***/ (function(module, exports, __webpack_require__) {
  20743. //! moment.js locale configuration
  20744. //! locale : German (Austria) [de-at]
  20745. //! author : lluchs : https://github.com/lluchs
  20746. //! author: Menelion Elensúle: https://github.com/Oire
  20747. //! author : Martin Groller : https://github.com/MadMG
  20748. //! author : Mikolaj Dadela : https://github.com/mik01aj
  20749. ;(function (global, factory) {
  20750. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20751. undefined;
  20752. })(this, function (moment) {'use strict';
  20753. //! moment.js locale configuration
  20754. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  20755. var format = {
  20756. m: ['eine Minute', 'einer Minute'],
  20757. h: ['eine Stunde', 'einer Stunde'],
  20758. d: ['ein Tag', 'einem Tag'],
  20759. dd: [number + ' Tage', number + ' Tagen'],
  20760. w: ['eine Woche', 'einer Woche'],
  20761. M: ['ein Monat', 'einem Monat'],
  20762. MM: [number + ' Monate', number + ' Monaten'],
  20763. y: ['ein Jahr', 'einem Jahr'],
  20764. yy: [number + ' Jahre', number + ' Jahren'] };
  20765. return withoutSuffix ? format[key][0] : format[key][1];
  20766. }
  20767. var deAt = moment.defineLocale('de-at', {
  20768. months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(
  20769. '_'),
  20770. monthsShort:
  20771. 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),
  20772. monthsParseExact: true,
  20773. weekdays:
  20774. 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(
  20775. '_'),
  20776. weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),
  20777. weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
  20778. weekdaysParseExact: true,
  20779. longDateFormat: {
  20780. LT: 'HH:mm',
  20781. LTS: 'HH:mm:ss',
  20782. L: 'DD.MM.YYYY',
  20783. LL: 'D. MMMM YYYY',
  20784. LLL: 'D. MMMM YYYY HH:mm',
  20785. LLLL: 'dddd, D. MMMM YYYY HH:mm' },
  20786. calendar: {
  20787. sameDay: '[heute um] LT [Uhr]',
  20788. sameElse: 'L',
  20789. nextDay: '[morgen um] LT [Uhr]',
  20790. nextWeek: 'dddd [um] LT [Uhr]',
  20791. lastDay: '[gestern um] LT [Uhr]',
  20792. lastWeek: '[letzten] dddd [um] LT [Uhr]' },
  20793. relativeTime: {
  20794. future: 'in %s',
  20795. past: 'vor %s',
  20796. s: 'ein paar Sekunden',
  20797. ss: '%d Sekunden',
  20798. m: processRelativeTime,
  20799. mm: '%d Minuten',
  20800. h: processRelativeTime,
  20801. hh: '%d Stunden',
  20802. d: processRelativeTime,
  20803. dd: processRelativeTime,
  20804. w: processRelativeTime,
  20805. ww: '%d Wochen',
  20806. M: processRelativeTime,
  20807. MM: processRelativeTime,
  20808. y: processRelativeTime,
  20809. yy: processRelativeTime },
  20810. dayOfMonthOrdinalParse: /\d{1,2}\./,
  20811. ordinal: '%d.',
  20812. week: {
  20813. dow: 1, // Monday is the first day of the week.
  20814. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20815. } });
  20816. return deAt;
  20817. });
  20818. /***/ }),
  20819. /* 69 */
  20820. /*!********************************************************************!*\
  20821. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/de-ch.js ***!
  20822. \********************************************************************/
  20823. /*! no static exports found */
  20824. /***/ (function(module, exports, __webpack_require__) {
  20825. //! moment.js locale configuration
  20826. //! locale : German (Switzerland) [de-ch]
  20827. //! author : sschueller : https://github.com/sschueller
  20828. ;(function (global, factory) {
  20829. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20830. undefined;
  20831. })(this, function (moment) {'use strict';
  20832. //! moment.js locale configuration
  20833. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  20834. var format = {
  20835. m: ['eine Minute', 'einer Minute'],
  20836. h: ['eine Stunde', 'einer Stunde'],
  20837. d: ['ein Tag', 'einem Tag'],
  20838. dd: [number + ' Tage', number + ' Tagen'],
  20839. w: ['eine Woche', 'einer Woche'],
  20840. M: ['ein Monat', 'einem Monat'],
  20841. MM: [number + ' Monate', number + ' Monaten'],
  20842. y: ['ein Jahr', 'einem Jahr'],
  20843. yy: [number + ' Jahre', number + ' Jahren'] };
  20844. return withoutSuffix ? format[key][0] : format[key][1];
  20845. }
  20846. var deCh = moment.defineLocale('de-ch', {
  20847. months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(
  20848. '_'),
  20849. monthsShort:
  20850. 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),
  20851. monthsParseExact: true,
  20852. weekdays:
  20853. 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(
  20854. '_'),
  20855. weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
  20856. weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
  20857. weekdaysParseExact: true,
  20858. longDateFormat: {
  20859. LT: 'HH:mm',
  20860. LTS: 'HH:mm:ss',
  20861. L: 'DD.MM.YYYY',
  20862. LL: 'D. MMMM YYYY',
  20863. LLL: 'D. MMMM YYYY HH:mm',
  20864. LLLL: 'dddd, D. MMMM YYYY HH:mm' },
  20865. calendar: {
  20866. sameDay: '[heute um] LT [Uhr]',
  20867. sameElse: 'L',
  20868. nextDay: '[morgen um] LT [Uhr]',
  20869. nextWeek: 'dddd [um] LT [Uhr]',
  20870. lastDay: '[gestern um] LT [Uhr]',
  20871. lastWeek: '[letzten] dddd [um] LT [Uhr]' },
  20872. relativeTime: {
  20873. future: 'in %s',
  20874. past: 'vor %s',
  20875. s: 'ein paar Sekunden',
  20876. ss: '%d Sekunden',
  20877. m: processRelativeTime,
  20878. mm: '%d Minuten',
  20879. h: processRelativeTime,
  20880. hh: '%d Stunden',
  20881. d: processRelativeTime,
  20882. dd: processRelativeTime,
  20883. w: processRelativeTime,
  20884. ww: '%d Wochen',
  20885. M: processRelativeTime,
  20886. MM: processRelativeTime,
  20887. y: processRelativeTime,
  20888. yy: processRelativeTime },
  20889. dayOfMonthOrdinalParse: /\d{1,2}\./,
  20890. ordinal: '%d.',
  20891. week: {
  20892. dow: 1, // Monday is the first day of the week.
  20893. doy: 4 // The week that contains Jan 4th is the first week of the year.
  20894. } });
  20895. return deCh;
  20896. });
  20897. /***/ }),
  20898. /* 70 */
  20899. /*!*****************************************************************!*\
  20900. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/dv.js ***!
  20901. \*****************************************************************/
  20902. /*! no static exports found */
  20903. /***/ (function(module, exports, __webpack_require__) {
  20904. //! moment.js locale configuration
  20905. //! locale : Maldivian [dv]
  20906. //! author : Jawish Hameed : https://github.com/jawish
  20907. ;(function (global, factory) {
  20908. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  20909. undefined;
  20910. })(this, function (moment) {'use strict';
  20911. //! moment.js locale configuration
  20912. var months = [
  20913. 'ޖެނުއަރީ',
  20914. 'ފެބްރުއަރީ',
  20915. 'މާރިޗު',
  20916. 'އޭޕްރީލު',
  20917. 'މޭ',
  20918. 'ޖޫން',
  20919. 'ޖުލައި',
  20920. 'އޯގަސްޓު',
  20921. 'ސެޕްޓެމްބަރު',
  20922. 'އޮކްޓޯބަރު',
  20923. 'ނޮވެމްބަރު',
  20924. 'ޑިސެމްބަރު'],
  20925. weekdays = [
  20926. 'އާދިއްތަ',
  20927. 'ހޯމަ',
  20928. 'އަންގާރަ',
  20929. 'ބުދަ',
  20930. 'ބުރާސްފަތި',
  20931. 'ހުކުރު',
  20932. 'ހޮނިހިރު'];
  20933. var dv = moment.defineLocale('dv', {
  20934. months: months,
  20935. monthsShort: months,
  20936. weekdays: weekdays,
  20937. weekdaysShort: weekdays,
  20938. weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),
  20939. longDateFormat: {
  20940. LT: 'HH:mm',
  20941. LTS: 'HH:mm:ss',
  20942. L: 'D/M/YYYY',
  20943. LL: 'D MMMM YYYY',
  20944. LLL: 'D MMMM YYYY HH:mm',
  20945. LLLL: 'dddd D MMMM YYYY HH:mm' },
  20946. meridiemParse: /މކ|މފ/,
  20947. isPM: function isPM(input) {
  20948. return 'މފ' === input;
  20949. },
  20950. meridiem: function meridiem(hour, minute, isLower) {
  20951. if (hour < 12) {
  20952. return 'މކ';
  20953. } else {
  20954. return 'މފ';
  20955. }
  20956. },
  20957. calendar: {
  20958. sameDay: '[މިއަދު] LT',
  20959. nextDay: '[މާދަމާ] LT',
  20960. nextWeek: 'dddd LT',
  20961. lastDay: '[އިއްޔެ] LT',
  20962. lastWeek: '[ފާއިތުވި] dddd LT',
  20963. sameElse: 'L' },
  20964. relativeTime: {
  20965. future: 'ތެރޭގައި %s',
  20966. past: 'ކުރިން %s',
  20967. s: 'ސިކުންތުކޮޅެއް',
  20968. ss: 'd% ސިކުންތު',
  20969. m: 'މިނިޓެއް',
  20970. mm: 'މިނިޓު %d',
  20971. h: 'ގަޑިއިރެއް',
  20972. hh: 'ގަޑިއިރު %d',
  20973. d: 'ދުވަހެއް',
  20974. dd: 'ދުވަސް %d',
  20975. M: 'މަހެއް',
  20976. MM: 'މަސް %d',
  20977. y: 'އަހަރެއް',
  20978. yy: 'އަހަރު %d' },
  20979. preparse: function preparse(string) {
  20980. return string.replace(/،/g, ',');
  20981. },
  20982. postformat: function postformat(string) {
  20983. return string.replace(/,/g, '،');
  20984. },
  20985. week: {
  20986. dow: 7, // Sunday is the first day of the week.
  20987. doy: 12 // The week that contains Jan 12th is the first week of the year.
  20988. } });
  20989. return dv;
  20990. });
  20991. /***/ }),
  20992. /* 71 */
  20993. /*!*****************************************************************!*\
  20994. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/el.js ***!
  20995. \*****************************************************************/
  20996. /*! no static exports found */
  20997. /***/ (function(module, exports, __webpack_require__) {
  20998. //! moment.js locale configuration
  20999. //! locale : Greek [el]
  21000. //! author : Aggelos Karalias : https://github.com/mehiel
  21001. ;(function (global, factory) {
  21002. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21003. undefined;
  21004. })(this, function (moment) {'use strict';
  21005. //! moment.js locale configuration
  21006. function isFunction(input) {
  21007. return (
  21008. typeof Function !== 'undefined' && input instanceof Function ||
  21009. Object.prototype.toString.call(input) === '[object Function]');
  21010. }
  21011. var el = moment.defineLocale('el', {
  21012. monthsNominativeEl:
  21013. 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split(
  21014. '_'),
  21015. monthsGenitiveEl:
  21016. 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split(
  21017. '_'),
  21018. months: function months(momentToFormat, format) {
  21019. if (!momentToFormat) {
  21020. return this._monthsNominativeEl;
  21021. } else if (
  21022. typeof format === 'string' &&
  21023. /D/.test(format.substring(0, format.indexOf('MMMM'))))
  21024. {
  21025. // if there is a day number before 'MMMM'
  21026. return this._monthsGenitiveEl[momentToFormat.month()];
  21027. } else {
  21028. return this._monthsNominativeEl[momentToFormat.month()];
  21029. }
  21030. },
  21031. monthsShort: 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),
  21032. weekdays: 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split(
  21033. '_'),
  21034. weekdaysShort: 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),
  21035. weekdaysMin: 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),
  21036. meridiem: function meridiem(hours, minutes, isLower) {
  21037. if (hours > 11) {
  21038. return isLower ? 'μμ' : 'ΜΜ';
  21039. } else {
  21040. return isLower ? 'πμ' : 'ΠΜ';
  21041. }
  21042. },
  21043. isPM: function isPM(input) {
  21044. return (input + '').toLowerCase()[0] === 'μ';
  21045. },
  21046. meridiemParse: /[ΠΜ]\.?Μ?\.?/i,
  21047. longDateFormat: {
  21048. LT: 'h:mm A',
  21049. LTS: 'h:mm:ss A',
  21050. L: 'DD/MM/YYYY',
  21051. LL: 'D MMMM YYYY',
  21052. LLL: 'D MMMM YYYY h:mm A',
  21053. LLLL: 'dddd, D MMMM YYYY h:mm A' },
  21054. calendarEl: {
  21055. sameDay: '[Σήμερα {}] LT',
  21056. nextDay: '[Αύριο {}] LT',
  21057. nextWeek: 'dddd [{}] LT',
  21058. lastDay: '[Χθες {}] LT',
  21059. lastWeek: function lastWeek() {
  21060. switch (this.day()) {
  21061. case 6:
  21062. return '[το προηγούμενο] dddd [{}] LT';
  21063. default:
  21064. return '[την προηγούμενη] dddd [{}] LT';}
  21065. },
  21066. sameElse: 'L' },
  21067. calendar: function calendar(key, mom) {
  21068. var output = this._calendarEl[key],
  21069. hours = mom && mom.hours();
  21070. if (isFunction(output)) {
  21071. output = output.apply(mom);
  21072. }
  21073. return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις');
  21074. },
  21075. relativeTime: {
  21076. future: 'σε %s',
  21077. past: '%s πριν',
  21078. s: 'λίγα δευτερόλεπτα',
  21079. ss: '%d δευτερόλεπτα',
  21080. m: 'ένα λεπτό',
  21081. mm: '%d λεπτά',
  21082. h: 'μία ώρα',
  21083. hh: '%d ώρες',
  21084. d: 'μία μέρα',
  21085. dd: '%d μέρες',
  21086. M: 'ένας μήνας',
  21087. MM: '%d μήνες',
  21088. y: 'ένας χρόνος',
  21089. yy: '%d χρόνια' },
  21090. dayOfMonthOrdinalParse: /\d{1,2}η/,
  21091. ordinal: '%dη',
  21092. week: {
  21093. dow: 1, // Monday is the first day of the week.
  21094. doy: 4 // The week that contains Jan 4st is the first week of the year.
  21095. } });
  21096. return el;
  21097. });
  21098. /***/ }),
  21099. /* 72 */
  21100. /*!********************************************************************!*\
  21101. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-au.js ***!
  21102. \********************************************************************/
  21103. /*! no static exports found */
  21104. /***/ (function(module, exports, __webpack_require__) {
  21105. //! moment.js locale configuration
  21106. //! locale : English (Australia) [en-au]
  21107. //! author : Jared Morse : https://github.com/jarcoal
  21108. ;(function (global, factory) {
  21109. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21110. undefined;
  21111. })(this, function (moment) {'use strict';
  21112. //! moment.js locale configuration
  21113. var enAu = moment.defineLocale('en-au', {
  21114. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21115. '_'),
  21116. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21117. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21118. '_'),
  21119. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21120. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21121. longDateFormat: {
  21122. LT: 'h:mm A',
  21123. LTS: 'h:mm:ss A',
  21124. L: 'DD/MM/YYYY',
  21125. LL: 'D MMMM YYYY',
  21126. LLL: 'D MMMM YYYY h:mm A',
  21127. LLLL: 'dddd, D MMMM YYYY h:mm A' },
  21128. calendar: {
  21129. sameDay: '[Today at] LT',
  21130. nextDay: '[Tomorrow at] LT',
  21131. nextWeek: 'dddd [at] LT',
  21132. lastDay: '[Yesterday at] LT',
  21133. lastWeek: '[Last] dddd [at] LT',
  21134. sameElse: 'L' },
  21135. relativeTime: {
  21136. future: 'in %s',
  21137. past: '%s ago',
  21138. s: 'a few seconds',
  21139. ss: '%d seconds',
  21140. m: 'a minute',
  21141. mm: '%d minutes',
  21142. h: 'an hour',
  21143. hh: '%d hours',
  21144. d: 'a day',
  21145. dd: '%d days',
  21146. M: 'a month',
  21147. MM: '%d months',
  21148. y: 'a year',
  21149. yy: '%d years' },
  21150. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21151. ordinal: function ordinal(number) {
  21152. var b = number % 10,
  21153. output =
  21154. ~~(number % 100 / 10) === 1 ?
  21155. 'th' :
  21156. b === 1 ?
  21157. 'st' :
  21158. b === 2 ?
  21159. 'nd' :
  21160. b === 3 ?
  21161. 'rd' :
  21162. 'th';
  21163. return number + output;
  21164. },
  21165. week: {
  21166. dow: 0, // Sunday is the first day of the week.
  21167. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21168. } });
  21169. return enAu;
  21170. });
  21171. /***/ }),
  21172. /* 73 */
  21173. /*!********************************************************************!*\
  21174. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-ca.js ***!
  21175. \********************************************************************/
  21176. /*! no static exports found */
  21177. /***/ (function(module, exports, __webpack_require__) {
  21178. //! moment.js locale configuration
  21179. //! locale : English (Canada) [en-ca]
  21180. //! author : Jonathan Abourbih : https://github.com/jonbca
  21181. ;(function (global, factory) {
  21182. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21183. undefined;
  21184. })(this, function (moment) {'use strict';
  21185. //! moment.js locale configuration
  21186. var enCa = moment.defineLocale('en-ca', {
  21187. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21188. '_'),
  21189. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21190. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21191. '_'),
  21192. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21193. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21194. longDateFormat: {
  21195. LT: 'h:mm A',
  21196. LTS: 'h:mm:ss A',
  21197. L: 'YYYY-MM-DD',
  21198. LL: 'MMMM D, YYYY',
  21199. LLL: 'MMMM D, YYYY h:mm A',
  21200. LLLL: 'dddd, MMMM D, YYYY h:mm A' },
  21201. calendar: {
  21202. sameDay: '[Today at] LT',
  21203. nextDay: '[Tomorrow at] LT',
  21204. nextWeek: 'dddd [at] LT',
  21205. lastDay: '[Yesterday at] LT',
  21206. lastWeek: '[Last] dddd [at] LT',
  21207. sameElse: 'L' },
  21208. relativeTime: {
  21209. future: 'in %s',
  21210. past: '%s ago',
  21211. s: 'a few seconds',
  21212. ss: '%d seconds',
  21213. m: 'a minute',
  21214. mm: '%d minutes',
  21215. h: 'an hour',
  21216. hh: '%d hours',
  21217. d: 'a day',
  21218. dd: '%d days',
  21219. M: 'a month',
  21220. MM: '%d months',
  21221. y: 'a year',
  21222. yy: '%d years' },
  21223. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21224. ordinal: function ordinal(number) {
  21225. var b = number % 10,
  21226. output =
  21227. ~~(number % 100 / 10) === 1 ?
  21228. 'th' :
  21229. b === 1 ?
  21230. 'st' :
  21231. b === 2 ?
  21232. 'nd' :
  21233. b === 3 ?
  21234. 'rd' :
  21235. 'th';
  21236. return number + output;
  21237. } });
  21238. return enCa;
  21239. });
  21240. /***/ }),
  21241. /* 74 */
  21242. /*!********************************************************************!*\
  21243. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-gb.js ***!
  21244. \********************************************************************/
  21245. /*! no static exports found */
  21246. /***/ (function(module, exports, __webpack_require__) {
  21247. //! moment.js locale configuration
  21248. //! locale : English (United Kingdom) [en-gb]
  21249. //! author : Chris Gedrim : https://github.com/chrisgedrim
  21250. ;(function (global, factory) {
  21251. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21252. undefined;
  21253. })(this, function (moment) {'use strict';
  21254. //! moment.js locale configuration
  21255. var enGb = moment.defineLocale('en-gb', {
  21256. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21257. '_'),
  21258. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21259. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21260. '_'),
  21261. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21262. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21263. longDateFormat: {
  21264. LT: 'HH:mm',
  21265. LTS: 'HH:mm:ss',
  21266. L: 'DD/MM/YYYY',
  21267. LL: 'D MMMM YYYY',
  21268. LLL: 'D MMMM YYYY HH:mm',
  21269. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  21270. calendar: {
  21271. sameDay: '[Today at] LT',
  21272. nextDay: '[Tomorrow at] LT',
  21273. nextWeek: 'dddd [at] LT',
  21274. lastDay: '[Yesterday at] LT',
  21275. lastWeek: '[Last] dddd [at] LT',
  21276. sameElse: 'L' },
  21277. relativeTime: {
  21278. future: 'in %s',
  21279. past: '%s ago',
  21280. s: 'a few seconds',
  21281. ss: '%d seconds',
  21282. m: 'a minute',
  21283. mm: '%d minutes',
  21284. h: 'an hour',
  21285. hh: '%d hours',
  21286. d: 'a day',
  21287. dd: '%d days',
  21288. M: 'a month',
  21289. MM: '%d months',
  21290. y: 'a year',
  21291. yy: '%d years' },
  21292. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21293. ordinal: function ordinal(number) {
  21294. var b = number % 10,
  21295. output =
  21296. ~~(number % 100 / 10) === 1 ?
  21297. 'th' :
  21298. b === 1 ?
  21299. 'st' :
  21300. b === 2 ?
  21301. 'nd' :
  21302. b === 3 ?
  21303. 'rd' :
  21304. 'th';
  21305. return number + output;
  21306. },
  21307. week: {
  21308. dow: 1, // Monday is the first day of the week.
  21309. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21310. } });
  21311. return enGb;
  21312. });
  21313. /***/ }),
  21314. /* 75 */
  21315. /*!********************************************************************!*\
  21316. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-ie.js ***!
  21317. \********************************************************************/
  21318. /*! no static exports found */
  21319. /***/ (function(module, exports, __webpack_require__) {
  21320. //! moment.js locale configuration
  21321. //! locale : English (Ireland) [en-ie]
  21322. //! author : Chris Cartlidge : https://github.com/chriscartlidge
  21323. ;(function (global, factory) {
  21324. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21325. undefined;
  21326. })(this, function (moment) {'use strict';
  21327. //! moment.js locale configuration
  21328. var enIe = moment.defineLocale('en-ie', {
  21329. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21330. '_'),
  21331. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21332. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21333. '_'),
  21334. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21335. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21336. longDateFormat: {
  21337. LT: 'HH:mm',
  21338. LTS: 'HH:mm:ss',
  21339. L: 'DD/MM/YYYY',
  21340. LL: 'D MMMM YYYY',
  21341. LLL: 'D MMMM YYYY HH:mm',
  21342. LLLL: 'dddd D MMMM YYYY HH:mm' },
  21343. calendar: {
  21344. sameDay: '[Today at] LT',
  21345. nextDay: '[Tomorrow at] LT',
  21346. nextWeek: 'dddd [at] LT',
  21347. lastDay: '[Yesterday at] LT',
  21348. lastWeek: '[Last] dddd [at] LT',
  21349. sameElse: 'L' },
  21350. relativeTime: {
  21351. future: 'in %s',
  21352. past: '%s ago',
  21353. s: 'a few seconds',
  21354. ss: '%d seconds',
  21355. m: 'a minute',
  21356. mm: '%d minutes',
  21357. h: 'an hour',
  21358. hh: '%d hours',
  21359. d: 'a day',
  21360. dd: '%d days',
  21361. M: 'a month',
  21362. MM: '%d months',
  21363. y: 'a year',
  21364. yy: '%d years' },
  21365. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21366. ordinal: function ordinal(number) {
  21367. var b = number % 10,
  21368. output =
  21369. ~~(number % 100 / 10) === 1 ?
  21370. 'th' :
  21371. b === 1 ?
  21372. 'st' :
  21373. b === 2 ?
  21374. 'nd' :
  21375. b === 3 ?
  21376. 'rd' :
  21377. 'th';
  21378. return number + output;
  21379. },
  21380. week: {
  21381. dow: 1, // Monday is the first day of the week.
  21382. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21383. } });
  21384. return enIe;
  21385. });
  21386. /***/ }),
  21387. /* 76 */
  21388. /*!********************************************************************!*\
  21389. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-il.js ***!
  21390. \********************************************************************/
  21391. /*! no static exports found */
  21392. /***/ (function(module, exports, __webpack_require__) {
  21393. //! moment.js locale configuration
  21394. //! locale : English (Israel) [en-il]
  21395. //! author : Chris Gedrim : https://github.com/chrisgedrim
  21396. ;(function (global, factory) {
  21397. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21398. undefined;
  21399. })(this, function (moment) {'use strict';
  21400. //! moment.js locale configuration
  21401. var enIl = moment.defineLocale('en-il', {
  21402. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21403. '_'),
  21404. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21405. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21406. '_'),
  21407. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21408. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21409. longDateFormat: {
  21410. LT: 'HH:mm',
  21411. LTS: 'HH:mm:ss',
  21412. L: 'DD/MM/YYYY',
  21413. LL: 'D MMMM YYYY',
  21414. LLL: 'D MMMM YYYY HH:mm',
  21415. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  21416. calendar: {
  21417. sameDay: '[Today at] LT',
  21418. nextDay: '[Tomorrow at] LT',
  21419. nextWeek: 'dddd [at] LT',
  21420. lastDay: '[Yesterday at] LT',
  21421. lastWeek: '[Last] dddd [at] LT',
  21422. sameElse: 'L' },
  21423. relativeTime: {
  21424. future: 'in %s',
  21425. past: '%s ago',
  21426. s: 'a few seconds',
  21427. ss: '%d seconds',
  21428. m: 'a minute',
  21429. mm: '%d minutes',
  21430. h: 'an hour',
  21431. hh: '%d hours',
  21432. d: 'a day',
  21433. dd: '%d days',
  21434. M: 'a month',
  21435. MM: '%d months',
  21436. y: 'a year',
  21437. yy: '%d years' },
  21438. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21439. ordinal: function ordinal(number) {
  21440. var b = number % 10,
  21441. output =
  21442. ~~(number % 100 / 10) === 1 ?
  21443. 'th' :
  21444. b === 1 ?
  21445. 'st' :
  21446. b === 2 ?
  21447. 'nd' :
  21448. b === 3 ?
  21449. 'rd' :
  21450. 'th';
  21451. return number + output;
  21452. } });
  21453. return enIl;
  21454. });
  21455. /***/ }),
  21456. /* 77 */
  21457. /*!********************************************************************!*\
  21458. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-in.js ***!
  21459. \********************************************************************/
  21460. /*! no static exports found */
  21461. /***/ (function(module, exports, __webpack_require__) {
  21462. //! moment.js locale configuration
  21463. //! locale : English (India) [en-in]
  21464. //! author : Jatin Agrawal : https://github.com/jatinag22
  21465. ;(function (global, factory) {
  21466. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21467. undefined;
  21468. })(this, function (moment) {'use strict';
  21469. //! moment.js locale configuration
  21470. var enIn = moment.defineLocale('en-in', {
  21471. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21472. '_'),
  21473. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21474. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21475. '_'),
  21476. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21477. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21478. longDateFormat: {
  21479. LT: 'h:mm A',
  21480. LTS: 'h:mm:ss A',
  21481. L: 'DD/MM/YYYY',
  21482. LL: 'D MMMM YYYY',
  21483. LLL: 'D MMMM YYYY h:mm A',
  21484. LLLL: 'dddd, D MMMM YYYY h:mm A' },
  21485. calendar: {
  21486. sameDay: '[Today at] LT',
  21487. nextDay: '[Tomorrow at] LT',
  21488. nextWeek: 'dddd [at] LT',
  21489. lastDay: '[Yesterday at] LT',
  21490. lastWeek: '[Last] dddd [at] LT',
  21491. sameElse: 'L' },
  21492. relativeTime: {
  21493. future: 'in %s',
  21494. past: '%s ago',
  21495. s: 'a few seconds',
  21496. ss: '%d seconds',
  21497. m: 'a minute',
  21498. mm: '%d minutes',
  21499. h: 'an hour',
  21500. hh: '%d hours',
  21501. d: 'a day',
  21502. dd: '%d days',
  21503. M: 'a month',
  21504. MM: '%d months',
  21505. y: 'a year',
  21506. yy: '%d years' },
  21507. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21508. ordinal: function ordinal(number) {
  21509. var b = number % 10,
  21510. output =
  21511. ~~(number % 100 / 10) === 1 ?
  21512. 'th' :
  21513. b === 1 ?
  21514. 'st' :
  21515. b === 2 ?
  21516. 'nd' :
  21517. b === 3 ?
  21518. 'rd' :
  21519. 'th';
  21520. return number + output;
  21521. },
  21522. week: {
  21523. dow: 0, // Sunday is the first day of the week.
  21524. doy: 6 // The week that contains Jan 1st is the first week of the year.
  21525. } });
  21526. return enIn;
  21527. });
  21528. /***/ }),
  21529. /* 78 */
  21530. /*!********************************************************************!*\
  21531. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-nz.js ***!
  21532. \********************************************************************/
  21533. /*! no static exports found */
  21534. /***/ (function(module, exports, __webpack_require__) {
  21535. //! moment.js locale configuration
  21536. //! locale : English (New Zealand) [en-nz]
  21537. //! author : Luke McGregor : https://github.com/lukemcgregor
  21538. ;(function (global, factory) {
  21539. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21540. undefined;
  21541. })(this, function (moment) {'use strict';
  21542. //! moment.js locale configuration
  21543. var enNz = moment.defineLocale('en-nz', {
  21544. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21545. '_'),
  21546. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21547. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21548. '_'),
  21549. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21550. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21551. longDateFormat: {
  21552. LT: 'h:mm A',
  21553. LTS: 'h:mm:ss A',
  21554. L: 'DD/MM/YYYY',
  21555. LL: 'D MMMM YYYY',
  21556. LLL: 'D MMMM YYYY h:mm A',
  21557. LLLL: 'dddd, D MMMM YYYY h:mm A' },
  21558. calendar: {
  21559. sameDay: '[Today at] LT',
  21560. nextDay: '[Tomorrow at] LT',
  21561. nextWeek: 'dddd [at] LT',
  21562. lastDay: '[Yesterday at] LT',
  21563. lastWeek: '[Last] dddd [at] LT',
  21564. sameElse: 'L' },
  21565. relativeTime: {
  21566. future: 'in %s',
  21567. past: '%s ago',
  21568. s: 'a few seconds',
  21569. ss: '%d seconds',
  21570. m: 'a minute',
  21571. mm: '%d minutes',
  21572. h: 'an hour',
  21573. hh: '%d hours',
  21574. d: 'a day',
  21575. dd: '%d days',
  21576. M: 'a month',
  21577. MM: '%d months',
  21578. y: 'a year',
  21579. yy: '%d years' },
  21580. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21581. ordinal: function ordinal(number) {
  21582. var b = number % 10,
  21583. output =
  21584. ~~(number % 100 / 10) === 1 ?
  21585. 'th' :
  21586. b === 1 ?
  21587. 'st' :
  21588. b === 2 ?
  21589. 'nd' :
  21590. b === 3 ?
  21591. 'rd' :
  21592. 'th';
  21593. return number + output;
  21594. },
  21595. week: {
  21596. dow: 1, // Monday is the first day of the week.
  21597. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21598. } });
  21599. return enNz;
  21600. });
  21601. /***/ }),
  21602. /* 79 */
  21603. /*!********************************************************************!*\
  21604. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/en-sg.js ***!
  21605. \********************************************************************/
  21606. /*! no static exports found */
  21607. /***/ (function(module, exports, __webpack_require__) {
  21608. //! moment.js locale configuration
  21609. //! locale : English (Singapore) [en-sg]
  21610. //! author : Matthew Castrillon-Madrigal : https://github.com/techdimension
  21611. ;(function (global, factory) {
  21612. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21613. undefined;
  21614. })(this, function (moment) {'use strict';
  21615. //! moment.js locale configuration
  21616. var enSg = moment.defineLocale('en-sg', {
  21617. months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(
  21618. '_'),
  21619. monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
  21620. weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(
  21621. '_'),
  21622. weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
  21623. weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
  21624. longDateFormat: {
  21625. LT: 'HH:mm',
  21626. LTS: 'HH:mm:ss',
  21627. L: 'DD/MM/YYYY',
  21628. LL: 'D MMMM YYYY',
  21629. LLL: 'D MMMM YYYY HH:mm',
  21630. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  21631. calendar: {
  21632. sameDay: '[Today at] LT',
  21633. nextDay: '[Tomorrow at] LT',
  21634. nextWeek: 'dddd [at] LT',
  21635. lastDay: '[Yesterday at] LT',
  21636. lastWeek: '[Last] dddd [at] LT',
  21637. sameElse: 'L' },
  21638. relativeTime: {
  21639. future: 'in %s',
  21640. past: '%s ago',
  21641. s: 'a few seconds',
  21642. ss: '%d seconds',
  21643. m: 'a minute',
  21644. mm: '%d minutes',
  21645. h: 'an hour',
  21646. hh: '%d hours',
  21647. d: 'a day',
  21648. dd: '%d days',
  21649. M: 'a month',
  21650. MM: '%d months',
  21651. y: 'a year',
  21652. yy: '%d years' },
  21653. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  21654. ordinal: function ordinal(number) {
  21655. var b = number % 10,
  21656. output =
  21657. ~~(number % 100 / 10) === 1 ?
  21658. 'th' :
  21659. b === 1 ?
  21660. 'st' :
  21661. b === 2 ?
  21662. 'nd' :
  21663. b === 3 ?
  21664. 'rd' :
  21665. 'th';
  21666. return number + output;
  21667. },
  21668. week: {
  21669. dow: 1, // Monday is the first day of the week.
  21670. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21671. } });
  21672. return enSg;
  21673. });
  21674. /***/ }),
  21675. /* 80 */
  21676. /*!*****************************************************************!*\
  21677. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/eo.js ***!
  21678. \*****************************************************************/
  21679. /*! no static exports found */
  21680. /***/ (function(module, exports, __webpack_require__) {
  21681. //! moment.js locale configuration
  21682. //! locale : Esperanto [eo]
  21683. //! author : Colin Dean : https://github.com/colindean
  21684. //! author : Mia Nordentoft Imperatori : https://github.com/miestasmia
  21685. //! comment : miestasmia corrected the translation by colindean
  21686. //! comment : Vivakvo corrected the translation by colindean and miestasmia
  21687. ;(function (global, factory) {
  21688. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21689. undefined;
  21690. })(this, function (moment) {'use strict';
  21691. //! moment.js locale configuration
  21692. var eo = moment.defineLocale('eo', {
  21693. months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split(
  21694. '_'),
  21695. monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'),
  21696. weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),
  21697. weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),
  21698. weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'),
  21699. longDateFormat: {
  21700. LT: 'HH:mm',
  21701. LTS: 'HH:mm:ss',
  21702. L: 'YYYY-MM-DD',
  21703. LL: '[la] D[-an de] MMMM, YYYY',
  21704. LLL: '[la] D[-an de] MMMM, YYYY HH:mm',
  21705. LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm',
  21706. llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm' },
  21707. meridiemParse: /[ap]\.t\.m/i,
  21708. isPM: function isPM(input) {
  21709. return input.charAt(0).toLowerCase() === 'p';
  21710. },
  21711. meridiem: function meridiem(hours, minutes, isLower) {
  21712. if (hours > 11) {
  21713. return isLower ? 'p.t.m.' : 'P.T.M.';
  21714. } else {
  21715. return isLower ? 'a.t.m.' : 'A.T.M.';
  21716. }
  21717. },
  21718. calendar: {
  21719. sameDay: '[Hodiaŭ je] LT',
  21720. nextDay: '[Morgaŭ je] LT',
  21721. nextWeek: 'dddd[n je] LT',
  21722. lastDay: '[Hieraŭ je] LT',
  21723. lastWeek: '[pasintan] dddd[n je] LT',
  21724. sameElse: 'L' },
  21725. relativeTime: {
  21726. future: 'post %s',
  21727. past: 'antaŭ %s',
  21728. s: 'kelkaj sekundoj',
  21729. ss: '%d sekundoj',
  21730. m: 'unu minuto',
  21731. mm: '%d minutoj',
  21732. h: 'unu horo',
  21733. hh: '%d horoj',
  21734. d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo
  21735. dd: '%d tagoj',
  21736. M: 'unu monato',
  21737. MM: '%d monatoj',
  21738. y: 'unu jaro',
  21739. yy: '%d jaroj' },
  21740. dayOfMonthOrdinalParse: /\d{1,2}a/,
  21741. ordinal: '%da',
  21742. week: {
  21743. dow: 1, // Monday is the first day of the week.
  21744. doy: 7 // The week that contains Jan 7th is the first week of the year.
  21745. } });
  21746. return eo;
  21747. });
  21748. /***/ }),
  21749. /* 81 */
  21750. /*!*****************************************************************!*\
  21751. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/es.js ***!
  21752. \*****************************************************************/
  21753. /*! no static exports found */
  21754. /***/ (function(module, exports, __webpack_require__) {
  21755. //! moment.js locale configuration
  21756. //! locale : Spanish [es]
  21757. //! author : Julio Napurí : https://github.com/julionc
  21758. ;(function (global, factory) {
  21759. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21760. undefined;
  21761. })(this, function (moment) {'use strict';
  21762. //! moment.js locale configuration
  21763. var monthsShortDot =
  21764. 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(
  21765. '_'),
  21766. _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),
  21767. monthsParse = [
  21768. /^ene/i,
  21769. /^feb/i,
  21770. /^mar/i,
  21771. /^abr/i,
  21772. /^may/i,
  21773. /^jun/i,
  21774. /^jul/i,
  21775. /^ago/i,
  21776. /^sep/i,
  21777. /^oct/i,
  21778. /^nov/i,
  21779. /^dic/i],
  21780. monthsRegex =
  21781. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;
  21782. var es = moment.defineLocale('es', {
  21783. months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(
  21784. '_'),
  21785. monthsShort: function monthsShort(m, format) {
  21786. if (!m) {
  21787. return monthsShortDot;
  21788. } else if (/-MMM-/.test(format)) {
  21789. return _monthsShort[m.month()];
  21790. } else {
  21791. return monthsShortDot[m.month()];
  21792. }
  21793. },
  21794. monthsRegex: monthsRegex,
  21795. monthsShortRegex: monthsRegex,
  21796. monthsStrictRegex:
  21797. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
  21798. monthsShortStrictRegex:
  21799. /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
  21800. monthsParse: monthsParse,
  21801. longMonthsParse: monthsParse,
  21802. shortMonthsParse: monthsParse,
  21803. weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),
  21804. weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),
  21805. weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),
  21806. weekdaysParseExact: true,
  21807. longDateFormat: {
  21808. LT: 'H:mm',
  21809. LTS: 'H:mm:ss',
  21810. L: 'DD/MM/YYYY',
  21811. LL: 'D [de] MMMM [de] YYYY',
  21812. LLL: 'D [de] MMMM [de] YYYY H:mm',
  21813. LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm' },
  21814. calendar: {
  21815. sameDay: function sameDay() {
  21816. return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21817. },
  21818. nextDay: function nextDay() {
  21819. return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21820. },
  21821. nextWeek: function nextWeek() {
  21822. return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21823. },
  21824. lastDay: function lastDay() {
  21825. return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21826. },
  21827. lastWeek: function lastWeek() {
  21828. return (
  21829. '[el] dddd [pasado a la' + (
  21830. this.hours() !== 1 ? 's' : '') +
  21831. '] LT');
  21832. },
  21833. sameElse: 'L' },
  21834. relativeTime: {
  21835. future: 'en %s',
  21836. past: 'hace %s',
  21837. s: 'unos segundos',
  21838. ss: '%d segundos',
  21839. m: 'un minuto',
  21840. mm: '%d minutos',
  21841. h: 'una hora',
  21842. hh: '%d horas',
  21843. d: 'un día',
  21844. dd: '%d días',
  21845. w: 'una semana',
  21846. ww: '%d semanas',
  21847. M: 'un mes',
  21848. MM: '%d meses',
  21849. y: 'un año',
  21850. yy: '%d años' },
  21851. dayOfMonthOrdinalParse: /\d{1,2}º/,
  21852. ordinal: '%dº',
  21853. week: {
  21854. dow: 1, // Monday is the first day of the week.
  21855. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21856. },
  21857. invalidDate: 'Fecha inválida' });
  21858. return es;
  21859. });
  21860. /***/ }),
  21861. /* 82 */
  21862. /*!********************************************************************!*\
  21863. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/es-do.js ***!
  21864. \********************************************************************/
  21865. /*! no static exports found */
  21866. /***/ (function(module, exports, __webpack_require__) {
  21867. //! moment.js locale configuration
  21868. //! locale : Spanish (Dominican Republic) [es-do]
  21869. ;(function (global, factory) {
  21870. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21871. undefined;
  21872. })(this, function (moment) {'use strict';
  21873. //! moment.js locale configuration
  21874. var monthsShortDot =
  21875. 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(
  21876. '_'),
  21877. _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),
  21878. monthsParse = [
  21879. /^ene/i,
  21880. /^feb/i,
  21881. /^mar/i,
  21882. /^abr/i,
  21883. /^may/i,
  21884. /^jun/i,
  21885. /^jul/i,
  21886. /^ago/i,
  21887. /^sep/i,
  21888. /^oct/i,
  21889. /^nov/i,
  21890. /^dic/i],
  21891. monthsRegex =
  21892. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;
  21893. var esDo = moment.defineLocale('es-do', {
  21894. months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(
  21895. '_'),
  21896. monthsShort: function monthsShort(m, format) {
  21897. if (!m) {
  21898. return monthsShortDot;
  21899. } else if (/-MMM-/.test(format)) {
  21900. return _monthsShort[m.month()];
  21901. } else {
  21902. return monthsShortDot[m.month()];
  21903. }
  21904. },
  21905. monthsRegex: monthsRegex,
  21906. monthsShortRegex: monthsRegex,
  21907. monthsStrictRegex:
  21908. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
  21909. monthsShortStrictRegex:
  21910. /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
  21911. monthsParse: monthsParse,
  21912. longMonthsParse: monthsParse,
  21913. shortMonthsParse: monthsParse,
  21914. weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),
  21915. weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),
  21916. weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),
  21917. weekdaysParseExact: true,
  21918. longDateFormat: {
  21919. LT: 'h:mm A',
  21920. LTS: 'h:mm:ss A',
  21921. L: 'DD/MM/YYYY',
  21922. LL: 'D [de] MMMM [de] YYYY',
  21923. LLL: 'D [de] MMMM [de] YYYY h:mm A',
  21924. LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A' },
  21925. calendar: {
  21926. sameDay: function sameDay() {
  21927. return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21928. },
  21929. nextDay: function nextDay() {
  21930. return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21931. },
  21932. nextWeek: function nextWeek() {
  21933. return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21934. },
  21935. lastDay: function lastDay() {
  21936. return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  21937. },
  21938. lastWeek: function lastWeek() {
  21939. return (
  21940. '[el] dddd [pasado a la' + (
  21941. this.hours() !== 1 ? 's' : '') +
  21942. '] LT');
  21943. },
  21944. sameElse: 'L' },
  21945. relativeTime: {
  21946. future: 'en %s',
  21947. past: 'hace %s',
  21948. s: 'unos segundos',
  21949. ss: '%d segundos',
  21950. m: 'un minuto',
  21951. mm: '%d minutos',
  21952. h: 'una hora',
  21953. hh: '%d horas',
  21954. d: 'un día',
  21955. dd: '%d días',
  21956. w: 'una semana',
  21957. ww: '%d semanas',
  21958. M: 'un mes',
  21959. MM: '%d meses',
  21960. y: 'un año',
  21961. yy: '%d años' },
  21962. dayOfMonthOrdinalParse: /\d{1,2}º/,
  21963. ordinal: '%dº',
  21964. week: {
  21965. dow: 1, // Monday is the first day of the week.
  21966. doy: 4 // The week that contains Jan 4th is the first week of the year.
  21967. } });
  21968. return esDo;
  21969. });
  21970. /***/ }),
  21971. /* 83 */
  21972. /*!********************************************************************!*\
  21973. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/es-mx.js ***!
  21974. \********************************************************************/
  21975. /*! no static exports found */
  21976. /***/ (function(module, exports, __webpack_require__) {
  21977. //! moment.js locale configuration
  21978. //! locale : Spanish (Mexico) [es-mx]
  21979. //! author : JC Franco : https://github.com/jcfranco
  21980. ;(function (global, factory) {
  21981. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  21982. undefined;
  21983. })(this, function (moment) {'use strict';
  21984. //! moment.js locale configuration
  21985. var monthsShortDot =
  21986. 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(
  21987. '_'),
  21988. _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),
  21989. monthsParse = [
  21990. /^ene/i,
  21991. /^feb/i,
  21992. /^mar/i,
  21993. /^abr/i,
  21994. /^may/i,
  21995. /^jun/i,
  21996. /^jul/i,
  21997. /^ago/i,
  21998. /^sep/i,
  21999. /^oct/i,
  22000. /^nov/i,
  22001. /^dic/i],
  22002. monthsRegex =
  22003. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;
  22004. var esMx = moment.defineLocale('es-mx', {
  22005. months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(
  22006. '_'),
  22007. monthsShort: function monthsShort(m, format) {
  22008. if (!m) {
  22009. return monthsShortDot;
  22010. } else if (/-MMM-/.test(format)) {
  22011. return _monthsShort[m.month()];
  22012. } else {
  22013. return monthsShortDot[m.month()];
  22014. }
  22015. },
  22016. monthsRegex: monthsRegex,
  22017. monthsShortRegex: monthsRegex,
  22018. monthsStrictRegex:
  22019. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
  22020. monthsShortStrictRegex:
  22021. /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
  22022. monthsParse: monthsParse,
  22023. longMonthsParse: monthsParse,
  22024. shortMonthsParse: monthsParse,
  22025. weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),
  22026. weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),
  22027. weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),
  22028. weekdaysParseExact: true,
  22029. longDateFormat: {
  22030. LT: 'H:mm',
  22031. LTS: 'H:mm:ss',
  22032. L: 'DD/MM/YYYY',
  22033. LL: 'D [de] MMMM [de] YYYY',
  22034. LLL: 'D [de] MMMM [de] YYYY H:mm',
  22035. LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm' },
  22036. calendar: {
  22037. sameDay: function sameDay() {
  22038. return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22039. },
  22040. nextDay: function nextDay() {
  22041. return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22042. },
  22043. nextWeek: function nextWeek() {
  22044. return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22045. },
  22046. lastDay: function lastDay() {
  22047. return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22048. },
  22049. lastWeek: function lastWeek() {
  22050. return (
  22051. '[el] dddd [pasado a la' + (
  22052. this.hours() !== 1 ? 's' : '') +
  22053. '] LT');
  22054. },
  22055. sameElse: 'L' },
  22056. relativeTime: {
  22057. future: 'en %s',
  22058. past: 'hace %s',
  22059. s: 'unos segundos',
  22060. ss: '%d segundos',
  22061. m: 'un minuto',
  22062. mm: '%d minutos',
  22063. h: 'una hora',
  22064. hh: '%d horas',
  22065. d: 'un día',
  22066. dd: '%d días',
  22067. w: 'una semana',
  22068. ww: '%d semanas',
  22069. M: 'un mes',
  22070. MM: '%d meses',
  22071. y: 'un año',
  22072. yy: '%d años' },
  22073. dayOfMonthOrdinalParse: /\d{1,2}º/,
  22074. ordinal: '%dº',
  22075. week: {
  22076. dow: 0, // Sunday is the first day of the week.
  22077. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22078. },
  22079. invalidDate: 'Fecha inválida' });
  22080. return esMx;
  22081. });
  22082. /***/ }),
  22083. /* 84 */
  22084. /*!********************************************************************!*\
  22085. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/es-us.js ***!
  22086. \********************************************************************/
  22087. /*! no static exports found */
  22088. /***/ (function(module, exports, __webpack_require__) {
  22089. //! moment.js locale configuration
  22090. //! locale : Spanish (United States) [es-us]
  22091. //! author : bustta : https://github.com/bustta
  22092. //! author : chrisrodz : https://github.com/chrisrodz
  22093. ;(function (global, factory) {
  22094. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22095. undefined;
  22096. })(this, function (moment) {'use strict';
  22097. //! moment.js locale configuration
  22098. var monthsShortDot =
  22099. 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(
  22100. '_'),
  22101. _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),
  22102. monthsParse = [
  22103. /^ene/i,
  22104. /^feb/i,
  22105. /^mar/i,
  22106. /^abr/i,
  22107. /^may/i,
  22108. /^jun/i,
  22109. /^jul/i,
  22110. /^ago/i,
  22111. /^sep/i,
  22112. /^oct/i,
  22113. /^nov/i,
  22114. /^dic/i],
  22115. monthsRegex =
  22116. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;
  22117. var esUs = moment.defineLocale('es-us', {
  22118. months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(
  22119. '_'),
  22120. monthsShort: function monthsShort(m, format) {
  22121. if (!m) {
  22122. return monthsShortDot;
  22123. } else if (/-MMM-/.test(format)) {
  22124. return _monthsShort[m.month()];
  22125. } else {
  22126. return monthsShortDot[m.month()];
  22127. }
  22128. },
  22129. monthsRegex: monthsRegex,
  22130. monthsShortRegex: monthsRegex,
  22131. monthsStrictRegex:
  22132. /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
  22133. monthsShortStrictRegex:
  22134. /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
  22135. monthsParse: monthsParse,
  22136. longMonthsParse: monthsParse,
  22137. shortMonthsParse: monthsParse,
  22138. weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),
  22139. weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),
  22140. weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),
  22141. weekdaysParseExact: true,
  22142. longDateFormat: {
  22143. LT: 'h:mm A',
  22144. LTS: 'h:mm:ss A',
  22145. L: 'MM/DD/YYYY',
  22146. LL: 'D [de] MMMM [de] YYYY',
  22147. LLL: 'D [de] MMMM [de] YYYY h:mm A',
  22148. LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A' },
  22149. calendar: {
  22150. sameDay: function sameDay() {
  22151. return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22152. },
  22153. nextDay: function nextDay() {
  22154. return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22155. },
  22156. nextWeek: function nextWeek() {
  22157. return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22158. },
  22159. lastDay: function lastDay() {
  22160. return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';
  22161. },
  22162. lastWeek: function lastWeek() {
  22163. return (
  22164. '[el] dddd [pasado a la' + (
  22165. this.hours() !== 1 ? 's' : '') +
  22166. '] LT');
  22167. },
  22168. sameElse: 'L' },
  22169. relativeTime: {
  22170. future: 'en %s',
  22171. past: 'hace %s',
  22172. s: 'unos segundos',
  22173. ss: '%d segundos',
  22174. m: 'un minuto',
  22175. mm: '%d minutos',
  22176. h: 'una hora',
  22177. hh: '%d horas',
  22178. d: 'un día',
  22179. dd: '%d días',
  22180. w: 'una semana',
  22181. ww: '%d semanas',
  22182. M: 'un mes',
  22183. MM: '%d meses',
  22184. y: 'un año',
  22185. yy: '%d años' },
  22186. dayOfMonthOrdinalParse: /\d{1,2}º/,
  22187. ordinal: '%dº',
  22188. week: {
  22189. dow: 0, // Sunday is the first day of the week.
  22190. doy: 6 // The week that contains Jan 6th is the first week of the year.
  22191. } });
  22192. return esUs;
  22193. });
  22194. /***/ }),
  22195. /* 85 */
  22196. /*!*****************************************************************!*\
  22197. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/et.js ***!
  22198. \*****************************************************************/
  22199. /*! no static exports found */
  22200. /***/ (function(module, exports, __webpack_require__) {
  22201. //! moment.js locale configuration
  22202. //! locale : Estonian [et]
  22203. //! author : Henry Kehlmann : https://github.com/madhenry
  22204. //! improvements : Illimar Tambek : https://github.com/ragulka
  22205. ;(function (global, factory) {
  22206. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22207. undefined;
  22208. })(this, function (moment) {'use strict';
  22209. //! moment.js locale configuration
  22210. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  22211. var format = {
  22212. s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'],
  22213. ss: [number + 'sekundi', number + 'sekundit'],
  22214. m: ['ühe minuti', 'üks minut'],
  22215. mm: [number + ' minuti', number + ' minutit'],
  22216. h: ['ühe tunni', 'tund aega', 'üks tund'],
  22217. hh: [number + ' tunni', number + ' tundi'],
  22218. d: ['ühe päeva', 'üks päev'],
  22219. M: ['kuu aja', 'kuu aega', 'üks kuu'],
  22220. MM: [number + ' kuu', number + ' kuud'],
  22221. y: ['ühe aasta', 'aasta', 'üks aasta'],
  22222. yy: [number + ' aasta', number + ' aastat'] };
  22223. if (withoutSuffix) {
  22224. return format[key][2] ? format[key][2] : format[key][1];
  22225. }
  22226. return isFuture ? format[key][0] : format[key][1];
  22227. }
  22228. var et = moment.defineLocale('et', {
  22229. months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split(
  22230. '_'),
  22231. monthsShort:
  22232. 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),
  22233. weekdays:
  22234. 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split(
  22235. '_'),
  22236. weekdaysShort: 'P_E_T_K_N_R_L'.split('_'),
  22237. weekdaysMin: 'P_E_T_K_N_R_L'.split('_'),
  22238. longDateFormat: {
  22239. LT: 'H:mm',
  22240. LTS: 'H:mm:ss',
  22241. L: 'DD.MM.YYYY',
  22242. LL: 'D. MMMM YYYY',
  22243. LLL: 'D. MMMM YYYY H:mm',
  22244. LLLL: 'dddd, D. MMMM YYYY H:mm' },
  22245. calendar: {
  22246. sameDay: '[Täna,] LT',
  22247. nextDay: '[Homme,] LT',
  22248. nextWeek: '[Järgmine] dddd LT',
  22249. lastDay: '[Eile,] LT',
  22250. lastWeek: '[Eelmine] dddd LT',
  22251. sameElse: 'L' },
  22252. relativeTime: {
  22253. future: '%s pärast',
  22254. past: '%s tagasi',
  22255. s: processRelativeTime,
  22256. ss: processRelativeTime,
  22257. m: processRelativeTime,
  22258. mm: processRelativeTime,
  22259. h: processRelativeTime,
  22260. hh: processRelativeTime,
  22261. d: processRelativeTime,
  22262. dd: '%d päeva',
  22263. M: processRelativeTime,
  22264. MM: processRelativeTime,
  22265. y: processRelativeTime,
  22266. yy: processRelativeTime },
  22267. dayOfMonthOrdinalParse: /\d{1,2}\./,
  22268. ordinal: '%d.',
  22269. week: {
  22270. dow: 1, // Monday is the first day of the week.
  22271. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22272. } });
  22273. return et;
  22274. });
  22275. /***/ }),
  22276. /* 86 */
  22277. /*!*****************************************************************!*\
  22278. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/eu.js ***!
  22279. \*****************************************************************/
  22280. /*! no static exports found */
  22281. /***/ (function(module, exports, __webpack_require__) {
  22282. //! moment.js locale configuration
  22283. //! locale : Basque [eu]
  22284. //! author : Eneko Illarramendi : https://github.com/eillarra
  22285. ;(function (global, factory) {
  22286. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22287. undefined;
  22288. })(this, function (moment) {'use strict';
  22289. //! moment.js locale configuration
  22290. var eu = moment.defineLocale('eu', {
  22291. months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split(
  22292. '_'),
  22293. monthsShort:
  22294. 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split(
  22295. '_'),
  22296. monthsParseExact: true,
  22297. weekdays:
  22298. 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split(
  22299. '_'),
  22300. weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'),
  22301. weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'),
  22302. weekdaysParseExact: true,
  22303. longDateFormat: {
  22304. LT: 'HH:mm',
  22305. LTS: 'HH:mm:ss',
  22306. L: 'YYYY-MM-DD',
  22307. LL: 'YYYY[ko] MMMM[ren] D[a]',
  22308. LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm',
  22309. LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',
  22310. l: 'YYYY-M-D',
  22311. ll: 'YYYY[ko] MMM D[a]',
  22312. lll: 'YYYY[ko] MMM D[a] HH:mm',
  22313. llll: 'ddd, YYYY[ko] MMM D[a] HH:mm' },
  22314. calendar: {
  22315. sameDay: '[gaur] LT[etan]',
  22316. nextDay: '[bihar] LT[etan]',
  22317. nextWeek: 'dddd LT[etan]',
  22318. lastDay: '[atzo] LT[etan]',
  22319. lastWeek: '[aurreko] dddd LT[etan]',
  22320. sameElse: 'L' },
  22321. relativeTime: {
  22322. future: '%s barru',
  22323. past: 'duela %s',
  22324. s: 'segundo batzuk',
  22325. ss: '%d segundo',
  22326. m: 'minutu bat',
  22327. mm: '%d minutu',
  22328. h: 'ordu bat',
  22329. hh: '%d ordu',
  22330. d: 'egun bat',
  22331. dd: '%d egun',
  22332. M: 'hilabete bat',
  22333. MM: '%d hilabete',
  22334. y: 'urte bat',
  22335. yy: '%d urte' },
  22336. dayOfMonthOrdinalParse: /\d{1,2}\./,
  22337. ordinal: '%d.',
  22338. week: {
  22339. dow: 1, // Monday is the first day of the week.
  22340. doy: 7 // The week that contains Jan 7th is the first week of the year.
  22341. } });
  22342. return eu;
  22343. });
  22344. /***/ }),
  22345. /* 87 */
  22346. /*!*****************************************************************!*\
  22347. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fa.js ***!
  22348. \*****************************************************************/
  22349. /*! no static exports found */
  22350. /***/ (function(module, exports, __webpack_require__) {
  22351. //! moment.js locale configuration
  22352. //! locale : Persian [fa]
  22353. //! author : Ebrahim Byagowi : https://github.com/ebraminio
  22354. ;(function (global, factory) {
  22355. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22356. undefined;
  22357. })(this, function (moment) {'use strict';
  22358. //! moment.js locale configuration
  22359. var symbolMap = {
  22360. 1: '۱',
  22361. 2: '۲',
  22362. 3: '۳',
  22363. 4: '۴',
  22364. 5: '۵',
  22365. 6: '۶',
  22366. 7: '۷',
  22367. 8: '۸',
  22368. 9: '۹',
  22369. 0: '۰' },
  22370. numberMap = {
  22371. '۱': '1',
  22372. '۲': '2',
  22373. '۳': '3',
  22374. '۴': '4',
  22375. '۵': '5',
  22376. '۶': '6',
  22377. '۷': '7',
  22378. '۸': '8',
  22379. '۹': '9',
  22380. '۰': '0' };
  22381. var fa = moment.defineLocale('fa', {
  22382. months: 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(
  22383. '_'),
  22384. monthsShort:
  22385. 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(
  22386. '_'),
  22387. weekdays:
  22388. "\u06CC\u06A9\u200C\u0634\u0646\u0628\u0647_\u062F\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200C\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split(
  22389. '_'),
  22390. weekdaysShort:
  22391. "\u06CC\u06A9\u200C\u0634\u0646\u0628\u0647_\u062F\u0648\u0634\u0646\u0628\u0647_\u0633\u0647\u200C\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split(
  22392. '_'),
  22393. weekdaysMin: 'ی_د_س_چ_پ_ج_ش'.split('_'),
  22394. weekdaysParseExact: true,
  22395. longDateFormat: {
  22396. LT: 'HH:mm',
  22397. LTS: 'HH:mm:ss',
  22398. L: 'DD/MM/YYYY',
  22399. LL: 'D MMMM YYYY',
  22400. LLL: 'D MMMM YYYY HH:mm',
  22401. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  22402. meridiemParse: /قبل از ظهر|بعد از ظهر/,
  22403. isPM: function isPM(input) {
  22404. return /بعد از ظهر/.test(input);
  22405. },
  22406. meridiem: function meridiem(hour, minute, isLower) {
  22407. if (hour < 12) {
  22408. return 'قبل از ظهر';
  22409. } else {
  22410. return 'بعد از ظهر';
  22411. }
  22412. },
  22413. calendar: {
  22414. sameDay: '[امروز ساعت] LT',
  22415. nextDay: '[فردا ساعت] LT',
  22416. nextWeek: 'dddd [ساعت] LT',
  22417. lastDay: '[دیروز ساعت] LT',
  22418. lastWeek: 'dddd [پیش] [ساعت] LT',
  22419. sameElse: 'L' },
  22420. relativeTime: {
  22421. future: 'در %s',
  22422. past: '%s پیش',
  22423. s: 'چند ثانیه',
  22424. ss: '%d ثانیه',
  22425. m: 'یک دقیقه',
  22426. mm: '%d دقیقه',
  22427. h: 'یک ساعت',
  22428. hh: '%d ساعت',
  22429. d: 'یک روز',
  22430. dd: '%d روز',
  22431. M: 'یک ماه',
  22432. MM: '%d ماه',
  22433. y: 'یک سال',
  22434. yy: '%d سال' },
  22435. preparse: function preparse(string) {
  22436. return string.
  22437. replace(/[۰-۹]/g, function (match) {
  22438. return numberMap[match];
  22439. }).
  22440. replace(/،/g, ',');
  22441. },
  22442. postformat: function postformat(string) {
  22443. return string.
  22444. replace(/\d/g, function (match) {
  22445. return symbolMap[match];
  22446. }).
  22447. replace(/,/g, '،');
  22448. },
  22449. dayOfMonthOrdinalParse: /\d{1,2}م/,
  22450. ordinal: '%dم',
  22451. week: {
  22452. dow: 6, // Saturday is the first day of the week.
  22453. doy: 12 // The week that contains Jan 12th is the first week of the year.
  22454. } });
  22455. return fa;
  22456. });
  22457. /***/ }),
  22458. /* 88 */
  22459. /*!*****************************************************************!*\
  22460. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fi.js ***!
  22461. \*****************************************************************/
  22462. /*! no static exports found */
  22463. /***/ (function(module, exports, __webpack_require__) {
  22464. //! moment.js locale configuration
  22465. //! locale : Finnish [fi]
  22466. //! author : Tarmo Aidantausta : https://github.com/bleadof
  22467. ;(function (global, factory) {
  22468. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22469. undefined;
  22470. })(this, function (moment) {'use strict';
  22471. //! moment.js locale configuration
  22472. var numbersPast =
  22473. 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(
  22474. ' '),
  22475. numbersFuture = [
  22476. 'nolla',
  22477. 'yhden',
  22478. 'kahden',
  22479. 'kolmen',
  22480. 'neljän',
  22481. 'viiden',
  22482. 'kuuden',
  22483. numbersPast[7],
  22484. numbersPast[8],
  22485. numbersPast[9]];
  22486. function translate(number, withoutSuffix, key, isFuture) {
  22487. var result = '';
  22488. switch (key) {
  22489. case 's':
  22490. return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';
  22491. case 'ss':
  22492. result = isFuture ? 'sekunnin' : 'sekuntia';
  22493. break;
  22494. case 'm':
  22495. return isFuture ? 'minuutin' : 'minuutti';
  22496. case 'mm':
  22497. result = isFuture ? 'minuutin' : 'minuuttia';
  22498. break;
  22499. case 'h':
  22500. return isFuture ? 'tunnin' : 'tunti';
  22501. case 'hh':
  22502. result = isFuture ? 'tunnin' : 'tuntia';
  22503. break;
  22504. case 'd':
  22505. return isFuture ? 'päivän' : 'päivä';
  22506. case 'dd':
  22507. result = isFuture ? 'päivän' : 'päivää';
  22508. break;
  22509. case 'M':
  22510. return isFuture ? 'kuukauden' : 'kuukausi';
  22511. case 'MM':
  22512. result = isFuture ? 'kuukauden' : 'kuukautta';
  22513. break;
  22514. case 'y':
  22515. return isFuture ? 'vuoden' : 'vuosi';
  22516. case 'yy':
  22517. result = isFuture ? 'vuoden' : 'vuotta';
  22518. break;}
  22519. result = verbalNumber(number, isFuture) + ' ' + result;
  22520. return result;
  22521. }
  22522. function verbalNumber(number, isFuture) {
  22523. return number < 10 ?
  22524. isFuture ?
  22525. numbersFuture[number] :
  22526. numbersPast[number] :
  22527. number;
  22528. }
  22529. var fi = moment.defineLocale('fi', {
  22530. months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split(
  22531. '_'),
  22532. monthsShort:
  22533. 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split(
  22534. '_'),
  22535. weekdays:
  22536. 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split(
  22537. '_'),
  22538. weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'),
  22539. weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'),
  22540. longDateFormat: {
  22541. LT: 'HH.mm',
  22542. LTS: 'HH.mm.ss',
  22543. L: 'DD.MM.YYYY',
  22544. LL: 'Do MMMM[ta] YYYY',
  22545. LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm',
  22546. LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',
  22547. l: 'D.M.YYYY',
  22548. ll: 'Do MMM YYYY',
  22549. lll: 'Do MMM YYYY, [klo] HH.mm',
  22550. llll: 'ddd, Do MMM YYYY, [klo] HH.mm' },
  22551. calendar: {
  22552. sameDay: '[tänään] [klo] LT',
  22553. nextDay: '[huomenna] [klo] LT',
  22554. nextWeek: 'dddd [klo] LT',
  22555. lastDay: '[eilen] [klo] LT',
  22556. lastWeek: '[viime] dddd[na] [klo] LT',
  22557. sameElse: 'L' },
  22558. relativeTime: {
  22559. future: '%s päästä',
  22560. past: '%s sitten',
  22561. s: translate,
  22562. ss: translate,
  22563. m: translate,
  22564. mm: translate,
  22565. h: translate,
  22566. hh: translate,
  22567. d: translate,
  22568. dd: translate,
  22569. M: translate,
  22570. MM: translate,
  22571. y: translate,
  22572. yy: translate },
  22573. dayOfMonthOrdinalParse: /\d{1,2}\./,
  22574. ordinal: '%d.',
  22575. week: {
  22576. dow: 1, // Monday is the first day of the week.
  22577. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22578. } });
  22579. return fi;
  22580. });
  22581. /***/ }),
  22582. /* 89 */
  22583. /*!******************************************************************!*\
  22584. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fil.js ***!
  22585. \******************************************************************/
  22586. /*! no static exports found */
  22587. /***/ (function(module, exports, __webpack_require__) {
  22588. //! moment.js locale configuration
  22589. //! locale : Filipino [fil]
  22590. //! author : Dan Hagman : https://github.com/hagmandan
  22591. //! author : Matthew Co : https://github.com/matthewdeeco
  22592. ;(function (global, factory) {
  22593. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22594. undefined;
  22595. })(this, function (moment) {'use strict';
  22596. //! moment.js locale configuration
  22597. var fil = moment.defineLocale('fil', {
  22598. months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(
  22599. '_'),
  22600. monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),
  22601. weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(
  22602. '_'),
  22603. weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),
  22604. weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),
  22605. longDateFormat: {
  22606. LT: 'HH:mm',
  22607. LTS: 'HH:mm:ss',
  22608. L: 'MM/D/YYYY',
  22609. LL: 'MMMM D, YYYY',
  22610. LLL: 'MMMM D, YYYY HH:mm',
  22611. LLLL: 'dddd, MMMM DD, YYYY HH:mm' },
  22612. calendar: {
  22613. sameDay: 'LT [ngayong araw]',
  22614. nextDay: '[Bukas ng] LT',
  22615. nextWeek: 'LT [sa susunod na] dddd',
  22616. lastDay: 'LT [kahapon]',
  22617. lastWeek: 'LT [noong nakaraang] dddd',
  22618. sameElse: 'L' },
  22619. relativeTime: {
  22620. future: 'sa loob ng %s',
  22621. past: '%s ang nakalipas',
  22622. s: 'ilang segundo',
  22623. ss: '%d segundo',
  22624. m: 'isang minuto',
  22625. mm: '%d minuto',
  22626. h: 'isang oras',
  22627. hh: '%d oras',
  22628. d: 'isang araw',
  22629. dd: '%d araw',
  22630. M: 'isang buwan',
  22631. MM: '%d buwan',
  22632. y: 'isang taon',
  22633. yy: '%d taon' },
  22634. dayOfMonthOrdinalParse: /\d{1,2}/,
  22635. ordinal: function ordinal(number) {
  22636. return number;
  22637. },
  22638. week: {
  22639. dow: 1, // Monday is the first day of the week.
  22640. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22641. } });
  22642. return fil;
  22643. });
  22644. /***/ }),
  22645. /* 90 */
  22646. /*!*****************************************************************!*\
  22647. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fo.js ***!
  22648. \*****************************************************************/
  22649. /*! no static exports found */
  22650. /***/ (function(module, exports, __webpack_require__) {
  22651. //! moment.js locale configuration
  22652. //! locale : Faroese [fo]
  22653. //! author : Ragnar Johannesen : https://github.com/ragnar123
  22654. //! author : Kristian Sakarisson : https://github.com/sakarisson
  22655. ;(function (global, factory) {
  22656. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22657. undefined;
  22658. })(this, function (moment) {'use strict';
  22659. //! moment.js locale configuration
  22660. var fo = moment.defineLocale('fo', {
  22661. months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split(
  22662. '_'),
  22663. monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
  22664. weekdays:
  22665. 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split(
  22666. '_'),
  22667. weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'),
  22668. weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'),
  22669. longDateFormat: {
  22670. LT: 'HH:mm',
  22671. LTS: 'HH:mm:ss',
  22672. L: 'DD/MM/YYYY',
  22673. LL: 'D MMMM YYYY',
  22674. LLL: 'D MMMM YYYY HH:mm',
  22675. LLLL: 'dddd D. MMMM, YYYY HH:mm' },
  22676. calendar: {
  22677. sameDay: '[Í dag kl.] LT',
  22678. nextDay: '[Í morgin kl.] LT',
  22679. nextWeek: 'dddd [kl.] LT',
  22680. lastDay: '[Í gjár kl.] LT',
  22681. lastWeek: '[síðstu] dddd [kl] LT',
  22682. sameElse: 'L' },
  22683. relativeTime: {
  22684. future: 'um %s',
  22685. past: '%s síðani',
  22686. s: 'fá sekund',
  22687. ss: '%d sekundir',
  22688. m: 'ein minuttur',
  22689. mm: '%d minuttir',
  22690. h: 'ein tími',
  22691. hh: '%d tímar',
  22692. d: 'ein dagur',
  22693. dd: '%d dagar',
  22694. M: 'ein mánaður',
  22695. MM: '%d mánaðir',
  22696. y: 'eitt ár',
  22697. yy: '%d ár' },
  22698. dayOfMonthOrdinalParse: /\d{1,2}\./,
  22699. ordinal: '%d.',
  22700. week: {
  22701. dow: 1, // Monday is the first day of the week.
  22702. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22703. } });
  22704. return fo;
  22705. });
  22706. /***/ }),
  22707. /* 91 */
  22708. /*!*****************************************************************!*\
  22709. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fr.js ***!
  22710. \*****************************************************************/
  22711. /*! no static exports found */
  22712. /***/ (function(module, exports, __webpack_require__) {
  22713. //! moment.js locale configuration
  22714. //! locale : French [fr]
  22715. //! author : John Fischer : https://github.com/jfroffice
  22716. ;(function (global, factory) {
  22717. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22718. undefined;
  22719. })(this, function (moment) {'use strict';
  22720. //! moment.js locale configuration
  22721. var monthsStrictRegex =
  22722. /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,
  22723. monthsShortStrictRegex =
  22724. /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?)/i,
  22725. monthsRegex =
  22726. /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,
  22727. monthsParse = [
  22728. /^janv/i,
  22729. /^févr/i,
  22730. /^mars/i,
  22731. /^avr/i,
  22732. /^mai/i,
  22733. /^juin/i,
  22734. /^juil/i,
  22735. /^août/i,
  22736. /^sept/i,
  22737. /^oct/i,
  22738. /^nov/i,
  22739. /^déc/i];
  22740. var fr = moment.defineLocale('fr', {
  22741. months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(
  22742. '_'),
  22743. monthsShort:
  22744. 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(
  22745. '_'),
  22746. monthsRegex: monthsRegex,
  22747. monthsShortRegex: monthsRegex,
  22748. monthsStrictRegex: monthsStrictRegex,
  22749. monthsShortStrictRegex: monthsShortStrictRegex,
  22750. monthsParse: monthsParse,
  22751. longMonthsParse: monthsParse,
  22752. shortMonthsParse: monthsParse,
  22753. weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
  22754. weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
  22755. weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),
  22756. weekdaysParseExact: true,
  22757. longDateFormat: {
  22758. LT: 'HH:mm',
  22759. LTS: 'HH:mm:ss',
  22760. L: 'DD/MM/YYYY',
  22761. LL: 'D MMMM YYYY',
  22762. LLL: 'D MMMM YYYY HH:mm',
  22763. LLLL: 'dddd D MMMM YYYY HH:mm' },
  22764. calendar: {
  22765. sameDay: '[Aujourd’hui à] LT',
  22766. nextDay: '[Demain à] LT',
  22767. nextWeek: 'dddd [à] LT',
  22768. lastDay: '[Hier à] LT',
  22769. lastWeek: 'dddd [dernier à] LT',
  22770. sameElse: 'L' },
  22771. relativeTime: {
  22772. future: 'dans %s',
  22773. past: 'il y a %s',
  22774. s: 'quelques secondes',
  22775. ss: '%d secondes',
  22776. m: 'une minute',
  22777. mm: '%d minutes',
  22778. h: 'une heure',
  22779. hh: '%d heures',
  22780. d: 'un jour',
  22781. dd: '%d jours',
  22782. w: 'une semaine',
  22783. ww: '%d semaines',
  22784. M: 'un mois',
  22785. MM: '%d mois',
  22786. y: 'un an',
  22787. yy: '%d ans' },
  22788. dayOfMonthOrdinalParse: /\d{1,2}(er|)/,
  22789. ordinal: function ordinal(number, period) {
  22790. switch (period) {
  22791. // TODO: Return 'e' when day of month > 1. Move this case inside
  22792. // block for masculine words below.
  22793. // See https://github.com/moment/moment/issues/3375
  22794. case 'D':
  22795. return number + (number === 1 ? 'er' : '');
  22796. // Words with masculine grammatical gender: mois, trimestre, jour
  22797. default:
  22798. case 'M':
  22799. case 'Q':
  22800. case 'DDD':
  22801. case 'd':
  22802. return number + (number === 1 ? 'er' : 'e');
  22803. // Words with feminine grammatical gender: semaine
  22804. case 'w':
  22805. case 'W':
  22806. return number + (number === 1 ? 're' : 'e');}
  22807. },
  22808. week: {
  22809. dow: 1, // Monday is the first day of the week.
  22810. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22811. } });
  22812. return fr;
  22813. });
  22814. /***/ }),
  22815. /* 92 */
  22816. /*!********************************************************************!*\
  22817. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fr-ca.js ***!
  22818. \********************************************************************/
  22819. /*! no static exports found */
  22820. /***/ (function(module, exports, __webpack_require__) {
  22821. //! moment.js locale configuration
  22822. //! locale : French (Canada) [fr-ca]
  22823. //! author : Jonathan Abourbih : https://github.com/jonbca
  22824. ;(function (global, factory) {
  22825. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22826. undefined;
  22827. })(this, function (moment) {'use strict';
  22828. //! moment.js locale configuration
  22829. var frCa = moment.defineLocale('fr-ca', {
  22830. months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(
  22831. '_'),
  22832. monthsShort:
  22833. 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(
  22834. '_'),
  22835. monthsParseExact: true,
  22836. weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
  22837. weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
  22838. weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),
  22839. weekdaysParseExact: true,
  22840. longDateFormat: {
  22841. LT: 'HH:mm',
  22842. LTS: 'HH:mm:ss',
  22843. L: 'YYYY-MM-DD',
  22844. LL: 'D MMMM YYYY',
  22845. LLL: 'D MMMM YYYY HH:mm',
  22846. LLLL: 'dddd D MMMM YYYY HH:mm' },
  22847. calendar: {
  22848. sameDay: '[Aujourd’hui à] LT',
  22849. nextDay: '[Demain à] LT',
  22850. nextWeek: 'dddd [à] LT',
  22851. lastDay: '[Hier à] LT',
  22852. lastWeek: 'dddd [dernier à] LT',
  22853. sameElse: 'L' },
  22854. relativeTime: {
  22855. future: 'dans %s',
  22856. past: 'il y a %s',
  22857. s: 'quelques secondes',
  22858. ss: '%d secondes',
  22859. m: 'une minute',
  22860. mm: '%d minutes',
  22861. h: 'une heure',
  22862. hh: '%d heures',
  22863. d: 'un jour',
  22864. dd: '%d jours',
  22865. M: 'un mois',
  22866. MM: '%d mois',
  22867. y: 'un an',
  22868. yy: '%d ans' },
  22869. dayOfMonthOrdinalParse: /\d{1,2}(er|e)/,
  22870. ordinal: function ordinal(number, period) {
  22871. switch (period) {
  22872. // Words with masculine grammatical gender: mois, trimestre, jour
  22873. default:
  22874. case 'M':
  22875. case 'Q':
  22876. case 'D':
  22877. case 'DDD':
  22878. case 'd':
  22879. return number + (number === 1 ? 'er' : 'e');
  22880. // Words with feminine grammatical gender: semaine
  22881. case 'w':
  22882. case 'W':
  22883. return number + (number === 1 ? 're' : 'e');}
  22884. } });
  22885. return frCa;
  22886. });
  22887. /***/ }),
  22888. /* 93 */
  22889. /*!********************************************************************!*\
  22890. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fr-ch.js ***!
  22891. \********************************************************************/
  22892. /*! no static exports found */
  22893. /***/ (function(module, exports, __webpack_require__) {
  22894. //! moment.js locale configuration
  22895. //! locale : French (Switzerland) [fr-ch]
  22896. //! author : Gaspard Bucher : https://github.com/gaspard
  22897. ;(function (global, factory) {
  22898. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22899. undefined;
  22900. })(this, function (moment) {'use strict';
  22901. //! moment.js locale configuration
  22902. var frCh = moment.defineLocale('fr-ch', {
  22903. months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(
  22904. '_'),
  22905. monthsShort:
  22906. 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(
  22907. '_'),
  22908. monthsParseExact: true,
  22909. weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
  22910. weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
  22911. weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),
  22912. weekdaysParseExact: true,
  22913. longDateFormat: {
  22914. LT: 'HH:mm',
  22915. LTS: 'HH:mm:ss',
  22916. L: 'DD.MM.YYYY',
  22917. LL: 'D MMMM YYYY',
  22918. LLL: 'D MMMM YYYY HH:mm',
  22919. LLLL: 'dddd D MMMM YYYY HH:mm' },
  22920. calendar: {
  22921. sameDay: '[Aujourd’hui à] LT',
  22922. nextDay: '[Demain à] LT',
  22923. nextWeek: 'dddd [à] LT',
  22924. lastDay: '[Hier à] LT',
  22925. lastWeek: 'dddd [dernier à] LT',
  22926. sameElse: 'L' },
  22927. relativeTime: {
  22928. future: 'dans %s',
  22929. past: 'il y a %s',
  22930. s: 'quelques secondes',
  22931. ss: '%d secondes',
  22932. m: 'une minute',
  22933. mm: '%d minutes',
  22934. h: 'une heure',
  22935. hh: '%d heures',
  22936. d: 'un jour',
  22937. dd: '%d jours',
  22938. M: 'un mois',
  22939. MM: '%d mois',
  22940. y: 'un an',
  22941. yy: '%d ans' },
  22942. dayOfMonthOrdinalParse: /\d{1,2}(er|e)/,
  22943. ordinal: function ordinal(number, period) {
  22944. switch (period) {
  22945. // Words with masculine grammatical gender: mois, trimestre, jour
  22946. default:
  22947. case 'M':
  22948. case 'Q':
  22949. case 'D':
  22950. case 'DDD':
  22951. case 'd':
  22952. return number + (number === 1 ? 'er' : 'e');
  22953. // Words with feminine grammatical gender: semaine
  22954. case 'w':
  22955. case 'W':
  22956. return number + (number === 1 ? 're' : 'e');}
  22957. },
  22958. week: {
  22959. dow: 1, // Monday is the first day of the week.
  22960. doy: 4 // The week that contains Jan 4th is the first week of the year.
  22961. } });
  22962. return frCh;
  22963. });
  22964. /***/ }),
  22965. /* 94 */
  22966. /*!*****************************************************************!*\
  22967. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/fy.js ***!
  22968. \*****************************************************************/
  22969. /*! no static exports found */
  22970. /***/ (function(module, exports, __webpack_require__) {
  22971. //! moment.js locale configuration
  22972. //! locale : Frisian [fy]
  22973. //! author : Robin van der Vliet : https://github.com/robin0van0der0v
  22974. ;(function (global, factory) {
  22975. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  22976. undefined;
  22977. })(this, function (moment) {'use strict';
  22978. //! moment.js locale configuration
  22979. var monthsShortWithDots =
  22980. 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),
  22981. monthsShortWithoutDots =
  22982. 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');
  22983. var fy = moment.defineLocale('fy', {
  22984. months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split(
  22985. '_'),
  22986. monthsShort: function monthsShort(m, format) {
  22987. if (!m) {
  22988. return monthsShortWithDots;
  22989. } else if (/-MMM-/.test(format)) {
  22990. return monthsShortWithoutDots[m.month()];
  22991. } else {
  22992. return monthsShortWithDots[m.month()];
  22993. }
  22994. },
  22995. monthsParseExact: true,
  22996. weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split(
  22997. '_'),
  22998. weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'),
  22999. weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),
  23000. weekdaysParseExact: true,
  23001. longDateFormat: {
  23002. LT: 'HH:mm',
  23003. LTS: 'HH:mm:ss',
  23004. L: 'DD-MM-YYYY',
  23005. LL: 'D MMMM YYYY',
  23006. LLL: 'D MMMM YYYY HH:mm',
  23007. LLLL: 'dddd D MMMM YYYY HH:mm' },
  23008. calendar: {
  23009. sameDay: '[hjoed om] LT',
  23010. nextDay: '[moarn om] LT',
  23011. nextWeek: 'dddd [om] LT',
  23012. lastDay: '[juster om] LT',
  23013. lastWeek: '[ôfrûne] dddd [om] LT',
  23014. sameElse: 'L' },
  23015. relativeTime: {
  23016. future: 'oer %s',
  23017. past: '%s lyn',
  23018. s: 'in pear sekonden',
  23019. ss: '%d sekonden',
  23020. m: 'ien minút',
  23021. mm: '%d minuten',
  23022. h: 'ien oere',
  23023. hh: '%d oeren',
  23024. d: 'ien dei',
  23025. dd: '%d dagen',
  23026. M: 'ien moanne',
  23027. MM: '%d moannen',
  23028. y: 'ien jier',
  23029. yy: '%d jierren' },
  23030. dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
  23031. ordinal: function ordinal(number) {
  23032. return (
  23033. number + (
  23034. number === 1 || number === 8 || number >= 20 ? 'ste' : 'de'));
  23035. },
  23036. week: {
  23037. dow: 1, // Monday is the first day of the week.
  23038. doy: 4 // The week that contains Jan 4th is the first week of the year.
  23039. } });
  23040. return fy;
  23041. });
  23042. /***/ }),
  23043. /* 95 */
  23044. /*!*****************************************************************!*\
  23045. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ga.js ***!
  23046. \*****************************************************************/
  23047. /*! no static exports found */
  23048. /***/ (function(module, exports, __webpack_require__) {
  23049. //! moment.js locale configuration
  23050. //! locale : Irish or Irish Gaelic [ga]
  23051. //! author : André Silva : https://github.com/askpt
  23052. ;(function (global, factory) {
  23053. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23054. undefined;
  23055. })(this, function (moment) {'use strict';
  23056. //! moment.js locale configuration
  23057. var months = [
  23058. 'Eanáir',
  23059. 'Feabhra',
  23060. 'Márta',
  23061. 'Aibreán',
  23062. 'Bealtaine',
  23063. 'Meitheamh',
  23064. 'Iúil',
  23065. 'Lúnasa',
  23066. 'Meán Fómhair',
  23067. 'Deireadh Fómhair',
  23068. 'Samhain',
  23069. 'Nollaig'],
  23070. monthsShort = [
  23071. 'Ean',
  23072. 'Feabh',
  23073. 'Márt',
  23074. 'Aib',
  23075. 'Beal',
  23076. 'Meith',
  23077. 'Iúil',
  23078. 'Lún',
  23079. 'M.F.',
  23080. 'D.F.',
  23081. 'Samh',
  23082. 'Noll'],
  23083. weekdays = [
  23084. 'Dé Domhnaigh',
  23085. 'Dé Luain',
  23086. 'Dé Máirt',
  23087. 'Dé Céadaoin',
  23088. 'Déardaoin',
  23089. 'Dé hAoine',
  23090. 'Dé Sathairn'],
  23091. weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'],
  23092. weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa'];
  23093. var ga = moment.defineLocale('ga', {
  23094. months: months,
  23095. monthsShort: monthsShort,
  23096. monthsParseExact: true,
  23097. weekdays: weekdays,
  23098. weekdaysShort: weekdaysShort,
  23099. weekdaysMin: weekdaysMin,
  23100. longDateFormat: {
  23101. LT: 'HH:mm',
  23102. LTS: 'HH:mm:ss',
  23103. L: 'DD/MM/YYYY',
  23104. LL: 'D MMMM YYYY',
  23105. LLL: 'D MMMM YYYY HH:mm',
  23106. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  23107. calendar: {
  23108. sameDay: '[Inniu ag] LT',
  23109. nextDay: '[Amárach ag] LT',
  23110. nextWeek: 'dddd [ag] LT',
  23111. lastDay: '[Inné ag] LT',
  23112. lastWeek: 'dddd [seo caite] [ag] LT',
  23113. sameElse: 'L' },
  23114. relativeTime: {
  23115. future: 'i %s',
  23116. past: '%s ó shin',
  23117. s: 'cúpla soicind',
  23118. ss: '%d soicind',
  23119. m: 'nóiméad',
  23120. mm: '%d nóiméad',
  23121. h: 'uair an chloig',
  23122. hh: '%d uair an chloig',
  23123. d: 'lá',
  23124. dd: '%d lá',
  23125. M: 'mí',
  23126. MM: '%d míonna',
  23127. y: 'bliain',
  23128. yy: '%d bliain' },
  23129. dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/,
  23130. ordinal: function ordinal(number) {
  23131. var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';
  23132. return number + output;
  23133. },
  23134. week: {
  23135. dow: 1, // Monday is the first day of the week.
  23136. doy: 4 // The week that contains Jan 4th is the first week of the year.
  23137. } });
  23138. return ga;
  23139. });
  23140. /***/ }),
  23141. /* 96 */
  23142. /*!*****************************************************************!*\
  23143. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/gd.js ***!
  23144. \*****************************************************************/
  23145. /*! no static exports found */
  23146. /***/ (function(module, exports, __webpack_require__) {
  23147. //! moment.js locale configuration
  23148. //! locale : Scottish Gaelic [gd]
  23149. //! author : Jon Ashdown : https://github.com/jonashdown
  23150. ;(function (global, factory) {
  23151. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23152. undefined;
  23153. })(this, function (moment) {'use strict';
  23154. //! moment.js locale configuration
  23155. var months = [
  23156. 'Am Faoilleach',
  23157. 'An Gearran',
  23158. 'Am Màrt',
  23159. 'An Giblean',
  23160. 'An Cèitean',
  23161. 'An t-Ògmhios',
  23162. 'An t-Iuchar',
  23163. 'An Lùnastal',
  23164. 'An t-Sultain',
  23165. 'An Dàmhair',
  23166. 'An t-Samhain',
  23167. 'An Dùbhlachd'],
  23168. monthsShort = [
  23169. 'Faoi',
  23170. 'Gear',
  23171. 'Màrt',
  23172. 'Gibl',
  23173. 'Cèit',
  23174. 'Ògmh',
  23175. 'Iuch',
  23176. 'Lùn',
  23177. 'Sult',
  23178. 'Dàmh',
  23179. 'Samh',
  23180. 'Dùbh'],
  23181. weekdays = [
  23182. 'Didòmhnaich',
  23183. 'Diluain',
  23184. 'Dimàirt',
  23185. 'Diciadain',
  23186. 'Diardaoin',
  23187. 'Dihaoine',
  23188. 'Disathairne'],
  23189. weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],
  23190. weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];
  23191. var gd = moment.defineLocale('gd', {
  23192. months: months,
  23193. monthsShort: monthsShort,
  23194. monthsParseExact: true,
  23195. weekdays: weekdays,
  23196. weekdaysShort: weekdaysShort,
  23197. weekdaysMin: weekdaysMin,
  23198. longDateFormat: {
  23199. LT: 'HH:mm',
  23200. LTS: 'HH:mm:ss',
  23201. L: 'DD/MM/YYYY',
  23202. LL: 'D MMMM YYYY',
  23203. LLL: 'D MMMM YYYY HH:mm',
  23204. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  23205. calendar: {
  23206. sameDay: '[An-diugh aig] LT',
  23207. nextDay: '[A-màireach aig] LT',
  23208. nextWeek: 'dddd [aig] LT',
  23209. lastDay: '[An-dè aig] LT',
  23210. lastWeek: 'dddd [seo chaidh] [aig] LT',
  23211. sameElse: 'L' },
  23212. relativeTime: {
  23213. future: 'ann an %s',
  23214. past: 'bho chionn %s',
  23215. s: 'beagan diogan',
  23216. ss: '%d diogan',
  23217. m: 'mionaid',
  23218. mm: '%d mionaidean',
  23219. h: 'uair',
  23220. hh: '%d uairean',
  23221. d: 'latha',
  23222. dd: '%d latha',
  23223. M: 'mìos',
  23224. MM: '%d mìosan',
  23225. y: 'bliadhna',
  23226. yy: '%d bliadhna' },
  23227. dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/,
  23228. ordinal: function ordinal(number) {
  23229. var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';
  23230. return number + output;
  23231. },
  23232. week: {
  23233. dow: 1, // Monday is the first day of the week.
  23234. doy: 4 // The week that contains Jan 4th is the first week of the year.
  23235. } });
  23236. return gd;
  23237. });
  23238. /***/ }),
  23239. /* 97 */
  23240. /*!*****************************************************************!*\
  23241. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/gl.js ***!
  23242. \*****************************************************************/
  23243. /*! no static exports found */
  23244. /***/ (function(module, exports, __webpack_require__) {
  23245. //! moment.js locale configuration
  23246. //! locale : Galician [gl]
  23247. //! author : Juan G. Hurtado : https://github.com/juanghurtado
  23248. ;(function (global, factory) {
  23249. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23250. undefined;
  23251. })(this, function (moment) {'use strict';
  23252. //! moment.js locale configuration
  23253. var gl = moment.defineLocale('gl', {
  23254. months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split(
  23255. '_'),
  23256. monthsShort:
  23257. 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split(
  23258. '_'),
  23259. monthsParseExact: true,
  23260. weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),
  23261. weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),
  23262. weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'),
  23263. weekdaysParseExact: true,
  23264. longDateFormat: {
  23265. LT: 'H:mm',
  23266. LTS: 'H:mm:ss',
  23267. L: 'DD/MM/YYYY',
  23268. LL: 'D [de] MMMM [de] YYYY',
  23269. LLL: 'D [de] MMMM [de] YYYY H:mm',
  23270. LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm' },
  23271. calendar: {
  23272. sameDay: function sameDay() {
  23273. return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';
  23274. },
  23275. nextDay: function nextDay() {
  23276. return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';
  23277. },
  23278. nextWeek: function nextWeek() {
  23279. return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT';
  23280. },
  23281. lastDay: function lastDay() {
  23282. return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT';
  23283. },
  23284. lastWeek: function lastWeek() {
  23285. return (
  23286. '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT');
  23287. },
  23288. sameElse: 'L' },
  23289. relativeTime: {
  23290. future: function future(str) {
  23291. if (str.indexOf('un') === 0) {
  23292. return 'n' + str;
  23293. }
  23294. return 'en ' + str;
  23295. },
  23296. past: 'hai %s',
  23297. s: 'uns segundos',
  23298. ss: '%d segundos',
  23299. m: 'un minuto',
  23300. mm: '%d minutos',
  23301. h: 'unha hora',
  23302. hh: '%d horas',
  23303. d: 'un día',
  23304. dd: '%d días',
  23305. M: 'un mes',
  23306. MM: '%d meses',
  23307. y: 'un ano',
  23308. yy: '%d anos' },
  23309. dayOfMonthOrdinalParse: /\d{1,2}º/,
  23310. ordinal: '%dº',
  23311. week: {
  23312. dow: 1, // Monday is the first day of the week.
  23313. doy: 4 // The week that contains Jan 4th is the first week of the year.
  23314. } });
  23315. return gl;
  23316. });
  23317. /***/ }),
  23318. /* 98 */
  23319. /*!***********************************************************************!*\
  23320. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/gom-deva.js ***!
  23321. \***********************************************************************/
  23322. /*! no static exports found */
  23323. /***/ (function(module, exports, __webpack_require__) {
  23324. //! moment.js locale configuration
  23325. //! locale : Konkani Devanagari script [gom-deva]
  23326. //! author : The Discoverer : https://github.com/WikiDiscoverer
  23327. ;(function (global, factory) {
  23328. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23329. undefined;
  23330. })(this, function (moment) {'use strict';
  23331. //! moment.js locale configuration
  23332. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  23333. var format = {
  23334. s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'],
  23335. ss: [number + ' सॅकंडांनी', number + ' सॅकंड'],
  23336. m: ['एका मिणटान', 'एक मिनूट'],
  23337. mm: [number + ' मिणटांनी', number + ' मिणटां'],
  23338. h: ['एका वरान', 'एक वर'],
  23339. hh: [number + ' वरांनी', number + ' वरां'],
  23340. d: ['एका दिसान', 'एक दीस'],
  23341. dd: [number + ' दिसांनी', number + ' दीस'],
  23342. M: ['एका म्हयन्यान', 'एक म्हयनो'],
  23343. MM: [number + ' म्हयन्यानी', number + ' म्हयने'],
  23344. y: ['एका वर्सान', 'एक वर्स'],
  23345. yy: [number + ' वर्सांनी', number + ' वर्सां'] };
  23346. return isFuture ? format[key][0] : format[key][1];
  23347. }
  23348. var gomDeva = moment.defineLocale('gom-deva', {
  23349. months: {
  23350. standalone:
  23351. 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(
  23352. '_'),
  23353. format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split(
  23354. '_'),
  23355. isFormat: /MMMM(\s)+D[oD]?/ },
  23356. monthsShort:
  23357. 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(
  23358. '_'),
  23359. monthsParseExact: true,
  23360. weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'),
  23361. weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'),
  23362. weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'),
  23363. weekdaysParseExact: true,
  23364. longDateFormat: {
  23365. LT: 'A h:mm [वाजतां]',
  23366. LTS: 'A h:mm:ss [वाजतां]',
  23367. L: 'DD-MM-YYYY',
  23368. LL: 'D MMMM YYYY',
  23369. LLL: 'D MMMM YYYY A h:mm [वाजतां]',
  23370. LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]',
  23371. llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]' },
  23372. calendar: {
  23373. sameDay: '[आयज] LT',
  23374. nextDay: '[फाल्यां] LT',
  23375. nextWeek: '[फुडलो] dddd[,] LT',
  23376. lastDay: '[काल] LT',
  23377. lastWeek: '[फाटलो] dddd[,] LT',
  23378. sameElse: 'L' },
  23379. relativeTime: {
  23380. future: '%s',
  23381. past: '%s आदीं',
  23382. s: processRelativeTime,
  23383. ss: processRelativeTime,
  23384. m: processRelativeTime,
  23385. mm: processRelativeTime,
  23386. h: processRelativeTime,
  23387. hh: processRelativeTime,
  23388. d: processRelativeTime,
  23389. dd: processRelativeTime,
  23390. M: processRelativeTime,
  23391. MM: processRelativeTime,
  23392. y: processRelativeTime,
  23393. yy: processRelativeTime },
  23394. dayOfMonthOrdinalParse: /\d{1,2}(वेर)/,
  23395. ordinal: function ordinal(number, period) {
  23396. switch (period) {
  23397. // the ordinal 'वेर' only applies to day of the month
  23398. case 'D':
  23399. return number + 'वेर';
  23400. default:
  23401. case 'M':
  23402. case 'Q':
  23403. case 'DDD':
  23404. case 'd':
  23405. case 'w':
  23406. case 'W':
  23407. return number;}
  23408. },
  23409. week: {
  23410. dow: 0, // Sunday is the first day of the week
  23411. doy: 3 // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)
  23412. },
  23413. meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,
  23414. meridiemHour: function meridiemHour(hour, meridiem) {
  23415. if (hour === 12) {
  23416. hour = 0;
  23417. }
  23418. if (meridiem === 'राती') {
  23419. return hour < 4 ? hour : hour + 12;
  23420. } else if (meridiem === 'सकाळीं') {
  23421. return hour;
  23422. } else if (meridiem === 'दनपारां') {
  23423. return hour > 12 ? hour : hour + 12;
  23424. } else if (meridiem === 'सांजे') {
  23425. return hour + 12;
  23426. }
  23427. },
  23428. meridiem: function meridiem(hour, minute, isLower) {
  23429. if (hour < 4) {
  23430. return 'राती';
  23431. } else if (hour < 12) {
  23432. return 'सकाळीं';
  23433. } else if (hour < 16) {
  23434. return 'दनपारां';
  23435. } else if (hour < 20) {
  23436. return 'सांजे';
  23437. } else {
  23438. return 'राती';
  23439. }
  23440. } });
  23441. return gomDeva;
  23442. });
  23443. /***/ }),
  23444. /* 99 */
  23445. /*!***********************************************************************!*\
  23446. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/gom-latn.js ***!
  23447. \***********************************************************************/
  23448. /*! no static exports found */
  23449. /***/ (function(module, exports, __webpack_require__) {
  23450. //! moment.js locale configuration
  23451. //! locale : Konkani Latin script [gom-latn]
  23452. //! author : The Discoverer : https://github.com/WikiDiscoverer
  23453. ;(function (global, factory) {
  23454. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23455. undefined;
  23456. })(this, function (moment) {'use strict';
  23457. //! moment.js locale configuration
  23458. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  23459. var format = {
  23460. s: ['thoddea sekondamni', 'thodde sekond'],
  23461. ss: [number + ' sekondamni', number + ' sekond'],
  23462. m: ['eka mintan', 'ek minut'],
  23463. mm: [number + ' mintamni', number + ' mintam'],
  23464. h: ['eka voran', 'ek vor'],
  23465. hh: [number + ' voramni', number + ' voram'],
  23466. d: ['eka disan', 'ek dis'],
  23467. dd: [number + ' disamni', number + ' dis'],
  23468. M: ['eka mhoinean', 'ek mhoino'],
  23469. MM: [number + ' mhoineamni', number + ' mhoine'],
  23470. y: ['eka vorsan', 'ek voros'],
  23471. yy: [number + ' vorsamni', number + ' vorsam'] };
  23472. return isFuture ? format[key][0] : format[key][1];
  23473. }
  23474. var gomLatn = moment.defineLocale('gom-latn', {
  23475. months: {
  23476. standalone:
  23477. 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split(
  23478. '_'),
  23479. format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split(
  23480. '_'),
  23481. isFormat: /MMMM(\s)+D[oD]?/ },
  23482. monthsShort:
  23483. 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),
  23484. monthsParseExact: true,
  23485. weekdays: "Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split('_'),
  23486. weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),
  23487. weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),
  23488. weekdaysParseExact: true,
  23489. longDateFormat: {
  23490. LT: 'A h:mm [vazta]',
  23491. LTS: 'A h:mm:ss [vazta]',
  23492. L: 'DD-MM-YYYY',
  23493. LL: 'D MMMM YYYY',
  23494. LLL: 'D MMMM YYYY A h:mm [vazta]',
  23495. LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]',
  23496. llll: 'ddd, D MMM YYYY, A h:mm [vazta]' },
  23497. calendar: {
  23498. sameDay: '[Aiz] LT',
  23499. nextDay: '[Faleam] LT',
  23500. nextWeek: '[Fuddlo] dddd[,] LT',
  23501. lastDay: '[Kal] LT',
  23502. lastWeek: '[Fattlo] dddd[,] LT',
  23503. sameElse: 'L' },
  23504. relativeTime: {
  23505. future: '%s',
  23506. past: '%s adim',
  23507. s: processRelativeTime,
  23508. ss: processRelativeTime,
  23509. m: processRelativeTime,
  23510. mm: processRelativeTime,
  23511. h: processRelativeTime,
  23512. hh: processRelativeTime,
  23513. d: processRelativeTime,
  23514. dd: processRelativeTime,
  23515. M: processRelativeTime,
  23516. MM: processRelativeTime,
  23517. y: processRelativeTime,
  23518. yy: processRelativeTime },
  23519. dayOfMonthOrdinalParse: /\d{1,2}(er)/,
  23520. ordinal: function ordinal(number, period) {
  23521. switch (period) {
  23522. // the ordinal 'er' only applies to day of the month
  23523. case 'D':
  23524. return number + 'er';
  23525. default:
  23526. case 'M':
  23527. case 'Q':
  23528. case 'DDD':
  23529. case 'd':
  23530. case 'w':
  23531. case 'W':
  23532. return number;}
  23533. },
  23534. week: {
  23535. dow: 0, // Sunday is the first day of the week
  23536. doy: 3 // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)
  23537. },
  23538. meridiemParse: /rati|sokallim|donparam|sanje/,
  23539. meridiemHour: function meridiemHour(hour, meridiem) {
  23540. if (hour === 12) {
  23541. hour = 0;
  23542. }
  23543. if (meridiem === 'rati') {
  23544. return hour < 4 ? hour : hour + 12;
  23545. } else if (meridiem === 'sokallim') {
  23546. return hour;
  23547. } else if (meridiem === 'donparam') {
  23548. return hour > 12 ? hour : hour + 12;
  23549. } else if (meridiem === 'sanje') {
  23550. return hour + 12;
  23551. }
  23552. },
  23553. meridiem: function meridiem(hour, minute, isLower) {
  23554. if (hour < 4) {
  23555. return 'rati';
  23556. } else if (hour < 12) {
  23557. return 'sokallim';
  23558. } else if (hour < 16) {
  23559. return 'donparam';
  23560. } else if (hour < 20) {
  23561. return 'sanje';
  23562. } else {
  23563. return 'rati';
  23564. }
  23565. } });
  23566. return gomLatn;
  23567. });
  23568. /***/ }),
  23569. /* 100 */
  23570. /*!*****************************************************************!*\
  23571. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/gu.js ***!
  23572. \*****************************************************************/
  23573. /*! no static exports found */
  23574. /***/ (function(module, exports, __webpack_require__) {
  23575. //! moment.js locale configuration
  23576. //! locale : Gujarati [gu]
  23577. //! author : Kaushik Thanki : https://github.com/Kaushik1987
  23578. ;(function (global, factory) {
  23579. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23580. undefined;
  23581. })(this, function (moment) {'use strict';
  23582. //! moment.js locale configuration
  23583. var symbolMap = {
  23584. 1: '૧',
  23585. 2: '૨',
  23586. 3: '૩',
  23587. 4: '૪',
  23588. 5: '૫',
  23589. 6: '૬',
  23590. 7: '૭',
  23591. 8: '૮',
  23592. 9: '૯',
  23593. 0: '૦' },
  23594. numberMap = {
  23595. '૧': '1',
  23596. '૨': '2',
  23597. '૩': '3',
  23598. '૪': '4',
  23599. '૫': '5',
  23600. '૬': '6',
  23601. '૭': '7',
  23602. '૮': '8',
  23603. '૯': '9',
  23604. '૦': '0' };
  23605. var gu = moment.defineLocale('gu', {
  23606. months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split(
  23607. '_'),
  23608. monthsShort:
  23609. 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split(
  23610. '_'),
  23611. monthsParseExact: true,
  23612. weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split(
  23613. '_'),
  23614. weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),
  23615. weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),
  23616. longDateFormat: {
  23617. LT: 'A h:mm વાગ્યે',
  23618. LTS: 'A h:mm:ss વાગ્યે',
  23619. L: 'DD/MM/YYYY',
  23620. LL: 'D MMMM YYYY',
  23621. LLL: 'D MMMM YYYY, A h:mm વાગ્યે',
  23622. LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે' },
  23623. calendar: {
  23624. sameDay: '[આજ] LT',
  23625. nextDay: '[કાલે] LT',
  23626. nextWeek: 'dddd, LT',
  23627. lastDay: '[ગઇકાલે] LT',
  23628. lastWeek: '[પાછલા] dddd, LT',
  23629. sameElse: 'L' },
  23630. relativeTime: {
  23631. future: '%s મા',
  23632. past: '%s પહેલા',
  23633. s: 'અમુક પળો',
  23634. ss: '%d સેકંડ',
  23635. m: 'એક મિનિટ',
  23636. mm: '%d મિનિટ',
  23637. h: 'એક કલાક',
  23638. hh: '%d કલાક',
  23639. d: 'એક દિવસ',
  23640. dd: '%d દિવસ',
  23641. M: 'એક મહિનો',
  23642. MM: '%d મહિનો',
  23643. y: 'એક વર્ષ',
  23644. yy: '%d વર્ષ' },
  23645. preparse: function preparse(string) {
  23646. return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {
  23647. return numberMap[match];
  23648. });
  23649. },
  23650. postformat: function postformat(string) {
  23651. return string.replace(/\d/g, function (match) {
  23652. return symbolMap[match];
  23653. });
  23654. },
  23655. // Gujarati notation for meridiems are quite fuzzy in practice. While there exists
  23656. // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.
  23657. meridiemParse: /રાત|બપોર|સવાર|સાંજ/,
  23658. meridiemHour: function meridiemHour(hour, meridiem) {
  23659. if (hour === 12) {
  23660. hour = 0;
  23661. }
  23662. if (meridiem === 'રાત') {
  23663. return hour < 4 ? hour : hour + 12;
  23664. } else if (meridiem === 'સવાર') {
  23665. return hour;
  23666. } else if (meridiem === 'બપોર') {
  23667. return hour >= 10 ? hour : hour + 12;
  23668. } else if (meridiem === 'સાંજ') {
  23669. return hour + 12;
  23670. }
  23671. },
  23672. meridiem: function meridiem(hour, minute, isLower) {
  23673. if (hour < 4) {
  23674. return 'રાત';
  23675. } else if (hour < 10) {
  23676. return 'સવાર';
  23677. } else if (hour < 17) {
  23678. return 'બપોર';
  23679. } else if (hour < 20) {
  23680. return 'સાંજ';
  23681. } else {
  23682. return 'રાત';
  23683. }
  23684. },
  23685. week: {
  23686. dow: 0, // Sunday is the first day of the week.
  23687. doy: 6 // The week that contains Jan 6th is the first week of the year.
  23688. } });
  23689. return gu;
  23690. });
  23691. /***/ }),
  23692. /* 101 */
  23693. /*!*****************************************************************!*\
  23694. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/he.js ***!
  23695. \*****************************************************************/
  23696. /*! no static exports found */
  23697. /***/ (function(module, exports, __webpack_require__) {
  23698. //! moment.js locale configuration
  23699. //! locale : Hebrew [he]
  23700. //! author : Tomer Cohen : https://github.com/tomer
  23701. //! author : Moshe Simantov : https://github.com/DevelopmentIL
  23702. //! author : Tal Ater : https://github.com/TalAter
  23703. ;(function (global, factory) {
  23704. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23705. undefined;
  23706. })(this, function (moment) {'use strict';
  23707. //! moment.js locale configuration
  23708. var he = moment.defineLocale('he', {
  23709. months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split(
  23710. '_'),
  23711. monthsShort:
  23712. 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),
  23713. weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),
  23714. weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),
  23715. weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'),
  23716. longDateFormat: {
  23717. LT: 'HH:mm',
  23718. LTS: 'HH:mm:ss',
  23719. L: 'DD/MM/YYYY',
  23720. LL: 'D [ב]MMMM YYYY',
  23721. LLL: 'D [ב]MMMM YYYY HH:mm',
  23722. LLLL: 'dddd, D [ב]MMMM YYYY HH:mm',
  23723. l: 'D/M/YYYY',
  23724. ll: 'D MMM YYYY',
  23725. lll: 'D MMM YYYY HH:mm',
  23726. llll: 'ddd, D MMM YYYY HH:mm' },
  23727. calendar: {
  23728. sameDay: '[היום ב־]LT',
  23729. nextDay: '[מחר ב־]LT',
  23730. nextWeek: 'dddd [בשעה] LT',
  23731. lastDay: '[אתמול ב־]LT',
  23732. lastWeek: '[ביום] dddd [האחרון בשעה] LT',
  23733. sameElse: 'L' },
  23734. relativeTime: {
  23735. future: 'בעוד %s',
  23736. past: 'לפני %s',
  23737. s: 'מספר שניות',
  23738. ss: '%d שניות',
  23739. m: 'דקה',
  23740. mm: '%d דקות',
  23741. h: 'שעה',
  23742. hh: function hh(number) {
  23743. if (number === 2) {
  23744. return 'שעתיים';
  23745. }
  23746. return number + ' שעות';
  23747. },
  23748. d: 'יום',
  23749. dd: function dd(number) {
  23750. if (number === 2) {
  23751. return 'יומיים';
  23752. }
  23753. return number + ' ימים';
  23754. },
  23755. M: 'חודש',
  23756. MM: function MM(number) {
  23757. if (number === 2) {
  23758. return 'חודשיים';
  23759. }
  23760. return number + ' חודשים';
  23761. },
  23762. y: 'שנה',
  23763. yy: function yy(number) {
  23764. if (number === 2) {
  23765. return 'שנתיים';
  23766. } else if (number % 10 === 0 && number !== 10) {
  23767. return number + ' שנה';
  23768. }
  23769. return number + ' שנים';
  23770. } },
  23771. meridiemParse:
  23772. /אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,
  23773. isPM: function isPM(input) {
  23774. return /^(אחה"צ|אחרי הצהריים|בערב)$/.test(input);
  23775. },
  23776. meridiem: function meridiem(hour, minute, isLower) {
  23777. if (hour < 5) {
  23778. return 'לפנות בוקר';
  23779. } else if (hour < 10) {
  23780. return 'בבוקר';
  23781. } else if (hour < 12) {
  23782. return isLower ? 'לפנה"צ' : 'לפני הצהריים';
  23783. } else if (hour < 18) {
  23784. return isLower ? 'אחה"צ' : 'אחרי הצהריים';
  23785. } else {
  23786. return 'בערב';
  23787. }
  23788. } });
  23789. return he;
  23790. });
  23791. /***/ }),
  23792. /* 102 */
  23793. /*!*****************************************************************!*\
  23794. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/hi.js ***!
  23795. \*****************************************************************/
  23796. /*! no static exports found */
  23797. /***/ (function(module, exports, __webpack_require__) {
  23798. //! moment.js locale configuration
  23799. //! locale : Hindi [hi]
  23800. //! author : Mayank Singhal : https://github.com/mayanksinghal
  23801. ;(function (global, factory) {
  23802. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23803. undefined;
  23804. })(this, function (moment) {'use strict';
  23805. //! moment.js locale configuration
  23806. var symbolMap = {
  23807. 1: '१',
  23808. 2: '२',
  23809. 3: '३',
  23810. 4: '४',
  23811. 5: '५',
  23812. 6: '६',
  23813. 7: '७',
  23814. 8: '८',
  23815. 9: '९',
  23816. 0: '०' },
  23817. numberMap = {
  23818. '१': '1',
  23819. '२': '2',
  23820. '३': '3',
  23821. '४': '4',
  23822. '५': '5',
  23823. '६': '6',
  23824. '७': '7',
  23825. '८': '8',
  23826. '९': '9',
  23827. '०': '0' },
  23828. monthsParse = [
  23829. /^जन/i,
  23830. /^फ़र|फर/i,
  23831. /^मार्च/i,
  23832. /^अप्रै/i,
  23833. /^मई/i,
  23834. /^जून/i,
  23835. /^जुल/i,
  23836. /^अग/i,
  23837. /^सितं|सित/i,
  23838. /^अक्टू/i,
  23839. /^नव|नवं/i,
  23840. /^दिसं|दिस/i],
  23841. shortMonthsParse = [
  23842. /^जन/i,
  23843. /^फ़र/i,
  23844. /^मार्च/i,
  23845. /^अप्रै/i,
  23846. /^मई/i,
  23847. /^जून/i,
  23848. /^जुल/i,
  23849. /^अग/i,
  23850. /^सित/i,
  23851. /^अक्टू/i,
  23852. /^नव/i,
  23853. /^दिस/i];
  23854. var hi = moment.defineLocale('hi', {
  23855. months: {
  23856. format: 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split(
  23857. '_'),
  23858. standalone:
  23859. 'जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर'.split(
  23860. '_') },
  23861. monthsShort:
  23862. 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),
  23863. weekdays: 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),
  23864. weekdaysShort: 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),
  23865. weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),
  23866. longDateFormat: {
  23867. LT: 'A h:mm बजे',
  23868. LTS: 'A h:mm:ss बजे',
  23869. L: 'DD/MM/YYYY',
  23870. LL: 'D MMMM YYYY',
  23871. LLL: 'D MMMM YYYY, A h:mm बजे',
  23872. LLLL: 'dddd, D MMMM YYYY, A h:mm बजे' },
  23873. monthsParse: monthsParse,
  23874. longMonthsParse: monthsParse,
  23875. shortMonthsParse: shortMonthsParse,
  23876. monthsRegex:
  23877. /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i,
  23878. monthsShortRegex:
  23879. /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i,
  23880. monthsStrictRegex:
  23881. /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i,
  23882. monthsShortStrictRegex:
  23883. /^(जन\.?|फ़र\.?|मार्च?|अप्रै\.?|मई?|जून?|जुल\.?|अग\.?|सित\.?|अक्टू\.?|नव\.?|दिस\.?)/i,
  23884. calendar: {
  23885. sameDay: '[आज] LT',
  23886. nextDay: '[कल] LT',
  23887. nextWeek: 'dddd, LT',
  23888. lastDay: '[कल] LT',
  23889. lastWeek: '[पिछले] dddd, LT',
  23890. sameElse: 'L' },
  23891. relativeTime: {
  23892. future: '%s में',
  23893. past: '%s पहले',
  23894. s: 'कुछ ही क्षण',
  23895. ss: '%d सेकंड',
  23896. m: 'एक मिनट',
  23897. mm: '%d मिनट',
  23898. h: 'एक घंटा',
  23899. hh: '%d घंटे',
  23900. d: 'एक दिन',
  23901. dd: '%d दिन',
  23902. M: 'एक महीने',
  23903. MM: '%d महीने',
  23904. y: 'एक वर्ष',
  23905. yy: '%d वर्ष' },
  23906. preparse: function preparse(string) {
  23907. return string.replace(/[१२३४५६७८९०]/g, function (match) {
  23908. return numberMap[match];
  23909. });
  23910. },
  23911. postformat: function postformat(string) {
  23912. return string.replace(/\d/g, function (match) {
  23913. return symbolMap[match];
  23914. });
  23915. },
  23916. // Hindi notation for meridiems are quite fuzzy in practice. While there exists
  23917. // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.
  23918. meridiemParse: /रात|सुबह|दोपहर|शाम/,
  23919. meridiemHour: function meridiemHour(hour, meridiem) {
  23920. if (hour === 12) {
  23921. hour = 0;
  23922. }
  23923. if (meridiem === 'रात') {
  23924. return hour < 4 ? hour : hour + 12;
  23925. } else if (meridiem === 'सुबह') {
  23926. return hour;
  23927. } else if (meridiem === 'दोपहर') {
  23928. return hour >= 10 ? hour : hour + 12;
  23929. } else if (meridiem === 'शाम') {
  23930. return hour + 12;
  23931. }
  23932. },
  23933. meridiem: function meridiem(hour, minute, isLower) {
  23934. if (hour < 4) {
  23935. return 'रात';
  23936. } else if (hour < 10) {
  23937. return 'सुबह';
  23938. } else if (hour < 17) {
  23939. return 'दोपहर';
  23940. } else if (hour < 20) {
  23941. return 'शाम';
  23942. } else {
  23943. return 'रात';
  23944. }
  23945. },
  23946. week: {
  23947. dow: 0, // Sunday is the first day of the week.
  23948. doy: 6 // The week that contains Jan 6th is the first week of the year.
  23949. } });
  23950. return hi;
  23951. });
  23952. /***/ }),
  23953. /* 103 */
  23954. /*!*****************************************************************!*\
  23955. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/hr.js ***!
  23956. \*****************************************************************/
  23957. /*! no static exports found */
  23958. /***/ (function(module, exports, __webpack_require__) {
  23959. //! moment.js locale configuration
  23960. //! locale : Croatian [hr]
  23961. //! author : Bojan Marković : https://github.com/bmarkovic
  23962. ;(function (global, factory) {
  23963. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  23964. undefined;
  23965. })(this, function (moment) {'use strict';
  23966. //! moment.js locale configuration
  23967. function translate(number, withoutSuffix, key) {
  23968. var result = number + ' ';
  23969. switch (key) {
  23970. case 'ss':
  23971. if (number === 1) {
  23972. result += 'sekunda';
  23973. } else if (number === 2 || number === 3 || number === 4) {
  23974. result += 'sekunde';
  23975. } else {
  23976. result += 'sekundi';
  23977. }
  23978. return result;
  23979. case 'm':
  23980. return withoutSuffix ? 'jedna minuta' : 'jedne minute';
  23981. case 'mm':
  23982. if (number === 1) {
  23983. result += 'minuta';
  23984. } else if (number === 2 || number === 3 || number === 4) {
  23985. result += 'minute';
  23986. } else {
  23987. result += 'minuta';
  23988. }
  23989. return result;
  23990. case 'h':
  23991. return withoutSuffix ? 'jedan sat' : 'jednog sata';
  23992. case 'hh':
  23993. if (number === 1) {
  23994. result += 'sat';
  23995. } else if (number === 2 || number === 3 || number === 4) {
  23996. result += 'sata';
  23997. } else {
  23998. result += 'sati';
  23999. }
  24000. return result;
  24001. case 'dd':
  24002. if (number === 1) {
  24003. result += 'dan';
  24004. } else {
  24005. result += 'dana';
  24006. }
  24007. return result;
  24008. case 'MM':
  24009. if (number === 1) {
  24010. result += 'mjesec';
  24011. } else if (number === 2 || number === 3 || number === 4) {
  24012. result += 'mjeseca';
  24013. } else {
  24014. result += 'mjeseci';
  24015. }
  24016. return result;
  24017. case 'yy':
  24018. if (number === 1) {
  24019. result += 'godina';
  24020. } else if (number === 2 || number === 3 || number === 4) {
  24021. result += 'godine';
  24022. } else {
  24023. result += 'godina';
  24024. }
  24025. return result;}
  24026. }
  24027. var hr = moment.defineLocale('hr', {
  24028. months: {
  24029. format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split(
  24030. '_'),
  24031. standalone:
  24032. 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split(
  24033. '_') },
  24034. monthsShort:
  24035. 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split(
  24036. '_'),
  24037. monthsParseExact: true,
  24038. weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(
  24039. '_'),
  24040. weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
  24041. weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),
  24042. weekdaysParseExact: true,
  24043. longDateFormat: {
  24044. LT: 'H:mm',
  24045. LTS: 'H:mm:ss',
  24046. L: 'DD.MM.YYYY',
  24047. LL: 'Do MMMM YYYY',
  24048. LLL: 'Do MMMM YYYY H:mm',
  24049. LLLL: 'dddd, Do MMMM YYYY H:mm' },
  24050. calendar: {
  24051. sameDay: '[danas u] LT',
  24052. nextDay: '[sutra u] LT',
  24053. nextWeek: function nextWeek() {
  24054. switch (this.day()) {
  24055. case 0:
  24056. return '[u] [nedjelju] [u] LT';
  24057. case 3:
  24058. return '[u] [srijedu] [u] LT';
  24059. case 6:
  24060. return '[u] [subotu] [u] LT';
  24061. case 1:
  24062. case 2:
  24063. case 4:
  24064. case 5:
  24065. return '[u] dddd [u] LT';}
  24066. },
  24067. lastDay: '[jučer u] LT',
  24068. lastWeek: function lastWeek() {
  24069. switch (this.day()) {
  24070. case 0:
  24071. return '[prošlu] [nedjelju] [u] LT';
  24072. case 3:
  24073. return '[prošlu] [srijedu] [u] LT';
  24074. case 6:
  24075. return '[prošle] [subote] [u] LT';
  24076. case 1:
  24077. case 2:
  24078. case 4:
  24079. case 5:
  24080. return '[prošli] dddd [u] LT';}
  24081. },
  24082. sameElse: 'L' },
  24083. relativeTime: {
  24084. future: 'za %s',
  24085. past: 'prije %s',
  24086. s: 'par sekundi',
  24087. ss: translate,
  24088. m: translate,
  24089. mm: translate,
  24090. h: translate,
  24091. hh: translate,
  24092. d: 'dan',
  24093. dd: translate,
  24094. M: 'mjesec',
  24095. MM: translate,
  24096. y: 'godinu',
  24097. yy: translate },
  24098. dayOfMonthOrdinalParse: /\d{1,2}\./,
  24099. ordinal: '%d.',
  24100. week: {
  24101. dow: 1, // Monday is the first day of the week.
  24102. doy: 7 // The week that contains Jan 7th is the first week of the year.
  24103. } });
  24104. return hr;
  24105. });
  24106. /***/ }),
  24107. /* 104 */
  24108. /*!*****************************************************************!*\
  24109. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/hu.js ***!
  24110. \*****************************************************************/
  24111. /*! no static exports found */
  24112. /***/ (function(module, exports, __webpack_require__) {
  24113. //! moment.js locale configuration
  24114. //! locale : Hungarian [hu]
  24115. //! author : Adam Brunner : https://github.com/adambrunner
  24116. //! author : Peter Viszt : https://github.com/passatgt
  24117. ;(function (global, factory) {
  24118. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24119. undefined;
  24120. })(this, function (moment) {'use strict';
  24121. //! moment.js locale configuration
  24122. var weekEndings =
  24123. 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');
  24124. function translate(number, withoutSuffix, key, isFuture) {
  24125. var num = number;
  24126. switch (key) {
  24127. case 's':
  24128. return isFuture || withoutSuffix ?
  24129. 'néhány másodperc' :
  24130. 'néhány másodperce';
  24131. case 'ss':
  24132. return num + (isFuture || withoutSuffix) ?
  24133. ' másodperc' :
  24134. ' másodperce';
  24135. case 'm':
  24136. return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');
  24137. case 'mm':
  24138. return num + (isFuture || withoutSuffix ? ' perc' : ' perce');
  24139. case 'h':
  24140. return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');
  24141. case 'hh':
  24142. return num + (isFuture || withoutSuffix ? ' óra' : ' órája');
  24143. case 'd':
  24144. return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');
  24145. case 'dd':
  24146. return num + (isFuture || withoutSuffix ? ' nap' : ' napja');
  24147. case 'M':
  24148. return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');
  24149. case 'MM':
  24150. return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');
  24151. case 'y':
  24152. return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');
  24153. case 'yy':
  24154. return num + (isFuture || withoutSuffix ? ' év' : ' éve');}
  24155. return '';
  24156. }
  24157. function week(isFuture) {
  24158. return (
  24159. (isFuture ? '' : '[múlt] ') +
  24160. '[' +
  24161. weekEndings[this.day()] +
  24162. '] LT[-kor]');
  24163. }
  24164. var hu = moment.defineLocale('hu', {
  24165. months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split(
  24166. '_'),
  24167. monthsShort:
  24168. 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split(
  24169. '_'),
  24170. monthsParseExact: true,
  24171. weekdays: 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),
  24172. weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),
  24173. weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'),
  24174. longDateFormat: {
  24175. LT: 'H:mm',
  24176. LTS: 'H:mm:ss',
  24177. L: 'YYYY.MM.DD.',
  24178. LL: 'YYYY. MMMM D.',
  24179. LLL: 'YYYY. MMMM D. H:mm',
  24180. LLLL: 'YYYY. MMMM D., dddd H:mm' },
  24181. meridiemParse: /de|du/i,
  24182. isPM: function isPM(input) {
  24183. return input.charAt(1).toLowerCase() === 'u';
  24184. },
  24185. meridiem: function meridiem(hours, minutes, isLower) {
  24186. if (hours < 12) {
  24187. return isLower === true ? 'de' : 'DE';
  24188. } else {
  24189. return isLower === true ? 'du' : 'DU';
  24190. }
  24191. },
  24192. calendar: {
  24193. sameDay: '[ma] LT[-kor]',
  24194. nextDay: '[holnap] LT[-kor]',
  24195. nextWeek: function nextWeek() {
  24196. return week.call(this, true);
  24197. },
  24198. lastDay: '[tegnap] LT[-kor]',
  24199. lastWeek: function lastWeek() {
  24200. return week.call(this, false);
  24201. },
  24202. sameElse: 'L' },
  24203. relativeTime: {
  24204. future: '%s múlva',
  24205. past: '%s',
  24206. s: translate,
  24207. ss: translate,
  24208. m: translate,
  24209. mm: translate,
  24210. h: translate,
  24211. hh: translate,
  24212. d: translate,
  24213. dd: translate,
  24214. M: translate,
  24215. MM: translate,
  24216. y: translate,
  24217. yy: translate },
  24218. dayOfMonthOrdinalParse: /\d{1,2}\./,
  24219. ordinal: '%d.',
  24220. week: {
  24221. dow: 1, // Monday is the first day of the week.
  24222. doy: 4 // The week that contains Jan 4th is the first week of the year.
  24223. } });
  24224. return hu;
  24225. });
  24226. /***/ }),
  24227. /* 105 */
  24228. /*!********************************************************************!*\
  24229. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/hy-am.js ***!
  24230. \********************************************************************/
  24231. /*! no static exports found */
  24232. /***/ (function(module, exports, __webpack_require__) {
  24233. //! moment.js locale configuration
  24234. //! locale : Armenian [hy-am]
  24235. //! author : Armendarabyan : https://github.com/armendarabyan
  24236. ;(function (global, factory) {
  24237. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24238. undefined;
  24239. })(this, function (moment) {'use strict';
  24240. //! moment.js locale configuration
  24241. var hyAm = moment.defineLocale('hy-am', {
  24242. months: {
  24243. format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split(
  24244. '_'),
  24245. standalone:
  24246. 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split(
  24247. '_') },
  24248. monthsShort: 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),
  24249. weekdays:
  24250. 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split(
  24251. '_'),
  24252. weekdaysShort: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),
  24253. weekdaysMin: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),
  24254. longDateFormat: {
  24255. LT: 'HH:mm',
  24256. LTS: 'HH:mm:ss',
  24257. L: 'DD.MM.YYYY',
  24258. LL: 'D MMMM YYYY թ.',
  24259. LLL: 'D MMMM YYYY թ., HH:mm',
  24260. LLLL: 'dddd, D MMMM YYYY թ., HH:mm' },
  24261. calendar: {
  24262. sameDay: '[այսօր] LT',
  24263. nextDay: '[վաղը] LT',
  24264. lastDay: '[երեկ] LT',
  24265. nextWeek: function nextWeek() {
  24266. return 'dddd [օրը ժամը] LT';
  24267. },
  24268. lastWeek: function lastWeek() {
  24269. return '[անցած] dddd [օրը ժամը] LT';
  24270. },
  24271. sameElse: 'L' },
  24272. relativeTime: {
  24273. future: '%s հետո',
  24274. past: '%s առաջ',
  24275. s: 'մի քանի վայրկյան',
  24276. ss: '%d վայրկյան',
  24277. m: 'րոպե',
  24278. mm: '%d րոպե',
  24279. h: 'ժամ',
  24280. hh: '%d ժամ',
  24281. d: 'օր',
  24282. dd: '%d օր',
  24283. M: 'ամիս',
  24284. MM: '%d ամիս',
  24285. y: 'տարի',
  24286. yy: '%d տարի' },
  24287. meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,
  24288. isPM: function isPM(input) {
  24289. return /^(ցերեկվա|երեկոյան)$/.test(input);
  24290. },
  24291. meridiem: function meridiem(hour) {
  24292. if (hour < 4) {
  24293. return 'գիշերվա';
  24294. } else if (hour < 12) {
  24295. return 'առավոտվա';
  24296. } else if (hour < 17) {
  24297. return 'ցերեկվա';
  24298. } else {
  24299. return 'երեկոյան';
  24300. }
  24301. },
  24302. dayOfMonthOrdinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/,
  24303. ordinal: function ordinal(number, period) {
  24304. switch (period) {
  24305. case 'DDD':
  24306. case 'w':
  24307. case 'W':
  24308. case 'DDDo':
  24309. if (number === 1) {
  24310. return number + '-ին';
  24311. }
  24312. return number + '-րդ';
  24313. default:
  24314. return number;}
  24315. },
  24316. week: {
  24317. dow: 1, // Monday is the first day of the week.
  24318. doy: 7 // The week that contains Jan 7th is the first week of the year.
  24319. } });
  24320. return hyAm;
  24321. });
  24322. /***/ }),
  24323. /* 106 */
  24324. /*!*****************************************************************!*\
  24325. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/id.js ***!
  24326. \*****************************************************************/
  24327. /*! no static exports found */
  24328. /***/ (function(module, exports, __webpack_require__) {
  24329. //! moment.js locale configuration
  24330. //! locale : Indonesian [id]
  24331. //! author : Mohammad Satrio Utomo : https://github.com/tyok
  24332. //! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan
  24333. ;(function (global, factory) {
  24334. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24335. undefined;
  24336. })(this, function (moment) {'use strict';
  24337. //! moment.js locale configuration
  24338. var id = moment.defineLocale('id', {
  24339. months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split(
  24340. '_'),
  24341. monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),
  24342. weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),
  24343. weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),
  24344. weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),
  24345. longDateFormat: {
  24346. LT: 'HH.mm',
  24347. LTS: 'HH.mm.ss',
  24348. L: 'DD/MM/YYYY',
  24349. LL: 'D MMMM YYYY',
  24350. LLL: 'D MMMM YYYY [pukul] HH.mm',
  24351. LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm' },
  24352. meridiemParse: /pagi|siang|sore|malam/,
  24353. meridiemHour: function meridiemHour(hour, meridiem) {
  24354. if (hour === 12) {
  24355. hour = 0;
  24356. }
  24357. if (meridiem === 'pagi') {
  24358. return hour;
  24359. } else if (meridiem === 'siang') {
  24360. return hour >= 11 ? hour : hour + 12;
  24361. } else if (meridiem === 'sore' || meridiem === 'malam') {
  24362. return hour + 12;
  24363. }
  24364. },
  24365. meridiem: function meridiem(hours, minutes, isLower) {
  24366. if (hours < 11) {
  24367. return 'pagi';
  24368. } else if (hours < 15) {
  24369. return 'siang';
  24370. } else if (hours < 19) {
  24371. return 'sore';
  24372. } else {
  24373. return 'malam';
  24374. }
  24375. },
  24376. calendar: {
  24377. sameDay: '[Hari ini pukul] LT',
  24378. nextDay: '[Besok pukul] LT',
  24379. nextWeek: 'dddd [pukul] LT',
  24380. lastDay: '[Kemarin pukul] LT',
  24381. lastWeek: 'dddd [lalu pukul] LT',
  24382. sameElse: 'L' },
  24383. relativeTime: {
  24384. future: 'dalam %s',
  24385. past: '%s yang lalu',
  24386. s: 'beberapa detik',
  24387. ss: '%d detik',
  24388. m: 'semenit',
  24389. mm: '%d menit',
  24390. h: 'sejam',
  24391. hh: '%d jam',
  24392. d: 'sehari',
  24393. dd: '%d hari',
  24394. M: 'sebulan',
  24395. MM: '%d bulan',
  24396. y: 'setahun',
  24397. yy: '%d tahun' },
  24398. week: {
  24399. dow: 0, // Sunday is the first day of the week.
  24400. doy: 6 // The week that contains Jan 6th is the first week of the year.
  24401. } });
  24402. return id;
  24403. });
  24404. /***/ }),
  24405. /* 107 */
  24406. /*!*****************************************************************!*\
  24407. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/is.js ***!
  24408. \*****************************************************************/
  24409. /*! no static exports found */
  24410. /***/ (function(module, exports, __webpack_require__) {
  24411. //! moment.js locale configuration
  24412. //! locale : Icelandic [is]
  24413. //! author : Hinrik Örn Sigurðsson : https://github.com/hinrik
  24414. ;(function (global, factory) {
  24415. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24416. undefined;
  24417. })(this, function (moment) {'use strict';
  24418. //! moment.js locale configuration
  24419. function plural(n) {
  24420. if (n % 100 === 11) {
  24421. return true;
  24422. } else if (n % 10 === 1) {
  24423. return false;
  24424. }
  24425. return true;
  24426. }
  24427. function translate(number, withoutSuffix, key, isFuture) {
  24428. var result = number + ' ';
  24429. switch (key) {
  24430. case 's':
  24431. return withoutSuffix || isFuture ?
  24432. 'nokkrar sekúndur' :
  24433. 'nokkrum sekúndum';
  24434. case 'ss':
  24435. if (plural(number)) {
  24436. return (
  24437. result + (
  24438. withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum'));
  24439. }
  24440. return result + 'sekúnda';
  24441. case 'm':
  24442. return withoutSuffix ? 'mínúta' : 'mínútu';
  24443. case 'mm':
  24444. if (plural(number)) {
  24445. return (
  24446. result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum'));
  24447. } else if (withoutSuffix) {
  24448. return result + 'mínúta';
  24449. }
  24450. return result + 'mínútu';
  24451. case 'hh':
  24452. if (plural(number)) {
  24453. return (
  24454. result + (
  24455. withoutSuffix || isFuture ?
  24456. 'klukkustundir' :
  24457. 'klukkustundum'));
  24458. }
  24459. return result + 'klukkustund';
  24460. case 'd':
  24461. if (withoutSuffix) {
  24462. return 'dagur';
  24463. }
  24464. return isFuture ? 'dag' : 'degi';
  24465. case 'dd':
  24466. if (plural(number)) {
  24467. if (withoutSuffix) {
  24468. return result + 'dagar';
  24469. }
  24470. return result + (isFuture ? 'daga' : 'dögum');
  24471. } else if (withoutSuffix) {
  24472. return result + 'dagur';
  24473. }
  24474. return result + (isFuture ? 'dag' : 'degi');
  24475. case 'M':
  24476. if (withoutSuffix) {
  24477. return 'mánuður';
  24478. }
  24479. return isFuture ? 'mánuð' : 'mánuði';
  24480. case 'MM':
  24481. if (plural(number)) {
  24482. if (withoutSuffix) {
  24483. return result + 'mánuðir';
  24484. }
  24485. return result + (isFuture ? 'mánuði' : 'mánuðum');
  24486. } else if (withoutSuffix) {
  24487. return result + 'mánuður';
  24488. }
  24489. return result + (isFuture ? 'mánuð' : 'mánuði');
  24490. case 'y':
  24491. return withoutSuffix || isFuture ? 'ár' : 'ári';
  24492. case 'yy':
  24493. if (plural(number)) {
  24494. return result + (withoutSuffix || isFuture ? 'ár' : 'árum');
  24495. }
  24496. return result + (withoutSuffix || isFuture ? 'ár' : 'ári');}
  24497. }
  24498. var is = moment.defineLocale('is', {
  24499. months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split(
  24500. '_'),
  24501. monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),
  24502. weekdays:
  24503. 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split(
  24504. '_'),
  24505. weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'),
  24506. weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),
  24507. longDateFormat: {
  24508. LT: 'H:mm',
  24509. LTS: 'H:mm:ss',
  24510. L: 'DD.MM.YYYY',
  24511. LL: 'D. MMMM YYYY',
  24512. LLL: 'D. MMMM YYYY [kl.] H:mm',
  24513. LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm' },
  24514. calendar: {
  24515. sameDay: '[í dag kl.] LT',
  24516. nextDay: '[á morgun kl.] LT',
  24517. nextWeek: 'dddd [kl.] LT',
  24518. lastDay: '[í gær kl.] LT',
  24519. lastWeek: '[síðasta] dddd [kl.] LT',
  24520. sameElse: 'L' },
  24521. relativeTime: {
  24522. future: 'eftir %s',
  24523. past: 'fyrir %s síðan',
  24524. s: translate,
  24525. ss: translate,
  24526. m: translate,
  24527. mm: translate,
  24528. h: 'klukkustund',
  24529. hh: translate,
  24530. d: translate,
  24531. dd: translate,
  24532. M: translate,
  24533. MM: translate,
  24534. y: translate,
  24535. yy: translate },
  24536. dayOfMonthOrdinalParse: /\d{1,2}\./,
  24537. ordinal: '%d.',
  24538. week: {
  24539. dow: 1, // Monday is the first day of the week.
  24540. doy: 4 // The week that contains Jan 4th is the first week of the year.
  24541. } });
  24542. return is;
  24543. });
  24544. /***/ }),
  24545. /* 108 */
  24546. /*!*****************************************************************!*\
  24547. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/it.js ***!
  24548. \*****************************************************************/
  24549. /*! no static exports found */
  24550. /***/ (function(module, exports, __webpack_require__) {
  24551. //! moment.js locale configuration
  24552. //! locale : Italian [it]
  24553. //! author : Lorenzo : https://github.com/aliem
  24554. //! author: Mattia Larentis: https://github.com/nostalgiaz
  24555. //! author: Marco : https://github.com/Manfre98
  24556. ;(function (global, factory) {
  24557. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24558. undefined;
  24559. })(this, function (moment) {'use strict';
  24560. //! moment.js locale configuration
  24561. var it = moment.defineLocale('it', {
  24562. months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(
  24563. '_'),
  24564. monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),
  24565. weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(
  24566. '_'),
  24567. weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),
  24568. weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),
  24569. longDateFormat: {
  24570. LT: 'HH:mm',
  24571. LTS: 'HH:mm:ss',
  24572. L: 'DD/MM/YYYY',
  24573. LL: 'D MMMM YYYY',
  24574. LLL: 'D MMMM YYYY HH:mm',
  24575. LLLL: 'dddd D MMMM YYYY HH:mm' },
  24576. calendar: {
  24577. sameDay: function sameDay() {
  24578. return (
  24579. '[Oggi a' + (
  24580. this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") +
  24581. ']LT');
  24582. },
  24583. nextDay: function nextDay() {
  24584. return (
  24585. '[Domani a' + (
  24586. this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") +
  24587. ']LT');
  24588. },
  24589. nextWeek: function nextWeek() {
  24590. return (
  24591. 'dddd [a' + (
  24592. this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") +
  24593. ']LT');
  24594. },
  24595. lastDay: function lastDay() {
  24596. return (
  24597. '[Ieri a' + (
  24598. this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") +
  24599. ']LT');
  24600. },
  24601. lastWeek: function lastWeek() {
  24602. switch (this.day()) {
  24603. case 0:
  24604. return (
  24605. '[La scorsa] dddd [a' + (
  24606. this.hours() > 1 ?
  24607. 'lle ' :
  24608. this.hours() === 0 ?
  24609. ' ' :
  24610. "ll'") +
  24611. ']LT');
  24612. default:
  24613. return (
  24614. '[Lo scorso] dddd [a' + (
  24615. this.hours() > 1 ?
  24616. 'lle ' :
  24617. this.hours() === 0 ?
  24618. ' ' :
  24619. "ll'") +
  24620. ']LT');}
  24621. },
  24622. sameElse: 'L' },
  24623. relativeTime: {
  24624. future: 'tra %s',
  24625. past: '%s fa',
  24626. s: 'alcuni secondi',
  24627. ss: '%d secondi',
  24628. m: 'un minuto',
  24629. mm: '%d minuti',
  24630. h: "un'ora",
  24631. hh: '%d ore',
  24632. d: 'un giorno',
  24633. dd: '%d giorni',
  24634. w: 'una settimana',
  24635. ww: '%d settimane',
  24636. M: 'un mese',
  24637. MM: '%d mesi',
  24638. y: 'un anno',
  24639. yy: '%d anni' },
  24640. dayOfMonthOrdinalParse: /\d{1,2}º/,
  24641. ordinal: '%dº',
  24642. week: {
  24643. dow: 1, // Monday is the first day of the week.
  24644. doy: 4 // The week that contains Jan 4th is the first week of the year.
  24645. } });
  24646. return it;
  24647. });
  24648. /***/ }),
  24649. /* 109 */
  24650. /*!********************************************************************!*\
  24651. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/it-ch.js ***!
  24652. \********************************************************************/
  24653. /*! no static exports found */
  24654. /***/ (function(module, exports, __webpack_require__) {
  24655. //! moment.js locale configuration
  24656. //! locale : Italian (Switzerland) [it-ch]
  24657. //! author : xfh : https://github.com/xfh
  24658. ;(function (global, factory) {
  24659. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24660. undefined;
  24661. })(this, function (moment) {'use strict';
  24662. //! moment.js locale configuration
  24663. var itCh = moment.defineLocale('it-ch', {
  24664. months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(
  24665. '_'),
  24666. monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),
  24667. weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(
  24668. '_'),
  24669. weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),
  24670. weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),
  24671. longDateFormat: {
  24672. LT: 'HH:mm',
  24673. LTS: 'HH:mm:ss',
  24674. L: 'DD.MM.YYYY',
  24675. LL: 'D MMMM YYYY',
  24676. LLL: 'D MMMM YYYY HH:mm',
  24677. LLLL: 'dddd D MMMM YYYY HH:mm' },
  24678. calendar: {
  24679. sameDay: '[Oggi alle] LT',
  24680. nextDay: '[Domani alle] LT',
  24681. nextWeek: 'dddd [alle] LT',
  24682. lastDay: '[Ieri alle] LT',
  24683. lastWeek: function lastWeek() {
  24684. switch (this.day()) {
  24685. case 0:
  24686. return '[la scorsa] dddd [alle] LT';
  24687. default:
  24688. return '[lo scorso] dddd [alle] LT';}
  24689. },
  24690. sameElse: 'L' },
  24691. relativeTime: {
  24692. future: function future(s) {
  24693. return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s;
  24694. },
  24695. past: '%s fa',
  24696. s: 'alcuni secondi',
  24697. ss: '%d secondi',
  24698. m: 'un minuto',
  24699. mm: '%d minuti',
  24700. h: "un'ora",
  24701. hh: '%d ore',
  24702. d: 'un giorno',
  24703. dd: '%d giorni',
  24704. M: 'un mese',
  24705. MM: '%d mesi',
  24706. y: 'un anno',
  24707. yy: '%d anni' },
  24708. dayOfMonthOrdinalParse: /\d{1,2}º/,
  24709. ordinal: '%dº',
  24710. week: {
  24711. dow: 1, // Monday is the first day of the week.
  24712. doy: 4 // The week that contains Jan 4th is the first week of the year.
  24713. } });
  24714. return itCh;
  24715. });
  24716. /***/ }),
  24717. /* 110 */
  24718. /*!*****************************************************************!*\
  24719. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ja.js ***!
  24720. \*****************************************************************/
  24721. /*! no static exports found */
  24722. /***/ (function(module, exports, __webpack_require__) {
  24723. //! moment.js locale configuration
  24724. //! locale : Japanese [ja]
  24725. //! author : LI Long : https://github.com/baryon
  24726. ;(function (global, factory) {
  24727. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24728. undefined;
  24729. })(this, function (moment) {'use strict';
  24730. //! moment.js locale configuration
  24731. var ja = moment.defineLocale('ja', {
  24732. eras: [
  24733. {
  24734. since: '2019-05-01',
  24735. offset: 1,
  24736. name: '令和',
  24737. narrow: '㋿',
  24738. abbr: 'R' },
  24739. {
  24740. since: '1989-01-08',
  24741. until: '2019-04-30',
  24742. offset: 1,
  24743. name: '平成',
  24744. narrow: '㍻',
  24745. abbr: 'H' },
  24746. {
  24747. since: '1926-12-25',
  24748. until: '1989-01-07',
  24749. offset: 1,
  24750. name: '昭和',
  24751. narrow: '㍼',
  24752. abbr: 'S' },
  24753. {
  24754. since: '1912-07-30',
  24755. until: '1926-12-24',
  24756. offset: 1,
  24757. name: '大正',
  24758. narrow: '㍽',
  24759. abbr: 'T' },
  24760. {
  24761. since: '1873-01-01',
  24762. until: '1912-07-29',
  24763. offset: 6,
  24764. name: '明治',
  24765. narrow: '㍾',
  24766. abbr: 'M' },
  24767. {
  24768. since: '0001-01-01',
  24769. until: '1873-12-31',
  24770. offset: 1,
  24771. name: '西暦',
  24772. narrow: 'AD',
  24773. abbr: 'AD' },
  24774. {
  24775. since: '0000-12-31',
  24776. until: -Infinity,
  24777. offset: 1,
  24778. name: '紀元前',
  24779. narrow: 'BC',
  24780. abbr: 'BC' }],
  24781. eraYearOrdinalRegex: /(元|\d+)年/,
  24782. eraYearOrdinalParse: function eraYearOrdinalParse(input, match) {
  24783. return match[1] === '元' ? 1 : parseInt(match[1] || input, 10);
  24784. },
  24785. months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
  24786. monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(
  24787. '_'),
  24788. weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),
  24789. weekdaysShort: '日_月_火_水_木_金_土'.split('_'),
  24790. weekdaysMin: '日_月_火_水_木_金_土'.split('_'),
  24791. longDateFormat: {
  24792. LT: 'HH:mm',
  24793. LTS: 'HH:mm:ss',
  24794. L: 'YYYY/MM/DD',
  24795. LL: 'YYYY年M月D日',
  24796. LLL: 'YYYY年M月D日 HH:mm',
  24797. LLLL: 'YYYY年M月D日 dddd HH:mm',
  24798. l: 'YYYY/MM/DD',
  24799. ll: 'YYYY年M月D日',
  24800. lll: 'YYYY年M月D日 HH:mm',
  24801. llll: 'YYYY年M月D日(ddd) HH:mm' },
  24802. meridiemParse: /午前|午後/i,
  24803. isPM: function isPM(input) {
  24804. return input === '午後';
  24805. },
  24806. meridiem: function meridiem(hour, minute, isLower) {
  24807. if (hour < 12) {
  24808. return '午前';
  24809. } else {
  24810. return '午後';
  24811. }
  24812. },
  24813. calendar: {
  24814. sameDay: '[今日] LT',
  24815. nextDay: '[明日] LT',
  24816. nextWeek: function nextWeek(now) {
  24817. if (now.week() !== this.week()) {
  24818. return '[来週]dddd LT';
  24819. } else {
  24820. return 'dddd LT';
  24821. }
  24822. },
  24823. lastDay: '[昨日] LT',
  24824. lastWeek: function lastWeek(now) {
  24825. if (this.week() !== now.week()) {
  24826. return '[先週]dddd LT';
  24827. } else {
  24828. return 'dddd LT';
  24829. }
  24830. },
  24831. sameElse: 'L' },
  24832. dayOfMonthOrdinalParse: /\d{1,2}日/,
  24833. ordinal: function ordinal(number, period) {
  24834. switch (period) {
  24835. case 'y':
  24836. return number === 1 ? '元年' : number + '年';
  24837. case 'd':
  24838. case 'D':
  24839. case 'DDD':
  24840. return number + '日';
  24841. default:
  24842. return number;}
  24843. },
  24844. relativeTime: {
  24845. future: '%s後',
  24846. past: '%s前',
  24847. s: '数秒',
  24848. ss: '%d秒',
  24849. m: '1分',
  24850. mm: '%d分',
  24851. h: '1時間',
  24852. hh: '%d時間',
  24853. d: '1日',
  24854. dd: '%d日',
  24855. M: '1ヶ月',
  24856. MM: '%dヶ月',
  24857. y: '1年',
  24858. yy: '%d年' } });
  24859. return ja;
  24860. });
  24861. /***/ }),
  24862. /* 111 */
  24863. /*!*****************************************************************!*\
  24864. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/jv.js ***!
  24865. \*****************************************************************/
  24866. /*! no static exports found */
  24867. /***/ (function(module, exports, __webpack_require__) {
  24868. //! moment.js locale configuration
  24869. //! locale : Javanese [jv]
  24870. //! author : Rony Lantip : https://github.com/lantip
  24871. //! reference: http://jv.wikipedia.org/wiki/Basa_Jawa
  24872. ;(function (global, factory) {
  24873. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24874. undefined;
  24875. })(this, function (moment) {'use strict';
  24876. //! moment.js locale configuration
  24877. var jv = moment.defineLocale('jv', {
  24878. months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split(
  24879. '_'),
  24880. monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),
  24881. weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),
  24882. weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),
  24883. weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),
  24884. longDateFormat: {
  24885. LT: 'HH.mm',
  24886. LTS: 'HH.mm.ss',
  24887. L: 'DD/MM/YYYY',
  24888. LL: 'D MMMM YYYY',
  24889. LLL: 'D MMMM YYYY [pukul] HH.mm',
  24890. LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm' },
  24891. meridiemParse: /enjing|siyang|sonten|ndalu/,
  24892. meridiemHour: function meridiemHour(hour, meridiem) {
  24893. if (hour === 12) {
  24894. hour = 0;
  24895. }
  24896. if (meridiem === 'enjing') {
  24897. return hour;
  24898. } else if (meridiem === 'siyang') {
  24899. return hour >= 11 ? hour : hour + 12;
  24900. } else if (meridiem === 'sonten' || meridiem === 'ndalu') {
  24901. return hour + 12;
  24902. }
  24903. },
  24904. meridiem: function meridiem(hours, minutes, isLower) {
  24905. if (hours < 11) {
  24906. return 'enjing';
  24907. } else if (hours < 15) {
  24908. return 'siyang';
  24909. } else if (hours < 19) {
  24910. return 'sonten';
  24911. } else {
  24912. return 'ndalu';
  24913. }
  24914. },
  24915. calendar: {
  24916. sameDay: '[Dinten puniko pukul] LT',
  24917. nextDay: '[Mbenjang pukul] LT',
  24918. nextWeek: 'dddd [pukul] LT',
  24919. lastDay: '[Kala wingi pukul] LT',
  24920. lastWeek: 'dddd [kepengker pukul] LT',
  24921. sameElse: 'L' },
  24922. relativeTime: {
  24923. future: 'wonten ing %s',
  24924. past: '%s ingkang kepengker',
  24925. s: 'sawetawis detik',
  24926. ss: '%d detik',
  24927. m: 'setunggal menit',
  24928. mm: '%d menit',
  24929. h: 'setunggal jam',
  24930. hh: '%d jam',
  24931. d: 'sedinten',
  24932. dd: '%d dinten',
  24933. M: 'sewulan',
  24934. MM: '%d wulan',
  24935. y: 'setaun',
  24936. yy: '%d taun' },
  24937. week: {
  24938. dow: 1, // Monday is the first day of the week.
  24939. doy: 7 // The week that contains Jan 7th is the first week of the year.
  24940. } });
  24941. return jv;
  24942. });
  24943. /***/ }),
  24944. /* 112 */
  24945. /*!*****************************************************************!*\
  24946. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ka.js ***!
  24947. \*****************************************************************/
  24948. /*! no static exports found */
  24949. /***/ (function(module, exports, __webpack_require__) {
  24950. //! moment.js locale configuration
  24951. //! locale : Georgian [ka]
  24952. //! author : Irakli Janiashvili : https://github.com/IrakliJani
  24953. ;(function (global, factory) {
  24954. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  24955. undefined;
  24956. })(this, function (moment) {'use strict';
  24957. //! moment.js locale configuration
  24958. var ka = moment.defineLocale('ka', {
  24959. months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split(
  24960. '_'),
  24961. monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),
  24962. weekdays: {
  24963. standalone:
  24964. 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split(
  24965. '_'),
  24966. format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split(
  24967. '_'),
  24968. isFormat: /(წინა|შემდეგ)/ },
  24969. weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),
  24970. weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),
  24971. longDateFormat: {
  24972. LT: 'HH:mm',
  24973. LTS: 'HH:mm:ss',
  24974. L: 'DD/MM/YYYY',
  24975. LL: 'D MMMM YYYY',
  24976. LLL: 'D MMMM YYYY HH:mm',
  24977. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  24978. calendar: {
  24979. sameDay: '[დღეს] LT[-ზე]',
  24980. nextDay: '[ხვალ] LT[-ზე]',
  24981. lastDay: '[გუშინ] LT[-ზე]',
  24982. nextWeek: '[შემდეგ] dddd LT[-ზე]',
  24983. lastWeek: '[წინა] dddd LT-ზე',
  24984. sameElse: 'L' },
  24985. relativeTime: {
  24986. future: function future(s) {
  24987. return s.replace(
  24988. /(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,
  24989. function ($0, $1, $2) {
  24990. return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში';
  24991. });
  24992. },
  24993. past: function past(s) {
  24994. if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) {
  24995. return s.replace(/(ი|ე)$/, 'ის წინ');
  24996. }
  24997. if (/წელი/.test(s)) {
  24998. return s.replace(/წელი$/, 'წლის წინ');
  24999. }
  25000. return s;
  25001. },
  25002. s: 'რამდენიმე წამი',
  25003. ss: '%d წამი',
  25004. m: 'წუთი',
  25005. mm: '%d წუთი',
  25006. h: 'საათი',
  25007. hh: '%d საათი',
  25008. d: 'დღე',
  25009. dd: '%d დღე',
  25010. M: 'თვე',
  25011. MM: '%d თვე',
  25012. y: 'წელი',
  25013. yy: '%d წელი' },
  25014. dayOfMonthOrdinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,
  25015. ordinal: function ordinal(number) {
  25016. if (number === 0) {
  25017. return number;
  25018. }
  25019. if (number === 1) {
  25020. return number + '-ლი';
  25021. }
  25022. if (
  25023. number < 20 ||
  25024. number <= 100 && number % 20 === 0 ||
  25025. number % 100 === 0)
  25026. {
  25027. return 'მე-' + number;
  25028. }
  25029. return number + '-ე';
  25030. },
  25031. week: {
  25032. dow: 1,
  25033. doy: 7 } });
  25034. return ka;
  25035. });
  25036. /***/ }),
  25037. /* 113 */
  25038. /*!*****************************************************************!*\
  25039. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/kk.js ***!
  25040. \*****************************************************************/
  25041. /*! no static exports found */
  25042. /***/ (function(module, exports, __webpack_require__) {
  25043. //! moment.js locale configuration
  25044. //! locale : Kazakh [kk]
  25045. //! authors : Nurlan Rakhimzhanov : https://github.com/nurlan
  25046. ;(function (global, factory) {
  25047. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25048. undefined;
  25049. })(this, function (moment) {'use strict';
  25050. //! moment.js locale configuration
  25051. var suffixes = {
  25052. 0: '-ші',
  25053. 1: '-ші',
  25054. 2: '-ші',
  25055. 3: '-ші',
  25056. 4: '-ші',
  25057. 5: '-ші',
  25058. 6: '-шы',
  25059. 7: '-ші',
  25060. 8: '-ші',
  25061. 9: '-шы',
  25062. 10: '-шы',
  25063. 20: '-шы',
  25064. 30: '-шы',
  25065. 40: '-шы',
  25066. 50: '-ші',
  25067. 60: '-шы',
  25068. 70: '-ші',
  25069. 80: '-ші',
  25070. 90: '-шы',
  25071. 100: '-ші' };
  25072. var kk = moment.defineLocale('kk', {
  25073. months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split(
  25074. '_'),
  25075. monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),
  25076. weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split(
  25077. '_'),
  25078. weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),
  25079. weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'),
  25080. longDateFormat: {
  25081. LT: 'HH:mm',
  25082. LTS: 'HH:mm:ss',
  25083. L: 'DD.MM.YYYY',
  25084. LL: 'D MMMM YYYY',
  25085. LLL: 'D MMMM YYYY HH:mm',
  25086. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  25087. calendar: {
  25088. sameDay: '[Бүгін сағат] LT',
  25089. nextDay: '[Ертең сағат] LT',
  25090. nextWeek: 'dddd [сағат] LT',
  25091. lastDay: '[Кеше сағат] LT',
  25092. lastWeek: '[Өткен аптаның] dddd [сағат] LT',
  25093. sameElse: 'L' },
  25094. relativeTime: {
  25095. future: '%s ішінде',
  25096. past: '%s бұрын',
  25097. s: 'бірнеше секунд',
  25098. ss: '%d секунд',
  25099. m: 'бір минут',
  25100. mm: '%d минут',
  25101. h: 'бір сағат',
  25102. hh: '%d сағат',
  25103. d: 'бір күн',
  25104. dd: '%d күн',
  25105. M: 'бір ай',
  25106. MM: '%d ай',
  25107. y: 'бір жыл',
  25108. yy: '%d жыл' },
  25109. dayOfMonthOrdinalParse: /\d{1,2}-(ші|шы)/,
  25110. ordinal: function ordinal(number) {
  25111. var a = number % 10,
  25112. b = number >= 100 ? 100 : null;
  25113. return number + (suffixes[number] || suffixes[a] || suffixes[b]);
  25114. },
  25115. week: {
  25116. dow: 1, // Monday is the first day of the week.
  25117. doy: 7 // The week that contains Jan 7th is the first week of the year.
  25118. } });
  25119. return kk;
  25120. });
  25121. /***/ }),
  25122. /* 114 */
  25123. /*!*****************************************************************!*\
  25124. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/km.js ***!
  25125. \*****************************************************************/
  25126. /*! no static exports found */
  25127. /***/ (function(module, exports, __webpack_require__) {
  25128. //! moment.js locale configuration
  25129. //! locale : Cambodian [km]
  25130. //! author : Kruy Vanna : https://github.com/kruyvanna
  25131. ;(function (global, factory) {
  25132. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25133. undefined;
  25134. })(this, function (moment) {'use strict';
  25135. //! moment.js locale configuration
  25136. var symbolMap = {
  25137. 1: '១',
  25138. 2: '២',
  25139. 3: '៣',
  25140. 4: '៤',
  25141. 5: '៥',
  25142. 6: '៦',
  25143. 7: '៧',
  25144. 8: '៨',
  25145. 9: '៩',
  25146. 0: '០' },
  25147. numberMap = {
  25148. '១': '1',
  25149. '២': '2',
  25150. '៣': '3',
  25151. '៤': '4',
  25152. '៥': '5',
  25153. '៦': '6',
  25154. '៧': '7',
  25155. '៨': '8',
  25156. '៩': '9',
  25157. '០': '0' };
  25158. var km = moment.defineLocale('km', {
  25159. months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(
  25160. '_'),
  25161. monthsShort:
  25162. 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(
  25163. '_'),
  25164. weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
  25165. weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),
  25166. weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),
  25167. weekdaysParseExact: true,
  25168. longDateFormat: {
  25169. LT: 'HH:mm',
  25170. LTS: 'HH:mm:ss',
  25171. L: 'DD/MM/YYYY',
  25172. LL: 'D MMMM YYYY',
  25173. LLL: 'D MMMM YYYY HH:mm',
  25174. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  25175. meridiemParse: /ព្រឹក|ល្ងាច/,
  25176. isPM: function isPM(input) {
  25177. return input === 'ល្ងាច';
  25178. },
  25179. meridiem: function meridiem(hour, minute, isLower) {
  25180. if (hour < 12) {
  25181. return 'ព្រឹក';
  25182. } else {
  25183. return 'ល្ងាច';
  25184. }
  25185. },
  25186. calendar: {
  25187. sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',
  25188. nextDay: '[ស្អែក ម៉ោង] LT',
  25189. nextWeek: 'dddd [ម៉ោង] LT',
  25190. lastDay: '[ម្សិលមិញ ម៉ោង] LT',
  25191. lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',
  25192. sameElse: 'L' },
  25193. relativeTime: {
  25194. future: '%sទៀត',
  25195. past: '%sមុន',
  25196. s: 'ប៉ុន្មានវិនាទី',
  25197. ss: '%d វិនាទី',
  25198. m: 'មួយនាទី',
  25199. mm: '%d នាទី',
  25200. h: 'មួយម៉ោង',
  25201. hh: '%d ម៉ោង',
  25202. d: 'មួយថ្ងៃ',
  25203. dd: '%d ថ្ងៃ',
  25204. M: 'មួយខែ',
  25205. MM: '%d ខែ',
  25206. y: 'មួយឆ្នាំ',
  25207. yy: '%d ឆ្នាំ' },
  25208. dayOfMonthOrdinalParse: /ទី\d{1,2}/,
  25209. ordinal: 'ទី%d',
  25210. preparse: function preparse(string) {
  25211. return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {
  25212. return numberMap[match];
  25213. });
  25214. },
  25215. postformat: function postformat(string) {
  25216. return string.replace(/\d/g, function (match) {
  25217. return symbolMap[match];
  25218. });
  25219. },
  25220. week: {
  25221. dow: 1, // Monday is the first day of the week.
  25222. doy: 4 // The week that contains Jan 4th is the first week of the year.
  25223. } });
  25224. return km;
  25225. });
  25226. /***/ }),
  25227. /* 115 */
  25228. /*!*****************************************************************!*\
  25229. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/kn.js ***!
  25230. \*****************************************************************/
  25231. /*! no static exports found */
  25232. /***/ (function(module, exports, __webpack_require__) {
  25233. //! moment.js locale configuration
  25234. //! locale : Kannada [kn]
  25235. //! author : Rajeev Naik : https://github.com/rajeevnaikte
  25236. ;(function (global, factory) {
  25237. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25238. undefined;
  25239. })(this, function (moment) {'use strict';
  25240. //! moment.js locale configuration
  25241. var symbolMap = {
  25242. 1: '೧',
  25243. 2: '೨',
  25244. 3: '೩',
  25245. 4: '೪',
  25246. 5: '೫',
  25247. 6: '೬',
  25248. 7: '೭',
  25249. 8: '೮',
  25250. 9: '೯',
  25251. 0: '೦' },
  25252. numberMap = {
  25253. '೧': '1',
  25254. '೨': '2',
  25255. '೩': '3',
  25256. '೪': '4',
  25257. '೫': '5',
  25258. '೬': '6',
  25259. '೭': '7',
  25260. '೮': '8',
  25261. '೯': '9',
  25262. '೦': '0' };
  25263. var kn = moment.defineLocale('kn', {
  25264. months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split(
  25265. '_'),
  25266. monthsShort:
  25267. 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split(
  25268. '_'),
  25269. monthsParseExact: true,
  25270. weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split(
  25271. '_'),
  25272. weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),
  25273. weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),
  25274. longDateFormat: {
  25275. LT: 'A h:mm',
  25276. LTS: 'A h:mm:ss',
  25277. L: 'DD/MM/YYYY',
  25278. LL: 'D MMMM YYYY',
  25279. LLL: 'D MMMM YYYY, A h:mm',
  25280. LLLL: 'dddd, D MMMM YYYY, A h:mm' },
  25281. calendar: {
  25282. sameDay: '[ಇಂದು] LT',
  25283. nextDay: '[ನಾಳೆ] LT',
  25284. nextWeek: 'dddd, LT',
  25285. lastDay: '[ನಿನ್ನೆ] LT',
  25286. lastWeek: '[ಕೊನೆಯ] dddd, LT',
  25287. sameElse: 'L' },
  25288. relativeTime: {
  25289. future: '%s ನಂತರ',
  25290. past: '%s ಹಿಂದೆ',
  25291. s: 'ಕೆಲವು ಕ್ಷಣಗಳು',
  25292. ss: '%d ಸೆಕೆಂಡುಗಳು',
  25293. m: 'ಒಂದು ನಿಮಿಷ',
  25294. mm: '%d ನಿಮಿಷ',
  25295. h: 'ಒಂದು ಗಂಟೆ',
  25296. hh: '%d ಗಂಟೆ',
  25297. d: 'ಒಂದು ದಿನ',
  25298. dd: '%d ದಿನ',
  25299. M: 'ಒಂದು ತಿಂಗಳು',
  25300. MM: '%d ತಿಂಗಳು',
  25301. y: 'ಒಂದು ವರ್ಷ',
  25302. yy: '%d ವರ್ಷ' },
  25303. preparse: function preparse(string) {
  25304. return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {
  25305. return numberMap[match];
  25306. });
  25307. },
  25308. postformat: function postformat(string) {
  25309. return string.replace(/\d/g, function (match) {
  25310. return symbolMap[match];
  25311. });
  25312. },
  25313. meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,
  25314. meridiemHour: function meridiemHour(hour, meridiem) {
  25315. if (hour === 12) {
  25316. hour = 0;
  25317. }
  25318. if (meridiem === 'ರಾತ್ರಿ') {
  25319. return hour < 4 ? hour : hour + 12;
  25320. } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {
  25321. return hour;
  25322. } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {
  25323. return hour >= 10 ? hour : hour + 12;
  25324. } else if (meridiem === 'ಸಂಜೆ') {
  25325. return hour + 12;
  25326. }
  25327. },
  25328. meridiem: function meridiem(hour, minute, isLower) {
  25329. if (hour < 4) {
  25330. return 'ರಾತ್ರಿ';
  25331. } else if (hour < 10) {
  25332. return 'ಬೆಳಿಗ್ಗೆ';
  25333. } else if (hour < 17) {
  25334. return 'ಮಧ್ಯಾಹ್ನ';
  25335. } else if (hour < 20) {
  25336. return 'ಸಂಜೆ';
  25337. } else {
  25338. return 'ರಾತ್ರಿ';
  25339. }
  25340. },
  25341. dayOfMonthOrdinalParse: /\d{1,2}(ನೇ)/,
  25342. ordinal: function ordinal(number) {
  25343. return number + 'ನೇ';
  25344. },
  25345. week: {
  25346. dow: 0, // Sunday is the first day of the week.
  25347. doy: 6 // The week that contains Jan 6th is the first week of the year.
  25348. } });
  25349. return kn;
  25350. });
  25351. /***/ }),
  25352. /* 116 */
  25353. /*!*****************************************************************!*\
  25354. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ko.js ***!
  25355. \*****************************************************************/
  25356. /*! no static exports found */
  25357. /***/ (function(module, exports, __webpack_require__) {
  25358. //! moment.js locale configuration
  25359. //! locale : Korean [ko]
  25360. //! author : Kyungwook, Park : https://github.com/kyungw00k
  25361. //! author : Jeeeyul Lee <jeeeyul@gmail.com>
  25362. ;(function (global, factory) {
  25363. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25364. undefined;
  25365. })(this, function (moment) {'use strict';
  25366. //! moment.js locale configuration
  25367. var ko = moment.defineLocale('ko', {
  25368. months: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),
  25369. monthsShort: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split(
  25370. '_'),
  25371. weekdays: '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),
  25372. weekdaysShort: '일_월_화_수_목_금_토'.split('_'),
  25373. weekdaysMin: '일_월_화_수_목_금_토'.split('_'),
  25374. longDateFormat: {
  25375. LT: 'A h:mm',
  25376. LTS: 'A h:mm:ss',
  25377. L: 'YYYY.MM.DD.',
  25378. LL: 'YYYY년 MMMM D일',
  25379. LLL: 'YYYY년 MMMM D일 A h:mm',
  25380. LLLL: 'YYYY년 MMMM D일 dddd A h:mm',
  25381. l: 'YYYY.MM.DD.',
  25382. ll: 'YYYY년 MMMM D일',
  25383. lll: 'YYYY년 MMMM D일 A h:mm',
  25384. llll: 'YYYY년 MMMM D일 dddd A h:mm' },
  25385. calendar: {
  25386. sameDay: '오늘 LT',
  25387. nextDay: '내일 LT',
  25388. nextWeek: 'dddd LT',
  25389. lastDay: '어제 LT',
  25390. lastWeek: '지난주 dddd LT',
  25391. sameElse: 'L' },
  25392. relativeTime: {
  25393. future: '%s 후',
  25394. past: '%s 전',
  25395. s: '몇 초',
  25396. ss: '%d초',
  25397. m: '1분',
  25398. mm: '%d분',
  25399. h: '한 시간',
  25400. hh: '%d시간',
  25401. d: '하루',
  25402. dd: '%d일',
  25403. M: '한 달',
  25404. MM: '%d달',
  25405. y: '일 년',
  25406. yy: '%d년' },
  25407. dayOfMonthOrdinalParse: /\d{1,2}(일|월|주)/,
  25408. ordinal: function ordinal(number, period) {
  25409. switch (period) {
  25410. case 'd':
  25411. case 'D':
  25412. case 'DDD':
  25413. return number + '일';
  25414. case 'M':
  25415. return number + '월';
  25416. case 'w':
  25417. case 'W':
  25418. return number + '주';
  25419. default:
  25420. return number;}
  25421. },
  25422. meridiemParse: /오전|오후/,
  25423. isPM: function isPM(token) {
  25424. return token === '오후';
  25425. },
  25426. meridiem: function meridiem(hour, minute, isUpper) {
  25427. return hour < 12 ? '오전' : '오후';
  25428. } });
  25429. return ko;
  25430. });
  25431. /***/ }),
  25432. /* 117 */
  25433. /*!*****************************************************************!*\
  25434. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ku.js ***!
  25435. \*****************************************************************/
  25436. /*! no static exports found */
  25437. /***/ (function(module, exports, __webpack_require__) {
  25438. //! moment.js locale configuration
  25439. //! locale : Kurdish [ku]
  25440. //! author : Shahram Mebashar : https://github.com/ShahramMebashar
  25441. ;(function (global, factory) {
  25442. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25443. undefined;
  25444. })(this, function (moment) {'use strict';
  25445. //! moment.js locale configuration
  25446. var symbolMap = {
  25447. 1: '١',
  25448. 2: '٢',
  25449. 3: '٣',
  25450. 4: '٤',
  25451. 5: '٥',
  25452. 6: '٦',
  25453. 7: '٧',
  25454. 8: '٨',
  25455. 9: '٩',
  25456. 0: '٠' },
  25457. numberMap = {
  25458. '١': '1',
  25459. '٢': '2',
  25460. '٣': '3',
  25461. '٤': '4',
  25462. '٥': '5',
  25463. '٦': '6',
  25464. '٧': '7',
  25465. '٨': '8',
  25466. '٩': '9',
  25467. '٠': '0' },
  25468. months = [
  25469. 'کانونی دووەم',
  25470. 'شوبات',
  25471. 'ئازار',
  25472. 'نیسان',
  25473. 'ئایار',
  25474. 'حوزەیران',
  25475. 'تەمموز',
  25476. 'ئاب',
  25477. 'ئەیلوول',
  25478. 'تشرینی یەكەم',
  25479. 'تشرینی دووەم',
  25480. 'كانونی یەکەم'];
  25481. var ku = moment.defineLocale('ku', {
  25482. months: months,
  25483. monthsShort: months,
  25484. weekdays:
  25485. 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split(
  25486. '_'),
  25487. weekdaysShort:
  25488. 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),
  25489. weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'),
  25490. weekdaysParseExact: true,
  25491. longDateFormat: {
  25492. LT: 'HH:mm',
  25493. LTS: 'HH:mm:ss',
  25494. L: 'DD/MM/YYYY',
  25495. LL: 'D MMMM YYYY',
  25496. LLL: 'D MMMM YYYY HH:mm',
  25497. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  25498. meridiemParse: /ئێواره‌|به‌یانی/,
  25499. isPM: function isPM(input) {
  25500. return /ئێواره‌/.test(input);
  25501. },
  25502. meridiem: function meridiem(hour, minute, isLower) {
  25503. if (hour < 12) {
  25504. return 'به‌یانی';
  25505. } else {
  25506. return 'ئێواره‌';
  25507. }
  25508. },
  25509. calendar: {
  25510. sameDay: '[ئه‌مرۆ كاتژمێر] LT',
  25511. nextDay: '[به‌یانی كاتژمێر] LT',
  25512. nextWeek: 'dddd [كاتژمێر] LT',
  25513. lastDay: '[دوێنێ كاتژمێر] LT',
  25514. lastWeek: 'dddd [كاتژمێر] LT',
  25515. sameElse: 'L' },
  25516. relativeTime: {
  25517. future: 'له‌ %s',
  25518. past: '%s',
  25519. s: 'چه‌ند چركه‌یه‌ك',
  25520. ss: 'چركه‌ %d',
  25521. m: 'یه‌ك خوله‌ك',
  25522. mm: '%d خوله‌ك',
  25523. h: 'یه‌ك كاتژمێر',
  25524. hh: '%d كاتژمێر',
  25525. d: 'یه‌ك ڕۆژ',
  25526. dd: '%d ڕۆژ',
  25527. M: 'یه‌ك مانگ',
  25528. MM: '%d مانگ',
  25529. y: 'یه‌ك ساڵ',
  25530. yy: '%d ساڵ' },
  25531. preparse: function preparse(string) {
  25532. return string.
  25533. replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
  25534. return numberMap[match];
  25535. }).
  25536. replace(/،/g, ',');
  25537. },
  25538. postformat: function postformat(string) {
  25539. return string.
  25540. replace(/\d/g, function (match) {
  25541. return symbolMap[match];
  25542. }).
  25543. replace(/,/g, '،');
  25544. },
  25545. week: {
  25546. dow: 6, // Saturday is the first day of the week.
  25547. doy: 12 // The week that contains Jan 12th is the first week of the year.
  25548. } });
  25549. return ku;
  25550. });
  25551. /***/ }),
  25552. /* 118 */
  25553. /*!*****************************************************************!*\
  25554. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ky.js ***!
  25555. \*****************************************************************/
  25556. /*! no static exports found */
  25557. /***/ (function(module, exports, __webpack_require__) {
  25558. //! moment.js locale configuration
  25559. //! locale : Kyrgyz [ky]
  25560. //! author : Chyngyz Arystan uulu : https://github.com/chyngyz
  25561. ;(function (global, factory) {
  25562. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25563. undefined;
  25564. })(this, function (moment) {'use strict';
  25565. //! moment.js locale configuration
  25566. var suffixes = {
  25567. 0: '-чү',
  25568. 1: '-чи',
  25569. 2: '-чи',
  25570. 3: '-чү',
  25571. 4: '-чү',
  25572. 5: '-чи',
  25573. 6: '-чы',
  25574. 7: '-чи',
  25575. 8: '-чи',
  25576. 9: '-чу',
  25577. 10: '-чу',
  25578. 20: '-чы',
  25579. 30: '-чу',
  25580. 40: '-чы',
  25581. 50: '-чү',
  25582. 60: '-чы',
  25583. 70: '-чи',
  25584. 80: '-чи',
  25585. 90: '-чу',
  25586. 100: '-чү' };
  25587. var ky = moment.defineLocale('ky', {
  25588. months: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(
  25589. '_'),
  25590. monthsShort: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split(
  25591. '_'),
  25592. weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split(
  25593. '_'),
  25594. weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),
  25595. weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),
  25596. longDateFormat: {
  25597. LT: 'HH:mm',
  25598. LTS: 'HH:mm:ss',
  25599. L: 'DD.MM.YYYY',
  25600. LL: 'D MMMM YYYY',
  25601. LLL: 'D MMMM YYYY HH:mm',
  25602. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  25603. calendar: {
  25604. sameDay: '[Бүгүн саат] LT',
  25605. nextDay: '[Эртең саат] LT',
  25606. nextWeek: 'dddd [саат] LT',
  25607. lastDay: '[Кечээ саат] LT',
  25608. lastWeek: '[Өткөн аптанын] dddd [күнү] [саат] LT',
  25609. sameElse: 'L' },
  25610. relativeTime: {
  25611. future: '%s ичинде',
  25612. past: '%s мурун',
  25613. s: 'бирнече секунд',
  25614. ss: '%d секунд',
  25615. m: 'бир мүнөт',
  25616. mm: '%d мүнөт',
  25617. h: 'бир саат',
  25618. hh: '%d саат',
  25619. d: 'бир күн',
  25620. dd: '%d күн',
  25621. M: 'бир ай',
  25622. MM: '%d ай',
  25623. y: 'бир жыл',
  25624. yy: '%d жыл' },
  25625. dayOfMonthOrdinalParse: /\d{1,2}-(чи|чы|чү|чу)/,
  25626. ordinal: function ordinal(number) {
  25627. var a = number % 10,
  25628. b = number >= 100 ? 100 : null;
  25629. return number + (suffixes[number] || suffixes[a] || suffixes[b]);
  25630. },
  25631. week: {
  25632. dow: 1, // Monday is the first day of the week.
  25633. doy: 7 // The week that contains Jan 7th is the first week of the year.
  25634. } });
  25635. return ky;
  25636. });
  25637. /***/ }),
  25638. /* 119 */
  25639. /*!*****************************************************************!*\
  25640. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/lb.js ***!
  25641. \*****************************************************************/
  25642. /*! no static exports found */
  25643. /***/ (function(module, exports, __webpack_require__) {
  25644. //! moment.js locale configuration
  25645. //! locale : Luxembourgish [lb]
  25646. //! author : mweimerskirch : https://github.com/mweimerskirch
  25647. //! author : David Raison : https://github.com/kwisatz
  25648. ;(function (global, factory) {
  25649. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25650. undefined;
  25651. })(this, function (moment) {'use strict';
  25652. //! moment.js locale configuration
  25653. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  25654. var format = {
  25655. m: ['eng Minutt', 'enger Minutt'],
  25656. h: ['eng Stonn', 'enger Stonn'],
  25657. d: ['een Dag', 'engem Dag'],
  25658. M: ['ee Mount', 'engem Mount'],
  25659. y: ['ee Joer', 'engem Joer'] };
  25660. return withoutSuffix ? format[key][0] : format[key][1];
  25661. }
  25662. function processFutureTime(string) {
  25663. var number = string.substr(0, string.indexOf(' '));
  25664. if (eifelerRegelAppliesToNumber(number)) {
  25665. return 'a ' + string;
  25666. }
  25667. return 'an ' + string;
  25668. }
  25669. function processPastTime(string) {
  25670. var number = string.substr(0, string.indexOf(' '));
  25671. if (eifelerRegelAppliesToNumber(number)) {
  25672. return 'viru ' + string;
  25673. }
  25674. return 'virun ' + string;
  25675. }
  25676. /**
  25677. * Returns true if the word before the given number loses the '-n' ending.
  25678. * e.g. 'an 10 Deeg' but 'a 5 Deeg'
  25679. *
  25680. * @param number {integer}
  25681. * @returns {boolean}
  25682. */
  25683. function eifelerRegelAppliesToNumber(number) {
  25684. number = parseInt(number, 10);
  25685. if (isNaN(number)) {
  25686. return false;
  25687. }
  25688. if (number < 0) {
  25689. // Negative Number --> always true
  25690. return true;
  25691. } else if (number < 10) {
  25692. // Only 1 digit
  25693. if (4 <= number && number <= 7) {
  25694. return true;
  25695. }
  25696. return false;
  25697. } else if (number < 100) {
  25698. // 2 digits
  25699. var lastDigit = number % 10,
  25700. firstDigit = number / 10;
  25701. if (lastDigit === 0) {
  25702. return eifelerRegelAppliesToNumber(firstDigit);
  25703. }
  25704. return eifelerRegelAppliesToNumber(lastDigit);
  25705. } else if (number < 10000) {
  25706. // 3 or 4 digits --> recursively check first digit
  25707. while (number >= 10) {
  25708. number = number / 10;
  25709. }
  25710. return eifelerRegelAppliesToNumber(number);
  25711. } else {
  25712. // Anything larger than 4 digits: recursively check first n-3 digits
  25713. number = number / 1000;
  25714. return eifelerRegelAppliesToNumber(number);
  25715. }
  25716. }
  25717. var lb = moment.defineLocale('lb', {
  25718. months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split(
  25719. '_'),
  25720. monthsShort:
  25721. 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split(
  25722. '_'),
  25723. monthsParseExact: true,
  25724. weekdays:
  25725. 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split(
  25726. '_'),
  25727. weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),
  25728. weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),
  25729. weekdaysParseExact: true,
  25730. longDateFormat: {
  25731. LT: 'H:mm [Auer]',
  25732. LTS: 'H:mm:ss [Auer]',
  25733. L: 'DD.MM.YYYY',
  25734. LL: 'D. MMMM YYYY',
  25735. LLL: 'D. MMMM YYYY H:mm [Auer]',
  25736. LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]' },
  25737. calendar: {
  25738. sameDay: '[Haut um] LT',
  25739. sameElse: 'L',
  25740. nextDay: '[Muer um] LT',
  25741. nextWeek: 'dddd [um] LT',
  25742. lastDay: '[Gëschter um] LT',
  25743. lastWeek: function lastWeek() {
  25744. // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule
  25745. switch (this.day()) {
  25746. case 2:
  25747. case 4:
  25748. return '[Leschten] dddd [um] LT';
  25749. default:
  25750. return '[Leschte] dddd [um] LT';}
  25751. } },
  25752. relativeTime: {
  25753. future: processFutureTime,
  25754. past: processPastTime,
  25755. s: 'e puer Sekonnen',
  25756. ss: '%d Sekonnen',
  25757. m: processRelativeTime,
  25758. mm: '%d Minutten',
  25759. h: processRelativeTime,
  25760. hh: '%d Stonnen',
  25761. d: processRelativeTime,
  25762. dd: '%d Deeg',
  25763. M: processRelativeTime,
  25764. MM: '%d Méint',
  25765. y: processRelativeTime,
  25766. yy: '%d Joer' },
  25767. dayOfMonthOrdinalParse: /\d{1,2}\./,
  25768. ordinal: '%d.',
  25769. week: {
  25770. dow: 1, // Monday is the first day of the week.
  25771. doy: 4 // The week that contains Jan 4th is the first week of the year.
  25772. } });
  25773. return lb;
  25774. });
  25775. /***/ }),
  25776. /* 120 */
  25777. /*!*****************************************************************!*\
  25778. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/lo.js ***!
  25779. \*****************************************************************/
  25780. /*! no static exports found */
  25781. /***/ (function(module, exports, __webpack_require__) {
  25782. //! moment.js locale configuration
  25783. //! locale : Lao [lo]
  25784. //! author : Ryan Hart : https://github.com/ryanhart2
  25785. ;(function (global, factory) {
  25786. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25787. undefined;
  25788. })(this, function (moment) {'use strict';
  25789. //! moment.js locale configuration
  25790. var lo = moment.defineLocale('lo', {
  25791. months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(
  25792. '_'),
  25793. monthsShort:
  25794. 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(
  25795. '_'),
  25796. weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),
  25797. weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),
  25798. weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),
  25799. weekdaysParseExact: true,
  25800. longDateFormat: {
  25801. LT: 'HH:mm',
  25802. LTS: 'HH:mm:ss',
  25803. L: 'DD/MM/YYYY',
  25804. LL: 'D MMMM YYYY',
  25805. LLL: 'D MMMM YYYY HH:mm',
  25806. LLLL: 'ວັນdddd D MMMM YYYY HH:mm' },
  25807. meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,
  25808. isPM: function isPM(input) {
  25809. return input === 'ຕອນແລງ';
  25810. },
  25811. meridiem: function meridiem(hour, minute, isLower) {
  25812. if (hour < 12) {
  25813. return 'ຕອນເຊົ້າ';
  25814. } else {
  25815. return 'ຕອນແລງ';
  25816. }
  25817. },
  25818. calendar: {
  25819. sameDay: '[ມື້ນີ້ເວລາ] LT',
  25820. nextDay: '[ມື້ອື່ນເວລາ] LT',
  25821. nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT',
  25822. lastDay: '[ມື້ວານນີ້ເວລາ] LT',
  25823. lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',
  25824. sameElse: 'L' },
  25825. relativeTime: {
  25826. future: 'ອີກ %s',
  25827. past: '%sຜ່ານມາ',
  25828. s: 'ບໍ່ເທົ່າໃດວິນາທີ',
  25829. ss: '%d ວິນາທີ',
  25830. m: '1 ນາທີ',
  25831. mm: '%d ນາທີ',
  25832. h: '1 ຊົ່ວໂມງ',
  25833. hh: '%d ຊົ່ວໂມງ',
  25834. d: '1 ມື້',
  25835. dd: '%d ມື້',
  25836. M: '1 ເດືອນ',
  25837. MM: '%d ເດືອນ',
  25838. y: '1 ປີ',
  25839. yy: '%d ປີ' },
  25840. dayOfMonthOrdinalParse: /(ທີ່)\d{1,2}/,
  25841. ordinal: function ordinal(number) {
  25842. return 'ທີ່' + number;
  25843. } });
  25844. return lo;
  25845. });
  25846. /***/ }),
  25847. /* 121 */
  25848. /*!*****************************************************************!*\
  25849. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/lt.js ***!
  25850. \*****************************************************************/
  25851. /*! no static exports found */
  25852. /***/ (function(module, exports, __webpack_require__) {
  25853. //! moment.js locale configuration
  25854. //! locale : Lithuanian [lt]
  25855. //! author : Mindaugas Mozūras : https://github.com/mmozuras
  25856. ;(function (global, factory) {
  25857. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25858. undefined;
  25859. })(this, function (moment) {'use strict';
  25860. //! moment.js locale configuration
  25861. var units = {
  25862. ss: 'sekundė_sekundžių_sekundes',
  25863. m: 'minutė_minutės_minutę',
  25864. mm: 'minutės_minučių_minutes',
  25865. h: 'valanda_valandos_valandą',
  25866. hh: 'valandos_valandų_valandas',
  25867. d: 'diena_dienos_dieną',
  25868. dd: 'dienos_dienų_dienas',
  25869. M: 'mėnuo_mėnesio_mėnesį',
  25870. MM: 'mėnesiai_mėnesių_mėnesius',
  25871. y: 'metai_metų_metus',
  25872. yy: 'metai_metų_metus' };
  25873. function translateSeconds(number, withoutSuffix, key, isFuture) {
  25874. if (withoutSuffix) {
  25875. return 'kelios sekundės';
  25876. } else {
  25877. return isFuture ? 'kelių sekundžių' : 'kelias sekundes';
  25878. }
  25879. }
  25880. function translateSingular(number, withoutSuffix, key, isFuture) {
  25881. return withoutSuffix ?
  25882. forms(key)[0] :
  25883. isFuture ?
  25884. forms(key)[1] :
  25885. forms(key)[2];
  25886. }
  25887. function special(number) {
  25888. return number % 10 === 0 || number > 10 && number < 20;
  25889. }
  25890. function forms(key) {
  25891. return units[key].split('_');
  25892. }
  25893. function translate(number, withoutSuffix, key, isFuture) {
  25894. var result = number + ' ';
  25895. if (number === 1) {
  25896. return (
  25897. result + translateSingular(number, withoutSuffix, key[0], isFuture));
  25898. } else if (withoutSuffix) {
  25899. return result + (special(number) ? forms(key)[1] : forms(key)[0]);
  25900. } else {
  25901. if (isFuture) {
  25902. return result + forms(key)[1];
  25903. } else {
  25904. return result + (special(number) ? forms(key)[1] : forms(key)[2]);
  25905. }
  25906. }
  25907. }
  25908. var lt = moment.defineLocale('lt', {
  25909. months: {
  25910. format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split(
  25911. '_'),
  25912. standalone:
  25913. 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split(
  25914. '_'),
  25915. isFormat: /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/ },
  25916. monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),
  25917. weekdays: {
  25918. format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split(
  25919. '_'),
  25920. standalone:
  25921. 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split(
  25922. '_'),
  25923. isFormat: /dddd HH:mm/ },
  25924. weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),
  25925. weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'),
  25926. weekdaysParseExact: true,
  25927. longDateFormat: {
  25928. LT: 'HH:mm',
  25929. LTS: 'HH:mm:ss',
  25930. L: 'YYYY-MM-DD',
  25931. LL: 'YYYY [m.] MMMM D [d.]',
  25932. LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',
  25933. LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',
  25934. l: 'YYYY-MM-DD',
  25935. ll: 'YYYY [m.] MMMM D [d.]',
  25936. lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',
  25937. llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]' },
  25938. calendar: {
  25939. sameDay: '[Šiandien] LT',
  25940. nextDay: '[Rytoj] LT',
  25941. nextWeek: 'dddd LT',
  25942. lastDay: '[Vakar] LT',
  25943. lastWeek: '[Praėjusį] dddd LT',
  25944. sameElse: 'L' },
  25945. relativeTime: {
  25946. future: 'po %s',
  25947. past: 'prieš %s',
  25948. s: translateSeconds,
  25949. ss: translate,
  25950. m: translateSingular,
  25951. mm: translate,
  25952. h: translateSingular,
  25953. hh: translate,
  25954. d: translateSingular,
  25955. dd: translate,
  25956. M: translateSingular,
  25957. MM: translate,
  25958. y: translateSingular,
  25959. yy: translate },
  25960. dayOfMonthOrdinalParse: /\d{1,2}-oji/,
  25961. ordinal: function ordinal(number) {
  25962. return number + '-oji';
  25963. },
  25964. week: {
  25965. dow: 1, // Monday is the first day of the week.
  25966. doy: 4 // The week that contains Jan 4th is the first week of the year.
  25967. } });
  25968. return lt;
  25969. });
  25970. /***/ }),
  25971. /* 122 */
  25972. /*!*****************************************************************!*\
  25973. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/lv.js ***!
  25974. \*****************************************************************/
  25975. /*! no static exports found */
  25976. /***/ (function(module, exports, __webpack_require__) {
  25977. //! moment.js locale configuration
  25978. //! locale : Latvian [lv]
  25979. //! author : Kristaps Karlsons : https://github.com/skakri
  25980. //! author : Jānis Elmeris : https://github.com/JanisE
  25981. ;(function (global, factory) {
  25982. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  25983. undefined;
  25984. })(this, function (moment) {'use strict';
  25985. //! moment.js locale configuration
  25986. var units = {
  25987. ss: 'sekundes_sekundēm_sekunde_sekundes'.split('_'),
  25988. m: 'minūtes_minūtēm_minūte_minūtes'.split('_'),
  25989. mm: 'minūtes_minūtēm_minūte_minūtes'.split('_'),
  25990. h: 'stundas_stundām_stunda_stundas'.split('_'),
  25991. hh: 'stundas_stundām_stunda_stundas'.split('_'),
  25992. d: 'dienas_dienām_diena_dienas'.split('_'),
  25993. dd: 'dienas_dienām_diena_dienas'.split('_'),
  25994. M: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),
  25995. MM: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),
  25996. y: 'gada_gadiem_gads_gadi'.split('_'),
  25997. yy: 'gada_gadiem_gads_gadi'.split('_') };
  25998. /**
  25999. * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.
  26000. */
  26001. function format(forms, number, withoutSuffix) {
  26002. if (withoutSuffix) {
  26003. // E.g. "21 minūte", "3 minūtes".
  26004. return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];
  26005. } else {
  26006. // E.g. "21 minūtes" as in "pēc 21 minūtes".
  26007. // E.g. "3 minūtēm" as in "pēc 3 minūtēm".
  26008. return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];
  26009. }
  26010. }
  26011. function relativeTimeWithPlural(number, withoutSuffix, key) {
  26012. return number + ' ' + format(units[key], number, withoutSuffix);
  26013. }
  26014. function relativeTimeWithSingular(number, withoutSuffix, key) {
  26015. return format(units[key], number, withoutSuffix);
  26016. }
  26017. function relativeSeconds(number, withoutSuffix) {
  26018. return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';
  26019. }
  26020. var lv = moment.defineLocale('lv', {
  26021. months: 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split(
  26022. '_'),
  26023. monthsShort: 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),
  26024. weekdays:
  26025. 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split(
  26026. '_'),
  26027. weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'),
  26028. weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'),
  26029. weekdaysParseExact: true,
  26030. longDateFormat: {
  26031. LT: 'HH:mm',
  26032. LTS: 'HH:mm:ss',
  26033. L: 'DD.MM.YYYY.',
  26034. LL: 'YYYY. [gada] D. MMMM',
  26035. LLL: 'YYYY. [gada] D. MMMM, HH:mm',
  26036. LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm' },
  26037. calendar: {
  26038. sameDay: '[Šodien pulksten] LT',
  26039. nextDay: '[Rīt pulksten] LT',
  26040. nextWeek: 'dddd [pulksten] LT',
  26041. lastDay: '[Vakar pulksten] LT',
  26042. lastWeek: '[Pagājušā] dddd [pulksten] LT',
  26043. sameElse: 'L' },
  26044. relativeTime: {
  26045. future: 'pēc %s',
  26046. past: 'pirms %s',
  26047. s: relativeSeconds,
  26048. ss: relativeTimeWithPlural,
  26049. m: relativeTimeWithSingular,
  26050. mm: relativeTimeWithPlural,
  26051. h: relativeTimeWithSingular,
  26052. hh: relativeTimeWithPlural,
  26053. d: relativeTimeWithSingular,
  26054. dd: relativeTimeWithPlural,
  26055. M: relativeTimeWithSingular,
  26056. MM: relativeTimeWithPlural,
  26057. y: relativeTimeWithSingular,
  26058. yy: relativeTimeWithPlural },
  26059. dayOfMonthOrdinalParse: /\d{1,2}\./,
  26060. ordinal: '%d.',
  26061. week: {
  26062. dow: 1, // Monday is the first day of the week.
  26063. doy: 4 // The week that contains Jan 4th is the first week of the year.
  26064. } });
  26065. return lv;
  26066. });
  26067. /***/ }),
  26068. /* 123 */
  26069. /*!*****************************************************************!*\
  26070. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/me.js ***!
  26071. \*****************************************************************/
  26072. /*! no static exports found */
  26073. /***/ (function(module, exports, __webpack_require__) {
  26074. //! moment.js locale configuration
  26075. //! locale : Montenegrin [me]
  26076. //! author : Miodrag Nikač <miodrag@restartit.me> : https://github.com/miodragnikac
  26077. ;(function (global, factory) {
  26078. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26079. undefined;
  26080. })(this, function (moment) {'use strict';
  26081. //! moment.js locale configuration
  26082. var translator = {
  26083. words: {
  26084. //Different grammatical cases
  26085. ss: ['sekund', 'sekunda', 'sekundi'],
  26086. m: ['jedan minut', 'jednog minuta'],
  26087. mm: ['minut', 'minuta', 'minuta'],
  26088. h: ['jedan sat', 'jednog sata'],
  26089. hh: ['sat', 'sata', 'sati'],
  26090. dd: ['dan', 'dana', 'dana'],
  26091. MM: ['mjesec', 'mjeseca', 'mjeseci'],
  26092. yy: ['godina', 'godine', 'godina'] },
  26093. correctGrammaticalCase: function correctGrammaticalCase(number, wordKey) {
  26094. return number === 1 ?
  26095. wordKey[0] :
  26096. number >= 2 && number <= 4 ?
  26097. wordKey[1] :
  26098. wordKey[2];
  26099. },
  26100. translate: function translate(number, withoutSuffix, key) {
  26101. var wordKey = translator.words[key];
  26102. if (key.length === 1) {
  26103. return withoutSuffix ? wordKey[0] : wordKey[1];
  26104. } else {
  26105. return (
  26106. number +
  26107. ' ' +
  26108. translator.correctGrammaticalCase(number, wordKey));
  26109. }
  26110. } };
  26111. var me = moment.defineLocale('me', {
  26112. months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(
  26113. '_'),
  26114. monthsShort:
  26115. 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),
  26116. monthsParseExact: true,
  26117. weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(
  26118. '_'),
  26119. weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
  26120. weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),
  26121. weekdaysParseExact: true,
  26122. longDateFormat: {
  26123. LT: 'H:mm',
  26124. LTS: 'H:mm:ss',
  26125. L: 'DD.MM.YYYY',
  26126. LL: 'D. MMMM YYYY',
  26127. LLL: 'D. MMMM YYYY H:mm',
  26128. LLLL: 'dddd, D. MMMM YYYY H:mm' },
  26129. calendar: {
  26130. sameDay: '[danas u] LT',
  26131. nextDay: '[sjutra u] LT',
  26132. nextWeek: function nextWeek() {
  26133. switch (this.day()) {
  26134. case 0:
  26135. return '[u] [nedjelju] [u] LT';
  26136. case 3:
  26137. return '[u] [srijedu] [u] LT';
  26138. case 6:
  26139. return '[u] [subotu] [u] LT';
  26140. case 1:
  26141. case 2:
  26142. case 4:
  26143. case 5:
  26144. return '[u] dddd [u] LT';}
  26145. },
  26146. lastDay: '[juče u] LT',
  26147. lastWeek: function lastWeek() {
  26148. var lastWeekDays = [
  26149. '[prošle] [nedjelje] [u] LT',
  26150. '[prošlog] [ponedjeljka] [u] LT',
  26151. '[prošlog] [utorka] [u] LT',
  26152. '[prošle] [srijede] [u] LT',
  26153. '[prošlog] [četvrtka] [u] LT',
  26154. '[prošlog] [petka] [u] LT',
  26155. '[prošle] [subote] [u] LT'];
  26156. return lastWeekDays[this.day()];
  26157. },
  26158. sameElse: 'L' },
  26159. relativeTime: {
  26160. future: 'za %s',
  26161. past: 'prije %s',
  26162. s: 'nekoliko sekundi',
  26163. ss: translator.translate,
  26164. m: translator.translate,
  26165. mm: translator.translate,
  26166. h: translator.translate,
  26167. hh: translator.translate,
  26168. d: 'dan',
  26169. dd: translator.translate,
  26170. M: 'mjesec',
  26171. MM: translator.translate,
  26172. y: 'godinu',
  26173. yy: translator.translate },
  26174. dayOfMonthOrdinalParse: /\d{1,2}\./,
  26175. ordinal: '%d.',
  26176. week: {
  26177. dow: 1, // Monday is the first day of the week.
  26178. doy: 7 // The week that contains Jan 7th is the first week of the year.
  26179. } });
  26180. return me;
  26181. });
  26182. /***/ }),
  26183. /* 124 */
  26184. /*!*****************************************************************!*\
  26185. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/mi.js ***!
  26186. \*****************************************************************/
  26187. /*! no static exports found */
  26188. /***/ (function(module, exports, __webpack_require__) {
  26189. //! moment.js locale configuration
  26190. //! locale : Maori [mi]
  26191. //! author : John Corrigan <robbiecloset@gmail.com> : https://github.com/johnideal
  26192. ;(function (global, factory) {
  26193. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26194. undefined;
  26195. })(this, function (moment) {'use strict';
  26196. //! moment.js locale configuration
  26197. var mi = moment.defineLocale('mi', {
  26198. months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split(
  26199. '_'),
  26200. monthsShort:
  26201. 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split(
  26202. '_'),
  26203. monthsRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,
  26204. monthsStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,
  26205. monthsShortRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,
  26206. monthsShortStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,
  26207. weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),
  26208. weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),
  26209. weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),
  26210. longDateFormat: {
  26211. LT: 'HH:mm',
  26212. LTS: 'HH:mm:ss',
  26213. L: 'DD/MM/YYYY',
  26214. LL: 'D MMMM YYYY',
  26215. LLL: 'D MMMM YYYY [i] HH:mm',
  26216. LLLL: 'dddd, D MMMM YYYY [i] HH:mm' },
  26217. calendar: {
  26218. sameDay: '[i teie mahana, i] LT',
  26219. nextDay: '[apopo i] LT',
  26220. nextWeek: 'dddd [i] LT',
  26221. lastDay: '[inanahi i] LT',
  26222. lastWeek: 'dddd [whakamutunga i] LT',
  26223. sameElse: 'L' },
  26224. relativeTime: {
  26225. future: 'i roto i %s',
  26226. past: '%s i mua',
  26227. s: 'te hēkona ruarua',
  26228. ss: '%d hēkona',
  26229. m: 'he meneti',
  26230. mm: '%d meneti',
  26231. h: 'te haora',
  26232. hh: '%d haora',
  26233. d: 'he ra',
  26234. dd: '%d ra',
  26235. M: 'he marama',
  26236. MM: '%d marama',
  26237. y: 'he tau',
  26238. yy: '%d tau' },
  26239. dayOfMonthOrdinalParse: /\d{1,2}º/,
  26240. ordinal: '%dº',
  26241. week: {
  26242. dow: 1, // Monday is the first day of the week.
  26243. doy: 4 // The week that contains Jan 4th is the first week of the year.
  26244. } });
  26245. return mi;
  26246. });
  26247. /***/ }),
  26248. /* 125 */
  26249. /*!*****************************************************************!*\
  26250. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/mk.js ***!
  26251. \*****************************************************************/
  26252. /*! no static exports found */
  26253. /***/ (function(module, exports, __webpack_require__) {
  26254. //! moment.js locale configuration
  26255. //! locale : Macedonian [mk]
  26256. //! author : Borislav Mickov : https://github.com/B0k0
  26257. //! author : Sashko Todorov : https://github.com/bkyceh
  26258. ;(function (global, factory) {
  26259. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26260. undefined;
  26261. })(this, function (moment) {'use strict';
  26262. //! moment.js locale configuration
  26263. var mk = moment.defineLocale('mk', {
  26264. months: 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split(
  26265. '_'),
  26266. monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),
  26267. weekdays: 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split(
  26268. '_'),
  26269. weekdaysShort: 'нед_пон_вто_сре_чет_пет_саб'.split('_'),
  26270. weekdaysMin: 'нe_пo_вт_ср_че_пе_сa'.split('_'),
  26271. longDateFormat: {
  26272. LT: 'H:mm',
  26273. LTS: 'H:mm:ss',
  26274. L: 'D.MM.YYYY',
  26275. LL: 'D MMMM YYYY',
  26276. LLL: 'D MMMM YYYY H:mm',
  26277. LLLL: 'dddd, D MMMM YYYY H:mm' },
  26278. calendar: {
  26279. sameDay: '[Денес во] LT',
  26280. nextDay: '[Утре во] LT',
  26281. nextWeek: '[Во] dddd [во] LT',
  26282. lastDay: '[Вчера во] LT',
  26283. lastWeek: function lastWeek() {
  26284. switch (this.day()) {
  26285. case 0:
  26286. case 3:
  26287. case 6:
  26288. return '[Изминатата] dddd [во] LT';
  26289. case 1:
  26290. case 2:
  26291. case 4:
  26292. case 5:
  26293. return '[Изминатиот] dddd [во] LT';}
  26294. },
  26295. sameElse: 'L' },
  26296. relativeTime: {
  26297. future: 'за %s',
  26298. past: 'пред %s',
  26299. s: 'неколку секунди',
  26300. ss: '%d секунди',
  26301. m: 'една минута',
  26302. mm: '%d минути',
  26303. h: 'еден час',
  26304. hh: '%d часа',
  26305. d: 'еден ден',
  26306. dd: '%d дена',
  26307. M: 'еден месец',
  26308. MM: '%d месеци',
  26309. y: 'една година',
  26310. yy: '%d години' },
  26311. dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
  26312. ordinal: function ordinal(number) {
  26313. var lastDigit = number % 10,
  26314. last2Digits = number % 100;
  26315. if (number === 0) {
  26316. return number + '-ев';
  26317. } else if (last2Digits === 0) {
  26318. return number + '-ен';
  26319. } else if (last2Digits > 10 && last2Digits < 20) {
  26320. return number + '-ти';
  26321. } else if (lastDigit === 1) {
  26322. return number + '-ви';
  26323. } else if (lastDigit === 2) {
  26324. return number + '-ри';
  26325. } else if (lastDigit === 7 || lastDigit === 8) {
  26326. return number + '-ми';
  26327. } else {
  26328. return number + '-ти';
  26329. }
  26330. },
  26331. week: {
  26332. dow: 1, // Monday is the first day of the week.
  26333. doy: 7 // The week that contains Jan 7th is the first week of the year.
  26334. } });
  26335. return mk;
  26336. });
  26337. /***/ }),
  26338. /* 126 */
  26339. /*!*****************************************************************!*\
  26340. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ml.js ***!
  26341. \*****************************************************************/
  26342. /*! no static exports found */
  26343. /***/ (function(module, exports, __webpack_require__) {
  26344. //! moment.js locale configuration
  26345. //! locale : Malayalam [ml]
  26346. //! author : Floyd Pink : https://github.com/floydpink
  26347. ;(function (global, factory) {
  26348. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26349. undefined;
  26350. })(this, function (moment) {'use strict';
  26351. //! moment.js locale configuration
  26352. var ml = moment.defineLocale('ml', {
  26353. months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split(
  26354. '_'),
  26355. monthsShort:
  26356. 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split(
  26357. '_'),
  26358. monthsParseExact: true,
  26359. weekdays:
  26360. 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split(
  26361. '_'),
  26362. weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),
  26363. weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),
  26364. longDateFormat: {
  26365. LT: 'A h:mm -നു',
  26366. LTS: 'A h:mm:ss -നു',
  26367. L: 'DD/MM/YYYY',
  26368. LL: 'D MMMM YYYY',
  26369. LLL: 'D MMMM YYYY, A h:mm -നു',
  26370. LLLL: 'dddd, D MMMM YYYY, A h:mm -നു' },
  26371. calendar: {
  26372. sameDay: '[ഇന്ന്] LT',
  26373. nextDay: '[നാളെ] LT',
  26374. nextWeek: 'dddd, LT',
  26375. lastDay: '[ഇന്നലെ] LT',
  26376. lastWeek: '[കഴിഞ്ഞ] dddd, LT',
  26377. sameElse: 'L' },
  26378. relativeTime: {
  26379. future: '%s കഴിഞ്ഞ്',
  26380. past: '%s മുൻപ്',
  26381. s: 'അൽപ നിമിഷങ്ങൾ',
  26382. ss: '%d സെക്കൻഡ്',
  26383. m: 'ഒരു മിനിറ്റ്',
  26384. mm: '%d മിനിറ്റ്',
  26385. h: 'ഒരു മണിക്കൂർ',
  26386. hh: '%d മണിക്കൂർ',
  26387. d: 'ഒരു ദിവസം',
  26388. dd: '%d ദിവസം',
  26389. M: 'ഒരു മാസം',
  26390. MM: '%d മാസം',
  26391. y: 'ഒരു വർഷം',
  26392. yy: '%d വർഷം' },
  26393. meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,
  26394. meridiemHour: function meridiemHour(hour, meridiem) {
  26395. if (hour === 12) {
  26396. hour = 0;
  26397. }
  26398. if (
  26399. meridiem === 'രാത്രി' && hour >= 4 ||
  26400. meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||
  26401. meridiem === 'വൈകുന്നേരം')
  26402. {
  26403. return hour + 12;
  26404. } else {
  26405. return hour;
  26406. }
  26407. },
  26408. meridiem: function meridiem(hour, minute, isLower) {
  26409. if (hour < 4) {
  26410. return 'രാത്രി';
  26411. } else if (hour < 12) {
  26412. return 'രാവിലെ';
  26413. } else if (hour < 17) {
  26414. return 'ഉച്ച കഴിഞ്ഞ്';
  26415. } else if (hour < 20) {
  26416. return 'വൈകുന്നേരം';
  26417. } else {
  26418. return 'രാത്രി';
  26419. }
  26420. } });
  26421. return ml;
  26422. });
  26423. /***/ }),
  26424. /* 127 */
  26425. /*!*****************************************************************!*\
  26426. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/mn.js ***!
  26427. \*****************************************************************/
  26428. /*! no static exports found */
  26429. /***/ (function(module, exports, __webpack_require__) {
  26430. //! moment.js locale configuration
  26431. //! locale : Mongolian [mn]
  26432. //! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7
  26433. ;(function (global, factory) {
  26434. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26435. undefined;
  26436. })(this, function (moment) {'use strict';
  26437. //! moment.js locale configuration
  26438. function translate(number, withoutSuffix, key, isFuture) {
  26439. switch (key) {
  26440. case 's':
  26441. return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';
  26442. case 'ss':
  26443. return number + (withoutSuffix ? ' секунд' : ' секундын');
  26444. case 'm':
  26445. case 'mm':
  26446. return number + (withoutSuffix ? ' минут' : ' минутын');
  26447. case 'h':
  26448. case 'hh':
  26449. return number + (withoutSuffix ? ' цаг' : ' цагийн');
  26450. case 'd':
  26451. case 'dd':
  26452. return number + (withoutSuffix ? ' өдөр' : ' өдрийн');
  26453. case 'M':
  26454. case 'MM':
  26455. return number + (withoutSuffix ? ' сар' : ' сарын');
  26456. case 'y':
  26457. case 'yy':
  26458. return number + (withoutSuffix ? ' жил' : ' жилийн');
  26459. default:
  26460. return number;}
  26461. }
  26462. var mn = moment.defineLocale('mn', {
  26463. months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split(
  26464. '_'),
  26465. monthsShort:
  26466. '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split(
  26467. '_'),
  26468. monthsParseExact: true,
  26469. weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),
  26470. weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),
  26471. weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),
  26472. weekdaysParseExact: true,
  26473. longDateFormat: {
  26474. LT: 'HH:mm',
  26475. LTS: 'HH:mm:ss',
  26476. L: 'YYYY-MM-DD',
  26477. LL: 'YYYY оны MMMMын D',
  26478. LLL: 'YYYY оны MMMMын D HH:mm',
  26479. LLLL: 'dddd, YYYY оны MMMMын D HH:mm' },
  26480. meridiemParse: /ҮӨ|ҮХ/i,
  26481. isPM: function isPM(input) {
  26482. return input === 'ҮХ';
  26483. },
  26484. meridiem: function meridiem(hour, minute, isLower) {
  26485. if (hour < 12) {
  26486. return 'ҮӨ';
  26487. } else {
  26488. return 'ҮХ';
  26489. }
  26490. },
  26491. calendar: {
  26492. sameDay: '[Өнөөдөр] LT',
  26493. nextDay: '[Маргааш] LT',
  26494. nextWeek: '[Ирэх] dddd LT',
  26495. lastDay: '[Өчигдөр] LT',
  26496. lastWeek: '[Өнгөрсөн] dddd LT',
  26497. sameElse: 'L' },
  26498. relativeTime: {
  26499. future: '%s дараа',
  26500. past: '%s өмнө',
  26501. s: translate,
  26502. ss: translate,
  26503. m: translate,
  26504. mm: translate,
  26505. h: translate,
  26506. hh: translate,
  26507. d: translate,
  26508. dd: translate,
  26509. M: translate,
  26510. MM: translate,
  26511. y: translate,
  26512. yy: translate },
  26513. dayOfMonthOrdinalParse: /\d{1,2} өдөр/,
  26514. ordinal: function ordinal(number, period) {
  26515. switch (period) {
  26516. case 'd':
  26517. case 'D':
  26518. case 'DDD':
  26519. return number + ' өдөр';
  26520. default:
  26521. return number;}
  26522. } });
  26523. return mn;
  26524. });
  26525. /***/ }),
  26526. /* 128 */
  26527. /*!*****************************************************************!*\
  26528. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/mr.js ***!
  26529. \*****************************************************************/
  26530. /*! no static exports found */
  26531. /***/ (function(module, exports, __webpack_require__) {
  26532. //! moment.js locale configuration
  26533. //! locale : Marathi [mr]
  26534. //! author : Harshad Kale : https://github.com/kalehv
  26535. //! author : Vivek Athalye : https://github.com/vnathalye
  26536. ;(function (global, factory) {
  26537. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26538. undefined;
  26539. })(this, function (moment) {'use strict';
  26540. //! moment.js locale configuration
  26541. var symbolMap = {
  26542. 1: '१',
  26543. 2: '२',
  26544. 3: '३',
  26545. 4: '४',
  26546. 5: '५',
  26547. 6: '६',
  26548. 7: '७',
  26549. 8: '८',
  26550. 9: '९',
  26551. 0: '०' },
  26552. numberMap = {
  26553. '१': '1',
  26554. '२': '2',
  26555. '३': '3',
  26556. '४': '4',
  26557. '५': '5',
  26558. '६': '6',
  26559. '७': '7',
  26560. '८': '8',
  26561. '९': '9',
  26562. '०': '0' };
  26563. function relativeTimeMr(number, withoutSuffix, string, isFuture) {
  26564. var output = '';
  26565. if (withoutSuffix) {
  26566. switch (string) {
  26567. case 's':
  26568. output = 'काही सेकंद';
  26569. break;
  26570. case 'ss':
  26571. output = '%d सेकंद';
  26572. break;
  26573. case 'm':
  26574. output = 'एक मिनिट';
  26575. break;
  26576. case 'mm':
  26577. output = '%d मिनिटे';
  26578. break;
  26579. case 'h':
  26580. output = 'एक तास';
  26581. break;
  26582. case 'hh':
  26583. output = '%d तास';
  26584. break;
  26585. case 'd':
  26586. output = 'एक दिवस';
  26587. break;
  26588. case 'dd':
  26589. output = '%d दिवस';
  26590. break;
  26591. case 'M':
  26592. output = 'एक महिना';
  26593. break;
  26594. case 'MM':
  26595. output = '%d महिने';
  26596. break;
  26597. case 'y':
  26598. output = 'एक वर्ष';
  26599. break;
  26600. case 'yy':
  26601. output = '%d वर्षे';
  26602. break;}
  26603. } else {
  26604. switch (string) {
  26605. case 's':
  26606. output = 'काही सेकंदां';
  26607. break;
  26608. case 'ss':
  26609. output = '%d सेकंदां';
  26610. break;
  26611. case 'm':
  26612. output = 'एका मिनिटा';
  26613. break;
  26614. case 'mm':
  26615. output = '%d मिनिटां';
  26616. break;
  26617. case 'h':
  26618. output = 'एका तासा';
  26619. break;
  26620. case 'hh':
  26621. output = '%d तासां';
  26622. break;
  26623. case 'd':
  26624. output = 'एका दिवसा';
  26625. break;
  26626. case 'dd':
  26627. output = '%d दिवसां';
  26628. break;
  26629. case 'M':
  26630. output = 'एका महिन्या';
  26631. break;
  26632. case 'MM':
  26633. output = '%d महिन्यां';
  26634. break;
  26635. case 'y':
  26636. output = 'एका वर्षा';
  26637. break;
  26638. case 'yy':
  26639. output = '%d वर्षां';
  26640. break;}
  26641. }
  26642. return output.replace(/%d/i, number);
  26643. }
  26644. var mr = moment.defineLocale('mr', {
  26645. months: 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(
  26646. '_'),
  26647. monthsShort:
  26648. 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(
  26649. '_'),
  26650. monthsParseExact: true,
  26651. weekdays: 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),
  26652. weekdaysShort: 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),
  26653. weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),
  26654. longDateFormat: {
  26655. LT: 'A h:mm वाजता',
  26656. LTS: 'A h:mm:ss वाजता',
  26657. L: 'DD/MM/YYYY',
  26658. LL: 'D MMMM YYYY',
  26659. LLL: 'D MMMM YYYY, A h:mm वाजता',
  26660. LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता' },
  26661. calendar: {
  26662. sameDay: '[आज] LT',
  26663. nextDay: '[उद्या] LT',
  26664. nextWeek: 'dddd, LT',
  26665. lastDay: '[काल] LT',
  26666. lastWeek: '[मागील] dddd, LT',
  26667. sameElse: 'L' },
  26668. relativeTime: {
  26669. future: '%sमध्ये',
  26670. past: '%sपूर्वी',
  26671. s: relativeTimeMr,
  26672. ss: relativeTimeMr,
  26673. m: relativeTimeMr,
  26674. mm: relativeTimeMr,
  26675. h: relativeTimeMr,
  26676. hh: relativeTimeMr,
  26677. d: relativeTimeMr,
  26678. dd: relativeTimeMr,
  26679. M: relativeTimeMr,
  26680. MM: relativeTimeMr,
  26681. y: relativeTimeMr,
  26682. yy: relativeTimeMr },
  26683. preparse: function preparse(string) {
  26684. return string.replace(/[१२३४५६७८९०]/g, function (match) {
  26685. return numberMap[match];
  26686. });
  26687. },
  26688. postformat: function postformat(string) {
  26689. return string.replace(/\d/g, function (match) {
  26690. return symbolMap[match];
  26691. });
  26692. },
  26693. meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,
  26694. meridiemHour: function meridiemHour(hour, meridiem) {
  26695. if (hour === 12) {
  26696. hour = 0;
  26697. }
  26698. if (meridiem === 'पहाटे' || meridiem === 'सकाळी') {
  26699. return hour;
  26700. } else if (
  26701. meridiem === 'दुपारी' ||
  26702. meridiem === 'सायंकाळी' ||
  26703. meridiem === 'रात्री')
  26704. {
  26705. return hour >= 12 ? hour : hour + 12;
  26706. }
  26707. },
  26708. meridiem: function meridiem(hour, minute, isLower) {
  26709. if (hour >= 0 && hour < 6) {
  26710. return 'पहाटे';
  26711. } else if (hour < 12) {
  26712. return 'सकाळी';
  26713. } else if (hour < 17) {
  26714. return 'दुपारी';
  26715. } else if (hour < 20) {
  26716. return 'सायंकाळी';
  26717. } else {
  26718. return 'रात्री';
  26719. }
  26720. },
  26721. week: {
  26722. dow: 0, // Sunday is the first day of the week.
  26723. doy: 6 // The week that contains Jan 6th is the first week of the year.
  26724. } });
  26725. return mr;
  26726. });
  26727. /***/ }),
  26728. /* 129 */
  26729. /*!*****************************************************************!*\
  26730. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ms.js ***!
  26731. \*****************************************************************/
  26732. /*! no static exports found */
  26733. /***/ (function(module, exports, __webpack_require__) {
  26734. //! moment.js locale configuration
  26735. //! locale : Malay [ms]
  26736. //! author : Weldan Jamili : https://github.com/weldan
  26737. ;(function (global, factory) {
  26738. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26739. undefined;
  26740. })(this, function (moment) {'use strict';
  26741. //! moment.js locale configuration
  26742. var ms = moment.defineLocale('ms', {
  26743. months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(
  26744. '_'),
  26745. monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),
  26746. weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),
  26747. weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),
  26748. weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),
  26749. longDateFormat: {
  26750. LT: 'HH.mm',
  26751. LTS: 'HH.mm.ss',
  26752. L: 'DD/MM/YYYY',
  26753. LL: 'D MMMM YYYY',
  26754. LLL: 'D MMMM YYYY [pukul] HH.mm',
  26755. LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm' },
  26756. meridiemParse: /pagi|tengahari|petang|malam/,
  26757. meridiemHour: function meridiemHour(hour, meridiem) {
  26758. if (hour === 12) {
  26759. hour = 0;
  26760. }
  26761. if (meridiem === 'pagi') {
  26762. return hour;
  26763. } else if (meridiem === 'tengahari') {
  26764. return hour >= 11 ? hour : hour + 12;
  26765. } else if (meridiem === 'petang' || meridiem === 'malam') {
  26766. return hour + 12;
  26767. }
  26768. },
  26769. meridiem: function meridiem(hours, minutes, isLower) {
  26770. if (hours < 11) {
  26771. return 'pagi';
  26772. } else if (hours < 15) {
  26773. return 'tengahari';
  26774. } else if (hours < 19) {
  26775. return 'petang';
  26776. } else {
  26777. return 'malam';
  26778. }
  26779. },
  26780. calendar: {
  26781. sameDay: '[Hari ini pukul] LT',
  26782. nextDay: '[Esok pukul] LT',
  26783. nextWeek: 'dddd [pukul] LT',
  26784. lastDay: '[Kelmarin pukul] LT',
  26785. lastWeek: 'dddd [lepas pukul] LT',
  26786. sameElse: 'L' },
  26787. relativeTime: {
  26788. future: 'dalam %s',
  26789. past: '%s yang lepas',
  26790. s: 'beberapa saat',
  26791. ss: '%d saat',
  26792. m: 'seminit',
  26793. mm: '%d minit',
  26794. h: 'sejam',
  26795. hh: '%d jam',
  26796. d: 'sehari',
  26797. dd: '%d hari',
  26798. M: 'sebulan',
  26799. MM: '%d bulan',
  26800. y: 'setahun',
  26801. yy: '%d tahun' },
  26802. week: {
  26803. dow: 1, // Monday is the first day of the week.
  26804. doy: 7 // The week that contains Jan 7th is the first week of the year.
  26805. } });
  26806. return ms;
  26807. });
  26808. /***/ }),
  26809. /* 130 */
  26810. /*!********************************************************************!*\
  26811. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ms-my.js ***!
  26812. \********************************************************************/
  26813. /*! no static exports found */
  26814. /***/ (function(module, exports, __webpack_require__) {
  26815. //! moment.js locale configuration
  26816. //! locale : Malay [ms-my]
  26817. //! note : DEPRECATED, the correct one is [ms]
  26818. //! author : Weldan Jamili : https://github.com/weldan
  26819. ;(function (global, factory) {
  26820. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26821. undefined;
  26822. })(this, function (moment) {'use strict';
  26823. //! moment.js locale configuration
  26824. var msMy = moment.defineLocale('ms-my', {
  26825. months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(
  26826. '_'),
  26827. monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),
  26828. weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),
  26829. weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),
  26830. weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),
  26831. longDateFormat: {
  26832. LT: 'HH.mm',
  26833. LTS: 'HH.mm.ss',
  26834. L: 'DD/MM/YYYY',
  26835. LL: 'D MMMM YYYY',
  26836. LLL: 'D MMMM YYYY [pukul] HH.mm',
  26837. LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm' },
  26838. meridiemParse: /pagi|tengahari|petang|malam/,
  26839. meridiemHour: function meridiemHour(hour, meridiem) {
  26840. if (hour === 12) {
  26841. hour = 0;
  26842. }
  26843. if (meridiem === 'pagi') {
  26844. return hour;
  26845. } else if (meridiem === 'tengahari') {
  26846. return hour >= 11 ? hour : hour + 12;
  26847. } else if (meridiem === 'petang' || meridiem === 'malam') {
  26848. return hour + 12;
  26849. }
  26850. },
  26851. meridiem: function meridiem(hours, minutes, isLower) {
  26852. if (hours < 11) {
  26853. return 'pagi';
  26854. } else if (hours < 15) {
  26855. return 'tengahari';
  26856. } else if (hours < 19) {
  26857. return 'petang';
  26858. } else {
  26859. return 'malam';
  26860. }
  26861. },
  26862. calendar: {
  26863. sameDay: '[Hari ini pukul] LT',
  26864. nextDay: '[Esok pukul] LT',
  26865. nextWeek: 'dddd [pukul] LT',
  26866. lastDay: '[Kelmarin pukul] LT',
  26867. lastWeek: 'dddd [lepas pukul] LT',
  26868. sameElse: 'L' },
  26869. relativeTime: {
  26870. future: 'dalam %s',
  26871. past: '%s yang lepas',
  26872. s: 'beberapa saat',
  26873. ss: '%d saat',
  26874. m: 'seminit',
  26875. mm: '%d minit',
  26876. h: 'sejam',
  26877. hh: '%d jam',
  26878. d: 'sehari',
  26879. dd: '%d hari',
  26880. M: 'sebulan',
  26881. MM: '%d bulan',
  26882. y: 'setahun',
  26883. yy: '%d tahun' },
  26884. week: {
  26885. dow: 1, // Monday is the first day of the week.
  26886. doy: 7 // The week that contains Jan 7th is the first week of the year.
  26887. } });
  26888. return msMy;
  26889. });
  26890. /***/ }),
  26891. /* 131 */
  26892. /*!*****************************************************************!*\
  26893. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/mt.js ***!
  26894. \*****************************************************************/
  26895. /*! no static exports found */
  26896. /***/ (function(module, exports, __webpack_require__) {
  26897. //! moment.js locale configuration
  26898. //! locale : Maltese (Malta) [mt]
  26899. //! author : Alessandro Maruccia : https://github.com/alesma
  26900. ;(function (global, factory) {
  26901. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26902. undefined;
  26903. })(this, function (moment) {'use strict';
  26904. //! moment.js locale configuration
  26905. var mt = moment.defineLocale('mt', {
  26906. months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split(
  26907. '_'),
  26908. monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'),
  26909. weekdays:
  26910. 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split(
  26911. '_'),
  26912. weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'),
  26913. weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'),
  26914. longDateFormat: {
  26915. LT: 'HH:mm',
  26916. LTS: 'HH:mm:ss',
  26917. L: 'DD/MM/YYYY',
  26918. LL: 'D MMMM YYYY',
  26919. LLL: 'D MMMM YYYY HH:mm',
  26920. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  26921. calendar: {
  26922. sameDay: '[Illum fil-]LT',
  26923. nextDay: '[Għada fil-]LT',
  26924. nextWeek: 'dddd [fil-]LT',
  26925. lastDay: '[Il-bieraħ fil-]LT',
  26926. lastWeek: 'dddd [li għadda] [fil-]LT',
  26927. sameElse: 'L' },
  26928. relativeTime: {
  26929. future: 'f’ %s',
  26930. past: '%s ilu',
  26931. s: 'ftit sekondi',
  26932. ss: '%d sekondi',
  26933. m: 'minuta',
  26934. mm: '%d minuti',
  26935. h: 'siegħa',
  26936. hh: '%d siegħat',
  26937. d: 'ġurnata',
  26938. dd: '%d ġranet',
  26939. M: 'xahar',
  26940. MM: '%d xhur',
  26941. y: 'sena',
  26942. yy: '%d sni' },
  26943. dayOfMonthOrdinalParse: /\d{1,2}º/,
  26944. ordinal: '%dº',
  26945. week: {
  26946. dow: 1, // Monday is the first day of the week.
  26947. doy: 4 // The week that contains Jan 4th is the first week of the year.
  26948. } });
  26949. return mt;
  26950. });
  26951. /***/ }),
  26952. /* 132 */
  26953. /*!*****************************************************************!*\
  26954. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/my.js ***!
  26955. \*****************************************************************/
  26956. /*! no static exports found */
  26957. /***/ (function(module, exports, __webpack_require__) {
  26958. //! moment.js locale configuration
  26959. //! locale : Burmese [my]
  26960. //! author : Squar team, mysquar.com
  26961. //! author : David Rossellat : https://github.com/gholadr
  26962. //! author : Tin Aung Lin : https://github.com/thanyawzinmin
  26963. ;(function (global, factory) {
  26964. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  26965. undefined;
  26966. })(this, function (moment) {'use strict';
  26967. //! moment.js locale configuration
  26968. var symbolMap = {
  26969. 1: '၁',
  26970. 2: '၂',
  26971. 3: '၃',
  26972. 4: '၄',
  26973. 5: '၅',
  26974. 6: '၆',
  26975. 7: '၇',
  26976. 8: '၈',
  26977. 9: '၉',
  26978. 0: '၀' },
  26979. numberMap = {
  26980. '၁': '1',
  26981. '၂': '2',
  26982. '၃': '3',
  26983. '၄': '4',
  26984. '၅': '5',
  26985. '၆': '6',
  26986. '၇': '7',
  26987. '၈': '8',
  26988. '၉': '9',
  26989. '၀': '0' };
  26990. var my = moment.defineLocale('my', {
  26991. months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split(
  26992. '_'),
  26993. monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),
  26994. weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split(
  26995. '_'),
  26996. weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),
  26997. weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),
  26998. longDateFormat: {
  26999. LT: 'HH:mm',
  27000. LTS: 'HH:mm:ss',
  27001. L: 'DD/MM/YYYY',
  27002. LL: 'D MMMM YYYY',
  27003. LLL: 'D MMMM YYYY HH:mm',
  27004. LLLL: 'dddd D MMMM YYYY HH:mm' },
  27005. calendar: {
  27006. sameDay: '[ယနေ.] LT [မှာ]',
  27007. nextDay: '[မနက်ဖြန်] LT [မှာ]',
  27008. nextWeek: 'dddd LT [မှာ]',
  27009. lastDay: '[မနေ.က] LT [မှာ]',
  27010. lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',
  27011. sameElse: 'L' },
  27012. relativeTime: {
  27013. future: 'လာမည့် %s မှာ',
  27014. past: 'လွန်ခဲ့သော %s က',
  27015. s: 'စက္ကန်.အနည်းငယ်',
  27016. ss: '%d စက္ကန့်',
  27017. m: 'တစ်မိနစ်',
  27018. mm: '%d မိနစ်',
  27019. h: 'တစ်နာရီ',
  27020. hh: '%d နာရီ',
  27021. d: 'တစ်ရက်',
  27022. dd: '%d ရက်',
  27023. M: 'တစ်လ',
  27024. MM: '%d လ',
  27025. y: 'တစ်နှစ်',
  27026. yy: '%d နှစ်' },
  27027. preparse: function preparse(string) {
  27028. return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {
  27029. return numberMap[match];
  27030. });
  27031. },
  27032. postformat: function postformat(string) {
  27033. return string.replace(/\d/g, function (match) {
  27034. return symbolMap[match];
  27035. });
  27036. },
  27037. week: {
  27038. dow: 1, // Monday is the first day of the week.
  27039. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27040. } });
  27041. return my;
  27042. });
  27043. /***/ }),
  27044. /* 133 */
  27045. /*!*****************************************************************!*\
  27046. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/nb.js ***!
  27047. \*****************************************************************/
  27048. /*! no static exports found */
  27049. /***/ (function(module, exports, __webpack_require__) {
  27050. //! moment.js locale configuration
  27051. //! locale : Norwegian Bokmål [nb]
  27052. //! authors : Espen Hovlandsdal : https://github.com/rexxars
  27053. //! Sigurd Gartmann : https://github.com/sigurdga
  27054. //! Stephen Ramthun : https://github.com/stephenramthun
  27055. ;(function (global, factory) {
  27056. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27057. undefined;
  27058. })(this, function (moment) {'use strict';
  27059. //! moment.js locale configuration
  27060. var nb = moment.defineLocale('nb', {
  27061. months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(
  27062. '_'),
  27063. monthsShort:
  27064. 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),
  27065. monthsParseExact: true,
  27066. weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),
  27067. weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'),
  27068. weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),
  27069. weekdaysParseExact: true,
  27070. longDateFormat: {
  27071. LT: 'HH:mm',
  27072. LTS: 'HH:mm:ss',
  27073. L: 'DD.MM.YYYY',
  27074. LL: 'D. MMMM YYYY',
  27075. LLL: 'D. MMMM YYYY [kl.] HH:mm',
  27076. LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm' },
  27077. calendar: {
  27078. sameDay: '[i dag kl.] LT',
  27079. nextDay: '[i morgen kl.] LT',
  27080. nextWeek: 'dddd [kl.] LT',
  27081. lastDay: '[i går kl.] LT',
  27082. lastWeek: '[forrige] dddd [kl.] LT',
  27083. sameElse: 'L' },
  27084. relativeTime: {
  27085. future: 'om %s',
  27086. past: '%s siden',
  27087. s: 'noen sekunder',
  27088. ss: '%d sekunder',
  27089. m: 'ett minutt',
  27090. mm: '%d minutter',
  27091. h: 'en time',
  27092. hh: '%d timer',
  27093. d: 'en dag',
  27094. dd: '%d dager',
  27095. w: 'en uke',
  27096. ww: '%d uker',
  27097. M: 'en måned',
  27098. MM: '%d måneder',
  27099. y: 'ett år',
  27100. yy: '%d år' },
  27101. dayOfMonthOrdinalParse: /\d{1,2}\./,
  27102. ordinal: '%d.',
  27103. week: {
  27104. dow: 1, // Monday is the first day of the week.
  27105. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27106. } });
  27107. return nb;
  27108. });
  27109. /***/ }),
  27110. /* 134 */
  27111. /*!*****************************************************************!*\
  27112. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ne.js ***!
  27113. \*****************************************************************/
  27114. /*! no static exports found */
  27115. /***/ (function(module, exports, __webpack_require__) {
  27116. //! moment.js locale configuration
  27117. //! locale : Nepalese [ne]
  27118. //! author : suvash : https://github.com/suvash
  27119. ;(function (global, factory) {
  27120. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27121. undefined;
  27122. })(this, function (moment) {'use strict';
  27123. //! moment.js locale configuration
  27124. var symbolMap = {
  27125. 1: '१',
  27126. 2: '२',
  27127. 3: '३',
  27128. 4: '४',
  27129. 5: '५',
  27130. 6: '६',
  27131. 7: '७',
  27132. 8: '८',
  27133. 9: '९',
  27134. 0: '०' },
  27135. numberMap = {
  27136. '१': '1',
  27137. '२': '2',
  27138. '३': '3',
  27139. '४': '4',
  27140. '५': '5',
  27141. '६': '6',
  27142. '७': '7',
  27143. '८': '8',
  27144. '९': '9',
  27145. '०': '0' };
  27146. var ne = moment.defineLocale('ne', {
  27147. months: 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split(
  27148. '_'),
  27149. monthsShort:
  27150. 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split(
  27151. '_'),
  27152. monthsParseExact: true,
  27153. weekdays: 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split(
  27154. '_'),
  27155. weekdaysShort: 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),
  27156. weekdaysMin: 'आ._सो._मं._बु._बि._शु._श.'.split('_'),
  27157. weekdaysParseExact: true,
  27158. longDateFormat: {
  27159. LT: 'Aको h:mm बजे',
  27160. LTS: 'Aको h:mm:ss बजे',
  27161. L: 'DD/MM/YYYY',
  27162. LL: 'D MMMM YYYY',
  27163. LLL: 'D MMMM YYYY, Aको h:mm बजे',
  27164. LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे' },
  27165. preparse: function preparse(string) {
  27166. return string.replace(/[१२३४५६७८९०]/g, function (match) {
  27167. return numberMap[match];
  27168. });
  27169. },
  27170. postformat: function postformat(string) {
  27171. return string.replace(/\d/g, function (match) {
  27172. return symbolMap[match];
  27173. });
  27174. },
  27175. meridiemParse: /राति|बिहान|दिउँसो|साँझ/,
  27176. meridiemHour: function meridiemHour(hour, meridiem) {
  27177. if (hour === 12) {
  27178. hour = 0;
  27179. }
  27180. if (meridiem === 'राति') {
  27181. return hour < 4 ? hour : hour + 12;
  27182. } else if (meridiem === 'बिहान') {
  27183. return hour;
  27184. } else if (meridiem === 'दिउँसो') {
  27185. return hour >= 10 ? hour : hour + 12;
  27186. } else if (meridiem === 'साँझ') {
  27187. return hour + 12;
  27188. }
  27189. },
  27190. meridiem: function meridiem(hour, minute, isLower) {
  27191. if (hour < 3) {
  27192. return 'राति';
  27193. } else if (hour < 12) {
  27194. return 'बिहान';
  27195. } else if (hour < 16) {
  27196. return 'दिउँसो';
  27197. } else if (hour < 20) {
  27198. return 'साँझ';
  27199. } else {
  27200. return 'राति';
  27201. }
  27202. },
  27203. calendar: {
  27204. sameDay: '[आज] LT',
  27205. nextDay: '[भोलि] LT',
  27206. nextWeek: '[आउँदो] dddd[,] LT',
  27207. lastDay: '[हिजो] LT',
  27208. lastWeek: '[गएको] dddd[,] LT',
  27209. sameElse: 'L' },
  27210. relativeTime: {
  27211. future: '%sमा',
  27212. past: '%s अगाडि',
  27213. s: 'केही क्षण',
  27214. ss: '%d सेकेण्ड',
  27215. m: 'एक मिनेट',
  27216. mm: '%d मिनेट',
  27217. h: 'एक घण्टा',
  27218. hh: '%d घण्टा',
  27219. d: 'एक दिन',
  27220. dd: '%d दिन',
  27221. M: 'एक महिना',
  27222. MM: '%d महिना',
  27223. y: 'एक बर्ष',
  27224. yy: '%d बर्ष' },
  27225. week: {
  27226. dow: 0, // Sunday is the first day of the week.
  27227. doy: 6 // The week that contains Jan 6th is the first week of the year.
  27228. } });
  27229. return ne;
  27230. });
  27231. /***/ }),
  27232. /* 135 */
  27233. /*!*****************************************************************!*\
  27234. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/nl.js ***!
  27235. \*****************************************************************/
  27236. /*! no static exports found */
  27237. /***/ (function(module, exports, __webpack_require__) {
  27238. //! moment.js locale configuration
  27239. //! locale : Dutch [nl]
  27240. //! author : Joris Röling : https://github.com/jorisroling
  27241. //! author : Jacob Middag : https://github.com/middagj
  27242. ;(function (global, factory) {
  27243. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27244. undefined;
  27245. })(this, function (moment) {'use strict';
  27246. //! moment.js locale configuration
  27247. var monthsShortWithDots =
  27248. 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),
  27249. monthsShortWithoutDots =
  27250. 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),
  27251. monthsParse = [
  27252. /^jan/i,
  27253. /^feb/i,
  27254. /^maart|mrt.?$/i,
  27255. /^apr/i,
  27256. /^mei$/i,
  27257. /^jun[i.]?$/i,
  27258. /^jul[i.]?$/i,
  27259. /^aug/i,
  27260. /^sep/i,
  27261. /^okt/i,
  27262. /^nov/i,
  27263. /^dec/i],
  27264. monthsRegex =
  27265. /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;
  27266. var nl = moment.defineLocale('nl', {
  27267. months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(
  27268. '_'),
  27269. monthsShort: function monthsShort(m, format) {
  27270. if (!m) {
  27271. return monthsShortWithDots;
  27272. } else if (/-MMM-/.test(format)) {
  27273. return monthsShortWithoutDots[m.month()];
  27274. } else {
  27275. return monthsShortWithDots[m.month()];
  27276. }
  27277. },
  27278. monthsRegex: monthsRegex,
  27279. monthsShortRegex: monthsRegex,
  27280. monthsStrictRegex:
  27281. /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,
  27282. monthsShortStrictRegex:
  27283. /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
  27284. monthsParse: monthsParse,
  27285. longMonthsParse: monthsParse,
  27286. shortMonthsParse: monthsParse,
  27287. weekdays:
  27288. 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),
  27289. weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),
  27290. weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),
  27291. weekdaysParseExact: true,
  27292. longDateFormat: {
  27293. LT: 'HH:mm',
  27294. LTS: 'HH:mm:ss',
  27295. L: 'DD-MM-YYYY',
  27296. LL: 'D MMMM YYYY',
  27297. LLL: 'D MMMM YYYY HH:mm',
  27298. LLLL: 'dddd D MMMM YYYY HH:mm' },
  27299. calendar: {
  27300. sameDay: '[vandaag om] LT',
  27301. nextDay: '[morgen om] LT',
  27302. nextWeek: 'dddd [om] LT',
  27303. lastDay: '[gisteren om] LT',
  27304. lastWeek: '[afgelopen] dddd [om] LT',
  27305. sameElse: 'L' },
  27306. relativeTime: {
  27307. future: 'over %s',
  27308. past: '%s geleden',
  27309. s: 'een paar seconden',
  27310. ss: '%d seconden',
  27311. m: 'één minuut',
  27312. mm: '%d minuten',
  27313. h: 'één uur',
  27314. hh: '%d uur',
  27315. d: 'één dag',
  27316. dd: '%d dagen',
  27317. w: 'één week',
  27318. ww: '%d weken',
  27319. M: 'één maand',
  27320. MM: '%d maanden',
  27321. y: 'één jaar',
  27322. yy: '%d jaar' },
  27323. dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
  27324. ordinal: function ordinal(number) {
  27325. return (
  27326. number + (
  27327. number === 1 || number === 8 || number >= 20 ? 'ste' : 'de'));
  27328. },
  27329. week: {
  27330. dow: 1, // Monday is the first day of the week.
  27331. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27332. } });
  27333. return nl;
  27334. });
  27335. /***/ }),
  27336. /* 136 */
  27337. /*!********************************************************************!*\
  27338. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/nl-be.js ***!
  27339. \********************************************************************/
  27340. /*! no static exports found */
  27341. /***/ (function(module, exports, __webpack_require__) {
  27342. //! moment.js locale configuration
  27343. //! locale : Dutch (Belgium) [nl-be]
  27344. //! author : Joris Röling : https://github.com/jorisroling
  27345. //! author : Jacob Middag : https://github.com/middagj
  27346. ;(function (global, factory) {
  27347. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27348. undefined;
  27349. })(this, function (moment) {'use strict';
  27350. //! moment.js locale configuration
  27351. var monthsShortWithDots =
  27352. 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),
  27353. monthsShortWithoutDots =
  27354. 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),
  27355. monthsParse = [
  27356. /^jan/i,
  27357. /^feb/i,
  27358. /^maart|mrt.?$/i,
  27359. /^apr/i,
  27360. /^mei$/i,
  27361. /^jun[i.]?$/i,
  27362. /^jul[i.]?$/i,
  27363. /^aug/i,
  27364. /^sep/i,
  27365. /^okt/i,
  27366. /^nov/i,
  27367. /^dec/i],
  27368. monthsRegex =
  27369. /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;
  27370. var nlBe = moment.defineLocale('nl-be', {
  27371. months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(
  27372. '_'),
  27373. monthsShort: function monthsShort(m, format) {
  27374. if (!m) {
  27375. return monthsShortWithDots;
  27376. } else if (/-MMM-/.test(format)) {
  27377. return monthsShortWithoutDots[m.month()];
  27378. } else {
  27379. return monthsShortWithDots[m.month()];
  27380. }
  27381. },
  27382. monthsRegex: monthsRegex,
  27383. monthsShortRegex: monthsRegex,
  27384. monthsStrictRegex:
  27385. /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,
  27386. monthsShortStrictRegex:
  27387. /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
  27388. monthsParse: monthsParse,
  27389. longMonthsParse: monthsParse,
  27390. shortMonthsParse: monthsParse,
  27391. weekdays:
  27392. 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),
  27393. weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),
  27394. weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),
  27395. weekdaysParseExact: true,
  27396. longDateFormat: {
  27397. LT: 'HH:mm',
  27398. LTS: 'HH:mm:ss',
  27399. L: 'DD/MM/YYYY',
  27400. LL: 'D MMMM YYYY',
  27401. LLL: 'D MMMM YYYY HH:mm',
  27402. LLLL: 'dddd D MMMM YYYY HH:mm' },
  27403. calendar: {
  27404. sameDay: '[vandaag om] LT',
  27405. nextDay: '[morgen om] LT',
  27406. nextWeek: 'dddd [om] LT',
  27407. lastDay: '[gisteren om] LT',
  27408. lastWeek: '[afgelopen] dddd [om] LT',
  27409. sameElse: 'L' },
  27410. relativeTime: {
  27411. future: 'over %s',
  27412. past: '%s geleden',
  27413. s: 'een paar seconden',
  27414. ss: '%d seconden',
  27415. m: 'één minuut',
  27416. mm: '%d minuten',
  27417. h: 'één uur',
  27418. hh: '%d uur',
  27419. d: 'één dag',
  27420. dd: '%d dagen',
  27421. M: 'één maand',
  27422. MM: '%d maanden',
  27423. y: 'één jaar',
  27424. yy: '%d jaar' },
  27425. dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
  27426. ordinal: function ordinal(number) {
  27427. return (
  27428. number + (
  27429. number === 1 || number === 8 || number >= 20 ? 'ste' : 'de'));
  27430. },
  27431. week: {
  27432. dow: 1, // Monday is the first day of the week.
  27433. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27434. } });
  27435. return nlBe;
  27436. });
  27437. /***/ }),
  27438. /* 137 */
  27439. /*!*****************************************************************!*\
  27440. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/nn.js ***!
  27441. \*****************************************************************/
  27442. /*! no static exports found */
  27443. /***/ (function(module, exports, __webpack_require__) {
  27444. //! moment.js locale configuration
  27445. //! locale : Nynorsk [nn]
  27446. //! authors : https://github.com/mechuwind
  27447. //! Stephen Ramthun : https://github.com/stephenramthun
  27448. ;(function (global, factory) {
  27449. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27450. undefined;
  27451. })(this, function (moment) {'use strict';
  27452. //! moment.js locale configuration
  27453. var nn = moment.defineLocale('nn', {
  27454. months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(
  27455. '_'),
  27456. monthsShort:
  27457. 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),
  27458. monthsParseExact: true,
  27459. weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),
  27460. weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'),
  27461. weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'),
  27462. weekdaysParseExact: true,
  27463. longDateFormat: {
  27464. LT: 'HH:mm',
  27465. LTS: 'HH:mm:ss',
  27466. L: 'DD.MM.YYYY',
  27467. LL: 'D. MMMM YYYY',
  27468. LLL: 'D. MMMM YYYY [kl.] H:mm',
  27469. LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm' },
  27470. calendar: {
  27471. sameDay: '[I dag klokka] LT',
  27472. nextDay: '[I morgon klokka] LT',
  27473. nextWeek: 'dddd [klokka] LT',
  27474. lastDay: '[I går klokka] LT',
  27475. lastWeek: '[Føregåande] dddd [klokka] LT',
  27476. sameElse: 'L' },
  27477. relativeTime: {
  27478. future: 'om %s',
  27479. past: '%s sidan',
  27480. s: 'nokre sekund',
  27481. ss: '%d sekund',
  27482. m: 'eit minutt',
  27483. mm: '%d minutt',
  27484. h: 'ein time',
  27485. hh: '%d timar',
  27486. d: 'ein dag',
  27487. dd: '%d dagar',
  27488. w: 'ei veke',
  27489. ww: '%d veker',
  27490. M: 'ein månad',
  27491. MM: '%d månader',
  27492. y: 'eit år',
  27493. yy: '%d år' },
  27494. dayOfMonthOrdinalParse: /\d{1,2}\./,
  27495. ordinal: '%d.',
  27496. week: {
  27497. dow: 1, // Monday is the first day of the week.
  27498. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27499. } });
  27500. return nn;
  27501. });
  27502. /***/ }),
  27503. /* 138 */
  27504. /*!*********************************************************************!*\
  27505. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/oc-lnc.js ***!
  27506. \*********************************************************************/
  27507. /*! no static exports found */
  27508. /***/ (function(module, exports, __webpack_require__) {
  27509. //! moment.js locale configuration
  27510. //! locale : Occitan, lengadocian dialecte [oc-lnc]
  27511. //! author : Quentin PAGÈS : https://github.com/Quenty31
  27512. ;(function (global, factory) {
  27513. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27514. undefined;
  27515. })(this, function (moment) {'use strict';
  27516. //! moment.js locale configuration
  27517. var ocLnc = moment.defineLocale('oc-lnc', {
  27518. months: {
  27519. standalone:
  27520. 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split(
  27521. '_'),
  27522. format: "de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split(
  27523. '_'),
  27524. isFormat: /D[oD]?(\s)+MMMM/ },
  27525. monthsShort:
  27526. 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split(
  27527. '_'),
  27528. monthsParseExact: true,
  27529. weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split(
  27530. '_'),
  27531. weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'),
  27532. weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'),
  27533. weekdaysParseExact: true,
  27534. longDateFormat: {
  27535. LT: 'H:mm',
  27536. LTS: 'H:mm:ss',
  27537. L: 'DD/MM/YYYY',
  27538. LL: 'D MMMM [de] YYYY',
  27539. ll: 'D MMM YYYY',
  27540. LLL: 'D MMMM [de] YYYY [a] H:mm',
  27541. lll: 'D MMM YYYY, H:mm',
  27542. LLLL: 'dddd D MMMM [de] YYYY [a] H:mm',
  27543. llll: 'ddd D MMM YYYY, H:mm' },
  27544. calendar: {
  27545. sameDay: '[uèi a] LT',
  27546. nextDay: '[deman a] LT',
  27547. nextWeek: 'dddd [a] LT',
  27548. lastDay: '[ièr a] LT',
  27549. lastWeek: 'dddd [passat a] LT',
  27550. sameElse: 'L' },
  27551. relativeTime: {
  27552. future: "d'aquí %s",
  27553. past: 'fa %s',
  27554. s: 'unas segondas',
  27555. ss: '%d segondas',
  27556. m: 'una minuta',
  27557. mm: '%d minutas',
  27558. h: 'una ora',
  27559. hh: '%d oras',
  27560. d: 'un jorn',
  27561. dd: '%d jorns',
  27562. M: 'un mes',
  27563. MM: '%d meses',
  27564. y: 'un an',
  27565. yy: '%d ans' },
  27566. dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/,
  27567. ordinal: function ordinal(number, period) {
  27568. var output =
  27569. number === 1 ?
  27570. 'r' :
  27571. number === 2 ?
  27572. 'n' :
  27573. number === 3 ?
  27574. 'r' :
  27575. number === 4 ?
  27576. 't' :
  27577. 'è';
  27578. if (period === 'w' || period === 'W') {
  27579. output = 'a';
  27580. }
  27581. return number + output;
  27582. },
  27583. week: {
  27584. dow: 1, // Monday is the first day of the week.
  27585. doy: 4 } });
  27586. return ocLnc;
  27587. });
  27588. /***/ }),
  27589. /* 139 */
  27590. /*!********************************************************************!*\
  27591. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/pa-in.js ***!
  27592. \********************************************************************/
  27593. /*! no static exports found */
  27594. /***/ (function(module, exports, __webpack_require__) {
  27595. //! moment.js locale configuration
  27596. //! locale : Punjabi (India) [pa-in]
  27597. //! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit
  27598. ;(function (global, factory) {
  27599. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27600. undefined;
  27601. })(this, function (moment) {'use strict';
  27602. //! moment.js locale configuration
  27603. var symbolMap = {
  27604. 1: '੧',
  27605. 2: '੨',
  27606. 3: '੩',
  27607. 4: '੪',
  27608. 5: '੫',
  27609. 6: '੬',
  27610. 7: '੭',
  27611. 8: '੮',
  27612. 9: '੯',
  27613. 0: '੦' },
  27614. numberMap = {
  27615. '੧': '1',
  27616. '੨': '2',
  27617. '੩': '3',
  27618. '੪': '4',
  27619. '੫': '5',
  27620. '੬': '6',
  27621. '੭': '7',
  27622. '੮': '8',
  27623. '੯': '9',
  27624. '੦': '0' };
  27625. var paIn = moment.defineLocale('pa-in', {
  27626. // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.
  27627. months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(
  27628. '_'),
  27629. monthsShort:
  27630. 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(
  27631. '_'),
  27632. weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split(
  27633. '_'),
  27634. weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),
  27635. weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),
  27636. longDateFormat: {
  27637. LT: 'A h:mm ਵਜੇ',
  27638. LTS: 'A h:mm:ss ਵਜੇ',
  27639. L: 'DD/MM/YYYY',
  27640. LL: 'D MMMM YYYY',
  27641. LLL: 'D MMMM YYYY, A h:mm ਵਜੇ',
  27642. LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ' },
  27643. calendar: {
  27644. sameDay: '[ਅਜ] LT',
  27645. nextDay: '[ਕਲ] LT',
  27646. nextWeek: '[ਅਗਲਾ] dddd, LT',
  27647. lastDay: '[ਕਲ] LT',
  27648. lastWeek: '[ਪਿਛਲੇ] dddd, LT',
  27649. sameElse: 'L' },
  27650. relativeTime: {
  27651. future: '%s ਵਿੱਚ',
  27652. past: '%s ਪਿਛਲੇ',
  27653. s: 'ਕੁਝ ਸਕਿੰਟ',
  27654. ss: '%d ਸਕਿੰਟ',
  27655. m: 'ਇਕ ਮਿੰਟ',
  27656. mm: '%d ਮਿੰਟ',
  27657. h: 'ਇੱਕ ਘੰਟਾ',
  27658. hh: '%d ਘੰਟੇ',
  27659. d: 'ਇੱਕ ਦਿਨ',
  27660. dd: '%d ਦਿਨ',
  27661. M: 'ਇੱਕ ਮਹੀਨਾ',
  27662. MM: '%d ਮਹੀਨੇ',
  27663. y: 'ਇੱਕ ਸਾਲ',
  27664. yy: '%d ਸਾਲ' },
  27665. preparse: function preparse(string) {
  27666. return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {
  27667. return numberMap[match];
  27668. });
  27669. },
  27670. postformat: function postformat(string) {
  27671. return string.replace(/\d/g, function (match) {
  27672. return symbolMap[match];
  27673. });
  27674. },
  27675. // Punjabi notation for meridiems are quite fuzzy in practice. While there exists
  27676. // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.
  27677. meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,
  27678. meridiemHour: function meridiemHour(hour, meridiem) {
  27679. if (hour === 12) {
  27680. hour = 0;
  27681. }
  27682. if (meridiem === 'ਰਾਤ') {
  27683. return hour < 4 ? hour : hour + 12;
  27684. } else if (meridiem === 'ਸਵੇਰ') {
  27685. return hour;
  27686. } else if (meridiem === 'ਦੁਪਹਿਰ') {
  27687. return hour >= 10 ? hour : hour + 12;
  27688. } else if (meridiem === 'ਸ਼ਾਮ') {
  27689. return hour + 12;
  27690. }
  27691. },
  27692. meridiem: function meridiem(hour, minute, isLower) {
  27693. if (hour < 4) {
  27694. return 'ਰਾਤ';
  27695. } else if (hour < 10) {
  27696. return 'ਸਵੇਰ';
  27697. } else if (hour < 17) {
  27698. return 'ਦੁਪਹਿਰ';
  27699. } else if (hour < 20) {
  27700. return 'ਸ਼ਾਮ';
  27701. } else {
  27702. return 'ਰਾਤ';
  27703. }
  27704. },
  27705. week: {
  27706. dow: 0, // Sunday is the first day of the week.
  27707. doy: 6 // The week that contains Jan 6th is the first week of the year.
  27708. } });
  27709. return paIn;
  27710. });
  27711. /***/ }),
  27712. /* 140 */
  27713. /*!*****************************************************************!*\
  27714. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/pl.js ***!
  27715. \*****************************************************************/
  27716. /*! no static exports found */
  27717. /***/ (function(module, exports, __webpack_require__) {
  27718. //! moment.js locale configuration
  27719. //! locale : Polish [pl]
  27720. //! author : Rafal Hirsz : https://github.com/evoL
  27721. ;(function (global, factory) {
  27722. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27723. undefined;
  27724. })(this, function (moment) {'use strict';
  27725. //! moment.js locale configuration
  27726. var monthsNominative =
  27727. 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split(
  27728. '_'),
  27729. monthsSubjective =
  27730. 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split(
  27731. '_'),
  27732. monthsParse = [
  27733. /^sty/i,
  27734. /^lut/i,
  27735. /^mar/i,
  27736. /^kwi/i,
  27737. /^maj/i,
  27738. /^cze/i,
  27739. /^lip/i,
  27740. /^sie/i,
  27741. /^wrz/i,
  27742. /^paź/i,
  27743. /^lis/i,
  27744. /^gru/i];
  27745. function plural(n) {
  27746. return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1;
  27747. }
  27748. function translate(number, withoutSuffix, key) {
  27749. var result = number + ' ';
  27750. switch (key) {
  27751. case 'ss':
  27752. return result + (plural(number) ? 'sekundy' : 'sekund');
  27753. case 'm':
  27754. return withoutSuffix ? 'minuta' : 'minutę';
  27755. case 'mm':
  27756. return result + (plural(number) ? 'minuty' : 'minut');
  27757. case 'h':
  27758. return withoutSuffix ? 'godzina' : 'godzinę';
  27759. case 'hh':
  27760. return result + (plural(number) ? 'godziny' : 'godzin');
  27761. case 'ww':
  27762. return result + (plural(number) ? 'tygodnie' : 'tygodni');
  27763. case 'MM':
  27764. return result + (plural(number) ? 'miesiące' : 'miesięcy');
  27765. case 'yy':
  27766. return result + (plural(number) ? 'lata' : 'lat');}
  27767. }
  27768. var pl = moment.defineLocale('pl', {
  27769. months: function months(momentToFormat, format) {
  27770. if (!momentToFormat) {
  27771. return monthsNominative;
  27772. } else if (/D MMMM/.test(format)) {
  27773. return monthsSubjective[momentToFormat.month()];
  27774. } else {
  27775. return monthsNominative[momentToFormat.month()];
  27776. }
  27777. },
  27778. monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),
  27779. monthsParse: monthsParse,
  27780. longMonthsParse: monthsParse,
  27781. shortMonthsParse: monthsParse,
  27782. weekdays:
  27783. 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),
  27784. weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),
  27785. weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),
  27786. longDateFormat: {
  27787. LT: 'HH:mm',
  27788. LTS: 'HH:mm:ss',
  27789. L: 'DD.MM.YYYY',
  27790. LL: 'D MMMM YYYY',
  27791. LLL: 'D MMMM YYYY HH:mm',
  27792. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  27793. calendar: {
  27794. sameDay: '[Dziś o] LT',
  27795. nextDay: '[Jutro o] LT',
  27796. nextWeek: function nextWeek() {
  27797. switch (this.day()) {
  27798. case 0:
  27799. return '[W niedzielę o] LT';
  27800. case 2:
  27801. return '[We wtorek o] LT';
  27802. case 3:
  27803. return '[W środę o] LT';
  27804. case 6:
  27805. return '[W sobotę o] LT';
  27806. default:
  27807. return '[W] dddd [o] LT';}
  27808. },
  27809. lastDay: '[Wczoraj o] LT',
  27810. lastWeek: function lastWeek() {
  27811. switch (this.day()) {
  27812. case 0:
  27813. return '[W zeszłą niedzielę o] LT';
  27814. case 3:
  27815. return '[W zeszłą środę o] LT';
  27816. case 6:
  27817. return '[W zeszłą sobotę o] LT';
  27818. default:
  27819. return '[W zeszły] dddd [o] LT';}
  27820. },
  27821. sameElse: 'L' },
  27822. relativeTime: {
  27823. future: 'za %s',
  27824. past: '%s temu',
  27825. s: 'kilka sekund',
  27826. ss: translate,
  27827. m: translate,
  27828. mm: translate,
  27829. h: translate,
  27830. hh: translate,
  27831. d: '1 dzień',
  27832. dd: '%d dni',
  27833. w: 'tydzień',
  27834. ww: translate,
  27835. M: 'miesiąc',
  27836. MM: translate,
  27837. y: 'rok',
  27838. yy: translate },
  27839. dayOfMonthOrdinalParse: /\d{1,2}\./,
  27840. ordinal: '%d.',
  27841. week: {
  27842. dow: 1, // Monday is the first day of the week.
  27843. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27844. } });
  27845. return pl;
  27846. });
  27847. /***/ }),
  27848. /* 141 */
  27849. /*!*****************************************************************!*\
  27850. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/pt.js ***!
  27851. \*****************************************************************/
  27852. /*! no static exports found */
  27853. /***/ (function(module, exports, __webpack_require__) {
  27854. //! moment.js locale configuration
  27855. //! locale : Portuguese [pt]
  27856. //! author : Jefferson : https://github.com/jalex79
  27857. ;(function (global, factory) {
  27858. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27859. undefined;
  27860. })(this, function (moment) {'use strict';
  27861. //! moment.js locale configuration
  27862. var pt = moment.defineLocale('pt', {
  27863. months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(
  27864. '_'),
  27865. monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),
  27866. weekdays:
  27867. 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split(
  27868. '_'),
  27869. weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),
  27870. weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),
  27871. weekdaysParseExact: true,
  27872. longDateFormat: {
  27873. LT: 'HH:mm',
  27874. LTS: 'HH:mm:ss',
  27875. L: 'DD/MM/YYYY',
  27876. LL: 'D [de] MMMM [de] YYYY',
  27877. LLL: 'D [de] MMMM [de] YYYY HH:mm',
  27878. LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm' },
  27879. calendar: {
  27880. sameDay: '[Hoje às] LT',
  27881. nextDay: '[Amanhã às] LT',
  27882. nextWeek: 'dddd [às] LT',
  27883. lastDay: '[Ontem às] LT',
  27884. lastWeek: function lastWeek() {
  27885. return this.day() === 0 || this.day() === 6 ?
  27886. '[Último] dddd [às] LT' // Saturday + Sunday
  27887. : '[Última] dddd [às] LT'; // Monday - Friday
  27888. },
  27889. sameElse: 'L' },
  27890. relativeTime: {
  27891. future: 'em %s',
  27892. past: 'há %s',
  27893. s: 'segundos',
  27894. ss: '%d segundos',
  27895. m: 'um minuto',
  27896. mm: '%d minutos',
  27897. h: 'uma hora',
  27898. hh: '%d horas',
  27899. d: 'um dia',
  27900. dd: '%d dias',
  27901. w: 'uma semana',
  27902. ww: '%d semanas',
  27903. M: 'um mês',
  27904. MM: '%d meses',
  27905. y: 'um ano',
  27906. yy: '%d anos' },
  27907. dayOfMonthOrdinalParse: /\d{1,2}º/,
  27908. ordinal: '%dº',
  27909. week: {
  27910. dow: 1, // Monday is the first day of the week.
  27911. doy: 4 // The week that contains Jan 4th is the first week of the year.
  27912. } });
  27913. return pt;
  27914. });
  27915. /***/ }),
  27916. /* 142 */
  27917. /*!********************************************************************!*\
  27918. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/pt-br.js ***!
  27919. \********************************************************************/
  27920. /*! no static exports found */
  27921. /***/ (function(module, exports, __webpack_require__) {
  27922. //! moment.js locale configuration
  27923. //! locale : Portuguese (Brazil) [pt-br]
  27924. //! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira
  27925. ;(function (global, factory) {
  27926. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27927. undefined;
  27928. })(this, function (moment) {'use strict';
  27929. //! moment.js locale configuration
  27930. var ptBr = moment.defineLocale('pt-br', {
  27931. months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(
  27932. '_'),
  27933. monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),
  27934. weekdays:
  27935. 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split(
  27936. '_'),
  27937. weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'),
  27938. weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'),
  27939. weekdaysParseExact: true,
  27940. longDateFormat: {
  27941. LT: 'HH:mm',
  27942. LTS: 'HH:mm:ss',
  27943. L: 'DD/MM/YYYY',
  27944. LL: 'D [de] MMMM [de] YYYY',
  27945. LLL: 'D [de] MMMM [de] YYYY [às] HH:mm',
  27946. LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm' },
  27947. calendar: {
  27948. sameDay: '[Hoje às] LT',
  27949. nextDay: '[Amanhã às] LT',
  27950. nextWeek: 'dddd [às] LT',
  27951. lastDay: '[Ontem às] LT',
  27952. lastWeek: function lastWeek() {
  27953. return this.day() === 0 || this.day() === 6 ?
  27954. '[Último] dddd [às] LT' // Saturday + Sunday
  27955. : '[Última] dddd [às] LT'; // Monday - Friday
  27956. },
  27957. sameElse: 'L' },
  27958. relativeTime: {
  27959. future: 'em %s',
  27960. past: 'há %s',
  27961. s: 'poucos segundos',
  27962. ss: '%d segundos',
  27963. m: 'um minuto',
  27964. mm: '%d minutos',
  27965. h: 'uma hora',
  27966. hh: '%d horas',
  27967. d: 'um dia',
  27968. dd: '%d dias',
  27969. M: 'um mês',
  27970. MM: '%d meses',
  27971. y: 'um ano',
  27972. yy: '%d anos' },
  27973. dayOfMonthOrdinalParse: /\d{1,2}º/,
  27974. ordinal: '%dº',
  27975. invalidDate: 'Data inválida' });
  27976. return ptBr;
  27977. });
  27978. /***/ }),
  27979. /* 143 */
  27980. /*!*****************************************************************!*\
  27981. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ro.js ***!
  27982. \*****************************************************************/
  27983. /*! no static exports found */
  27984. /***/ (function(module, exports, __webpack_require__) {
  27985. //! moment.js locale configuration
  27986. //! locale : Romanian [ro]
  27987. //! author : Vlad Gurdiga : https://github.com/gurdiga
  27988. //! author : Valentin Agachi : https://github.com/avaly
  27989. //! author : Emanuel Cepoi : https://github.com/cepem
  27990. ;(function (global, factory) {
  27991. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  27992. undefined;
  27993. })(this, function (moment) {'use strict';
  27994. //! moment.js locale configuration
  27995. function relativeTimeWithPlural(number, withoutSuffix, key) {
  27996. var format = {
  27997. ss: 'secunde',
  27998. mm: 'minute',
  27999. hh: 'ore',
  28000. dd: 'zile',
  28001. ww: 'săptămâni',
  28002. MM: 'luni',
  28003. yy: 'ani' },
  28004. separator = ' ';
  28005. if (number % 100 >= 20 || number >= 100 && number % 100 === 0) {
  28006. separator = ' de ';
  28007. }
  28008. return number + separator + format[key];
  28009. }
  28010. var ro = moment.defineLocale('ro', {
  28011. months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split(
  28012. '_'),
  28013. monthsShort:
  28014. 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split(
  28015. '_'),
  28016. monthsParseExact: true,
  28017. weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),
  28018. weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),
  28019. weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),
  28020. longDateFormat: {
  28021. LT: 'H:mm',
  28022. LTS: 'H:mm:ss',
  28023. L: 'DD.MM.YYYY',
  28024. LL: 'D MMMM YYYY',
  28025. LLL: 'D MMMM YYYY H:mm',
  28026. LLLL: 'dddd, D MMMM YYYY H:mm' },
  28027. calendar: {
  28028. sameDay: '[azi la] LT',
  28029. nextDay: '[mâine la] LT',
  28030. nextWeek: 'dddd [la] LT',
  28031. lastDay: '[ieri la] LT',
  28032. lastWeek: '[fosta] dddd [la] LT',
  28033. sameElse: 'L' },
  28034. relativeTime: {
  28035. future: 'peste %s',
  28036. past: '%s în urmă',
  28037. s: 'câteva secunde',
  28038. ss: relativeTimeWithPlural,
  28039. m: 'un minut',
  28040. mm: relativeTimeWithPlural,
  28041. h: 'o oră',
  28042. hh: relativeTimeWithPlural,
  28043. d: 'o zi',
  28044. dd: relativeTimeWithPlural,
  28045. w: 'o săptămână',
  28046. ww: relativeTimeWithPlural,
  28047. M: 'o lună',
  28048. MM: relativeTimeWithPlural,
  28049. y: 'un an',
  28050. yy: relativeTimeWithPlural },
  28051. week: {
  28052. dow: 1, // Monday is the first day of the week.
  28053. doy: 7 // The week that contains Jan 7th is the first week of the year.
  28054. } });
  28055. return ro;
  28056. });
  28057. /***/ }),
  28058. /* 144 */
  28059. /*!*****************************************************************!*\
  28060. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ru.js ***!
  28061. \*****************************************************************/
  28062. /*! no static exports found */
  28063. /***/ (function(module, exports, __webpack_require__) {
  28064. //! moment.js locale configuration
  28065. //! locale : Russian [ru]
  28066. //! author : Viktorminator : https://github.com/Viktorminator
  28067. //! author : Menelion Elensúle : https://github.com/Oire
  28068. //! author : Коренберг Марк : https://github.com/socketpair
  28069. ;(function (global, factory) {
  28070. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28071. undefined;
  28072. })(this, function (moment) {'use strict';
  28073. //! moment.js locale configuration
  28074. function plural(word, num) {
  28075. var forms = word.split('_');
  28076. return num % 10 === 1 && num % 100 !== 11 ?
  28077. forms[0] :
  28078. num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ?
  28079. forms[1] :
  28080. forms[2];
  28081. }
  28082. function relativeTimeWithPlural(number, withoutSuffix, key) {
  28083. var format = {
  28084. ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',
  28085. mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',
  28086. hh: 'час_часа_часов',
  28087. dd: 'день_дня_дней',
  28088. ww: 'неделя_недели_недель',
  28089. MM: 'месяц_месяца_месяцев',
  28090. yy: 'год_года_лет' };
  28091. if (key === 'm') {
  28092. return withoutSuffix ? 'минута' : 'минуту';
  28093. } else {
  28094. return number + ' ' + plural(format[key], +number);
  28095. }
  28096. }
  28097. var monthsParse = [
  28098. /^янв/i,
  28099. /^фев/i,
  28100. /^мар/i,
  28101. /^апр/i,
  28102. /^ма[йя]/i,
  28103. /^июн/i,
  28104. /^июл/i,
  28105. /^авг/i,
  28106. /^сен/i,
  28107. /^окт/i,
  28108. /^ноя/i,
  28109. /^дек/i];
  28110. // http://new.gramota.ru/spravka/rules/139-prop : § 103
  28111. // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637
  28112. // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753
  28113. var ru = moment.defineLocale('ru', {
  28114. months: {
  28115. format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split(
  28116. '_'),
  28117. standalone:
  28118. 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(
  28119. '_') },
  28120. monthsShort: {
  28121. // по CLDR именно "июл." и "июн.", но какой смысл менять букву на точку?
  28122. format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split(
  28123. '_'),
  28124. standalone:
  28125. 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split(
  28126. '_') },
  28127. weekdays: {
  28128. standalone:
  28129. 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split(
  28130. '_'),
  28131. format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split(
  28132. '_'),
  28133. isFormat: /\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/ },
  28134. weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
  28135. weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
  28136. monthsParse: monthsParse,
  28137. longMonthsParse: monthsParse,
  28138. shortMonthsParse: monthsParse,
  28139. // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки
  28140. monthsRegex:
  28141. /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,
  28142. // копия предыдущего
  28143. monthsShortRegex:
  28144. /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,
  28145. // полные названия с падежами
  28146. monthsStrictRegex:
  28147. /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,
  28148. // Выражение, которое соответствует только сокращённым формам
  28149. monthsShortStrictRegex:
  28150. /^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,
  28151. longDateFormat: {
  28152. LT: 'H:mm',
  28153. LTS: 'H:mm:ss',
  28154. L: 'DD.MM.YYYY',
  28155. LL: 'D MMMM YYYY г.',
  28156. LLL: 'D MMMM YYYY г., H:mm',
  28157. LLLL: 'dddd, D MMMM YYYY г., H:mm' },
  28158. calendar: {
  28159. sameDay: '[Сегодня, в] LT',
  28160. nextDay: '[Завтра, в] LT',
  28161. lastDay: '[Вчера, в] LT',
  28162. nextWeek: function nextWeek(now) {
  28163. if (now.week() !== this.week()) {
  28164. switch (this.day()) {
  28165. case 0:
  28166. return '[В следующее] dddd, [в] LT';
  28167. case 1:
  28168. case 2:
  28169. case 4:
  28170. return '[В следующий] dddd, [в] LT';
  28171. case 3:
  28172. case 5:
  28173. case 6:
  28174. return '[В следующую] dddd, [в] LT';}
  28175. } else {
  28176. if (this.day() === 2) {
  28177. return '[Во] dddd, [в] LT';
  28178. } else {
  28179. return '[В] dddd, [в] LT';
  28180. }
  28181. }
  28182. },
  28183. lastWeek: function lastWeek(now) {
  28184. if (now.week() !== this.week()) {
  28185. switch (this.day()) {
  28186. case 0:
  28187. return '[В прошлое] dddd, [в] LT';
  28188. case 1:
  28189. case 2:
  28190. case 4:
  28191. return '[В прошлый] dddd, [в] LT';
  28192. case 3:
  28193. case 5:
  28194. case 6:
  28195. return '[В прошлую] dddd, [в] LT';}
  28196. } else {
  28197. if (this.day() === 2) {
  28198. return '[Во] dddd, [в] LT';
  28199. } else {
  28200. return '[В] dddd, [в] LT';
  28201. }
  28202. }
  28203. },
  28204. sameElse: 'L' },
  28205. relativeTime: {
  28206. future: 'через %s',
  28207. past: '%s назад',
  28208. s: 'несколько секунд',
  28209. ss: relativeTimeWithPlural,
  28210. m: relativeTimeWithPlural,
  28211. mm: relativeTimeWithPlural,
  28212. h: 'час',
  28213. hh: relativeTimeWithPlural,
  28214. d: 'день',
  28215. dd: relativeTimeWithPlural,
  28216. w: 'неделя',
  28217. ww: relativeTimeWithPlural,
  28218. M: 'месяц',
  28219. MM: relativeTimeWithPlural,
  28220. y: 'год',
  28221. yy: relativeTimeWithPlural },
  28222. meridiemParse: /ночи|утра|дня|вечера/i,
  28223. isPM: function isPM(input) {
  28224. return /^(дня|вечера)$/.test(input);
  28225. },
  28226. meridiem: function meridiem(hour, minute, isLower) {
  28227. if (hour < 4) {
  28228. return 'ночи';
  28229. } else if (hour < 12) {
  28230. return 'утра';
  28231. } else if (hour < 17) {
  28232. return 'дня';
  28233. } else {
  28234. return 'вечера';
  28235. }
  28236. },
  28237. dayOfMonthOrdinalParse: /\d{1,2}-(й|го|я)/,
  28238. ordinal: function ordinal(number, period) {
  28239. switch (period) {
  28240. case 'M':
  28241. case 'd':
  28242. case 'DDD':
  28243. return number + '-й';
  28244. case 'D':
  28245. return number + '-го';
  28246. case 'w':
  28247. case 'W':
  28248. return number + '-я';
  28249. default:
  28250. return number;}
  28251. },
  28252. week: {
  28253. dow: 1, // Monday is the first day of the week.
  28254. doy: 4 // The week that contains Jan 4th is the first week of the year.
  28255. } });
  28256. return ru;
  28257. });
  28258. /***/ }),
  28259. /* 145 */
  28260. /*!*****************************************************************!*\
  28261. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sd.js ***!
  28262. \*****************************************************************/
  28263. /*! no static exports found */
  28264. /***/ (function(module, exports, __webpack_require__) {
  28265. //! moment.js locale configuration
  28266. //! locale : Sindhi [sd]
  28267. //! author : Narain Sagar : https://github.com/narainsagar
  28268. ;(function (global, factory) {
  28269. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28270. undefined;
  28271. })(this, function (moment) {'use strict';
  28272. //! moment.js locale configuration
  28273. var months = [
  28274. 'جنوري',
  28275. 'فيبروري',
  28276. 'مارچ',
  28277. 'اپريل',
  28278. 'مئي',
  28279. 'جون',
  28280. 'جولاءِ',
  28281. 'آگسٽ',
  28282. 'سيپٽمبر',
  28283. 'آڪٽوبر',
  28284. 'نومبر',
  28285. 'ڊسمبر'],
  28286. days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر'];
  28287. var sd = moment.defineLocale('sd', {
  28288. months: months,
  28289. monthsShort: months,
  28290. weekdays: days,
  28291. weekdaysShort: days,
  28292. weekdaysMin: days,
  28293. longDateFormat: {
  28294. LT: 'HH:mm',
  28295. LTS: 'HH:mm:ss',
  28296. L: 'DD/MM/YYYY',
  28297. LL: 'D MMMM YYYY',
  28298. LLL: 'D MMMM YYYY HH:mm',
  28299. LLLL: 'dddd، D MMMM YYYY HH:mm' },
  28300. meridiemParse: /صبح|شام/,
  28301. isPM: function isPM(input) {
  28302. return 'شام' === input;
  28303. },
  28304. meridiem: function meridiem(hour, minute, isLower) {
  28305. if (hour < 12) {
  28306. return 'صبح';
  28307. }
  28308. return 'شام';
  28309. },
  28310. calendar: {
  28311. sameDay: '[اڄ] LT',
  28312. nextDay: '[سڀاڻي] LT',
  28313. nextWeek: 'dddd [اڳين هفتي تي] LT',
  28314. lastDay: '[ڪالهه] LT',
  28315. lastWeek: '[گزريل هفتي] dddd [تي] LT',
  28316. sameElse: 'L' },
  28317. relativeTime: {
  28318. future: '%s پوء',
  28319. past: '%s اڳ',
  28320. s: 'چند سيڪنڊ',
  28321. ss: '%d سيڪنڊ',
  28322. m: 'هڪ منٽ',
  28323. mm: '%d منٽ',
  28324. h: 'هڪ ڪلاڪ',
  28325. hh: '%d ڪلاڪ',
  28326. d: 'هڪ ڏينهن',
  28327. dd: '%d ڏينهن',
  28328. M: 'هڪ مهينو',
  28329. MM: '%d مهينا',
  28330. y: 'هڪ سال',
  28331. yy: '%d سال' },
  28332. preparse: function preparse(string) {
  28333. return string.replace(/،/g, ',');
  28334. },
  28335. postformat: function postformat(string) {
  28336. return string.replace(/,/g, '،');
  28337. },
  28338. week: {
  28339. dow: 1, // Monday is the first day of the week.
  28340. doy: 4 // The week that contains Jan 4th is the first week of the year.
  28341. } });
  28342. return sd;
  28343. });
  28344. /***/ }),
  28345. /* 146 */
  28346. /*!*****************************************************************!*\
  28347. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/se.js ***!
  28348. \*****************************************************************/
  28349. /*! no static exports found */
  28350. /***/ (function(module, exports, __webpack_require__) {
  28351. //! moment.js locale configuration
  28352. //! locale : Northern Sami [se]
  28353. //! authors : Bård Rolstad Henriksen : https://github.com/karamell
  28354. ;(function (global, factory) {
  28355. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28356. undefined;
  28357. })(this, function (moment) {'use strict';
  28358. //! moment.js locale configuration
  28359. var se = moment.defineLocale('se', {
  28360. months: 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split(
  28361. '_'),
  28362. monthsShort:
  28363. 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'),
  28364. weekdays:
  28365. 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split(
  28366. '_'),
  28367. weekdaysShort: 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'),
  28368. weekdaysMin: 's_v_m_g_d_b_L'.split('_'),
  28369. longDateFormat: {
  28370. LT: 'HH:mm',
  28371. LTS: 'HH:mm:ss',
  28372. L: 'DD.MM.YYYY',
  28373. LL: 'MMMM D. [b.] YYYY',
  28374. LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm',
  28375. LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm' },
  28376. calendar: {
  28377. sameDay: '[otne ti] LT',
  28378. nextDay: '[ihttin ti] LT',
  28379. nextWeek: 'dddd [ti] LT',
  28380. lastDay: '[ikte ti] LT',
  28381. lastWeek: '[ovddit] dddd [ti] LT',
  28382. sameElse: 'L' },
  28383. relativeTime: {
  28384. future: '%s geažes',
  28385. past: 'maŋit %s',
  28386. s: 'moadde sekunddat',
  28387. ss: '%d sekunddat',
  28388. m: 'okta minuhta',
  28389. mm: '%d minuhtat',
  28390. h: 'okta diimmu',
  28391. hh: '%d diimmut',
  28392. d: 'okta beaivi',
  28393. dd: '%d beaivvit',
  28394. M: 'okta mánnu',
  28395. MM: '%d mánut',
  28396. y: 'okta jahki',
  28397. yy: '%d jagit' },
  28398. dayOfMonthOrdinalParse: /\d{1,2}\./,
  28399. ordinal: '%d.',
  28400. week: {
  28401. dow: 1, // Monday is the first day of the week.
  28402. doy: 4 // The week that contains Jan 4th is the first week of the year.
  28403. } });
  28404. return se;
  28405. });
  28406. /***/ }),
  28407. /* 147 */
  28408. /*!*****************************************************************!*\
  28409. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/si.js ***!
  28410. \*****************************************************************/
  28411. /*! no static exports found */
  28412. /***/ (function(module, exports, __webpack_require__) {
  28413. //! moment.js locale configuration
  28414. //! locale : Sinhalese [si]
  28415. //! author : Sampath Sitinamaluwa : https://github.com/sampathsris
  28416. ;(function (global, factory) {
  28417. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28418. undefined;
  28419. })(this, function (moment) {'use strict';
  28420. //! moment.js locale configuration
  28421. /*jshint -W100*/
  28422. var si = moment.defineLocale('si', {
  28423. months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split(
  28424. '_'),
  28425. monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split(
  28426. '_'),
  28427. weekdays:
  28428. 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split(
  28429. '_'),
  28430. weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),
  28431. weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),
  28432. weekdaysParseExact: true,
  28433. longDateFormat: {
  28434. LT: 'a h:mm',
  28435. LTS: 'a h:mm:ss',
  28436. L: 'YYYY/MM/DD',
  28437. LL: 'YYYY MMMM D',
  28438. LLL: 'YYYY MMMM D, a h:mm',
  28439. LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss' },
  28440. calendar: {
  28441. sameDay: '[අද] LT[ට]',
  28442. nextDay: '[හෙට] LT[ට]',
  28443. nextWeek: 'dddd LT[ට]',
  28444. lastDay: '[ඊයේ] LT[ට]',
  28445. lastWeek: '[පසුගිය] dddd LT[ට]',
  28446. sameElse: 'L' },
  28447. relativeTime: {
  28448. future: '%sකින්',
  28449. past: '%sකට පෙර',
  28450. s: 'තත්පර කිහිපය',
  28451. ss: 'තත්පර %d',
  28452. m: 'මිනිත්තුව',
  28453. mm: 'මිනිත්තු %d',
  28454. h: 'පැය',
  28455. hh: 'පැය %d',
  28456. d: 'දිනය',
  28457. dd: 'දින %d',
  28458. M: 'මාසය',
  28459. MM: 'මාස %d',
  28460. y: 'වසර',
  28461. yy: 'වසර %d' },
  28462. dayOfMonthOrdinalParse: /\d{1,2} වැනි/,
  28463. ordinal: function ordinal(number) {
  28464. return number + ' වැනි';
  28465. },
  28466. meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,
  28467. isPM: function isPM(input) {
  28468. return input === 'ප.ව.' || input === 'පස් වරු';
  28469. },
  28470. meridiem: function meridiem(hours, minutes, isLower) {
  28471. if (hours > 11) {
  28472. return isLower ? 'ප.ව.' : 'පස් වරු';
  28473. } else {
  28474. return isLower ? 'පෙ.ව.' : 'පෙර වරු';
  28475. }
  28476. } });
  28477. return si;
  28478. });
  28479. /***/ }),
  28480. /* 148 */
  28481. /*!*****************************************************************!*\
  28482. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sk.js ***!
  28483. \*****************************************************************/
  28484. /*! no static exports found */
  28485. /***/ (function(module, exports, __webpack_require__) {
  28486. //! moment.js locale configuration
  28487. //! locale : Slovak [sk]
  28488. //! author : Martin Minka : https://github.com/k2s
  28489. //! based on work of petrbela : https://github.com/petrbela
  28490. ;(function (global, factory) {
  28491. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28492. undefined;
  28493. })(this, function (moment) {'use strict';
  28494. //! moment.js locale configuration
  28495. var months =
  28496. 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split(
  28497. '_'),
  28498. monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');
  28499. function plural(n) {
  28500. return n > 1 && n < 5;
  28501. }
  28502. function translate(number, withoutSuffix, key, isFuture) {
  28503. var result = number + ' ';
  28504. switch (key) {
  28505. case 's': // a few seconds / in a few seconds / a few seconds ago
  28506. return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami';
  28507. case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago
  28508. if (withoutSuffix || isFuture) {
  28509. return result + (plural(number) ? 'sekundy' : 'sekúnd');
  28510. } else {
  28511. return result + 'sekundami';
  28512. }
  28513. case 'm': // a minute / in a minute / a minute ago
  28514. return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou';
  28515. case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago
  28516. if (withoutSuffix || isFuture) {
  28517. return result + (plural(number) ? 'minúty' : 'minút');
  28518. } else {
  28519. return result + 'minútami';
  28520. }
  28521. case 'h': // an hour / in an hour / an hour ago
  28522. return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';
  28523. case 'hh': // 9 hours / in 9 hours / 9 hours ago
  28524. if (withoutSuffix || isFuture) {
  28525. return result + (plural(number) ? 'hodiny' : 'hodín');
  28526. } else {
  28527. return result + 'hodinami';
  28528. }
  28529. case 'd': // a day / in a day / a day ago
  28530. return withoutSuffix || isFuture ? 'deň' : 'dňom';
  28531. case 'dd': // 9 days / in 9 days / 9 days ago
  28532. if (withoutSuffix || isFuture) {
  28533. return result + (plural(number) ? 'dni' : 'dní');
  28534. } else {
  28535. return result + 'dňami';
  28536. }
  28537. case 'M': // a month / in a month / a month ago
  28538. return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom';
  28539. case 'MM': // 9 months / in 9 months / 9 months ago
  28540. if (withoutSuffix || isFuture) {
  28541. return result + (plural(number) ? 'mesiace' : 'mesiacov');
  28542. } else {
  28543. return result + 'mesiacmi';
  28544. }
  28545. case 'y': // a year / in a year / a year ago
  28546. return withoutSuffix || isFuture ? 'rok' : 'rokom';
  28547. case 'yy': // 9 years / in 9 years / 9 years ago
  28548. if (withoutSuffix || isFuture) {
  28549. return result + (plural(number) ? 'roky' : 'rokov');
  28550. } else {
  28551. return result + 'rokmi';
  28552. }}
  28553. }
  28554. var sk = moment.defineLocale('sk', {
  28555. months: months,
  28556. monthsShort: monthsShort,
  28557. weekdays: 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),
  28558. weekdaysShort: 'ne_po_ut_st_št_pi_so'.split('_'),
  28559. weekdaysMin: 'ne_po_ut_st_št_pi_so'.split('_'),
  28560. longDateFormat: {
  28561. LT: 'H:mm',
  28562. LTS: 'H:mm:ss',
  28563. L: 'DD.MM.YYYY',
  28564. LL: 'D. MMMM YYYY',
  28565. LLL: 'D. MMMM YYYY H:mm',
  28566. LLLL: 'dddd D. MMMM YYYY H:mm' },
  28567. calendar: {
  28568. sameDay: '[dnes o] LT',
  28569. nextDay: '[zajtra o] LT',
  28570. nextWeek: function nextWeek() {
  28571. switch (this.day()) {
  28572. case 0:
  28573. return '[v nedeľu o] LT';
  28574. case 1:
  28575. case 2:
  28576. return '[v] dddd [o] LT';
  28577. case 3:
  28578. return '[v stredu o] LT';
  28579. case 4:
  28580. return '[vo štvrtok o] LT';
  28581. case 5:
  28582. return '[v piatok o] LT';
  28583. case 6:
  28584. return '[v sobotu o] LT';}
  28585. },
  28586. lastDay: '[včera o] LT',
  28587. lastWeek: function lastWeek() {
  28588. switch (this.day()) {
  28589. case 0:
  28590. return '[minulú nedeľu o] LT';
  28591. case 1:
  28592. case 2:
  28593. return '[minulý] dddd [o] LT';
  28594. case 3:
  28595. return '[minulú stredu o] LT';
  28596. case 4:
  28597. case 5:
  28598. return '[minulý] dddd [o] LT';
  28599. case 6:
  28600. return '[minulú sobotu o] LT';}
  28601. },
  28602. sameElse: 'L' },
  28603. relativeTime: {
  28604. future: 'za %s',
  28605. past: 'pred %s',
  28606. s: translate,
  28607. ss: translate,
  28608. m: translate,
  28609. mm: translate,
  28610. h: translate,
  28611. hh: translate,
  28612. d: translate,
  28613. dd: translate,
  28614. M: translate,
  28615. MM: translate,
  28616. y: translate,
  28617. yy: translate },
  28618. dayOfMonthOrdinalParse: /\d{1,2}\./,
  28619. ordinal: '%d.',
  28620. week: {
  28621. dow: 1, // Monday is the first day of the week.
  28622. doy: 4 // The week that contains Jan 4th is the first week of the year.
  28623. } });
  28624. return sk;
  28625. });
  28626. /***/ }),
  28627. /* 149 */
  28628. /*!*****************************************************************!*\
  28629. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sl.js ***!
  28630. \*****************************************************************/
  28631. /*! no static exports found */
  28632. /***/ (function(module, exports, __webpack_require__) {
  28633. //! moment.js locale configuration
  28634. //! locale : Slovenian [sl]
  28635. //! author : Robert Sedovšek : https://github.com/sedovsek
  28636. ;(function (global, factory) {
  28637. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28638. undefined;
  28639. })(this, function (moment) {'use strict';
  28640. //! moment.js locale configuration
  28641. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  28642. var result = number + ' ';
  28643. switch (key) {
  28644. case 's':
  28645. return withoutSuffix || isFuture ?
  28646. 'nekaj sekund' :
  28647. 'nekaj sekundami';
  28648. case 'ss':
  28649. if (number === 1) {
  28650. result += withoutSuffix ? 'sekundo' : 'sekundi';
  28651. } else if (number === 2) {
  28652. result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';
  28653. } else if (number < 5) {
  28654. result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';
  28655. } else {
  28656. result += 'sekund';
  28657. }
  28658. return result;
  28659. case 'm':
  28660. return withoutSuffix ? 'ena minuta' : 'eno minuto';
  28661. case 'mm':
  28662. if (number === 1) {
  28663. result += withoutSuffix ? 'minuta' : 'minuto';
  28664. } else if (number === 2) {
  28665. result += withoutSuffix || isFuture ? 'minuti' : 'minutama';
  28666. } else if (number < 5) {
  28667. result += withoutSuffix || isFuture ? 'minute' : 'minutami';
  28668. } else {
  28669. result += withoutSuffix || isFuture ? 'minut' : 'minutami';
  28670. }
  28671. return result;
  28672. case 'h':
  28673. return withoutSuffix ? 'ena ura' : 'eno uro';
  28674. case 'hh':
  28675. if (number === 1) {
  28676. result += withoutSuffix ? 'ura' : 'uro';
  28677. } else if (number === 2) {
  28678. result += withoutSuffix || isFuture ? 'uri' : 'urama';
  28679. } else if (number < 5) {
  28680. result += withoutSuffix || isFuture ? 'ure' : 'urami';
  28681. } else {
  28682. result += withoutSuffix || isFuture ? 'ur' : 'urami';
  28683. }
  28684. return result;
  28685. case 'd':
  28686. return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';
  28687. case 'dd':
  28688. if (number === 1) {
  28689. result += withoutSuffix || isFuture ? 'dan' : 'dnem';
  28690. } else if (number === 2) {
  28691. result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';
  28692. } else {
  28693. result += withoutSuffix || isFuture ? 'dni' : 'dnevi';
  28694. }
  28695. return result;
  28696. case 'M':
  28697. return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';
  28698. case 'MM':
  28699. if (number === 1) {
  28700. result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';
  28701. } else if (number === 2) {
  28702. result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';
  28703. } else if (number < 5) {
  28704. result += withoutSuffix || isFuture ? 'mesece' : 'meseci';
  28705. } else {
  28706. result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';
  28707. }
  28708. return result;
  28709. case 'y':
  28710. return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';
  28711. case 'yy':
  28712. if (number === 1) {
  28713. result += withoutSuffix || isFuture ? 'leto' : 'letom';
  28714. } else if (number === 2) {
  28715. result += withoutSuffix || isFuture ? 'leti' : 'letoma';
  28716. } else if (number < 5) {
  28717. result += withoutSuffix || isFuture ? 'leta' : 'leti';
  28718. } else {
  28719. result += withoutSuffix || isFuture ? 'let' : 'leti';
  28720. }
  28721. return result;}
  28722. }
  28723. var sl = moment.defineLocale('sl', {
  28724. months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split(
  28725. '_'),
  28726. monthsShort:
  28727. 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split(
  28728. '_'),
  28729. monthsParseExact: true,
  28730. weekdays: 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),
  28731. weekdaysShort: 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),
  28732. weekdaysMin: 'ne_po_to_sr_če_pe_so'.split('_'),
  28733. weekdaysParseExact: true,
  28734. longDateFormat: {
  28735. LT: 'H:mm',
  28736. LTS: 'H:mm:ss',
  28737. L: 'DD. MM. YYYY',
  28738. LL: 'D. MMMM YYYY',
  28739. LLL: 'D. MMMM YYYY H:mm',
  28740. LLLL: 'dddd, D. MMMM YYYY H:mm' },
  28741. calendar: {
  28742. sameDay: '[danes ob] LT',
  28743. nextDay: '[jutri ob] LT',
  28744. nextWeek: function nextWeek() {
  28745. switch (this.day()) {
  28746. case 0:
  28747. return '[v] [nedeljo] [ob] LT';
  28748. case 3:
  28749. return '[v] [sredo] [ob] LT';
  28750. case 6:
  28751. return '[v] [soboto] [ob] LT';
  28752. case 1:
  28753. case 2:
  28754. case 4:
  28755. case 5:
  28756. return '[v] dddd [ob] LT';}
  28757. },
  28758. lastDay: '[včeraj ob] LT',
  28759. lastWeek: function lastWeek() {
  28760. switch (this.day()) {
  28761. case 0:
  28762. return '[prejšnjo] [nedeljo] [ob] LT';
  28763. case 3:
  28764. return '[prejšnjo] [sredo] [ob] LT';
  28765. case 6:
  28766. return '[prejšnjo] [soboto] [ob] LT';
  28767. case 1:
  28768. case 2:
  28769. case 4:
  28770. case 5:
  28771. return '[prejšnji] dddd [ob] LT';}
  28772. },
  28773. sameElse: 'L' },
  28774. relativeTime: {
  28775. future: 'čez %s',
  28776. past: 'pred %s',
  28777. s: processRelativeTime,
  28778. ss: processRelativeTime,
  28779. m: processRelativeTime,
  28780. mm: processRelativeTime,
  28781. h: processRelativeTime,
  28782. hh: processRelativeTime,
  28783. d: processRelativeTime,
  28784. dd: processRelativeTime,
  28785. M: processRelativeTime,
  28786. MM: processRelativeTime,
  28787. y: processRelativeTime,
  28788. yy: processRelativeTime },
  28789. dayOfMonthOrdinalParse: /\d{1,2}\./,
  28790. ordinal: '%d.',
  28791. week: {
  28792. dow: 1, // Monday is the first day of the week.
  28793. doy: 7 // The week that contains Jan 7th is the first week of the year.
  28794. } });
  28795. return sl;
  28796. });
  28797. /***/ }),
  28798. /* 150 */
  28799. /*!*****************************************************************!*\
  28800. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sq.js ***!
  28801. \*****************************************************************/
  28802. /*! no static exports found */
  28803. /***/ (function(module, exports, __webpack_require__) {
  28804. //! moment.js locale configuration
  28805. //! locale : Albanian [sq]
  28806. //! author : Flakërim Ismani : https://github.com/flakerimi
  28807. //! author : Menelion Elensúle : https://github.com/Oire
  28808. //! author : Oerd Cukalla : https://github.com/oerd
  28809. ;(function (global, factory) {
  28810. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28811. undefined;
  28812. })(this, function (moment) {'use strict';
  28813. //! moment.js locale configuration
  28814. var sq = moment.defineLocale('sq', {
  28815. months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split(
  28816. '_'),
  28817. monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),
  28818. weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split(
  28819. '_'),
  28820. weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),
  28821. weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'),
  28822. weekdaysParseExact: true,
  28823. meridiemParse: /PD|MD/,
  28824. isPM: function isPM(input) {
  28825. return input.charAt(0) === 'M';
  28826. },
  28827. meridiem: function meridiem(hours, minutes, isLower) {
  28828. return hours < 12 ? 'PD' : 'MD';
  28829. },
  28830. longDateFormat: {
  28831. LT: 'HH:mm',
  28832. LTS: 'HH:mm:ss',
  28833. L: 'DD/MM/YYYY',
  28834. LL: 'D MMMM YYYY',
  28835. LLL: 'D MMMM YYYY HH:mm',
  28836. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  28837. calendar: {
  28838. sameDay: '[Sot në] LT',
  28839. nextDay: '[Nesër në] LT',
  28840. nextWeek: 'dddd [në] LT',
  28841. lastDay: '[Dje në] LT',
  28842. lastWeek: 'dddd [e kaluar në] LT',
  28843. sameElse: 'L' },
  28844. relativeTime: {
  28845. future: 'në %s',
  28846. past: '%s më parë',
  28847. s: 'disa sekonda',
  28848. ss: '%d sekonda',
  28849. m: 'një minutë',
  28850. mm: '%d minuta',
  28851. h: 'një orë',
  28852. hh: '%d orë',
  28853. d: 'një ditë',
  28854. dd: '%d ditë',
  28855. M: 'një muaj',
  28856. MM: '%d muaj',
  28857. y: 'një vit',
  28858. yy: '%d vite' },
  28859. dayOfMonthOrdinalParse: /\d{1,2}\./,
  28860. ordinal: '%d.',
  28861. week: {
  28862. dow: 1, // Monday is the first day of the week.
  28863. doy: 4 // The week that contains Jan 4th is the first week of the year.
  28864. } });
  28865. return sq;
  28866. });
  28867. /***/ }),
  28868. /* 151 */
  28869. /*!*****************************************************************!*\
  28870. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sr.js ***!
  28871. \*****************************************************************/
  28872. /*! no static exports found */
  28873. /***/ (function(module, exports, __webpack_require__) {
  28874. //! moment.js locale configuration
  28875. //! locale : Serbian [sr]
  28876. //! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
  28877. //! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic
  28878. ;(function (global, factory) {
  28879. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  28880. undefined;
  28881. })(this, function (moment) {'use strict';
  28882. //! moment.js locale configuration
  28883. var translator = {
  28884. words: {
  28885. //Different grammatical cases
  28886. ss: ['sekunda', 'sekunde', 'sekundi'],
  28887. m: ['jedan minut', 'jednog minuta'],
  28888. mm: ['minut', 'minuta', 'minuta'],
  28889. h: ['jedan sat', 'jednog sata'],
  28890. hh: ['sat', 'sata', 'sati'],
  28891. d: ['jedan dan', 'jednog dana'],
  28892. dd: ['dan', 'dana', 'dana'],
  28893. M: ['jedan mesec', 'jednog meseca'],
  28894. MM: ['mesec', 'meseca', 'meseci'],
  28895. y: ['jednu godinu', 'jedne godine'],
  28896. yy: ['godinu', 'godine', 'godina'] },
  28897. correctGrammaticalCase: function correctGrammaticalCase(number, wordKey) {
  28898. if (
  28899. number % 10 >= 1 &&
  28900. number % 10 <= 4 && (
  28901. number % 100 < 10 || number % 100 >= 20))
  28902. {
  28903. return number % 10 === 1 ? wordKey[0] : wordKey[1];
  28904. }
  28905. return wordKey[2];
  28906. },
  28907. translate: function translate(number, withoutSuffix, key, isFuture) {
  28908. var wordKey = translator.words[key],
  28909. word;
  28910. if (key.length === 1) {
  28911. // Nominativ
  28912. if (key === 'y' && withoutSuffix) return 'jedna godina';
  28913. return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];
  28914. }
  28915. word = translator.correctGrammaticalCase(number, wordKey);
  28916. // Nominativ
  28917. if (key === 'yy' && withoutSuffix && word === 'godinu') {
  28918. return number + ' godina';
  28919. }
  28920. return number + ' ' + word;
  28921. } };
  28922. var sr = moment.defineLocale('sr', {
  28923. months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(
  28924. '_'),
  28925. monthsShort:
  28926. 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),
  28927. monthsParseExact: true,
  28928. weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(
  28929. '_'),
  28930. weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),
  28931. weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),
  28932. weekdaysParseExact: true,
  28933. longDateFormat: {
  28934. LT: 'H:mm',
  28935. LTS: 'H:mm:ss',
  28936. L: 'D. M. YYYY.',
  28937. LL: 'D. MMMM YYYY.',
  28938. LLL: 'D. MMMM YYYY. H:mm',
  28939. LLLL: 'dddd, D. MMMM YYYY. H:mm' },
  28940. calendar: {
  28941. sameDay: '[danas u] LT',
  28942. nextDay: '[sutra u] LT',
  28943. nextWeek: function nextWeek() {
  28944. switch (this.day()) {
  28945. case 0:
  28946. return '[u] [nedelju] [u] LT';
  28947. case 3:
  28948. return '[u] [sredu] [u] LT';
  28949. case 6:
  28950. return '[u] [subotu] [u] LT';
  28951. case 1:
  28952. case 2:
  28953. case 4:
  28954. case 5:
  28955. return '[u] dddd [u] LT';}
  28956. },
  28957. lastDay: '[juče u] LT',
  28958. lastWeek: function lastWeek() {
  28959. var lastWeekDays = [
  28960. '[prošle] [nedelje] [u] LT',
  28961. '[prošlog] [ponedeljka] [u] LT',
  28962. '[prošlog] [utorka] [u] LT',
  28963. '[prošle] [srede] [u] LT',
  28964. '[prošlog] [četvrtka] [u] LT',
  28965. '[prošlog] [petka] [u] LT',
  28966. '[prošle] [subote] [u] LT'];
  28967. return lastWeekDays[this.day()];
  28968. },
  28969. sameElse: 'L' },
  28970. relativeTime: {
  28971. future: 'za %s',
  28972. past: 'pre %s',
  28973. s: 'nekoliko sekundi',
  28974. ss: translator.translate,
  28975. m: translator.translate,
  28976. mm: translator.translate,
  28977. h: translator.translate,
  28978. hh: translator.translate,
  28979. d: translator.translate,
  28980. dd: translator.translate,
  28981. M: translator.translate,
  28982. MM: translator.translate,
  28983. y: translator.translate,
  28984. yy: translator.translate },
  28985. dayOfMonthOrdinalParse: /\d{1,2}\./,
  28986. ordinal: '%d.',
  28987. week: {
  28988. dow: 1, // Monday is the first day of the week.
  28989. doy: 7 // The week that contains Jan 7th is the first week of the year.
  28990. } });
  28991. return sr;
  28992. });
  28993. /***/ }),
  28994. /* 152 */
  28995. /*!**********************************************************************!*\
  28996. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sr-cyrl.js ***!
  28997. \**********************************************************************/
  28998. /*! no static exports found */
  28999. /***/ (function(module, exports, __webpack_require__) {
  29000. //! moment.js locale configuration
  29001. //! locale : Serbian Cyrillic [sr-cyrl]
  29002. //! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
  29003. //! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic
  29004. ;(function (global, factory) {
  29005. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29006. undefined;
  29007. })(this, function (moment) {'use strict';
  29008. //! moment.js locale configuration
  29009. var translator = {
  29010. words: {
  29011. //Different grammatical cases
  29012. ss: ['секунда', 'секунде', 'секунди'],
  29013. m: ['један минут', 'једног минута'],
  29014. mm: ['минут', 'минута', 'минута'],
  29015. h: ['један сат', 'једног сата'],
  29016. hh: ['сат', 'сата', 'сати'],
  29017. d: ['један дан', 'једног дана'],
  29018. dd: ['дан', 'дана', 'дана'],
  29019. M: ['један месец', 'једног месеца'],
  29020. MM: ['месец', 'месеца', 'месеци'],
  29021. y: ['једну годину', 'једне године'],
  29022. yy: ['годину', 'године', 'година'] },
  29023. correctGrammaticalCase: function correctGrammaticalCase(number, wordKey) {
  29024. if (
  29025. number % 10 >= 1 &&
  29026. number % 10 <= 4 && (
  29027. number % 100 < 10 || number % 100 >= 20))
  29028. {
  29029. return number % 10 === 1 ? wordKey[0] : wordKey[1];
  29030. }
  29031. return wordKey[2];
  29032. },
  29033. translate: function translate(number, withoutSuffix, key, isFuture) {
  29034. var wordKey = translator.words[key],
  29035. word;
  29036. if (key.length === 1) {
  29037. // Nominativ
  29038. if (key === 'y' && withoutSuffix) return 'једна година';
  29039. return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];
  29040. }
  29041. word = translator.correctGrammaticalCase(number, wordKey);
  29042. // Nominativ
  29043. if (key === 'yy' && withoutSuffix && word === 'годину') {
  29044. return number + ' година';
  29045. }
  29046. return number + ' ' + word;
  29047. } };
  29048. var srCyrl = moment.defineLocale('sr-cyrl', {
  29049. months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split(
  29050. '_'),
  29051. monthsShort:
  29052. 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),
  29053. monthsParseExact: true,
  29054. weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),
  29055. weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),
  29056. weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),
  29057. weekdaysParseExact: true,
  29058. longDateFormat: {
  29059. LT: 'H:mm',
  29060. LTS: 'H:mm:ss',
  29061. L: 'D. M. YYYY.',
  29062. LL: 'D. MMMM YYYY.',
  29063. LLL: 'D. MMMM YYYY. H:mm',
  29064. LLLL: 'dddd, D. MMMM YYYY. H:mm' },
  29065. calendar: {
  29066. sameDay: '[данас у] LT',
  29067. nextDay: '[сутра у] LT',
  29068. nextWeek: function nextWeek() {
  29069. switch (this.day()) {
  29070. case 0:
  29071. return '[у] [недељу] [у] LT';
  29072. case 3:
  29073. return '[у] [среду] [у] LT';
  29074. case 6:
  29075. return '[у] [суботу] [у] LT';
  29076. case 1:
  29077. case 2:
  29078. case 4:
  29079. case 5:
  29080. return '[у] dddd [у] LT';}
  29081. },
  29082. lastDay: '[јуче у] LT',
  29083. lastWeek: function lastWeek() {
  29084. var lastWeekDays = [
  29085. '[прошле] [недеље] [у] LT',
  29086. '[прошлог] [понедељка] [у] LT',
  29087. '[прошлог] [уторка] [у] LT',
  29088. '[прошле] [среде] [у] LT',
  29089. '[прошлог] [четвртка] [у] LT',
  29090. '[прошлог] [петка] [у] LT',
  29091. '[прошле] [суботе] [у] LT'];
  29092. return lastWeekDays[this.day()];
  29093. },
  29094. sameElse: 'L' },
  29095. relativeTime: {
  29096. future: 'за %s',
  29097. past: 'пре %s',
  29098. s: 'неколико секунди',
  29099. ss: translator.translate,
  29100. m: translator.translate,
  29101. mm: translator.translate,
  29102. h: translator.translate,
  29103. hh: translator.translate,
  29104. d: translator.translate,
  29105. dd: translator.translate,
  29106. M: translator.translate,
  29107. MM: translator.translate,
  29108. y: translator.translate,
  29109. yy: translator.translate },
  29110. dayOfMonthOrdinalParse: /\d{1,2}\./,
  29111. ordinal: '%d.',
  29112. week: {
  29113. dow: 1, // Monday is the first day of the week.
  29114. doy: 7 // The week that contains Jan 1st is the first week of the year.
  29115. } });
  29116. return srCyrl;
  29117. });
  29118. /***/ }),
  29119. /* 153 */
  29120. /*!*****************************************************************!*\
  29121. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ss.js ***!
  29122. \*****************************************************************/
  29123. /*! no static exports found */
  29124. /***/ (function(module, exports, __webpack_require__) {
  29125. //! moment.js locale configuration
  29126. //! locale : siSwati [ss]
  29127. //! author : Nicolai Davies<mail@nicolai.io> : https://github.com/nicolaidavies
  29128. ;(function (global, factory) {
  29129. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29130. undefined;
  29131. })(this, function (moment) {'use strict';
  29132. //! moment.js locale configuration
  29133. var ss = moment.defineLocale('ss', {
  29134. months: "Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split(
  29135. '_'),
  29136. monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),
  29137. weekdays:
  29138. 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split(
  29139. '_'),
  29140. weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),
  29141. weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),
  29142. weekdaysParseExact: true,
  29143. longDateFormat: {
  29144. LT: 'h:mm A',
  29145. LTS: 'h:mm:ss A',
  29146. L: 'DD/MM/YYYY',
  29147. LL: 'D MMMM YYYY',
  29148. LLL: 'D MMMM YYYY h:mm A',
  29149. LLLL: 'dddd, D MMMM YYYY h:mm A' },
  29150. calendar: {
  29151. sameDay: '[Namuhla nga] LT',
  29152. nextDay: '[Kusasa nga] LT',
  29153. nextWeek: 'dddd [nga] LT',
  29154. lastDay: '[Itolo nga] LT',
  29155. lastWeek: 'dddd [leliphelile] [nga] LT',
  29156. sameElse: 'L' },
  29157. relativeTime: {
  29158. future: 'nga %s',
  29159. past: 'wenteka nga %s',
  29160. s: 'emizuzwana lomcane',
  29161. ss: '%d mzuzwana',
  29162. m: 'umzuzu',
  29163. mm: '%d emizuzu',
  29164. h: 'lihora',
  29165. hh: '%d emahora',
  29166. d: 'lilanga',
  29167. dd: '%d emalanga',
  29168. M: 'inyanga',
  29169. MM: '%d tinyanga',
  29170. y: 'umnyaka',
  29171. yy: '%d iminyaka' },
  29172. meridiemParse: /ekuseni|emini|entsambama|ebusuku/,
  29173. meridiem: function meridiem(hours, minutes, isLower) {
  29174. if (hours < 11) {
  29175. return 'ekuseni';
  29176. } else if (hours < 15) {
  29177. return 'emini';
  29178. } else if (hours < 19) {
  29179. return 'entsambama';
  29180. } else {
  29181. return 'ebusuku';
  29182. }
  29183. },
  29184. meridiemHour: function meridiemHour(hour, meridiem) {
  29185. if (hour === 12) {
  29186. hour = 0;
  29187. }
  29188. if (meridiem === 'ekuseni') {
  29189. return hour;
  29190. } else if (meridiem === 'emini') {
  29191. return hour >= 11 ? hour : hour + 12;
  29192. } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {
  29193. if (hour === 0) {
  29194. return 0;
  29195. }
  29196. return hour + 12;
  29197. }
  29198. },
  29199. dayOfMonthOrdinalParse: /\d{1,2}/,
  29200. ordinal: '%d',
  29201. week: {
  29202. dow: 1, // Monday is the first day of the week.
  29203. doy: 4 // The week that contains Jan 4th is the first week of the year.
  29204. } });
  29205. return ss;
  29206. });
  29207. /***/ }),
  29208. /* 154 */
  29209. /*!*****************************************************************!*\
  29210. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sv.js ***!
  29211. \*****************************************************************/
  29212. /*! no static exports found */
  29213. /***/ (function(module, exports, __webpack_require__) {
  29214. //! moment.js locale configuration
  29215. //! locale : Swedish [sv]
  29216. //! author : Jens Alm : https://github.com/ulmus
  29217. ;(function (global, factory) {
  29218. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29219. undefined;
  29220. })(this, function (moment) {'use strict';
  29221. //! moment.js locale configuration
  29222. var sv = moment.defineLocale('sv', {
  29223. months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split(
  29224. '_'),
  29225. monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),
  29226. weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),
  29227. weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'),
  29228. weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'),
  29229. longDateFormat: {
  29230. LT: 'HH:mm',
  29231. LTS: 'HH:mm:ss',
  29232. L: 'YYYY-MM-DD',
  29233. LL: 'D MMMM YYYY',
  29234. LLL: 'D MMMM YYYY [kl.] HH:mm',
  29235. LLLL: 'dddd D MMMM YYYY [kl.] HH:mm',
  29236. lll: 'D MMM YYYY HH:mm',
  29237. llll: 'ddd D MMM YYYY HH:mm' },
  29238. calendar: {
  29239. sameDay: '[Idag] LT',
  29240. nextDay: '[Imorgon] LT',
  29241. lastDay: '[Igår] LT',
  29242. nextWeek: '[På] dddd LT',
  29243. lastWeek: '[I] dddd[s] LT',
  29244. sameElse: 'L' },
  29245. relativeTime: {
  29246. future: 'om %s',
  29247. past: 'för %s sedan',
  29248. s: 'några sekunder',
  29249. ss: '%d sekunder',
  29250. m: 'en minut',
  29251. mm: '%d minuter',
  29252. h: 'en timme',
  29253. hh: '%d timmar',
  29254. d: 'en dag',
  29255. dd: '%d dagar',
  29256. M: 'en månad',
  29257. MM: '%d månader',
  29258. y: 'ett år',
  29259. yy: '%d år' },
  29260. dayOfMonthOrdinalParse: /\d{1,2}(\:e|\:a)/,
  29261. ordinal: function ordinal(number) {
  29262. var b = number % 10,
  29263. output =
  29264. ~~(number % 100 / 10) === 1 ?
  29265. ':e' :
  29266. b === 1 ?
  29267. ':a' :
  29268. b === 2 ?
  29269. ':a' :
  29270. b === 3 ?
  29271. ':e' :
  29272. ':e';
  29273. return number + output;
  29274. },
  29275. week: {
  29276. dow: 1, // Monday is the first day of the week.
  29277. doy: 4 // The week that contains Jan 4th is the first week of the year.
  29278. } });
  29279. return sv;
  29280. });
  29281. /***/ }),
  29282. /* 155 */
  29283. /*!*****************************************************************!*\
  29284. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/sw.js ***!
  29285. \*****************************************************************/
  29286. /*! no static exports found */
  29287. /***/ (function(module, exports, __webpack_require__) {
  29288. //! moment.js locale configuration
  29289. //! locale : Swahili [sw]
  29290. //! author : Fahad Kassim : https://github.com/fadsel
  29291. ;(function (global, factory) {
  29292. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29293. undefined;
  29294. })(this, function (moment) {'use strict';
  29295. //! moment.js locale configuration
  29296. var sw = moment.defineLocale('sw', {
  29297. months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split(
  29298. '_'),
  29299. monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),
  29300. weekdays:
  29301. 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split(
  29302. '_'),
  29303. weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),
  29304. weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),
  29305. weekdaysParseExact: true,
  29306. longDateFormat: {
  29307. LT: 'hh:mm A',
  29308. LTS: 'HH:mm:ss',
  29309. L: 'DD.MM.YYYY',
  29310. LL: 'D MMMM YYYY',
  29311. LLL: 'D MMMM YYYY HH:mm',
  29312. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  29313. calendar: {
  29314. sameDay: '[leo saa] LT',
  29315. nextDay: '[kesho saa] LT',
  29316. nextWeek: '[wiki ijayo] dddd [saat] LT',
  29317. lastDay: '[jana] LT',
  29318. lastWeek: '[wiki iliyopita] dddd [saat] LT',
  29319. sameElse: 'L' },
  29320. relativeTime: {
  29321. future: '%s baadaye',
  29322. past: 'tokea %s',
  29323. s: 'hivi punde',
  29324. ss: 'sekunde %d',
  29325. m: 'dakika moja',
  29326. mm: 'dakika %d',
  29327. h: 'saa limoja',
  29328. hh: 'masaa %d',
  29329. d: 'siku moja',
  29330. dd: 'siku %d',
  29331. M: 'mwezi mmoja',
  29332. MM: 'miezi %d',
  29333. y: 'mwaka mmoja',
  29334. yy: 'miaka %d' },
  29335. week: {
  29336. dow: 1, // Monday is the first day of the week.
  29337. doy: 7 // The week that contains Jan 7th is the first week of the year.
  29338. } });
  29339. return sw;
  29340. });
  29341. /***/ }),
  29342. /* 156 */
  29343. /*!*****************************************************************!*\
  29344. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ta.js ***!
  29345. \*****************************************************************/
  29346. /*! no static exports found */
  29347. /***/ (function(module, exports, __webpack_require__) {
  29348. //! moment.js locale configuration
  29349. //! locale : Tamil [ta]
  29350. //! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404
  29351. ;(function (global, factory) {
  29352. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29353. undefined;
  29354. })(this, function (moment) {'use strict';
  29355. //! moment.js locale configuration
  29356. var symbolMap = {
  29357. 1: '௧',
  29358. 2: '௨',
  29359. 3: '௩',
  29360. 4: '௪',
  29361. 5: '௫',
  29362. 6: '௬',
  29363. 7: '௭',
  29364. 8: '௮',
  29365. 9: '௯',
  29366. 0: '௦' },
  29367. numberMap = {
  29368. '௧': '1',
  29369. '௨': '2',
  29370. '௩': '3',
  29371. '௪': '4',
  29372. '௫': '5',
  29373. '௬': '6',
  29374. '௭': '7',
  29375. '௮': '8',
  29376. '௯': '9',
  29377. '௦': '0' };
  29378. var ta = moment.defineLocale('ta', {
  29379. months: 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(
  29380. '_'),
  29381. monthsShort:
  29382. 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(
  29383. '_'),
  29384. weekdays:
  29385. 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split(
  29386. '_'),
  29387. weekdaysShort: 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split(
  29388. '_'),
  29389. weekdaysMin: 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),
  29390. longDateFormat: {
  29391. LT: 'HH:mm',
  29392. LTS: 'HH:mm:ss',
  29393. L: 'DD/MM/YYYY',
  29394. LL: 'D MMMM YYYY',
  29395. LLL: 'D MMMM YYYY, HH:mm',
  29396. LLLL: 'dddd, D MMMM YYYY, HH:mm' },
  29397. calendar: {
  29398. sameDay: '[இன்று] LT',
  29399. nextDay: '[நாளை] LT',
  29400. nextWeek: 'dddd, LT',
  29401. lastDay: '[நேற்று] LT',
  29402. lastWeek: '[கடந்த வாரம்] dddd, LT',
  29403. sameElse: 'L' },
  29404. relativeTime: {
  29405. future: '%s இல்',
  29406. past: '%s முன்',
  29407. s: 'ஒரு சில விநாடிகள்',
  29408. ss: '%d விநாடிகள்',
  29409. m: 'ஒரு நிமிடம்',
  29410. mm: '%d நிமிடங்கள்',
  29411. h: 'ஒரு மணி நேரம்',
  29412. hh: '%d மணி நேரம்',
  29413. d: 'ஒரு நாள்',
  29414. dd: '%d நாட்கள்',
  29415. M: 'ஒரு மாதம்',
  29416. MM: '%d மாதங்கள்',
  29417. y: 'ஒரு வருடம்',
  29418. yy: '%d ஆண்டுகள்' },
  29419. dayOfMonthOrdinalParse: /\d{1,2}வது/,
  29420. ordinal: function ordinal(number) {
  29421. return number + 'வது';
  29422. },
  29423. preparse: function preparse(string) {
  29424. return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) {
  29425. return numberMap[match];
  29426. });
  29427. },
  29428. postformat: function postformat(string) {
  29429. return string.replace(/\d/g, function (match) {
  29430. return symbolMap[match];
  29431. });
  29432. },
  29433. // refer http://ta.wikipedia.org/s/1er1
  29434. meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,
  29435. meridiem: function meridiem(hour, minute, isLower) {
  29436. if (hour < 2) {
  29437. return ' யாமம்';
  29438. } else if (hour < 6) {
  29439. return ' வைகறை'; // வைகறை
  29440. } else if (hour < 10) {
  29441. return ' காலை'; // காலை
  29442. } else if (hour < 14) {
  29443. return ' நண்பகல்'; // நண்பகல்
  29444. } else if (hour < 18) {
  29445. return ' எற்பாடு'; // எற்பாடு
  29446. } else if (hour < 22) {
  29447. return ' மாலை'; // மாலை
  29448. } else {
  29449. return ' யாமம்';
  29450. }
  29451. },
  29452. meridiemHour: function meridiemHour(hour, meridiem) {
  29453. if (hour === 12) {
  29454. hour = 0;
  29455. }
  29456. if (meridiem === 'யாமம்') {
  29457. return hour < 2 ? hour : hour + 12;
  29458. } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {
  29459. return hour;
  29460. } else if (meridiem === 'நண்பகல்') {
  29461. return hour >= 10 ? hour : hour + 12;
  29462. } else {
  29463. return hour + 12;
  29464. }
  29465. },
  29466. week: {
  29467. dow: 0, // Sunday is the first day of the week.
  29468. doy: 6 // The week that contains Jan 6th is the first week of the year.
  29469. } });
  29470. return ta;
  29471. });
  29472. /***/ }),
  29473. /* 157 */
  29474. /*!*****************************************************************!*\
  29475. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/te.js ***!
  29476. \*****************************************************************/
  29477. /*! no static exports found */
  29478. /***/ (function(module, exports, __webpack_require__) {
  29479. //! moment.js locale configuration
  29480. //! locale : Telugu [te]
  29481. //! author : Krishna Chaitanya Thota : https://github.com/kcthota
  29482. ;(function (global, factory) {
  29483. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29484. undefined;
  29485. })(this, function (moment) {'use strict';
  29486. //! moment.js locale configuration
  29487. var te = moment.defineLocale('te', {
  29488. months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split(
  29489. '_'),
  29490. monthsShort:
  29491. 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split(
  29492. '_'),
  29493. monthsParseExact: true,
  29494. weekdays:
  29495. 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split(
  29496. '_'),
  29497. weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),
  29498. weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),
  29499. longDateFormat: {
  29500. LT: 'A h:mm',
  29501. LTS: 'A h:mm:ss',
  29502. L: 'DD/MM/YYYY',
  29503. LL: 'D MMMM YYYY',
  29504. LLL: 'D MMMM YYYY, A h:mm',
  29505. LLLL: 'dddd, D MMMM YYYY, A h:mm' },
  29506. calendar: {
  29507. sameDay: '[నేడు] LT',
  29508. nextDay: '[రేపు] LT',
  29509. nextWeek: 'dddd, LT',
  29510. lastDay: '[నిన్న] LT',
  29511. lastWeek: '[గత] dddd, LT',
  29512. sameElse: 'L' },
  29513. relativeTime: {
  29514. future: '%s లో',
  29515. past: '%s క్రితం',
  29516. s: 'కొన్ని క్షణాలు',
  29517. ss: '%d సెకన్లు',
  29518. m: 'ఒక నిమిషం',
  29519. mm: '%d నిమిషాలు',
  29520. h: 'ఒక గంట',
  29521. hh: '%d గంటలు',
  29522. d: 'ఒక రోజు',
  29523. dd: '%d రోజులు',
  29524. M: 'ఒక నెల',
  29525. MM: '%d నెలలు',
  29526. y: 'ఒక సంవత్సరం',
  29527. yy: '%d సంవత్సరాలు' },
  29528. dayOfMonthOrdinalParse: /\d{1,2}వ/,
  29529. ordinal: '%dవ',
  29530. meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,
  29531. meridiemHour: function meridiemHour(hour, meridiem) {
  29532. if (hour === 12) {
  29533. hour = 0;
  29534. }
  29535. if (meridiem === 'రాత్రి') {
  29536. return hour < 4 ? hour : hour + 12;
  29537. } else if (meridiem === 'ఉదయం') {
  29538. return hour;
  29539. } else if (meridiem === 'మధ్యాహ్నం') {
  29540. return hour >= 10 ? hour : hour + 12;
  29541. } else if (meridiem === 'సాయంత్రం') {
  29542. return hour + 12;
  29543. }
  29544. },
  29545. meridiem: function meridiem(hour, minute, isLower) {
  29546. if (hour < 4) {
  29547. return 'రాత్రి';
  29548. } else if (hour < 10) {
  29549. return 'ఉదయం';
  29550. } else if (hour < 17) {
  29551. return 'మధ్యాహ్నం';
  29552. } else if (hour < 20) {
  29553. return 'సాయంత్రం';
  29554. } else {
  29555. return 'రాత్రి';
  29556. }
  29557. },
  29558. week: {
  29559. dow: 0, // Sunday is the first day of the week.
  29560. doy: 6 // The week that contains Jan 6th is the first week of the year.
  29561. } });
  29562. return te;
  29563. });
  29564. /***/ }),
  29565. /* 158 */
  29566. /*!******************************************************************!*\
  29567. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tet.js ***!
  29568. \******************************************************************/
  29569. /*! no static exports found */
  29570. /***/ (function(module, exports, __webpack_require__) {
  29571. //! moment.js locale configuration
  29572. //! locale : Tetun Dili (East Timor) [tet]
  29573. //! author : Joshua Brooks : https://github.com/joshbrooks
  29574. //! author : Onorio De J. Afonso : https://github.com/marobo
  29575. //! author : Sonia Simoes : https://github.com/soniasimoes
  29576. ;(function (global, factory) {
  29577. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29578. undefined;
  29579. })(this, function (moment) {'use strict';
  29580. //! moment.js locale configuration
  29581. var tet = moment.defineLocale('tet', {
  29582. months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split(
  29583. '_'),
  29584. monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),
  29585. weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),
  29586. weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),
  29587. weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),
  29588. longDateFormat: {
  29589. LT: 'HH:mm',
  29590. LTS: 'HH:mm:ss',
  29591. L: 'DD/MM/YYYY',
  29592. LL: 'D MMMM YYYY',
  29593. LLL: 'D MMMM YYYY HH:mm',
  29594. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  29595. calendar: {
  29596. sameDay: '[Ohin iha] LT',
  29597. nextDay: '[Aban iha] LT',
  29598. nextWeek: 'dddd [iha] LT',
  29599. lastDay: '[Horiseik iha] LT',
  29600. lastWeek: 'dddd [semana kotuk] [iha] LT',
  29601. sameElse: 'L' },
  29602. relativeTime: {
  29603. future: 'iha %s',
  29604. past: '%s liuba',
  29605. s: 'segundu balun',
  29606. ss: 'segundu %d',
  29607. m: 'minutu ida',
  29608. mm: 'minutu %d',
  29609. h: 'oras ida',
  29610. hh: 'oras %d',
  29611. d: 'loron ida',
  29612. dd: 'loron %d',
  29613. M: 'fulan ida',
  29614. MM: 'fulan %d',
  29615. y: 'tinan ida',
  29616. yy: 'tinan %d' },
  29617. dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
  29618. ordinal: function ordinal(number) {
  29619. var b = number % 10,
  29620. output =
  29621. ~~(number % 100 / 10) === 1 ?
  29622. 'th' :
  29623. b === 1 ?
  29624. 'st' :
  29625. b === 2 ?
  29626. 'nd' :
  29627. b === 3 ?
  29628. 'rd' :
  29629. 'th';
  29630. return number + output;
  29631. },
  29632. week: {
  29633. dow: 1, // Monday is the first day of the week.
  29634. doy: 4 // The week that contains Jan 4th is the first week of the year.
  29635. } });
  29636. return tet;
  29637. });
  29638. /***/ }),
  29639. /* 159 */
  29640. /*!*****************************************************************!*\
  29641. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tg.js ***!
  29642. \*****************************************************************/
  29643. /*! no static exports found */
  29644. /***/ (function(module, exports, __webpack_require__) {
  29645. //! moment.js locale configuration
  29646. //! locale : Tajik [tg]
  29647. //! author : Orif N. Jr. : https://github.com/orif-jr
  29648. ;(function (global, factory) {
  29649. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29650. undefined;
  29651. })(this, function (moment) {'use strict';
  29652. //! moment.js locale configuration
  29653. var suffixes = {
  29654. 0: '-ум',
  29655. 1: '-ум',
  29656. 2: '-юм',
  29657. 3: '-юм',
  29658. 4: '-ум',
  29659. 5: '-ум',
  29660. 6: '-ум',
  29661. 7: '-ум',
  29662. 8: '-ум',
  29663. 9: '-ум',
  29664. 10: '-ум',
  29665. 12: '-ум',
  29666. 13: '-ум',
  29667. 20: '-ум',
  29668. 30: '-юм',
  29669. 40: '-ум',
  29670. 50: '-ум',
  29671. 60: '-ум',
  29672. 70: '-ум',
  29673. 80: '-ум',
  29674. 90: '-ум',
  29675. 100: '-ум' };
  29676. var tg = moment.defineLocale('tg', {
  29677. months: {
  29678. format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split(
  29679. '_'),
  29680. standalone:
  29681. 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(
  29682. '_') },
  29683. monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),
  29684. weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split(
  29685. '_'),
  29686. weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),
  29687. weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),
  29688. longDateFormat: {
  29689. LT: 'HH:mm',
  29690. LTS: 'HH:mm:ss',
  29691. L: 'DD.MM.YYYY',
  29692. LL: 'D MMMM YYYY',
  29693. LLL: 'D MMMM YYYY HH:mm',
  29694. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  29695. calendar: {
  29696. sameDay: '[Имрӯз соати] LT',
  29697. nextDay: '[Фардо соати] LT',
  29698. lastDay: '[Дирӯз соати] LT',
  29699. nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT',
  29700. lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT',
  29701. sameElse: 'L' },
  29702. relativeTime: {
  29703. future: 'баъди %s',
  29704. past: '%s пеш',
  29705. s: 'якчанд сония',
  29706. m: 'як дақиқа',
  29707. mm: '%d дақиқа',
  29708. h: 'як соат',
  29709. hh: '%d соат',
  29710. d: 'як рӯз',
  29711. dd: '%d рӯз',
  29712. M: 'як моҳ',
  29713. MM: '%d моҳ',
  29714. y: 'як сол',
  29715. yy: '%d сол' },
  29716. meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,
  29717. meridiemHour: function meridiemHour(hour, meridiem) {
  29718. if (hour === 12) {
  29719. hour = 0;
  29720. }
  29721. if (meridiem === 'шаб') {
  29722. return hour < 4 ? hour : hour + 12;
  29723. } else if (meridiem === 'субҳ') {
  29724. return hour;
  29725. } else if (meridiem === 'рӯз') {
  29726. return hour >= 11 ? hour : hour + 12;
  29727. } else if (meridiem === 'бегоҳ') {
  29728. return hour + 12;
  29729. }
  29730. },
  29731. meridiem: function meridiem(hour, minute, isLower) {
  29732. if (hour < 4) {
  29733. return 'шаб';
  29734. } else if (hour < 11) {
  29735. return 'субҳ';
  29736. } else if (hour < 16) {
  29737. return 'рӯз';
  29738. } else if (hour < 19) {
  29739. return 'бегоҳ';
  29740. } else {
  29741. return 'шаб';
  29742. }
  29743. },
  29744. dayOfMonthOrdinalParse: /\d{1,2}-(ум|юм)/,
  29745. ordinal: function ordinal(number) {
  29746. var a = number % 10,
  29747. b = number >= 100 ? 100 : null;
  29748. return number + (suffixes[number] || suffixes[a] || suffixes[b]);
  29749. },
  29750. week: {
  29751. dow: 1, // Monday is the first day of the week.
  29752. doy: 7 // The week that contains Jan 1th is the first week of the year.
  29753. } });
  29754. return tg;
  29755. });
  29756. /***/ }),
  29757. /* 160 */
  29758. /*!*****************************************************************!*\
  29759. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/th.js ***!
  29760. \*****************************************************************/
  29761. /*! no static exports found */
  29762. /***/ (function(module, exports, __webpack_require__) {
  29763. //! moment.js locale configuration
  29764. //! locale : Thai [th]
  29765. //! author : Kridsada Thanabulpong : https://github.com/sirn
  29766. ;(function (global, factory) {
  29767. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29768. undefined;
  29769. })(this, function (moment) {'use strict';
  29770. //! moment.js locale configuration
  29771. var th = moment.defineLocale('th', {
  29772. months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split(
  29773. '_'),
  29774. monthsShort:
  29775. 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split(
  29776. '_'),
  29777. monthsParseExact: true,
  29778. weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),
  29779. weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference
  29780. weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),
  29781. weekdaysParseExact: true,
  29782. longDateFormat: {
  29783. LT: 'H:mm',
  29784. LTS: 'H:mm:ss',
  29785. L: 'DD/MM/YYYY',
  29786. LL: 'D MMMM YYYY',
  29787. LLL: 'D MMMM YYYY เวลา H:mm',
  29788. LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm' },
  29789. meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,
  29790. isPM: function isPM(input) {
  29791. return input === 'หลังเที่ยง';
  29792. },
  29793. meridiem: function meridiem(hour, minute, isLower) {
  29794. if (hour < 12) {
  29795. return 'ก่อนเที่ยง';
  29796. } else {
  29797. return 'หลังเที่ยง';
  29798. }
  29799. },
  29800. calendar: {
  29801. sameDay: '[วันนี้ เวลา] LT',
  29802. nextDay: '[พรุ่งนี้ เวลา] LT',
  29803. nextWeek: 'dddd[หน้า เวลา] LT',
  29804. lastDay: '[เมื่อวานนี้ เวลา] LT',
  29805. lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT',
  29806. sameElse: 'L' },
  29807. relativeTime: {
  29808. future: 'อีก %s',
  29809. past: '%sที่แล้ว',
  29810. s: 'ไม่กี่วินาที',
  29811. ss: '%d วินาที',
  29812. m: '1 นาที',
  29813. mm: '%d นาที',
  29814. h: '1 ชั่วโมง',
  29815. hh: '%d ชั่วโมง',
  29816. d: '1 วัน',
  29817. dd: '%d วัน',
  29818. w: '1 สัปดาห์',
  29819. ww: '%d สัปดาห์',
  29820. M: '1 เดือน',
  29821. MM: '%d เดือน',
  29822. y: '1 ปี',
  29823. yy: '%d ปี' } });
  29824. return th;
  29825. });
  29826. /***/ }),
  29827. /* 161 */
  29828. /*!*****************************************************************!*\
  29829. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tk.js ***!
  29830. \*****************************************************************/
  29831. /*! no static exports found */
  29832. /***/ (function(module, exports, __webpack_require__) {
  29833. //! moment.js locale configuration
  29834. //! locale : Turkmen [tk]
  29835. //! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy
  29836. ;(function (global, factory) {
  29837. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29838. undefined;
  29839. })(this, function (moment) {'use strict';
  29840. //! moment.js locale configuration
  29841. var suffixes = {
  29842. 1: "'inji",
  29843. 5: "'inji",
  29844. 8: "'inji",
  29845. 70: "'inji",
  29846. 80: "'inji",
  29847. 2: "'nji",
  29848. 7: "'nji",
  29849. 20: "'nji",
  29850. 50: "'nji",
  29851. 3: "'ünji",
  29852. 4: "'ünji",
  29853. 100: "'ünji",
  29854. 6: "'njy",
  29855. 9: "'unjy",
  29856. 10: "'unjy",
  29857. 30: "'unjy",
  29858. 60: "'ynjy",
  29859. 90: "'ynjy" };
  29860. var tk = moment.defineLocale('tk', {
  29861. months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split(
  29862. '_'),
  29863. monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'),
  29864. weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split(
  29865. '_'),
  29866. weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'),
  29867. weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'),
  29868. longDateFormat: {
  29869. LT: 'HH:mm',
  29870. LTS: 'HH:mm:ss',
  29871. L: 'DD.MM.YYYY',
  29872. LL: 'D MMMM YYYY',
  29873. LLL: 'D MMMM YYYY HH:mm',
  29874. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  29875. calendar: {
  29876. sameDay: '[bugün sagat] LT',
  29877. nextDay: '[ertir sagat] LT',
  29878. nextWeek: '[indiki] dddd [sagat] LT',
  29879. lastDay: '[düýn] LT',
  29880. lastWeek: '[geçen] dddd [sagat] LT',
  29881. sameElse: 'L' },
  29882. relativeTime: {
  29883. future: '%s soň',
  29884. past: '%s öň',
  29885. s: 'birnäçe sekunt',
  29886. m: 'bir minut',
  29887. mm: '%d minut',
  29888. h: 'bir sagat',
  29889. hh: '%d sagat',
  29890. d: 'bir gün',
  29891. dd: '%d gün',
  29892. M: 'bir aý',
  29893. MM: '%d aý',
  29894. y: 'bir ýyl',
  29895. yy: '%d ýyl' },
  29896. ordinal: function ordinal(number, period) {
  29897. switch (period) {
  29898. case 'd':
  29899. case 'D':
  29900. case 'Do':
  29901. case 'DD':
  29902. return number;
  29903. default:
  29904. if (number === 0) {
  29905. // special case for zero
  29906. return number + "'unjy";
  29907. }
  29908. var a = number % 10,
  29909. b = number % 100 - a,
  29910. c = number >= 100 ? 100 : null;
  29911. return number + (suffixes[a] || suffixes[b] || suffixes[c]);}
  29912. },
  29913. week: {
  29914. dow: 1, // Monday is the first day of the week.
  29915. doy: 7 // The week that contains Jan 7th is the first week of the year.
  29916. } });
  29917. return tk;
  29918. });
  29919. /***/ }),
  29920. /* 162 */
  29921. /*!********************************************************************!*\
  29922. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tl-ph.js ***!
  29923. \********************************************************************/
  29924. /*! no static exports found */
  29925. /***/ (function(module, exports, __webpack_require__) {
  29926. //! moment.js locale configuration
  29927. //! locale : Tagalog (Philippines) [tl-ph]
  29928. //! author : Dan Hagman : https://github.com/hagmandan
  29929. ;(function (global, factory) {
  29930. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29931. undefined;
  29932. })(this, function (moment) {'use strict';
  29933. //! moment.js locale configuration
  29934. var tlPh = moment.defineLocale('tl-ph', {
  29935. months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(
  29936. '_'),
  29937. monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),
  29938. weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(
  29939. '_'),
  29940. weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),
  29941. weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),
  29942. longDateFormat: {
  29943. LT: 'HH:mm',
  29944. LTS: 'HH:mm:ss',
  29945. L: 'MM/D/YYYY',
  29946. LL: 'MMMM D, YYYY',
  29947. LLL: 'MMMM D, YYYY HH:mm',
  29948. LLLL: 'dddd, MMMM DD, YYYY HH:mm' },
  29949. calendar: {
  29950. sameDay: 'LT [ngayong araw]',
  29951. nextDay: '[Bukas ng] LT',
  29952. nextWeek: 'LT [sa susunod na] dddd',
  29953. lastDay: 'LT [kahapon]',
  29954. lastWeek: 'LT [noong nakaraang] dddd',
  29955. sameElse: 'L' },
  29956. relativeTime: {
  29957. future: 'sa loob ng %s',
  29958. past: '%s ang nakalipas',
  29959. s: 'ilang segundo',
  29960. ss: '%d segundo',
  29961. m: 'isang minuto',
  29962. mm: '%d minuto',
  29963. h: 'isang oras',
  29964. hh: '%d oras',
  29965. d: 'isang araw',
  29966. dd: '%d araw',
  29967. M: 'isang buwan',
  29968. MM: '%d buwan',
  29969. y: 'isang taon',
  29970. yy: '%d taon' },
  29971. dayOfMonthOrdinalParse: /\d{1,2}/,
  29972. ordinal: function ordinal(number) {
  29973. return number;
  29974. },
  29975. week: {
  29976. dow: 1, // Monday is the first day of the week.
  29977. doy: 4 // The week that contains Jan 4th is the first week of the year.
  29978. } });
  29979. return tlPh;
  29980. });
  29981. /***/ }),
  29982. /* 163 */
  29983. /*!******************************************************************!*\
  29984. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tlh.js ***!
  29985. \******************************************************************/
  29986. /*! no static exports found */
  29987. /***/ (function(module, exports, __webpack_require__) {
  29988. //! moment.js locale configuration
  29989. //! locale : Klingon [tlh]
  29990. //! author : Dominika Kruk : https://github.com/amaranthrose
  29991. ;(function (global, factory) {
  29992. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  29993. undefined;
  29994. })(this, function (moment) {'use strict';
  29995. //! moment.js locale configuration
  29996. var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');
  29997. function translateFuture(output) {
  29998. var time = output;
  29999. time =
  30000. output.indexOf('jaj') !== -1 ?
  30001. time.slice(0, -3) + 'leS' :
  30002. output.indexOf('jar') !== -1 ?
  30003. time.slice(0, -3) + 'waQ' :
  30004. output.indexOf('DIS') !== -1 ?
  30005. time.slice(0, -3) + 'nem' :
  30006. time + ' pIq';
  30007. return time;
  30008. }
  30009. function translatePast(output) {
  30010. var time = output;
  30011. time =
  30012. output.indexOf('jaj') !== -1 ?
  30013. time.slice(0, -3) + 'Hu’' :
  30014. output.indexOf('jar') !== -1 ?
  30015. time.slice(0, -3) + 'wen' :
  30016. output.indexOf('DIS') !== -1 ?
  30017. time.slice(0, -3) + 'ben' :
  30018. time + ' ret';
  30019. return time;
  30020. }
  30021. function translate(number, withoutSuffix, string, isFuture) {
  30022. var numberNoun = numberAsNoun(number);
  30023. switch (string) {
  30024. case 'ss':
  30025. return numberNoun + ' lup';
  30026. case 'mm':
  30027. return numberNoun + ' tup';
  30028. case 'hh':
  30029. return numberNoun + ' rep';
  30030. case 'dd':
  30031. return numberNoun + ' jaj';
  30032. case 'MM':
  30033. return numberNoun + ' jar';
  30034. case 'yy':
  30035. return numberNoun + ' DIS';}
  30036. }
  30037. function numberAsNoun(number) {
  30038. var hundred = Math.floor(number % 1000 / 100),
  30039. ten = Math.floor(number % 100 / 10),
  30040. one = number % 10,
  30041. word = '';
  30042. if (hundred > 0) {
  30043. word += numbersNouns[hundred] + 'vatlh';
  30044. }
  30045. if (ten > 0) {
  30046. word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH';
  30047. }
  30048. if (one > 0) {
  30049. word += (word !== '' ? ' ' : '') + numbersNouns[one];
  30050. }
  30051. return word === '' ? 'pagh' : word;
  30052. }
  30053. var tlh = moment.defineLocale('tlh', {
  30054. months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split(
  30055. '_'),
  30056. monthsShort:
  30057. 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split(
  30058. '_'),
  30059. monthsParseExact: true,
  30060. weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split(
  30061. '_'),
  30062. weekdaysShort:
  30063. 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),
  30064. weekdaysMin:
  30065. 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),
  30066. longDateFormat: {
  30067. LT: 'HH:mm',
  30068. LTS: 'HH:mm:ss',
  30069. L: 'DD.MM.YYYY',
  30070. LL: 'D MMMM YYYY',
  30071. LLL: 'D MMMM YYYY HH:mm',
  30072. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  30073. calendar: {
  30074. sameDay: '[DaHjaj] LT',
  30075. nextDay: '[wa’leS] LT',
  30076. nextWeek: 'LLL',
  30077. lastDay: '[wa’Hu’] LT',
  30078. lastWeek: 'LLL',
  30079. sameElse: 'L' },
  30080. relativeTime: {
  30081. future: translateFuture,
  30082. past: translatePast,
  30083. s: 'puS lup',
  30084. ss: translate,
  30085. m: 'wa’ tup',
  30086. mm: translate,
  30087. h: 'wa’ rep',
  30088. hh: translate,
  30089. d: 'wa’ jaj',
  30090. dd: translate,
  30091. M: 'wa’ jar',
  30092. MM: translate,
  30093. y: 'wa’ DIS',
  30094. yy: translate },
  30095. dayOfMonthOrdinalParse: /\d{1,2}\./,
  30096. ordinal: '%d.',
  30097. week: {
  30098. dow: 1, // Monday is the first day of the week.
  30099. doy: 4 // The week that contains Jan 4th is the first week of the year.
  30100. } });
  30101. return tlh;
  30102. });
  30103. /***/ }),
  30104. /* 164 */
  30105. /*!*****************************************************************!*\
  30106. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tr.js ***!
  30107. \*****************************************************************/
  30108. /*! no static exports found */
  30109. /***/ (function(module, exports, __webpack_require__) {
  30110. //! moment.js locale configuration
  30111. //! locale : Turkish [tr]
  30112. //! authors : Erhan Gundogan : https://github.com/erhangundogan,
  30113. //! Burak Yiğit Kaya: https://github.com/BYK
  30114. ;(function (global, factory) {
  30115. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30116. undefined;
  30117. })(this, function (moment) {'use strict';
  30118. //! moment.js locale configuration
  30119. var suffixes = {
  30120. 1: "'inci",
  30121. 5: "'inci",
  30122. 8: "'inci",
  30123. 70: "'inci",
  30124. 80: "'inci",
  30125. 2: "'nci",
  30126. 7: "'nci",
  30127. 20: "'nci",
  30128. 50: "'nci",
  30129. 3: "'üncü",
  30130. 4: "'üncü",
  30131. 100: "'üncü",
  30132. 6: "'ncı",
  30133. 9: "'uncu",
  30134. 10: "'uncu",
  30135. 30: "'uncu",
  30136. 60: "'ıncı",
  30137. 90: "'ıncı" };
  30138. var tr = moment.defineLocale('tr', {
  30139. months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split(
  30140. '_'),
  30141. monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),
  30142. weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split(
  30143. '_'),
  30144. weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'),
  30145. weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),
  30146. meridiem: function meridiem(hours, minutes, isLower) {
  30147. if (hours < 12) {
  30148. return isLower ? 'öö' : 'ÖÖ';
  30149. } else {
  30150. return isLower ? 'ös' : 'ÖS';
  30151. }
  30152. },
  30153. meridiemParse: /öö|ÖÖ|ös|ÖS/,
  30154. isPM: function isPM(input) {
  30155. return input === 'ös' || input === 'ÖS';
  30156. },
  30157. longDateFormat: {
  30158. LT: 'HH:mm',
  30159. LTS: 'HH:mm:ss',
  30160. L: 'DD.MM.YYYY',
  30161. LL: 'D MMMM YYYY',
  30162. LLL: 'D MMMM YYYY HH:mm',
  30163. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  30164. calendar: {
  30165. sameDay: '[bugün saat] LT',
  30166. nextDay: '[yarın saat] LT',
  30167. nextWeek: '[gelecek] dddd [saat] LT',
  30168. lastDay: '[dün] LT',
  30169. lastWeek: '[geçen] dddd [saat] LT',
  30170. sameElse: 'L' },
  30171. relativeTime: {
  30172. future: '%s sonra',
  30173. past: '%s önce',
  30174. s: 'birkaç saniye',
  30175. ss: '%d saniye',
  30176. m: 'bir dakika',
  30177. mm: '%d dakika',
  30178. h: 'bir saat',
  30179. hh: '%d saat',
  30180. d: 'bir gün',
  30181. dd: '%d gün',
  30182. w: 'bir hafta',
  30183. ww: '%d hafta',
  30184. M: 'bir ay',
  30185. MM: '%d ay',
  30186. y: 'bir yıl',
  30187. yy: '%d yıl' },
  30188. ordinal: function ordinal(number, period) {
  30189. switch (period) {
  30190. case 'd':
  30191. case 'D':
  30192. case 'Do':
  30193. case 'DD':
  30194. return number;
  30195. default:
  30196. if (number === 0) {
  30197. // special case for zero
  30198. return number + "'ıncı";
  30199. }
  30200. var a = number % 10,
  30201. b = number % 100 - a,
  30202. c = number >= 100 ? 100 : null;
  30203. return number + (suffixes[a] || suffixes[b] || suffixes[c]);}
  30204. },
  30205. week: {
  30206. dow: 1, // Monday is the first day of the week.
  30207. doy: 7 // The week that contains Jan 7th is the first week of the year.
  30208. } });
  30209. return tr;
  30210. });
  30211. /***/ }),
  30212. /* 165 */
  30213. /*!******************************************************************!*\
  30214. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tzl.js ***!
  30215. \******************************************************************/
  30216. /*! no static exports found */
  30217. /***/ (function(module, exports, __webpack_require__) {
  30218. //! moment.js locale configuration
  30219. //! locale : Talossan [tzl]
  30220. //! author : Robin van der Vliet : https://github.com/robin0van0der0v
  30221. //! author : Iustì Canun
  30222. ;(function (global, factory) {
  30223. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30224. undefined;
  30225. })(this, function (moment) {'use strict';
  30226. //! moment.js locale configuration
  30227. // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.
  30228. // This is currently too difficult (maybe even impossible) to add.
  30229. var tzl = moment.defineLocale('tzl', {
  30230. months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split(
  30231. '_'),
  30232. monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),
  30233. weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),
  30234. weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),
  30235. weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),
  30236. longDateFormat: {
  30237. LT: 'HH.mm',
  30238. LTS: 'HH.mm.ss',
  30239. L: 'DD.MM.YYYY',
  30240. LL: 'D. MMMM [dallas] YYYY',
  30241. LLL: 'D. MMMM [dallas] YYYY HH.mm',
  30242. LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm' },
  30243. meridiemParse: /d\'o|d\'a/i,
  30244. isPM: function isPM(input) {
  30245. return "d'o" === input.toLowerCase();
  30246. },
  30247. meridiem: function meridiem(hours, minutes, isLower) {
  30248. if (hours > 11) {
  30249. return isLower ? "d'o" : "D'O";
  30250. } else {
  30251. return isLower ? "d'a" : "D'A";
  30252. }
  30253. },
  30254. calendar: {
  30255. sameDay: '[oxhi à] LT',
  30256. nextDay: '[demà à] LT',
  30257. nextWeek: 'dddd [à] LT',
  30258. lastDay: '[ieiri à] LT',
  30259. lastWeek: '[sür el] dddd [lasteu à] LT',
  30260. sameElse: 'L' },
  30261. relativeTime: {
  30262. future: 'osprei %s',
  30263. past: 'ja%s',
  30264. s: processRelativeTime,
  30265. ss: processRelativeTime,
  30266. m: processRelativeTime,
  30267. mm: processRelativeTime,
  30268. h: processRelativeTime,
  30269. hh: processRelativeTime,
  30270. d: processRelativeTime,
  30271. dd: processRelativeTime,
  30272. M: processRelativeTime,
  30273. MM: processRelativeTime,
  30274. y: processRelativeTime,
  30275. yy: processRelativeTime },
  30276. dayOfMonthOrdinalParse: /\d{1,2}\./,
  30277. ordinal: '%d.',
  30278. week: {
  30279. dow: 1, // Monday is the first day of the week.
  30280. doy: 4 // The week that contains Jan 4th is the first week of the year.
  30281. } });
  30282. function processRelativeTime(number, withoutSuffix, key, isFuture) {
  30283. var format = {
  30284. s: ['viensas secunds', "'iensas secunds"],
  30285. ss: [number + ' secunds', '' + number + ' secunds'],
  30286. m: ["'n míut", "'iens míut"],
  30287. mm: [number + ' míuts', '' + number + ' míuts'],
  30288. h: ["'n þora", "'iensa þora"],
  30289. hh: [number + ' þoras', '' + number + ' þoras'],
  30290. d: ["'n ziua", "'iensa ziua"],
  30291. dd: [number + ' ziuas', '' + number + ' ziuas'],
  30292. M: ["'n mes", "'iens mes"],
  30293. MM: [number + ' mesen', '' + number + ' mesen'],
  30294. y: ["'n ar", "'iens ar"],
  30295. yy: [number + ' ars', '' + number + ' ars'] };
  30296. return isFuture ?
  30297. format[key][0] :
  30298. withoutSuffix ?
  30299. format[key][0] :
  30300. format[key][1];
  30301. }
  30302. return tzl;
  30303. });
  30304. /***/ }),
  30305. /* 166 */
  30306. /*!******************************************************************!*\
  30307. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tzm.js ***!
  30308. \******************************************************************/
  30309. /*! no static exports found */
  30310. /***/ (function(module, exports, __webpack_require__) {
  30311. //! moment.js locale configuration
  30312. //! locale : Central Atlas Tamazight [tzm]
  30313. //! author : Abdel Said : https://github.com/abdelsaid
  30314. ;(function (global, factory) {
  30315. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30316. undefined;
  30317. })(this, function (moment) {'use strict';
  30318. //! moment.js locale configuration
  30319. var tzm = moment.defineLocale('tzm', {
  30320. months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(
  30321. '_'),
  30322. monthsShort:
  30323. 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(
  30324. '_'),
  30325. weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
  30326. weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
  30327. weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
  30328. longDateFormat: {
  30329. LT: 'HH:mm',
  30330. LTS: 'HH:mm:ss',
  30331. L: 'DD/MM/YYYY',
  30332. LL: 'D MMMM YYYY',
  30333. LLL: 'D MMMM YYYY HH:mm',
  30334. LLLL: 'dddd D MMMM YYYY HH:mm' },
  30335. calendar: {
  30336. sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',
  30337. nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',
  30338. nextWeek: 'dddd [ⴴ] LT',
  30339. lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',
  30340. lastWeek: 'dddd [ⴴ] LT',
  30341. sameElse: 'L' },
  30342. relativeTime: {
  30343. future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',
  30344. past: 'ⵢⴰⵏ %s',
  30345. s: 'ⵉⵎⵉⴽ',
  30346. ss: '%d ⵉⵎⵉⴽ',
  30347. m: 'ⵎⵉⵏⵓⴺ',
  30348. mm: '%d ⵎⵉⵏⵓⴺ',
  30349. h: 'ⵙⴰⵄⴰ',
  30350. hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',
  30351. d: 'ⴰⵙⵙ',
  30352. dd: '%d oⵙⵙⴰⵏ',
  30353. M: 'ⴰⵢoⵓⵔ',
  30354. MM: '%d ⵉⵢⵢⵉⵔⵏ',
  30355. y: 'ⴰⵙⴳⴰⵙ',
  30356. yy: '%d ⵉⵙⴳⴰⵙⵏ' },
  30357. week: {
  30358. dow: 6, // Saturday is the first day of the week.
  30359. doy: 12 // The week that contains Jan 12th is the first week of the year.
  30360. } });
  30361. return tzm;
  30362. });
  30363. /***/ }),
  30364. /* 167 */
  30365. /*!***********************************************************************!*\
  30366. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/tzm-latn.js ***!
  30367. \***********************************************************************/
  30368. /*! no static exports found */
  30369. /***/ (function(module, exports, __webpack_require__) {
  30370. //! moment.js locale configuration
  30371. //! locale : Central Atlas Tamazight Latin [tzm-latn]
  30372. //! author : Abdel Said : https://github.com/abdelsaid
  30373. ;(function (global, factory) {
  30374. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30375. undefined;
  30376. })(this, function (moment) {'use strict';
  30377. //! moment.js locale configuration
  30378. var tzmLatn = moment.defineLocale('tzm-latn', {
  30379. months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(
  30380. '_'),
  30381. monthsShort:
  30382. 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(
  30383. '_'),
  30384. weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
  30385. weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
  30386. weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
  30387. longDateFormat: {
  30388. LT: 'HH:mm',
  30389. LTS: 'HH:mm:ss',
  30390. L: 'DD/MM/YYYY',
  30391. LL: 'D MMMM YYYY',
  30392. LLL: 'D MMMM YYYY HH:mm',
  30393. LLLL: 'dddd D MMMM YYYY HH:mm' },
  30394. calendar: {
  30395. sameDay: '[asdkh g] LT',
  30396. nextDay: '[aska g] LT',
  30397. nextWeek: 'dddd [g] LT',
  30398. lastDay: '[assant g] LT',
  30399. lastWeek: 'dddd [g] LT',
  30400. sameElse: 'L' },
  30401. relativeTime: {
  30402. future: 'dadkh s yan %s',
  30403. past: 'yan %s',
  30404. s: 'imik',
  30405. ss: '%d imik',
  30406. m: 'minuḍ',
  30407. mm: '%d minuḍ',
  30408. h: 'saɛa',
  30409. hh: '%d tassaɛin',
  30410. d: 'ass',
  30411. dd: '%d ossan',
  30412. M: 'ayowr',
  30413. MM: '%d iyyirn',
  30414. y: 'asgas',
  30415. yy: '%d isgasn' },
  30416. week: {
  30417. dow: 6, // Saturday is the first day of the week.
  30418. doy: 12 // The week that contains Jan 12th is the first week of the year.
  30419. } });
  30420. return tzmLatn;
  30421. });
  30422. /***/ }),
  30423. /* 168 */
  30424. /*!********************************************************************!*\
  30425. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ug-cn.js ***!
  30426. \********************************************************************/
  30427. /*! no static exports found */
  30428. /***/ (function(module, exports, __webpack_require__) {
  30429. //! moment.js locale configuration
  30430. //! locale : Uyghur (China) [ug-cn]
  30431. //! author: boyaq : https://github.com/boyaq
  30432. ;(function (global, factory) {
  30433. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30434. undefined;
  30435. })(this, function (moment) {'use strict';
  30436. //! moment.js locale configuration
  30437. var ugCn = moment.defineLocale('ug-cn', {
  30438. months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(
  30439. '_'),
  30440. monthsShort:
  30441. 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(
  30442. '_'),
  30443. weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(
  30444. '_'),
  30445. weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),
  30446. weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),
  30447. longDateFormat: {
  30448. LT: 'HH:mm',
  30449. LTS: 'HH:mm:ss',
  30450. L: 'YYYY-MM-DD',
  30451. LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',
  30452. LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',
  30453. LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm' },
  30454. meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,
  30455. meridiemHour: function meridiemHour(hour, meridiem) {
  30456. if (hour === 12) {
  30457. hour = 0;
  30458. }
  30459. if (
  30460. meridiem === 'يېرىم كېچە' ||
  30461. meridiem === 'سەھەر' ||
  30462. meridiem === 'چۈشتىن بۇرۇن')
  30463. {
  30464. return hour;
  30465. } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {
  30466. return hour + 12;
  30467. } else {
  30468. return hour >= 11 ? hour : hour + 12;
  30469. }
  30470. },
  30471. meridiem: function meridiem(hour, minute, isLower) {
  30472. var hm = hour * 100 + minute;
  30473. if (hm < 600) {
  30474. return 'يېرىم كېچە';
  30475. } else if (hm < 900) {
  30476. return 'سەھەر';
  30477. } else if (hm < 1130) {
  30478. return 'چۈشتىن بۇرۇن';
  30479. } else if (hm < 1230) {
  30480. return 'چۈش';
  30481. } else if (hm < 1800) {
  30482. return 'چۈشتىن كېيىن';
  30483. } else {
  30484. return 'كەچ';
  30485. }
  30486. },
  30487. calendar: {
  30488. sameDay: '[بۈگۈن سائەت] LT',
  30489. nextDay: '[ئەتە سائەت] LT',
  30490. nextWeek: '[كېلەركى] dddd [سائەت] LT',
  30491. lastDay: '[تۆنۈگۈن] LT',
  30492. lastWeek: '[ئالدىنقى] dddd [سائەت] LT',
  30493. sameElse: 'L' },
  30494. relativeTime: {
  30495. future: '%s كېيىن',
  30496. past: '%s بۇرۇن',
  30497. s: 'نەچچە سېكونت',
  30498. ss: '%d سېكونت',
  30499. m: 'بىر مىنۇت',
  30500. mm: '%d مىنۇت',
  30501. h: 'بىر سائەت',
  30502. hh: '%d سائەت',
  30503. d: 'بىر كۈن',
  30504. dd: '%d كۈن',
  30505. M: 'بىر ئاي',
  30506. MM: '%d ئاي',
  30507. y: 'بىر يىل',
  30508. yy: '%d يىل' },
  30509. dayOfMonthOrdinalParse: /\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,
  30510. ordinal: function ordinal(number, period) {
  30511. switch (period) {
  30512. case 'd':
  30513. case 'D':
  30514. case 'DDD':
  30515. return number + '-كۈنى';
  30516. case 'w':
  30517. case 'W':
  30518. return number + '-ھەپتە';
  30519. default:
  30520. return number;}
  30521. },
  30522. preparse: function preparse(string) {
  30523. return string.replace(/،/g, ',');
  30524. },
  30525. postformat: function postformat(string) {
  30526. return string.replace(/,/g, '،');
  30527. },
  30528. week: {
  30529. // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
  30530. dow: 1, // Monday is the first day of the week.
  30531. doy: 7 // The week that contains Jan 1st is the first week of the year.
  30532. } });
  30533. return ugCn;
  30534. });
  30535. /***/ }),
  30536. /* 169 */
  30537. /*!*****************************************************************!*\
  30538. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/uk.js ***!
  30539. \*****************************************************************/
  30540. /*! no static exports found */
  30541. /***/ (function(module, exports, __webpack_require__) {
  30542. //! moment.js locale configuration
  30543. //! locale : Ukrainian [uk]
  30544. //! author : zemlanin : https://github.com/zemlanin
  30545. //! Author : Menelion Elensúle : https://github.com/Oire
  30546. ;(function (global, factory) {
  30547. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30548. undefined;
  30549. })(this, function (moment) {'use strict';
  30550. //! moment.js locale configuration
  30551. function plural(word, num) {
  30552. var forms = word.split('_');
  30553. return num % 10 === 1 && num % 100 !== 11 ?
  30554. forms[0] :
  30555. num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ?
  30556. forms[1] :
  30557. forms[2];
  30558. }
  30559. function relativeTimeWithPlural(number, withoutSuffix, key) {
  30560. var format = {
  30561. ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',
  30562. mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',
  30563. hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин',
  30564. dd: 'день_дні_днів',
  30565. MM: 'місяць_місяці_місяців',
  30566. yy: 'рік_роки_років' };
  30567. if (key === 'm') {
  30568. return withoutSuffix ? 'хвилина' : 'хвилину';
  30569. } else if (key === 'h') {
  30570. return withoutSuffix ? 'година' : 'годину';
  30571. } else {
  30572. return number + ' ' + plural(format[key], +number);
  30573. }
  30574. }
  30575. function weekdaysCaseReplace(m, format) {
  30576. var weekdays = {
  30577. nominative:
  30578. 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split(
  30579. '_'),
  30580. accusative:
  30581. 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split(
  30582. '_'),
  30583. genitive:
  30584. 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split(
  30585. '_') },
  30586. nounCase;
  30587. if (m === true) {
  30588. return weekdays['nominative'].
  30589. slice(1, 7).
  30590. concat(weekdays['nominative'].slice(0, 1));
  30591. }
  30592. if (!m) {
  30593. return weekdays['nominative'];
  30594. }
  30595. nounCase = /(\[[ВвУу]\]) ?dddd/.test(format) ?
  30596. 'accusative' :
  30597. /\[?(?:минулої|наступної)? ?\] ?dddd/.test(format) ?
  30598. 'genitive' :
  30599. 'nominative';
  30600. return weekdays[nounCase][m.day()];
  30601. }
  30602. function processHoursFunction(str) {
  30603. return function () {
  30604. return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';
  30605. };
  30606. }
  30607. var uk = moment.defineLocale('uk', {
  30608. months: {
  30609. format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split(
  30610. '_'),
  30611. standalone:
  30612. 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split(
  30613. '_') },
  30614. monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split(
  30615. '_'),
  30616. weekdays: weekdaysCaseReplace,
  30617. weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
  30618. weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
  30619. longDateFormat: {
  30620. LT: 'HH:mm',
  30621. LTS: 'HH:mm:ss',
  30622. L: 'DD.MM.YYYY',
  30623. LL: 'D MMMM YYYY р.',
  30624. LLL: 'D MMMM YYYY р., HH:mm',
  30625. LLLL: 'dddd, D MMMM YYYY р., HH:mm' },
  30626. calendar: {
  30627. sameDay: processHoursFunction('[Сьогодні '),
  30628. nextDay: processHoursFunction('[Завтра '),
  30629. lastDay: processHoursFunction('[Вчора '),
  30630. nextWeek: processHoursFunction('[У] dddd ['),
  30631. lastWeek: function lastWeek() {
  30632. switch (this.day()) {
  30633. case 0:
  30634. case 3:
  30635. case 5:
  30636. case 6:
  30637. return processHoursFunction('[Минулої] dddd [').call(this);
  30638. case 1:
  30639. case 2:
  30640. case 4:
  30641. return processHoursFunction('[Минулого] dddd [').call(this);}
  30642. },
  30643. sameElse: 'L' },
  30644. relativeTime: {
  30645. future: 'за %s',
  30646. past: '%s тому',
  30647. s: 'декілька секунд',
  30648. ss: relativeTimeWithPlural,
  30649. m: relativeTimeWithPlural,
  30650. mm: relativeTimeWithPlural,
  30651. h: 'годину',
  30652. hh: relativeTimeWithPlural,
  30653. d: 'день',
  30654. dd: relativeTimeWithPlural,
  30655. M: 'місяць',
  30656. MM: relativeTimeWithPlural,
  30657. y: 'рік',
  30658. yy: relativeTimeWithPlural },
  30659. // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason
  30660. meridiemParse: /ночі|ранку|дня|вечора/,
  30661. isPM: function isPM(input) {
  30662. return /^(дня|вечора)$/.test(input);
  30663. },
  30664. meridiem: function meridiem(hour, minute, isLower) {
  30665. if (hour < 4) {
  30666. return 'ночі';
  30667. } else if (hour < 12) {
  30668. return 'ранку';
  30669. } else if (hour < 17) {
  30670. return 'дня';
  30671. } else {
  30672. return 'вечора';
  30673. }
  30674. },
  30675. dayOfMonthOrdinalParse: /\d{1,2}-(й|го)/,
  30676. ordinal: function ordinal(number, period) {
  30677. switch (period) {
  30678. case 'M':
  30679. case 'd':
  30680. case 'DDD':
  30681. case 'w':
  30682. case 'W':
  30683. return number + '-й';
  30684. case 'D':
  30685. return number + '-го';
  30686. default:
  30687. return number;}
  30688. },
  30689. week: {
  30690. dow: 1, // Monday is the first day of the week.
  30691. doy: 7 // The week that contains Jan 7th is the first week of the year.
  30692. } });
  30693. return uk;
  30694. });
  30695. /***/ }),
  30696. /* 170 */
  30697. /*!*****************************************************************!*\
  30698. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/ur.js ***!
  30699. \*****************************************************************/
  30700. /*! no static exports found */
  30701. /***/ (function(module, exports, __webpack_require__) {
  30702. //! moment.js locale configuration
  30703. //! locale : Urdu [ur]
  30704. //! author : Sawood Alam : https://github.com/ibnesayeed
  30705. //! author : Zack : https://github.com/ZackVision
  30706. ;(function (global, factory) {
  30707. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30708. undefined;
  30709. })(this, function (moment) {'use strict';
  30710. //! moment.js locale configuration
  30711. var months = [
  30712. 'جنوری',
  30713. 'فروری',
  30714. 'مارچ',
  30715. 'اپریل',
  30716. 'مئی',
  30717. 'جون',
  30718. 'جولائی',
  30719. 'اگست',
  30720. 'ستمبر',
  30721. 'اکتوبر',
  30722. 'نومبر',
  30723. 'دسمبر'],
  30724. days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ'];
  30725. var ur = moment.defineLocale('ur', {
  30726. months: months,
  30727. monthsShort: months,
  30728. weekdays: days,
  30729. weekdaysShort: days,
  30730. weekdaysMin: days,
  30731. longDateFormat: {
  30732. LT: 'HH:mm',
  30733. LTS: 'HH:mm:ss',
  30734. L: 'DD/MM/YYYY',
  30735. LL: 'D MMMM YYYY',
  30736. LLL: 'D MMMM YYYY HH:mm',
  30737. LLLL: 'dddd، D MMMM YYYY HH:mm' },
  30738. meridiemParse: /صبح|شام/,
  30739. isPM: function isPM(input) {
  30740. return 'شام' === input;
  30741. },
  30742. meridiem: function meridiem(hour, minute, isLower) {
  30743. if (hour < 12) {
  30744. return 'صبح';
  30745. }
  30746. return 'شام';
  30747. },
  30748. calendar: {
  30749. sameDay: '[آج بوقت] LT',
  30750. nextDay: '[کل بوقت] LT',
  30751. nextWeek: 'dddd [بوقت] LT',
  30752. lastDay: '[گذشتہ روز بوقت] LT',
  30753. lastWeek: '[گذشتہ] dddd [بوقت] LT',
  30754. sameElse: 'L' },
  30755. relativeTime: {
  30756. future: '%s بعد',
  30757. past: '%s قبل',
  30758. s: 'چند سیکنڈ',
  30759. ss: '%d سیکنڈ',
  30760. m: 'ایک منٹ',
  30761. mm: '%d منٹ',
  30762. h: 'ایک گھنٹہ',
  30763. hh: '%d گھنٹے',
  30764. d: 'ایک دن',
  30765. dd: '%d دن',
  30766. M: 'ایک ماہ',
  30767. MM: '%d ماہ',
  30768. y: 'ایک سال',
  30769. yy: '%d سال' },
  30770. preparse: function preparse(string) {
  30771. return string.replace(/،/g, ',');
  30772. },
  30773. postformat: function postformat(string) {
  30774. return string.replace(/,/g, '،');
  30775. },
  30776. week: {
  30777. dow: 1, // Monday is the first day of the week.
  30778. doy: 4 // The week that contains Jan 4th is the first week of the year.
  30779. } });
  30780. return ur;
  30781. });
  30782. /***/ }),
  30783. /* 171 */
  30784. /*!*****************************************************************!*\
  30785. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/uz.js ***!
  30786. \*****************************************************************/
  30787. /*! no static exports found */
  30788. /***/ (function(module, exports, __webpack_require__) {
  30789. //! moment.js locale configuration
  30790. //! locale : Uzbek [uz]
  30791. //! author : Sardor Muminov : https://github.com/muminoff
  30792. ;(function (global, factory) {
  30793. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30794. undefined;
  30795. })(this, function (moment) {'use strict';
  30796. //! moment.js locale configuration
  30797. var uz = moment.defineLocale('uz', {
  30798. months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(
  30799. '_'),
  30800. monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),
  30801. weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),
  30802. weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),
  30803. weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),
  30804. longDateFormat: {
  30805. LT: 'HH:mm',
  30806. LTS: 'HH:mm:ss',
  30807. L: 'DD/MM/YYYY',
  30808. LL: 'D MMMM YYYY',
  30809. LLL: 'D MMMM YYYY HH:mm',
  30810. LLLL: 'D MMMM YYYY, dddd HH:mm' },
  30811. calendar: {
  30812. sameDay: '[Бугун соат] LT [да]',
  30813. nextDay: '[Эртага] LT [да]',
  30814. nextWeek: 'dddd [куни соат] LT [да]',
  30815. lastDay: '[Кеча соат] LT [да]',
  30816. lastWeek: '[Утган] dddd [куни соат] LT [да]',
  30817. sameElse: 'L' },
  30818. relativeTime: {
  30819. future: 'Якин %s ичида',
  30820. past: 'Бир неча %s олдин',
  30821. s: 'фурсат',
  30822. ss: '%d фурсат',
  30823. m: 'бир дакика',
  30824. mm: '%d дакика',
  30825. h: 'бир соат',
  30826. hh: '%d соат',
  30827. d: 'бир кун',
  30828. dd: '%d кун',
  30829. M: 'бир ой',
  30830. MM: '%d ой',
  30831. y: 'бир йил',
  30832. yy: '%d йил' },
  30833. week: {
  30834. dow: 1, // Monday is the first day of the week.
  30835. doy: 7 // The week that contains Jan 4th is the first week of the year.
  30836. } });
  30837. return uz;
  30838. });
  30839. /***/ }),
  30840. /* 172 */
  30841. /*!**********************************************************************!*\
  30842. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/uz-latn.js ***!
  30843. \**********************************************************************/
  30844. /*! no static exports found */
  30845. /***/ (function(module, exports, __webpack_require__) {
  30846. //! moment.js locale configuration
  30847. //! locale : Uzbek Latin [uz-latn]
  30848. //! author : Rasulbek Mirzayev : github.com/Rasulbeeek
  30849. ;(function (global, factory) {
  30850. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30851. undefined;
  30852. })(this, function (moment) {'use strict';
  30853. //! moment.js locale configuration
  30854. var uzLatn = moment.defineLocale('uz-latn', {
  30855. months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split(
  30856. '_'),
  30857. monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),
  30858. weekdays:
  30859. 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split(
  30860. '_'),
  30861. weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),
  30862. weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),
  30863. longDateFormat: {
  30864. LT: 'HH:mm',
  30865. LTS: 'HH:mm:ss',
  30866. L: 'DD/MM/YYYY',
  30867. LL: 'D MMMM YYYY',
  30868. LLL: 'D MMMM YYYY HH:mm',
  30869. LLLL: 'D MMMM YYYY, dddd HH:mm' },
  30870. calendar: {
  30871. sameDay: '[Bugun soat] LT [da]',
  30872. nextDay: '[Ertaga] LT [da]',
  30873. nextWeek: 'dddd [kuni soat] LT [da]',
  30874. lastDay: '[Kecha soat] LT [da]',
  30875. lastWeek: "[O'tgan] dddd [kuni soat] LT [da]",
  30876. sameElse: 'L' },
  30877. relativeTime: {
  30878. future: 'Yaqin %s ichida',
  30879. past: 'Bir necha %s oldin',
  30880. s: 'soniya',
  30881. ss: '%d soniya',
  30882. m: 'bir daqiqa',
  30883. mm: '%d daqiqa',
  30884. h: 'bir soat',
  30885. hh: '%d soat',
  30886. d: 'bir kun',
  30887. dd: '%d kun',
  30888. M: 'bir oy',
  30889. MM: '%d oy',
  30890. y: 'bir yil',
  30891. yy: '%d yil' },
  30892. week: {
  30893. dow: 1, // Monday is the first day of the week.
  30894. doy: 7 // The week that contains Jan 7th is the first week of the year.
  30895. } });
  30896. return uzLatn;
  30897. });
  30898. /***/ }),
  30899. /* 173 */
  30900. /*!*****************************************************************!*\
  30901. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/vi.js ***!
  30902. \*****************************************************************/
  30903. /*! no static exports found */
  30904. /***/ (function(module, exports, __webpack_require__) {
  30905. //! moment.js locale configuration
  30906. //! locale : Vietnamese [vi]
  30907. //! author : Bang Nguyen : https://github.com/bangnk
  30908. //! author : Chien Kira : https://github.com/chienkira
  30909. ;(function (global, factory) {
  30910. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30911. undefined;
  30912. })(this, function (moment) {'use strict';
  30913. //! moment.js locale configuration
  30914. var vi = moment.defineLocale('vi', {
  30915. months: 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split(
  30916. '_'),
  30917. monthsShort:
  30918. 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split(
  30919. '_'),
  30920. monthsParseExact: true,
  30921. weekdays: 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split(
  30922. '_'),
  30923. weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
  30924. weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
  30925. weekdaysParseExact: true,
  30926. meridiemParse: /sa|ch/i,
  30927. isPM: function isPM(input) {
  30928. return /^ch$/i.test(input);
  30929. },
  30930. meridiem: function meridiem(hours, minutes, isLower) {
  30931. if (hours < 12) {
  30932. return isLower ? 'sa' : 'SA';
  30933. } else {
  30934. return isLower ? 'ch' : 'CH';
  30935. }
  30936. },
  30937. longDateFormat: {
  30938. LT: 'HH:mm',
  30939. LTS: 'HH:mm:ss',
  30940. L: 'DD/MM/YYYY',
  30941. LL: 'D MMMM [năm] YYYY',
  30942. LLL: 'D MMMM [năm] YYYY HH:mm',
  30943. LLLL: 'dddd, D MMMM [năm] YYYY HH:mm',
  30944. l: 'DD/M/YYYY',
  30945. ll: 'D MMM YYYY',
  30946. lll: 'D MMM YYYY HH:mm',
  30947. llll: 'ddd, D MMM YYYY HH:mm' },
  30948. calendar: {
  30949. sameDay: '[Hôm nay lúc] LT',
  30950. nextDay: '[Ngày mai lúc] LT',
  30951. nextWeek: 'dddd [tuần tới lúc] LT',
  30952. lastDay: '[Hôm qua lúc] LT',
  30953. lastWeek: 'dddd [tuần trước lúc] LT',
  30954. sameElse: 'L' },
  30955. relativeTime: {
  30956. future: '%s tới',
  30957. past: '%s trước',
  30958. s: 'vài giây',
  30959. ss: '%d giây',
  30960. m: 'một phút',
  30961. mm: '%d phút',
  30962. h: 'một giờ',
  30963. hh: '%d giờ',
  30964. d: 'một ngày',
  30965. dd: '%d ngày',
  30966. w: 'một tuần',
  30967. ww: '%d tuần',
  30968. M: 'một tháng',
  30969. MM: '%d tháng',
  30970. y: 'một năm',
  30971. yy: '%d năm' },
  30972. dayOfMonthOrdinalParse: /\d{1,2}/,
  30973. ordinal: function ordinal(number) {
  30974. return number;
  30975. },
  30976. week: {
  30977. dow: 1, // Monday is the first day of the week.
  30978. doy: 4 // The week that contains Jan 4th is the first week of the year.
  30979. } });
  30980. return vi;
  30981. });
  30982. /***/ }),
  30983. /* 174 */
  30984. /*!***********************************************************************!*\
  30985. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/x-pseudo.js ***!
  30986. \***********************************************************************/
  30987. /*! no static exports found */
  30988. /***/ (function(module, exports, __webpack_require__) {
  30989. //! moment.js locale configuration
  30990. //! locale : Pseudo [x-pseudo]
  30991. //! author : Andrew Hood : https://github.com/andrewhood125
  30992. ;(function (global, factory) {
  30993. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  30994. undefined;
  30995. })(this, function (moment) {'use strict';
  30996. //! moment.js locale configuration
  30997. var xPseudo = moment.defineLocale('x-pseudo', {
  30998. months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split(
  30999. '_'),
  31000. monthsShort:
  31001. 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split(
  31002. '_'),
  31003. monthsParseExact: true,
  31004. weekdays:
  31005. 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split(
  31006. '_'),
  31007. weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),
  31008. weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),
  31009. weekdaysParseExact: true,
  31010. longDateFormat: {
  31011. LT: 'HH:mm',
  31012. L: 'DD/MM/YYYY',
  31013. LL: 'D MMMM YYYY',
  31014. LLL: 'D MMMM YYYY HH:mm',
  31015. LLLL: 'dddd, D MMMM YYYY HH:mm' },
  31016. calendar: {
  31017. sameDay: '[T~ódá~ý át] LT',
  31018. nextDay: '[T~ómó~rró~w át] LT',
  31019. nextWeek: 'dddd [át] LT',
  31020. lastDay: '[Ý~ést~érdá~ý át] LT',
  31021. lastWeek: '[L~ást] dddd [át] LT',
  31022. sameElse: 'L' },
  31023. relativeTime: {
  31024. future: 'í~ñ %s',
  31025. past: '%s á~gó',
  31026. s: 'á ~féw ~sécó~ñds',
  31027. ss: '%d s~écóñ~ds',
  31028. m: 'á ~míñ~úté',
  31029. mm: '%d m~íñú~tés',
  31030. h: 'á~ñ hó~úr',
  31031. hh: '%d h~óúrs',
  31032. d: 'á ~dáý',
  31033. dd: '%d d~áýs',
  31034. M: 'á ~móñ~th',
  31035. MM: '%d m~óñt~hs',
  31036. y: 'á ~ýéár',
  31037. yy: '%d ý~éárs' },
  31038. dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
  31039. ordinal: function ordinal(number) {
  31040. var b = number % 10,
  31041. output =
  31042. ~~(number % 100 / 10) === 1 ?
  31043. 'th' :
  31044. b === 1 ?
  31045. 'st' :
  31046. b === 2 ?
  31047. 'nd' :
  31048. b === 3 ?
  31049. 'rd' :
  31050. 'th';
  31051. return number + output;
  31052. },
  31053. week: {
  31054. dow: 1, // Monday is the first day of the week.
  31055. doy: 4 // The week that contains Jan 4th is the first week of the year.
  31056. } });
  31057. return xPseudo;
  31058. });
  31059. /***/ }),
  31060. /* 175 */
  31061. /*!*****************************************************************!*\
  31062. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/yo.js ***!
  31063. \*****************************************************************/
  31064. /*! no static exports found */
  31065. /***/ (function(module, exports, __webpack_require__) {
  31066. //! moment.js locale configuration
  31067. //! locale : Yoruba Nigeria [yo]
  31068. //! author : Atolagbe Abisoye : https://github.com/andela-batolagbe
  31069. ;(function (global, factory) {
  31070. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  31071. undefined;
  31072. })(this, function (moment) {'use strict';
  31073. //! moment.js locale configuration
  31074. var yo = moment.defineLocale('yo', {
  31075. months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split(
  31076. '_'),
  31077. monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),
  31078. weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),
  31079. weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),
  31080. weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),
  31081. longDateFormat: {
  31082. LT: 'h:mm A',
  31083. LTS: 'h:mm:ss A',
  31084. L: 'DD/MM/YYYY',
  31085. LL: 'D MMMM YYYY',
  31086. LLL: 'D MMMM YYYY h:mm A',
  31087. LLLL: 'dddd, D MMMM YYYY h:mm A' },
  31088. calendar: {
  31089. sameDay: '[Ònì ni] LT',
  31090. nextDay: '[Ọ̀la ni] LT',
  31091. nextWeek: "dddd [Ọsẹ̀ tón'bọ] [ni] LT",
  31092. lastDay: '[Àna ni] LT',
  31093. lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT',
  31094. sameElse: 'L' },
  31095. relativeTime: {
  31096. future: 'ní %s',
  31097. past: '%s kọjá',
  31098. s: 'ìsẹjú aayá die',
  31099. ss: 'aayá %d',
  31100. m: 'ìsẹjú kan',
  31101. mm: 'ìsẹjú %d',
  31102. h: 'wákati kan',
  31103. hh: 'wákati %d',
  31104. d: 'ọjọ́ kan',
  31105. dd: 'ọjọ́ %d',
  31106. M: 'osù kan',
  31107. MM: 'osù %d',
  31108. y: 'ọdún kan',
  31109. yy: 'ọdún %d' },
  31110. dayOfMonthOrdinalParse: /ọjọ́\s\d{1,2}/,
  31111. ordinal: 'ọjọ́ %d',
  31112. week: {
  31113. dow: 1, // Monday is the first day of the week.
  31114. doy: 4 // The week that contains Jan 4th is the first week of the year.
  31115. } });
  31116. return yo;
  31117. });
  31118. /***/ }),
  31119. /* 176 */
  31120. /*!********************************************************************!*\
  31121. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/zh-cn.js ***!
  31122. \********************************************************************/
  31123. /*! no static exports found */
  31124. /***/ (function(module, exports, __webpack_require__) {
  31125. //! moment.js locale configuration
  31126. //! locale : Chinese (China) [zh-cn]
  31127. //! author : suupic : https://github.com/suupic
  31128. //! author : Zeno Zeng : https://github.com/zenozeng
  31129. //! author : uu109 : https://github.com/uu109
  31130. ;(function (global, factory) {
  31131. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  31132. undefined;
  31133. })(this, function (moment) {'use strict';
  31134. //! moment.js locale configuration
  31135. var zhCn = moment.defineLocale('zh-cn', {
  31136. months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(
  31137. '_'),
  31138. monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(
  31139. '_'),
  31140. weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
  31141. weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),
  31142. weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
  31143. longDateFormat: {
  31144. LT: 'HH:mm',
  31145. LTS: 'HH:mm:ss',
  31146. L: 'YYYY/MM/DD',
  31147. LL: 'YYYY年M月D日',
  31148. LLL: 'YYYY年M月D日Ah点mm分',
  31149. LLLL: 'YYYY年M月D日ddddAh点mm分',
  31150. l: 'YYYY/M/D',
  31151. ll: 'YYYY年M月D日',
  31152. lll: 'YYYY年M月D日 HH:mm',
  31153. llll: 'YYYY年M月D日dddd HH:mm' },
  31154. meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
  31155. meridiemHour: function meridiemHour(hour, meridiem) {
  31156. if (hour === 12) {
  31157. hour = 0;
  31158. }
  31159. if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {
  31160. return hour;
  31161. } else if (meridiem === '下午' || meridiem === '晚上') {
  31162. return hour + 12;
  31163. } else {
  31164. // '中午'
  31165. return hour >= 11 ? hour : hour + 12;
  31166. }
  31167. },
  31168. meridiem: function meridiem(hour, minute, isLower) {
  31169. var hm = hour * 100 + minute;
  31170. if (hm < 600) {
  31171. return '凌晨';
  31172. } else if (hm < 900) {
  31173. return '早上';
  31174. } else if (hm < 1130) {
  31175. return '上午';
  31176. } else if (hm < 1230) {
  31177. return '中午';
  31178. } else if (hm < 1800) {
  31179. return '下午';
  31180. } else {
  31181. return '晚上';
  31182. }
  31183. },
  31184. calendar: {
  31185. sameDay: '[今天]LT',
  31186. nextDay: '[明天]LT',
  31187. nextWeek: function nextWeek(now) {
  31188. if (now.week() !== this.week()) {
  31189. return '[下]dddLT';
  31190. } else {
  31191. return '[本]dddLT';
  31192. }
  31193. },
  31194. lastDay: '[昨天]LT',
  31195. lastWeek: function lastWeek(now) {
  31196. if (this.week() !== now.week()) {
  31197. return '[上]dddLT';
  31198. } else {
  31199. return '[本]dddLT';
  31200. }
  31201. },
  31202. sameElse: 'L' },
  31203. dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/,
  31204. ordinal: function ordinal(number, period) {
  31205. switch (period) {
  31206. case 'd':
  31207. case 'D':
  31208. case 'DDD':
  31209. return number + '日';
  31210. case 'M':
  31211. return number + '月';
  31212. case 'w':
  31213. case 'W':
  31214. return number + '周';
  31215. default:
  31216. return number;}
  31217. },
  31218. relativeTime: {
  31219. future: '%s后',
  31220. past: '%s前',
  31221. s: '几秒',
  31222. ss: '%d 秒',
  31223. m: '1 分钟',
  31224. mm: '%d 分钟',
  31225. h: '1 小时',
  31226. hh: '%d 小时',
  31227. d: '1 天',
  31228. dd: '%d 天',
  31229. w: '1 周',
  31230. ww: '%d 周',
  31231. M: '1 个月',
  31232. MM: '%d 个月',
  31233. y: '1 年',
  31234. yy: '%d 年' },
  31235. week: {
  31236. // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
  31237. dow: 1, // Monday is the first day of the week.
  31238. doy: 4 // The week that contains Jan 4th is the first week of the year.
  31239. } });
  31240. return zhCn;
  31241. });
  31242. /***/ }),
  31243. /* 177 */
  31244. /*!********************************************************************!*\
  31245. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/zh-hk.js ***!
  31246. \********************************************************************/
  31247. /*! no static exports found */
  31248. /***/ (function(module, exports, __webpack_require__) {
  31249. //! moment.js locale configuration
  31250. //! locale : Chinese (Hong Kong) [zh-hk]
  31251. //! author : Ben : https://github.com/ben-lin
  31252. //! author : Chris Lam : https://github.com/hehachris
  31253. //! author : Konstantin : https://github.com/skfd
  31254. //! author : Anthony : https://github.com/anthonylau
  31255. ;(function (global, factory) {
  31256. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  31257. undefined;
  31258. })(this, function (moment) {'use strict';
  31259. //! moment.js locale configuration
  31260. var zhHk = moment.defineLocale('zh-hk', {
  31261. months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(
  31262. '_'),
  31263. monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(
  31264. '_'),
  31265. weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
  31266. weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),
  31267. weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
  31268. longDateFormat: {
  31269. LT: 'HH:mm',
  31270. LTS: 'HH:mm:ss',
  31271. L: 'YYYY/MM/DD',
  31272. LL: 'YYYY年M月D日',
  31273. LLL: 'YYYY年M月D日 HH:mm',
  31274. LLLL: 'YYYY年M月D日dddd HH:mm',
  31275. l: 'YYYY/M/D',
  31276. ll: 'YYYY年M月D日',
  31277. lll: 'YYYY年M月D日 HH:mm',
  31278. llll: 'YYYY年M月D日dddd HH:mm' },
  31279. meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
  31280. meridiemHour: function meridiemHour(hour, meridiem) {
  31281. if (hour === 12) {
  31282. hour = 0;
  31283. }
  31284. if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {
  31285. return hour;
  31286. } else if (meridiem === '中午') {
  31287. return hour >= 11 ? hour : hour + 12;
  31288. } else if (meridiem === '下午' || meridiem === '晚上') {
  31289. return hour + 12;
  31290. }
  31291. },
  31292. meridiem: function meridiem(hour, minute, isLower) {
  31293. var hm = hour * 100 + minute;
  31294. if (hm < 600) {
  31295. return '凌晨';
  31296. } else if (hm < 900) {
  31297. return '早上';
  31298. } else if (hm < 1200) {
  31299. return '上午';
  31300. } else if (hm === 1200) {
  31301. return '中午';
  31302. } else if (hm < 1800) {
  31303. return '下午';
  31304. } else {
  31305. return '晚上';
  31306. }
  31307. },
  31308. calendar: {
  31309. sameDay: '[今天]LT',
  31310. nextDay: '[明天]LT',
  31311. nextWeek: '[下]ddddLT',
  31312. lastDay: '[昨天]LT',
  31313. lastWeek: '[上]ddddLT',
  31314. sameElse: 'L' },
  31315. dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/,
  31316. ordinal: function ordinal(number, period) {
  31317. switch (period) {
  31318. case 'd':
  31319. case 'D':
  31320. case 'DDD':
  31321. return number + '日';
  31322. case 'M':
  31323. return number + '月';
  31324. case 'w':
  31325. case 'W':
  31326. return number + '週';
  31327. default:
  31328. return number;}
  31329. },
  31330. relativeTime: {
  31331. future: '%s後',
  31332. past: '%s前',
  31333. s: '幾秒',
  31334. ss: '%d 秒',
  31335. m: '1 分鐘',
  31336. mm: '%d 分鐘',
  31337. h: '1 小時',
  31338. hh: '%d 小時',
  31339. d: '1 天',
  31340. dd: '%d 天',
  31341. M: '1 個月',
  31342. MM: '%d 個月',
  31343. y: '1 年',
  31344. yy: '%d 年' } });
  31345. return zhHk;
  31346. });
  31347. /***/ }),
  31348. /* 178 */
  31349. /*!********************************************************************!*\
  31350. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/zh-mo.js ***!
  31351. \********************************************************************/
  31352. /*! no static exports found */
  31353. /***/ (function(module, exports, __webpack_require__) {
  31354. //! moment.js locale configuration
  31355. //! locale : Chinese (Macau) [zh-mo]
  31356. //! author : Ben : https://github.com/ben-lin
  31357. //! author : Chris Lam : https://github.com/hehachris
  31358. //! author : Tan Yuanhong : https://github.com/le0tan
  31359. ;(function (global, factory) {
  31360. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  31361. undefined;
  31362. })(this, function (moment) {'use strict';
  31363. //! moment.js locale configuration
  31364. var zhMo = moment.defineLocale('zh-mo', {
  31365. months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(
  31366. '_'),
  31367. monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(
  31368. '_'),
  31369. weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
  31370. weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),
  31371. weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
  31372. longDateFormat: {
  31373. LT: 'HH:mm',
  31374. LTS: 'HH:mm:ss',
  31375. L: 'DD/MM/YYYY',
  31376. LL: 'YYYY年M月D日',
  31377. LLL: 'YYYY年M月D日 HH:mm',
  31378. LLLL: 'YYYY年M月D日dddd HH:mm',
  31379. l: 'D/M/YYYY',
  31380. ll: 'YYYY年M月D日',
  31381. lll: 'YYYY年M月D日 HH:mm',
  31382. llll: 'YYYY年M月D日dddd HH:mm' },
  31383. meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
  31384. meridiemHour: function meridiemHour(hour, meridiem) {
  31385. if (hour === 12) {
  31386. hour = 0;
  31387. }
  31388. if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {
  31389. return hour;
  31390. } else if (meridiem === '中午') {
  31391. return hour >= 11 ? hour : hour + 12;
  31392. } else if (meridiem === '下午' || meridiem === '晚上') {
  31393. return hour + 12;
  31394. }
  31395. },
  31396. meridiem: function meridiem(hour, minute, isLower) {
  31397. var hm = hour * 100 + minute;
  31398. if (hm < 600) {
  31399. return '凌晨';
  31400. } else if (hm < 900) {
  31401. return '早上';
  31402. } else if (hm < 1130) {
  31403. return '上午';
  31404. } else if (hm < 1230) {
  31405. return '中午';
  31406. } else if (hm < 1800) {
  31407. return '下午';
  31408. } else {
  31409. return '晚上';
  31410. }
  31411. },
  31412. calendar: {
  31413. sameDay: '[今天] LT',
  31414. nextDay: '[明天] LT',
  31415. nextWeek: '[下]dddd LT',
  31416. lastDay: '[昨天] LT',
  31417. lastWeek: '[上]dddd LT',
  31418. sameElse: 'L' },
  31419. dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/,
  31420. ordinal: function ordinal(number, period) {
  31421. switch (period) {
  31422. case 'd':
  31423. case 'D':
  31424. case 'DDD':
  31425. return number + '日';
  31426. case 'M':
  31427. return number + '月';
  31428. case 'w':
  31429. case 'W':
  31430. return number + '週';
  31431. default:
  31432. return number;}
  31433. },
  31434. relativeTime: {
  31435. future: '%s內',
  31436. past: '%s前',
  31437. s: '幾秒',
  31438. ss: '%d 秒',
  31439. m: '1 分鐘',
  31440. mm: '%d 分鐘',
  31441. h: '1 小時',
  31442. hh: '%d 小時',
  31443. d: '1 天',
  31444. dd: '%d 天',
  31445. M: '1 個月',
  31446. MM: '%d 個月',
  31447. y: '1 年',
  31448. yy: '%d 年' } });
  31449. return zhMo;
  31450. });
  31451. /***/ }),
  31452. /* 179 */
  31453. /*!********************************************************************!*\
  31454. !*** D:/wxproject/项目模板/uniapp/node_modules/moment/locale/zh-tw.js ***!
  31455. \********************************************************************/
  31456. /*! no static exports found */
  31457. /***/ (function(module, exports, __webpack_require__) {
  31458. //! moment.js locale configuration
  31459. //! locale : Chinese (Taiwan) [zh-tw]
  31460. //! author : Ben : https://github.com/ben-lin
  31461. //! author : Chris Lam : https://github.com/hehachris
  31462. ;(function (global, factory) {
  31463. true ? factory(__webpack_require__(/*! ../moment */ 42)) :
  31464. undefined;
  31465. })(this, function (moment) {'use strict';
  31466. //! moment.js locale configuration
  31467. var zhTw = moment.defineLocale('zh-tw', {
  31468. months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(
  31469. '_'),
  31470. monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(
  31471. '_'),
  31472. weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
  31473. weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),
  31474. weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
  31475. longDateFormat: {
  31476. LT: 'HH:mm',
  31477. LTS: 'HH:mm:ss',
  31478. L: 'YYYY/MM/DD',
  31479. LL: 'YYYY年M月D日',
  31480. LLL: 'YYYY年M月D日 HH:mm',
  31481. LLLL: 'YYYY年M月D日dddd HH:mm',
  31482. l: 'YYYY/M/D',
  31483. ll: 'YYYY年M月D日',
  31484. lll: 'YYYY年M月D日 HH:mm',
  31485. llll: 'YYYY年M月D日dddd HH:mm' },
  31486. meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
  31487. meridiemHour: function meridiemHour(hour, meridiem) {
  31488. if (hour === 12) {
  31489. hour = 0;
  31490. }
  31491. if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {
  31492. return hour;
  31493. } else if (meridiem === '中午') {
  31494. return hour >= 11 ? hour : hour + 12;
  31495. } else if (meridiem === '下午' || meridiem === '晚上') {
  31496. return hour + 12;
  31497. }
  31498. },
  31499. meridiem: function meridiem(hour, minute, isLower) {
  31500. var hm = hour * 100 + minute;
  31501. if (hm < 600) {
  31502. return '凌晨';
  31503. } else if (hm < 900) {
  31504. return '早上';
  31505. } else if (hm < 1130) {
  31506. return '上午';
  31507. } else if (hm < 1230) {
  31508. return '中午';
  31509. } else if (hm < 1800) {
  31510. return '下午';
  31511. } else {
  31512. return '晚上';
  31513. }
  31514. },
  31515. calendar: {
  31516. sameDay: '[今天] LT',
  31517. nextDay: '[明天] LT',
  31518. nextWeek: '[下]dddd LT',
  31519. lastDay: '[昨天] LT',
  31520. lastWeek: '[上]dddd LT',
  31521. sameElse: 'L' },
  31522. dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/,
  31523. ordinal: function ordinal(number, period) {
  31524. switch (period) {
  31525. case 'd':
  31526. case 'D':
  31527. case 'DDD':
  31528. return number + '日';
  31529. case 'M':
  31530. return number + '月';
  31531. case 'w':
  31532. case 'W':
  31533. return number + '週';
  31534. default:
  31535. return number;}
  31536. },
  31537. relativeTime: {
  31538. future: '%s後',
  31539. past: '%s前',
  31540. s: '幾秒',
  31541. ss: '%d 秒',
  31542. m: '1 分鐘',
  31543. mm: '%d 分鐘',
  31544. h: '1 小時',
  31545. hh: '%d 小時',
  31546. d: '1 天',
  31547. dd: '%d 天',
  31548. M: '1 個月',
  31549. MM: '%d 個月',
  31550. y: '1 年',
  31551. yy: '%d 年' } });
  31552. return zhTw;
  31553. });
  31554. /***/ }),
  31555. /* 180 */,
  31556. /* 181 */,
  31557. /* 182 */,
  31558. /* 183 */,
  31559. /* 184 */,
  31560. /* 185 */,
  31561. /* 186 */,
  31562. /* 187 */,
  31563. /* 188 */,
  31564. /* 189 */,
  31565. /* 190 */,
  31566. /* 191 */,
  31567. /* 192 */,
  31568. /* 193 */,
  31569. /* 194 */,
  31570. /* 195 */,
  31571. /* 196 */,
  31572. /* 197 */,
  31573. /* 198 */,
  31574. /* 199 */,
  31575. /* 200 */,
  31576. /* 201 */,
  31577. /* 202 */,
  31578. /* 203 */,
  31579. /* 204 */,
  31580. /* 205 */,
  31581. /* 206 */,
  31582. /* 207 */,
  31583. /* 208 */,
  31584. /* 209 */,
  31585. /* 210 */
  31586. /*!************************************************************************************!*\
  31587. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-icons/components/uni-icons/icons.js ***!
  31588. \************************************************************************************/
  31589. /*! no static exports found */
  31590. /***/ (function(module, exports, __webpack_require__) {
  31591. "use strict";
  31592. Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = {
  31593. "id": "2852637",
  31594. "name": "uniui图标库",
  31595. "font_family": "uniicons",
  31596. "css_prefix_text": "uniui-",
  31597. "description": "",
  31598. "glyphs": [
  31599. {
  31600. "icon_id": "25027049",
  31601. "name": "yanse",
  31602. "font_class": "color",
  31603. "unicode": "e6cf",
  31604. "unicode_decimal": 59087 },
  31605. {
  31606. "icon_id": "25027048",
  31607. "name": "wallet",
  31608. "font_class": "wallet",
  31609. "unicode": "e6b1",
  31610. "unicode_decimal": 59057 },
  31611. {
  31612. "icon_id": "25015720",
  31613. "name": "settings-filled",
  31614. "font_class": "settings-filled",
  31615. "unicode": "e6ce",
  31616. "unicode_decimal": 59086 },
  31617. {
  31618. "icon_id": "25015434",
  31619. "name": "shimingrenzheng-filled",
  31620. "font_class": "auth-filled",
  31621. "unicode": "e6cc",
  31622. "unicode_decimal": 59084 },
  31623. {
  31624. "icon_id": "24934246",
  31625. "name": "shop-filled",
  31626. "font_class": "shop-filled",
  31627. "unicode": "e6cd",
  31628. "unicode_decimal": 59085 },
  31629. {
  31630. "icon_id": "24934159",
  31631. "name": "staff-filled-01",
  31632. "font_class": "staff-filled",
  31633. "unicode": "e6cb",
  31634. "unicode_decimal": 59083 },
  31635. {
  31636. "icon_id": "24932461",
  31637. "name": "VIP-filled",
  31638. "font_class": "vip-filled",
  31639. "unicode": "e6c6",
  31640. "unicode_decimal": 59078 },
  31641. {
  31642. "icon_id": "24932462",
  31643. "name": "plus_circle_fill",
  31644. "font_class": "plus-filled",
  31645. "unicode": "e6c7",
  31646. "unicode_decimal": 59079 },
  31647. {
  31648. "icon_id": "24932463",
  31649. "name": "folder_add-filled",
  31650. "font_class": "folder-add-filled",
  31651. "unicode": "e6c8",
  31652. "unicode_decimal": 59080 },
  31653. {
  31654. "icon_id": "24932464",
  31655. "name": "yanse-filled",
  31656. "font_class": "color-filled",
  31657. "unicode": "e6c9",
  31658. "unicode_decimal": 59081 },
  31659. {
  31660. "icon_id": "24932465",
  31661. "name": "tune-filled",
  31662. "font_class": "tune-filled",
  31663. "unicode": "e6ca",
  31664. "unicode_decimal": 59082 },
  31665. {
  31666. "icon_id": "24932455",
  31667. "name": "a-rilidaka-filled",
  31668. "font_class": "calendar-filled",
  31669. "unicode": "e6c0",
  31670. "unicode_decimal": 59072 },
  31671. {
  31672. "icon_id": "24932456",
  31673. "name": "notification-filled",
  31674. "font_class": "notification-filled",
  31675. "unicode": "e6c1",
  31676. "unicode_decimal": 59073 },
  31677. {
  31678. "icon_id": "24932457",
  31679. "name": "wallet-filled",
  31680. "font_class": "wallet-filled",
  31681. "unicode": "e6c2",
  31682. "unicode_decimal": 59074 },
  31683. {
  31684. "icon_id": "24932458",
  31685. "name": "paihangbang-filled",
  31686. "font_class": "medal-filled",
  31687. "unicode": "e6c3",
  31688. "unicode_decimal": 59075 },
  31689. {
  31690. "icon_id": "24932459",
  31691. "name": "gift-filled",
  31692. "font_class": "gift-filled",
  31693. "unicode": "e6c4",
  31694. "unicode_decimal": 59076 },
  31695. {
  31696. "icon_id": "24932460",
  31697. "name": "fire-filled",
  31698. "font_class": "fire-filled",
  31699. "unicode": "e6c5",
  31700. "unicode_decimal": 59077 },
  31701. {
  31702. "icon_id": "24928001",
  31703. "name": "refreshempty",
  31704. "font_class": "refreshempty",
  31705. "unicode": "e6bf",
  31706. "unicode_decimal": 59071 },
  31707. {
  31708. "icon_id": "24926853",
  31709. "name": "location-ellipse",
  31710. "font_class": "location-filled",
  31711. "unicode": "e6af",
  31712. "unicode_decimal": 59055 },
  31713. {
  31714. "icon_id": "24926735",
  31715. "name": "person-filled",
  31716. "font_class": "person-filled",
  31717. "unicode": "e69d",
  31718. "unicode_decimal": 59037 },
  31719. {
  31720. "icon_id": "24926703",
  31721. "name": "personadd-filled",
  31722. "font_class": "personadd-filled",
  31723. "unicode": "e698",
  31724. "unicode_decimal": 59032 },
  31725. {
  31726. "icon_id": "24923351",
  31727. "name": "back",
  31728. "font_class": "back",
  31729. "unicode": "e6b9",
  31730. "unicode_decimal": 59065 },
  31731. {
  31732. "icon_id": "24923352",
  31733. "name": "forward",
  31734. "font_class": "forward",
  31735. "unicode": "e6ba",
  31736. "unicode_decimal": 59066 },
  31737. {
  31738. "icon_id": "24923353",
  31739. "name": "arrowthinright",
  31740. "font_class": "arrow-right",
  31741. "unicode": "e6bb",
  31742. "unicode_decimal": 59067 },
  31743. {
  31744. "icon_id": "24923353",
  31745. "name": "arrowthinright",
  31746. "font_class": "arrowthinright",
  31747. "unicode": "e6bb",
  31748. "unicode_decimal": 59067 },
  31749. {
  31750. "icon_id": "24923354",
  31751. "name": "arrowthinleft",
  31752. "font_class": "arrow-left",
  31753. "unicode": "e6bc",
  31754. "unicode_decimal": 59068 },
  31755. {
  31756. "icon_id": "24923354",
  31757. "name": "arrowthinleft",
  31758. "font_class": "arrowthinleft",
  31759. "unicode": "e6bc",
  31760. "unicode_decimal": 59068 },
  31761. {
  31762. "icon_id": "24923355",
  31763. "name": "arrowthinup",
  31764. "font_class": "arrow-up",
  31765. "unicode": "e6bd",
  31766. "unicode_decimal": 59069 },
  31767. {
  31768. "icon_id": "24923355",
  31769. "name": "arrowthinup",
  31770. "font_class": "arrowthinup",
  31771. "unicode": "e6bd",
  31772. "unicode_decimal": 59069 },
  31773. {
  31774. "icon_id": "24923356",
  31775. "name": "arrowthindown",
  31776. "font_class": "arrow-down",
  31777. "unicode": "e6be",
  31778. "unicode_decimal": 59070 },
  31779. {
  31780. "icon_id": "24923356",
  31781. "name": "arrowthindown",
  31782. "font_class": "arrowthindown",
  31783. "unicode": "e6be",
  31784. "unicode_decimal": 59070 },
  31785. {
  31786. "icon_id": "24923349",
  31787. "name": "arrowdown",
  31788. "font_class": "bottom",
  31789. "unicode": "e6b8",
  31790. "unicode_decimal": 59064 },
  31791. {
  31792. "icon_id": "24923349",
  31793. "name": "arrowdown",
  31794. "font_class": "arrowdown",
  31795. "unicode": "e6b8",
  31796. "unicode_decimal": 59064 },
  31797. {
  31798. "icon_id": "24923346",
  31799. "name": "arrowright",
  31800. "font_class": "right",
  31801. "unicode": "e6b5",
  31802. "unicode_decimal": 59061 },
  31803. {
  31804. "icon_id": "24923346",
  31805. "name": "arrowright",
  31806. "font_class": "arrowright",
  31807. "unicode": "e6b5",
  31808. "unicode_decimal": 59061 },
  31809. {
  31810. "icon_id": "24923347",
  31811. "name": "arrowup",
  31812. "font_class": "top",
  31813. "unicode": "e6b6",
  31814. "unicode_decimal": 59062 },
  31815. {
  31816. "icon_id": "24923347",
  31817. "name": "arrowup",
  31818. "font_class": "arrowup",
  31819. "unicode": "e6b6",
  31820. "unicode_decimal": 59062 },
  31821. {
  31822. "icon_id": "24923348",
  31823. "name": "arrowleft",
  31824. "font_class": "left",
  31825. "unicode": "e6b7",
  31826. "unicode_decimal": 59063 },
  31827. {
  31828. "icon_id": "24923348",
  31829. "name": "arrowleft",
  31830. "font_class": "arrowleft",
  31831. "unicode": "e6b7",
  31832. "unicode_decimal": 59063 },
  31833. {
  31834. "icon_id": "24923334",
  31835. "name": "eye",
  31836. "font_class": "eye",
  31837. "unicode": "e651",
  31838. "unicode_decimal": 58961 },
  31839. {
  31840. "icon_id": "24923335",
  31841. "name": "eye-filled",
  31842. "font_class": "eye-filled",
  31843. "unicode": "e66a",
  31844. "unicode_decimal": 58986 },
  31845. {
  31846. "icon_id": "24923336",
  31847. "name": "eye-slash",
  31848. "font_class": "eye-slash",
  31849. "unicode": "e6b3",
  31850. "unicode_decimal": 59059 },
  31851. {
  31852. "icon_id": "24923337",
  31853. "name": "eye-slash-filled",
  31854. "font_class": "eye-slash-filled",
  31855. "unicode": "e6b4",
  31856. "unicode_decimal": 59060 },
  31857. {
  31858. "icon_id": "24923305",
  31859. "name": "info-filled",
  31860. "font_class": "info-filled",
  31861. "unicode": "e649",
  31862. "unicode_decimal": 58953 },
  31863. {
  31864. "icon_id": "24923299",
  31865. "name": "reload-01",
  31866. "font_class": "reload",
  31867. "unicode": "e6b2",
  31868. "unicode_decimal": 59058 },
  31869. {
  31870. "icon_id": "24923195",
  31871. "name": "mic_slash_fill",
  31872. "font_class": "micoff-filled",
  31873. "unicode": "e6b0",
  31874. "unicode_decimal": 59056 },
  31875. {
  31876. "icon_id": "24923165",
  31877. "name": "map-pin-ellipse",
  31878. "font_class": "map-pin-ellipse",
  31879. "unicode": "e6ac",
  31880. "unicode_decimal": 59052 },
  31881. {
  31882. "icon_id": "24923166",
  31883. "name": "map-pin",
  31884. "font_class": "map-pin",
  31885. "unicode": "e6ad",
  31886. "unicode_decimal": 59053 },
  31887. {
  31888. "icon_id": "24923167",
  31889. "name": "location",
  31890. "font_class": "location",
  31891. "unicode": "e6ae",
  31892. "unicode_decimal": 59054 },
  31893. {
  31894. "icon_id": "24923064",
  31895. "name": "starhalf",
  31896. "font_class": "starhalf",
  31897. "unicode": "e683",
  31898. "unicode_decimal": 59011 },
  31899. {
  31900. "icon_id": "24923065",
  31901. "name": "star",
  31902. "font_class": "star",
  31903. "unicode": "e688",
  31904. "unicode_decimal": 59016 },
  31905. {
  31906. "icon_id": "24923066",
  31907. "name": "star-filled",
  31908. "font_class": "star-filled",
  31909. "unicode": "e68f",
  31910. "unicode_decimal": 59023 },
  31911. {
  31912. "icon_id": "24899646",
  31913. "name": "a-rilidaka",
  31914. "font_class": "calendar",
  31915. "unicode": "e6a0",
  31916. "unicode_decimal": 59040 },
  31917. {
  31918. "icon_id": "24899647",
  31919. "name": "fire",
  31920. "font_class": "fire",
  31921. "unicode": "e6a1",
  31922. "unicode_decimal": 59041 },
  31923. {
  31924. "icon_id": "24899648",
  31925. "name": "paihangbang",
  31926. "font_class": "medal",
  31927. "unicode": "e6a2",
  31928. "unicode_decimal": 59042 },
  31929. {
  31930. "icon_id": "24899649",
  31931. "name": "font",
  31932. "font_class": "font",
  31933. "unicode": "e6a3",
  31934. "unicode_decimal": 59043 },
  31935. {
  31936. "icon_id": "24899650",
  31937. "name": "gift",
  31938. "font_class": "gift",
  31939. "unicode": "e6a4",
  31940. "unicode_decimal": 59044 },
  31941. {
  31942. "icon_id": "24899651",
  31943. "name": "link",
  31944. "font_class": "link",
  31945. "unicode": "e6a5",
  31946. "unicode_decimal": 59045 },
  31947. {
  31948. "icon_id": "24899652",
  31949. "name": "notification",
  31950. "font_class": "notification",
  31951. "unicode": "e6a6",
  31952. "unicode_decimal": 59046 },
  31953. {
  31954. "icon_id": "24899653",
  31955. "name": "staff",
  31956. "font_class": "staff",
  31957. "unicode": "e6a7",
  31958. "unicode_decimal": 59047 },
  31959. {
  31960. "icon_id": "24899654",
  31961. "name": "VIP",
  31962. "font_class": "vip",
  31963. "unicode": "e6a8",
  31964. "unicode_decimal": 59048 },
  31965. {
  31966. "icon_id": "24899655",
  31967. "name": "folder_add",
  31968. "font_class": "folder-add",
  31969. "unicode": "e6a9",
  31970. "unicode_decimal": 59049 },
  31971. {
  31972. "icon_id": "24899656",
  31973. "name": "tune",
  31974. "font_class": "tune",
  31975. "unicode": "e6aa",
  31976. "unicode_decimal": 59050 },
  31977. {
  31978. "icon_id": "24899657",
  31979. "name": "shimingrenzheng",
  31980. "font_class": "auth",
  31981. "unicode": "e6ab",
  31982. "unicode_decimal": 59051 },
  31983. {
  31984. "icon_id": "24899565",
  31985. "name": "person",
  31986. "font_class": "person",
  31987. "unicode": "e699",
  31988. "unicode_decimal": 59033 },
  31989. {
  31990. "icon_id": "24899566",
  31991. "name": "email-filled",
  31992. "font_class": "email-filled",
  31993. "unicode": "e69a",
  31994. "unicode_decimal": 59034 },
  31995. {
  31996. "icon_id": "24899567",
  31997. "name": "phone-filled",
  31998. "font_class": "phone-filled",
  31999. "unicode": "e69b",
  32000. "unicode_decimal": 59035 },
  32001. {
  32002. "icon_id": "24899568",
  32003. "name": "phone",
  32004. "font_class": "phone",
  32005. "unicode": "e69c",
  32006. "unicode_decimal": 59036 },
  32007. {
  32008. "icon_id": "24899570",
  32009. "name": "email",
  32010. "font_class": "email",
  32011. "unicode": "e69e",
  32012. "unicode_decimal": 59038 },
  32013. {
  32014. "icon_id": "24899571",
  32015. "name": "personadd",
  32016. "font_class": "personadd",
  32017. "unicode": "e69f",
  32018. "unicode_decimal": 59039 },
  32019. {
  32020. "icon_id": "24899558",
  32021. "name": "chatboxes-filled",
  32022. "font_class": "chatboxes-filled",
  32023. "unicode": "e692",
  32024. "unicode_decimal": 59026 },
  32025. {
  32026. "icon_id": "24899559",
  32027. "name": "contact",
  32028. "font_class": "contact",
  32029. "unicode": "e693",
  32030. "unicode_decimal": 59027 },
  32031. {
  32032. "icon_id": "24899560",
  32033. "name": "chatbubble-filled",
  32034. "font_class": "chatbubble-filled",
  32035. "unicode": "e694",
  32036. "unicode_decimal": 59028 },
  32037. {
  32038. "icon_id": "24899561",
  32039. "name": "contact-filled",
  32040. "font_class": "contact-filled",
  32041. "unicode": "e695",
  32042. "unicode_decimal": 59029 },
  32043. {
  32044. "icon_id": "24899562",
  32045. "name": "chatboxes",
  32046. "font_class": "chatboxes",
  32047. "unicode": "e696",
  32048. "unicode_decimal": 59030 },
  32049. {
  32050. "icon_id": "24899563",
  32051. "name": "chatbubble",
  32052. "font_class": "chatbubble",
  32053. "unicode": "e697",
  32054. "unicode_decimal": 59031 },
  32055. {
  32056. "icon_id": "24881290",
  32057. "name": "upload-filled",
  32058. "font_class": "upload-filled",
  32059. "unicode": "e68e",
  32060. "unicode_decimal": 59022 },
  32061. {
  32062. "icon_id": "24881292",
  32063. "name": "upload",
  32064. "font_class": "upload",
  32065. "unicode": "e690",
  32066. "unicode_decimal": 59024 },
  32067. {
  32068. "icon_id": "24881293",
  32069. "name": "weixin",
  32070. "font_class": "weixin",
  32071. "unicode": "e691",
  32072. "unicode_decimal": 59025 },
  32073. {
  32074. "icon_id": "24881274",
  32075. "name": "compose",
  32076. "font_class": "compose",
  32077. "unicode": "e67f",
  32078. "unicode_decimal": 59007 },
  32079. {
  32080. "icon_id": "24881275",
  32081. "name": "qq",
  32082. "font_class": "qq",
  32083. "unicode": "e680",
  32084. "unicode_decimal": 59008 },
  32085. {
  32086. "icon_id": "24881276",
  32087. "name": "download-filled",
  32088. "font_class": "download-filled",
  32089. "unicode": "e681",
  32090. "unicode_decimal": 59009 },
  32091. {
  32092. "icon_id": "24881277",
  32093. "name": "pengyouquan",
  32094. "font_class": "pyq",
  32095. "unicode": "e682",
  32096. "unicode_decimal": 59010 },
  32097. {
  32098. "icon_id": "24881279",
  32099. "name": "sound",
  32100. "font_class": "sound",
  32101. "unicode": "e684",
  32102. "unicode_decimal": 59012 },
  32103. {
  32104. "icon_id": "24881280",
  32105. "name": "trash-filled",
  32106. "font_class": "trash-filled",
  32107. "unicode": "e685",
  32108. "unicode_decimal": 59013 },
  32109. {
  32110. "icon_id": "24881281",
  32111. "name": "sound-filled",
  32112. "font_class": "sound-filled",
  32113. "unicode": "e686",
  32114. "unicode_decimal": 59014 },
  32115. {
  32116. "icon_id": "24881282",
  32117. "name": "trash",
  32118. "font_class": "trash",
  32119. "unicode": "e687",
  32120. "unicode_decimal": 59015 },
  32121. {
  32122. "icon_id": "24881284",
  32123. "name": "videocam-filled",
  32124. "font_class": "videocam-filled",
  32125. "unicode": "e689",
  32126. "unicode_decimal": 59017 },
  32127. {
  32128. "icon_id": "24881285",
  32129. "name": "spinner-cycle",
  32130. "font_class": "spinner-cycle",
  32131. "unicode": "e68a",
  32132. "unicode_decimal": 59018 },
  32133. {
  32134. "icon_id": "24881286",
  32135. "name": "weibo",
  32136. "font_class": "weibo",
  32137. "unicode": "e68b",
  32138. "unicode_decimal": 59019 },
  32139. {
  32140. "icon_id": "24881288",
  32141. "name": "videocam",
  32142. "font_class": "videocam",
  32143. "unicode": "e68c",
  32144. "unicode_decimal": 59020 },
  32145. {
  32146. "icon_id": "24881289",
  32147. "name": "download",
  32148. "font_class": "download",
  32149. "unicode": "e68d",
  32150. "unicode_decimal": 59021 },
  32151. {
  32152. "icon_id": "24879601",
  32153. "name": "help",
  32154. "font_class": "help",
  32155. "unicode": "e679",
  32156. "unicode_decimal": 59001 },
  32157. {
  32158. "icon_id": "24879602",
  32159. "name": "navigate-filled",
  32160. "font_class": "navigate-filled",
  32161. "unicode": "e67a",
  32162. "unicode_decimal": 59002 },
  32163. {
  32164. "icon_id": "24879603",
  32165. "name": "plusempty",
  32166. "font_class": "plusempty",
  32167. "unicode": "e67b",
  32168. "unicode_decimal": 59003 },
  32169. {
  32170. "icon_id": "24879604",
  32171. "name": "smallcircle",
  32172. "font_class": "smallcircle",
  32173. "unicode": "e67c",
  32174. "unicode_decimal": 59004 },
  32175. {
  32176. "icon_id": "24879605",
  32177. "name": "minus-filled",
  32178. "font_class": "minus-filled",
  32179. "unicode": "e67d",
  32180. "unicode_decimal": 59005 },
  32181. {
  32182. "icon_id": "24879606",
  32183. "name": "micoff",
  32184. "font_class": "micoff",
  32185. "unicode": "e67e",
  32186. "unicode_decimal": 59006 },
  32187. {
  32188. "icon_id": "24879588",
  32189. "name": "closeempty",
  32190. "font_class": "closeempty",
  32191. "unicode": "e66c",
  32192. "unicode_decimal": 58988 },
  32193. {
  32194. "icon_id": "24879589",
  32195. "name": "clear",
  32196. "font_class": "clear",
  32197. "unicode": "e66d",
  32198. "unicode_decimal": 58989 },
  32199. {
  32200. "icon_id": "24879590",
  32201. "name": "navigate",
  32202. "font_class": "navigate",
  32203. "unicode": "e66e",
  32204. "unicode_decimal": 58990 },
  32205. {
  32206. "icon_id": "24879591",
  32207. "name": "minus",
  32208. "font_class": "minus",
  32209. "unicode": "e66f",
  32210. "unicode_decimal": 58991 },
  32211. {
  32212. "icon_id": "24879592",
  32213. "name": "image",
  32214. "font_class": "image",
  32215. "unicode": "e670",
  32216. "unicode_decimal": 58992 },
  32217. {
  32218. "icon_id": "24879593",
  32219. "name": "mic",
  32220. "font_class": "mic",
  32221. "unicode": "e671",
  32222. "unicode_decimal": 58993 },
  32223. {
  32224. "icon_id": "24879594",
  32225. "name": "paperplane",
  32226. "font_class": "paperplane",
  32227. "unicode": "e672",
  32228. "unicode_decimal": 58994 },
  32229. {
  32230. "icon_id": "24879595",
  32231. "name": "close",
  32232. "font_class": "close",
  32233. "unicode": "e673",
  32234. "unicode_decimal": 58995 },
  32235. {
  32236. "icon_id": "24879596",
  32237. "name": "help-filled",
  32238. "font_class": "help-filled",
  32239. "unicode": "e674",
  32240. "unicode_decimal": 58996 },
  32241. {
  32242. "icon_id": "24879597",
  32243. "name": "plus-filled",
  32244. "font_class": "paperplane-filled",
  32245. "unicode": "e675",
  32246. "unicode_decimal": 58997 },
  32247. {
  32248. "icon_id": "24879598",
  32249. "name": "plus",
  32250. "font_class": "plus",
  32251. "unicode": "e676",
  32252. "unicode_decimal": 58998 },
  32253. {
  32254. "icon_id": "24879599",
  32255. "name": "mic-filled",
  32256. "font_class": "mic-filled",
  32257. "unicode": "e677",
  32258. "unicode_decimal": 58999 },
  32259. {
  32260. "icon_id": "24879600",
  32261. "name": "image-filled",
  32262. "font_class": "image-filled",
  32263. "unicode": "e678",
  32264. "unicode_decimal": 59000 },
  32265. {
  32266. "icon_id": "24855900",
  32267. "name": "locked-filled",
  32268. "font_class": "locked-filled",
  32269. "unicode": "e668",
  32270. "unicode_decimal": 58984 },
  32271. {
  32272. "icon_id": "24855901",
  32273. "name": "info",
  32274. "font_class": "info",
  32275. "unicode": "e669",
  32276. "unicode_decimal": 58985 },
  32277. {
  32278. "icon_id": "24855903",
  32279. "name": "locked",
  32280. "font_class": "locked",
  32281. "unicode": "e66b",
  32282. "unicode_decimal": 58987 },
  32283. {
  32284. "icon_id": "24855884",
  32285. "name": "camera-filled",
  32286. "font_class": "camera-filled",
  32287. "unicode": "e658",
  32288. "unicode_decimal": 58968 },
  32289. {
  32290. "icon_id": "24855885",
  32291. "name": "chat-filled",
  32292. "font_class": "chat-filled",
  32293. "unicode": "e659",
  32294. "unicode_decimal": 58969 },
  32295. {
  32296. "icon_id": "24855886",
  32297. "name": "camera",
  32298. "font_class": "camera",
  32299. "unicode": "e65a",
  32300. "unicode_decimal": 58970 },
  32301. {
  32302. "icon_id": "24855887",
  32303. "name": "circle",
  32304. "font_class": "circle",
  32305. "unicode": "e65b",
  32306. "unicode_decimal": 58971 },
  32307. {
  32308. "icon_id": "24855888",
  32309. "name": "checkmarkempty",
  32310. "font_class": "checkmarkempty",
  32311. "unicode": "e65c",
  32312. "unicode_decimal": 58972 },
  32313. {
  32314. "icon_id": "24855889",
  32315. "name": "chat",
  32316. "font_class": "chat",
  32317. "unicode": "e65d",
  32318. "unicode_decimal": 58973 },
  32319. {
  32320. "icon_id": "24855890",
  32321. "name": "circle-filled",
  32322. "font_class": "circle-filled",
  32323. "unicode": "e65e",
  32324. "unicode_decimal": 58974 },
  32325. {
  32326. "icon_id": "24855891",
  32327. "name": "flag",
  32328. "font_class": "flag",
  32329. "unicode": "e65f",
  32330. "unicode_decimal": 58975 },
  32331. {
  32332. "icon_id": "24855892",
  32333. "name": "flag-filled",
  32334. "font_class": "flag-filled",
  32335. "unicode": "e660",
  32336. "unicode_decimal": 58976 },
  32337. {
  32338. "icon_id": "24855893",
  32339. "name": "gear-filled",
  32340. "font_class": "gear-filled",
  32341. "unicode": "e661",
  32342. "unicode_decimal": 58977 },
  32343. {
  32344. "icon_id": "24855894",
  32345. "name": "home",
  32346. "font_class": "home",
  32347. "unicode": "e662",
  32348. "unicode_decimal": 58978 },
  32349. {
  32350. "icon_id": "24855895",
  32351. "name": "home-filled",
  32352. "font_class": "home-filled",
  32353. "unicode": "e663",
  32354. "unicode_decimal": 58979 },
  32355. {
  32356. "icon_id": "24855896",
  32357. "name": "gear",
  32358. "font_class": "gear",
  32359. "unicode": "e664",
  32360. "unicode_decimal": 58980 },
  32361. {
  32362. "icon_id": "24855897",
  32363. "name": "smallcircle-filled",
  32364. "font_class": "smallcircle-filled",
  32365. "unicode": "e665",
  32366. "unicode_decimal": 58981 },
  32367. {
  32368. "icon_id": "24855898",
  32369. "name": "map-filled",
  32370. "font_class": "map-filled",
  32371. "unicode": "e666",
  32372. "unicode_decimal": 58982 },
  32373. {
  32374. "icon_id": "24855899",
  32375. "name": "map",
  32376. "font_class": "map",
  32377. "unicode": "e667",
  32378. "unicode_decimal": 58983 },
  32379. {
  32380. "icon_id": "24855825",
  32381. "name": "refresh-filled",
  32382. "font_class": "refresh-filled",
  32383. "unicode": "e656",
  32384. "unicode_decimal": 58966 },
  32385. {
  32386. "icon_id": "24855826",
  32387. "name": "refresh",
  32388. "font_class": "refresh",
  32389. "unicode": "e657",
  32390. "unicode_decimal": 58967 },
  32391. {
  32392. "icon_id": "24855808",
  32393. "name": "cloud-upload",
  32394. "font_class": "cloud-upload",
  32395. "unicode": "e645",
  32396. "unicode_decimal": 58949 },
  32397. {
  32398. "icon_id": "24855809",
  32399. "name": "cloud-download-filled",
  32400. "font_class": "cloud-download-filled",
  32401. "unicode": "e646",
  32402. "unicode_decimal": 58950 },
  32403. {
  32404. "icon_id": "24855810",
  32405. "name": "cloud-download",
  32406. "font_class": "cloud-download",
  32407. "unicode": "e647",
  32408. "unicode_decimal": 58951 },
  32409. {
  32410. "icon_id": "24855811",
  32411. "name": "cloud-upload-filled",
  32412. "font_class": "cloud-upload-filled",
  32413. "unicode": "e648",
  32414. "unicode_decimal": 58952 },
  32415. {
  32416. "icon_id": "24855813",
  32417. "name": "redo",
  32418. "font_class": "redo",
  32419. "unicode": "e64a",
  32420. "unicode_decimal": 58954 },
  32421. {
  32422. "icon_id": "24855814",
  32423. "name": "images-filled",
  32424. "font_class": "images-filled",
  32425. "unicode": "e64b",
  32426. "unicode_decimal": 58955 },
  32427. {
  32428. "icon_id": "24855815",
  32429. "name": "undo-filled",
  32430. "font_class": "undo-filled",
  32431. "unicode": "e64c",
  32432. "unicode_decimal": 58956 },
  32433. {
  32434. "icon_id": "24855816",
  32435. "name": "more",
  32436. "font_class": "more",
  32437. "unicode": "e64d",
  32438. "unicode_decimal": 58957 },
  32439. {
  32440. "icon_id": "24855817",
  32441. "name": "more-filled",
  32442. "font_class": "more-filled",
  32443. "unicode": "e64e",
  32444. "unicode_decimal": 58958 },
  32445. {
  32446. "icon_id": "24855818",
  32447. "name": "undo",
  32448. "font_class": "undo",
  32449. "unicode": "e64f",
  32450. "unicode_decimal": 58959 },
  32451. {
  32452. "icon_id": "24855819",
  32453. "name": "images",
  32454. "font_class": "images",
  32455. "unicode": "e650",
  32456. "unicode_decimal": 58960 },
  32457. {
  32458. "icon_id": "24855821",
  32459. "name": "paperclip",
  32460. "font_class": "paperclip",
  32461. "unicode": "e652",
  32462. "unicode_decimal": 58962 },
  32463. {
  32464. "icon_id": "24855822",
  32465. "name": "settings",
  32466. "font_class": "settings",
  32467. "unicode": "e653",
  32468. "unicode_decimal": 58963 },
  32469. {
  32470. "icon_id": "24855823",
  32471. "name": "search",
  32472. "font_class": "search",
  32473. "unicode": "e654",
  32474. "unicode_decimal": 58964 },
  32475. {
  32476. "icon_id": "24855824",
  32477. "name": "redo-filled",
  32478. "font_class": "redo-filled",
  32479. "unicode": "e655",
  32480. "unicode_decimal": 58965 },
  32481. {
  32482. "icon_id": "24841702",
  32483. "name": "list",
  32484. "font_class": "list",
  32485. "unicode": "e644",
  32486. "unicode_decimal": 58948 },
  32487. {
  32488. "icon_id": "24841489",
  32489. "name": "mail-open-filled",
  32490. "font_class": "mail-open-filled",
  32491. "unicode": "e63a",
  32492. "unicode_decimal": 58938 },
  32493. {
  32494. "icon_id": "24841491",
  32495. "name": "hand-thumbsdown-filled",
  32496. "font_class": "hand-down-filled",
  32497. "unicode": "e63c",
  32498. "unicode_decimal": 58940 },
  32499. {
  32500. "icon_id": "24841492",
  32501. "name": "hand-thumbsdown",
  32502. "font_class": "hand-down",
  32503. "unicode": "e63d",
  32504. "unicode_decimal": 58941 },
  32505. {
  32506. "icon_id": "24841493",
  32507. "name": "hand-thumbsup-filled",
  32508. "font_class": "hand-up-filled",
  32509. "unicode": "e63e",
  32510. "unicode_decimal": 58942 },
  32511. {
  32512. "icon_id": "24841494",
  32513. "name": "hand-thumbsup",
  32514. "font_class": "hand-up",
  32515. "unicode": "e63f",
  32516. "unicode_decimal": 58943 },
  32517. {
  32518. "icon_id": "24841496",
  32519. "name": "heart-filled",
  32520. "font_class": "heart-filled",
  32521. "unicode": "e641",
  32522. "unicode_decimal": 58945 },
  32523. {
  32524. "icon_id": "24841498",
  32525. "name": "mail-open",
  32526. "font_class": "mail-open",
  32527. "unicode": "e643",
  32528. "unicode_decimal": 58947 },
  32529. {
  32530. "icon_id": "24841488",
  32531. "name": "heart",
  32532. "font_class": "heart",
  32533. "unicode": "e639",
  32534. "unicode_decimal": 58937 },
  32535. {
  32536. "icon_id": "24839963",
  32537. "name": "loop",
  32538. "font_class": "loop",
  32539. "unicode": "e633",
  32540. "unicode_decimal": 58931 },
  32541. {
  32542. "icon_id": "24839866",
  32543. "name": "pulldown",
  32544. "font_class": "pulldown",
  32545. "unicode": "e632",
  32546. "unicode_decimal": 58930 },
  32547. {
  32548. "icon_id": "24813798",
  32549. "name": "scan",
  32550. "font_class": "scan",
  32551. "unicode": "e62a",
  32552. "unicode_decimal": 58922 },
  32553. {
  32554. "icon_id": "24813786",
  32555. "name": "bars",
  32556. "font_class": "bars",
  32557. "unicode": "e627",
  32558. "unicode_decimal": 58919 },
  32559. {
  32560. "icon_id": "24813788",
  32561. "name": "cart-filled",
  32562. "font_class": "cart-filled",
  32563. "unicode": "e629",
  32564. "unicode_decimal": 58921 },
  32565. {
  32566. "icon_id": "24813790",
  32567. "name": "checkbox",
  32568. "font_class": "checkbox",
  32569. "unicode": "e62b",
  32570. "unicode_decimal": 58923 },
  32571. {
  32572. "icon_id": "24813791",
  32573. "name": "checkbox-filled",
  32574. "font_class": "checkbox-filled",
  32575. "unicode": "e62c",
  32576. "unicode_decimal": 58924 },
  32577. {
  32578. "icon_id": "24813794",
  32579. "name": "shop",
  32580. "font_class": "shop",
  32581. "unicode": "e62f",
  32582. "unicode_decimal": 58927 },
  32583. {
  32584. "icon_id": "24813795",
  32585. "name": "headphones",
  32586. "font_class": "headphones",
  32587. "unicode": "e630",
  32588. "unicode_decimal": 58928 },
  32589. {
  32590. "icon_id": "24813796",
  32591. "name": "cart",
  32592. "font_class": "cart",
  32593. "unicode": "e631",
  32594. "unicode_decimal": 58929 }] };exports.default = _default;
  32595. /***/ }),
  32596. /* 211 */,
  32597. /* 212 */,
  32598. /* 213 */,
  32599. /* 214 */,
  32600. /* 215 */,
  32601. /* 216 */,
  32602. /* 217 */,
  32603. /* 218 */,
  32604. /* 219 */,
  32605. /* 220 */,
  32606. /* 221 */,
  32607. /* 222 */,
  32608. /* 223 */,
  32609. /* 224 */,
  32610. /* 225 */,
  32611. /* 226 */,
  32612. /* 227 */,
  32613. /* 228 */,
  32614. /* 229 */,
  32615. /* 230 */,
  32616. /* 231 */,
  32617. /* 232 */
  32618. /*!************************************************************************************!*\
  32619. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-popup/components/uni-popup/popup.js ***!
  32620. \************************************************************************************/
  32621. /*! no static exports found */
  32622. /***/ (function(module, exports, __webpack_require__) {
  32623. "use strict";
  32624. Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default =
  32625. {
  32626. data: function data() {
  32627. return {};
  32628. },
  32629. created: function created() {
  32630. this.popup = this.getParent();
  32631. },
  32632. methods: {
  32633. /**
  32634. * 获取父元素实例
  32635. */
  32636. getParent: function getParent() {var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'uniPopup';
  32637. var parent = this.$parent;
  32638. var parentName = parent.$options.name;
  32639. while (parentName !== name) {
  32640. parent = parent.$parent;
  32641. if (!parent) return false;
  32642. parentName = parent.$options.name;
  32643. }
  32644. return parent;
  32645. } } };exports.default = _default;
  32646. /***/ }),
  32647. /* 233 */
  32648. /*!*****************************************************************************************!*\
  32649. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-popup/components/uni-popup/i18n/index.js ***!
  32650. \*****************************************************************************************/
  32651. /*! no static exports found */
  32652. /***/ (function(module, exports, __webpack_require__) {
  32653. "use strict";
  32654. Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _en = _interopRequireDefault(__webpack_require__(/*! ./en.json */ 234));
  32655. var _zhHans = _interopRequireDefault(__webpack_require__(/*! ./zh-Hans.json */ 235));
  32656. var _zhHant = _interopRequireDefault(__webpack_require__(/*! ./zh-Hant.json */ 236));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}var _default =
  32657. {
  32658. en: _en.default,
  32659. 'zh-Hans': _zhHans.default,
  32660. 'zh-Hant': _zhHant.default };exports.default = _default;
  32661. /***/ }),
  32662. /* 234 */
  32663. /*!****************************************************************************************!*\
  32664. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-popup/components/uni-popup/i18n/en.json ***!
  32665. \****************************************************************************************/
  32666. /*! exports provided: uni-popup.cancel, uni-popup.ok, uni-popup.placeholder, uni-popup.title, uni-popup.shareTitle, default */
  32667. /***/ (function(module) {
  32668. module.exports = JSON.parse("{\"uni-popup.cancel\":\"cancel\",\"uni-popup.ok\":\"ok\",\"uni-popup.placeholder\":\"pleace enter\",\"uni-popup.title\":\"Hint\",\"uni-popup.shareTitle\":\"Share to\"}");
  32669. /***/ }),
  32670. /* 235 */
  32671. /*!*********************************************************************************************!*\
  32672. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-popup/components/uni-popup/i18n/zh-Hans.json ***!
  32673. \*********************************************************************************************/
  32674. /*! exports provided: uni-popup.cancel, uni-popup.ok, uni-popup.placeholder, uni-popup.title, uni-popup.shareTitle, default */
  32675. /***/ (function(module) {
  32676. module.exports = JSON.parse("{\"uni-popup.cancel\":\"取消\",\"uni-popup.ok\":\"确定\",\"uni-popup.placeholder\":\"请输入\",\"uni-popup.title\":\"提示\",\"uni-popup.shareTitle\":\"分享到\"}");
  32677. /***/ }),
  32678. /* 236 */
  32679. /*!*********************************************************************************************!*\
  32680. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-popup/components/uni-popup/i18n/zh-Hant.json ***!
  32681. \*********************************************************************************************/
  32682. /*! exports provided: uni-popup.cancel, uni-popup.ok, uni-popup.placeholder, uni-popup.title, uni-popup.shareTitle, default */
  32683. /***/ (function(module) {
  32684. module.exports = JSON.parse("{\"uni-popup.cancel\":\"取消\",\"uni-popup.ok\":\"確定\",\"uni-popup.placeholder\":\"請輸入\",\"uni-popup.title\":\"提示\",\"uni-popup.shareTitle\":\"分享到\"}");
  32685. /***/ }),
  32686. /* 237 */,
  32687. /* 238 */,
  32688. /* 239 */,
  32689. /* 240 */,
  32690. /* 241 */,
  32691. /* 242 */,
  32692. /* 243 */,
  32693. /* 244 */
  32694. /*!********************************************************************************************************!*\
  32695. !*** D:/wxproject/项目模板/uniapp/uni_modules/uni-transition/components/uni-transition/createAnimation.js ***!
  32696. \********************************************************************************************************/
  32697. /*! no static exports found */
  32698. /***/ (function(module, exports, __webpack_require__) {
  32699. "use strict";
  32700. /* WEBPACK VAR INJECTION */(function(uni) {Object.defineProperty(exports, "__esModule", { value: true });exports.createAnimation = createAnimation;function ownKeys(object, enumerableOnly) {var keys = Object.keys(object);if (Object.getOwnPropertySymbols) {var symbols = Object.getOwnPropertySymbols(object);if (enumerableOnly) symbols = symbols.filter(function (sym) {return Object.getOwnPropertyDescriptor(object, sym).enumerable;});keys.push.apply(keys, symbols);}return keys;}function _objectSpread(target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i] != null ? arguments[i] : {};if (i % 2) {ownKeys(Object(source), true).forEach(function (key) {_defineProperty(target, key, source[key]);});} else if (Object.getOwnPropertyDescriptors) {Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));} else {ownKeys(Object(source)).forEach(function (key) {Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));});}}return target;}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}function _createClass(Constructor, protoProps, staticProps) {if (protoProps) _defineProperties(Constructor.prototype, protoProps);if (staticProps) _defineProperties(Constructor, staticProps);return Constructor;} // const defaultOption = {
  32701. // duration: 300,
  32702. // timingFunction: 'linear',
  32703. // delay: 0,
  32704. // transformOrigin: '50% 50% 0'
  32705. // }
  32706. var
  32707. MPAnimation = /*#__PURE__*/function () {
  32708. function MPAnimation(options, _this) {_classCallCheck(this, MPAnimation);
  32709. this.options = options;
  32710. this.animation = uni.createAnimation(options);
  32711. this.currentStepAnimates = {};
  32712. this.next = 0;
  32713. this.$ = _this;
  32714. }_createClass(MPAnimation, [{ key: "_nvuePushAnimates", value: function _nvuePushAnimates(
  32715. type, args) {
  32716. var aniObj = this.currentStepAnimates[this.next];
  32717. var styles = {};
  32718. if (!aniObj) {
  32719. styles = {
  32720. styles: {},
  32721. config: {} };
  32722. } else {
  32723. styles = aniObj;
  32724. }
  32725. if (animateTypes1.includes(type)) {
  32726. if (!styles.styles.transform) {
  32727. styles.styles.transform = '';
  32728. }
  32729. var unit = '';
  32730. if (type === 'rotate') {
  32731. unit = 'deg';
  32732. }
  32733. styles.styles.transform += "".concat(type, "(").concat(args + unit, ") ");
  32734. } else {
  32735. styles.styles[type] = "".concat(args);
  32736. }
  32737. this.currentStepAnimates[this.next] = styles;
  32738. } }, { key: "_animateRun", value: function _animateRun()
  32739. {var styles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  32740. var ref = this.$.$refs['ani'].ref;
  32741. if (!ref) return;
  32742. return new Promise(function (resolve, reject) {
  32743. nvueAnimation.transition(ref, _objectSpread({
  32744. styles: styles },
  32745. config),
  32746. function (res) {
  32747. resolve();
  32748. });
  32749. });
  32750. } }, { key: "_nvueNextAnimate", value: function _nvueNextAnimate(
  32751. animates) {var _this2 = this;var step = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;var fn = arguments.length > 2 ? arguments[2] : undefined;
  32752. var obj = animates[step];
  32753. if (obj) {var
  32754. styles =
  32755. obj.styles,config = obj.config;
  32756. this._animateRun(styles, config).then(function () {
  32757. step += 1;
  32758. _this2._nvueNextAnimate(animates, step, fn);
  32759. });
  32760. } else {
  32761. this.currentStepAnimates = {};
  32762. typeof fn === 'function' && fn();
  32763. this.isEnd = true;
  32764. }
  32765. } }, { key: "step", value: function step()
  32766. {var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  32767. this.animation.step(config);
  32768. return this;
  32769. } }, { key: "run", value: function run(
  32770. fn) {
  32771. this.$.animationData = this.animation.export();
  32772. this.$.timer = setTimeout(function () {
  32773. typeof fn === 'function' && fn();
  32774. }, this.$.durationTime);
  32775. } }]);return MPAnimation;}();
  32776. var animateTypes1 = ['matrix', 'matrix3d', 'rotate', 'rotate3d', 'rotateX', 'rotateY', 'rotateZ', 'scale', 'scale3d',
  32777. 'scaleX', 'scaleY', 'scaleZ', 'skew', 'skewX', 'skewY', 'translate', 'translate3d', 'translateX', 'translateY',
  32778. 'translateZ'];
  32779. var animateTypes2 = ['opacity', 'backgroundColor'];
  32780. var animateTypes3 = ['width', 'height', 'left', 'right', 'top', 'bottom'];
  32781. animateTypes1.concat(animateTypes2, animateTypes3).forEach(function (type) {
  32782. MPAnimation.prototype[type] = function () {var _this$animation;
  32783. (_this$animation = this.animation)[type].apply(_this$animation, arguments);
  32784. return this;
  32785. };
  32786. });
  32787. function createAnimation(option, _this) {
  32788. if (!_this) return;
  32789. clearTimeout(_this.timer);
  32790. return new MPAnimation(option, _this);
  32791. }
  32792. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
  32793. /***/ })
  32794. ]]);
  32795. //# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map