123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136201372013820139201402014120142201432014420145201462014720148201492015020151201522015320154201552015620157201582015920160201612016220163201642016520166201672016820169201702017120172201732017420175201762017720178201792018020181201822018320184201852018620187201882018920190201912019220193201942019520196201972019820199202002020120202202032020420205202062020720208202092021020211202122021320214202152021620217202182021920220202212022220223202242022520226202272022820229202302023120232202332023420235202362023720238202392024020241202422024320244202452024620247202482024920250202512025220253202542025520256202572025820259202602026120262202632026420265202662026720268202692027020271202722027320274202752027620277202782027920280202812028220283202842028520286202872028820289202902029120292202932029420295202962029720298202992030020301203022030320304203052030620307203082030920310203112031220313203142031520316203172031820319203202032120322203232032420325203262032720328203292033020331203322033320334203352033620337203382033920340203412034220343203442034520346203472034820349203502035120352203532035420355203562035720358203592036020361203622036320364203652036620367203682036920370203712037220373203742037520376203772037820379203802038120382203832038420385203862038720388203892039020391203922039320394203952039620397203982039920400204012040220403204042040520406204072040820409204102041120412204132041420415204162041720418204192042020421204222042320424204252042620427204282042920430204312043220433204342043520436204372043820439204402044120442204432044420445204462044720448204492045020451204522045320454204552045620457204582045920460204612046220463204642046520466204672046820469204702047120472204732047420475204762047720478204792048020481204822048320484204852048620487204882048920490204912049220493204942049520496204972049820499205002050120502205032050420505205062050720508205092051020511205122051320514205152051620517205182051920520205212052220523205242052520526205272052820529205302053120532205332053420535205362053720538205392054020541205422054320544205452054620547205482054920550205512055220553205542055520556205572055820559205602056120562205632056420565205662056720568205692057020571205722057320574205752057620577205782057920580205812058220583205842058520586205872058820589205902059120592205932059420595205962059720598205992060020601206022060320604206052060620607206082060920610206112061220613206142061520616206172061820619206202062120622206232062420625206262062720628206292063020631206322063320634206352063620637206382063920640206412064220643206442064520646206472064820649206502065120652206532065420655206562065720658206592066020661206622066320664206652066620667206682066920670206712067220673206742067520676206772067820679206802068120682206832068420685206862068720688206892069020691206922069320694206952069620697206982069920700207012070220703207042070520706207072070820709207102071120712207132071420715207162071720718207192072020721207222072320724207252072620727207282072920730207312073220733207342073520736207372073820739207402074120742207432074420745207462074720748207492075020751207522075320754207552075620757207582075920760207612076220763207642076520766207672076820769207702077120772207732077420775207762077720778207792078020781207822078320784207852078620787207882078920790207912079220793207942079520796207972079820799208002080120802208032080420805208062080720808208092081020811208122081320814208152081620817208182081920820208212082220823208242082520826208272082820829208302083120832208332083420835208362083720838208392084020841208422084320844208452084620847208482084920850208512085220853208542085520856208572085820859208602086120862208632086420865208662086720868208692087020871208722087320874208752087620877208782087920880208812088220883208842088520886208872088820889208902089120892208932089420895208962089720898208992090020901209022090320904209052090620907209082090920910209112091220913209142091520916209172091820919209202092120922209232092420925209262092720928209292093020931209322093320934209352093620937209382093920940209412094220943209442094520946209472094820949209502095120952209532095420955209562095720958209592096020961209622096320964209652096620967209682096920970209712097220973209742097520976209772097820979209802098120982209832098420985209862098720988209892099020991209922099320994209952099620997209982099921000210012100221003210042100521006210072100821009210102101121012210132101421015210162101721018210192102021021210222102321024210252102621027210282102921030210312103221033210342103521036210372103821039210402104121042210432104421045210462104721048210492105021051210522105321054210552105621057210582105921060210612106221063210642106521066210672106821069210702107121072210732107421075210762107721078210792108021081210822108321084210852108621087210882108921090210912109221093210942109521096210972109821099211002110121102211032110421105211062110721108211092111021111211122111321114211152111621117211182111921120211212112221123211242112521126211272112821129211302113121132211332113421135211362113721138211392114021141211422114321144211452114621147211482114921150211512115221153211542115521156211572115821159211602116121162211632116421165211662116721168211692117021171211722117321174211752117621177211782117921180211812118221183211842118521186211872118821189211902119121192211932119421195211962119721198211992120021201212022120321204212052120621207212082120921210212112121221213212142121521216212172121821219212202122121222212232122421225212262122721228212292123021231212322123321234212352123621237212382123921240212412124221243212442124521246212472124821249212502125121252212532125421255212562125721258212592126021261212622126321264212652126621267212682126921270212712127221273212742127521276212772127821279212802128121282212832128421285212862128721288212892129021291212922129321294212952129621297212982129921300213012130221303213042130521306213072130821309213102131121312213132131421315213162131721318213192132021321213222132321324213252132621327213282132921330213312133221333213342133521336213372133821339213402134121342213432134421345213462134721348213492135021351213522135321354213552135621357213582135921360213612136221363213642136521366213672136821369213702137121372213732137421375213762137721378213792138021381213822138321384213852138621387213882138921390213912139221393213942139521396213972139821399214002140121402214032140421405214062140721408214092141021411214122141321414214152141621417214182141921420214212142221423214242142521426214272142821429214302143121432214332143421435214362143721438214392144021441214422144321444214452144621447214482144921450214512145221453214542145521456214572145821459214602146121462214632146421465214662146721468214692147021471214722147321474214752147621477214782147921480214812148221483214842148521486214872148821489214902149121492214932149421495214962149721498214992150021501215022150321504215052150621507215082150921510215112151221513215142151521516215172151821519215202152121522215232152421525215262152721528215292153021531215322153321534215352153621537215382153921540215412154221543215442154521546215472154821549215502155121552215532155421555215562155721558215592156021561215622156321564215652156621567215682156921570215712157221573215742157521576215772157821579215802158121582215832158421585215862158721588215892159021591215922159321594215952159621597215982159921600216012160221603216042160521606216072160821609216102161121612216132161421615216162161721618216192162021621216222162321624216252162621627216282162921630216312163221633216342163521636216372163821639216402164121642216432164421645216462164721648216492165021651216522165321654216552165621657216582165921660216612166221663216642166521666216672166821669216702167121672216732167421675216762167721678216792168021681216822168321684216852168621687216882168921690216912169221693216942169521696216972169821699217002170121702217032170421705217062170721708217092171021711217122171321714217152171621717217182171921720217212172221723217242172521726217272172821729217302173121732217332173421735217362173721738217392174021741217422174321744217452174621747217482174921750217512175221753217542175521756217572175821759217602176121762217632176421765217662176721768217692177021771217722177321774217752177621777217782177921780217812178221783217842178521786217872178821789217902179121792217932179421795217962179721798217992180021801218022180321804218052180621807218082180921810218112181221813218142181521816218172181821819218202182121822218232182421825218262182721828218292183021831218322183321834218352183621837218382183921840218412184221843218442184521846218472184821849218502185121852218532185421855218562185721858218592186021861218622186321864218652186621867218682186921870218712187221873218742187521876218772187821879218802188121882218832188421885218862188721888218892189021891218922189321894218952189621897218982189921900219012190221903219042190521906219072190821909219102191121912219132191421915219162191721918219192192021921219222192321924219252192621927219282192921930219312193221933219342193521936219372193821939219402194121942219432194421945219462194721948219492195021951219522195321954219552195621957219582195921960219612196221963219642196521966219672196821969219702197121972219732197421975219762197721978219792198021981219822198321984219852198621987219882198921990219912199221993219942199521996219972199821999220002200122002220032200422005220062200722008220092201022011220122201322014220152201622017220182201922020220212202222023220242202522026220272202822029220302203122032220332203422035220362203722038220392204022041220422204322044220452204622047220482204922050220512205222053220542205522056220572205822059220602206122062220632206422065220662206722068220692207022071220722207322074220752207622077220782207922080220812208222083220842208522086220872208822089220902209122092220932209422095220962209722098220992210022101221022210322104221052210622107221082210922110221112211222113221142211522116221172211822119221202212122122221232212422125221262212722128221292213022131221322213322134221352213622137221382213922140221412214222143221442214522146221472214822149221502215122152221532215422155221562215722158221592216022161221622216322164221652216622167221682216922170221712217222173221742217522176221772217822179221802218122182221832218422185221862218722188221892219022191221922219322194221952219622197221982219922200222012220222203222042220522206222072220822209222102221122212222132221422215222162221722218222192222022221222222222322224222252222622227222282222922230222312223222233222342223522236222372223822239222402224122242222432224422245222462224722248222492225022251222522225322254222552225622257222582225922260222612226222263222642226522266222672226822269222702227122272222732227422275222762227722278222792228022281222822228322284222852228622287222882228922290222912229222293222942229522296222972229822299223002230122302223032230422305223062230722308223092231022311223122231322314223152231622317223182231922320223212232222323223242232522326223272232822329223302233122332223332233422335223362233722338223392234022341223422234322344223452234622347223482234922350223512235222353223542235522356223572235822359223602236122362223632236422365223662236722368223692237022371223722237322374223752237622377223782237922380223812238222383223842238522386223872238822389223902239122392223932239422395223962239722398223992240022401224022240322404224052240622407224082240922410224112241222413224142241522416224172241822419224202242122422224232242422425224262242722428224292243022431224322243322434224352243622437224382243922440224412244222443224442244522446224472244822449224502245122452224532245422455224562245722458224592246022461224622246322464224652246622467224682246922470224712247222473224742247522476224772247822479224802248122482224832248422485224862248722488224892249022491224922249322494224952249622497224982249922500225012250222503225042250522506225072250822509225102251122512225132251422515225162251722518225192252022521225222252322524225252252622527225282252922530225312253222533225342253522536225372253822539225402254122542225432254422545225462254722548225492255022551225522255322554225552255622557225582255922560225612256222563225642256522566225672256822569225702257122572225732257422575225762257722578225792258022581225822258322584225852258622587225882258922590225912259222593225942259522596225972259822599226002260122602226032260422605226062260722608226092261022611226122261322614226152261622617226182261922620226212262222623226242262522626226272262822629226302263122632226332263422635226362263722638226392264022641226422264322644226452264622647226482264922650226512265222653226542265522656226572265822659226602266122662226632266422665226662266722668226692267022671226722267322674226752267622677226782267922680226812268222683226842268522686226872268822689226902269122692226932269422695226962269722698226992270022701227022270322704227052270622707227082270922710227112271222713227142271522716227172271822719227202272122722227232272422725227262272722728227292273022731227322273322734227352273622737227382273922740227412274222743227442274522746227472274822749227502275122752227532275422755227562275722758227592276022761227622276322764227652276622767227682276922770227712277222773227742277522776227772277822779227802278122782227832278422785227862278722788227892279022791227922279322794227952279622797227982279922800228012280222803228042280522806228072280822809228102281122812228132281422815228162281722818228192282022821228222282322824228252282622827228282282922830228312283222833228342283522836228372283822839228402284122842228432284422845228462284722848228492285022851228522285322854228552285622857228582285922860228612286222863228642286522866228672286822869228702287122872228732287422875228762287722878228792288022881228822288322884228852288622887228882288922890228912289222893228942289522896228972289822899229002290122902229032290422905229062290722908229092291022911229122291322914229152291622917229182291922920229212292222923229242292522926229272292822929229302293122932229332293422935229362293722938229392294022941229422294322944229452294622947229482294922950229512295222953229542295522956229572295822959229602296122962229632296422965229662296722968229692297022971229722297322974229752297622977229782297922980229812298222983229842298522986229872298822989229902299122992229932299422995229962299722998229992300023001230022300323004230052300623007230082300923010230112301223013230142301523016230172301823019230202302123022230232302423025230262302723028230292303023031230322303323034230352303623037230382303923040230412304223043230442304523046230472304823049230502305123052230532305423055230562305723058230592306023061230622306323064230652306623067230682306923070230712307223073230742307523076230772307823079230802308123082230832308423085230862308723088230892309023091230922309323094230952309623097230982309923100231012310223103231042310523106231072310823109231102311123112231132311423115231162311723118231192312023121231222312323124231252312623127231282312923130231312313223133231342313523136231372313823139231402314123142231432314423145231462314723148231492315023151231522315323154231552315623157231582315923160231612316223163231642316523166231672316823169231702317123172231732317423175231762317723178231792318023181231822318323184231852318623187231882318923190231912319223193231942319523196231972319823199232002320123202232032320423205232062320723208232092321023211232122321323214232152321623217232182321923220232212322223223232242322523226232272322823229232302323123232232332323423235232362323723238232392324023241232422324323244232452324623247232482324923250232512325223253232542325523256232572325823259232602326123262232632326423265232662326723268232692327023271232722327323274232752327623277232782327923280232812328223283232842328523286232872328823289232902329123292232932329423295232962329723298232992330023301233022330323304233052330623307233082330923310233112331223313233142331523316233172331823319233202332123322233232332423325233262332723328233292333023331233322333323334233352333623337233382333923340233412334223343233442334523346233472334823349233502335123352233532335423355233562335723358233592336023361233622336323364233652336623367233682336923370233712337223373233742337523376233772337823379233802338123382233832338423385233862338723388233892339023391233922339323394233952339623397233982339923400234012340223403234042340523406234072340823409234102341123412234132341423415234162341723418234192342023421234222342323424234252342623427234282342923430234312343223433234342343523436234372343823439234402344123442234432344423445234462344723448234492345023451234522345323454234552345623457234582345923460234612346223463234642346523466234672346823469234702347123472234732347423475234762347723478234792348023481234822348323484234852348623487234882348923490234912349223493234942349523496234972349823499235002350123502235032350423505235062350723508235092351023511235122351323514235152351623517235182351923520235212352223523235242352523526235272352823529235302353123532235332353423535235362353723538235392354023541235422354323544235452354623547235482354923550235512355223553235542355523556235572355823559235602356123562235632356423565235662356723568235692357023571235722357323574235752357623577235782357923580235812358223583235842358523586235872358823589235902359123592235932359423595235962359723598235992360023601236022360323604236052360623607236082360923610236112361223613236142361523616236172361823619236202362123622236232362423625236262362723628236292363023631236322363323634236352363623637236382363923640236412364223643236442364523646236472364823649236502365123652236532365423655236562365723658236592366023661236622366323664236652366623667236682366923670236712367223673236742367523676236772367823679236802368123682236832368423685236862368723688236892369023691236922369323694236952369623697236982369923700237012370223703237042370523706237072370823709237102371123712237132371423715237162371723718237192372023721237222372323724237252372623727237282372923730237312373223733237342373523736237372373823739237402374123742237432374423745237462374723748237492375023751237522375323754237552375623757237582375923760237612376223763237642376523766237672376823769237702377123772237732377423775237762377723778237792378023781237822378323784237852378623787237882378923790237912379223793237942379523796237972379823799238002380123802238032380423805238062380723808238092381023811238122381323814238152381623817238182381923820238212382223823238242382523826238272382823829238302383123832238332383423835238362383723838238392384023841238422384323844238452384623847238482384923850238512385223853238542385523856238572385823859238602386123862238632386423865238662386723868238692387023871238722387323874238752387623877238782387923880238812388223883238842388523886238872388823889238902389123892238932389423895238962389723898238992390023901239022390323904239052390623907239082390923910239112391223913239142391523916239172391823919239202392123922239232392423925239262392723928239292393023931239322393323934239352393623937239382393923940239412394223943239442394523946239472394823949239502395123952239532395423955239562395723958239592396023961239622396323964239652396623967239682396923970239712397223973239742397523976239772397823979239802398123982239832398423985239862398723988239892399023991239922399323994239952399623997239982399924000240012400224003240042400524006240072400824009240102401124012240132401424015240162401724018240192402024021240222402324024240252402624027240282402924030240312403224033240342403524036240372403824039240402404124042240432404424045240462404724048240492405024051240522405324054240552405624057240582405924060240612406224063240642406524066240672406824069240702407124072240732407424075240762407724078240792408024081240822408324084240852408624087240882408924090240912409224093240942409524096240972409824099241002410124102241032410424105241062410724108241092411024111241122411324114241152411624117241182411924120241212412224123241242412524126241272412824129241302413124132241332413424135241362413724138241392414024141241422414324144241452414624147241482414924150241512415224153241542415524156241572415824159241602416124162241632416424165241662416724168241692417024171241722417324174241752417624177241782417924180241812418224183241842418524186241872418824189241902419124192241932419424195241962419724198241992420024201242022420324204242052420624207242082420924210242112421224213242142421524216242172421824219242202422124222242232422424225242262422724228242292423024231242322423324234242352423624237242382423924240242412424224243242442424524246242472424824249242502425124252242532425424255242562425724258242592426024261242622426324264242652426624267242682426924270242712427224273242742427524276242772427824279242802428124282242832428424285242862428724288242892429024291242922429324294242952429624297242982429924300243012430224303243042430524306243072430824309243102431124312243132431424315243162431724318243192432024321243222432324324243252432624327243282432924330243312433224333243342433524336243372433824339243402434124342243432434424345243462434724348243492435024351243522435324354243552435624357243582435924360243612436224363243642436524366243672436824369243702437124372243732437424375243762437724378243792438024381243822438324384243852438624387243882438924390243912439224393243942439524396243972439824399244002440124402244032440424405244062440724408244092441024411244122441324414244152441624417244182441924420244212442224423244242442524426244272442824429244302443124432244332443424435244362443724438244392444024441244422444324444244452444624447244482444924450244512445224453244542445524456244572445824459244602446124462244632446424465244662446724468244692447024471244722447324474244752447624477244782447924480244812448224483244842448524486244872448824489244902449124492244932449424495244962449724498244992450024501245022450324504245052450624507245082450924510245112451224513245142451524516245172451824519245202452124522245232452424525245262452724528245292453024531245322453324534245352453624537245382453924540245412454224543245442454524546245472454824549245502455124552245532455424555245562455724558245592456024561245622456324564245652456624567245682456924570245712457224573245742457524576245772457824579245802458124582245832458424585245862458724588245892459024591245922459324594245952459624597245982459924600246012460224603246042460524606246072460824609246102461124612246132461424615246162461724618246192462024621246222462324624246252462624627246282462924630246312463224633246342463524636246372463824639246402464124642246432464424645246462464724648246492465024651246522465324654246552465624657246582465924660246612466224663246642466524666246672466824669246702467124672246732467424675246762467724678246792468024681246822468324684246852468624687246882468924690246912469224693246942469524696246972469824699247002470124702247032470424705247062470724708247092471024711247122471324714247152471624717247182471924720247212472224723247242472524726247272472824729247302473124732247332473424735247362473724738247392474024741247422474324744247452474624747247482474924750247512475224753247542475524756247572475824759247602476124762247632476424765247662476724768247692477024771247722477324774247752477624777247782477924780247812478224783247842478524786247872478824789247902479124792247932479424795247962479724798247992480024801248022480324804248052480624807248082480924810248112481224813248142481524816 |
- (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/vendor"],{
- /***/ 1:
- /*!************************************************************!*\
- !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js ***!
- \************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.createApp = createApp;exports.createComponent = createComponent;exports.createPage = createPage;exports.default = void 0;var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));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) || _nonIterableRest();}function _nonIterableRest() {throw new TypeError("Invalid attempt to destructure non-iterable instance");}function _iterableToArrayLimit(arr, i) {if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) {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) || _nonIterableSpread();}function _nonIterableSpread() {throw new TypeError("Invalid attempt to spread non-iterable instance");}function _iterableToArray(iter) {if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);}function _arrayWithoutHoles(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {arr2[i] = arr[i];}return arr2;}}
- var _toString = Object.prototype.toString;
- var hasOwnProperty = Object.prototype.hasOwnProperty;
- function isFn(fn) {
- return typeof fn === 'function';
- }
- function isStr(str) {
- return typeof str === 'string';
- }
- function isPlainObject(obj) {
- return _toString.call(obj) === '[object Object]';
- }
- function hasOwn(obj, key) {
- return hasOwnProperty.call(obj, key);
- }
- function noop() {}
- /**
- * Create a cached version of a pure function.
- */
- function cached(fn) {
- var cache = Object.create(null);
- return function cachedFn(str) {
- var hit = cache[str];
- return hit || (cache[str] = fn(str));
- };
- }
- /**
- * Camelize a hyphen-delimited string.
- */
- var camelizeRE = /-(\w)/g;
- var camelize = cached(function (str) {
- return str.replace(camelizeRE, function (_, c) {return c ? c.toUpperCase() : '';});
- });
- var HOOKS = [
- 'invoke',
- 'success',
- 'fail',
- 'complete',
- 'returnValue'];
- var globalInterceptors = {};
- var scopedInterceptors = {};
- function mergeHook(parentVal, childVal) {
- var res = childVal ?
- parentVal ?
- parentVal.concat(childVal) :
- Array.isArray(childVal) ?
- childVal : [childVal] :
- parentVal;
- return res ?
- dedupeHooks(res) :
- res;
- }
- function dedupeHooks(hooks) {
- var res = [];
- for (var i = 0; i < hooks.length; i++) {
- if (res.indexOf(hooks[i]) === -1) {
- res.push(hooks[i]);
- }
- }
- return res;
- }
- function removeHook(hooks, hook) {
- var index = hooks.indexOf(hook);
- if (index !== -1) {
- hooks.splice(index, 1);
- }
- }
- function mergeInterceptorHook(interceptor, option) {
- Object.keys(option).forEach(function (hook) {
- if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
- interceptor[hook] = mergeHook(interceptor[hook], option[hook]);
- }
- });
- }
- function removeInterceptorHook(interceptor, option) {
- if (!interceptor || !option) {
- return;
- }
- Object.keys(option).forEach(function (hook) {
- if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
- removeHook(interceptor[hook], option[hook]);
- }
- });
- }
- function addInterceptor(method, option) {
- if (typeof method === 'string' && isPlainObject(option)) {
- mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);
- } else if (isPlainObject(method)) {
- mergeInterceptorHook(globalInterceptors, method);
- }
- }
- function removeInterceptor(method, option) {
- if (typeof method === 'string') {
- if (isPlainObject(option)) {
- removeInterceptorHook(scopedInterceptors[method], option);
- } else {
- delete scopedInterceptors[method];
- }
- } else if (isPlainObject(method)) {
- removeInterceptorHook(globalInterceptors, method);
- }
- }
- function wrapperHook(hook) {
- return function (data) {
- return hook(data) || data;
- };
- }
- function isPromise(obj) {
- return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
- }
- function queue(hooks, data) {
- var promise = false;
- for (var i = 0; i < hooks.length; i++) {
- var hook = hooks[i];
- if (promise) {
- promise = Promise.then(wrapperHook(hook));
- } else {
- var res = hook(data);
- if (isPromise(res)) {
- promise = Promise.resolve(res);
- }
- if (res === false) {
- return {
- then: function then() {} };
- }
- }
- }
- return promise || {
- then: function then(callback) {
- return callback(data);
- } };
- }
- function wrapperOptions(interceptor) {var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- ['success', 'fail', 'complete'].forEach(function (name) {
- if (Array.isArray(interceptor[name])) {
- var oldCallback = options[name];
- options[name] = function callbackInterceptor(res) {
- queue(interceptor[name], res).then(function (res) {
- /* eslint-disable no-mixed-operators */
- return isFn(oldCallback) && oldCallback(res) || res;
- });
- };
- }
- });
- return options;
- }
- function wrapperReturnValue(method, returnValue) {
- var returnValueHooks = [];
- if (Array.isArray(globalInterceptors.returnValue)) {
- returnValueHooks.push.apply(returnValueHooks, _toConsumableArray(globalInterceptors.returnValue));
- }
- var interceptor = scopedInterceptors[method];
- if (interceptor && Array.isArray(interceptor.returnValue)) {
- returnValueHooks.push.apply(returnValueHooks, _toConsumableArray(interceptor.returnValue));
- }
- returnValueHooks.forEach(function (hook) {
- returnValue = hook(returnValue) || returnValue;
- });
- return returnValue;
- }
- function getApiInterceptorHooks(method) {
- var interceptor = Object.create(null);
- Object.keys(globalInterceptors).forEach(function (hook) {
- if (hook !== 'returnValue') {
- interceptor[hook] = globalInterceptors[hook].slice();
- }
- });
- var scopedInterceptor = scopedInterceptors[method];
- if (scopedInterceptor) {
- Object.keys(scopedInterceptor).forEach(function (hook) {
- if (hook !== 'returnValue') {
- interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);
- }
- });
- }
- return interceptor;
- }
- 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];}
- var interceptor = getApiInterceptorHooks(method);
- if (interceptor && Object.keys(interceptor).length) {
- if (Array.isArray(interceptor.invoke)) {
- var res = queue(interceptor.invoke, options);
- return res.then(function (options) {
- return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
- });
- } else {
- return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
- }
- }
- return api.apply(void 0, [options].concat(params));
- }
- var promiseInterceptor = {
- returnValue: function returnValue(res) {
- if (!isPromise(res)) {
- return res;
- }
- return res.then(function (res) {
- return res[1];
- }).catch(function (res) {
- return res[0];
- });
- } };
- var SYNC_API_RE =
- /^\$|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
- var CONTEXT_API_RE = /^create|Manager$/;
- var ASYNC_API = ['createBLEConnection'];
- var CALLBACK_API_RE = /^on/;
- function isContextApi(name) {
- return CONTEXT_API_RE.test(name);
- }
- function isSyncApi(name) {
- return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;
- }
- function isCallbackApi(name) {
- return CALLBACK_API_RE.test(name) && name !== 'onPush';
- }
- function handlePromise(promise) {
- return promise.then(function (data) {
- return [null, data];
- }).
- catch(function (err) {return [err];});
- }
- function shouldPromise(name) {
- if (
- isContextApi(name) ||
- isSyncApi(name) ||
- isCallbackApi(name))
- {
- return false;
- }
- return true;
- }
- /* eslint-disable no-extend-native */
- if (!Promise.prototype.finally) {
- Promise.prototype.finally = function (callback) {
- var promise = this.constructor;
- return this.then(
- function (value) {return promise.resolve(callback()).then(function () {return value;});},
- function (reason) {return promise.resolve(callback()).then(function () {
- throw reason;
- });});
- };
- }
- function promisify(name, api) {
- if (!shouldPromise(name)) {
- return api;
- }
- 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];}
- if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {
- return wrapperReturnValue(name, invokeApi.apply(void 0, [name, api, options].concat(params)));
- }
- return wrapperReturnValue(name, handlePromise(new Promise(function (resolve, reject) {
- invokeApi.apply(void 0, [name, api, Object.assign({}, options, {
- success: resolve,
- fail: reject })].concat(
- params));
- })));
- };
- }
- var EPS = 1e-4;
- var BASE_DEVICE_WIDTH = 750;
- var isIOS = false;
- var deviceWidth = 0;
- var deviceDPR = 0;
- function checkDeviceWidth() {var _wx$getSystemInfoSync =
- wx.getSystemInfoSync(),platform = _wx$getSystemInfoSync.platform,pixelRatio = _wx$getSystemInfoSync.pixelRatio,windowWidth = _wx$getSystemInfoSync.windowWidth; // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni
- deviceWidth = windowWidth;
- deviceDPR = pixelRatio;
- isIOS = platform === 'ios';
- }
- function upx2px(number, newDeviceWidth) {
- if (deviceWidth === 0) {
- checkDeviceWidth();
- }
- number = Number(number);
- if (number === 0) {
- return 0;
- }
- var result = number / BASE_DEVICE_WIDTH * (newDeviceWidth || deviceWidth);
- if (result < 0) {
- result = -result;
- }
- result = Math.floor(result + EPS);
- if (result === 0) {
- if (deviceDPR === 1 || !isIOS) {
- return 1;
- } else {
- return 0.5;
- }
- }
- return number < 0 ? -result : result;
- }
- var interceptors = {
- promiseInterceptor: promiseInterceptor };
- var baseApi = /*#__PURE__*/Object.freeze({
- __proto__: null,
- upx2px: upx2px,
- interceptors: interceptors,
- addInterceptor: addInterceptor,
- removeInterceptor: removeInterceptor });
- var previewImage = {
- args: function args(fromArgs) {
- var currentIndex = parseInt(fromArgs.current);
- if (isNaN(currentIndex)) {
- return;
- }
- var urls = fromArgs.urls;
- if (!Array.isArray(urls)) {
- return;
- }
- var len = urls.length;
- if (!len) {
- return;
- }
- if (currentIndex < 0) {
- currentIndex = 0;
- } else if (currentIndex >= len) {
- currentIndex = len - 1;
- }
- if (currentIndex > 0) {
- fromArgs.current = urls[currentIndex];
- fromArgs.urls = urls.filter(
- function (item, index) {return index < currentIndex ? item !== urls[currentIndex] : true;});
- } else {
- fromArgs.current = urls[0];
- }
- return {
- indicator: false,
- loop: false };
- } };
- function addSafeAreaInsets(result) {
- if (result.safeArea) {
- var safeArea = result.safeArea;
- result.safeAreaInsets = {
- top: safeArea.top,
- left: safeArea.left,
- right: result.windowWidth - safeArea.right,
- bottom: result.windowHeight - safeArea.bottom };
- }
- }
- var protocols = {
- previewImage: previewImage,
- getSystemInfo: {
- returnValue: addSafeAreaInsets },
- getSystemInfoSync: {
- returnValue: addSafeAreaInsets } };
- var todos = [
- 'vibrate'];
- var canIUses = [];
- var CALLBACKS = ['success', 'fail', 'cancel', 'complete'];
- function processCallback(methodName, method, returnValue) {
- return function (res) {
- return method(processReturnValue(methodName, res, returnValue));
- };
- }
- 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;
- if (isPlainObject(fromArgs)) {// 一般 api 的参数解析
- var toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值
- if (isFn(argsOption)) {
- argsOption = argsOption(fromArgs, toArgs) || {};
- }
- for (var key in fromArgs) {
- if (hasOwn(argsOption, key)) {
- var keyOption = argsOption[key];
- if (isFn(keyOption)) {
- keyOption = keyOption(fromArgs[key], fromArgs, toArgs);
- }
- if (!keyOption) {// 不支持的参数
- console.warn("\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F ".concat(methodName, "\u6682\u4E0D\u652F\u6301").concat(key));
- } else if (isStr(keyOption)) {// 重写参数 key
- toArgs[keyOption] = fromArgs[key];
- } else if (isPlainObject(keyOption)) {// {name:newName,value:value}可重新指定参数 key:value
- toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;
- }
- } else if (CALLBACKS.indexOf(key) !== -1) {
- toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);
- } else {
- if (!keepFromArgs) {
- toArgs[key] = fromArgs[key];
- }
- }
- }
- return toArgs;
- } else if (isFn(fromArgs)) {
- fromArgs = processCallback(methodName, fromArgs, returnValue);
- }
- return fromArgs;
- }
- function processReturnValue(methodName, res, returnValue) {var keepReturnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
- if (isFn(protocols.returnValue)) {// 处理通用 returnValue
- res = protocols.returnValue(methodName, res);
- }
- return processArgs(methodName, res, returnValue, {}, keepReturnValue);
- }
- function wrapper(methodName, method) {
- if (hasOwn(protocols, methodName)) {
- var protocol = protocols[methodName];
- if (!protocol) {// 暂不支持的 api
- return function () {
- console.error("\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F \u6682\u4E0D\u652F\u6301".concat(methodName));
- };
- }
- return function (arg1, arg2) {// 目前 api 最多两个参数
- var options = protocol;
- if (isFn(protocol)) {
- options = protocol(arg1);
- }
- arg1 = processArgs(methodName, arg1, options.args, options.returnValue);
- var args = [arg1];
- if (typeof arg2 !== 'undefined') {
- args.push(arg2);
- }
- var returnValue = wx[options.name || methodName].apply(wx, args);
- if (isSyncApi(methodName)) {// 同步 api
- return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));
- }
- return returnValue;
- };
- }
- return method;
- }
- var todoApis = Object.create(null);
- var TODOS = [
- 'onTabBarMidButtonTap',
- 'subscribePush',
- 'unsubscribePush',
- 'onPush',
- 'offPush',
- 'share'];
- function createTodoApi(name) {
- return function todoApi(_ref)
- {var fail = _ref.fail,complete = _ref.complete;
- var res = {
- errMsg: "".concat(name, ":fail:\u6682\u4E0D\u652F\u6301 ").concat(name, " \u65B9\u6CD5") };
- isFn(fail) && fail(res);
- isFn(complete) && complete(res);
- };
- }
- TODOS.forEach(function (name) {
- todoApis[name] = createTodoApi(name);
- });
- var providers = {
- oauth: ['weixin'],
- share: ['weixin'],
- payment: ['wxpay'],
- push: ['weixin'] };
- function getProvider(_ref2)
- {var service = _ref2.service,success = _ref2.success,fail = _ref2.fail,complete = _ref2.complete;
- var res = false;
- if (providers[service]) {
- res = {
- errMsg: 'getProvider:ok',
- service: service,
- provider: providers[service] };
- isFn(success) && success(res);
- } else {
- res = {
- errMsg: 'getProvider:fail:服务[' + service + ']不存在' };
- isFn(fail) && fail(res);
- }
- isFn(complete) && complete(res);
- }
- var extraApi = /*#__PURE__*/Object.freeze({
- __proto__: null,
- getProvider: getProvider });
- var getEmitter = function () {
- if (typeof getUniEmitter === 'function') {
- /* eslint-disable no-undef */
- return getUniEmitter;
- }
- var Emitter;
- return function getUniEmitter() {
- if (!Emitter) {
- Emitter = new _vue.default();
- }
- return Emitter;
- };
- }();
- function apply(ctx, method, args) {
- return ctx[method].apply(ctx, args);
- }
- function $on() {
- return apply(getEmitter(), '$on', Array.prototype.slice.call(arguments));
- }
- function $off() {
- return apply(getEmitter(), '$off', Array.prototype.slice.call(arguments));
- }
- function $once() {
- return apply(getEmitter(), '$once', Array.prototype.slice.call(arguments));
- }
- function $emit() {
- return apply(getEmitter(), '$emit', Array.prototype.slice.call(arguments));
- }
- var eventApi = /*#__PURE__*/Object.freeze({
- __proto__: null,
- $on: $on,
- $off: $off,
- $once: $once,
- $emit: $emit });
- var api = /*#__PURE__*/Object.freeze({
- __proto__: null });
- var MPPage = Page;
- var MPComponent = Component;
- var customizeRE = /:/g;
- var customize = cached(function (str) {
- return camelize(str.replace(customizeRE, '-'));
- });
- function initTriggerEvent(mpInstance) {
- {
- if (!wx.canIUse('nextTick')) {
- return;
- }
- }
- var oldTriggerEvent = mpInstance.triggerEvent;
- mpInstance.triggerEvent = function (event) {for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {args[_key3 - 1] = arguments[_key3];}
- return oldTriggerEvent.apply(mpInstance, [customize(event)].concat(args));
- };
- }
- function initHook(name, options) {
- var oldHook = options[name];
- if (!oldHook) {
- options[name] = function () {
- initTriggerEvent(this);
- };
- } else {
- options[name] = function () {
- initTriggerEvent(this);for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {args[_key4] = arguments[_key4];}
- return oldHook.apply(this, args);
- };
- }
- }
- Page = function Page() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- initHook('onLoad', options);
- return MPPage(options);
- };
- Component = function Component() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- initHook('created', options);
- return MPComponent(options);
- };
- var PAGE_EVENT_HOOKS = [
- 'onPullDownRefresh',
- 'onReachBottom',
- 'onShareAppMessage',
- 'onPageScroll',
- 'onResize',
- 'onTabItemTap'];
- function initMocks(vm, mocks) {
- var mpInstance = vm.$mp[vm.mpType];
- mocks.forEach(function (mock) {
- if (hasOwn(mpInstance, mock)) {
- vm[mock] = mpInstance[mock];
- }
- });
- }
- function hasHook(hook, vueOptions) {
- if (!vueOptions) {
- return true;
- }
- if (_vue.default.options && Array.isArray(_vue.default.options[hook])) {
- return true;
- }
- vueOptions = vueOptions.default || vueOptions;
- if (isFn(vueOptions)) {
- if (isFn(vueOptions.extendOptions[hook])) {
- return true;
- }
- if (vueOptions.super &&
- vueOptions.super.options &&
- Array.isArray(vueOptions.super.options[hook])) {
- return true;
- }
- return false;
- }
- if (isFn(vueOptions[hook])) {
- return true;
- }
- var mixins = vueOptions.mixins;
- if (Array.isArray(mixins)) {
- return !!mixins.find(function (mixin) {return hasHook(hook, mixin);});
- }
- }
- function initHooks(mpOptions, hooks, vueOptions) {
- hooks.forEach(function (hook) {
- if (hasHook(hook, vueOptions)) {
- mpOptions[hook] = function (args) {
- return this.$vm && this.$vm.__call_hook(hook, args);
- };
- }
- });
- }
- function initVueComponent(Vue, vueOptions) {
- vueOptions = vueOptions.default || vueOptions;
- var VueComponent;
- if (isFn(vueOptions)) {
- VueComponent = vueOptions;
- vueOptions = VueComponent.extendOptions;
- } else {
- VueComponent = Vue.extend(vueOptions);
- }
- return [VueComponent, vueOptions];
- }
- function initSlots(vm, vueSlots) {
- if (Array.isArray(vueSlots) && vueSlots.length) {
- var $slots = Object.create(null);
- vueSlots.forEach(function (slotName) {
- $slots[slotName] = true;
- });
- vm.$scopedSlots = vm.$slots = $slots;
- }
- }
- function initVueIds(vueIds, mpInstance) {
- vueIds = (vueIds || '').split(',');
- var len = vueIds.length;
- if (len === 1) {
- mpInstance._$vueId = vueIds[0];
- } else if (len === 2) {
- mpInstance._$vueId = vueIds[0];
- mpInstance._$vuePid = vueIds[1];
- }
- }
- function initData(vueOptions, context) {
- var data = vueOptions.data || {};
- var methods = vueOptions.methods || {};
- if (typeof data === 'function') {
- try {
- data = data.call(context); // 支持 Vue.prototype 上挂的数据
- } catch (e) {
- if (Object({"NODE_ENV":"development","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
- console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);
- }
- }
- } else {
- try {
- // 对 data 格式化
- data = JSON.parse(JSON.stringify(data));
- } catch (e) {}
- }
- if (!isPlainObject(data)) {
- data = {};
- }
- Object.keys(methods).forEach(function (methodName) {
- if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {
- data[methodName] = methods[methodName];
- }
- });
- return data;
- }
- var PROP_TYPES = [String, Number, Boolean, Object, Array, null];
- function createObserver(name) {
- return function observer(newVal, oldVal) {
- if (this.$vm) {
- this.$vm[name] = newVal; // 为了触发其他非 render watcher
- }
- };
- }
- function initBehaviors(vueOptions, initBehavior) {
- var vueBehaviors = vueOptions['behaviors'];
- var vueExtends = vueOptions['extends'];
- var vueMixins = vueOptions['mixins'];
- var vueProps = vueOptions['props'];
- if (!vueProps) {
- vueOptions['props'] = vueProps = [];
- }
- var behaviors = [];
- if (Array.isArray(vueBehaviors)) {
- vueBehaviors.forEach(function (behavior) {
- behaviors.push(behavior.replace('uni://', "wx".concat("://")));
- if (behavior === 'uni://form-field') {
- if (Array.isArray(vueProps)) {
- vueProps.push('name');
- vueProps.push('value');
- } else {
- vueProps['name'] = {
- type: String,
- default: '' };
- vueProps['value'] = {
- type: [String, Number, Boolean, Array, Object, Date],
- default: '' };
- }
- }
- });
- }
- if (isPlainObject(vueExtends) && vueExtends.props) {
- behaviors.push(
- initBehavior({
- properties: initProperties(vueExtends.props, true) }));
- }
- if (Array.isArray(vueMixins)) {
- vueMixins.forEach(function (vueMixin) {
- if (isPlainObject(vueMixin) && vueMixin.props) {
- behaviors.push(
- initBehavior({
- properties: initProperties(vueMixin.props, true) }));
- }
- });
- }
- return behaviors;
- }
- function parsePropType(key, type, defaultValue, file) {
- // [String]=>String
- if (Array.isArray(type) && type.length === 1) {
- return type[0];
- }
- return type;
- }
- 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 properties = {};
- if (!isBehavior) {
- properties.vueId = {
- type: String,
- value: '' };
- properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots
- type: null,
- value: [],
- observer: function observer(newVal, oldVal) {
- var $slots = Object.create(null);
- newVal.forEach(function (slotName) {
- $slots[slotName] = true;
- });
- this.setData({
- $slots: $slots });
- } };
- }
- if (Array.isArray(props)) {// ['title']
- props.forEach(function (key) {
- properties[key] = {
- type: null,
- observer: createObserver(key) };
- });
- } else if (isPlainObject(props)) {// {title:{type:String,default:''},content:String}
- Object.keys(props).forEach(function (key) {
- var opts = props[key];
- if (isPlainObject(opts)) {// title:{type:String,default:''}
- var value = opts['default'];
- if (isFn(value)) {
- value = value();
- }
- opts.type = parsePropType(key, opts.type);
- properties[key] = {
- type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,
- value: value,
- observer: createObserver(key) };
- } else {// content:String
- var type = parsePropType(key, opts);
- properties[key] = {
- type: PROP_TYPES.indexOf(type) !== -1 ? type : null,
- observer: createObserver(key) };
- }
- });
- }
- return properties;
- }
- function wrapper$1(event) {
- // TODO 又得兼容 mpvue 的 mp 对象
- try {
- event.mp = JSON.parse(JSON.stringify(event));
- } catch (e) {}
- event.stopPropagation = noop;
- event.preventDefault = noop;
- event.target = event.target || {};
- if (!hasOwn(event, 'detail')) {
- event.detail = {};
- }
- if (isPlainObject(event.detail)) {
- event.target = Object.assign({}, event.target, event.detail);
- }
- return event;
- }
- function getExtraValue(vm, dataPathsArray) {
- var context = vm;
- dataPathsArray.forEach(function (dataPathArray) {
- var dataPath = dataPathArray[0];
- var value = dataPathArray[2];
- if (dataPath || typeof value !== 'undefined') {// ['','',index,'disable']
- var propPath = dataPathArray[1];
- var valuePath = dataPathArray[3];
- var vFor = dataPath ? vm.__get_value(dataPath, context) : context;
- if (Number.isInteger(vFor)) {
- context = value;
- } else if (!propPath) {
- context = vFor[value];
- } else {
- if (Array.isArray(vFor)) {
- context = vFor.find(function (vForItem) {
- return vm.__get_value(propPath, vForItem) === value;
- });
- } else if (isPlainObject(vFor)) {
- context = Object.keys(vFor).find(function (vForKey) {
- return vm.__get_value(propPath, vFor[vForKey]) === value;
- });
- } else {
- console.error('v-for 暂不支持循环数据:', vFor);
- }
- }
- if (valuePath) {
- context = vm.__get_value(valuePath, context);
- }
- }
- });
- return context;
- }
- function processEventExtra(vm, extra, event) {
- var extraObj = {};
- if (Array.isArray(extra) && extra.length) {
- /**
- *[
- * ['data.items', 'data.id', item.data.id],
- * ['metas', 'id', meta.id]
- *],
- *[
- * ['data.items', 'data.id', item.data.id],
- * ['metas', 'id', meta.id]
- *],
- *'test'
- */
- extra.forEach(function (dataPath, index) {
- if (typeof dataPath === 'string') {
- if (!dataPath) {// model,prop.sync
- extraObj['$' + index] = vm;
- } else {
- if (dataPath === '$event') {// $event
- extraObj['$' + index] = event;
- } else if (dataPath.indexOf('$event.') === 0) {// $event.target.value
- extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);
- } else {
- extraObj['$' + index] = vm.__get_value(dataPath);
- }
- }
- } else {
- extraObj['$' + index] = getExtraValue(vm, dataPath);
- }
- });
- }
- return extraObj;
- }
- function getObjByArray(arr) {
- var obj = {};
- for (var i = 1; i < arr.length; i++) {
- var element = arr[i];
- obj[element[0]] = element[1];
- }
- return obj;
- }
- 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;
- var isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象
- if (isCustom) {// 自定义事件
- isCustomMPEvent = event.currentTarget &&
- event.currentTarget.dataset &&
- event.currentTarget.dataset.comType === 'wx';
- if (!args.length) {// 无参数,直接传入 event 或 detail 数组
- if (isCustomMPEvent) {
- return [event];
- }
- return event.detail.__args__ || event.detail;
- }
- }
- var extraObj = processEventExtra(vm, extra, event);
- var ret = [];
- args.forEach(function (arg) {
- if (arg === '$event') {
- if (methodName === '__set_model' && !isCustom) {// input v-model value
- ret.push(event.target.value);
- } else {
- if (isCustom && !isCustomMPEvent) {
- ret.push(event.detail.__args__[0]);
- } else {// wxcomponent 组件或内置组件
- ret.push(event);
- }
- }
- } else {
- if (Array.isArray(arg) && arg[0] === 'o') {
- ret.push(getObjByArray(arg));
- } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {
- ret.push(extraObj[arg]);
- } else {
- ret.push(arg);
- }
- }
- });
- return ret;
- }
- var ONCE = '~';
- var CUSTOM = '^';
- function isMatchEventType(eventType, optType) {
- return eventType === optType ||
- optType === 'regionchange' && (
- eventType === 'begin' ||
- eventType === 'end');
- }
- function handleEvent(event) {var _this = this;
- event = wrapper$1(event);
- // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]
- var dataset = (event.currentTarget || event.target).dataset;
- if (!dataset) {
- return console.warn("\u4E8B\u4EF6\u4FE1\u606F\u4E0D\u5B58\u5728");
- }
- var eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰
- if (!eventOpts) {
- return console.warn("\u4E8B\u4EF6\u4FE1\u606F\u4E0D\u5B58\u5728");
- }
- // [['handle',[1,2,a]],['handle1',[1,2,a]]]
- var eventType = event.type;
- var ret = [];
- eventOpts.forEach(function (eventOpt) {
- var type = eventOpt[0];
- var eventsArray = eventOpt[1];
- var isCustom = type.charAt(0) === CUSTOM;
- type = isCustom ? type.slice(1) : type;
- var isOnce = type.charAt(0) === ONCE;
- type = isOnce ? type.slice(1) : type;
- if (eventsArray && isMatchEventType(eventType, type)) {
- eventsArray.forEach(function (eventArray) {
- var methodName = eventArray[0];
- if (methodName) {
- var handlerCtx = _this.$vm;
- if (
- handlerCtx.$options.generic &&
- handlerCtx.$parent &&
- handlerCtx.$parent.$parent)
- {// mp-weixin,mp-toutiao 抽象节点模拟 scoped slots
- handlerCtx = handlerCtx.$parent.$parent;
- }
- if (methodName === '$emit') {
- handlerCtx.$emit.apply(handlerCtx,
- processEventArgs(
- _this.$vm,
- event,
- eventArray[1],
- eventArray[2],
- isCustom,
- methodName));
- return;
- }
- var handler = handlerCtx[methodName];
- if (!isFn(handler)) {
- throw new Error(" _vm.".concat(methodName, " is not a function"));
- }
- if (isOnce) {
- if (handler.once) {
- return;
- }
- handler.once = true;
- }
- ret.push(handler.apply(handlerCtx, processEventArgs(
- _this.$vm,
- event,
- eventArray[1],
- eventArray[2],
- isCustom,
- methodName)));
- }
- });
- }
- });
- if (
- eventType === 'input' &&
- ret.length === 1 &&
- typeof ret[0] !== 'undefined')
- {
- return ret[0];
- }
- }
- var hooks = [
- 'onShow',
- 'onHide',
- 'onError',
- 'onPageNotFound'];
- function parseBaseApp(vm, _ref3)
- {var mocks = _ref3.mocks,initRefs = _ref3.initRefs;
- if (vm.$options.store) {
- _vue.default.prototype.$store = vm.$options.store;
- }
- _vue.default.prototype.mpHost = "mp-weixin";
- _vue.default.mixin({
- beforeCreate: function beforeCreate() {
- if (!this.$options.mpType) {
- return;
- }
- this.mpType = this.$options.mpType;
- this.$mp = _defineProperty({
- data: {} },
- this.mpType, this.$options.mpInstance);
- this.$scope = this.$options.mpInstance;
- delete this.$options.mpType;
- delete this.$options.mpInstance;
- if (this.mpType !== 'app') {
- initRefs(this);
- initMocks(this, mocks);
- }
- } });
- var appOptions = {
- onLaunch: function onLaunch(args) {
- if (this.$vm) {// 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前
- return;
- }
- {
- if (!wx.canIUse('nextTick')) {// 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断
- console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');
- }
- }
- this.$vm = vm;
- this.$vm.$mp = {
- app: this };
- this.$vm.$scope = this;
- // vm 上也挂载 globalData
- this.$vm.globalData = this.globalData;
- this.$vm._isMounted = true;
- this.$vm.__call_hook('mounted', args);
- this.$vm.__call_hook('onLaunch', args);
- } };
- // 兼容旧版本 globalData
- appOptions.globalData = vm.$options.globalData || {};
- // 将 methods 中的方法挂在 getApp() 中
- var methods = vm.$options.methods;
- if (methods) {
- Object.keys(methods).forEach(function (name) {
- appOptions[name] = methods[name];
- });
- }
- initHooks(appOptions, hooks);
- return appOptions;
- }
- var mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];
- function findVmByVueId(vm, vuePid) {
- var $children = vm.$children;
- // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)
- for (var i = $children.length - 1; i >= 0; i--) {
- var childVm = $children[i];
- if (childVm.$scope._$vueId === vuePid) {
- return childVm;
- }
- }
- // 反向递归查找
- var parentVm;
- for (var _i = $children.length - 1; _i >= 0; _i--) {
- parentVm = findVmByVueId($children[_i], vuePid);
- if (parentVm) {
- return parentVm;
- }
- }
- }
- function initBehavior(options) {
- return Behavior(options);
- }
- function isPage() {
- return !!this.route;
- }
- function initRelation(detail) {
- this.triggerEvent('__l', detail);
- }
- function initRefs(vm) {
- var mpInstance = vm.$scope;
- Object.defineProperty(vm, '$refs', {
- get: function get() {
- var $refs = {};
- var components = mpInstance.selectAllComponents('.vue-ref');
- components.forEach(function (component) {
- var ref = component.dataset.ref;
- $refs[ref] = component.$vm || component;
- });
- var forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');
- forComponents.forEach(function (component) {
- var ref = component.dataset.ref;
- if (!$refs[ref]) {
- $refs[ref] = [];
- }
- $refs[ref].push(component.$vm || component);
- });
- return $refs;
- } });
- }
- function handleLink(event) {var _ref4 =
- event.detail || event.value,vuePid = _ref4.vuePid,vueOptions = _ref4.vueOptions; // detail 是微信,value 是百度(dipatch)
- var parentVm;
- if (vuePid) {
- parentVm = findVmByVueId(this.$vm, vuePid);
- }
- if (!parentVm) {
- parentVm = this.$vm;
- }
- vueOptions.parent = parentVm;
- }
- function parseApp(vm) {
- return parseBaseApp(vm, {
- mocks: mocks,
- initRefs: initRefs });
- }
- function createApp(vm) {
- App(parseApp(vm));
- return vm;
- }
- function parseBaseComponent(vueComponentOptions)
- {var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},isPage = _ref5.isPage,initRelation = _ref5.initRelation;var _initVueComponent =
- initVueComponent(_vue.default, vueComponentOptions),_initVueComponent2 = _slicedToArray(_initVueComponent, 2),VueComponent = _initVueComponent2[0],vueOptions = _initVueComponent2[1];
- var options = _objectSpread({
- multipleSlots: true,
- addGlobalClass: true },
- vueOptions.options || {});
- {
- // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项
- if (vueOptions['mp-weixin'] && vueOptions['mp-weixin']['options']) {
- Object.assign(options, vueOptions['mp-weixin']['options']);
- }
- }
- var componentOptions = {
- options: options,
- data: initData(vueOptions, _vue.default.prototype),
- behaviors: initBehaviors(vueOptions, initBehavior),
- properties: initProperties(vueOptions.props, false, vueOptions.__file),
- lifetimes: {
- attached: function attached() {
- var properties = this.properties;
- var options = {
- mpType: isPage.call(this) ? 'page' : 'component',
- mpInstance: this,
- propsData: properties };
- initVueIds(properties.vueId, this);
- // 处理父子关系
- initRelation.call(this, {
- vuePid: this._$vuePid,
- vueOptions: options });
- // 初始化 vue 实例
- this.$vm = new VueComponent(options);
- // 处理$slots,$scopedSlots(暂不支持动态变化$slots)
- initSlots(this.$vm, properties.vueSlots);
- // 触发首次 setData
- this.$vm.$mount();
- },
- ready: function ready() {
- // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发
- // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800
- if (this.$vm) {
- this.$vm._isMounted = true;
- this.$vm.__call_hook('mounted');
- this.$vm.__call_hook('onReady');
- }
- },
- detached: function detached() {
- this.$vm && this.$vm.$destroy();
- } },
- pageLifetimes: {
- show: function show(args) {
- this.$vm && this.$vm.__call_hook('onPageShow', args);
- },
- hide: function hide() {
- this.$vm && this.$vm.__call_hook('onPageHide');
- },
- resize: function resize(size) {
- this.$vm && this.$vm.__call_hook('onPageResize', size);
- } },
- methods: {
- __l: handleLink,
- __e: handleEvent } };
- if (Array.isArray(vueOptions.wxsCallMethods)) {
- vueOptions.wxsCallMethods.forEach(function (callMethod) {
- componentOptions.methods[callMethod] = function (args) {
- return this.$vm[callMethod](args);
- };
- });
- }
- if (isPage) {
- return componentOptions;
- }
- return [componentOptions, VueComponent];
- }
- function parseComponent(vueComponentOptions) {
- return parseBaseComponent(vueComponentOptions, {
- isPage: isPage,
- initRelation: initRelation });
- }
- var hooks$1 = [
- 'onShow',
- 'onHide',
- 'onUnload'];
- hooks$1.push.apply(hooks$1, PAGE_EVENT_HOOKS);
- function parseBasePage(vuePageOptions, _ref6)
- {var isPage = _ref6.isPage,initRelation = _ref6.initRelation;
- var pageOptions = parseComponent(vuePageOptions);
- initHooks(pageOptions.methods, hooks$1, vuePageOptions);
- pageOptions.methods.onLoad = function (args) {
- this.$vm.$mp.query = args; // 兼容 mpvue
- this.$vm.__call_hook('onLoad', args);
- };
- return pageOptions;
- }
- function parsePage(vuePageOptions) {
- return parseBasePage(vuePageOptions, {
- isPage: isPage,
- initRelation: initRelation });
- }
- function createPage(vuePageOptions) {
- {
- return Component(parsePage(vuePageOptions));
- }
- }
- function createComponent(vueOptions) {
- {
- return Component(parseComponent(vueOptions));
- }
- }
- todos.forEach(function (todoApi) {
- protocols[todoApi] = false;
- });
- canIUses.forEach(function (canIUseApi) {
- var apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name :
- canIUseApi;
- if (!wx.canIUse(apiName)) {
- protocols[canIUseApi] = false;
- }
- });
- var uni = {};
- if (typeof Proxy !== 'undefined' && "mp-weixin" !== 'app-plus') {
- uni = new Proxy({}, {
- get: function get(target, name) {
- if (target[name]) {
- return target[name];
- }
- if (baseApi[name]) {
- return baseApi[name];
- }
- if (api[name]) {
- return promisify(name, api[name]);
- }
- {
- if (extraApi[name]) {
- return promisify(name, extraApi[name]);
- }
- if (todoApis[name]) {
- return promisify(name, todoApis[name]);
- }
- }
- if (eventApi[name]) {
- return eventApi[name];
- }
- if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {
- return;
- }
- return promisify(name, wrapper(name, wx[name]));
- },
- set: function set(target, name, value) {
- target[name] = value;
- return true;
- } });
- } else {
- Object.keys(baseApi).forEach(function (name) {
- uni[name] = baseApi[name];
- });
- {
- Object.keys(todoApis).forEach(function (name) {
- uni[name] = promisify(name, todoApis[name]);
- });
- Object.keys(extraApi).forEach(function (name) {
- uni[name] = promisify(name, todoApis[name]);
- });
- }
- Object.keys(eventApi).forEach(function (name) {
- uni[name] = eventApi[name];
- });
- Object.keys(api).forEach(function (name) {
- uni[name] = promisify(name, api[name]);
- });
- Object.keys(wx).forEach(function (name) {
- if (hasOwn(wx, name) || hasOwn(protocols, name)) {
- uni[name] = promisify(name, wrapper(name, wx[name]));
- }
- });
- }
- wx.createApp = createApp;
- wx.createPage = createPage;
- wx.createComponent = createComponent;
- var uni$1 = uni;var _default =
- uni$1;exports.default = _default;
- /***/ }),
- /***/ 12:
- /*!********************************************!*\
- !*** ./node_modules/vuex/dist/vuex.esm.js ***!
- \********************************************/
- /*! exports provided: Store, install, mapState, mapMutations, mapGetters, mapActions, createNamespacedHelpers, default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Store", function() { return Store; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "install", function() { return install; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapState", function() { return mapState; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapMutations", function() { return mapMutations; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapGetters", function() { return mapGetters; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapActions", function() { return mapActions; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createNamespacedHelpers", function() { return createNamespacedHelpers; });
- /**
- * vuex v3.0.1
- * (c) 2017 Evan You
- * @license MIT
- */
- var applyMixin = function (Vue) {
- var version = Number(Vue.version.split('.')[0]);
- if (version >= 2) {
- Vue.mixin({ beforeCreate: vuexInit });
- } else {
- // override init and inject vuex init procedure
- // for 1.x backwards compatibility.
- var _init = Vue.prototype._init;
- Vue.prototype._init = function (options) {
- if ( options === void 0 ) options = {};
- options.init = options.init
- ? [vuexInit].concat(options.init)
- : vuexInit;
- _init.call(this, options);
- };
- }
- /**
- * Vuex init hook, injected into each instances init hooks list.
- */
- function vuexInit () {
- var options = this.$options;
- // store injection
- if (options.store) {
- this.$store = typeof options.store === 'function'
- ? options.store()
- : options.store;
- } else if (options.parent && options.parent.$store) {
- this.$store = options.parent.$store;
- }
- }
- };
- var devtoolHook =
- typeof window !== 'undefined' &&
- window.__VUE_DEVTOOLS_GLOBAL_HOOK__;
- function devtoolPlugin (store) {
- if (!devtoolHook) { return }
- store._devtoolHook = devtoolHook;
- devtoolHook.emit('vuex:init', store);
- devtoolHook.on('vuex:travel-to-state', function (targetState) {
- store.replaceState(targetState);
- });
- store.subscribe(function (mutation, state) {
- devtoolHook.emit('vuex:mutation', mutation, state);
- });
- }
- /**
- * Get the first item that pass the test
- * by second argument function
- *
- * @param {Array} list
- * @param {Function} f
- * @return {*}
- */
- /**
- * Deep copy the given object considering circular structure.
- * This function caches all nested objects and its copies.
- * If it detects circular structure, use cached copy to avoid infinite loop.
- *
- * @param {*} obj
- * @param {Array<Object>} cache
- * @return {*}
- */
- /**
- * forEach for object
- */
- function forEachValue (obj, fn) {
- Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });
- }
- function isObject (obj) {
- return obj !== null && typeof obj === 'object'
- }
- function isPromise (val) {
- return val && typeof val.then === 'function'
- }
- function assert (condition, msg) {
- if (!condition) { throw new Error(("[vuex] " + msg)) }
- }
- var Module = function Module (rawModule, runtime) {
- this.runtime = runtime;
- this._children = Object.create(null);
- this._rawModule = rawModule;
- var rawState = rawModule.state;
- this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};
- };
- var prototypeAccessors$1 = { namespaced: { configurable: true } };
- prototypeAccessors$1.namespaced.get = function () {
- return !!this._rawModule.namespaced
- };
- Module.prototype.addChild = function addChild (key, module) {
- this._children[key] = module;
- };
- Module.prototype.removeChild = function removeChild (key) {
- delete this._children[key];
- };
- Module.prototype.getChild = function getChild (key) {
- return this._children[key]
- };
- Module.prototype.update = function update (rawModule) {
- this._rawModule.namespaced = rawModule.namespaced;
- if (rawModule.actions) {
- this._rawModule.actions = rawModule.actions;
- }
- if (rawModule.mutations) {
- this._rawModule.mutations = rawModule.mutations;
- }
- if (rawModule.getters) {
- this._rawModule.getters = rawModule.getters;
- }
- };
- Module.prototype.forEachChild = function forEachChild (fn) {
- forEachValue(this._children, fn);
- };
- Module.prototype.forEachGetter = function forEachGetter (fn) {
- if (this._rawModule.getters) {
- forEachValue(this._rawModule.getters, fn);
- }
- };
- Module.prototype.forEachAction = function forEachAction (fn) {
- if (this._rawModule.actions) {
- forEachValue(this._rawModule.actions, fn);
- }
- };
- Module.prototype.forEachMutation = function forEachMutation (fn) {
- if (this._rawModule.mutations) {
- forEachValue(this._rawModule.mutations, fn);
- }
- };
- Object.defineProperties( Module.prototype, prototypeAccessors$1 );
- var ModuleCollection = function ModuleCollection (rawRootModule) {
- // register root module (Vuex.Store options)
- this.register([], rawRootModule, false);
- };
- ModuleCollection.prototype.get = function get (path) {
- return path.reduce(function (module, key) {
- return module.getChild(key)
- }, this.root)
- };
- ModuleCollection.prototype.getNamespace = function getNamespace (path) {
- var module = this.root;
- return path.reduce(function (namespace, key) {
- module = module.getChild(key);
- return namespace + (module.namespaced ? key + '/' : '')
- }, '')
- };
- ModuleCollection.prototype.update = function update$1 (rawRootModule) {
- update([], this.root, rawRootModule);
- };
- ModuleCollection.prototype.register = function register (path, rawModule, runtime) {
- var this$1 = this;
- if ( runtime === void 0 ) runtime = true;
- if (true) {
- assertRawModule(path, rawModule);
- }
- var newModule = new Module(rawModule, runtime);
- if (path.length === 0) {
- this.root = newModule;
- } else {
- var parent = this.get(path.slice(0, -1));
- parent.addChild(path[path.length - 1], newModule);
- }
- // register nested modules
- if (rawModule.modules) {
- forEachValue(rawModule.modules, function (rawChildModule, key) {
- this$1.register(path.concat(key), rawChildModule, runtime);
- });
- }
- };
- ModuleCollection.prototype.unregister = function unregister (path) {
- var parent = this.get(path.slice(0, -1));
- var key = path[path.length - 1];
- if (!parent.getChild(key).runtime) { return }
- parent.removeChild(key);
- };
- function update (path, targetModule, newModule) {
- if (true) {
- assertRawModule(path, newModule);
- }
- // update target module
- targetModule.update(newModule);
- // update nested modules
- if (newModule.modules) {
- for (var key in newModule.modules) {
- if (!targetModule.getChild(key)) {
- if (true) {
- console.warn(
- "[vuex] trying to add a new module '" + key + "' on hot reloading, " +
- 'manual reload is needed'
- );
- }
- return
- }
- update(
- path.concat(key),
- targetModule.getChild(key),
- newModule.modules[key]
- );
- }
- }
- }
- var functionAssert = {
- assert: function (value) { return typeof value === 'function'; },
- expected: 'function'
- };
- var objectAssert = {
- assert: function (value) { return typeof value === 'function' ||
- (typeof value === 'object' && typeof value.handler === 'function'); },
- expected: 'function or object with "handler" function'
- };
- var assertTypes = {
- getters: functionAssert,
- mutations: functionAssert,
- actions: objectAssert
- };
- function assertRawModule (path, rawModule) {
- Object.keys(assertTypes).forEach(function (key) {
- if (!rawModule[key]) { return }
- var assertOptions = assertTypes[key];
- forEachValue(rawModule[key], function (value, type) {
- assert(
- assertOptions.assert(value),
- makeAssertionMessage(path, key, type, value, assertOptions.expected)
- );
- });
- });
- }
- function makeAssertionMessage (path, key, type, value, expected) {
- var buf = key + " should be " + expected + " but \"" + key + "." + type + "\"";
- if (path.length > 0) {
- buf += " in module \"" + (path.join('.')) + "\"";
- }
- buf += " is " + (JSON.stringify(value)) + ".";
- return buf
- }
- var Vue; // bind on install
- var Store = function Store (options) {
- var this$1 = this;
- if ( options === void 0 ) options = {};
- // Auto install if it is not done yet and `window` has `Vue`.
- // To allow users to avoid auto-installation in some cases,
- // this code should be placed here. See #731
- if (!Vue && typeof window !== 'undefined' && window.Vue) {
- install(window.Vue);
- }
- if (true) {
- assert(Vue, "must call Vue.use(Vuex) before creating a store instance.");
- assert(typeof Promise !== 'undefined', "vuex requires a Promise polyfill in this browser.");
- assert(this instanceof Store, "Store must be called with the new operator.");
- }
- var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];
- var strict = options.strict; if ( strict === void 0 ) strict = false;
- var state = options.state; if ( state === void 0 ) state = {};
- if (typeof state === 'function') {
- state = state() || {};
- }
- // store internal state
- this._committing = false;
- this._actions = Object.create(null);
- this._actionSubscribers = [];
- this._mutations = Object.create(null);
- this._wrappedGetters = Object.create(null);
- this._modules = new ModuleCollection(options);
- this._modulesNamespaceMap = Object.create(null);
- this._subscribers = [];
- this._watcherVM = new Vue();
- // bind commit and dispatch to self
- var store = this;
- var ref = this;
- var dispatch = ref.dispatch;
- var commit = ref.commit;
- this.dispatch = function boundDispatch (type, payload) {
- return dispatch.call(store, type, payload)
- };
- this.commit = function boundCommit (type, payload, options) {
- return commit.call(store, type, payload, options)
- };
- // strict mode
- this.strict = strict;
- // init root module.
- // this also recursively registers all sub-modules
- // and collects all module getters inside this._wrappedGetters
- installModule(this, state, [], this._modules.root);
- // initialize the store vm, which is responsible for the reactivity
- // (also registers _wrappedGetters as computed properties)
- resetStoreVM(this, state);
- // apply plugins
- plugins.forEach(function (plugin) { return plugin(this$1); });
- if (Vue.config.devtools) {
- devtoolPlugin(this);
- }
- };
- var prototypeAccessors = { state: { configurable: true } };
- prototypeAccessors.state.get = function () {
- return this._vm._data.$$state
- };
- prototypeAccessors.state.set = function (v) {
- if (true) {
- assert(false, "Use store.replaceState() to explicit replace store state.");
- }
- };
- Store.prototype.commit = function commit (_type, _payload, _options) {
- var this$1 = this;
- // check object-style commit
- var ref = unifyObjectStyle(_type, _payload, _options);
- var type = ref.type;
- var payload = ref.payload;
- var options = ref.options;
- var mutation = { type: type, payload: payload };
- var entry = this._mutations[type];
- if (!entry) {
- if (true) {
- console.error(("[vuex] unknown mutation type: " + type));
- }
- return
- }
- this._withCommit(function () {
- entry.forEach(function commitIterator (handler) {
- handler(payload);
- });
- });
- this._subscribers.forEach(function (sub) { return sub(mutation, this$1.state); });
- if (
- true &&
- options && options.silent
- ) {
- console.warn(
- "[vuex] mutation type: " + type + ". Silent option has been removed. " +
- 'Use the filter functionality in the vue-devtools'
- );
- }
- };
- Store.prototype.dispatch = function dispatch (_type, _payload) {
- var this$1 = this;
- // check object-style dispatch
- var ref = unifyObjectStyle(_type, _payload);
- var type = ref.type;
- var payload = ref.payload;
- var action = { type: type, payload: payload };
- var entry = this._actions[type];
- if (!entry) {
- if (true) {
- console.error(("[vuex] unknown action type: " + type));
- }
- return
- }
- this._actionSubscribers.forEach(function (sub) { return sub(action, this$1.state); });
- return entry.length > 1
- ? Promise.all(entry.map(function (handler) { return handler(payload); }))
- : entry[0](payload)
- };
- Store.prototype.subscribe = function subscribe (fn) {
- return genericSubscribe(fn, this._subscribers)
- };
- Store.prototype.subscribeAction = function subscribeAction (fn) {
- return genericSubscribe(fn, this._actionSubscribers)
- };
- Store.prototype.watch = function watch (getter, cb, options) {
- var this$1 = this;
- if (true) {
- assert(typeof getter === 'function', "store.watch only accepts a function.");
- }
- return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)
- };
- Store.prototype.replaceState = function replaceState (state) {
- var this$1 = this;
- this._withCommit(function () {
- this$1._vm._data.$$state = state;
- });
- };
- Store.prototype.registerModule = function registerModule (path, rawModule, options) {
- if ( options === void 0 ) options = {};
- if (typeof path === 'string') { path = [path]; }
- if (true) {
- assert(Array.isArray(path), "module path must be a string or an Array.");
- assert(path.length > 0, 'cannot register the root module by using registerModule.');
- }
- this._modules.register(path, rawModule);
- installModule(this, this.state, path, this._modules.get(path), options.preserveState);
- // reset store to update getters...
- resetStoreVM(this, this.state);
- };
- Store.prototype.unregisterModule = function unregisterModule (path) {
- var this$1 = this;
- if (typeof path === 'string') { path = [path]; }
- if (true) {
- assert(Array.isArray(path), "module path must be a string or an Array.");
- }
- this._modules.unregister(path);
- this._withCommit(function () {
- var parentState = getNestedState(this$1.state, path.slice(0, -1));
- Vue.delete(parentState, path[path.length - 1]);
- });
- resetStore(this);
- };
- Store.prototype.hotUpdate = function hotUpdate (newOptions) {
- this._modules.update(newOptions);
- resetStore(this, true);
- };
- Store.prototype._withCommit = function _withCommit (fn) {
- var committing = this._committing;
- this._committing = true;
- fn();
- this._committing = committing;
- };
- Object.defineProperties( Store.prototype, prototypeAccessors );
- function genericSubscribe (fn, subs) {
- if (subs.indexOf(fn) < 0) {
- subs.push(fn);
- }
- return function () {
- var i = subs.indexOf(fn);
- if (i > -1) {
- subs.splice(i, 1);
- }
- }
- }
- function resetStore (store, hot) {
- store._actions = Object.create(null);
- store._mutations = Object.create(null);
- store._wrappedGetters = Object.create(null);
- store._modulesNamespaceMap = Object.create(null);
- var state = store.state;
- // init all modules
- installModule(store, state, [], store._modules.root, true);
- // reset vm
- resetStoreVM(store, state, hot);
- }
- function resetStoreVM (store, state, hot) {
- var oldVm = store._vm;
- // bind store public getters
- store.getters = {};
- var wrappedGetters = store._wrappedGetters;
- var computed = {};
- forEachValue(wrappedGetters, function (fn, key) {
- // use computed to leverage its lazy-caching mechanism
- computed[key] = function () { return fn(store); };
- Object.defineProperty(store.getters, key, {
- get: function () { return store._vm[key]; },
- enumerable: true // for local getters
- });
- });
- // use a Vue instance to store the state tree
- // suppress warnings just in case the user has added
- // some funky global mixins
- var silent = Vue.config.silent;
- Vue.config.silent = true;
- store._vm = new Vue({
- data: {
- $$state: state
- },
- computed: computed
- });
- Vue.config.silent = silent;
- // enable strict mode for new vm
- if (store.strict) {
- enableStrictMode(store);
- }
- if (oldVm) {
- if (hot) {
- // dispatch changes in all subscribed watchers
- // to force getter re-evaluation for hot reloading.
- store._withCommit(function () {
- oldVm._data.$$state = null;
- });
- }
- Vue.nextTick(function () { return oldVm.$destroy(); });
- }
- }
- function installModule (store, rootState, path, module, hot) {
- var isRoot = !path.length;
- var namespace = store._modules.getNamespace(path);
- // register in namespace map
- if (module.namespaced) {
- store._modulesNamespaceMap[namespace] = module;
- }
- // set state
- if (!isRoot && !hot) {
- var parentState = getNestedState(rootState, path.slice(0, -1));
- var moduleName = path[path.length - 1];
- store._withCommit(function () {
- Vue.set(parentState, moduleName, module.state);
- });
- }
- var local = module.context = makeLocalContext(store, namespace, path);
- module.forEachMutation(function (mutation, key) {
- var namespacedType = namespace + key;
- registerMutation(store, namespacedType, mutation, local);
- });
- module.forEachAction(function (action, key) {
- var type = action.root ? key : namespace + key;
- var handler = action.handler || action;
- registerAction(store, type, handler, local);
- });
- module.forEachGetter(function (getter, key) {
- var namespacedType = namespace + key;
- registerGetter(store, namespacedType, getter, local);
- });
- module.forEachChild(function (child, key) {
- installModule(store, rootState, path.concat(key), child, hot);
- });
- }
- /**
- * make localized dispatch, commit, getters and state
- * if there is no namespace, just use root ones
- */
- function makeLocalContext (store, namespace, path) {
- var noNamespace = namespace === '';
- var local = {
- dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {
- var args = unifyObjectStyle(_type, _payload, _options);
- var payload = args.payload;
- var options = args.options;
- var type = args.type;
- if (!options || !options.root) {
- type = namespace + type;
- if ( true && !store._actions[type]) {
- console.error(("[vuex] unknown local action type: " + (args.type) + ", global type: " + type));
- return
- }
- }
- return store.dispatch(type, payload)
- },
- commit: noNamespace ? store.commit : function (_type, _payload, _options) {
- var args = unifyObjectStyle(_type, _payload, _options);
- var payload = args.payload;
- var options = args.options;
- var type = args.type;
- if (!options || !options.root) {
- type = namespace + type;
- if ( true && !store._mutations[type]) {
- console.error(("[vuex] unknown local mutation type: " + (args.type) + ", global type: " + type));
- return
- }
- }
- store.commit(type, payload, options);
- }
- };
- // getters and state object must be gotten lazily
- // because they will be changed by vm update
- Object.defineProperties(local, {
- getters: {
- get: noNamespace
- ? function () { return store.getters; }
- : function () { return makeLocalGetters(store, namespace); }
- },
- state: {
- get: function () { return getNestedState(store.state, path); }
- }
- });
- return local
- }
- function makeLocalGetters (store, namespace) {
- var gettersProxy = {};
- var splitPos = namespace.length;
- Object.keys(store.getters).forEach(function (type) {
- // skip if the target getter is not match this namespace
- if (type.slice(0, splitPos) !== namespace) { return }
- // extract local getter type
- var localType = type.slice(splitPos);
- // Add a port to the getters proxy.
- // Define as getter property because
- // we do not want to evaluate the getters in this time.
- Object.defineProperty(gettersProxy, localType, {
- get: function () { return store.getters[type]; },
- enumerable: true
- });
- });
- return gettersProxy
- }
- function registerMutation (store, type, handler, local) {
- var entry = store._mutations[type] || (store._mutations[type] = []);
- entry.push(function wrappedMutationHandler (payload) {
- handler.call(store, local.state, payload);
- });
- }
- function registerAction (store, type, handler, local) {
- var entry = store._actions[type] || (store._actions[type] = []);
- entry.push(function wrappedActionHandler (payload, cb) {
- var res = handler.call(store, {
- dispatch: local.dispatch,
- commit: local.commit,
- getters: local.getters,
- state: local.state,
- rootGetters: store.getters,
- rootState: store.state
- }, payload, cb);
- if (!isPromise(res)) {
- res = Promise.resolve(res);
- }
- if (store._devtoolHook) {
- return res.catch(function (err) {
- store._devtoolHook.emit('vuex:error', err);
- throw err
- })
- } else {
- return res
- }
- });
- }
- function registerGetter (store, type, rawGetter, local) {
- if (store._wrappedGetters[type]) {
- if (true) {
- console.error(("[vuex] duplicate getter key: " + type));
- }
- return
- }
- store._wrappedGetters[type] = function wrappedGetter (store) {
- return rawGetter(
- local.state, // local state
- local.getters, // local getters
- store.state, // root state
- store.getters // root getters
- )
- };
- }
- function enableStrictMode (store) {
- store._vm.$watch(function () { return this._data.$$state }, function () {
- if (true) {
- assert(store._committing, "Do not mutate vuex store state outside mutation handlers.");
- }
- }, { deep: true, sync: true });
- }
- function getNestedState (state, path) {
- return path.length
- ? path.reduce(function (state, key) { return state[key]; }, state)
- : state
- }
- function unifyObjectStyle (type, payload, options) {
- if (isObject(type) && type.type) {
- options = payload;
- payload = type;
- type = type.type;
- }
- if (true) {
- assert(typeof type === 'string', ("Expects string as the type, but found " + (typeof type) + "."));
- }
- return { type: type, payload: payload, options: options }
- }
- function install (_Vue) {
- if (Vue && _Vue === Vue) {
- if (true) {
- console.error(
- '[vuex] already installed. Vue.use(Vuex) should be called only once.'
- );
- }
- return
- }
- Vue = _Vue;
- applyMixin(Vue);
- }
- var mapState = normalizeNamespace(function (namespace, states) {
- var res = {};
- normalizeMap(states).forEach(function (ref) {
- var key = ref.key;
- var val = ref.val;
- res[key] = function mappedState () {
- var state = this.$store.state;
- var getters = this.$store.getters;
- if (namespace) {
- var module = getModuleByNamespace(this.$store, 'mapState', namespace);
- if (!module) {
- return
- }
- state = module.context.state;
- getters = module.context.getters;
- }
- return typeof val === 'function'
- ? val.call(this, state, getters)
- : state[val]
- };
- // mark vuex getter for devtools
- res[key].vuex = true;
- });
- return res
- });
- var mapMutations = normalizeNamespace(function (namespace, mutations) {
- var res = {};
- normalizeMap(mutations).forEach(function (ref) {
- var key = ref.key;
- var val = ref.val;
- res[key] = function mappedMutation () {
- var args = [], len = arguments.length;
- while ( len-- ) args[ len ] = arguments[ len ];
- var commit = this.$store.commit;
- if (namespace) {
- var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);
- if (!module) {
- return
- }
- commit = module.context.commit;
- }
- return typeof val === 'function'
- ? val.apply(this, [commit].concat(args))
- : commit.apply(this.$store, [val].concat(args))
- };
- });
- return res
- });
- var mapGetters = normalizeNamespace(function (namespace, getters) {
- var res = {};
- normalizeMap(getters).forEach(function (ref) {
- var key = ref.key;
- var val = ref.val;
- val = namespace + val;
- res[key] = function mappedGetter () {
- if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {
- return
- }
- if ( true && !(val in this.$store.getters)) {
- console.error(("[vuex] unknown getter: " + val));
- return
- }
- return this.$store.getters[val]
- };
- // mark vuex getter for devtools
- res[key].vuex = true;
- });
- return res
- });
- var mapActions = normalizeNamespace(function (namespace, actions) {
- var res = {};
- normalizeMap(actions).forEach(function (ref) {
- var key = ref.key;
- var val = ref.val;
- res[key] = function mappedAction () {
- var args = [], len = arguments.length;
- while ( len-- ) args[ len ] = arguments[ len ];
- var dispatch = this.$store.dispatch;
- if (namespace) {
- var module = getModuleByNamespace(this.$store, 'mapActions', namespace);
- if (!module) {
- return
- }
- dispatch = module.context.dispatch;
- }
- return typeof val === 'function'
- ? val.apply(this, [dispatch].concat(args))
- : dispatch.apply(this.$store, [val].concat(args))
- };
- });
- return res
- });
- var createNamespacedHelpers = function (namespace) { return ({
- mapState: mapState.bind(null, namespace),
- mapGetters: mapGetters.bind(null, namespace),
- mapMutations: mapMutations.bind(null, namespace),
- mapActions: mapActions.bind(null, namespace)
- }); };
- function normalizeMap (map) {
- return Array.isArray(map)
- ? map.map(function (key) { return ({ key: key, val: key }); })
- : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })
- }
- function normalizeNamespace (fn) {
- return function (namespace, map) {
- if (typeof namespace !== 'string') {
- map = namespace;
- namespace = '';
- } else if (namespace.charAt(namespace.length - 1) !== '/') {
- namespace += '/';
- }
- return fn(namespace, map)
- }
- }
- function getModuleByNamespace (store, helper, namespace) {
- var module = store._modulesNamespaceMap[namespace];
- if ( true && !module) {
- console.error(("[vuex] module namespace not found in " + helper + "(): " + namespace));
- }
- return module
- }
- var index_esm = {
- Store: Store,
- install: install,
- version: '3.0.1',
- mapState: mapState,
- mapMutations: mapMutations,
- mapGetters: mapGetters,
- mapActions: mapActions,
- createNamespacedHelpers: createNamespacedHelpers
- };
- /* harmony default export */ __webpack_exports__["default"] = (index_esm);
- /***/ }),
- /***/ 15:
- /*!**********************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js ***!
- \**********************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
- /* globals __VUE_SSR_CONTEXT__ */
- // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
- // This module is a runtime utility for cleaner component module output and will
- // be included in the final webpack user bundle.
- function normalizeComponent (
- scriptExports,
- render,
- staticRenderFns,
- functionalTemplate,
- injectStyles,
- scopeId,
- moduleIdentifier, /* server only */
- shadowMode, /* vue-cli only */
- components, // fixed by xxxxxx auto components
- renderjs // fixed by xxxxxx renderjs
- ) {
- // Vue.extend constructor export interop
- var options = typeof scriptExports === 'function'
- ? scriptExports.options
- : scriptExports
- // fixed by xxxxxx auto components
- if (components) {
- if (!options.components) {
- options.components = {}
- }
- var hasOwn = Object.prototype.hasOwnProperty
- for (var name in components) {
- if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {
- options.components[name] = components[name]
- }
- }
- }
- // fixed by xxxxxx renderjs
- if (renderjs) {
- (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {
- this[renderjs.__module] = this
- });
- (options.mixins || (options.mixins = [])).push(renderjs)
- }
- // render functions
- if (render) {
- options.render = render
- options.staticRenderFns = staticRenderFns
- options._compiled = true
- }
- // functional template
- if (functionalTemplate) {
- options.functional = true
- }
- // scopedId
- if (scopeId) {
- options._scopeId = 'data-v-' + scopeId
- }
- var hook
- if (moduleIdentifier) { // server build
- hook = function (context) {
- // 2.3 injection
- context =
- context || // cached call
- (this.$vnode && this.$vnode.ssrContext) || // stateful
- (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
- // 2.2 with runInNewContext: true
- if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
- context = __VUE_SSR_CONTEXT__
- }
- // inject component styles
- if (injectStyles) {
- injectStyles.call(this, context)
- }
- // register component module identifier for async chunk inferrence
- if (context && context._registeredComponents) {
- context._registeredComponents.add(moduleIdentifier)
- }
- }
- // used by ssr in case component is cached and beforeCreate
- // never gets called
- options._ssrRegister = hook
- } else if (injectStyles) {
- hook = shadowMode
- ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
- : injectStyles
- }
- if (hook) {
- if (options.functional) {
- // for template-only hot-reload because in that case the render fn doesn't
- // go through the normalizer
- options._injectStyles = hook
- // register for functioal component in vue file
- var originalRender = options.render
- options.render = function renderWithStyleInjection (h, context) {
- hook.call(context)
- return originalRender(h, context)
- }
- } else {
- // inject component registration as beforeCreate hook
- var existing = options.beforeCreate
- options.beforeCreate = existing
- ? [].concat(existing, hook)
- : [hook]
- }
- }
- return {
- exports: scriptExports,
- options: options
- }
- }
- /***/ }),
- /***/ 16:
- /*!******************************************!*\
- !*** D:/uinapp/myuinapp/store/logion.js ***!
- \******************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- /* WEBPACK VAR INJECTION */(function(uni) {Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));
- var _vuex = _interopRequireDefault(__webpack_require__(/*! vuex */ 12));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}
- _vue.default.use(_vuex.default);
- var store = new _vuex.default.Store({
- state: {
- hasLogin: false, //是否授权
- sessionId: '',
- //showModal: false, //登录授权弹窗
- userInfo: {} },
- mutations: {
- login: function login(state, provider) {
- //state.hasLogin = true;
- state.userInfo = provider;
- uni.setStorage({ //缓存用户登陆信息
- key: 'userInfo',
- data: provider });
- console.log(state.userInfo);
- },
- setOpenid: function setOpenid(state, provider) {
- state.sessionId = provider;
- uni.setStorage({ //缓存用户登陆状态
- key: 'sessionId',
- data: provider });
- },
- showDialog: function showDialog(state, status) {
- state.hasLogin = status;
- uni.setStorage({
- key: 'hasLogin',
- data: status });
- console.log(state.hasLogin);
- },
- logout: function logout(state) {
- state.hasLogin = false;
- state.userInfo = {};
- state.sessionId = '';
- uni.removeStorage({
- key: 'userInfo' });
- uni.removeStorage({
- key: 'sessionId' });
- } }
- // actions: {
- // // lazy loading openid
- // getUserOpenId: async function ({
- // commit,
- // state
- // }) {
- // return await new Promise((resolve, reject) => {
- // if (state.openid) {
- // resolve(state.openid)
- // } else {
- // uni.login({
- // success: (data) => {
- // commit('login')
- // setTimeout(function () { //模拟异步请求服务器获取 openid
- // const openid = '123456789'
- // commit('setOpenid', openid)
- // resolve(openid)
- // }, 1000)
- // },
- // fail: (err) => {
- // console.log('uni.login 接口调用失败,将无法正常使用开放接口等服务', err)
- // reject(err)
- // }
- // })
- // }
- // })
- // }
- // }
- });var _default =
- store;exports.default = _default;
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
- /***/ }),
- /***/ 17:
- /*!********************************************!*\
- !*** D:/uinapp/myuinapp/common/request.js ***!
- \********************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- /* WEBPACK VAR INJECTION */(function(uni) {Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _new_file = _interopRequireDefault(__webpack_require__(/*! ./new_file.js */ 18));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}
- var request = function request(options) {
- options.url = _new_file.default + options.url;
- try {
- // 获取放入缓存的字段token obj.header["token"] = userToken;
- // const token = uni.getStorageSync('sessionId');
- var token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvd3d3LnF6YWl3YW5nLmNvbSIsImlhdCI6MTU4OTMzNTEyOCwiZXhwIjoxNTkwMTk5MTI4LCJuYmYiOjE1ODkzMzUxMjgsInN1YiI6MTYsInBydiI6ImU5YTM5YzhhZjYwMWYyNGMzZjA3ZjQ0NjMyMmE1NmM4MDVjNWNkZTYifQ.Uec3pKa_Btj0u_6qR95YK_MzyhL9gEcczRd3FpG9xUg';
- if (token) {// 如果存在token 配置请求头
- options.header = {
- 'X-TOKEN': token,
- 'Content-Type': 'application/x-www-form-urlencoded' };
- } else {// 不存在token 跳转至登录
- return;
- }
- } catch (err) {
- console.log(err);
- }
- // 这里对response进行处理,
- // 401表示登录状态过期,需重新登录
- options.complete = function (response) {
- console.log(response);
- if (response.data.code != 1000) {
- uni.showToast({
- title: response.data.msg,
- duration: 2000,
- icon: 'none' });
- }
- return;
- };
- return uni.request(options);
- };var _default =
- request;exports.default = _default;
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
- /***/ }),
- /***/ 18:
- /*!*********************************************!*\
- !*** D:/uinapp/myuinapp/common/new_file.js ***!
- \*********************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var baseUrl = "";
- if (false) {} else {
- // 开发环境
- baseUrl = 'https://www.qzaiwang.com';
- }var _default =
- baseUrl;exports.default = _default;
- /***/ }),
- /***/ 2:
- /*!******************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js ***!
- \******************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* WEBPACK VAR INJECTION */(function(global) {/*!
- * Vue.js v2.6.11
- * (c) 2014-2020 Evan You
- * Released under the MIT License.
- */
- /* */
- var emptyObject = Object.freeze({});
- // These helpers produce better VM code in JS engines due to their
- // explicitness and function inlining.
- function isUndef (v) {
- return v === undefined || v === null
- }
- function isDef (v) {
- return v !== undefined && v !== null
- }
- function isTrue (v) {
- return v === true
- }
- function isFalse (v) {
- return v === false
- }
- /**
- * Check if value is primitive.
- */
- function isPrimitive (value) {
- return (
- typeof value === 'string' ||
- typeof value === 'number' ||
- // $flow-disable-line
- typeof value === 'symbol' ||
- typeof value === 'boolean'
- )
- }
- /**
- * Quick object check - this is primarily used to tell
- * Objects from primitive values when we know the value
- * is a JSON-compliant type.
- */
- function isObject (obj) {
- return obj !== null && typeof obj === 'object'
- }
- /**
- * Get the raw type string of a value, e.g., [object Object].
- */
- var _toString = Object.prototype.toString;
- function toRawType (value) {
- return _toString.call(value).slice(8, -1)
- }
- /**
- * Strict object type check. Only returns true
- * for plain JavaScript objects.
- */
- function isPlainObject (obj) {
- return _toString.call(obj) === '[object Object]'
- }
- function isRegExp (v) {
- return _toString.call(v) === '[object RegExp]'
- }
- /**
- * Check if val is a valid array index.
- */
- function isValidArrayIndex (val) {
- var n = parseFloat(String(val));
- return n >= 0 && Math.floor(n) === n && isFinite(val)
- }
- function isPromise (val) {
- return (
- isDef(val) &&
- typeof val.then === 'function' &&
- typeof val.catch === 'function'
- )
- }
- /**
- * Convert a value to a string that is actually rendered.
- */
- function toString (val) {
- return val == null
- ? ''
- : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)
- ? JSON.stringify(val, null, 2)
- : String(val)
- }
- /**
- * Convert an input value to a number for persistence.
- * If the conversion fails, return original string.
- */
- function toNumber (val) {
- var n = parseFloat(val);
- return isNaN(n) ? val : n
- }
- /**
- * Make a map and return a function for checking if a key
- * is in that map.
- */
- function makeMap (
- str,
- expectsLowerCase
- ) {
- var map = Object.create(null);
- var list = str.split(',');
- for (var i = 0; i < list.length; i++) {
- map[list[i]] = true;
- }
- return expectsLowerCase
- ? function (val) { return map[val.toLowerCase()]; }
- : function (val) { return map[val]; }
- }
- /**
- * Check if a tag is a built-in tag.
- */
- var isBuiltInTag = makeMap('slot,component', true);
- /**
- * Check if an attribute is a reserved attribute.
- */
- var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');
- /**
- * Remove an item from an array.
- */
- function remove (arr, item) {
- if (arr.length) {
- var index = arr.indexOf(item);
- if (index > -1) {
- return arr.splice(index, 1)
- }
- }
- }
- /**
- * Check whether an object has the property.
- */
- var hasOwnProperty = Object.prototype.hasOwnProperty;
- function hasOwn (obj, key) {
- return hasOwnProperty.call(obj, key)
- }
- /**
- * Create a cached version of a pure function.
- */
- function cached (fn) {
- var cache = Object.create(null);
- return (function cachedFn (str) {
- var hit = cache[str];
- return hit || (cache[str] = fn(str))
- })
- }
- /**
- * Camelize a hyphen-delimited string.
- */
- var camelizeRE = /-(\w)/g;
- var camelize = cached(function (str) {
- return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
- });
- /**
- * Capitalize a string.
- */
- var capitalize = cached(function (str) {
- return str.charAt(0).toUpperCase() + str.slice(1)
- });
- /**
- * Hyphenate a camelCase string.
- */
- var hyphenateRE = /\B([A-Z])/g;
- var hyphenate = cached(function (str) {
- return str.replace(hyphenateRE, '-$1').toLowerCase()
- });
- /**
- * Simple bind polyfill for environments that do not support it,
- * e.g., PhantomJS 1.x. Technically, we don't need this anymore
- * since native bind is now performant enough in most browsers.
- * But removing it would mean breaking code that was able to run in
- * PhantomJS 1.x, so this must be kept for backward compatibility.
- */
- /* istanbul ignore next */
- function polyfillBind (fn, ctx) {
- function boundFn (a) {
- var l = arguments.length;
- return l
- ? l > 1
- ? fn.apply(ctx, arguments)
- : fn.call(ctx, a)
- : fn.call(ctx)
- }
- boundFn._length = fn.length;
- return boundFn
- }
- function nativeBind (fn, ctx) {
- return fn.bind(ctx)
- }
- var bind = Function.prototype.bind
- ? nativeBind
- : polyfillBind;
- /**
- * Convert an Array-like object to a real Array.
- */
- function toArray (list, start) {
- start = start || 0;
- var i = list.length - start;
- var ret = new Array(i);
- while (i--) {
- ret[i] = list[i + start];
- }
- return ret
- }
- /**
- * Mix properties into target object.
- */
- function extend (to, _from) {
- for (var key in _from) {
- to[key] = _from[key];
- }
- return to
- }
- /**
- * Merge an Array of Objects into a single Object.
- */
- function toObject (arr) {
- var res = {};
- for (var i = 0; i < arr.length; i++) {
- if (arr[i]) {
- extend(res, arr[i]);
- }
- }
- return res
- }
- /* eslint-disable no-unused-vars */
- /**
- * Perform no operation.
- * Stubbing args to make Flow happy without leaving useless transpiled code
- * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).
- */
- function noop (a, b, c) {}
- /**
- * Always return false.
- */
- var no = function (a, b, c) { return false; };
- /* eslint-enable no-unused-vars */
- /**
- * Return the same value.
- */
- var identity = function (_) { return _; };
- /**
- * Check if two values are loosely equal - that is,
- * if they are plain objects, do they have the same shape?
- */
- function looseEqual (a, b) {
- if (a === b) { return true }
- var isObjectA = isObject(a);
- var isObjectB = isObject(b);
- if (isObjectA && isObjectB) {
- try {
- var isArrayA = Array.isArray(a);
- var isArrayB = Array.isArray(b);
- if (isArrayA && isArrayB) {
- return a.length === b.length && a.every(function (e, i) {
- return looseEqual(e, b[i])
- })
- } else if (a instanceof Date && b instanceof Date) {
- return a.getTime() === b.getTime()
- } else if (!isArrayA && !isArrayB) {
- var keysA = Object.keys(a);
- var keysB = Object.keys(b);
- return keysA.length === keysB.length && keysA.every(function (key) {
- return looseEqual(a[key], b[key])
- })
- } else {
- /* istanbul ignore next */
- return false
- }
- } catch (e) {
- /* istanbul ignore next */
- return false
- }
- } else if (!isObjectA && !isObjectB) {
- return String(a) === String(b)
- } else {
- return false
- }
- }
- /**
- * Return the first index at which a loosely equal value can be
- * found in the array (if value is a plain object, the array must
- * contain an object of the same shape), or -1 if it is not present.
- */
- function looseIndexOf (arr, val) {
- for (var i = 0; i < arr.length; i++) {
- if (looseEqual(arr[i], val)) { return i }
- }
- return -1
- }
- /**
- * Ensure a function is called only once.
- */
- function once (fn) {
- var called = false;
- return function () {
- if (!called) {
- called = true;
- fn.apply(this, arguments);
- }
- }
- }
- var ASSET_TYPES = [
- 'component',
- 'directive',
- 'filter'
- ];
- var LIFECYCLE_HOOKS = [
- 'beforeCreate',
- 'created',
- 'beforeMount',
- 'mounted',
- 'beforeUpdate',
- 'updated',
- 'beforeDestroy',
- 'destroyed',
- 'activated',
- 'deactivated',
- 'errorCaptured',
- 'serverPrefetch'
- ];
- /* */
- var config = ({
- /**
- * Option merge strategies (used in core/util/options)
- */
- // $flow-disable-line
- optionMergeStrategies: Object.create(null),
- /**
- * Whether to suppress warnings.
- */
- silent: false,
- /**
- * Show production mode tip message on boot?
- */
- productionTip: "development" !== 'production',
- /**
- * Whether to enable devtools
- */
- devtools: "development" !== 'production',
- /**
- * Whether to record perf
- */
- performance: false,
- /**
- * Error handler for watcher errors
- */
- errorHandler: null,
- /**
- * Warn handler for watcher warns
- */
- warnHandler: null,
- /**
- * Ignore certain custom elements
- */
- ignoredElements: [],
- /**
- * Custom user key aliases for v-on
- */
- // $flow-disable-line
- keyCodes: Object.create(null),
- /**
- * Check if a tag is reserved so that it cannot be registered as a
- * component. This is platform-dependent and may be overwritten.
- */
- isReservedTag: no,
- /**
- * Check if an attribute is reserved so that it cannot be used as a component
- * prop. This is platform-dependent and may be overwritten.
- */
- isReservedAttr: no,
- /**
- * Check if a tag is an unknown element.
- * Platform-dependent.
- */
- isUnknownElement: no,
- /**
- * Get the namespace of an element
- */
- getTagNamespace: noop,
- /**
- * Parse the real tag name for the specific platform.
- */
- parsePlatformTagName: identity,
- /**
- * Check if an attribute must be bound using property, e.g. value
- * Platform-dependent.
- */
- mustUseProp: no,
- /**
- * Perform updates asynchronously. Intended to be used by Vue Test Utils
- * This will significantly reduce performance if set to false.
- */
- async: true,
- /**
- * Exposed for legacy reasons
- */
- _lifecycleHooks: LIFECYCLE_HOOKS
- });
- /* */
- /**
- * unicode letters used for parsing html tags, component names and property paths.
- * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
- * skipping \u10000-\uEFFFF due to it freezing up PhantomJS
- */
- 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/;
- /**
- * Check if a string starts with $ or _
- */
- function isReserved (str) {
- var c = (str + '').charCodeAt(0);
- return c === 0x24 || c === 0x5F
- }
- /**
- * Define a property.
- */
- function def (obj, key, val, enumerable) {
- Object.defineProperty(obj, key, {
- value: val,
- enumerable: !!enumerable,
- writable: true,
- configurable: true
- });
- }
- /**
- * Parse simple path.
- */
- var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
- function parsePath (path) {
- if (bailRE.test(path)) {
- return
- }
- var segments = path.split('.');
- return function (obj) {
- for (var i = 0; i < segments.length; i++) {
- if (!obj) { return }
- obj = obj[segments[i]];
- }
- return obj
- }
- }
- /* */
- // can we use __proto__?
- var hasProto = '__proto__' in {};
- // Browser environment sniffing
- var inBrowser = typeof window !== 'undefined';
- var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
- var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
- var UA = inBrowser && window.navigator.userAgent.toLowerCase();
- var isIE = UA && /msie|trident/.test(UA);
- var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
- var isEdge = UA && UA.indexOf('edge/') > 0;
- var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
- var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
- var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
- var isPhantomJS = UA && /phantomjs/.test(UA);
- var isFF = UA && UA.match(/firefox\/(\d+)/);
- // Firefox has a "watch" function on Object.prototype...
- var nativeWatch = ({}).watch;
- if (inBrowser) {
- try {
- var opts = {};
- Object.defineProperty(opts, 'passive', ({
- get: function get () {
- }
- })); // https://github.com/facebook/flow/issues/285
- window.addEventListener('test-passive', null, opts);
- } catch (e) {}
- }
- // this needs to be lazy-evaled because vue may be required before
- // vue-server-renderer can set VUE_ENV
- var _isServer;
- var isServerRendering = function () {
- if (_isServer === undefined) {
- /* istanbul ignore if */
- if (!inBrowser && !inWeex && typeof global !== 'undefined') {
- // detect presence of vue-server-renderer and avoid
- // Webpack shimming the process
- _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';
- } else {
- _isServer = false;
- }
- }
- return _isServer
- };
- // detect devtools
- var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;
- /* istanbul ignore next */
- function isNative (Ctor) {
- return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
- }
- var hasSymbol =
- typeof Symbol !== 'undefined' && isNative(Symbol) &&
- typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
- var _Set;
- /* istanbul ignore if */ // $flow-disable-line
- if (typeof Set !== 'undefined' && isNative(Set)) {
- // use native Set when available.
- _Set = Set;
- } else {
- // a non-standard Set polyfill that only works with primitive keys.
- _Set = /*@__PURE__*/(function () {
- function Set () {
- this.set = Object.create(null);
- }
- Set.prototype.has = function has (key) {
- return this.set[key] === true
- };
- Set.prototype.add = function add (key) {
- this.set[key] = true;
- };
- Set.prototype.clear = function clear () {
- this.set = Object.create(null);
- };
- return Set;
- }());
- }
- /* */
- var warn = noop;
- var tip = noop;
- var generateComponentTrace = (noop); // work around flow check
- var formatComponentName = (noop);
- if (true) {
- var hasConsole = typeof console !== 'undefined';
- var classifyRE = /(?:^|[-_])(\w)/g;
- var classify = function (str) { return str
- .replace(classifyRE, function (c) { return c.toUpperCase(); })
- .replace(/[-_]/g, ''); };
- warn = function (msg, vm) {
- var trace = vm ? generateComponentTrace(vm) : '';
- if (config.warnHandler) {
- config.warnHandler.call(null, msg, vm, trace);
- } else if (hasConsole && (!config.silent)) {
- console.error(("[Vue warn]: " + msg + trace));
- }
- };
- tip = function (msg, vm) {
- if (hasConsole && (!config.silent)) {
- console.warn("[Vue tip]: " + msg + (
- vm ? generateComponentTrace(vm) : ''
- ));
- }
- };
- formatComponentName = function (vm, includeFile) {
- {
- if(vm.$scope && vm.$scope.is){
- return vm.$scope.is
- }
- }
- if (vm.$root === vm) {
- return '<Root>'
- }
- var options = typeof vm === 'function' && vm.cid != null
- ? vm.options
- : vm._isVue
- ? vm.$options || vm.constructor.options
- : vm;
- var name = options.name || options._componentTag;
- var file = options.__file;
- if (!name && file) {
- var match = file.match(/([^/\\]+)\.vue$/);
- name = match && match[1];
- }
- return (
- (name ? ("<" + (classify(name)) + ">") : "<Anonymous>") +
- (file && includeFile !== false ? (" at " + file) : '')
- )
- };
- var repeat = function (str, n) {
- var res = '';
- while (n) {
- if (n % 2 === 1) { res += str; }
- if (n > 1) { str += str; }
- n >>= 1;
- }
- return res
- };
- generateComponentTrace = function (vm) {
- if (vm._isVue && vm.$parent) {
- var tree = [];
- var currentRecursiveSequence = 0;
- while (vm) {
- if (tree.length > 0) {
- var last = tree[tree.length - 1];
- if (last.constructor === vm.constructor) {
- currentRecursiveSequence++;
- vm = vm.$parent;
- continue
- } else if (currentRecursiveSequence > 0) {
- tree[tree.length - 1] = [last, currentRecursiveSequence];
- currentRecursiveSequence = 0;
- }
- }
- tree.push(vm);
- vm = vm.$parent;
- }
- return '\n\nfound in\n\n' + tree
- .map(function (vm, i) { return ("" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)
- ? ((formatComponentName(vm[0])) + "... (" + (vm[1]) + " recursive calls)")
- : formatComponentName(vm))); })
- .join('\n')
- } else {
- return ("\n\n(found in " + (formatComponentName(vm)) + ")")
- }
- };
- }
- /* */
- var uid = 0;
- /**
- * A dep is an observable that can have multiple
- * directives subscribing to it.
- */
- var Dep = function Dep () {
- // fixed by xxxxxx (nvue vuex)
- /* eslint-disable no-undef */
- if(typeof SharedObject !== 'undefined'){
- this.id = SharedObject.uid++;
- } else {
- this.id = uid++;
- }
- this.subs = [];
- };
- Dep.prototype.addSub = function addSub (sub) {
- this.subs.push(sub);
- };
- Dep.prototype.removeSub = function removeSub (sub) {
- remove(this.subs, sub);
- };
- Dep.prototype.depend = function depend () {
- if (Dep.SharedObject.target) {
- Dep.SharedObject.target.addDep(this);
- }
- };
- Dep.prototype.notify = function notify () {
- // stabilize the subscriber list first
- var subs = this.subs.slice();
- if ( true && !config.async) {
- // subs aren't sorted in scheduler if not running async
- // we need to sort them now to make sure they fire in correct
- // order
- subs.sort(function (a, b) { return a.id - b.id; });
- }
- for (var i = 0, l = subs.length; i < l; i++) {
- subs[i].update();
- }
- };
- // The current target watcher being evaluated.
- // This is globally unique because only one watcher
- // can be evaluated at a time.
- // fixed by xxxxxx (nvue shared vuex)
- /* eslint-disable no-undef */
- Dep.SharedObject = typeof SharedObject !== 'undefined' ? SharedObject : {};
- Dep.SharedObject.target = null;
- Dep.SharedObject.targetStack = [];
- function pushTarget (target) {
- Dep.SharedObject.targetStack.push(target);
- Dep.SharedObject.target = target;
- }
- function popTarget () {
- Dep.SharedObject.targetStack.pop();
- Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];
- }
- /* */
- var VNode = function VNode (
- tag,
- data,
- children,
- text,
- elm,
- context,
- componentOptions,
- asyncFactory
- ) {
- this.tag = tag;
- this.data = data;
- this.children = children;
- this.text = text;
- this.elm = elm;
- this.ns = undefined;
- this.context = context;
- this.fnContext = undefined;
- this.fnOptions = undefined;
- this.fnScopeId = undefined;
- this.key = data && data.key;
- this.componentOptions = componentOptions;
- this.componentInstance = undefined;
- this.parent = undefined;
- this.raw = false;
- this.isStatic = false;
- this.isRootInsert = true;
- this.isComment = false;
- this.isCloned = false;
- this.isOnce = false;
- this.asyncFactory = asyncFactory;
- this.asyncMeta = undefined;
- this.isAsyncPlaceholder = false;
- };
- var prototypeAccessors = { child: { configurable: true } };
- // DEPRECATED: alias for componentInstance for backwards compat.
- /* istanbul ignore next */
- prototypeAccessors.child.get = function () {
- return this.componentInstance
- };
- Object.defineProperties( VNode.prototype, prototypeAccessors );
- var createEmptyVNode = function (text) {
- if ( text === void 0 ) text = '';
- var node = new VNode();
- node.text = text;
- node.isComment = true;
- return node
- };
- function createTextVNode (val) {
- return new VNode(undefined, undefined, undefined, String(val))
- }
- // optimized shallow clone
- // used for static nodes and slot nodes because they may be reused across
- // multiple renders, cloning them avoids errors when DOM manipulations rely
- // on their elm reference.
- function cloneVNode (vnode) {
- var cloned = new VNode(
- vnode.tag,
- vnode.data,
- // #7975
- // clone children array to avoid mutating original in case of cloning
- // a child.
- vnode.children && vnode.children.slice(),
- vnode.text,
- vnode.elm,
- vnode.context,
- vnode.componentOptions,
- vnode.asyncFactory
- );
- cloned.ns = vnode.ns;
- cloned.isStatic = vnode.isStatic;
- cloned.key = vnode.key;
- cloned.isComment = vnode.isComment;
- cloned.fnContext = vnode.fnContext;
- cloned.fnOptions = vnode.fnOptions;
- cloned.fnScopeId = vnode.fnScopeId;
- cloned.asyncMeta = vnode.asyncMeta;
- cloned.isCloned = true;
- return cloned
- }
- /*
- * not type checking this file because flow doesn't play well with
- * dynamically accessing methods on Array prototype
- */
- var arrayProto = Array.prototype;
- var arrayMethods = Object.create(arrayProto);
- var methodsToPatch = [
- 'push',
- 'pop',
- 'shift',
- 'unshift',
- 'splice',
- 'sort',
- 'reverse'
- ];
- /**
- * Intercept mutating methods and emit events
- */
- methodsToPatch.forEach(function (method) {
- // cache original method
- var original = arrayProto[method];
- def(arrayMethods, method, function mutator () {
- var args = [], len = arguments.length;
- while ( len-- ) args[ len ] = arguments[ len ];
- var result = original.apply(this, args);
- var ob = this.__ob__;
- var inserted;
- switch (method) {
- case 'push':
- case 'unshift':
- inserted = args;
- break
- case 'splice':
- inserted = args.slice(2);
- break
- }
- if (inserted) { ob.observeArray(inserted); }
- // notify change
- ob.dep.notify();
- return result
- });
- });
- /* */
- var arrayKeys = Object.getOwnPropertyNames(arrayMethods);
- /**
- * In some cases we may want to disable observation inside a component's
- * update computation.
- */
- var shouldObserve = true;
- function toggleObserving (value) {
- shouldObserve = value;
- }
- /**
- * Observer class that is attached to each observed
- * object. Once attached, the observer converts the target
- * object's property keys into getter/setters that
- * collect dependencies and dispatch updates.
- */
- var Observer = function Observer (value) {
- this.value = value;
- this.dep = new Dep();
- this.vmCount = 0;
- def(value, '__ob__', this);
- if (Array.isArray(value)) {
- if (hasProto) {
- {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑
- if(value.push !== value.__proto__.push){
- copyAugment(value, arrayMethods, arrayKeys);
- } else {
- protoAugment(value, arrayMethods);
- }
- }
- } else {
- copyAugment(value, arrayMethods, arrayKeys);
- }
- this.observeArray(value);
- } else {
- this.walk(value);
- }
- };
- /**
- * Walk through all properties and convert them into
- * getter/setters. This method should only be called when
- * value type is Object.
- */
- Observer.prototype.walk = function walk (obj) {
- var keys = Object.keys(obj);
- for (var i = 0; i < keys.length; i++) {
- defineReactive$$1(obj, keys[i]);
- }
- };
- /**
- * Observe a list of Array items.
- */
- Observer.prototype.observeArray = function observeArray (items) {
- for (var i = 0, l = items.length; i < l; i++) {
- observe(items[i]);
- }
- };
- // helpers
- /**
- * Augment a target Object or Array by intercepting
- * the prototype chain using __proto__
- */
- function protoAugment (target, src) {
- /* eslint-disable no-proto */
- target.__proto__ = src;
- /* eslint-enable no-proto */
- }
- /**
- * Augment a target Object or Array by defining
- * hidden properties.
- */
- /* istanbul ignore next */
- function copyAugment (target, src, keys) {
- for (var i = 0, l = keys.length; i < l; i++) {
- var key = keys[i];
- def(target, key, src[key]);
- }
- }
- /**
- * Attempt to create an observer instance for a value,
- * returns the new observer if successfully observed,
- * or the existing observer if the value already has one.
- */
- function observe (value, asRootData) {
- if (!isObject(value) || value instanceof VNode) {
- return
- }
- var ob;
- if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
- ob = value.__ob__;
- } else if (
- shouldObserve &&
- !isServerRendering() &&
- (Array.isArray(value) || isPlainObject(value)) &&
- Object.isExtensible(value) &&
- !value._isVue
- ) {
- ob = new Observer(value);
- }
- if (asRootData && ob) {
- ob.vmCount++;
- }
- return ob
- }
- /**
- * Define a reactive property on an Object.
- */
- function defineReactive$$1 (
- obj,
- key,
- val,
- customSetter,
- shallow
- ) {
- var dep = new Dep();
- var property = Object.getOwnPropertyDescriptor(obj, key);
- if (property && property.configurable === false) {
- return
- }
- // cater for pre-defined getter/setters
- var getter = property && property.get;
- var setter = property && property.set;
- if ((!getter || setter) && arguments.length === 2) {
- val = obj[key];
- }
- var childOb = !shallow && observe(val);
- Object.defineProperty(obj, key, {
- enumerable: true,
- configurable: true,
- get: function reactiveGetter () {
- var value = getter ? getter.call(obj) : val;
- if (Dep.SharedObject.target) { // fixed by xxxxxx
- dep.depend();
- if (childOb) {
- childOb.dep.depend();
- if (Array.isArray(value)) {
- dependArray(value);
- }
- }
- }
- return value
- },
- set: function reactiveSetter (newVal) {
- var value = getter ? getter.call(obj) : val;
- /* eslint-disable no-self-compare */
- if (newVal === value || (newVal !== newVal && value !== value)) {
- return
- }
- /* eslint-enable no-self-compare */
- if ( true && customSetter) {
- customSetter();
- }
- // #7981: for accessor properties without setter
- if (getter && !setter) { return }
- if (setter) {
- setter.call(obj, newVal);
- } else {
- val = newVal;
- }
- childOb = !shallow && observe(newVal);
- dep.notify();
- }
- });
- }
- /**
- * Set a property on an object. Adds the new property and
- * triggers change notification if the property doesn't
- * already exist.
- */
- function set (target, key, val) {
- if ( true &&
- (isUndef(target) || isPrimitive(target))
- ) {
- warn(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
- }
- if (Array.isArray(target) && isValidArrayIndex(key)) {
- target.length = Math.max(target.length, key);
- target.splice(key, 1, val);
- return val
- }
- if (key in target && !(key in Object.prototype)) {
- target[key] = val;
- return val
- }
- var ob = (target).__ob__;
- if (target._isVue || (ob && ob.vmCount)) {
- true && warn(
- 'Avoid adding reactive properties to a Vue instance or its root $data ' +
- 'at runtime - declare it upfront in the data option.'
- );
- return val
- }
- if (!ob) {
- target[key] = val;
- return val
- }
- defineReactive$$1(ob.value, key, val);
- ob.dep.notify();
- return val
- }
- /**
- * Delete a property and trigger change if necessary.
- */
- function del (target, key) {
- if ( true &&
- (isUndef(target) || isPrimitive(target))
- ) {
- warn(("Cannot delete reactive property on undefined, null, or primitive value: " + ((target))));
- }
- if (Array.isArray(target) && isValidArrayIndex(key)) {
- target.splice(key, 1);
- return
- }
- var ob = (target).__ob__;
- if (target._isVue || (ob && ob.vmCount)) {
- true && warn(
- 'Avoid deleting properties on a Vue instance or its root $data ' +
- '- just set it to null.'
- );
- return
- }
- if (!hasOwn(target, key)) {
- return
- }
- delete target[key];
- if (!ob) {
- return
- }
- ob.dep.notify();
- }
- /**
- * Collect dependencies on array elements when the array is touched, since
- * we cannot intercept array element access like property getters.
- */
- function dependArray (value) {
- for (var e = (void 0), i = 0, l = value.length; i < l; i++) {
- e = value[i];
- e && e.__ob__ && e.__ob__.dep.depend();
- if (Array.isArray(e)) {
- dependArray(e);
- }
- }
- }
- /* */
- /**
- * Option overwriting strategies are functions that handle
- * how to merge a parent option value and a child option
- * value into the final value.
- */
- var strats = config.optionMergeStrategies;
- /**
- * Options with restrictions
- */
- if (true) {
- strats.el = strats.propsData = function (parent, child, vm, key) {
- if (!vm) {
- warn(
- "option \"" + key + "\" can only be used during instance " +
- 'creation with the `new` keyword.'
- );
- }
- return defaultStrat(parent, child)
- };
- }
- /**
- * Helper that recursively merges two data objects together.
- */
- function mergeData (to, from) {
- if (!from) { return to }
- var key, toVal, fromVal;
- var keys = hasSymbol
- ? Reflect.ownKeys(from)
- : Object.keys(from);
- for (var i = 0; i < keys.length; i++) {
- key = keys[i];
- // in case the object is already observed...
- if (key === '__ob__') { continue }
- toVal = to[key];
- fromVal = from[key];
- if (!hasOwn(to, key)) {
- set(to, key, fromVal);
- } else if (
- toVal !== fromVal &&
- isPlainObject(toVal) &&
- isPlainObject(fromVal)
- ) {
- mergeData(toVal, fromVal);
- }
- }
- return to
- }
- /**
- * Data
- */
- function mergeDataOrFn (
- parentVal,
- childVal,
- vm
- ) {
- if (!vm) {
- // in a Vue.extend merge, both should be functions
- if (!childVal) {
- return parentVal
- }
- if (!parentVal) {
- return childVal
- }
- // when parentVal & childVal are both present,
- // we need to return a function that returns the
- // merged result of both functions... no need to
- // check if parentVal is a function here because
- // it has to be a function to pass previous merges.
- return function mergedDataFn () {
- return mergeData(
- typeof childVal === 'function' ? childVal.call(this, this) : childVal,
- typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal
- )
- }
- } else {
- return function mergedInstanceDataFn () {
- // instance merge
- var instanceData = typeof childVal === 'function'
- ? childVal.call(vm, vm)
- : childVal;
- var defaultData = typeof parentVal === 'function'
- ? parentVal.call(vm, vm)
- : parentVal;
- if (instanceData) {
- return mergeData(instanceData, defaultData)
- } else {
- return defaultData
- }
- }
- }
- }
- strats.data = function (
- parentVal,
- childVal,
- vm
- ) {
- if (!vm) {
- if (childVal && typeof childVal !== 'function') {
- true && warn(
- 'The "data" option should be a function ' +
- 'that returns a per-instance value in component ' +
- 'definitions.',
- vm
- );
- return parentVal
- }
- return mergeDataOrFn(parentVal, childVal)
- }
- return mergeDataOrFn(parentVal, childVal, vm)
- };
- /**
- * Hooks and props are merged as arrays.
- */
- function mergeHook (
- parentVal,
- childVal
- ) {
- var res = childVal
- ? parentVal
- ? parentVal.concat(childVal)
- : Array.isArray(childVal)
- ? childVal
- : [childVal]
- : parentVal;
- return res
- ? dedupeHooks(res)
- : res
- }
- function dedupeHooks (hooks) {
- var res = [];
- for (var i = 0; i < hooks.length; i++) {
- if (res.indexOf(hooks[i]) === -1) {
- res.push(hooks[i]);
- }
- }
- return res
- }
- LIFECYCLE_HOOKS.forEach(function (hook) {
- strats[hook] = mergeHook;
- });
- /**
- * Assets
- *
- * When a vm is present (instance creation), we need to do
- * a three-way merge between constructor options, instance
- * options and parent options.
- */
- function mergeAssets (
- parentVal,
- childVal,
- vm,
- key
- ) {
- var res = Object.create(parentVal || null);
- if (childVal) {
- true && assertObjectType(key, childVal, vm);
- return extend(res, childVal)
- } else {
- return res
- }
- }
- ASSET_TYPES.forEach(function (type) {
- strats[type + 's'] = mergeAssets;
- });
- /**
- * Watchers.
- *
- * Watchers hashes should not overwrite one
- * another, so we merge them as arrays.
- */
- strats.watch = function (
- parentVal,
- childVal,
- vm,
- key
- ) {
- // work around Firefox's Object.prototype.watch...
- if (parentVal === nativeWatch) { parentVal = undefined; }
- if (childVal === nativeWatch) { childVal = undefined; }
- /* istanbul ignore if */
- if (!childVal) { return Object.create(parentVal || null) }
- if (true) {
- assertObjectType(key, childVal, vm);
- }
- if (!parentVal) { return childVal }
- var ret = {};
- extend(ret, parentVal);
- for (var key$1 in childVal) {
- var parent = ret[key$1];
- var child = childVal[key$1];
- if (parent && !Array.isArray(parent)) {
- parent = [parent];
- }
- ret[key$1] = parent
- ? parent.concat(child)
- : Array.isArray(child) ? child : [child];
- }
- return ret
- };
- /**
- * Other object hashes.
- */
- strats.props =
- strats.methods =
- strats.inject =
- strats.computed = function (
- parentVal,
- childVal,
- vm,
- key
- ) {
- if (childVal && "development" !== 'production') {
- assertObjectType(key, childVal, vm);
- }
- if (!parentVal) { return childVal }
- var ret = Object.create(null);
- extend(ret, parentVal);
- if (childVal) { extend(ret, childVal); }
- return ret
- };
- strats.provide = mergeDataOrFn;
- /**
- * Default strategy.
- */
- var defaultStrat = function (parentVal, childVal) {
- return childVal === undefined
- ? parentVal
- : childVal
- };
- /**
- * Validate component names
- */
- function checkComponents (options) {
- for (var key in options.components) {
- validateComponentName(key);
- }
- }
- function validateComponentName (name) {
- if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
- warn(
- 'Invalid component name: "' + name + '". Component names ' +
- 'should conform to valid custom element name in html5 specification.'
- );
- }
- if (isBuiltInTag(name) || config.isReservedTag(name)) {
- warn(
- 'Do not use built-in or reserved HTML elements as component ' +
- 'id: ' + name
- );
- }
- }
- /**
- * Ensure all props option syntax are normalized into the
- * Object-based format.
- */
- function normalizeProps (options, vm) {
- var props = options.props;
- if (!props) { return }
- var res = {};
- var i, val, name;
- if (Array.isArray(props)) {
- i = props.length;
- while (i--) {
- val = props[i];
- if (typeof val === 'string') {
- name = camelize(val);
- res[name] = { type: null };
- } else if (true) {
- warn('props must be strings when using array syntax.');
- }
- }
- } else if (isPlainObject(props)) {
- for (var key in props) {
- val = props[key];
- name = camelize(key);
- res[name] = isPlainObject(val)
- ? val
- : { type: val };
- }
- } else if (true) {
- warn(
- "Invalid value for option \"props\": expected an Array or an Object, " +
- "but got " + (toRawType(props)) + ".",
- vm
- );
- }
- options.props = res;
- }
- /**
- * Normalize all injections into Object-based format
- */
- function normalizeInject (options, vm) {
- var inject = options.inject;
- if (!inject) { return }
- var normalized = options.inject = {};
- if (Array.isArray(inject)) {
- for (var i = 0; i < inject.length; i++) {
- normalized[inject[i]] = { from: inject[i] };
- }
- } else if (isPlainObject(inject)) {
- for (var key in inject) {
- var val = inject[key];
- normalized[key] = isPlainObject(val)
- ? extend({ from: key }, val)
- : { from: val };
- }
- } else if (true) {
- warn(
- "Invalid value for option \"inject\": expected an Array or an Object, " +
- "but got " + (toRawType(inject)) + ".",
- vm
- );
- }
- }
- /**
- * Normalize raw function directives into object format.
- */
- function normalizeDirectives (options) {
- var dirs = options.directives;
- if (dirs) {
- for (var key in dirs) {
- var def$$1 = dirs[key];
- if (typeof def$$1 === 'function') {
- dirs[key] = { bind: def$$1, update: def$$1 };
- }
- }
- }
- }
- function assertObjectType (name, value, vm) {
- if (!isPlainObject(value)) {
- warn(
- "Invalid value for option \"" + name + "\": expected an Object, " +
- "but got " + (toRawType(value)) + ".",
- vm
- );
- }
- }
- /**
- * Merge two option objects into a new one.
- * Core utility used in both instantiation and inheritance.
- */
- function mergeOptions (
- parent,
- child,
- vm
- ) {
- if (true) {
- checkComponents(child);
- }
- if (typeof child === 'function') {
- child = child.options;
- }
- normalizeProps(child, vm);
- normalizeInject(child, vm);
- normalizeDirectives(child);
- // Apply extends and mixins on the child options,
- // but only if it is a raw options object that isn't
- // the result of another mergeOptions call.
- // Only merged options has the _base property.
- if (!child._base) {
- if (child.extends) {
- parent = mergeOptions(parent, child.extends, vm);
- }
- if (child.mixins) {
- for (var i = 0, l = child.mixins.length; i < l; i++) {
- parent = mergeOptions(parent, child.mixins[i], vm);
- }
- }
- }
- var options = {};
- var key;
- for (key in parent) {
- mergeField(key);
- }
- for (key in child) {
- if (!hasOwn(parent, key)) {
- mergeField(key);
- }
- }
- function mergeField (key) {
- var strat = strats[key] || defaultStrat;
- options[key] = strat(parent[key], child[key], vm, key);
- }
- return options
- }
- /**
- * Resolve an asset.
- * This function is used because child instances need access
- * to assets defined in its ancestor chain.
- */
- function resolveAsset (
- options,
- type,
- id,
- warnMissing
- ) {
- /* istanbul ignore if */
- if (typeof id !== 'string') {
- return
- }
- var assets = options[type];
- // check local registration variations first
- if (hasOwn(assets, id)) { return assets[id] }
- var camelizedId = camelize(id);
- if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }
- var PascalCaseId = capitalize(camelizedId);
- if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }
- // fallback to prototype chain
- var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];
- if ( true && warnMissing && !res) {
- warn(
- 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,
- options
- );
- }
- return res
- }
- /* */
- function validateProp (
- key,
- propOptions,
- propsData,
- vm
- ) {
- var prop = propOptions[key];
- var absent = !hasOwn(propsData, key);
- var value = propsData[key];
- // boolean casting
- var booleanIndex = getTypeIndex(Boolean, prop.type);
- if (booleanIndex > -1) {
- if (absent && !hasOwn(prop, 'default')) {
- value = false;
- } else if (value === '' || value === hyphenate(key)) {
- // only cast empty string / same name to boolean if
- // boolean has higher priority
- var stringIndex = getTypeIndex(String, prop.type);
- if (stringIndex < 0 || booleanIndex < stringIndex) {
- value = true;
- }
- }
- }
- // check default value
- if (value === undefined) {
- value = getPropDefaultValue(vm, prop, key);
- // since the default value is a fresh copy,
- // make sure to observe it.
- var prevShouldObserve = shouldObserve;
- toggleObserving(true);
- observe(value);
- toggleObserving(prevShouldObserve);
- }
- if (
- true
- ) {
- assertProp(prop, key, value, vm, absent);
- }
- return value
- }
- /**
- * Get the default value of a prop.
- */
- function getPropDefaultValue (vm, prop, key) {
- // no default, return undefined
- if (!hasOwn(prop, 'default')) {
- return undefined
- }
- var def = prop.default;
- // warn against non-factory defaults for Object & Array
- if ( true && isObject(def)) {
- warn(
- 'Invalid default value for prop "' + key + '": ' +
- 'Props with type Object/Array must use a factory function ' +
- 'to return the default value.',
- vm
- );
- }
- // the raw prop value was also undefined from previous render,
- // return previous default value to avoid unnecessary watcher trigger
- if (vm && vm.$options.propsData &&
- vm.$options.propsData[key] === undefined &&
- vm._props[key] !== undefined
- ) {
- return vm._props[key]
- }
- // call factory function for non-Function types
- // a value is Function if its prototype is function even across different execution context
- return typeof def === 'function' && getType(prop.type) !== 'Function'
- ? def.call(vm)
- : def
- }
- /**
- * Assert whether a prop is valid.
- */
- function assertProp (
- prop,
- name,
- value,
- vm,
- absent
- ) {
- if (prop.required && absent) {
- warn(
- 'Missing required prop: "' + name + '"',
- vm
- );
- return
- }
- if (value == null && !prop.required) {
- return
- }
- var type = prop.type;
- var valid = !type || type === true;
- var expectedTypes = [];
- if (type) {
- if (!Array.isArray(type)) {
- type = [type];
- }
- for (var i = 0; i < type.length && !valid; i++) {
- var assertedType = assertType(value, type[i]);
- expectedTypes.push(assertedType.expectedType || '');
- valid = assertedType.valid;
- }
- }
- if (!valid) {
- warn(
- getInvalidTypeMessage(name, value, expectedTypes),
- vm
- );
- return
- }
- var validator = prop.validator;
- if (validator) {
- if (!validator(value)) {
- warn(
- 'Invalid prop: custom validator check failed for prop "' + name + '".',
- vm
- );
- }
- }
- }
- var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;
- function assertType (value, type) {
- var valid;
- var expectedType = getType(type);
- if (simpleCheckRE.test(expectedType)) {
- var t = typeof value;
- valid = t === expectedType.toLowerCase();
- // for primitive wrapper objects
- if (!valid && t === 'object') {
- valid = value instanceof type;
- }
- } else if (expectedType === 'Object') {
- valid = isPlainObject(value);
- } else if (expectedType === 'Array') {
- valid = Array.isArray(value);
- } else {
- valid = value instanceof type;
- }
- return {
- valid: valid,
- expectedType: expectedType
- }
- }
- /**
- * Use function string name to check built-in types,
- * because a simple equality check will fail when running
- * across different vms / iframes.
- */
- function getType (fn) {
- var match = fn && fn.toString().match(/^\s*function (\w+)/);
- return match ? match[1] : ''
- }
- function isSameType (a, b) {
- return getType(a) === getType(b)
- }
- function getTypeIndex (type, expectedTypes) {
- if (!Array.isArray(expectedTypes)) {
- return isSameType(expectedTypes, type) ? 0 : -1
- }
- for (var i = 0, len = expectedTypes.length; i < len; i++) {
- if (isSameType(expectedTypes[i], type)) {
- return i
- }
- }
- return -1
- }
- function getInvalidTypeMessage (name, value, expectedTypes) {
- var message = "Invalid prop: type check failed for prop \"" + name + "\"." +
- " Expected " + (expectedTypes.map(capitalize).join(', '));
- var expectedType = expectedTypes[0];
- var receivedType = toRawType(value);
- var expectedValue = styleValue(value, expectedType);
- var receivedValue = styleValue(value, receivedType);
- // check if we need to specify expected value
- if (expectedTypes.length === 1 &&
- isExplicable(expectedType) &&
- !isBoolean(expectedType, receivedType)) {
- message += " with value " + expectedValue;
- }
- message += ", got " + receivedType + " ";
- // check if we need to specify received value
- if (isExplicable(receivedType)) {
- message += "with value " + receivedValue + ".";
- }
- return message
- }
- function styleValue (value, type) {
- if (type === 'String') {
- return ("\"" + value + "\"")
- } else if (type === 'Number') {
- return ("" + (Number(value)))
- } else {
- return ("" + value)
- }
- }
- function isExplicable (value) {
- var explicitTypes = ['string', 'number', 'boolean'];
- return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })
- }
- function isBoolean () {
- var args = [], len = arguments.length;
- while ( len-- ) args[ len ] = arguments[ len ];
- return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })
- }
- /* */
- function handleError (err, vm, info) {
- // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
- // See: https://github.com/vuejs/vuex/issues/1505
- pushTarget();
- try {
- if (vm) {
- var cur = vm;
- while ((cur = cur.$parent)) {
- var hooks = cur.$options.errorCaptured;
- if (hooks) {
- for (var i = 0; i < hooks.length; i++) {
- try {
- var capture = hooks[i].call(cur, err, vm, info) === false;
- if (capture) { return }
- } catch (e) {
- globalHandleError(e, cur, 'errorCaptured hook');
- }
- }
- }
- }
- }
- globalHandleError(err, vm, info);
- } finally {
- popTarget();
- }
- }
- function invokeWithErrorHandling (
- handler,
- context,
- args,
- vm,
- info
- ) {
- var res;
- try {
- res = args ? handler.apply(context, args) : handler.call(context);
- if (res && !res._isVue && isPromise(res) && !res._handled) {
- res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
- // issue #9511
- // avoid catch triggering multiple times when nested calls
- res._handled = true;
- }
- } catch (e) {
- handleError(e, vm, info);
- }
- return res
- }
- function globalHandleError (err, vm, info) {
- if (config.errorHandler) {
- try {
- return config.errorHandler.call(null, err, vm, info)
- } catch (e) {
- // if the user intentionally throws the original error in the handler,
- // do not log it twice
- if (e !== err) {
- logError(e, null, 'config.errorHandler');
- }
- }
- }
- logError(err, vm, info);
- }
- function logError (err, vm, info) {
- if (true) {
- warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
- }
- /* istanbul ignore else */
- if ((inBrowser || inWeex) && typeof console !== 'undefined') {
- console.error(err);
- } else {
- throw err
- }
- }
- /* */
- var callbacks = [];
- var pending = false;
- function flushCallbacks () {
- pending = false;
- var copies = callbacks.slice(0);
- callbacks.length = 0;
- for (var i = 0; i < copies.length; i++) {
- copies[i]();
- }
- }
- // Here we have async deferring wrappers using microtasks.
- // In 2.5 we used (macro) tasks (in combination with microtasks).
- // However, it has subtle problems when state is changed right before repaint
- // (e.g. #6813, out-in transitions).
- // Also, using (macro) tasks in event handler would cause some weird behaviors
- // that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).
- // So we now use microtasks everywhere, again.
- // A major drawback of this tradeoff is that there are some scenarios
- // where microtasks have too high a priority and fire in between supposedly
- // sequential events (e.g. #4521, #6690, which have workarounds)
- // or even between bubbling of the same event (#6566).
- var timerFunc;
- // The nextTick behavior leverages the microtask queue, which can be accessed
- // via either native Promise.then or MutationObserver.
- // MutationObserver has wider support, however it is seriously bugged in
- // UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
- // completely stops working after triggering a few times... so, if native
- // Promise is available, we will use it:
- /* istanbul ignore next, $flow-disable-line */
- if (typeof Promise !== 'undefined' && isNative(Promise)) {
- var p = Promise.resolve();
- timerFunc = function () {
- p.then(flushCallbacks);
- // In problematic UIWebViews, Promise.then doesn't completely break, but
- // it can get stuck in a weird state where callbacks are pushed into the
- // microtask queue but the queue isn't being flushed, until the browser
- // needs to do some other work, e.g. handle a timer. Therefore we can
- // "force" the microtask queue to be flushed by adding an empty timer.
- if (isIOS) { setTimeout(noop); }
- };
- } else if (!isIE && typeof MutationObserver !== 'undefined' && (
- isNative(MutationObserver) ||
- // PhantomJS and iOS 7.x
- MutationObserver.toString() === '[object MutationObserverConstructor]'
- )) {
- // Use MutationObserver where native Promise is not available,
- // e.g. PhantomJS, iOS7, Android 4.4
- // (#6466 MutationObserver is unreliable in IE11)
- var counter = 1;
- var observer = new MutationObserver(flushCallbacks);
- var textNode = document.createTextNode(String(counter));
- observer.observe(textNode, {
- characterData: true
- });
- timerFunc = function () {
- counter = (counter + 1) % 2;
- textNode.data = String(counter);
- };
- } else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
- // Fallback to setImmediate.
- // Technically it leverages the (macro) task queue,
- // but it is still a better choice than setTimeout.
- timerFunc = function () {
- setImmediate(flushCallbacks);
- };
- } else {
- // Fallback to setTimeout.
- timerFunc = function () {
- setTimeout(flushCallbacks, 0);
- };
- }
- function nextTick (cb, ctx) {
- var _resolve;
- callbacks.push(function () {
- if (cb) {
- try {
- cb.call(ctx);
- } catch (e) {
- handleError(e, ctx, 'nextTick');
- }
- } else if (_resolve) {
- _resolve(ctx);
- }
- });
- if (!pending) {
- pending = true;
- timerFunc();
- }
- // $flow-disable-line
- if (!cb && typeof Promise !== 'undefined') {
- return new Promise(function (resolve) {
- _resolve = resolve;
- })
- }
- }
- /* */
- /* not type checking this file because flow doesn't play well with Proxy */
- var initProxy;
- if (true) {
- var allowedGlobals = makeMap(
- 'Infinity,undefined,NaN,isFinite,isNaN,' +
- 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +
- 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +
- 'require' // for Webpack/Browserify
- );
- var warnNonPresent = function (target, key) {
- warn(
- "Property or method \"" + key + "\" is not defined on the instance but " +
- 'referenced during render. Make sure that this property is reactive, ' +
- 'either in the data option, or for class-based components, by ' +
- 'initializing the property. ' +
- 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
- target
- );
- };
- var warnReservedPrefix = function (target, key) {
- warn(
- "Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
- 'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
- 'prevent conflicts with Vue internals. ' +
- 'See: https://vuejs.org/v2/api/#data',
- target
- );
- };
- var hasProxy =
- typeof Proxy !== 'undefined' && isNative(Proxy);
- if (hasProxy) {
- var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');
- config.keyCodes = new Proxy(config.keyCodes, {
- set: function set (target, key, value) {
- if (isBuiltInModifier(key)) {
- warn(("Avoid overwriting built-in modifier in config.keyCodes: ." + key));
- return false
- } else {
- target[key] = value;
- return true
- }
- }
- });
- }
- var hasHandler = {
- has: function has (target, key) {
- var has = key in target;
- var isAllowed = allowedGlobals(key) ||
- (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));
- if (!has && !isAllowed) {
- if (key in target.$data) { warnReservedPrefix(target, key); }
- else { warnNonPresent(target, key); }
- }
- return has || !isAllowed
- }
- };
- var getHandler = {
- get: function get (target, key) {
- if (typeof key === 'string' && !(key in target)) {
- if (key in target.$data) { warnReservedPrefix(target, key); }
- else { warnNonPresent(target, key); }
- }
- return target[key]
- }
- };
- initProxy = function initProxy (vm) {
- if (hasProxy) {
- // determine which proxy handler to use
- var options = vm.$options;
- var handlers = options.render && options.render._withStripped
- ? getHandler
- : hasHandler;
- vm._renderProxy = new Proxy(vm, handlers);
- } else {
- vm._renderProxy = vm;
- }
- };
- }
- /* */
- var seenObjects = new _Set();
- /**
- * Recursively traverse an object to evoke all converted
- * getters, so that every nested property inside the object
- * is collected as a "deep" dependency.
- */
- function traverse (val) {
- _traverse(val, seenObjects);
- seenObjects.clear();
- }
- function _traverse (val, seen) {
- var i, keys;
- var isA = Array.isArray(val);
- if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {
- return
- }
- if (val.__ob__) {
- var depId = val.__ob__.dep.id;
- if (seen.has(depId)) {
- return
- }
- seen.add(depId);
- }
- if (isA) {
- i = val.length;
- while (i--) { _traverse(val[i], seen); }
- } else {
- keys = Object.keys(val);
- i = keys.length;
- while (i--) { _traverse(val[keys[i]], seen); }
- }
- }
- var mark;
- var measure;
- if (true) {
- var perf = inBrowser && window.performance;
- /* istanbul ignore if */
- if (
- perf &&
- perf.mark &&
- perf.measure &&
- perf.clearMarks &&
- perf.clearMeasures
- ) {
- mark = function (tag) { return perf.mark(tag); };
- measure = function (name, startTag, endTag) {
- perf.measure(name, startTag, endTag);
- perf.clearMarks(startTag);
- perf.clearMarks(endTag);
- // perf.clearMeasures(name)
- };
- }
- }
- /* */
- var normalizeEvent = cached(function (name) {
- var passive = name.charAt(0) === '&';
- name = passive ? name.slice(1) : name;
- var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first
- name = once$$1 ? name.slice(1) : name;
- var capture = name.charAt(0) === '!';
- name = capture ? name.slice(1) : name;
- return {
- name: name,
- once: once$$1,
- capture: capture,
- passive: passive
- }
- });
- function createFnInvoker (fns, vm) {
- function invoker () {
- var arguments$1 = arguments;
- var fns = invoker.fns;
- if (Array.isArray(fns)) {
- var cloned = fns.slice();
- for (var i = 0; i < cloned.length; i++) {
- invokeWithErrorHandling(cloned[i], null, arguments$1, vm, "v-on handler");
- }
- } else {
- // return handler return value for single handlers
- return invokeWithErrorHandling(fns, null, arguments, vm, "v-on handler")
- }
- }
- invoker.fns = fns;
- return invoker
- }
- function updateListeners (
- on,
- oldOn,
- add,
- remove$$1,
- createOnceHandler,
- vm
- ) {
- var name, def$$1, cur, old, event;
- for (name in on) {
- def$$1 = cur = on[name];
- old = oldOn[name];
- event = normalizeEvent(name);
- if (isUndef(cur)) {
- true && warn(
- "Invalid handler for event \"" + (event.name) + "\": got " + String(cur),
- vm
- );
- } else if (isUndef(old)) {
- if (isUndef(cur.fns)) {
- cur = on[name] = createFnInvoker(cur, vm);
- }
- if (isTrue(event.once)) {
- cur = on[name] = createOnceHandler(event.name, cur, event.capture);
- }
- add(event.name, cur, event.capture, event.passive, event.params);
- } else if (cur !== old) {
- old.fns = cur;
- on[name] = old;
- }
- }
- for (name in oldOn) {
- if (isUndef(on[name])) {
- event = normalizeEvent(name);
- remove$$1(event.name, oldOn[name], event.capture);
- }
- }
- }
- /* */
- /* */
- // fixed by xxxxxx (mp properties)
- function extractPropertiesFromVNodeData(data, Ctor, res, context) {
- var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;
- if (isUndef(propOptions)) {
- return res
- }
- var externalClasses = Ctor.options.mpOptions.externalClasses || [];
- var attrs = data.attrs;
- var props = data.props;
- if (isDef(attrs) || isDef(props)) {
- for (var key in propOptions) {
- var altKey = hyphenate(key);
- var result = checkProp(res, props, key, altKey, true) ||
- checkProp(res, attrs, key, altKey, false);
- // externalClass
- if (
- result &&
- res[key] &&
- externalClasses.indexOf(altKey) !== -1 &&
- context[camelize(res[key])]
- ) {
- // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)
- res[key] = context[camelize(res[key])];
- }
- }
- }
- return res
- }
- function extractPropsFromVNodeData (
- data,
- Ctor,
- tag,
- context// fixed by xxxxxx
- ) {
- // we are only extracting raw values here.
- // validation and default values are handled in the child
- // component itself.
- var propOptions = Ctor.options.props;
- if (isUndef(propOptions)) {
- // fixed by xxxxxx
- return extractPropertiesFromVNodeData(data, Ctor, {}, context)
- }
- var res = {};
- var attrs = data.attrs;
- var props = data.props;
- if (isDef(attrs) || isDef(props)) {
- for (var key in propOptions) {
- var altKey = hyphenate(key);
- if (true) {
- var keyInLowerCase = key.toLowerCase();
- if (
- key !== keyInLowerCase &&
- attrs && hasOwn(attrs, keyInLowerCase)
- ) {
- tip(
- "Prop \"" + keyInLowerCase + "\" is passed to component " +
- (formatComponentName(tag || Ctor)) + ", but the declared prop name is" +
- " \"" + key + "\". " +
- "Note that HTML attributes are case-insensitive and camelCased " +
- "props need to use their kebab-case equivalents when using in-DOM " +
- "templates. You should probably use \"" + altKey + "\" instead of \"" + key + "\"."
- );
- }
- }
- checkProp(res, props, key, altKey, true) ||
- checkProp(res, attrs, key, altKey, false);
- }
- }
- // fixed by xxxxxx
- return extractPropertiesFromVNodeData(data, Ctor, res, context)
- }
- function checkProp (
- res,
- hash,
- key,
- altKey,
- preserve
- ) {
- if (isDef(hash)) {
- if (hasOwn(hash, key)) {
- res[key] = hash[key];
- if (!preserve) {
- delete hash[key];
- }
- return true
- } else if (hasOwn(hash, altKey)) {
- res[key] = hash[altKey];
- if (!preserve) {
- delete hash[altKey];
- }
- return true
- }
- }
- return false
- }
- /* */
- // The template compiler attempts to minimize the need for normalization by
- // statically analyzing the template at compile time.
- //
- // For plain HTML markup, normalization can be completely skipped because the
- // generated render function is guaranteed to return Array<VNode>. There are
- // two cases where extra normalization is needed:
- // 1. When the children contains components - because a functional component
- // may return an Array instead of a single root. In this case, just a simple
- // normalization is needed - if any child is an Array, we flatten the whole
- // thing with Array.prototype.concat. It is guaranteed to be only 1-level deep
- // because functional components already normalize their own children.
- function simpleNormalizeChildren (children) {
- for (var i = 0; i < children.length; i++) {
- if (Array.isArray(children[i])) {
- return Array.prototype.concat.apply([], children)
- }
- }
- return children
- }
- // 2. When the children contains constructs that always generated nested Arrays,
- // e.g. <template>, <slot>, v-for, or when the children is provided by user
- // with hand-written render functions / JSX. In such cases a full normalization
- // is needed to cater to all possible types of children values.
- function normalizeChildren (children) {
- return isPrimitive(children)
- ? [createTextVNode(children)]
- : Array.isArray(children)
- ? normalizeArrayChildren(children)
- : undefined
- }
- function isTextNode (node) {
- return isDef(node) && isDef(node.text) && isFalse(node.isComment)
- }
- function normalizeArrayChildren (children, nestedIndex) {
- var res = [];
- var i, c, lastIndex, last;
- for (i = 0; i < children.length; i++) {
- c = children[i];
- if (isUndef(c) || typeof c === 'boolean') { continue }
- lastIndex = res.length - 1;
- last = res[lastIndex];
- // nested
- if (Array.isArray(c)) {
- if (c.length > 0) {
- c = normalizeArrayChildren(c, ((nestedIndex || '') + "_" + i));
- // merge adjacent text nodes
- if (isTextNode(c[0]) && isTextNode(last)) {
- res[lastIndex] = createTextVNode(last.text + (c[0]).text);
- c.shift();
- }
- res.push.apply(res, c);
- }
- } else if (isPrimitive(c)) {
- if (isTextNode(last)) {
- // merge adjacent text nodes
- // this is necessary for SSR hydration because text nodes are
- // essentially merged when rendered to HTML strings
- res[lastIndex] = createTextVNode(last.text + c);
- } else if (c !== '') {
- // convert primitive to vnode
- res.push(createTextVNode(c));
- }
- } else {
- if (isTextNode(c) && isTextNode(last)) {
- // merge adjacent text nodes
- res[lastIndex] = createTextVNode(last.text + c.text);
- } else {
- // default key for nested array children (likely generated by v-for)
- if (isTrue(children._isVList) &&
- isDef(c.tag) &&
- isUndef(c.key) &&
- isDef(nestedIndex)) {
- c.key = "__vlist" + nestedIndex + "_" + i + "__";
- }
- res.push(c);
- }
- }
- }
- return res
- }
- /* */
- function initProvide (vm) {
- var provide = vm.$options.provide;
- if (provide) {
- vm._provided = typeof provide === 'function'
- ? provide.call(vm)
- : provide;
- }
- }
- function initInjections (vm) {
- var result = resolveInject(vm.$options.inject, vm);
- if (result) {
- toggleObserving(false);
- Object.keys(result).forEach(function (key) {
- /* istanbul ignore else */
- if (true) {
- defineReactive$$1(vm, key, result[key], function () {
- warn(
- "Avoid mutating an injected value directly since the changes will be " +
- "overwritten whenever the provided component re-renders. " +
- "injection being mutated: \"" + key + "\"",
- vm
- );
- });
- } else {}
- });
- toggleObserving(true);
- }
- }
- function resolveInject (inject, vm) {
- if (inject) {
- // inject is :any because flow is not smart enough to figure out cached
- var result = Object.create(null);
- var keys = hasSymbol
- ? Reflect.ownKeys(inject)
- : Object.keys(inject);
- for (var i = 0; i < keys.length; i++) {
- var key = keys[i];
- // #6574 in case the inject object is observed...
- if (key === '__ob__') { continue }
- var provideKey = inject[key].from;
- var source = vm;
- while (source) {
- if (source._provided && hasOwn(source._provided, provideKey)) {
- result[key] = source._provided[provideKey];
- break
- }
- source = source.$parent;
- }
- if (!source) {
- if ('default' in inject[key]) {
- var provideDefault = inject[key].default;
- result[key] = typeof provideDefault === 'function'
- ? provideDefault.call(vm)
- : provideDefault;
- } else if (true) {
- warn(("Injection \"" + key + "\" not found"), vm);
- }
- }
- }
- return result
- }
- }
- /* */
- /**
- * Runtime helper for resolving raw children VNodes into a slot object.
- */
- function resolveSlots (
- children,
- context
- ) {
- if (!children || !children.length) {
- return {}
- }
- var slots = {};
- for (var i = 0, l = children.length; i < l; i++) {
- var child = children[i];
- var data = child.data;
- // remove slot attribute if the node is resolved as a Vue slot node
- if (data && data.attrs && data.attrs.slot) {
- delete data.attrs.slot;
- }
- // named slots should only be respected if the vnode was rendered in the
- // same context.
- if ((child.context === context || child.fnContext === context) &&
- data && data.slot != null
- ) {
- var name = data.slot;
- var slot = (slots[name] || (slots[name] = []));
- if (child.tag === 'template') {
- slot.push.apply(slot, child.children || []);
- } else {
- slot.push(child);
- }
- } else {
- // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page
- if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){
- (slots['page'] || (slots['page'] = [])).push(child);
- }else{
- (slots.default || (slots.default = [])).push(child);
- }
- }
- }
- // ignore slots that contains only whitespace
- for (var name$1 in slots) {
- if (slots[name$1].every(isWhitespace)) {
- delete slots[name$1];
- }
- }
- return slots
- }
- function isWhitespace (node) {
- return (node.isComment && !node.asyncFactory) || node.text === ' '
- }
- /* */
- function normalizeScopedSlots (
- slots,
- normalSlots,
- prevSlots
- ) {
- var res;
- var hasNormalSlots = Object.keys(normalSlots).length > 0;
- var isStable = slots ? !!slots.$stable : !hasNormalSlots;
- var key = slots && slots.$key;
- if (!slots) {
- res = {};
- } else if (slots._normalized) {
- // fast path 1: child component re-render only, parent did not change
- return slots._normalized
- } else if (
- isStable &&
- prevSlots &&
- prevSlots !== emptyObject &&
- key === prevSlots.$key &&
- !hasNormalSlots &&
- !prevSlots.$hasNormal
- ) {
- // fast path 2: stable scoped slots w/ no normal slots to proxy,
- // only need to normalize once
- return prevSlots
- } else {
- res = {};
- for (var key$1 in slots) {
- if (slots[key$1] && key$1[0] !== '$') {
- res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
- }
- }
- }
- // expose normal slots on scopedSlots
- for (var key$2 in normalSlots) {
- if (!(key$2 in res)) {
- res[key$2] = proxyNormalSlot(normalSlots, key$2);
- }
- }
- // avoriaz seems to mock a non-extensible $scopedSlots object
- // and when that is passed down this would cause an error
- if (slots && Object.isExtensible(slots)) {
- (slots)._normalized = res;
- }
- def(res, '$stable', isStable);
- def(res, '$key', key);
- def(res, '$hasNormal', hasNormalSlots);
- return res
- }
- function normalizeScopedSlot(normalSlots, key, fn) {
- var normalized = function () {
- var res = arguments.length ? fn.apply(null, arguments) : fn({});
- res = res && typeof res === 'object' && !Array.isArray(res)
- ? [res] // single vnode
- : normalizeChildren(res);
- return res && (
- res.length === 0 ||
- (res.length === 1 && res[0].isComment) // #9658
- ) ? undefined
- : res
- };
- // this is a slot using the new v-slot syntax without scope. although it is
- // compiled as a scoped slot, render fn users would expect it to be present
- // on this.$slots because the usage is semantically a normal slot.
- if (fn.proxy) {
- Object.defineProperty(normalSlots, key, {
- get: normalized,
- enumerable: true,
- configurable: true
- });
- }
- return normalized
- }
- function proxyNormalSlot(slots, key) {
- return function () { return slots[key]; }
- }
- /* */
- /**
- * Runtime helper for rendering v-for lists.
- */
- function renderList (
- val,
- render
- ) {
- var ret, i, l, keys, key;
- if (Array.isArray(val) || typeof val === 'string') {
- ret = new Array(val.length);
- for (i = 0, l = val.length; i < l; i++) {
- ret[i] = render(val[i], i, i, i); // fixed by xxxxxx
- }
- } else if (typeof val === 'number') {
- ret = new Array(val);
- for (i = 0; i < val; i++) {
- ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx
- }
- } else if (isObject(val)) {
- if (hasSymbol && val[Symbol.iterator]) {
- ret = [];
- var iterator = val[Symbol.iterator]();
- var result = iterator.next();
- while (!result.done) {
- ret.push(render(result.value, ret.length, i++, i)); // fixed by xxxxxx
- result = iterator.next();
- }
- } else {
- keys = Object.keys(val);
- ret = new Array(keys.length);
- for (i = 0, l = keys.length; i < l; i++) {
- key = keys[i];
- ret[i] = render(val[key], key, i, i); // fixed by xxxxxx
- }
- }
- }
- if (!isDef(ret)) {
- ret = [];
- }
- (ret)._isVList = true;
- return ret
- }
- /* */
- /**
- * Runtime helper for rendering <slot>
- */
- function renderSlot (
- name,
- fallback,
- props,
- bindObject
- ) {
- var scopedSlotFn = this.$scopedSlots[name];
- var nodes;
- if (scopedSlotFn) { // scoped slot
- props = props || {};
- if (bindObject) {
- if ( true && !isObject(bindObject)) {
- warn(
- 'slot v-bind without argument expects an Object',
- this
- );
- }
- props = extend(extend({}, bindObject), props);
- }
- // fixed by xxxxxx app-plus scopedSlot
- nodes = scopedSlotFn(props, this, props._i) || fallback;
- } else {
- nodes = this.$slots[name] || fallback;
- }
- var target = props && props.slot;
- if (target) {
- return this.$createElement('template', { slot: target }, nodes)
- } else {
- return nodes
- }
- }
- /* */
- /**
- * Runtime helper for resolving filters
- */
- function resolveFilter (id) {
- return resolveAsset(this.$options, 'filters', id, true) || identity
- }
- /* */
- function isKeyNotMatch (expect, actual) {
- if (Array.isArray(expect)) {
- return expect.indexOf(actual) === -1
- } else {
- return expect !== actual
- }
- }
- /**
- * Runtime helper for checking keyCodes from config.
- * exposed as Vue.prototype._k
- * passing in eventKeyName as last argument separately for backwards compat
- */
- function checkKeyCodes (
- eventKeyCode,
- key,
- builtInKeyCode,
- eventKeyName,
- builtInKeyName
- ) {
- var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;
- if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {
- return isKeyNotMatch(builtInKeyName, eventKeyName)
- } else if (mappedKeyCode) {
- return isKeyNotMatch(mappedKeyCode, eventKeyCode)
- } else if (eventKeyName) {
- return hyphenate(eventKeyName) !== key
- }
- }
- /* */
- /**
- * Runtime helper for merging v-bind="object" into a VNode's data.
- */
- function bindObjectProps (
- data,
- tag,
- value,
- asProp,
- isSync
- ) {
- if (value) {
- if (!isObject(value)) {
- true && warn(
- 'v-bind without argument expects an Object or Array value',
- this
- );
- } else {
- if (Array.isArray(value)) {
- value = toObject(value);
- }
- var hash;
- var loop = function ( key ) {
- if (
- key === 'class' ||
- key === 'style' ||
- isReservedAttribute(key)
- ) {
- hash = data;
- } else {
- var type = data.attrs && data.attrs.type;
- hash = asProp || config.mustUseProp(tag, type, key)
- ? data.domProps || (data.domProps = {})
- : data.attrs || (data.attrs = {});
- }
- var camelizedKey = camelize(key);
- var hyphenatedKey = hyphenate(key);
- if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
- hash[key] = value[key];
- if (isSync) {
- var on = data.on || (data.on = {});
- on[("update:" + key)] = function ($event) {
- value[key] = $event;
- };
- }
- }
- };
- for (var key in value) loop( key );
- }
- }
- return data
- }
- /* */
- /**
- * Runtime helper for rendering static trees.
- */
- function renderStatic (
- index,
- isInFor
- ) {
- var cached = this._staticTrees || (this._staticTrees = []);
- var tree = cached[index];
- // if has already-rendered static tree and not inside v-for,
- // we can reuse the same tree.
- if (tree && !isInFor) {
- return tree
- }
- // otherwise, render a fresh tree.
- tree = cached[index] = this.$options.staticRenderFns[index].call(
- this._renderProxy,
- null,
- this // for render fns generated for functional component templates
- );
- markStatic(tree, ("__static__" + index), false);
- return tree
- }
- /**
- * Runtime helper for v-once.
- * Effectively it means marking the node as static with a unique key.
- */
- function markOnce (
- tree,
- index,
- key
- ) {
- markStatic(tree, ("__once__" + index + (key ? ("_" + key) : "")), true);
- return tree
- }
- function markStatic (
- tree,
- key,
- isOnce
- ) {
- if (Array.isArray(tree)) {
- for (var i = 0; i < tree.length; i++) {
- if (tree[i] && typeof tree[i] !== 'string') {
- markStaticNode(tree[i], (key + "_" + i), isOnce);
- }
- }
- } else {
- markStaticNode(tree, key, isOnce);
- }
- }
- function markStaticNode (node, key, isOnce) {
- node.isStatic = true;
- node.key = key;
- node.isOnce = isOnce;
- }
- /* */
- function bindObjectListeners (data, value) {
- if (value) {
- if (!isPlainObject(value)) {
- true && warn(
- 'v-on without argument expects an Object value',
- this
- );
- } else {
- var on = data.on = data.on ? extend({}, data.on) : {};
- for (var key in value) {
- var existing = on[key];
- var ours = value[key];
- on[key] = existing ? [].concat(existing, ours) : ours;
- }
- }
- }
- return data
- }
- /* */
- function resolveScopedSlots (
- fns, // see flow/vnode
- res,
- // the following are added in 2.6
- hasDynamicKeys,
- contentHashKey
- ) {
- res = res || { $stable: !hasDynamicKeys };
- for (var i = 0; i < fns.length; i++) {
- var slot = fns[i];
- if (Array.isArray(slot)) {
- resolveScopedSlots(slot, res, hasDynamicKeys);
- } else if (slot) {
- // marker for reverse proxying v-slot without scope on this.$slots
- if (slot.proxy) {
- slot.fn.proxy = true;
- }
- res[slot.key] = slot.fn;
- }
- }
- if (contentHashKey) {
- (res).$key = contentHashKey;
- }
- return res
- }
- /* */
- function bindDynamicKeys (baseObj, values) {
- for (var i = 0; i < values.length; i += 2) {
- var key = values[i];
- if (typeof key === 'string' && key) {
- baseObj[values[i]] = values[i + 1];
- } else if ( true && key !== '' && key !== null) {
- // null is a special value for explicitly removing a binding
- warn(
- ("Invalid value for dynamic directive argument (expected string or null): " + key),
- this
- );
- }
- }
- return baseObj
- }
- // helper to dynamically append modifier runtime markers to event names.
- // ensure only append when value is already string, otherwise it will be cast
- // to string and cause the type check to miss.
- function prependModifier (value, symbol) {
- return typeof value === 'string' ? symbol + value : value
- }
- /* */
- function installRenderHelpers (target) {
- target._o = markOnce;
- target._n = toNumber;
- target._s = toString;
- target._l = renderList;
- target._t = renderSlot;
- target._q = looseEqual;
- target._i = looseIndexOf;
- target._m = renderStatic;
- target._f = resolveFilter;
- target._k = checkKeyCodes;
- target._b = bindObjectProps;
- target._v = createTextVNode;
- target._e = createEmptyVNode;
- target._u = resolveScopedSlots;
- target._g = bindObjectListeners;
- target._d = bindDynamicKeys;
- target._p = prependModifier;
- }
- /* */
- function FunctionalRenderContext (
- data,
- props,
- children,
- parent,
- Ctor
- ) {
- var this$1 = this;
- var options = Ctor.options;
- // ensure the createElement function in functional components
- // gets a unique context - this is necessary for correct named slot check
- var contextVm;
- if (hasOwn(parent, '_uid')) {
- contextVm = Object.create(parent);
- // $flow-disable-line
- contextVm._original = parent;
- } else {
- // the context vm passed in is a functional context as well.
- // in this case we want to make sure we are able to get a hold to the
- // real context instance.
- contextVm = parent;
- // $flow-disable-line
- parent = parent._original;
- }
- var isCompiled = isTrue(options._compiled);
- var needNormalization = !isCompiled;
- this.data = data;
- this.props = props;
- this.children = children;
- this.parent = parent;
- this.listeners = data.on || emptyObject;
- this.injections = resolveInject(options.inject, parent);
- this.slots = function () {
- if (!this$1.$slots) {
- normalizeScopedSlots(
- data.scopedSlots,
- this$1.$slots = resolveSlots(children, parent)
- );
- }
- return this$1.$slots
- };
- Object.defineProperty(this, 'scopedSlots', ({
- enumerable: true,
- get: function get () {
- return normalizeScopedSlots(data.scopedSlots, this.slots())
- }
- }));
- // support for compiled functional template
- if (isCompiled) {
- // exposing $options for renderStatic()
- this.$options = options;
- // pre-resolve slots for renderSlot()
- this.$slots = this.slots();
- this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);
- }
- if (options._scopeId) {
- this._c = function (a, b, c, d) {
- var vnode = createElement(contextVm, a, b, c, d, needNormalization);
- if (vnode && !Array.isArray(vnode)) {
- vnode.fnScopeId = options._scopeId;
- vnode.fnContext = parent;
- }
- return vnode
- };
- } else {
- this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };
- }
- }
- installRenderHelpers(FunctionalRenderContext.prototype);
- function createFunctionalComponent (
- Ctor,
- propsData,
- data,
- contextVm,
- children
- ) {
- var options = Ctor.options;
- var props = {};
- var propOptions = options.props;
- if (isDef(propOptions)) {
- for (var key in propOptions) {
- props[key] = validateProp(key, propOptions, propsData || emptyObject);
- }
- } else {
- if (isDef(data.attrs)) { mergeProps(props, data.attrs); }
- if (isDef(data.props)) { mergeProps(props, data.props); }
- }
- var renderContext = new FunctionalRenderContext(
- data,
- props,
- children,
- contextVm,
- Ctor
- );
- var vnode = options.render.call(null, renderContext._c, renderContext);
- if (vnode instanceof VNode) {
- return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
- } else if (Array.isArray(vnode)) {
- var vnodes = normalizeChildren(vnode) || [];
- var res = new Array(vnodes.length);
- for (var i = 0; i < vnodes.length; i++) {
- res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);
- }
- return res
- }
- }
- function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
- // #7817 clone node before setting fnContext, otherwise if the node is reused
- // (e.g. it was from a cached normal slot) the fnContext causes named slots
- // that should not be matched to match.
- var clone = cloneVNode(vnode);
- clone.fnContext = contextVm;
- clone.fnOptions = options;
- if (true) {
- (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;
- }
- if (data.slot) {
- (clone.data || (clone.data = {})).slot = data.slot;
- }
- return clone
- }
- function mergeProps (to, from) {
- for (var key in from) {
- to[camelize(key)] = from[key];
- }
- }
- /* */
- /* */
- /* */
- /* */
- // inline hooks to be invoked on component VNodes during patch
- var componentVNodeHooks = {
- init: function init (vnode, hydrating) {
- if (
- vnode.componentInstance &&
- !vnode.componentInstance._isDestroyed &&
- vnode.data.keepAlive
- ) {
- // kept-alive components, treat as a patch
- var mountedNode = vnode; // work around flow
- componentVNodeHooks.prepatch(mountedNode, mountedNode);
- } else {
- var child = vnode.componentInstance = createComponentInstanceForVnode(
- vnode,
- activeInstance
- );
- child.$mount(hydrating ? vnode.elm : undefined, hydrating);
- }
- },
- prepatch: function prepatch (oldVnode, vnode) {
- var options = vnode.componentOptions;
- var child = vnode.componentInstance = oldVnode.componentInstance;
- updateChildComponent(
- child,
- options.propsData, // updated props
- options.listeners, // updated listeners
- vnode, // new parent vnode
- options.children // new children
- );
- },
- insert: function insert (vnode) {
- var context = vnode.context;
- var componentInstance = vnode.componentInstance;
- if (!componentInstance._isMounted) {
- callHook(componentInstance, 'onServiceCreated');
- callHook(componentInstance, 'onServiceAttached');
- componentInstance._isMounted = true;
- callHook(componentInstance, 'mounted');
- }
- if (vnode.data.keepAlive) {
- if (context._isMounted) {
- // vue-router#1212
- // During updates, a kept-alive component's child components may
- // change, so directly walking the tree here may call activated hooks
- // on incorrect children. Instead we push them into a queue which will
- // be processed after the whole patch process ended.
- queueActivatedComponent(componentInstance);
- } else {
- activateChildComponent(componentInstance, true /* direct */);
- }
- }
- },
- destroy: function destroy (vnode) {
- var componentInstance = vnode.componentInstance;
- if (!componentInstance._isDestroyed) {
- if (!vnode.data.keepAlive) {
- componentInstance.$destroy();
- } else {
- deactivateChildComponent(componentInstance, true /* direct */);
- }
- }
- }
- };
- var hooksToMerge = Object.keys(componentVNodeHooks);
- function createComponent (
- Ctor,
- data,
- context,
- children,
- tag
- ) {
- if (isUndef(Ctor)) {
- return
- }
- var baseCtor = context.$options._base;
- // plain options object: turn it into a constructor
- if (isObject(Ctor)) {
- Ctor = baseCtor.extend(Ctor);
- }
- // if at this stage it's not a constructor or an async component factory,
- // reject.
- if (typeof Ctor !== 'function') {
- if (true) {
- warn(("Invalid Component definition: " + (String(Ctor))), context);
- }
- return
- }
- // async component
- var asyncFactory;
- if (isUndef(Ctor.cid)) {
- asyncFactory = Ctor;
- Ctor = resolveAsyncComponent(asyncFactory, baseCtor);
- if (Ctor === undefined) {
- // return a placeholder node for async component, which is rendered
- // as a comment node but preserves all the raw information for the node.
- // the information will be used for async server-rendering and hydration.
- return createAsyncPlaceholder(
- asyncFactory,
- data,
- context,
- children,
- tag
- )
- }
- }
- data = data || {};
- // resolve constructor options in case global mixins are applied after
- // component constructor creation
- resolveConstructorOptions(Ctor);
- // transform component v-model data into props & events
- if (isDef(data.model)) {
- transformModel(Ctor.options, data);
- }
- // extract props
- var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx
- // functional component
- if (isTrue(Ctor.options.functional)) {
- return createFunctionalComponent(Ctor, propsData, data, context, children)
- }
- // extract listeners, since these needs to be treated as
- // child component listeners instead of DOM listeners
- var listeners = data.on;
- // replace with listeners with .native modifier
- // so it gets processed during parent component patch.
- data.on = data.nativeOn;
- if (isTrue(Ctor.options.abstract)) {
- // abstract components do not keep anything
- // other than props & listeners & slot
- // work around flow
- var slot = data.slot;
- data = {};
- if (slot) {
- data.slot = slot;
- }
- }
- // install component management hooks onto the placeholder node
- installComponentHooks(data);
- // return a placeholder vnode
- var name = Ctor.options.name || tag;
- var vnode = new VNode(
- ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')),
- data, undefined, undefined, undefined, context,
- { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },
- asyncFactory
- );
- return vnode
- }
- function createComponentInstanceForVnode (
- vnode, // we know it's MountedComponentVNode but flow doesn't
- parent // activeInstance in lifecycle state
- ) {
- var options = {
- _isComponent: true,
- _parentVnode: vnode,
- parent: parent
- };
- // check inline-template render functions
- var inlineTemplate = vnode.data.inlineTemplate;
- if (isDef(inlineTemplate)) {
- options.render = inlineTemplate.render;
- options.staticRenderFns = inlineTemplate.staticRenderFns;
- }
- return new vnode.componentOptions.Ctor(options)
- }
- function installComponentHooks (data) {
- var hooks = data.hook || (data.hook = {});
- for (var i = 0; i < hooksToMerge.length; i++) {
- var key = hooksToMerge[i];
- var existing = hooks[key];
- var toMerge = componentVNodeHooks[key];
- if (existing !== toMerge && !(existing && existing._merged)) {
- hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;
- }
- }
- }
- function mergeHook$1 (f1, f2) {
- var merged = function (a, b) {
- // flow complains about extra args which is why we use any
- f1(a, b);
- f2(a, b);
- };
- merged._merged = true;
- return merged
- }
- // transform component v-model info (value and callback) into
- // prop and event handler respectively.
- function transformModel (options, data) {
- var prop = (options.model && options.model.prop) || 'value';
- var event = (options.model && options.model.event) || 'input'
- ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;
- var on = data.on || (data.on = {});
- var existing = on[event];
- var callback = data.model.callback;
- if (isDef(existing)) {
- if (
- Array.isArray(existing)
- ? existing.indexOf(callback) === -1
- : existing !== callback
- ) {
- on[event] = [callback].concat(existing);
- }
- } else {
- on[event] = callback;
- }
- }
- /* */
- var SIMPLE_NORMALIZE = 1;
- var ALWAYS_NORMALIZE = 2;
- // wrapper function for providing a more flexible interface
- // without getting yelled at by flow
- function createElement (
- context,
- tag,
- data,
- children,
- normalizationType,
- alwaysNormalize
- ) {
- if (Array.isArray(data) || isPrimitive(data)) {
- normalizationType = children;
- children = data;
- data = undefined;
- }
- if (isTrue(alwaysNormalize)) {
- normalizationType = ALWAYS_NORMALIZE;
- }
- return _createElement(context, tag, data, children, normalizationType)
- }
- function _createElement (
- context,
- tag,
- data,
- children,
- normalizationType
- ) {
- if (isDef(data) && isDef((data).__ob__)) {
- true && warn(
- "Avoid using observed data object as vnode data: " + (JSON.stringify(data)) + "\n" +
- 'Always create fresh vnode data objects in each render!',
- context
- );
- return createEmptyVNode()
- }
- // object syntax in v-bind
- if (isDef(data) && isDef(data.is)) {
- tag = data.is;
- }
- if (!tag) {
- // in case of component :is set to falsy value
- return createEmptyVNode()
- }
- // warn against non-primitive key
- if ( true &&
- isDef(data) && isDef(data.key) && !isPrimitive(data.key)
- ) {
- {
- warn(
- 'Avoid using non-primitive value as key, ' +
- 'use string/number value instead.',
- context
- );
- }
- }
- // support single function children as default scoped slot
- if (Array.isArray(children) &&
- typeof children[0] === 'function'
- ) {
- data = data || {};
- data.scopedSlots = { default: children[0] };
- children.length = 0;
- }
- if (normalizationType === ALWAYS_NORMALIZE) {
- children = normalizeChildren(children);
- } else if (normalizationType === SIMPLE_NORMALIZE) {
- children = simpleNormalizeChildren(children);
- }
- var vnode, ns;
- if (typeof tag === 'string') {
- var Ctor;
- ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
- if (config.isReservedTag(tag)) {
- // platform built-in elements
- if ( true && isDef(data) && isDef(data.nativeOn)) {
- warn(
- ("The .native modifier for v-on is only valid on components but it was used on <" + tag + ">."),
- context
- );
- }
- vnode = new VNode(
- config.parsePlatformTagName(tag), data, children,
- undefined, undefined, context
- );
- } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {
- // component
- vnode = createComponent(Ctor, data, context, children, tag);
- } else {
- // unknown or unlisted namespaced elements
- // check at runtime because it may get assigned a namespace when its
- // parent normalizes children
- vnode = new VNode(
- tag, data, children,
- undefined, undefined, context
- );
- }
- } else {
- // direct component options / constructor
- vnode = createComponent(tag, data, context, children);
- }
- if (Array.isArray(vnode)) {
- return vnode
- } else if (isDef(vnode)) {
- if (isDef(ns)) { applyNS(vnode, ns); }
- if (isDef(data)) { registerDeepBindings(data); }
- return vnode
- } else {
- return createEmptyVNode()
- }
- }
- function applyNS (vnode, ns, force) {
- vnode.ns = ns;
- if (vnode.tag === 'foreignObject') {
- // use default namespace inside foreignObject
- ns = undefined;
- force = true;
- }
- if (isDef(vnode.children)) {
- for (var i = 0, l = vnode.children.length; i < l; i++) {
- var child = vnode.children[i];
- if (isDef(child.tag) && (
- isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {
- applyNS(child, ns, force);
- }
- }
- }
- }
- // ref #5318
- // necessary to ensure parent re-render when deep bindings like :style and
- // :class are used on slot nodes
- function registerDeepBindings (data) {
- if (isObject(data.style)) {
- traverse(data.style);
- }
- if (isObject(data.class)) {
- traverse(data.class);
- }
- }
- /* */
- function initRender (vm) {
- vm._vnode = null; // the root of the child tree
- vm._staticTrees = null; // v-once cached trees
- var options = vm.$options;
- var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree
- var renderContext = parentVnode && parentVnode.context;
- vm.$slots = resolveSlots(options._renderChildren, renderContext);
- vm.$scopedSlots = emptyObject;
- // bind the createElement fn to this instance
- // so that we get proper render context inside it.
- // args order: tag, data, children, normalizationType, alwaysNormalize
- // internal version is used by render functions compiled from templates
- vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };
- // normalization is always applied for the public version, used in
- // user-written render functions.
- vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };
- // $attrs & $listeners are exposed for easier HOC creation.
- // they need to be reactive so that HOCs using them are always updated
- var parentData = parentVnode && parentVnode.data;
- /* istanbul ignore else */
- if (true) {
- defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {
- !isUpdatingChildComponent && warn("$attrs is readonly.", vm);
- }, true);
- defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {
- !isUpdatingChildComponent && warn("$listeners is readonly.", vm);
- }, true);
- } else {}
- }
- var currentRenderingInstance = null;
- function renderMixin (Vue) {
- // install runtime convenience helpers
- installRenderHelpers(Vue.prototype);
- Vue.prototype.$nextTick = function (fn) {
- return nextTick(fn, this)
- };
- Vue.prototype._render = function () {
- var vm = this;
- var ref = vm.$options;
- var render = ref.render;
- var _parentVnode = ref._parentVnode;
- if (_parentVnode) {
- vm.$scopedSlots = normalizeScopedSlots(
- _parentVnode.data.scopedSlots,
- vm.$slots,
- vm.$scopedSlots
- );
- }
- // set parent vnode. this allows render functions to have access
- // to the data on the placeholder node.
- vm.$vnode = _parentVnode;
- // render self
- var vnode;
- try {
- // There's no need to maintain a stack because all render fns are called
- // separately from one another. Nested component's render fns are called
- // when parent component is patched.
- currentRenderingInstance = vm;
- vnode = render.call(vm._renderProxy, vm.$createElement);
- } catch (e) {
- handleError(e, vm, "render");
- // return error render result,
- // or previous vnode to prevent render error causing blank component
- /* istanbul ignore else */
- if ( true && vm.$options.renderError) {
- try {
- vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);
- } catch (e) {
- handleError(e, vm, "renderError");
- vnode = vm._vnode;
- }
- } else {
- vnode = vm._vnode;
- }
- } finally {
- currentRenderingInstance = null;
- }
- // if the returned array contains only a single node, allow it
- if (Array.isArray(vnode) && vnode.length === 1) {
- vnode = vnode[0];
- }
- // return empty vnode in case the render function errored out
- if (!(vnode instanceof VNode)) {
- if ( true && Array.isArray(vnode)) {
- warn(
- 'Multiple root nodes returned from render function. Render function ' +
- 'should return a single root node.',
- vm
- );
- }
- vnode = createEmptyVNode();
- }
- // set parent
- vnode.parent = _parentVnode;
- return vnode
- };
- }
- /* */
- function ensureCtor (comp, base) {
- if (
- comp.__esModule ||
- (hasSymbol && comp[Symbol.toStringTag] === 'Module')
- ) {
- comp = comp.default;
- }
- return isObject(comp)
- ? base.extend(comp)
- : comp
- }
- function createAsyncPlaceholder (
- factory,
- data,
- context,
- children,
- tag
- ) {
- var node = createEmptyVNode();
- node.asyncFactory = factory;
- node.asyncMeta = { data: data, context: context, children: children, tag: tag };
- return node
- }
- function resolveAsyncComponent (
- factory,
- baseCtor
- ) {
- if (isTrue(factory.error) && isDef(factory.errorComp)) {
- return factory.errorComp
- }
- if (isDef(factory.resolved)) {
- return factory.resolved
- }
- var owner = currentRenderingInstance;
- if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
- // already pending
- factory.owners.push(owner);
- }
- if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
- return factory.loadingComp
- }
- if (owner && !isDef(factory.owners)) {
- var owners = factory.owners = [owner];
- var sync = true;
- var timerLoading = null;
- var timerTimeout = null
- ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });
- var forceRender = function (renderCompleted) {
- for (var i = 0, l = owners.length; i < l; i++) {
- (owners[i]).$forceUpdate();
- }
- if (renderCompleted) {
- owners.length = 0;
- if (timerLoading !== null) {
- clearTimeout(timerLoading);
- timerLoading = null;
- }
- if (timerTimeout !== null) {
- clearTimeout(timerTimeout);
- timerTimeout = null;
- }
- }
- };
- var resolve = once(function (res) {
- // cache resolved
- factory.resolved = ensureCtor(res, baseCtor);
- // invoke callbacks only if this is not a synchronous resolve
- // (async resolves are shimmed as synchronous during SSR)
- if (!sync) {
- forceRender(true);
- } else {
- owners.length = 0;
- }
- });
- var reject = once(function (reason) {
- true && warn(
- "Failed to resolve async component: " + (String(factory)) +
- (reason ? ("\nReason: " + reason) : '')
- );
- if (isDef(factory.errorComp)) {
- factory.error = true;
- forceRender(true);
- }
- });
- var res = factory(resolve, reject);
- if (isObject(res)) {
- if (isPromise(res)) {
- // () => Promise
- if (isUndef(factory.resolved)) {
- res.then(resolve, reject);
- }
- } else if (isPromise(res.component)) {
- res.component.then(resolve, reject);
- if (isDef(res.error)) {
- factory.errorComp = ensureCtor(res.error, baseCtor);
- }
- if (isDef(res.loading)) {
- factory.loadingComp = ensureCtor(res.loading, baseCtor);
- if (res.delay === 0) {
- factory.loading = true;
- } else {
- timerLoading = setTimeout(function () {
- timerLoading = null;
- if (isUndef(factory.resolved) && isUndef(factory.error)) {
- factory.loading = true;
- forceRender(false);
- }
- }, res.delay || 200);
- }
- }
- if (isDef(res.timeout)) {
- timerTimeout = setTimeout(function () {
- timerTimeout = null;
- if (isUndef(factory.resolved)) {
- reject(
- true
- ? ("timeout (" + (res.timeout) + "ms)")
- : undefined
- );
- }
- }, res.timeout);
- }
- }
- }
- sync = false;
- // return in case resolved synchronously
- return factory.loading
- ? factory.loadingComp
- : factory.resolved
- }
- }
- /* */
- function isAsyncPlaceholder (node) {
- return node.isComment && node.asyncFactory
- }
- /* */
- function getFirstComponentChild (children) {
- if (Array.isArray(children)) {
- for (var i = 0; i < children.length; i++) {
- var c = children[i];
- if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {
- return c
- }
- }
- }
- }
- /* */
- /* */
- function initEvents (vm) {
- vm._events = Object.create(null);
- vm._hasHookEvent = false;
- // init parent attached events
- var listeners = vm.$options._parentListeners;
- if (listeners) {
- updateComponentListeners(vm, listeners);
- }
- }
- var target;
- function add (event, fn) {
- target.$on(event, fn);
- }
- function remove$1 (event, fn) {
- target.$off(event, fn);
- }
- function createOnceHandler (event, fn) {
- var _target = target;
- return function onceHandler () {
- var res = fn.apply(null, arguments);
- if (res !== null) {
- _target.$off(event, onceHandler);
- }
- }
- }
- function updateComponentListeners (
- vm,
- listeners,
- oldListeners
- ) {
- target = vm;
- updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);
- target = undefined;
- }
- function eventsMixin (Vue) {
- var hookRE = /^hook:/;
- Vue.prototype.$on = function (event, fn) {
- var vm = this;
- if (Array.isArray(event)) {
- for (var i = 0, l = event.length; i < l; i++) {
- vm.$on(event[i], fn);
- }
- } else {
- (vm._events[event] || (vm._events[event] = [])).push(fn);
- // optimize hook:event cost by using a boolean flag marked at registration
- // instead of a hash lookup
- if (hookRE.test(event)) {
- vm._hasHookEvent = true;
- }
- }
- return vm
- };
- Vue.prototype.$once = function (event, fn) {
- var vm = this;
- function on () {
- vm.$off(event, on);
- fn.apply(vm, arguments);
- }
- on.fn = fn;
- vm.$on(event, on);
- return vm
- };
- Vue.prototype.$off = function (event, fn) {
- var vm = this;
- // all
- if (!arguments.length) {
- vm._events = Object.create(null);
- return vm
- }
- // array of events
- if (Array.isArray(event)) {
- for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {
- vm.$off(event[i$1], fn);
- }
- return vm
- }
- // specific event
- var cbs = vm._events[event];
- if (!cbs) {
- return vm
- }
- if (!fn) {
- vm._events[event] = null;
- return vm
- }
- // specific handler
- var cb;
- var i = cbs.length;
- while (i--) {
- cb = cbs[i];
- if (cb === fn || cb.fn === fn) {
- cbs.splice(i, 1);
- break
- }
- }
- return vm
- };
- Vue.prototype.$emit = function (event) {
- var vm = this;
- if (true) {
- var lowerCaseEvent = event.toLowerCase();
- if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {
- tip(
- "Event \"" + lowerCaseEvent + "\" is emitted in component " +
- (formatComponentName(vm)) + " but the handler is registered for \"" + event + "\". " +
- "Note that HTML attributes are case-insensitive and you cannot use " +
- "v-on to listen to camelCase events when using in-DOM templates. " +
- "You should probably use \"" + (hyphenate(event)) + "\" instead of \"" + event + "\"."
- );
- }
- }
- var cbs = vm._events[event];
- if (cbs) {
- cbs = cbs.length > 1 ? toArray(cbs) : cbs;
- var args = toArray(arguments, 1);
- var info = "event handler for \"" + event + "\"";
- for (var i = 0, l = cbs.length; i < l; i++) {
- invokeWithErrorHandling(cbs[i], vm, args, vm, info);
- }
- }
- return vm
- };
- }
- /* */
- var activeInstance = null;
- var isUpdatingChildComponent = false;
- function setActiveInstance(vm) {
- var prevActiveInstance = activeInstance;
- activeInstance = vm;
- return function () {
- activeInstance = prevActiveInstance;
- }
- }
- function initLifecycle (vm) {
- var options = vm.$options;
- // locate first non-abstract parent
- var parent = options.parent;
- if (parent && !options.abstract) {
- while (parent.$options.abstract && parent.$parent) {
- parent = parent.$parent;
- }
- parent.$children.push(vm);
- }
- vm.$parent = parent;
- vm.$root = parent ? parent.$root : vm;
- vm.$children = [];
- vm.$refs = {};
- vm._watcher = null;
- vm._inactive = null;
- vm._directInactive = false;
- vm._isMounted = false;
- vm._isDestroyed = false;
- vm._isBeingDestroyed = false;
- }
- function lifecycleMixin (Vue) {
- Vue.prototype._update = function (vnode, hydrating) {
- var vm = this;
- var prevEl = vm.$el;
- var prevVnode = vm._vnode;
- var restoreActiveInstance = setActiveInstance(vm);
- vm._vnode = vnode;
- // Vue.prototype.__patch__ is injected in entry points
- // based on the rendering backend used.
- if (!prevVnode) {
- // initial render
- vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);
- } else {
- // updates
- vm.$el = vm.__patch__(prevVnode, vnode);
- }
- restoreActiveInstance();
- // update __vue__ reference
- if (prevEl) {
- prevEl.__vue__ = null;
- }
- if (vm.$el) {
- vm.$el.__vue__ = vm;
- }
- // if parent is an HOC, update its $el as well
- if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {
- vm.$parent.$el = vm.$el;
- }
- // updated hook is called by the scheduler to ensure that children are
- // updated in a parent's updated hook.
- };
- Vue.prototype.$forceUpdate = function () {
- var vm = this;
- if (vm._watcher) {
- vm._watcher.update();
- }
- };
- Vue.prototype.$destroy = function () {
- var vm = this;
- if (vm._isBeingDestroyed) {
- return
- }
- callHook(vm, 'beforeDestroy');
- vm._isBeingDestroyed = true;
- // remove self from parent
- var parent = vm.$parent;
- if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {
- remove(parent.$children, vm);
- }
- // teardown watchers
- if (vm._watcher) {
- vm._watcher.teardown();
- }
- var i = vm._watchers.length;
- while (i--) {
- vm._watchers[i].teardown();
- }
- // remove reference from data ob
- // frozen object may not have observer.
- if (vm._data.__ob__) {
- vm._data.__ob__.vmCount--;
- }
- // call the last hook...
- vm._isDestroyed = true;
- // invoke destroy hooks on current rendered tree
- vm.__patch__(vm._vnode, null);
- // fire destroyed hook
- callHook(vm, 'destroyed');
- // turn off all instance listeners.
- vm.$off();
- // remove __vue__ reference
- if (vm.$el) {
- vm.$el.__vue__ = null;
- }
- // release circular reference (#6759)
- if (vm.$vnode) {
- vm.$vnode.parent = null;
- }
- };
- }
- function updateChildComponent (
- vm,
- propsData,
- listeners,
- parentVnode,
- renderChildren
- ) {
- if (true) {
- isUpdatingChildComponent = true;
- }
- // determine whether component has slot children
- // we need to do this before overwriting $options._renderChildren.
- // check if there are dynamic scopedSlots (hand-written or compiled but with
- // dynamic slot names). Static scoped slots compiled from template has the
- // "$stable" marker.
- var newScopedSlots = parentVnode.data.scopedSlots;
- var oldScopedSlots = vm.$scopedSlots;
- var hasDynamicScopedSlot = !!(
- (newScopedSlots && !newScopedSlots.$stable) ||
- (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
- (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)
- );
- // Any static slot children from the parent may have changed during parent's
- // update. Dynamic scoped slots may also have changed. In such cases, a forced
- // update is necessary to ensure correctness.
- var needsForceUpdate = !!(
- renderChildren || // has new static slots
- vm.$options._renderChildren || // has old static slots
- hasDynamicScopedSlot
- );
- vm.$options._parentVnode = parentVnode;
- vm.$vnode = parentVnode; // update vm's placeholder node without re-render
- if (vm._vnode) { // update child tree's parent
- vm._vnode.parent = parentVnode;
- }
- vm.$options._renderChildren = renderChildren;
- // update $attrs and $listeners hash
- // these are also reactive so they may trigger child update if the child
- // used them during render
- vm.$attrs = parentVnode.data.attrs || emptyObject;
- vm.$listeners = listeners || emptyObject;
- // update props
- if (propsData && vm.$options.props) {
- toggleObserving(false);
- var props = vm._props;
- var propKeys = vm.$options._propKeys || [];
- for (var i = 0; i < propKeys.length; i++) {
- var key = propKeys[i];
- var propOptions = vm.$options.props; // wtf flow?
- props[key] = validateProp(key, propOptions, propsData, vm);
- }
- toggleObserving(true);
- // keep a copy of raw propsData
- vm.$options.propsData = propsData;
- }
-
- // fixed by xxxxxx update properties(mp runtime)
- vm._$updateProperties && vm._$updateProperties(vm);
-
- // update listeners
- listeners = listeners || emptyObject;
- var oldListeners = vm.$options._parentListeners;
- vm.$options._parentListeners = listeners;
- updateComponentListeners(vm, listeners, oldListeners);
- // resolve slots + force update if has children
- if (needsForceUpdate) {
- vm.$slots = resolveSlots(renderChildren, parentVnode.context);
- vm.$forceUpdate();
- }
- if (true) {
- isUpdatingChildComponent = false;
- }
- }
- function isInInactiveTree (vm) {
- while (vm && (vm = vm.$parent)) {
- if (vm._inactive) { return true }
- }
- return false
- }
- function activateChildComponent (vm, direct) {
- if (direct) {
- vm._directInactive = false;
- if (isInInactiveTree(vm)) {
- return
- }
- } else if (vm._directInactive) {
- return
- }
- if (vm._inactive || vm._inactive === null) {
- vm._inactive = false;
- for (var i = 0; i < vm.$children.length; i++) {
- activateChildComponent(vm.$children[i]);
- }
- callHook(vm, 'activated');
- }
- }
- function deactivateChildComponent (vm, direct) {
- if (direct) {
- vm._directInactive = true;
- if (isInInactiveTree(vm)) {
- return
- }
- }
- if (!vm._inactive) {
- vm._inactive = true;
- for (var i = 0; i < vm.$children.length; i++) {
- deactivateChildComponent(vm.$children[i]);
- }
- callHook(vm, 'deactivated');
- }
- }
- function callHook (vm, hook) {
- // #7573 disable dep collection when invoking lifecycle hooks
- pushTarget();
- var handlers = vm.$options[hook];
- var info = hook + " hook";
- if (handlers) {
- for (var i = 0, j = handlers.length; i < j; i++) {
- invokeWithErrorHandling(handlers[i], vm, null, vm, info);
- }
- }
- if (vm._hasHookEvent) {
- vm.$emit('hook:' + hook);
- }
- popTarget();
- }
- /* */
- var MAX_UPDATE_COUNT = 100;
- var queue = [];
- var activatedChildren = [];
- var has = {};
- var circular = {};
- var waiting = false;
- var flushing = false;
- var index = 0;
- /**
- * Reset the scheduler's state.
- */
- function resetSchedulerState () {
- index = queue.length = activatedChildren.length = 0;
- has = {};
- if (true) {
- circular = {};
- }
- waiting = flushing = false;
- }
- // Async edge case #6566 requires saving the timestamp when event listeners are
- // attached. However, calling performance.now() has a perf overhead especially
- // if the page has thousands of event listeners. Instead, we take a timestamp
- // every time the scheduler flushes and use that for all event listeners
- // attached during that flush.
- var currentFlushTimestamp = 0;
- // Async edge case fix requires storing an event listener's attach timestamp.
- var getNow = Date.now;
- // Determine what event timestamp the browser is using. Annoyingly, the
- // timestamp can either be hi-res (relative to page load) or low-res
- // (relative to UNIX epoch), so in order to compare time we have to use the
- // same timestamp type when saving the flush timestamp.
- // All IE versions use low-res event timestamps, and have problematic clock
- // implementations (#9632)
- if (inBrowser && !isIE) {
- var performance = window.performance;
- if (
- performance &&
- typeof performance.now === 'function' &&
- getNow() > document.createEvent('Event').timeStamp
- ) {
- // if the event timestamp, although evaluated AFTER the Date.now(), is
- // smaller than it, it means the event is using a hi-res timestamp,
- // and we need to use the hi-res version for event listener timestamps as
- // well.
- getNow = function () { return performance.now(); };
- }
- }
- /**
- * Flush both queues and run the watchers.
- */
- function flushSchedulerQueue () {
- currentFlushTimestamp = getNow();
- flushing = true;
- var watcher, id;
- // Sort queue before flush.
- // This ensures that:
- // 1. Components are updated from parent to child. (because parent is always
- // created before the child)
- // 2. A component's user watchers are run before its render watcher (because
- // user watchers are created before the render watcher)
- // 3. If a component is destroyed during a parent component's watcher run,
- // its watchers can be skipped.
- queue.sort(function (a, b) { return a.id - b.id; });
- // do not cache length because more watchers might be pushed
- // as we run existing watchers
- for (index = 0; index < queue.length; index++) {
- watcher = queue[index];
- if (watcher.before) {
- watcher.before();
- }
- id = watcher.id;
- has[id] = null;
- watcher.run();
- // in dev build, check and stop circular updates.
- if ( true && has[id] != null) {
- circular[id] = (circular[id] || 0) + 1;
- if (circular[id] > MAX_UPDATE_COUNT) {
- warn(
- 'You may have an infinite update loop ' + (
- watcher.user
- ? ("in watcher with expression \"" + (watcher.expression) + "\"")
- : "in a component render function."
- ),
- watcher.vm
- );
- break
- }
- }
- }
- // keep copies of post queues before resetting state
- var activatedQueue = activatedChildren.slice();
- var updatedQueue = queue.slice();
- resetSchedulerState();
- // call component updated and activated hooks
- callActivatedHooks(activatedQueue);
- callUpdatedHooks(updatedQueue);
- // devtool hook
- /* istanbul ignore if */
- if (devtools && config.devtools) {
- devtools.emit('flush');
- }
- }
- function callUpdatedHooks (queue) {
- var i = queue.length;
- while (i--) {
- var watcher = queue[i];
- var vm = watcher.vm;
- if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {
- callHook(vm, 'updated');
- }
- }
- }
- /**
- * Queue a kept-alive component that was activated during patch.
- * The queue will be processed after the entire tree has been patched.
- */
- function queueActivatedComponent (vm) {
- // setting _inactive to false here so that a render function can
- // rely on checking whether it's in an inactive tree (e.g. router-view)
- vm._inactive = false;
- activatedChildren.push(vm);
- }
- function callActivatedHooks (queue) {
- for (var i = 0; i < queue.length; i++) {
- queue[i]._inactive = true;
- activateChildComponent(queue[i], true /* true */);
- }
- }
- /**
- * Push a watcher into the watcher queue.
- * Jobs with duplicate IDs will be skipped unless it's
- * pushed when the queue is being flushed.
- */
- function queueWatcher (watcher) {
- var id = watcher.id;
- if (has[id] == null) {
- has[id] = true;
- if (!flushing) {
- queue.push(watcher);
- } else {
- // if already flushing, splice the watcher based on its id
- // if already past its id, it will be run next immediately.
- var i = queue.length - 1;
- while (i > index && queue[i].id > watcher.id) {
- i--;
- }
- queue.splice(i + 1, 0, watcher);
- }
- // queue the flush
- if (!waiting) {
- waiting = true;
- if ( true && !config.async) {
- flushSchedulerQueue();
- return
- }
- nextTick(flushSchedulerQueue);
- }
- }
- }
- /* */
- var uid$2 = 0;
- /**
- * A watcher parses an expression, collects dependencies,
- * and fires callback when the expression value changes.
- * This is used for both the $watch() api and directives.
- */
- var Watcher = function Watcher (
- vm,
- expOrFn,
- cb,
- options,
- isRenderWatcher
- ) {
- this.vm = vm;
- if (isRenderWatcher) {
- vm._watcher = this;
- }
- vm._watchers.push(this);
- // options
- if (options) {
- this.deep = !!options.deep;
- this.user = !!options.user;
- this.lazy = !!options.lazy;
- this.sync = !!options.sync;
- this.before = options.before;
- } else {
- this.deep = this.user = this.lazy = this.sync = false;
- }
- this.cb = cb;
- this.id = ++uid$2; // uid for batching
- this.active = true;
- this.dirty = this.lazy; // for lazy watchers
- this.deps = [];
- this.newDeps = [];
- this.depIds = new _Set();
- this.newDepIds = new _Set();
- this.expression = true
- ? expOrFn.toString()
- : undefined;
- // parse expression for getter
- if (typeof expOrFn === 'function') {
- this.getter = expOrFn;
- } else {
- this.getter = parsePath(expOrFn);
- if (!this.getter) {
- this.getter = noop;
- true && warn(
- "Failed watching path: \"" + expOrFn + "\" " +
- 'Watcher only accepts simple dot-delimited paths. ' +
- 'For full control, use a function instead.',
- vm
- );
- }
- }
- this.value = this.lazy
- ? undefined
- : this.get();
- };
- /**
- * Evaluate the getter, and re-collect dependencies.
- */
- Watcher.prototype.get = function get () {
- pushTarget(this);
- var value;
- var vm = this.vm;
- try {
- value = this.getter.call(vm, vm);
- } catch (e) {
- if (this.user) {
- handleError(e, vm, ("getter for watcher \"" + (this.expression) + "\""));
- } else {
- throw e
- }
- } finally {
- // "touch" every property so they are all tracked as
- // dependencies for deep watching
- if (this.deep) {
- traverse(value);
- }
- popTarget();
- this.cleanupDeps();
- }
- return value
- };
- /**
- * Add a dependency to this directive.
- */
- Watcher.prototype.addDep = function addDep (dep) {
- var id = dep.id;
- if (!this.newDepIds.has(id)) {
- this.newDepIds.add(id);
- this.newDeps.push(dep);
- if (!this.depIds.has(id)) {
- dep.addSub(this);
- }
- }
- };
- /**
- * Clean up for dependency collection.
- */
- Watcher.prototype.cleanupDeps = function cleanupDeps () {
- var i = this.deps.length;
- while (i--) {
- var dep = this.deps[i];
- if (!this.newDepIds.has(dep.id)) {
- dep.removeSub(this);
- }
- }
- var tmp = this.depIds;
- this.depIds = this.newDepIds;
- this.newDepIds = tmp;
- this.newDepIds.clear();
- tmp = this.deps;
- this.deps = this.newDeps;
- this.newDeps = tmp;
- this.newDeps.length = 0;
- };
- /**
- * Subscriber interface.
- * Will be called when a dependency changes.
- */
- Watcher.prototype.update = function update () {
- /* istanbul ignore else */
- if (this.lazy) {
- this.dirty = true;
- } else if (this.sync) {
- this.run();
- } else {
- queueWatcher(this);
- }
- };
- /**
- * Scheduler job interface.
- * Will be called by the scheduler.
- */
- Watcher.prototype.run = function run () {
- if (this.active) {
- var value = this.get();
- if (
- value !== this.value ||
- // Deep watchers and watchers on Object/Arrays should fire even
- // when the value is the same, because the value may
- // have mutated.
- isObject(value) ||
- this.deep
- ) {
- // set new value
- var oldValue = this.value;
- this.value = value;
- if (this.user) {
- try {
- this.cb.call(this.vm, value, oldValue);
- } catch (e) {
- handleError(e, this.vm, ("callback for watcher \"" + (this.expression) + "\""));
- }
- } else {
- this.cb.call(this.vm, value, oldValue);
- }
- }
- }
- };
- /**
- * Evaluate the value of the watcher.
- * This only gets called for lazy watchers.
- */
- Watcher.prototype.evaluate = function evaluate () {
- this.value = this.get();
- this.dirty = false;
- };
- /**
- * Depend on all deps collected by this watcher.
- */
- Watcher.prototype.depend = function depend () {
- var i = this.deps.length;
- while (i--) {
- this.deps[i].depend();
- }
- };
- /**
- * Remove self from all dependencies' subscriber list.
- */
- Watcher.prototype.teardown = function teardown () {
- if (this.active) {
- // remove self from vm's watcher list
- // this is a somewhat expensive operation so we skip it
- // if the vm is being destroyed.
- if (!this.vm._isBeingDestroyed) {
- remove(this.vm._watchers, this);
- }
- var i = this.deps.length;
- while (i--) {
- this.deps[i].removeSub(this);
- }
- this.active = false;
- }
- };
- /* */
- var sharedPropertyDefinition = {
- enumerable: true,
- configurable: true,
- get: noop,
- set: noop
- };
- function proxy (target, sourceKey, key) {
- sharedPropertyDefinition.get = function proxyGetter () {
- return this[sourceKey][key]
- };
- sharedPropertyDefinition.set = function proxySetter (val) {
- this[sourceKey][key] = val;
- };
- Object.defineProperty(target, key, sharedPropertyDefinition);
- }
- function initState (vm) {
- vm._watchers = [];
- var opts = vm.$options;
- if (opts.props) { initProps(vm, opts.props); }
- if (opts.methods) { initMethods(vm, opts.methods); }
- if (opts.data) {
- initData(vm);
- } else {
- observe(vm._data = {}, true /* asRootData */);
- }
- if (opts.computed) { initComputed(vm, opts.computed); }
- if (opts.watch && opts.watch !== nativeWatch) {
- initWatch(vm, opts.watch);
- }
- }
- function initProps (vm, propsOptions) {
- var propsData = vm.$options.propsData || {};
- var props = vm._props = {};
- // cache prop keys so that future props updates can iterate using Array
- // instead of dynamic object key enumeration.
- var keys = vm.$options._propKeys = [];
- var isRoot = !vm.$parent;
- // root instance props should be converted
- if (!isRoot) {
- toggleObserving(false);
- }
- var loop = function ( key ) {
- keys.push(key);
- var value = validateProp(key, propsOptions, propsData, vm);
- /* istanbul ignore else */
- if (true) {
- var hyphenatedKey = hyphenate(key);
- if (isReservedAttribute(hyphenatedKey) ||
- config.isReservedAttr(hyphenatedKey)) {
- warn(
- ("\"" + hyphenatedKey + "\" is a reserved attribute and cannot be used as component prop."),
- vm
- );
- }
- defineReactive$$1(props, key, value, function () {
- if (!isRoot && !isUpdatingChildComponent) {
- {
- if(vm.mpHost === 'mp-baidu'){//百度 observer 在 setData callback 之后触发,直接忽略该 warn
- return
- }
- //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警
- if(
- key === 'value' &&
- Array.isArray(vm.$options.behaviors) &&
- vm.$options.behaviors.indexOf('uni://form-field') !== -1
- ){
- return
- }
- if(vm._getFormData){
- return
- }
- var $parent = vm.$parent;
- while($parent){
- if($parent.__next_tick_pending){
- return
- }
- $parent = $parent.$parent;
- }
- }
- warn(
- "Avoid mutating a prop directly since the value will be " +
- "overwritten whenever the parent component re-renders. " +
- "Instead, use a data or computed property based on the prop's " +
- "value. Prop being mutated: \"" + key + "\"",
- vm
- );
- }
- });
- } else {}
- // static props are already proxied on the component's prototype
- // during Vue.extend(). We only need to proxy props defined at
- // instantiation here.
- if (!(key in vm)) {
- proxy(vm, "_props", key);
- }
- };
- for (var key in propsOptions) loop( key );
- toggleObserving(true);
- }
- function initData (vm) {
- var data = vm.$options.data;
- data = vm._data = typeof data === 'function'
- ? getData(data, vm)
- : data || {};
- if (!isPlainObject(data)) {
- data = {};
- true && warn(
- 'data functions should return an object:\n' +
- 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
- vm
- );
- }
- // proxy data on instance
- var keys = Object.keys(data);
- var props = vm.$options.props;
- var methods = vm.$options.methods;
- var i = keys.length;
- while (i--) {
- var key = keys[i];
- if (true) {
- if (methods && hasOwn(methods, key)) {
- warn(
- ("Method \"" + key + "\" has already been defined as a data property."),
- vm
- );
- }
- }
- if (props && hasOwn(props, key)) {
- true && warn(
- "The data property \"" + key + "\" is already declared as a prop. " +
- "Use prop default value instead.",
- vm
- );
- } else if (!isReserved(key)) {
- proxy(vm, "_data", key);
- }
- }
- // observe data
- observe(data, true /* asRootData */);
- }
- function getData (data, vm) {
- // #7573 disable dep collection when invoking data getters
- pushTarget();
- try {
- return data.call(vm, vm)
- } catch (e) {
- handleError(e, vm, "data()");
- return {}
- } finally {
- popTarget();
- }
- }
- var computedWatcherOptions = { lazy: true };
- function initComputed (vm, computed) {
- // $flow-disable-line
- var watchers = vm._computedWatchers = Object.create(null);
- // computed properties are just getters during SSR
- var isSSR = isServerRendering();
- for (var key in computed) {
- var userDef = computed[key];
- var getter = typeof userDef === 'function' ? userDef : userDef.get;
- if ( true && getter == null) {
- warn(
- ("Getter is missing for computed property \"" + key + "\"."),
- vm
- );
- }
- if (!isSSR) {
- // create internal watcher for the computed property.
- watchers[key] = new Watcher(
- vm,
- getter || noop,
- noop,
- computedWatcherOptions
- );
- }
- // component-defined computed properties are already defined on the
- // component prototype. We only need to define computed properties defined
- // at instantiation here.
- if (!(key in vm)) {
- defineComputed(vm, key, userDef);
- } else if (true) {
- if (key in vm.$data) {
- warn(("The computed property \"" + key + "\" is already defined in data."), vm);
- } else if (vm.$options.props && key in vm.$options.props) {
- warn(("The computed property \"" + key + "\" is already defined as a prop."), vm);
- }
- }
- }
- }
- function defineComputed (
- target,
- key,
- userDef
- ) {
- var shouldCache = !isServerRendering();
- if (typeof userDef === 'function') {
- sharedPropertyDefinition.get = shouldCache
- ? createComputedGetter(key)
- : createGetterInvoker(userDef);
- sharedPropertyDefinition.set = noop;
- } else {
- sharedPropertyDefinition.get = userDef.get
- ? shouldCache && userDef.cache !== false
- ? createComputedGetter(key)
- : createGetterInvoker(userDef.get)
- : noop;
- sharedPropertyDefinition.set = userDef.set || noop;
- }
- if ( true &&
- sharedPropertyDefinition.set === noop) {
- sharedPropertyDefinition.set = function () {
- warn(
- ("Computed property \"" + key + "\" was assigned to but it has no setter."),
- this
- );
- };
- }
- Object.defineProperty(target, key, sharedPropertyDefinition);
- }
- function createComputedGetter (key) {
- return function computedGetter () {
- var watcher = this._computedWatchers && this._computedWatchers[key];
- if (watcher) {
- if (watcher.dirty) {
- watcher.evaluate();
- }
- if (Dep.SharedObject.target) {// fixed by xxxxxx
- watcher.depend();
- }
- return watcher.value
- }
- }
- }
- function createGetterInvoker(fn) {
- return function computedGetter () {
- return fn.call(this, this)
- }
- }
- function initMethods (vm, methods) {
- var props = vm.$options.props;
- for (var key in methods) {
- if (true) {
- if (typeof methods[key] !== 'function') {
- warn(
- "Method \"" + key + "\" has type \"" + (typeof methods[key]) + "\" in the component definition. " +
- "Did you reference the function correctly?",
- vm
- );
- }
- if (props && hasOwn(props, key)) {
- warn(
- ("Method \"" + key + "\" has already been defined as a prop."),
- vm
- );
- }
- if ((key in vm) && isReserved(key)) {
- warn(
- "Method \"" + key + "\" conflicts with an existing Vue instance method. " +
- "Avoid defining component methods that start with _ or $."
- );
- }
- }
- vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);
- }
- }
- function initWatch (vm, watch) {
- for (var key in watch) {
- var handler = watch[key];
- if (Array.isArray(handler)) {
- for (var i = 0; i < handler.length; i++) {
- createWatcher(vm, key, handler[i]);
- }
- } else {
- createWatcher(vm, key, handler);
- }
- }
- }
- function createWatcher (
- vm,
- expOrFn,
- handler,
- options
- ) {
- if (isPlainObject(handler)) {
- options = handler;
- handler = handler.handler;
- }
- if (typeof handler === 'string') {
- handler = vm[handler];
- }
- return vm.$watch(expOrFn, handler, options)
- }
- function stateMixin (Vue) {
- // flow somehow has problems with directly declared definition object
- // when using Object.defineProperty, so we have to procedurally build up
- // the object here.
- var dataDef = {};
- dataDef.get = function () { return this._data };
- var propsDef = {};
- propsDef.get = function () { return this._props };
- if (true) {
- dataDef.set = function () {
- warn(
- 'Avoid replacing instance root $data. ' +
- 'Use nested data properties instead.',
- this
- );
- };
- propsDef.set = function () {
- warn("$props is readonly.", this);
- };
- }
- Object.defineProperty(Vue.prototype, '$data', dataDef);
- Object.defineProperty(Vue.prototype, '$props', propsDef);
- Vue.prototype.$set = set;
- Vue.prototype.$delete = del;
- Vue.prototype.$watch = function (
- expOrFn,
- cb,
- options
- ) {
- var vm = this;
- if (isPlainObject(cb)) {
- return createWatcher(vm, expOrFn, cb, options)
- }
- options = options || {};
- options.user = true;
- var watcher = new Watcher(vm, expOrFn, cb, options);
- if (options.immediate) {
- try {
- cb.call(vm, watcher.value);
- } catch (error) {
- handleError(error, vm, ("callback for immediate watcher \"" + (watcher.expression) + "\""));
- }
- }
- return function unwatchFn () {
- watcher.teardown();
- }
- };
- }
- /* */
- var uid$3 = 0;
- function initMixin (Vue) {
- Vue.prototype._init = function (options) {
- var vm = this;
- // a uid
- vm._uid = uid$3++;
- var startTag, endTag;
- /* istanbul ignore if */
- if ( true && config.performance && mark) {
- startTag = "vue-perf-start:" + (vm._uid);
- endTag = "vue-perf-end:" + (vm._uid);
- mark(startTag);
- }
- // a flag to avoid this being observed
- vm._isVue = true;
- // merge options
- if (options && options._isComponent) {
- // optimize internal component instantiation
- // since dynamic options merging is pretty slow, and none of the
- // internal component options needs special treatment.
- initInternalComponent(vm, options);
- } else {
- vm.$options = mergeOptions(
- resolveConstructorOptions(vm.constructor),
- options || {},
- vm
- );
- }
- /* istanbul ignore else */
- if (true) {
- initProxy(vm);
- } else {}
- // expose real self
- vm._self = vm;
- initLifecycle(vm);
- initEvents(vm);
- initRender(vm);
- callHook(vm, 'beforeCreate');
- vm.mpHost !== 'mp-toutiao' && initInjections(vm); // resolve injections before data/props
- initState(vm);
- vm.mpHost !== 'mp-toutiao' && initProvide(vm); // resolve provide after data/props
- vm.mpHost !== 'mp-toutiao' && callHook(vm, 'created');
- /* istanbul ignore if */
- if ( true && config.performance && mark) {
- vm._name = formatComponentName(vm, false);
- mark(endTag);
- measure(("vue " + (vm._name) + " init"), startTag, endTag);
- }
- if (vm.$options.el) {
- vm.$mount(vm.$options.el);
- }
- };
- }
- function initInternalComponent (vm, options) {
- var opts = vm.$options = Object.create(vm.constructor.options);
- // doing this because it's faster than dynamic enumeration.
- var parentVnode = options._parentVnode;
- opts.parent = options.parent;
- opts._parentVnode = parentVnode;
- var vnodeComponentOptions = parentVnode.componentOptions;
- opts.propsData = vnodeComponentOptions.propsData;
- opts._parentListeners = vnodeComponentOptions.listeners;
- opts._renderChildren = vnodeComponentOptions.children;
- opts._componentTag = vnodeComponentOptions.tag;
- if (options.render) {
- opts.render = options.render;
- opts.staticRenderFns = options.staticRenderFns;
- }
- }
- function resolveConstructorOptions (Ctor) {
- var options = Ctor.options;
- if (Ctor.super) {
- var superOptions = resolveConstructorOptions(Ctor.super);
- var cachedSuperOptions = Ctor.superOptions;
- if (superOptions !== cachedSuperOptions) {
- // super option changed,
- // need to resolve new options.
- Ctor.superOptions = superOptions;
- // check if there are any late-modified/attached options (#4976)
- var modifiedOptions = resolveModifiedOptions(Ctor);
- // update base extend options
- if (modifiedOptions) {
- extend(Ctor.extendOptions, modifiedOptions);
- }
- options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);
- if (options.name) {
- options.components[options.name] = Ctor;
- }
- }
- }
- return options
- }
- function resolveModifiedOptions (Ctor) {
- var modified;
- var latest = Ctor.options;
- var sealed = Ctor.sealedOptions;
- for (var key in latest) {
- if (latest[key] !== sealed[key]) {
- if (!modified) { modified = {}; }
- modified[key] = latest[key];
- }
- }
- return modified
- }
- function Vue (options) {
- if ( true &&
- !(this instanceof Vue)
- ) {
- warn('Vue is a constructor and should be called with the `new` keyword');
- }
- this._init(options);
- }
- initMixin(Vue);
- stateMixin(Vue);
- eventsMixin(Vue);
- lifecycleMixin(Vue);
- renderMixin(Vue);
- /* */
- function initUse (Vue) {
- Vue.use = function (plugin) {
- var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));
- if (installedPlugins.indexOf(plugin) > -1) {
- return this
- }
- // additional parameters
- var args = toArray(arguments, 1);
- args.unshift(this);
- if (typeof plugin.install === 'function') {
- plugin.install.apply(plugin, args);
- } else if (typeof plugin === 'function') {
- plugin.apply(null, args);
- }
- installedPlugins.push(plugin);
- return this
- };
- }
- /* */
- function initMixin$1 (Vue) {
- Vue.mixin = function (mixin) {
- this.options = mergeOptions(this.options, mixin);
- return this
- };
- }
- /* */
- function initExtend (Vue) {
- /**
- * Each instance constructor, including Vue, has a unique
- * cid. This enables us to create wrapped "child
- * constructors" for prototypal inheritance and cache them.
- */
- Vue.cid = 0;
- var cid = 1;
- /**
- * Class inheritance
- */
- Vue.extend = function (extendOptions) {
- extendOptions = extendOptions || {};
- var Super = this;
- var SuperId = Super.cid;
- var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});
- if (cachedCtors[SuperId]) {
- return cachedCtors[SuperId]
- }
- var name = extendOptions.name || Super.options.name;
- if ( true && name) {
- validateComponentName(name);
- }
- var Sub = function VueComponent (options) {
- this._init(options);
- };
- Sub.prototype = Object.create(Super.prototype);
- Sub.prototype.constructor = Sub;
- Sub.cid = cid++;
- Sub.options = mergeOptions(
- Super.options,
- extendOptions
- );
- Sub['super'] = Super;
- // For props and computed properties, we define the proxy getters on
- // the Vue instances at extension time, on the extended prototype. This
- // avoids Object.defineProperty calls for each instance created.
- if (Sub.options.props) {
- initProps$1(Sub);
- }
- if (Sub.options.computed) {
- initComputed$1(Sub);
- }
- // allow further extension/mixin/plugin usage
- Sub.extend = Super.extend;
- Sub.mixin = Super.mixin;
- Sub.use = Super.use;
- // create asset registers, so extended classes
- // can have their private assets too.
- ASSET_TYPES.forEach(function (type) {
- Sub[type] = Super[type];
- });
- // enable recursive self-lookup
- if (name) {
- Sub.options.components[name] = Sub;
- }
- // keep a reference to the super options at extension time.
- // later at instantiation we can check if Super's options have
- // been updated.
- Sub.superOptions = Super.options;
- Sub.extendOptions = extendOptions;
- Sub.sealedOptions = extend({}, Sub.options);
- // cache constructor
- cachedCtors[SuperId] = Sub;
- return Sub
- };
- }
- function initProps$1 (Comp) {
- var props = Comp.options.props;
- for (var key in props) {
- proxy(Comp.prototype, "_props", key);
- }
- }
- function initComputed$1 (Comp) {
- var computed = Comp.options.computed;
- for (var key in computed) {
- defineComputed(Comp.prototype, key, computed[key]);
- }
- }
- /* */
- function initAssetRegisters (Vue) {
- /**
- * Create asset registration methods.
- */
- ASSET_TYPES.forEach(function (type) {
- Vue[type] = function (
- id,
- definition
- ) {
- if (!definition) {
- return this.options[type + 's'][id]
- } else {
- /* istanbul ignore if */
- if ( true && type === 'component') {
- validateComponentName(id);
- }
- if (type === 'component' && isPlainObject(definition)) {
- definition.name = definition.name || id;
- definition = this.options._base.extend(definition);
- }
- if (type === 'directive' && typeof definition === 'function') {
- definition = { bind: definition, update: definition };
- }
- this.options[type + 's'][id] = definition;
- return definition
- }
- };
- });
- }
- /* */
- function getComponentName (opts) {
- return opts && (opts.Ctor.options.name || opts.tag)
- }
- function matches (pattern, name) {
- if (Array.isArray(pattern)) {
- return pattern.indexOf(name) > -1
- } else if (typeof pattern === 'string') {
- return pattern.split(',').indexOf(name) > -1
- } else if (isRegExp(pattern)) {
- return pattern.test(name)
- }
- /* istanbul ignore next */
- return false
- }
- function pruneCache (keepAliveInstance, filter) {
- var cache = keepAliveInstance.cache;
- var keys = keepAliveInstance.keys;
- var _vnode = keepAliveInstance._vnode;
- for (var key in cache) {
- var cachedNode = cache[key];
- if (cachedNode) {
- var name = getComponentName(cachedNode.componentOptions);
- if (name && !filter(name)) {
- pruneCacheEntry(cache, key, keys, _vnode);
- }
- }
- }
- }
- function pruneCacheEntry (
- cache,
- key,
- keys,
- current
- ) {
- var cached$$1 = cache[key];
- if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {
- cached$$1.componentInstance.$destroy();
- }
- cache[key] = null;
- remove(keys, key);
- }
- var patternTypes = [String, RegExp, Array];
- var KeepAlive = {
- name: 'keep-alive',
- abstract: true,
- props: {
- include: patternTypes,
- exclude: patternTypes,
- max: [String, Number]
- },
- created: function created () {
- this.cache = Object.create(null);
- this.keys = [];
- },
- destroyed: function destroyed () {
- for (var key in this.cache) {
- pruneCacheEntry(this.cache, key, this.keys);
- }
- },
- mounted: function mounted () {
- var this$1 = this;
- this.$watch('include', function (val) {
- pruneCache(this$1, function (name) { return matches(val, name); });
- });
- this.$watch('exclude', function (val) {
- pruneCache(this$1, function (name) { return !matches(val, name); });
- });
- },
- render: function render () {
- var slot = this.$slots.default;
- var vnode = getFirstComponentChild(slot);
- var componentOptions = vnode && vnode.componentOptions;
- if (componentOptions) {
- // check pattern
- var name = getComponentName(componentOptions);
- var ref = this;
- var include = ref.include;
- var exclude = ref.exclude;
- if (
- // not included
- (include && (!name || !matches(include, name))) ||
- // excluded
- (exclude && name && matches(exclude, name))
- ) {
- return vnode
- }
- var ref$1 = this;
- var cache = ref$1.cache;
- var keys = ref$1.keys;
- var key = vnode.key == null
- // same constructor may get registered as different local components
- // so cid alone is not enough (#3269)
- ? componentOptions.Ctor.cid + (componentOptions.tag ? ("::" + (componentOptions.tag)) : '')
- : vnode.key;
- if (cache[key]) {
- vnode.componentInstance = cache[key].componentInstance;
- // make current key freshest
- remove(keys, key);
- keys.push(key);
- } else {
- cache[key] = vnode;
- keys.push(key);
- // prune oldest entry
- if (this.max && keys.length > parseInt(this.max)) {
- pruneCacheEntry(cache, keys[0], keys, this._vnode);
- }
- }
- vnode.data.keepAlive = true;
- }
- return vnode || (slot && slot[0])
- }
- };
- var builtInComponents = {
- KeepAlive: KeepAlive
- };
- /* */
- function initGlobalAPI (Vue) {
- // config
- var configDef = {};
- configDef.get = function () { return config; };
- if (true) {
- configDef.set = function () {
- warn(
- 'Do not replace the Vue.config object, set individual fields instead.'
- );
- };
- }
- Object.defineProperty(Vue, 'config', configDef);
- // exposed util methods.
- // NOTE: these are not considered part of the public API - avoid relying on
- // them unless you are aware of the risk.
- Vue.util = {
- warn: warn,
- extend: extend,
- mergeOptions: mergeOptions,
- defineReactive: defineReactive$$1
- };
- Vue.set = set;
- Vue.delete = del;
- Vue.nextTick = nextTick;
- // 2.6 explicit observable API
- Vue.observable = function (obj) {
- observe(obj);
- return obj
- };
- Vue.options = Object.create(null);
- ASSET_TYPES.forEach(function (type) {
- Vue.options[type + 's'] = Object.create(null);
- });
- // this is used to identify the "base" constructor to extend all plain-object
- // components with in Weex's multi-instance scenarios.
- Vue.options._base = Vue;
- extend(Vue.options.components, builtInComponents);
- initUse(Vue);
- initMixin$1(Vue);
- initExtend(Vue);
- initAssetRegisters(Vue);
- }
- initGlobalAPI(Vue);
- Object.defineProperty(Vue.prototype, '$isServer', {
- get: isServerRendering
- });
- Object.defineProperty(Vue.prototype, '$ssrContext', {
- get: function get () {
- /* istanbul ignore next */
- return this.$vnode && this.$vnode.ssrContext
- }
- });
- // expose FunctionalRenderContext for ssr runtime helper installation
- Object.defineProperty(Vue, 'FunctionalRenderContext', {
- value: FunctionalRenderContext
- });
- Vue.version = '2.6.11';
- /**
- * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js
- */
- var ARRAYTYPE = '[object Array]';
- var OBJECTTYPE = '[object Object]';
- // const FUNCTIONTYPE = '[object Function]'
- function diff(current, pre) {
- var result = {};
- syncKeys(current, pre);
- _diff(current, pre, '', result);
- return result
- }
- function syncKeys(current, pre) {
- if (current === pre) { return }
- var rootCurrentType = type(current);
- var rootPreType = type(pre);
- if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {
- if(Object.keys(current).length >= Object.keys(pre).length){
- for (var key in pre) {
- var currentValue = current[key];
- if (currentValue === undefined) {
- current[key] = null;
- } else {
- syncKeys(currentValue, pre[key]);
- }
- }
- }
- } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {
- if (current.length >= pre.length) {
- pre.forEach(function (item, index) {
- syncKeys(current[index], item);
- });
- }
- }
- }
- function _diff(current, pre, path, result) {
- if (current === pre) { return }
- var rootCurrentType = type(current);
- var rootPreType = type(pre);
- if (rootCurrentType == OBJECTTYPE) {
- if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {
- setResult(result, path, current);
- } else {
- var loop = function ( key ) {
- var currentValue = current[key];
- var preValue = pre[key];
- var currentType = type(currentValue);
- var preType = type(preValue);
- if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {
- if (currentValue != pre[key]) {
- setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
- }
- } else if (currentType == ARRAYTYPE) {
- if (preType != ARRAYTYPE) {
- setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
- } else {
- if (currentValue.length < preValue.length) {
- setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
- } else {
- currentValue.forEach(function (item, index) {
- _diff(item, preValue[index], (path == '' ? '' : path + ".") + key + '[' + index + ']', result);
- });
- }
- }
- } else if (currentType == OBJECTTYPE) {
- if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {
- setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
- } else {
- for (var subKey in currentValue) {
- _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + ".") + key + '.' + subKey, result);
- }
- }
- }
- };
- for (var key in current) loop( key );
- }
- } else if (rootCurrentType == ARRAYTYPE) {
- if (rootPreType != ARRAYTYPE) {
- setResult(result, path, current);
- } else {
- if (current.length < pre.length) {
- setResult(result, path, current);
- } else {
- current.forEach(function (item, index) {
- _diff(item, pre[index], path + '[' + index + ']', result);
- });
- }
- }
- } else {
- setResult(result, path, current);
- }
- }
- function setResult(result, k, v) {
- // if (type(v) != FUNCTIONTYPE) {
- result[k] = v;
- // }
- }
- function type(obj) {
- return Object.prototype.toString.call(obj)
- }
- /* */
- function flushCallbacks$1(vm) {
- if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {
- if (Object({"NODE_ENV":"development","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
- var mpInstance = vm.$scope;
- console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
- ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');
- }
- var copies = vm.__next_tick_callbacks.slice(0);
- vm.__next_tick_callbacks.length = 0;
- for (var i = 0; i < copies.length; i++) {
- copies[i]();
- }
- }
- }
- function hasRenderWatcher(vm) {
- return queue.find(function (watcher) { return vm._watcher === watcher; })
- }
- function nextTick$1(vm, cb) {
- //1.nextTick 之前 已 setData 且 setData 还未回调完成
- //2.nextTick 之前存在 render watcher
- if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {
- if(Object({"NODE_ENV":"development","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
- var mpInstance = vm.$scope;
- console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
- ']:nextVueTick');
- }
- return nextTick(cb, vm)
- }else{
- if(Object({"NODE_ENV":"development","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
- var mpInstance$1 = vm.$scope;
- console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +
- ']:nextMPTick');
- }
- }
- var _resolve;
- if (!vm.__next_tick_callbacks) {
- vm.__next_tick_callbacks = [];
- }
- vm.__next_tick_callbacks.push(function () {
- if (cb) {
- try {
- cb.call(vm);
- } catch (e) {
- handleError(e, vm, 'nextTick');
- }
- } else if (_resolve) {
- _resolve(vm);
- }
- });
- // $flow-disable-line
- if (!cb && typeof Promise !== 'undefined') {
- return new Promise(function (resolve) {
- _resolve = resolve;
- })
- }
- }
- /* */
- function cloneWithData(vm) {
- // 确保当前 vm 所有数据被同步
- var ret = Object.create(null);
- var dataKeys = [].concat(
- Object.keys(vm._data || {}),
- Object.keys(vm._computedWatchers || {}));
- dataKeys.reduce(function(ret, key) {
- ret[key] = vm[key];
- return ret
- }, ret);
- //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据
- Object.assign(ret, vm.$mp.data || {});
- if (
- Array.isArray(vm.$options.behaviors) &&
- vm.$options.behaviors.indexOf('uni://form-field') !== -1
- ) { //form-field
- ret['name'] = vm.name;
- ret['value'] = vm.value;
- }
- return JSON.parse(JSON.stringify(ret))
- }
- var patch = function(oldVnode, vnode) {
- var this$1 = this;
- if (vnode === null) { //destroy
- return
- }
- if (this.mpType === 'page' || this.mpType === 'component') {
- var mpInstance = this.$scope;
- var data = Object.create(null);
- try {
- data = cloneWithData(this);
- } catch (err) {
- console.error(err);
- }
- data.__webviewId__ = mpInstance.data.__webviewId__;
- var mpData = Object.create(null);
- Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据
- mpData[key] = mpInstance.data[key];
- });
- var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);
- if (Object.keys(diffData).length) {
- if (Object({"NODE_ENV":"development","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
- console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +
- ']差量更新',
- JSON.stringify(diffData));
- }
- this.__next_tick_pending = true;
- mpInstance.setData(diffData, function () {
- this$1.__next_tick_pending = false;
- flushCallbacks$1(this$1);
- });
- } else {
- flushCallbacks$1(this);
- }
- }
- };
- /* */
- function createEmptyRender() {
- }
- function mountComponent$1(
- vm,
- el,
- hydrating
- ) {
- if (!vm.mpType) {//main.js 中的 new Vue
- return vm
- }
- if (vm.mpType === 'app') {
- vm.$options.render = createEmptyRender;
- }
- if (!vm.$options.render) {
- vm.$options.render = createEmptyRender;
- if (true) {
- /* istanbul ignore if */
- if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||
- vm.$options.el || el) {
- warn(
- 'You are using the runtime-only build of Vue where the template ' +
- 'compiler is not available. Either pre-compile the templates into ' +
- 'render functions, or use the compiler-included build.',
- vm
- );
- } else {
- warn(
- 'Failed to mount component: template or render function not defined.',
- vm
- );
- }
- }
- }
-
- vm.mpHost !== 'mp-toutiao' && callHook(vm, 'beforeMount');
- var updateComponent = function () {
- vm._update(vm._render(), hydrating);
- };
- // we set this to vm._watcher inside the watcher's constructor
- // since the watcher's initial patch may call $forceUpdate (e.g. inside child
- // component's mounted hook), which relies on vm._watcher being already defined
- new Watcher(vm, updateComponent, noop, {
- before: function before() {
- if (vm._isMounted && !vm._isDestroyed) {
- callHook(vm, 'beforeUpdate');
- }
- }
- }, true /* isRenderWatcher */);
- hydrating = false;
- return vm
- }
- /* */
- function renderClass (
- staticClass,
- dynamicClass
- ) {
- if (isDef(staticClass) || isDef(dynamicClass)) {
- return concat(staticClass, stringifyClass(dynamicClass))
- }
- /* istanbul ignore next */
- return ''
- }
- function concat (a, b) {
- return a ? b ? (a + ' ' + b) : a : (b || '')
- }
- function stringifyClass (value) {
- if (Array.isArray(value)) {
- return stringifyArray(value)
- }
- if (isObject(value)) {
- return stringifyObject(value)
- }
- if (typeof value === 'string') {
- return value
- }
- /* istanbul ignore next */
- return ''
- }
- function stringifyArray (value) {
- var res = '';
- var stringified;
- for (var i = 0, l = value.length; i < l; i++) {
- if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {
- if (res) { res += ' '; }
- res += stringified;
- }
- }
- return res
- }
- function stringifyObject (value) {
- var res = '';
- for (var key in value) {
- if (value[key]) {
- if (res) { res += ' '; }
- res += key;
- }
- }
- return res
- }
- /* */
- var parseStyleText = cached(function (cssText) {
- var res = {};
- var listDelimiter = /;(?![^(]*\))/g;
- var propertyDelimiter = /:(.+)/;
- cssText.split(listDelimiter).forEach(function (item) {
- if (item) {
- var tmp = item.split(propertyDelimiter);
- tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());
- }
- });
- return res
- });
- // normalize possible array / string values into Object
- function normalizeStyleBinding (bindingStyle) {
- if (Array.isArray(bindingStyle)) {
- return toObject(bindingStyle)
- }
- if (typeof bindingStyle === 'string') {
- return parseStyleText(bindingStyle)
- }
- return bindingStyle
- }
- /* */
- var MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];
- function getTarget(obj, path) {
- var parts = path.split('.');
- var key = parts[0];
- if (key.indexOf('__$n') === 0) { //number index
- key = parseInt(key.replace('__$n', ''));
- }
- if (parts.length === 1) {
- return obj[key]
- }
- return getTarget(obj[key], parts.slice(1).join('.'))
- }
- function internalMixin(Vue) {
- Vue.config.errorHandler = function(err) {
- console.error(err);
- /* eslint-disable no-undef */
- var app = getApp();
- if (app && app.onError) {
- app.onError(err);
- }
- };
- var oldEmit = Vue.prototype.$emit;
- Vue.prototype.$emit = function(event) {
- if (this.$scope && event) {
- this.$scope['triggerEvent'](event, {
- __args__: toArray(arguments, 1)
- });
- }
- return oldEmit.apply(this, arguments)
- };
- Vue.prototype.$nextTick = function(fn) {
- return nextTick$1(this, fn)
- };
- MP_METHODS.forEach(function (method) {
- Vue.prototype[method] = function(args) {
- if (this.$scope && this.$scope[method]) {
- return this.$scope[method](args)
- }
- // mp-alipay
- if (typeof my === 'undefined') {
- return
- }
- if (method === 'createSelectorQuery') {
- /* eslint-disable no-undef */
- return my.createSelectorQuery(args)
- } else if (method === 'createIntersectionObserver') {
- /* eslint-disable no-undef */
- return my.createIntersectionObserver(args)
- }
- // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent
- };
- });
- Vue.prototype.__init_provide = initProvide;
- Vue.prototype.__init_injections = initInjections;
- Vue.prototype.__call_hook = function(hook, args) {
- var vm = this;
- // #7573 disable dep collection when invoking lifecycle hooks
- pushTarget();
- var handlers = vm.$options[hook];
- var info = hook + " hook";
- var ret;
- if (handlers) {
- for (var i = 0, j = handlers.length; i < j; i++) {
- ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);
- }
- }
- if (vm._hasHookEvent) {
- vm.$emit('hook:' + hook, args);
- }
- popTarget();
- return ret
- };
- Vue.prototype.__set_model = function(target, key, value, modifiers) {
- if (Array.isArray(modifiers)) {
- if (modifiers.indexOf('trim') !== -1) {
- value = value.trim();
- }
- if (modifiers.indexOf('number') !== -1) {
- value = this._n(value);
- }
- }
- if (!target) {
- target = this;
- }
- target[key] = value;
- };
- Vue.prototype.__set_sync = function(target, key, value) {
- if (!target) {
- target = this;
- }
- target[key] = value;
- };
- Vue.prototype.__get_orig = function(item) {
- if (isPlainObject(item)) {
- return item['$orig'] || item
- }
- return item
- };
- Vue.prototype.__get_value = function(dataPath, target) {
- return getTarget(target || this, dataPath)
- };
- Vue.prototype.__get_class = function(dynamicClass, staticClass) {
- return renderClass(staticClass, dynamicClass)
- };
- Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {
- if (!dynamicStyle && !staticStyle) {
- return ''
- }
- var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);
- var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;
- return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + ":" + (styleObj[name])); }).join(';')
- };
- Vue.prototype.__map = function(val, iteratee) {
- //TODO 暂不考虑 string,number
- var ret, i, l, keys, key;
- if (Array.isArray(val)) {
- ret = new Array(val.length);
- for (i = 0, l = val.length; i < l; i++) {
- ret[i] = iteratee(val[i], i);
- }
- return ret
- } else if (isObject(val)) {
- keys = Object.keys(val);
- ret = Object.create(null);
- for (i = 0, l = keys.length; i < l; i++) {
- key = keys[i];
- ret[key] = iteratee(val[key], key, i);
- }
- return ret
- }
- return []
- };
- }
- /* */
- var LIFECYCLE_HOOKS$1 = [
- //App
- 'onLaunch',
- 'onShow',
- 'onHide',
- 'onUniNViewMessage',
- 'onError',
- //Page
- 'onLoad',
- // 'onShow',
- 'onReady',
- // 'onHide',
- 'onUnload',
- 'onPullDownRefresh',
- 'onReachBottom',
- 'onTabItemTap',
- 'onShareAppMessage',
- 'onResize',
- 'onPageScroll',
- 'onNavigationBarButtonTap',
- 'onBackPress',
- 'onNavigationBarSearchInputChanged',
- 'onNavigationBarSearchInputConfirmed',
- 'onNavigationBarSearchInputClicked',
- //Component
- // 'onReady', // 兼容旧版本,应该移除该事件
- 'onPageShow',
- 'onPageHide',
- 'onPageResize'
- ];
- function lifecycleMixin$1(Vue) {
- //fixed vue-class-component
- var oldExtend = Vue.extend;
- Vue.extend = function(extendOptions) {
- extendOptions = extendOptions || {};
- var methods = extendOptions.methods;
- if (methods) {
- Object.keys(methods).forEach(function (methodName) {
- if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {
- extendOptions[methodName] = methods[methodName];
- delete methods[methodName];
- }
- });
- }
- return oldExtend.call(this, extendOptions)
- };
- var strategies = Vue.config.optionMergeStrategies;
- var mergeHook = strategies.created;
- LIFECYCLE_HOOKS$1.forEach(function (hook) {
- strategies[hook] = mergeHook;
- });
- Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;
- }
- /* */
- // install platform patch function
- Vue.prototype.__patch__ = patch;
- // public mount method
- Vue.prototype.$mount = function(
- el ,
- hydrating
- ) {
- return mountComponent$1(this, el, hydrating)
- };
- lifecycleMixin$1(Vue);
- internalMixin(Vue);
- /* */
- /* harmony default export */ __webpack_exports__["default"] = (Vue);
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../webpack/buildin/global.js */ 3)))
- /***/ }),
- /***/ 25:
- /*!********************************************!*\
- !*** D:/uinapp/myuinapp/common/amap-wx.js ***!
- \********************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- function AMapWX(a) {this.key = a.key, this.requestConfig = { key: a.key, s: "rsx", platform: "WXJS", appname: a.key, sdkversion: "1.2.0", logversion: "2.0" };}AMapWX.prototype.getWxLocation = function (a, b) {wx.getLocation({ type: "gcj02", success: function success(a) {var c = a.longitude + "," + a.latitude;wx.setStorage({ key: "userLocation", data: c }), b(c);}, fail: function fail(c) {wx.getStorage({ key: "userLocation", success: function success(a) {a.data && b(a.data);} }), a.fail({ errCode: "0", errMsg: c.errMsg || "" });} });}, AMapWX.prototype.getRegeo = function (a) {function c(c) {var d = b.requestConfig;wx.request({ url: "https://restapi.amap.com/v3/geocode/regeo", data: { key: b.key, location: c, extensions: "all", s: d.s, platform: d.platform, appname: b.key, sdkversion: d.sdkversion, logversion: d.logversion }, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {var d, e, f, g, h, i, j, k, l;b.data.status && "1" == b.data.status ? (d = b.data.regeocode, e = d.addressComponent, f = [], g = "", d && d.roads[0] && d.roads[0].name && (g = d.roads[0].name + "附近"), h = c.split(",")[0], i = c.split(",")[1], d.pois && d.pois[0] && (g = d.pois[0].name + "附近", j = d.pois[0].location, j && (h = parseFloat(j.split(",")[0]), i = parseFloat(j.split(",")[1]))), e.provice && f.push(e.provice), e.city && f.push(e.city), e.district && f.push(e.district), e.streetNumber && e.streetNumber.street && e.streetNumber.number ? (f.push(e.streetNumber.street), f.push(e.streetNumber.number)) : (k = "", d && d.roads[0] && d.roads[0].name && (k = d.roads[0].name), f.push(k)), f = f.join(""), l = [{ iconPath: a.iconPath, width: a.iconWidth, height: a.iconHeight, name: f, desc: g, longitude: h, latitude: i, id: 0, regeocodeData: d }], a.success(l)) : a.fail({ errCode: b.data.infocode, errMsg: b.data.info });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}var b = this;a.location ? c(a.location) : b.getWxLocation(a, function (a) {c(a);});}, AMapWX.prototype.getWeather = function (a) {function d(d) {var e = "base";a.type && "forecast" == a.type && (e = "all"), wx.request({ url: "https://restapi.amap.com/v3/weather/weatherInfo", data: { key: b.key, city: d, extensions: e, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {function c(a) {var b = { city: { text: "城市", data: a.city }, weather: { text: "天气", data: a.weather }, temperature: { text: "温度", data: a.temperature }, winddirection: { text: "风向", data: a.winddirection + "风" }, windpower: { text: "风力", data: a.windpower + "级" }, humidity: { text: "湿度", data: a.humidity + "%" } };return b;}var d, e;b.data.status && "1" == b.data.status ? b.data.lives ? (d = b.data.lives, d && d.length > 0 && (d = d[0], e = c(d), e["liveData"] = d, a.success(e))) : b.data.forecasts && b.data.forecasts[0] && a.success({ forecast: b.data.forecasts[0] }) : a.fail({ errCode: b.data.infocode, errMsg: b.data.info });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}function e(e) {wx.request({ url: "https://restapi.amap.com/v3/geocode/regeo", data: { key: b.key, location: e, extensions: "all", s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {var c, e;b.data.status && "1" == b.data.status ? (e = b.data.regeocode, e.addressComponent ? c = e.addressComponent.adcode : e.aois && e.aois.length > 0 && (c = e.aois[0].adcode), d(c)) : a.fail({ errCode: b.data.infocode, errMsg: b.data.info });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}var b = this,c = b.requestConfig;a.city ? d(a.city) : b.getWxLocation(a, function (a) {e(a);});}, AMapWX.prototype.getPoiAround = function (a) {function d(d) {var e = { key: b.key, location: d, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion };a.querytypes && (e["types"] = a.querytypes), a.querykeywords && (e["keywords"] = a.querykeywords), wx.request({ url: "https://restapi.amap.com/v3/place/around", data: e, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {var c, d, e, f;if (b.data.status && "1" == b.data.status) {if (b = b.data, b && b.pois) {for (c = [], d = 0; d < b.pois.length; d++) {e = 0 == d ? a.iconPathSelected : a.iconPath, c.push({ latitude: parseFloat(b.pois[d].location.split(",")[1]), longitude: parseFloat(b.pois[d].location.split(",")[0]), iconPath: e, width: 22, height: 32, id: d, name: b.pois[d].name, address: b.pois[d].address });}f = { markers: c, poisData: b.pois }, a.success(f);}} else a.fail({ errCode: b.data.infocode, errMsg: b.data.info });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}var b = this,c = b.requestConfig;a.location ? d(a.location) : b.getWxLocation(a, function (a) {d(a);});}, AMapWX.prototype.getStaticmap = function (a) {function f(b) {c.push("location=" + b), a.zoom && c.push("zoom=" + a.zoom), a.size && c.push("size=" + a.size), a.scale && c.push("scale=" + a.scale), a.markers && c.push("markers=" + a.markers), a.labels && c.push("labels=" + a.labels), a.paths && c.push("paths=" + a.paths), a.traffic && c.push("traffic=" + a.traffic);var e = d + c.join("&");a.success({ url: e });}var e,b = this,c = [],d = "https://restapi.amap.com/v3/staticmap?";c.push("key=" + b.key), e = b.requestConfig, c.push("s=" + e.s), c.push("platform=" + e.platform), c.push("appname=" + e.appname), c.push("sdkversion=" + e.sdkversion), c.push("logversion=" + e.logversion), a.location ? f(a.location) : b.getWxLocation(a, function (a) {f(a);});}, AMapWX.prototype.getInputtips = function (a) {var b = this,c = b.requestConfig,d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion };a.location && (d["location"] = a.location), a.keywords && (d["keywords"] = a.keywords), a.type && (d["type"] = a.type), a.city && (d["city"] = a.city), a.citylimit && (d["citylimit"] = a.citylimit), wx.request({ url: "https://restapi.amap.com/v3/assistant/inputtips", data: d, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {b && b.data && b.data.tips && a.success({ tips: b.data.tips });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}, AMapWX.prototype.getDrivingRoute = function (a) {var b = this,c = b.requestConfig,d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion };a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), a.strategy && (d["strategy"] = a.strategy), a.waypoints && (d["waypoints"] = a.waypoints), a.avoidpolygons && (d["avoidpolygons"] = a.avoidpolygons), a.avoidroad && (d["avoidroad"] = a.avoidroad), wx.request({ url: "https://restapi.amap.com/v3/direction/driving", data: d, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {b && b.data && b.data.route && a.success({ paths: b.data.route.paths, taxi_cost: b.data.route.taxi_cost || "" });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}, AMapWX.prototype.getWalkingRoute = function (a) {var b = this,c = b.requestConfig,d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion };a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), wx.request({ url: "https://restapi.amap.com/v3/direction/walking", data: d, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {b && b.data && b.data.route && a.success({ paths: b.data.route.paths });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}, AMapWX.prototype.getTransitRoute = function (a) {var b = this,c = b.requestConfig,d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion };a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), a.strategy && (d["strategy"] = a.strategy), a.city && (d["city"] = a.city), a.cityd && (d["cityd"] = a.cityd), wx.request({ url: "https://restapi.amap.com/v3/direction/transit/integrated", data: d, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {if (b && b.data && b.data.route) {var c = b.data.route;a.success({ distance: c.distance || "", taxi_cost: c.taxi_cost || "", transits: c.transits });}}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}, AMapWX.prototype.getRidingRoute = function (a) {var b = this,c = b.requestConfig,d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion };a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), wx.request({ url: "https://restapi.amap.com/v4/direction/bicycling", data: d, method: "GET", header: { "content-type": "application/json" }, success: function success(b) {b && b.data && b.data.data && a.success({ paths: b.data.data.paths });}, fail: function fail(b) {a.fail({ errCode: "0", errMsg: b.errMsg || "" });} });}, module.exports.AMapWX = AMapWX;
- /***/ }),
- /***/ 299:
- /*!***************************************************************************!*\
- !*** D:/uinapp/myuinapp/component/mpvue-citypicker/city-data/province.js ***!
- \***************************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; /* eslint-disable */
- var provinceData = [{
- "label": "北京市",
- "value": "11" },
- {
- "label": "天津市",
- "value": "12" },
- {
- "label": "河北省",
- "value": "13" },
- {
- "label": "山西省",
- "value": "14" },
- {
- "label": "内蒙古自治区",
- "value": "15" },
- {
- "label": "辽宁省",
- "value": "21" },
- {
- "label": "吉林省",
- "value": "22" },
- {
- "label": "黑龙江省",
- "value": "23" },
- {
- "label": "上海市",
- "value": "31" },
- {
- "label": "江苏省",
- "value": "32" },
- {
- "label": "浙江省",
- "value": "33" },
- {
- "label": "安徽省",
- "value": "34" },
- {
- "label": "福建省",
- "value": "35" },
- {
- "label": "江西省",
- "value": "36" },
- {
- "label": "山东省",
- "value": "37" },
- {
- "label": "河南省",
- "value": "41" },
- {
- "label": "湖北省",
- "value": "42" },
- {
- "label": "湖南省",
- "value": "43" },
- {
- "label": "广东省",
- "value": "44" },
- {
- "label": "广西壮族自治区",
- "value": "45" },
- {
- "label": "海南省",
- "value": "46" },
- {
- "label": "重庆市",
- "value": "50" },
- {
- "label": "四川省",
- "value": "51" },
- {
- "label": "贵州省",
- "value": "52" },
- {
- "label": "云南省",
- "value": "53" },
- {
- "label": "西藏自治区",
- "value": "54" },
- {
- "label": "陕西省",
- "value": "61" },
- {
- "label": "甘肃省",
- "value": "62" },
- {
- "label": "青海省",
- "value": "63" },
- {
- "label": "宁夏回族自治区",
- "value": "64" },
- {
- "label": "新疆维吾尔自治区",
- "value": "65" },
- {
- "label": "台湾",
- "value": "66" },
- {
- "label": "香港",
- "value": "67" },
- {
- "label": "澳门",
- "value": "68" }];var _default =
- provinceData;exports.default = _default;
- /***/ }),
- /***/ 3:
- /*!***********************************!*\
- !*** (webpack)/buildin/global.js ***!
- \***********************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- var g;
- // This works in non-strict mode
- g = (function() {
- return this;
- })();
- try {
- // This works if eval is allowed (see CSP)
- g = g || new Function("return this")();
- } catch (e) {
- // This works if the window reference is available
- if (typeof window === "object") g = window;
- }
- // g can still be undefined, but nothing to do about it...
- // We return undefined, instead of nothing here, so it's
- // easier to handle this case. if(!global) { ...}
- module.exports = g;
- /***/ }),
- /***/ 300:
- /*!***********************************************************************!*\
- !*** D:/uinapp/myuinapp/component/mpvue-citypicker/city-data/city.js ***!
- \***********************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; /* eslint-disable */
- var cityData = [
- [{
- "label": "市辖区",
- "value": "1101" }],
- [{
- "label": "市辖区",
- "value": "1201" }],
- [{
- "label": "石家庄市",
- "value": "1301" },
- {
- "label": "唐山市",
- "value": "1302" },
- {
- "label": "秦皇岛市",
- "value": "1303" },
- {
- "label": "邯郸市",
- "value": "1304" },
- {
- "label": "邢台市",
- "value": "1305" },
- {
- "label": "保定市",
- "value": "1306" },
- {
- "label": "张家口市",
- "value": "1307" },
- {
- "label": "承德市",
- "value": "1308" },
- {
- "label": "沧州市",
- "value": "1309" },
- {
- "label": "廊坊市",
- "value": "1310" },
- {
- "label": "衡水市",
- "value": "1311" }],
- [{
- "label": "太原市",
- "value": "1401" },
- {
- "label": "大同市",
- "value": "1402" },
- {
- "label": "阳泉市",
- "value": "1403" },
- {
- "label": "长治市",
- "value": "1404" },
- {
- "label": "晋城市",
- "value": "1405" },
- {
- "label": "朔州市",
- "value": "1406" },
- {
- "label": "晋中市",
- "value": "1407" },
- {
- "label": "运城市",
- "value": "1408" },
- {
- "label": "忻州市",
- "value": "1409" },
- {
- "label": "临汾市",
- "value": "1410" },
- {
- "label": "吕梁市",
- "value": "1411" }],
- [{
- "label": "呼和浩特市",
- "value": "1501" },
- {
- "label": "包头市",
- "value": "1502" },
- {
- "label": "乌海市",
- "value": "1503" },
- {
- "label": "赤峰市",
- "value": "1504" },
- {
- "label": "通辽市",
- "value": "1505" },
- {
- "label": "鄂尔多斯市",
- "value": "1506" },
- {
- "label": "呼伦贝尔市",
- "value": "1507" },
- {
- "label": "巴彦淖尔市",
- "value": "1508" },
- {
- "label": "乌兰察布市",
- "value": "1509" },
- {
- "label": "兴安盟",
- "value": "1522" },
- {
- "label": "锡林郭勒盟",
- "value": "1525" },
- {
- "label": "阿拉善盟",
- "value": "1529" }],
- [{
- "label": "沈阳市",
- "value": "2101" },
- {
- "label": "大连市",
- "value": "2102" },
- {
- "label": "鞍山市",
- "value": "2103" },
- {
- "label": "抚顺市",
- "value": "2104" },
- {
- "label": "本溪市",
- "value": "2105" },
- {
- "label": "丹东市",
- "value": "2106" },
- {
- "label": "锦州市",
- "value": "2107" },
- {
- "label": "营口市",
- "value": "2108" },
- {
- "label": "阜新市",
- "value": "2109" },
- {
- "label": "辽阳市",
- "value": "2110" },
- {
- "label": "盘锦市",
- "value": "2111" },
- {
- "label": "铁岭市",
- "value": "2112" },
- {
- "label": "朝阳市",
- "value": "2113" },
- {
- "label": "葫芦岛市",
- "value": "2114" }],
- [{
- "label": "长春市",
- "value": "2201" },
- {
- "label": "吉林市",
- "value": "2202" },
- {
- "label": "四平市",
- "value": "2203" },
- {
- "label": "辽源市",
- "value": "2204" },
- {
- "label": "通化市",
- "value": "2205" },
- {
- "label": "白山市",
- "value": "2206" },
- {
- "label": "松原市",
- "value": "2207" },
- {
- "label": "白城市",
- "value": "2208" },
- {
- "label": "延边朝鲜族自治州",
- "value": "2224" }],
- [{
- "label": "哈尔滨市",
- "value": "2301" },
- {
- "label": "齐齐哈尔市",
- "value": "2302" },
- {
- "label": "鸡西市",
- "value": "2303" },
- {
- "label": "鹤岗市",
- "value": "2304" },
- {
- "label": "双鸭山市",
- "value": "2305" },
- {
- "label": "大庆市",
- "value": "2306" },
- {
- "label": "伊春市",
- "value": "2307" },
- {
- "label": "佳木斯市",
- "value": "2308" },
- {
- "label": "七台河市",
- "value": "2309" },
- {
- "label": "牡丹江市",
- "value": "2310" },
- {
- "label": "黑河市",
- "value": "2311" },
- {
- "label": "绥化市",
- "value": "2312" },
- {
- "label": "大兴安岭地区",
- "value": "2327" }],
- [{
- "label": "市辖区",
- "value": "3101" }],
- [{
- "label": "南京市",
- "value": "3201" },
- {
- "label": "无锡市",
- "value": "3202" },
- {
- "label": "徐州市",
- "value": "3203" },
- {
- "label": "常州市",
- "value": "3204" },
- {
- "label": "苏州市",
- "value": "3205" },
- {
- "label": "南通市",
- "value": "3206" },
- {
- "label": "连云港市",
- "value": "3207" },
- {
- "label": "淮安市",
- "value": "3208" },
- {
- "label": "盐城市",
- "value": "3209" },
- {
- "label": "扬州市",
- "value": "3210" },
- {
- "label": "镇江市",
- "value": "3211" },
- {
- "label": "泰州市",
- "value": "3212" },
- {
- "label": "宿迁市",
- "value": "3213" }],
- [{
- "label": "杭州市",
- "value": "3301" },
- {
- "label": "宁波市",
- "value": "3302" },
- {
- "label": "温州市",
- "value": "3303" },
- {
- "label": "嘉兴市",
- "value": "3304" },
- {
- "label": "湖州市",
- "value": "3305" },
- {
- "label": "绍兴市",
- "value": "3306" },
- {
- "label": "金华市",
- "value": "3307" },
- {
- "label": "衢州市",
- "value": "3308" },
- {
- "label": "舟山市",
- "value": "3309" },
- {
- "label": "台州市",
- "value": "3310" },
- {
- "label": "丽水市",
- "value": "3311" }],
- [{
- "label": "合肥市",
- "value": "3401" },
- {
- "label": "芜湖市",
- "value": "3402" },
- {
- "label": "蚌埠市",
- "value": "3403" },
- {
- "label": "淮南市",
- "value": "3404" },
- {
- "label": "马鞍山市",
- "value": "3405" },
- {
- "label": "淮北市",
- "value": "3406" },
- {
- "label": "铜陵市",
- "value": "3407" },
- {
- "label": "安庆市",
- "value": "3408" },
- {
- "label": "黄山市",
- "value": "3410" },
- {
- "label": "滁州市",
- "value": "3411" },
- {
- "label": "阜阳市",
- "value": "3412" },
- {
- "label": "宿州市",
- "value": "3413" },
- {
- "label": "六安市",
- "value": "3415" },
- {
- "label": "亳州市",
- "value": "3416" },
- {
- "label": "池州市",
- "value": "3417" },
- {
- "label": "宣城市",
- "value": "3418" }],
- [{
- "label": "福州市",
- "value": "3501" },
- {
- "label": "厦门市",
- "value": "3502" },
- {
- "label": "莆田市",
- "value": "3503" },
- {
- "label": "三明市",
- "value": "3504" },
- {
- "label": "泉州市",
- "value": "3505" },
- {
- "label": "漳州市",
- "value": "3506" },
- {
- "label": "南平市",
- "value": "3507" },
- {
- "label": "龙岩市",
- "value": "3508" },
- {
- "label": "宁德市",
- "value": "3509" }],
- [{
- "label": "南昌市",
- "value": "3601" },
- {
- "label": "景德镇市",
- "value": "3602" },
- {
- "label": "萍乡市",
- "value": "3603" },
- {
- "label": "九江市",
- "value": "3604" },
- {
- "label": "新余市",
- "value": "3605" },
- {
- "label": "鹰潭市",
- "value": "3606" },
- {
- "label": "赣州市",
- "value": "3607" },
- {
- "label": "吉安市",
- "value": "3608" },
- {
- "label": "宜春市",
- "value": "3609" },
- {
- "label": "抚州市",
- "value": "3610" },
- {
- "label": "上饶市",
- "value": "3611" }],
- [{
- "label": "济南市",
- "value": "3701" },
- {
- "label": "青岛市",
- "value": "3702" },
- {
- "label": "淄博市",
- "value": "3703" },
- {
- "label": "枣庄市",
- "value": "3704" },
- {
- "label": "东营市",
- "value": "3705" },
- {
- "label": "烟台市",
- "value": "3706" },
- {
- "label": "潍坊市",
- "value": "3707" },
- {
- "label": "济宁市",
- "value": "3708" },
- {
- "label": "泰安市",
- "value": "3709" },
- {
- "label": "威海市",
- "value": "3710" },
- {
- "label": "日照市",
- "value": "3711" },
- {
- "label": "莱芜市",
- "value": "3712" },
- {
- "label": "临沂市",
- "value": "3713" },
- {
- "label": "德州市",
- "value": "3714" },
- {
- "label": "聊城市",
- "value": "3715" },
- {
- "label": "滨州市",
- "value": "3716" },
- {
- "label": "菏泽市",
- "value": "3717" }],
- [{
- "label": "郑州市",
- "value": "4101" },
- {
- "label": "开封市",
- "value": "4102" },
- {
- "label": "洛阳市",
- "value": "4103" },
- {
- "label": "平顶山市",
- "value": "4104" },
- {
- "label": "安阳市",
- "value": "4105" },
- {
- "label": "鹤壁市",
- "value": "4106" },
- {
- "label": "新乡市",
- "value": "4107" },
- {
- "label": "焦作市",
- "value": "4108" },
- {
- "label": "濮阳市",
- "value": "4109" },
- {
- "label": "许昌市",
- "value": "4110" },
- {
- "label": "漯河市",
- "value": "4111" },
- {
- "label": "三门峡市",
- "value": "4112" },
- {
- "label": "南阳市",
- "value": "4113" },
- {
- "label": "商丘市",
- "value": "4114" },
- {
- "label": "信阳市",
- "value": "4115" },
- {
- "label": "周口市",
- "value": "4116" },
- {
- "label": "驻马店市",
- "value": "4117" },
- {
- "label": "省直辖县级行政区划",
- "value": "4190" }],
- [{
- "label": "武汉市",
- "value": "4201" },
- {
- "label": "黄石市",
- "value": "4202" },
- {
- "label": "十堰市",
- "value": "4203" },
- {
- "label": "宜昌市",
- "value": "4205" },
- {
- "label": "襄阳市",
- "value": "4206" },
- {
- "label": "鄂州市",
- "value": "4207" },
- {
- "label": "荆门市",
- "value": "4208" },
- {
- "label": "孝感市",
- "value": "4209" },
- {
- "label": "荆州市",
- "value": "4210" },
- {
- "label": "黄冈市",
- "value": "4211" },
- {
- "label": "咸宁市",
- "value": "4212" },
- {
- "label": "随州市",
- "value": "4213" },
- {
- "label": "恩施土家族苗族自治州",
- "value": "4228" },
- {
- "label": "省直辖县级行政区划",
- "value": "4290" }],
- [{
- "label": "长沙市",
- "value": "4301" },
- {
- "label": "株洲市",
- "value": "4302" },
- {
- "label": "湘潭市",
- "value": "4303" },
- {
- "label": "衡阳市",
- "value": "4304" },
- {
- "label": "邵阳市",
- "value": "4305" },
- {
- "label": "岳阳市",
- "value": "4306" },
- {
- "label": "常德市",
- "value": "4307" },
- {
- "label": "张家界市",
- "value": "4308" },
- {
- "label": "益阳市",
- "value": "4309" },
- {
- "label": "郴州市",
- "value": "4310" },
- {
- "label": "永州市",
- "value": "4311" },
- {
- "label": "怀化市",
- "value": "4312" },
- {
- "label": "娄底市",
- "value": "4313" },
- {
- "label": "湘西土家族苗族自治州",
- "value": "4331" }],
- [{
- "label": "广州市",
- "value": "4401" },
- {
- "label": "韶关市",
- "value": "4402" },
- {
- "label": "深圳市",
- "value": "4403" },
- {
- "label": "珠海市",
- "value": "4404" },
- {
- "label": "汕头市",
- "value": "4405" },
- {
- "label": "佛山市",
- "value": "4406" },
- {
- "label": "江门市",
- "value": "4407" },
- {
- "label": "湛江市",
- "value": "4408" },
- {
- "label": "茂名市",
- "value": "4409" },
- {
- "label": "肇庆市",
- "value": "4412" },
- {
- "label": "惠州市",
- "value": "4413" },
- {
- "label": "梅州市",
- "value": "4414" },
- {
- "label": "汕尾市",
- "value": "4415" },
- {
- "label": "河源市",
- "value": "4416" },
- {
- "label": "阳江市",
- "value": "4417" },
- {
- "label": "清远市",
- "value": "4418" },
- {
- "label": "东莞市",
- "value": "4419" },
- {
- "label": "中山市",
- "value": "4420" },
- {
- "label": "潮州市",
- "value": "4451" },
- {
- "label": "揭阳市",
- "value": "4452" },
- {
- "label": "云浮市",
- "value": "4453" }],
- [{
- "label": "南宁市",
- "value": "4501" },
- {
- "label": "柳州市",
- "value": "4502" },
- {
- "label": "桂林市",
- "value": "4503" },
- {
- "label": "梧州市",
- "value": "4504" },
- {
- "label": "北海市",
- "value": "4505" },
- {
- "label": "防城港市",
- "value": "4506" },
- {
- "label": "钦州市",
- "value": "4507" },
- {
- "label": "贵港市",
- "value": "4508" },
- {
- "label": "玉林市",
- "value": "4509" },
- {
- "label": "百色市",
- "value": "4510" },
- {
- "label": "贺州市",
- "value": "4511" },
- {
- "label": "河池市",
- "value": "4512" },
- {
- "label": "来宾市",
- "value": "4513" },
- {
- "label": "崇左市",
- "value": "4514" }],
- [{
- "label": "海口市",
- "value": "4601" },
- {
- "label": "三亚市",
- "value": "4602" },
- {
- "label": "三沙市",
- "value": "4603" },
- {
- "label": "儋州市",
- "value": "4604" },
- {
- "label": "省直辖县级行政区划",
- "value": "4690" }],
- [{
- "label": "市辖区",
- "value": "5001" },
- {
- "label": "县",
- "value": "5002" }],
- [{
- "label": "成都市",
- "value": "5101" },
- {
- "label": "自贡市",
- "value": "5103" },
- {
- "label": "攀枝花市",
- "value": "5104" },
- {
- "label": "泸州市",
- "value": "5105" },
- {
- "label": "德阳市",
- "value": "5106" },
- {
- "label": "绵阳市",
- "value": "5107" },
- {
- "label": "广元市",
- "value": "5108" },
- {
- "label": "遂宁市",
- "value": "5109" },
- {
- "label": "内江市",
- "value": "5110" },
- {
- "label": "乐山市",
- "value": "5111" },
- {
- "label": "南充市",
- "value": "5113" },
- {
- "label": "眉山市",
- "value": "5114" },
- {
- "label": "宜宾市",
- "value": "5115" },
- {
- "label": "广安市",
- "value": "5116" },
- {
- "label": "达州市",
- "value": "5117" },
- {
- "label": "雅安市",
- "value": "5118" },
- {
- "label": "巴中市",
- "value": "5119" },
- {
- "label": "资阳市",
- "value": "5120" },
- {
- "label": "阿坝藏族羌族自治州",
- "value": "5132" },
- {
- "label": "甘孜藏族自治州",
- "value": "5133" },
- {
- "label": "凉山彝族自治州",
- "value": "5134" }],
- [{
- "label": "贵阳市",
- "value": "5201" },
- {
- "label": "六盘水市",
- "value": "5202" },
- {
- "label": "遵义市",
- "value": "5203" },
- {
- "label": "安顺市",
- "value": "5204" },
- {
- "label": "毕节市",
- "value": "5205" },
- {
- "label": "铜仁市",
- "value": "5206" },
- {
- "label": "黔西南布依族苗族自治州",
- "value": "5223" },
- {
- "label": "黔东南苗族侗族自治州",
- "value": "5226" },
- {
- "label": "黔南布依族苗族自治州",
- "value": "5227" }],
- [{
- "label": "昆明市",
- "value": "5301" },
- {
- "label": "曲靖市",
- "value": "5303" },
- {
- "label": "玉溪市",
- "value": "5304" },
- {
- "label": "保山市",
- "value": "5305" },
- {
- "label": "昭通市",
- "value": "5306" },
- {
- "label": "丽江市",
- "value": "5307" },
- {
- "label": "普洱市",
- "value": "5308" },
- {
- "label": "临沧市",
- "value": "5309" },
- {
- "label": "楚雄彝族自治州",
- "value": "5323" },
- {
- "label": "红河哈尼族彝族自治州",
- "value": "5325" },
- {
- "label": "文山壮族苗族自治州",
- "value": "5326" },
- {
- "label": "西双版纳傣族自治州",
- "value": "5328" },
- {
- "label": "大理白族自治州",
- "value": "5329" },
- {
- "label": "德宏傣族景颇族自治州",
- "value": "5331" },
- {
- "label": "怒江傈僳族自治州",
- "value": "5333" },
- {
- "label": "迪庆藏族自治州",
- "value": "5334" }],
- [{
- "label": "拉萨市",
- "value": "5401" },
- {
- "label": "日喀则市",
- "value": "5402" },
- {
- "label": "昌都市",
- "value": "5403" },
- {
- "label": "林芝市",
- "value": "5404" },
- {
- "label": "山南市",
- "value": "5405" },
- {
- "label": "那曲地区",
- "value": "5424" },
- {
- "label": "阿里地区",
- "value": "5425" }],
- [{
- "label": "西安市",
- "value": "6101" },
- {
- "label": "铜川市",
- "value": "6102" },
- {
- "label": "宝鸡市",
- "value": "6103" },
- {
- "label": "咸阳市",
- "value": "6104" },
- {
- "label": "渭南市",
- "value": "6105" },
- {
- "label": "延安市",
- "value": "6106" },
- {
- "label": "汉中市",
- "value": "6107" },
- {
- "label": "榆林市",
- "value": "6108" },
- {
- "label": "安康市",
- "value": "6109" },
- {
- "label": "商洛市",
- "value": "6110" }],
- [{
- "label": "兰州市",
- "value": "6201" },
- {
- "label": "嘉峪关市",
- "value": "6202" },
- {
- "label": "金昌市",
- "value": "6203" },
- {
- "label": "白银市",
- "value": "6204" },
- {
- "label": "天水市",
- "value": "6205" },
- {
- "label": "武威市",
- "value": "6206" },
- {
- "label": "张掖市",
- "value": "6207" },
- {
- "label": "平凉市",
- "value": "6208" },
- {
- "label": "酒泉市",
- "value": "6209" },
- {
- "label": "庆阳市",
- "value": "6210" },
- {
- "label": "定西市",
- "value": "6211" },
- {
- "label": "陇南市",
- "value": "6212" },
- {
- "label": "临夏回族自治州",
- "value": "6229" },
- {
- "label": "甘南藏族自治州",
- "value": "6230" }],
- [{
- "label": "西宁市",
- "value": "6301" },
- {
- "label": "海东市",
- "value": "6302" },
- {
- "label": "海北藏族自治州",
- "value": "6322" },
- {
- "label": "黄南藏族自治州",
- "value": "6323" },
- {
- "label": "海南藏族自治州",
- "value": "6325" },
- {
- "label": "果洛藏族自治州",
- "value": "6326" },
- {
- "label": "玉树藏族自治州",
- "value": "6327" },
- {
- "label": "海西蒙古族藏族自治州",
- "value": "6328" }],
- [{
- "label": "银川市",
- "value": "6401" },
- {
- "label": "石嘴山市",
- "value": "6402" },
- {
- "label": "吴忠市",
- "value": "6403" },
- {
- "label": "固原市",
- "value": "6404" },
- {
- "label": "中卫市",
- "value": "6405" }],
- [{
- "label": "乌鲁木齐市",
- "value": "6501" },
- {
- "label": "克拉玛依市",
- "value": "6502" },
- {
- "label": "吐鲁番市",
- "value": "6504" },
- {
- "label": "哈密市",
- "value": "6505" },
- {
- "label": "昌吉回族自治州",
- "value": "6523" },
- {
- "label": "博尔塔拉蒙古自治州",
- "value": "6527" },
- {
- "label": "巴音郭楞蒙古自治州",
- "value": "6528" },
- {
- "label": "阿克苏地区",
- "value": "6529" },
- {
- "label": "克孜勒苏柯尔克孜自治州",
- "value": "6530" },
- {
- "label": "喀什地区",
- "value": "6531" },
- {
- "label": "和田地区",
- "value": "6532" },
- {
- "label": "伊犁哈萨克自治州",
- "value": "6540" },
- {
- "label": "塔城地区",
- "value": "6542" },
- {
- "label": "阿勒泰地区",
- "value": "6543" },
- {
- "label": "自治区直辖县级行政区划",
- "value": "6590" }],
- [{
- "label": "台北",
- "value": "6601" },
- {
- "label": "高雄",
- "value": "6602" },
- {
- "label": "基隆",
- "value": "6603" },
- {
- "label": "台中",
- "value": "6604" },
- {
- "label": "台南",
- "value": "6605" },
- {
- "label": "新竹",
- "value": "6606" },
- {
- "label": "嘉义",
- "value": "6607" },
- {
- "label": "宜兰",
- "value": "6608" },
- {
- "label": "桃园",
- "value": "6609" },
- {
- "label": "苗栗",
- "value": "6610" },
- {
- "label": "彰化",
- "value": "6611" },
- {
- "label": "南投",
- "value": "6612" },
- {
- "label": "云林",
- "value": "6613" },
- {
- "label": "屏东",
- "value": "6614" },
- {
- "label": "台东",
- "value": "6615" },
- {
- "label": "花莲",
- "value": "6616" },
- {
- "label": "澎湖",
- "value": "6617" }],
- [{
- "label": "香港岛",
- "value": "6701" },
- {
- "label": "九龙",
- "value": "6702" },
- {
- "label": "新界",
- "value": "6703" }],
- [{
- "label": "澳门半岛",
- "value": "6801" },
- {
- "label": "氹仔岛",
- "value": "6802" },
- {
- "label": "路环岛",
- "value": "6803" },
- {
- "label": "路氹城",
- "value": "6804" }]];var _default =
- cityData;exports.default = _default;
- /***/ }),
- /***/ 301:
- /*!***********************************************************************!*\
- !*** D:/uinapp/myuinapp/component/mpvue-citypicker/city-data/area.js ***!
- \***********************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; /* eslint-disable */
- var areaData = [
- [
- [{
- "label": "东城区",
- "value": "110101" },
- {
- "label": "西城区",
- "value": "110102" },
- {
- "label": "朝阳区",
- "value": "110105" },
- {
- "label": "丰台区",
- "value": "110106" },
- {
- "label": "石景山区",
- "value": "110107" },
- {
- "label": "海淀区",
- "value": "110108" },
- {
- "label": "门头沟区",
- "value": "110109" },
- {
- "label": "房山区",
- "value": "110111" },
- {
- "label": "通州区",
- "value": "110112" },
- {
- "label": "顺义区",
- "value": "110113" },
- {
- "label": "昌平区",
- "value": "110114" },
- {
- "label": "大兴区",
- "value": "110115" },
- {
- "label": "怀柔区",
- "value": "110116" },
- {
- "label": "平谷区",
- "value": "110117" },
- {
- "label": "密云区",
- "value": "110118" },
- {
- "label": "延庆区",
- "value": "110119" }]],
- [
- [{
- "label": "和平区",
- "value": "120101" },
- {
- "label": "河东区",
- "value": "120102" },
- {
- "label": "河西区",
- "value": "120103" },
- {
- "label": "南开区",
- "value": "120104" },
- {
- "label": "河北区",
- "value": "120105" },
- {
- "label": "红桥区",
- "value": "120106" },
- {
- "label": "东丽区",
- "value": "120110" },
- {
- "label": "西青区",
- "value": "120111" },
- {
- "label": "津南区",
- "value": "120112" },
- {
- "label": "北辰区",
- "value": "120113" },
- {
- "label": "武清区",
- "value": "120114" },
- {
- "label": "宝坻区",
- "value": "120115" },
- {
- "label": "滨海新区",
- "value": "120116" },
- {
- "label": "宁河区",
- "value": "120117" },
- {
- "label": "静海区",
- "value": "120118" },
- {
- "label": "蓟州区",
- "value": "120119" }]],
- [
- [{
- "label": "长安区",
- "value": "130102" },
- {
- "label": "桥西区",
- "value": "130104" },
- {
- "label": "新华区",
- "value": "130105" },
- {
- "label": "井陉矿区",
- "value": "130107" },
- {
- "label": "裕华区",
- "value": "130108" },
- {
- "label": "藁城区",
- "value": "130109" },
- {
- "label": "鹿泉区",
- "value": "130110" },
- {
- "label": "栾城区",
- "value": "130111" },
- {
- "label": "井陉县",
- "value": "130121" },
- {
- "label": "正定县",
- "value": "130123" },
- {
- "label": "行唐县",
- "value": "130125" },
- {
- "label": "灵寿县",
- "value": "130126" },
- {
- "label": "高邑县",
- "value": "130127" },
- {
- "label": "深泽县",
- "value": "130128" },
- {
- "label": "赞皇县",
- "value": "130129" },
- {
- "label": "无极县",
- "value": "130130" },
- {
- "label": "平山县",
- "value": "130131" },
- {
- "label": "元氏县",
- "value": "130132" },
- {
- "label": "赵县",
- "value": "130133" },
- {
- "label": "石家庄高新技术产业开发区",
- "value": "130171" },
- {
- "label": "石家庄循环化工园区",
- "value": "130172" },
- {
- "label": "辛集市",
- "value": "130181" },
- {
- "label": "晋州市",
- "value": "130183" },
- {
- "label": "新乐市",
- "value": "130184" }],
- [{
- "label": "路南区",
- "value": "130202" },
- {
- "label": "路北区",
- "value": "130203" },
- {
- "label": "古冶区",
- "value": "130204" },
- {
- "label": "开平区",
- "value": "130205" },
- {
- "label": "丰南区",
- "value": "130207" },
- {
- "label": "丰润区",
- "value": "130208" },
- {
- "label": "曹妃甸区",
- "value": "130209" },
- {
- "label": "滦县",
- "value": "130223" },
- {
- "label": "滦南县",
- "value": "130224" },
- {
- "label": "乐亭县",
- "value": "130225" },
- {
- "label": "迁西县",
- "value": "130227" },
- {
- "label": "玉田县",
- "value": "130229" },
- {
- "label": "唐山市芦台经济技术开发区",
- "value": "130271" },
- {
- "label": "唐山市汉沽管理区",
- "value": "130272" },
- {
- "label": "唐山高新技术产业开发区",
- "value": "130273" },
- {
- "label": "河北唐山海港经济开发区",
- "value": "130274" },
- {
- "label": "遵化市",
- "value": "130281" },
- {
- "label": "迁安市",
- "value": "130283" }],
- [{
- "label": "海港区",
- "value": "130302" },
- {
- "label": "山海关区",
- "value": "130303" },
- {
- "label": "北戴河区",
- "value": "130304" },
- {
- "label": "抚宁区",
- "value": "130306" },
- {
- "label": "青龙满族自治县",
- "value": "130321" },
- {
- "label": "昌黎县",
- "value": "130322" },
- {
- "label": "卢龙县",
- "value": "130324" },
- {
- "label": "秦皇岛市经济技术开发区",
- "value": "130371" },
- {
- "label": "北戴河新区",
- "value": "130372" }],
- [{
- "label": "邯山区",
- "value": "130402" },
- {
- "label": "丛台区",
- "value": "130403" },
- {
- "label": "复兴区",
- "value": "130404" },
- {
- "label": "峰峰矿区",
- "value": "130406" },
- {
- "label": "肥乡区",
- "value": "130407" },
- {
- "label": "永年区",
- "value": "130408" },
- {
- "label": "临漳县",
- "value": "130423" },
- {
- "label": "成安县",
- "value": "130424" },
- {
- "label": "大名县",
- "value": "130425" },
- {
- "label": "涉县",
- "value": "130426" },
- {
- "label": "磁县",
- "value": "130427" },
- {
- "label": "邱县",
- "value": "130430" },
- {
- "label": "鸡泽县",
- "value": "130431" },
- {
- "label": "广平县",
- "value": "130432" },
- {
- "label": "馆陶县",
- "value": "130433" },
- {
- "label": "魏县",
- "value": "130434" },
- {
- "label": "曲周县",
- "value": "130435" },
- {
- "label": "邯郸经济技术开发区",
- "value": "130471" },
- {
- "label": "邯郸冀南新区",
- "value": "130473" },
- {
- "label": "武安市",
- "value": "130481" }],
- [{
- "label": "桥东区",
- "value": "130502" },
- {
- "label": "桥西区",
- "value": "130503" },
- {
- "label": "邢台县",
- "value": "130521" },
- {
- "label": "临城县",
- "value": "130522" },
- {
- "label": "内丘县",
- "value": "130523" },
- {
- "label": "柏乡县",
- "value": "130524" },
- {
- "label": "隆尧县",
- "value": "130525" },
- {
- "label": "任县",
- "value": "130526" },
- {
- "label": "南和县",
- "value": "130527" },
- {
- "label": "宁晋县",
- "value": "130528" },
- {
- "label": "巨鹿县",
- "value": "130529" },
- {
- "label": "新河县",
- "value": "130530" },
- {
- "label": "广宗县",
- "value": "130531" },
- {
- "label": "平乡县",
- "value": "130532" },
- {
- "label": "威县",
- "value": "130533" },
- {
- "label": "清河县",
- "value": "130534" },
- {
- "label": "临西县",
- "value": "130535" },
- {
- "label": "河北邢台经济开发区",
- "value": "130571" },
- {
- "label": "南宫市",
- "value": "130581" },
- {
- "label": "沙河市",
- "value": "130582" }],
- [{
- "label": "竞秀区",
- "value": "130602" },
- {
- "label": "莲池区",
- "value": "130606" },
- {
- "label": "满城区",
- "value": "130607" },
- {
- "label": "清苑区",
- "value": "130608" },
- {
- "label": "徐水区",
- "value": "130609" },
- {
- "label": "涞水县",
- "value": "130623" },
- {
- "label": "阜平县",
- "value": "130624" },
- {
- "label": "定兴县",
- "value": "130626" },
- {
- "label": "唐县",
- "value": "130627" },
- {
- "label": "高阳县",
- "value": "130628" },
- {
- "label": "容城县",
- "value": "130629" },
- {
- "label": "涞源县",
- "value": "130630" },
- {
- "label": "望都县",
- "value": "130631" },
- {
- "label": "安新县",
- "value": "130632" },
- {
- "label": "易县",
- "value": "130633" },
- {
- "label": "曲阳县",
- "value": "130634" },
- {
- "label": "蠡县",
- "value": "130635" },
- {
- "label": "顺平县",
- "value": "130636" },
- {
- "label": "博野县",
- "value": "130637" },
- {
- "label": "雄县",
- "value": "130638" },
- {
- "label": "保定高新技术产业开发区",
- "value": "130671" },
- {
- "label": "保定白沟新城",
- "value": "130672" },
- {
- "label": "涿州市",
- "value": "130681" },
- {
- "label": "定州市",
- "value": "130682" },
- {
- "label": "安国市",
- "value": "130683" },
- {
- "label": "高碑店市",
- "value": "130684" }],
- [{
- "label": "桥东区",
- "value": "130702" },
- {
- "label": "桥西区",
- "value": "130703" },
- {
- "label": "宣化区",
- "value": "130705" },
- {
- "label": "下花园区",
- "value": "130706" },
- {
- "label": "万全区",
- "value": "130708" },
- {
- "label": "崇礼区",
- "value": "130709" },
- {
- "label": "张北县",
- "value": "130722" },
- {
- "label": "康保县",
- "value": "130723" },
- {
- "label": "沽源县",
- "value": "130724" },
- {
- "label": "尚义县",
- "value": "130725" },
- {
- "label": "蔚县",
- "value": "130726" },
- {
- "label": "阳原县",
- "value": "130727" },
- {
- "label": "怀安县",
- "value": "130728" },
- {
- "label": "怀来县",
- "value": "130730" },
- {
- "label": "涿鹿县",
- "value": "130731" },
- {
- "label": "赤城县",
- "value": "130732" },
- {
- "label": "张家口市高新技术产业开发区",
- "value": "130771" },
- {
- "label": "张家口市察北管理区",
- "value": "130772" },
- {
- "label": "张家口市塞北管理区",
- "value": "130773" }],
- [{
- "label": "双桥区",
- "value": "130802" },
- {
- "label": "双滦区",
- "value": "130803" },
- {
- "label": "鹰手营子矿区",
- "value": "130804" },
- {
- "label": "承德县",
- "value": "130821" },
- {
- "label": "兴隆县",
- "value": "130822" },
- {
- "label": "滦平县",
- "value": "130824" },
- {
- "label": "隆化县",
- "value": "130825" },
- {
- "label": "丰宁满族自治县",
- "value": "130826" },
- {
- "label": "宽城满族自治县",
- "value": "130827" },
- {
- "label": "围场满族蒙古族自治县",
- "value": "130828" },
- {
- "label": "承德高新技术产业开发区",
- "value": "130871" },
- {
- "label": "平泉市",
- "value": "130881" }],
- [{
- "label": "新华区",
- "value": "130902" },
- {
- "label": "运河区",
- "value": "130903" },
- {
- "label": "沧县",
- "value": "130921" },
- {
- "label": "青县",
- "value": "130922" },
- {
- "label": "东光县",
- "value": "130923" },
- {
- "label": "海兴县",
- "value": "130924" },
- {
- "label": "盐山县",
- "value": "130925" },
- {
- "label": "肃宁县",
- "value": "130926" },
- {
- "label": "南皮县",
- "value": "130927" },
- {
- "label": "吴桥县",
- "value": "130928" },
- {
- "label": "献县",
- "value": "130929" },
- {
- "label": "孟村回族自治县",
- "value": "130930" },
- {
- "label": "河北沧州经济开发区",
- "value": "130971" },
- {
- "label": "沧州高新技术产业开发区",
- "value": "130972" },
- {
- "label": "沧州渤海新区",
- "value": "130973" },
- {
- "label": "泊头市",
- "value": "130981" },
- {
- "label": "任丘市",
- "value": "130982" },
- {
- "label": "黄骅市",
- "value": "130983" },
- {
- "label": "河间市",
- "value": "130984" }],
- [{
- "label": "安次区",
- "value": "131002" },
- {
- "label": "广阳区",
- "value": "131003" },
- {
- "label": "固安县",
- "value": "131022" },
- {
- "label": "永清县",
- "value": "131023" },
- {
- "label": "香河县",
- "value": "131024" },
- {
- "label": "大城县",
- "value": "131025" },
- {
- "label": "文安县",
- "value": "131026" },
- {
- "label": "大厂回族自治县",
- "value": "131028" },
- {
- "label": "廊坊经济技术开发区",
- "value": "131071" },
- {
- "label": "霸州市",
- "value": "131081" },
- {
- "label": "三河市",
- "value": "131082" }],
- [{
- "label": "桃城区",
- "value": "131102" },
- {
- "label": "冀州区",
- "value": "131103" },
- {
- "label": "枣强县",
- "value": "131121" },
- {
- "label": "武邑县",
- "value": "131122" },
- {
- "label": "武强县",
- "value": "131123" },
- {
- "label": "饶阳县",
- "value": "131124" },
- {
- "label": "安平县",
- "value": "131125" },
- {
- "label": "故城县",
- "value": "131126" },
- {
- "label": "景县",
- "value": "131127" },
- {
- "label": "阜城县",
- "value": "131128" },
- {
- "label": "河北衡水经济开发区",
- "value": "131171" },
- {
- "label": "衡水滨湖新区",
- "value": "131172" },
- {
- "label": "深州市",
- "value": "131182" }]],
- [
- [{
- "label": "小店区",
- "value": "140105" },
- {
- "label": "迎泽区",
- "value": "140106" },
- {
- "label": "杏花岭区",
- "value": "140107" },
- {
- "label": "尖草坪区",
- "value": "140108" },
- {
- "label": "万柏林区",
- "value": "140109" },
- {
- "label": "晋源区",
- "value": "140110" },
- {
- "label": "清徐县",
- "value": "140121" },
- {
- "label": "阳曲县",
- "value": "140122" },
- {
- "label": "娄烦县",
- "value": "140123" },
- {
- "label": "山西转型综合改革示范区",
- "value": "140171" },
- {
- "label": "古交市",
- "value": "140181" }],
- [{
- "label": "城区",
- "value": "140202" },
- {
- "label": "矿区",
- "value": "140203" },
- {
- "label": "南郊区",
- "value": "140211" },
- {
- "label": "新荣区",
- "value": "140212" },
- {
- "label": "阳高县",
- "value": "140221" },
- {
- "label": "天镇县",
- "value": "140222" },
- {
- "label": "广灵县",
- "value": "140223" },
- {
- "label": "灵丘县",
- "value": "140224" },
- {
- "label": "浑源县",
- "value": "140225" },
- {
- "label": "左云县",
- "value": "140226" },
- {
- "label": "大同县",
- "value": "140227" },
- {
- "label": "山西大同经济开发区",
- "value": "140271" }],
- [{
- "label": "城区",
- "value": "140302" },
- {
- "label": "矿区",
- "value": "140303" },
- {
- "label": "郊区",
- "value": "140311" },
- {
- "label": "平定县",
- "value": "140321" },
- {
- "label": "盂县",
- "value": "140322" },
- {
- "label": "山西阳泉经济开发区",
- "value": "140371" }],
- [{
- "label": "城区",
- "value": "140402" },
- {
- "label": "郊区",
- "value": "140411" },
- {
- "label": "长治县",
- "value": "140421" },
- {
- "label": "襄垣县",
- "value": "140423" },
- {
- "label": "屯留县",
- "value": "140424" },
- {
- "label": "平顺县",
- "value": "140425" },
- {
- "label": "黎城县",
- "value": "140426" },
- {
- "label": "壶关县",
- "value": "140427" },
- {
- "label": "长子县",
- "value": "140428" },
- {
- "label": "武乡县",
- "value": "140429" },
- {
- "label": "沁县",
- "value": "140430" },
- {
- "label": "沁源县",
- "value": "140431" },
- {
- "label": "山西长治高新技术产业园区",
- "value": "140471" },
- {
- "label": "潞城市",
- "value": "140481" }],
- [{
- "label": "城区",
- "value": "140502" },
- {
- "label": "沁水县",
- "value": "140521" },
- {
- "label": "阳城县",
- "value": "140522" },
- {
- "label": "陵川县",
- "value": "140524" },
- {
- "label": "泽州县",
- "value": "140525" },
- {
- "label": "高平市",
- "value": "140581" }],
- [{
- "label": "朔城区",
- "value": "140602" },
- {
- "label": "平鲁区",
- "value": "140603" },
- {
- "label": "山阴县",
- "value": "140621" },
- {
- "label": "应县",
- "value": "140622" },
- {
- "label": "右玉县",
- "value": "140623" },
- {
- "label": "怀仁县",
- "value": "140624" },
- {
- "label": "山西朔州经济开发区",
- "value": "140671" }],
- [{
- "label": "榆次区",
- "value": "140702" },
- {
- "label": "榆社县",
- "value": "140721" },
- {
- "label": "左权县",
- "value": "140722" },
- {
- "label": "和顺县",
- "value": "140723" },
- {
- "label": "昔阳县",
- "value": "140724" },
- {
- "label": "寿阳县",
- "value": "140725" },
- {
- "label": "太谷县",
- "value": "140726" },
- {
- "label": "祁县",
- "value": "140727" },
- {
- "label": "平遥县",
- "value": "140728" },
- {
- "label": "灵石县",
- "value": "140729" },
- {
- "label": "介休市",
- "value": "140781" }],
- [{
- "label": "盐湖区",
- "value": "140802" },
- {
- "label": "临猗县",
- "value": "140821" },
- {
- "label": "万荣县",
- "value": "140822" },
- {
- "label": "闻喜县",
- "value": "140823" },
- {
- "label": "稷山县",
- "value": "140824" },
- {
- "label": "新绛县",
- "value": "140825" },
- {
- "label": "绛县",
- "value": "140826" },
- {
- "label": "垣曲县",
- "value": "140827" },
- {
- "label": "夏县",
- "value": "140828" },
- {
- "label": "平陆县",
- "value": "140829" },
- {
- "label": "芮城县",
- "value": "140830" },
- {
- "label": "永济市",
- "value": "140881" },
- {
- "label": "河津市",
- "value": "140882" }],
- [{
- "label": "忻府区",
- "value": "140902" },
- {
- "label": "定襄县",
- "value": "140921" },
- {
- "label": "五台县",
- "value": "140922" },
- {
- "label": "代县",
- "value": "140923" },
- {
- "label": "繁峙县",
- "value": "140924" },
- {
- "label": "宁武县",
- "value": "140925" },
- {
- "label": "静乐县",
- "value": "140926" },
- {
- "label": "神池县",
- "value": "140927" },
- {
- "label": "五寨县",
- "value": "140928" },
- {
- "label": "岢岚县",
- "value": "140929" },
- {
- "label": "河曲县",
- "value": "140930" },
- {
- "label": "保德县",
- "value": "140931" },
- {
- "label": "偏关县",
- "value": "140932" },
- {
- "label": "五台山风景名胜区",
- "value": "140971" },
- {
- "label": "原平市",
- "value": "140981" }],
- [{
- "label": "尧都区",
- "value": "141002" },
- {
- "label": "曲沃县",
- "value": "141021" },
- {
- "label": "翼城县",
- "value": "141022" },
- {
- "label": "襄汾县",
- "value": "141023" },
- {
- "label": "洪洞县",
- "value": "141024" },
- {
- "label": "古县",
- "value": "141025" },
- {
- "label": "安泽县",
- "value": "141026" },
- {
- "label": "浮山县",
- "value": "141027" },
- {
- "label": "吉县",
- "value": "141028" },
- {
- "label": "乡宁县",
- "value": "141029" },
- {
- "label": "大宁县",
- "value": "141030" },
- {
- "label": "隰县",
- "value": "141031" },
- {
- "label": "永和县",
- "value": "141032" },
- {
- "label": "蒲县",
- "value": "141033" },
- {
- "label": "汾西县",
- "value": "141034" },
- {
- "label": "侯马市",
- "value": "141081" },
- {
- "label": "霍州市",
- "value": "141082" }],
- [{
- "label": "离石区",
- "value": "141102" },
- {
- "label": "文水县",
- "value": "141121" },
- {
- "label": "交城县",
- "value": "141122" },
- {
- "label": "兴县",
- "value": "141123" },
- {
- "label": "临县",
- "value": "141124" },
- {
- "label": "柳林县",
- "value": "141125" },
- {
- "label": "石楼县",
- "value": "141126" },
- {
- "label": "岚县",
- "value": "141127" },
- {
- "label": "方山县",
- "value": "141128" },
- {
- "label": "中阳县",
- "value": "141129" },
- {
- "label": "交口县",
- "value": "141130" },
- {
- "label": "孝义市",
- "value": "141181" },
- {
- "label": "汾阳市",
- "value": "141182" }]],
- [
- [{
- "label": "新城区",
- "value": "150102" },
- {
- "label": "回民区",
- "value": "150103" },
- {
- "label": "玉泉区",
- "value": "150104" },
- {
- "label": "赛罕区",
- "value": "150105" },
- {
- "label": "土默特左旗",
- "value": "150121" },
- {
- "label": "托克托县",
- "value": "150122" },
- {
- "label": "和林格尔县",
- "value": "150123" },
- {
- "label": "清水河县",
- "value": "150124" },
- {
- "label": "武川县",
- "value": "150125" },
- {
- "label": "呼和浩特金海工业园区",
- "value": "150171" },
- {
- "label": "呼和浩特经济技术开发区",
- "value": "150172" }],
- [{
- "label": "东河区",
- "value": "150202" },
- {
- "label": "昆都仑区",
- "value": "150203" },
- {
- "label": "青山区",
- "value": "150204" },
- {
- "label": "石拐区",
- "value": "150205" },
- {
- "label": "白云鄂博矿区",
- "value": "150206" },
- {
- "label": "九原区",
- "value": "150207" },
- {
- "label": "土默特右旗",
- "value": "150221" },
- {
- "label": "固阳县",
- "value": "150222" },
- {
- "label": "达尔罕茂明安联合旗",
- "value": "150223" },
- {
- "label": "包头稀土高新技术产业开发区",
- "value": "150271" }],
- [{
- "label": "海勃湾区",
- "value": "150302" },
- {
- "label": "海南区",
- "value": "150303" },
- {
- "label": "乌达区",
- "value": "150304" }],
- [{
- "label": "红山区",
- "value": "150402" },
- {
- "label": "元宝山区",
- "value": "150403" },
- {
- "label": "松山区",
- "value": "150404" },
- {
- "label": "阿鲁科尔沁旗",
- "value": "150421" },
- {
- "label": "巴林左旗",
- "value": "150422" },
- {
- "label": "巴林右旗",
- "value": "150423" },
- {
- "label": "林西县",
- "value": "150424" },
- {
- "label": "克什克腾旗",
- "value": "150425" },
- {
- "label": "翁牛特旗",
- "value": "150426" },
- {
- "label": "喀喇沁旗",
- "value": "150428" },
- {
- "label": "宁城县",
- "value": "150429" },
- {
- "label": "敖汉旗",
- "value": "150430" }],
- [{
- "label": "科尔沁区",
- "value": "150502" },
- {
- "label": "科尔沁左翼中旗",
- "value": "150521" },
- {
- "label": "科尔沁左翼后旗",
- "value": "150522" },
- {
- "label": "开鲁县",
- "value": "150523" },
- {
- "label": "库伦旗",
- "value": "150524" },
- {
- "label": "奈曼旗",
- "value": "150525" },
- {
- "label": "扎鲁特旗",
- "value": "150526" },
- {
- "label": "通辽经济技术开发区",
- "value": "150571" },
- {
- "label": "霍林郭勒市",
- "value": "150581" }],
- [{
- "label": "东胜区",
- "value": "150602" },
- {
- "label": "康巴什区",
- "value": "150603" },
- {
- "label": "达拉特旗",
- "value": "150621" },
- {
- "label": "准格尔旗",
- "value": "150622" },
- {
- "label": "鄂托克前旗",
- "value": "150623" },
- {
- "label": "鄂托克旗",
- "value": "150624" },
- {
- "label": "杭锦旗",
- "value": "150625" },
- {
- "label": "乌审旗",
- "value": "150626" },
- {
- "label": "伊金霍洛旗",
- "value": "150627" }],
- [{
- "label": "海拉尔区",
- "value": "150702" },
- {
- "label": "扎赉诺尔区",
- "value": "150703" },
- {
- "label": "阿荣旗",
- "value": "150721" },
- {
- "label": "莫力达瓦达斡尔族自治旗",
- "value": "150722" },
- {
- "label": "鄂伦春自治旗",
- "value": "150723" },
- {
- "label": "鄂温克族自治旗",
- "value": "150724" },
- {
- "label": "陈巴尔虎旗",
- "value": "150725" },
- {
- "label": "新巴尔虎左旗",
- "value": "150726" },
- {
- "label": "新巴尔虎右旗",
- "value": "150727" },
- {
- "label": "满洲里市",
- "value": "150781" },
- {
- "label": "牙克石市",
- "value": "150782" },
- {
- "label": "扎兰屯市",
- "value": "150783" },
- {
- "label": "额尔古纳市",
- "value": "150784" },
- {
- "label": "根河市",
- "value": "150785" }],
- [{
- "label": "临河区",
- "value": "150802" },
- {
- "label": "五原县",
- "value": "150821" },
- {
- "label": "磴口县",
- "value": "150822" },
- {
- "label": "乌拉特前旗",
- "value": "150823" },
- {
- "label": "乌拉特中旗",
- "value": "150824" },
- {
- "label": "乌拉特后旗",
- "value": "150825" },
- {
- "label": "杭锦后旗",
- "value": "150826" }],
- [{
- "label": "集宁区",
- "value": "150902" },
- {
- "label": "卓资县",
- "value": "150921" },
- {
- "label": "化德县",
- "value": "150922" },
- {
- "label": "商都县",
- "value": "150923" },
- {
- "label": "兴和县",
- "value": "150924" },
- {
- "label": "凉城县",
- "value": "150925" },
- {
- "label": "察哈尔右翼前旗",
- "value": "150926" },
- {
- "label": "察哈尔右翼中旗",
- "value": "150927" },
- {
- "label": "察哈尔右翼后旗",
- "value": "150928" },
- {
- "label": "四子王旗",
- "value": "150929" },
- {
- "label": "丰镇市",
- "value": "150981" }],
- [{
- "label": "乌兰浩特市",
- "value": "152201" },
- {
- "label": "阿尔山市",
- "value": "152202" },
- {
- "label": "科尔沁右翼前旗",
- "value": "152221" },
- {
- "label": "科尔沁右翼中旗",
- "value": "152222" },
- {
- "label": "扎赉特旗",
- "value": "152223" },
- {
- "label": "突泉县",
- "value": "152224" }],
- [{
- "label": "二连浩特市",
- "value": "152501" },
- {
- "label": "锡林浩特市",
- "value": "152502" },
- {
- "label": "阿巴嘎旗",
- "value": "152522" },
- {
- "label": "苏尼特左旗",
- "value": "152523" },
- {
- "label": "苏尼特右旗",
- "value": "152524" },
- {
- "label": "东乌珠穆沁旗",
- "value": "152525" },
- {
- "label": "西乌珠穆沁旗",
- "value": "152526" },
- {
- "label": "太仆寺旗",
- "value": "152527" },
- {
- "label": "镶黄旗",
- "value": "152528" },
- {
- "label": "正镶白旗",
- "value": "152529" },
- {
- "label": "正蓝旗",
- "value": "152530" },
- {
- "label": "多伦县",
- "value": "152531" },
- {
- "label": "乌拉盖管委会",
- "value": "152571" }],
- [{
- "label": "阿拉善左旗",
- "value": "152921" },
- {
- "label": "阿拉善右旗",
- "value": "152922" },
- {
- "label": "额济纳旗",
- "value": "152923" },
- {
- "label": "内蒙古阿拉善经济开发区",
- "value": "152971" }]],
- [
- [{
- "label": "和平区",
- "value": "210102" },
- {
- "label": "沈河区",
- "value": "210103" },
- {
- "label": "大东区",
- "value": "210104" },
- {
- "label": "皇姑区",
- "value": "210105" },
- {
- "label": "铁西区",
- "value": "210106" },
- {
- "label": "苏家屯区",
- "value": "210111" },
- {
- "label": "浑南区",
- "value": "210112" },
- {
- "label": "沈北新区",
- "value": "210113" },
- {
- "label": "于洪区",
- "value": "210114" },
- {
- "label": "辽中区",
- "value": "210115" },
- {
- "label": "康平县",
- "value": "210123" },
- {
- "label": "法库县",
- "value": "210124" },
- {
- "label": "新民市",
- "value": "210181" }],
- [{
- "label": "中山区",
- "value": "210202" },
- {
- "label": "西岗区",
- "value": "210203" },
- {
- "label": "沙河口区",
- "value": "210204" },
- {
- "label": "甘井子区",
- "value": "210211" },
- {
- "label": "旅顺口区",
- "value": "210212" },
- {
- "label": "金州区",
- "value": "210213" },
- {
- "label": "普兰店区",
- "value": "210214" },
- {
- "label": "长海县",
- "value": "210224" },
- {
- "label": "瓦房店市",
- "value": "210281" },
- {
- "label": "庄河市",
- "value": "210283" }],
- [{
- "label": "铁东区",
- "value": "210302" },
- {
- "label": "铁西区",
- "value": "210303" },
- {
- "label": "立山区",
- "value": "210304" },
- {
- "label": "千山区",
- "value": "210311" },
- {
- "label": "台安县",
- "value": "210321" },
- {
- "label": "岫岩满族自治县",
- "value": "210323" },
- {
- "label": "海城市",
- "value": "210381" }],
- [{
- "label": "新抚区",
- "value": "210402" },
- {
- "label": "东洲区",
- "value": "210403" },
- {
- "label": "望花区",
- "value": "210404" },
- {
- "label": "顺城区",
- "value": "210411" },
- {
- "label": "抚顺县",
- "value": "210421" },
- {
- "label": "新宾满族自治县",
- "value": "210422" },
- {
- "label": "清原满族自治县",
- "value": "210423" }],
- [{
- "label": "平山区",
- "value": "210502" },
- {
- "label": "溪湖区",
- "value": "210503" },
- {
- "label": "明山区",
- "value": "210504" },
- {
- "label": "南芬区",
- "value": "210505" },
- {
- "label": "本溪满族自治县",
- "value": "210521" },
- {
- "label": "桓仁满族自治县",
- "value": "210522" }],
- [{
- "label": "元宝区",
- "value": "210602" },
- {
- "label": "振兴区",
- "value": "210603" },
- {
- "label": "振安区",
- "value": "210604" },
- {
- "label": "宽甸满族自治县",
- "value": "210624" },
- {
- "label": "东港市",
- "value": "210681" },
- {
- "label": "凤城市",
- "value": "210682" }],
- [{
- "label": "古塔区",
- "value": "210702" },
- {
- "label": "凌河区",
- "value": "210703" },
- {
- "label": "太和区",
- "value": "210711" },
- {
- "label": "黑山县",
- "value": "210726" },
- {
- "label": "义县",
- "value": "210727" },
- {
- "label": "凌海市",
- "value": "210781" },
- {
- "label": "北镇市",
- "value": "210782" }],
- [{
- "label": "站前区",
- "value": "210802" },
- {
- "label": "西市区",
- "value": "210803" },
- {
- "label": "鲅鱼圈区",
- "value": "210804" },
- {
- "label": "老边区",
- "value": "210811" },
- {
- "label": "盖州市",
- "value": "210881" },
- {
- "label": "大石桥市",
- "value": "210882" }],
- [{
- "label": "海州区",
- "value": "210902" },
- {
- "label": "新邱区",
- "value": "210903" },
- {
- "label": "太平区",
- "value": "210904" },
- {
- "label": "清河门区",
- "value": "210905" },
- {
- "label": "细河区",
- "value": "210911" },
- {
- "label": "阜新蒙古族自治县",
- "value": "210921" },
- {
- "label": "彰武县",
- "value": "210922" }],
- [{
- "label": "白塔区",
- "value": "211002" },
- {
- "label": "文圣区",
- "value": "211003" },
- {
- "label": "宏伟区",
- "value": "211004" },
- {
- "label": "弓长岭区",
- "value": "211005" },
- {
- "label": "太子河区",
- "value": "211011" },
- {
- "label": "辽阳县",
- "value": "211021" },
- {
- "label": "灯塔市",
- "value": "211081" }],
- [{
- "label": "双台子区",
- "value": "211102" },
- {
- "label": "兴隆台区",
- "value": "211103" },
- {
- "label": "大洼区",
- "value": "211104" },
- {
- "label": "盘山县",
- "value": "211122" }],
- [{
- "label": "银州区",
- "value": "211202" },
- {
- "label": "清河区",
- "value": "211204" },
- {
- "label": "铁岭县",
- "value": "211221" },
- {
- "label": "西丰县",
- "value": "211223" },
- {
- "label": "昌图县",
- "value": "211224" },
- {
- "label": "调兵山市",
- "value": "211281" },
- {
- "label": "开原市",
- "value": "211282" }],
- [{
- "label": "双塔区",
- "value": "211302" },
- {
- "label": "龙城区",
- "value": "211303" },
- {
- "label": "朝阳县",
- "value": "211321" },
- {
- "label": "建平县",
- "value": "211322" },
- {
- "label": "喀喇沁左翼蒙古族自治县",
- "value": "211324" },
- {
- "label": "北票市",
- "value": "211381" },
- {
- "label": "凌源市",
- "value": "211382" }],
- [{
- "label": "连山区",
- "value": "211402" },
- {
- "label": "龙港区",
- "value": "211403" },
- {
- "label": "南票区",
- "value": "211404" },
- {
- "label": "绥中县",
- "value": "211421" },
- {
- "label": "建昌县",
- "value": "211422" },
- {
- "label": "兴城市",
- "value": "211481" }]],
- [
- [{
- "label": "南关区",
- "value": "220102" },
- {
- "label": "宽城区",
- "value": "220103" },
- {
- "label": "朝阳区",
- "value": "220104" },
- {
- "label": "二道区",
- "value": "220105" },
- {
- "label": "绿园区",
- "value": "220106" },
- {
- "label": "双阳区",
- "value": "220112" },
- {
- "label": "九台区",
- "value": "220113" },
- {
- "label": "农安县",
- "value": "220122" },
- {
- "label": "长春经济技术开发区",
- "value": "220171" },
- {
- "label": "长春净月高新技术产业开发区",
- "value": "220172" },
- {
- "label": "长春高新技术产业开发区",
- "value": "220173" },
- {
- "label": "长春汽车经济技术开发区",
- "value": "220174" },
- {
- "label": "榆树市",
- "value": "220182" },
- {
- "label": "德惠市",
- "value": "220183" }],
- [{
- "label": "昌邑区",
- "value": "220202" },
- {
- "label": "龙潭区",
- "value": "220203" },
- {
- "label": "船营区",
- "value": "220204" },
- {
- "label": "丰满区",
- "value": "220211" },
- {
- "label": "永吉县",
- "value": "220221" },
- {
- "label": "吉林经济开发区",
- "value": "220271" },
- {
- "label": "吉林高新技术产业开发区",
- "value": "220272" },
- {
- "label": "吉林中国新加坡食品区",
- "value": "220273" },
- {
- "label": "蛟河市",
- "value": "220281" },
- {
- "label": "桦甸市",
- "value": "220282" },
- {
- "label": "舒兰市",
- "value": "220283" },
- {
- "label": "磐石市",
- "value": "220284" }],
- [{
- "label": "铁西区",
- "value": "220302" },
- {
- "label": "铁东区",
- "value": "220303" },
- {
- "label": "梨树县",
- "value": "220322" },
- {
- "label": "伊通满族自治县",
- "value": "220323" },
- {
- "label": "公主岭市",
- "value": "220381" },
- {
- "label": "双辽市",
- "value": "220382" }],
- [{
- "label": "龙山区",
- "value": "220402" },
- {
- "label": "西安区",
- "value": "220403" },
- {
- "label": "东丰县",
- "value": "220421" },
- {
- "label": "东辽县",
- "value": "220422" }],
- [{
- "label": "东昌区",
- "value": "220502" },
- {
- "label": "二道江区",
- "value": "220503" },
- {
- "label": "通化县",
- "value": "220521" },
- {
- "label": "辉南县",
- "value": "220523" },
- {
- "label": "柳河县",
- "value": "220524" },
- {
- "label": "梅河口市",
- "value": "220581" },
- {
- "label": "集安市",
- "value": "220582" }],
- [{
- "label": "浑江区",
- "value": "220602" },
- {
- "label": "江源区",
- "value": "220605" },
- {
- "label": "抚松县",
- "value": "220621" },
- {
- "label": "靖宇县",
- "value": "220622" },
- {
- "label": "长白朝鲜族自治县",
- "value": "220623" },
- {
- "label": "临江市",
- "value": "220681" }],
- [{
- "label": "宁江区",
- "value": "220702" },
- {
- "label": "前郭尔罗斯蒙古族自治县",
- "value": "220721" },
- {
- "label": "长岭县",
- "value": "220722" },
- {
- "label": "乾安县",
- "value": "220723" },
- {
- "label": "吉林松原经济开发区",
- "value": "220771" },
- {
- "label": "扶余市",
- "value": "220781" }],
- [{
- "label": "洮北区",
- "value": "220802" },
- {
- "label": "镇赉县",
- "value": "220821" },
- {
- "label": "通榆县",
- "value": "220822" },
- {
- "label": "吉林白城经济开发区",
- "value": "220871" },
- {
- "label": "洮南市",
- "value": "220881" },
- {
- "label": "大安市",
- "value": "220882" }],
- [{
- "label": "延吉市",
- "value": "222401" },
- {
- "label": "图们市",
- "value": "222402" },
- {
- "label": "敦化市",
- "value": "222403" },
- {
- "label": "珲春市",
- "value": "222404" },
- {
- "label": "龙井市",
- "value": "222405" },
- {
- "label": "和龙市",
- "value": "222406" },
- {
- "label": "汪清县",
- "value": "222424" },
- {
- "label": "安图县",
- "value": "222426" }]],
- [
- [{
- "label": "道里区",
- "value": "230102" },
- {
- "label": "南岗区",
- "value": "230103" },
- {
- "label": "道外区",
- "value": "230104" },
- {
- "label": "平房区",
- "value": "230108" },
- {
- "label": "松北区",
- "value": "230109" },
- {
- "label": "香坊区",
- "value": "230110" },
- {
- "label": "呼兰区",
- "value": "230111" },
- {
- "label": "阿城区",
- "value": "230112" },
- {
- "label": "双城区",
- "value": "230113" },
- {
- "label": "依兰县",
- "value": "230123" },
- {
- "label": "方正县",
- "value": "230124" },
- {
- "label": "宾县",
- "value": "230125" },
- {
- "label": "巴彦县",
- "value": "230126" },
- {
- "label": "木兰县",
- "value": "230127" },
- {
- "label": "通河县",
- "value": "230128" },
- {
- "label": "延寿县",
- "value": "230129" },
- {
- "label": "尚志市",
- "value": "230183" },
- {
- "label": "五常市",
- "value": "230184" }],
- [{
- "label": "龙沙区",
- "value": "230202" },
- {
- "label": "建华区",
- "value": "230203" },
- {
- "label": "铁锋区",
- "value": "230204" },
- {
- "label": "昂昂溪区",
- "value": "230205" },
- {
- "label": "富拉尔基区",
- "value": "230206" },
- {
- "label": "碾子山区",
- "value": "230207" },
- {
- "label": "梅里斯达斡尔族区",
- "value": "230208" },
- {
- "label": "龙江县",
- "value": "230221" },
- {
- "label": "依安县",
- "value": "230223" },
- {
- "label": "泰来县",
- "value": "230224" },
- {
- "label": "甘南县",
- "value": "230225" },
- {
- "label": "富裕县",
- "value": "230227" },
- {
- "label": "克山县",
- "value": "230229" },
- {
- "label": "克东县",
- "value": "230230" },
- {
- "label": "拜泉县",
- "value": "230231" },
- {
- "label": "讷河市",
- "value": "230281" }],
- [{
- "label": "鸡冠区",
- "value": "230302" },
- {
- "label": "恒山区",
- "value": "230303" },
- {
- "label": "滴道区",
- "value": "230304" },
- {
- "label": "梨树区",
- "value": "230305" },
- {
- "label": "城子河区",
- "value": "230306" },
- {
- "label": "麻山区",
- "value": "230307" },
- {
- "label": "鸡东县",
- "value": "230321" },
- {
- "label": "虎林市",
- "value": "230381" },
- {
- "label": "密山市",
- "value": "230382" }],
- [{
- "label": "向阳区",
- "value": "230402" },
- {
- "label": "工农区",
- "value": "230403" },
- {
- "label": "南山区",
- "value": "230404" },
- {
- "label": "兴安区",
- "value": "230405" },
- {
- "label": "东山区",
- "value": "230406" },
- {
- "label": "兴山区",
- "value": "230407" },
- {
- "label": "萝北县",
- "value": "230421" },
- {
- "label": "绥滨县",
- "value": "230422" }],
- [{
- "label": "尖山区",
- "value": "230502" },
- {
- "label": "岭东区",
- "value": "230503" },
- {
- "label": "四方台区",
- "value": "230505" },
- {
- "label": "宝山区",
- "value": "230506" },
- {
- "label": "集贤县",
- "value": "230521" },
- {
- "label": "友谊县",
- "value": "230522" },
- {
- "label": "宝清县",
- "value": "230523" },
- {
- "label": "饶河县",
- "value": "230524" }],
- [{
- "label": "萨尔图区",
- "value": "230602" },
- {
- "label": "龙凤区",
- "value": "230603" },
- {
- "label": "让胡路区",
- "value": "230604" },
- {
- "label": "红岗区",
- "value": "230605" },
- {
- "label": "大同区",
- "value": "230606" },
- {
- "label": "肇州县",
- "value": "230621" },
- {
- "label": "肇源县",
- "value": "230622" },
- {
- "label": "林甸县",
- "value": "230623" },
- {
- "label": "杜尔伯特蒙古族自治县",
- "value": "230624" },
- {
- "label": "大庆高新技术产业开发区",
- "value": "230671" }],
- [{
- "label": "伊春区",
- "value": "230702" },
- {
- "label": "南岔区",
- "value": "230703" },
- {
- "label": "友好区",
- "value": "230704" },
- {
- "label": "西林区",
- "value": "230705" },
- {
- "label": "翠峦区",
- "value": "230706" },
- {
- "label": "新青区",
- "value": "230707" },
- {
- "label": "美溪区",
- "value": "230708" },
- {
- "label": "金山屯区",
- "value": "230709" },
- {
- "label": "五营区",
- "value": "230710" },
- {
- "label": "乌马河区",
- "value": "230711" },
- {
- "label": "汤旺河区",
- "value": "230712" },
- {
- "label": "带岭区",
- "value": "230713" },
- {
- "label": "乌伊岭区",
- "value": "230714" },
- {
- "label": "红星区",
- "value": "230715" },
- {
- "label": "上甘岭区",
- "value": "230716" },
- {
- "label": "嘉荫县",
- "value": "230722" },
- {
- "label": "铁力市",
- "value": "230781" }],
- [{
- "label": "向阳区",
- "value": "230803" },
- {
- "label": "前进区",
- "value": "230804" },
- {
- "label": "东风区",
- "value": "230805" },
- {
- "label": "郊区",
- "value": "230811" },
- {
- "label": "桦南县",
- "value": "230822" },
- {
- "label": "桦川县",
- "value": "230826" },
- {
- "label": "汤原县",
- "value": "230828" },
- {
- "label": "同江市",
- "value": "230881" },
- {
- "label": "富锦市",
- "value": "230882" },
- {
- "label": "抚远市",
- "value": "230883" }],
- [{
- "label": "新兴区",
- "value": "230902" },
- {
- "label": "桃山区",
- "value": "230903" },
- {
- "label": "茄子河区",
- "value": "230904" },
- {
- "label": "勃利县",
- "value": "230921" }],
- [{
- "label": "东安区",
- "value": "231002" },
- {
- "label": "阳明区",
- "value": "231003" },
- {
- "label": "爱民区",
- "value": "231004" },
- {
- "label": "西安区",
- "value": "231005" },
- {
- "label": "林口县",
- "value": "231025" },
- {
- "label": "牡丹江经济技术开发区",
- "value": "231071" },
- {
- "label": "绥芬河市",
- "value": "231081" },
- {
- "label": "海林市",
- "value": "231083" },
- {
- "label": "宁安市",
- "value": "231084" },
- {
- "label": "穆棱市",
- "value": "231085" },
- {
- "label": "东宁市",
- "value": "231086" }],
- [{
- "label": "爱辉区",
- "value": "231102" },
- {
- "label": "嫩江县",
- "value": "231121" },
- {
- "label": "逊克县",
- "value": "231123" },
- {
- "label": "孙吴县",
- "value": "231124" },
- {
- "label": "北安市",
- "value": "231181" },
- {
- "label": "五大连池市",
- "value": "231182" }],
- [{
- "label": "北林区",
- "value": "231202" },
- {
- "label": "望奎县",
- "value": "231221" },
- {
- "label": "兰西县",
- "value": "231222" },
- {
- "label": "青冈县",
- "value": "231223" },
- {
- "label": "庆安县",
- "value": "231224" },
- {
- "label": "明水县",
- "value": "231225" },
- {
- "label": "绥棱县",
- "value": "231226" },
- {
- "label": "安达市",
- "value": "231281" },
- {
- "label": "肇东市",
- "value": "231282" },
- {
- "label": "海伦市",
- "value": "231283" }],
- [{
- "label": "加格达奇区",
- "value": "232701" },
- {
- "label": "松岭区",
- "value": "232702" },
- {
- "label": "新林区",
- "value": "232703" },
- {
- "label": "呼中区",
- "value": "232704" },
- {
- "label": "呼玛县",
- "value": "232721" },
- {
- "label": "塔河县",
- "value": "232722" },
- {
- "label": "漠河县",
- "value": "232723" }]],
- [
- [{
- "label": "黄浦区",
- "value": "310101" },
- {
- "label": "徐汇区",
- "value": "310104" },
- {
- "label": "长宁区",
- "value": "310105" },
- {
- "label": "静安区",
- "value": "310106" },
- {
- "label": "普陀区",
- "value": "310107" },
- {
- "label": "虹口区",
- "value": "310109" },
- {
- "label": "杨浦区",
- "value": "310110" },
- {
- "label": "闵行区",
- "value": "310112" },
- {
- "label": "宝山区",
- "value": "310113" },
- {
- "label": "嘉定区",
- "value": "310114" },
- {
- "label": "浦东新区",
- "value": "310115" },
- {
- "label": "金山区",
- "value": "310116" },
- {
- "label": "松江区",
- "value": "310117" },
- {
- "label": "青浦区",
- "value": "310118" },
- {
- "label": "奉贤区",
- "value": "310120" },
- {
- "label": "崇明区",
- "value": "310151" }]],
- [
- [{
- "label": "玄武区",
- "value": "320102" },
- {
- "label": "秦淮区",
- "value": "320104" },
- {
- "label": "建邺区",
- "value": "320105" },
- {
- "label": "鼓楼区",
- "value": "320106" },
- {
- "label": "浦口区",
- "value": "320111" },
- {
- "label": "栖霞区",
- "value": "320113" },
- {
- "label": "雨花台区",
- "value": "320114" },
- {
- "label": "江宁区",
- "value": "320115" },
- {
- "label": "六合区",
- "value": "320116" },
- {
- "label": "溧水区",
- "value": "320117" },
- {
- "label": "高淳区",
- "value": "320118" }],
- [{
- "label": "锡山区",
- "value": "320205" },
- {
- "label": "惠山区",
- "value": "320206" },
- {
- "label": "滨湖区",
- "value": "320211" },
- {
- "label": "梁溪区",
- "value": "320213" },
- {
- "label": "新吴区",
- "value": "320214" },
- {
- "label": "江阴市",
- "value": "320281" },
- {
- "label": "宜兴市",
- "value": "320282" }],
- [{
- "label": "鼓楼区",
- "value": "320302" },
- {
- "label": "云龙区",
- "value": "320303" },
- {
- "label": "贾汪区",
- "value": "320305" },
- {
- "label": "泉山区",
- "value": "320311" },
- {
- "label": "铜山区",
- "value": "320312" },
- {
- "label": "丰县",
- "value": "320321" },
- {
- "label": "沛县",
- "value": "320322" },
- {
- "label": "睢宁县",
- "value": "320324" },
- {
- "label": "徐州经济技术开发区",
- "value": "320371" },
- {
- "label": "新沂市",
- "value": "320381" },
- {
- "label": "邳州市",
- "value": "320382" }],
- [{
- "label": "天宁区",
- "value": "320402" },
- {
- "label": "钟楼区",
- "value": "320404" },
- {
- "label": "新北区",
- "value": "320411" },
- {
- "label": "武进区",
- "value": "320412" },
- {
- "label": "金坛区",
- "value": "320413" },
- {
- "label": "溧阳市",
- "value": "320481" }],
- [{
- "label": "虎丘区",
- "value": "320505" },
- {
- "label": "吴中区",
- "value": "320506" },
- {
- "label": "相城区",
- "value": "320507" },
- {
- "label": "姑苏区",
- "value": "320508" },
- {
- "label": "吴江区",
- "value": "320509" },
- {
- "label": "苏州工业园区",
- "value": "320571" },
- {
- "label": "常熟市",
- "value": "320581" },
- {
- "label": "张家港市",
- "value": "320582" },
- {
- "label": "昆山市",
- "value": "320583" },
- {
- "label": "太仓市",
- "value": "320585" }],
- [{
- "label": "崇川区",
- "value": "320602" },
- {
- "label": "港闸区",
- "value": "320611" },
- {
- "label": "通州区",
- "value": "320612" },
- {
- "label": "海安县",
- "value": "320621" },
- {
- "label": "如东县",
- "value": "320623" },
- {
- "label": "南通经济技术开发区",
- "value": "320671" },
- {
- "label": "启东市",
- "value": "320681" },
- {
- "label": "如皋市",
- "value": "320682" },
- {
- "label": "海门市",
- "value": "320684" }],
- [{
- "label": "连云区",
- "value": "320703" },
- {
- "label": "海州区",
- "value": "320706" },
- {
- "label": "赣榆区",
- "value": "320707" },
- {
- "label": "东海县",
- "value": "320722" },
- {
- "label": "灌云县",
- "value": "320723" },
- {
- "label": "灌南县",
- "value": "320724" },
- {
- "label": "连云港经济技术开发区",
- "value": "320771" },
- {
- "label": "连云港高新技术产业开发区",
- "value": "320772" }],
- [{
- "label": "淮安区",
- "value": "320803" },
- {
- "label": "淮阴区",
- "value": "320804" },
- {
- "label": "清江浦区",
- "value": "320812" },
- {
- "label": "洪泽区",
- "value": "320813" },
- {
- "label": "涟水县",
- "value": "320826" },
- {
- "label": "盱眙县",
- "value": "320830" },
- {
- "label": "金湖县",
- "value": "320831" },
- {
- "label": "淮安经济技术开发区",
- "value": "320871" }],
- [{
- "label": "亭湖区",
- "value": "320902" },
- {
- "label": "盐都区",
- "value": "320903" },
- {
- "label": "大丰区",
- "value": "320904" },
- {
- "label": "响水县",
- "value": "320921" },
- {
- "label": "滨海县",
- "value": "320922" },
- {
- "label": "阜宁县",
- "value": "320923" },
- {
- "label": "射阳县",
- "value": "320924" },
- {
- "label": "建湖县",
- "value": "320925" },
- {
- "label": "盐城经济技术开发区",
- "value": "320971" },
- {
- "label": "东台市",
- "value": "320981" }],
- [{
- "label": "广陵区",
- "value": "321002" },
- {
- "label": "邗江区",
- "value": "321003" },
- {
- "label": "江都区",
- "value": "321012" },
- {
- "label": "宝应县",
- "value": "321023" },
- {
- "label": "扬州经济技术开发区",
- "value": "321071" },
- {
- "label": "仪征市",
- "value": "321081" },
- {
- "label": "高邮市",
- "value": "321084" }],
- [{
- "label": "京口区",
- "value": "321102" },
- {
- "label": "润州区",
- "value": "321111" },
- {
- "label": "丹徒区",
- "value": "321112" },
- {
- "label": "镇江新区",
- "value": "321171" },
- {
- "label": "丹阳市",
- "value": "321181" },
- {
- "label": "扬中市",
- "value": "321182" },
- {
- "label": "句容市",
- "value": "321183" }],
- [{
- "label": "海陵区",
- "value": "321202" },
- {
- "label": "高港区",
- "value": "321203" },
- {
- "label": "姜堰区",
- "value": "321204" },
- {
- "label": "泰州医药高新技术产业开发区",
- "value": "321271" },
- {
- "label": "兴化市",
- "value": "321281" },
- {
- "label": "靖江市",
- "value": "321282" },
- {
- "label": "泰兴市",
- "value": "321283" }],
- [{
- "label": "宿城区",
- "value": "321302" },
- {
- "label": "宿豫区",
- "value": "321311" },
- {
- "label": "沭阳县",
- "value": "321322" },
- {
- "label": "泗阳县",
- "value": "321323" },
- {
- "label": "泗洪县",
- "value": "321324" },
- {
- "label": "宿迁经济技术开发区",
- "value": "321371" }]],
- [
- [{
- "label": "上城区",
- "value": "330102" },
- {
- "label": "下城区",
- "value": "330103" },
- {
- "label": "江干区",
- "value": "330104" },
- {
- "label": "拱墅区",
- "value": "330105" },
- {
- "label": "西湖区",
- "value": "330106" },
- {
- "label": "滨江区",
- "value": "330108" },
- {
- "label": "萧山区",
- "value": "330109" },
- {
- "label": "余杭区",
- "value": "330110" },
- {
- "label": "富阳区",
- "value": "330111" },
- {
- "label": "临安区",
- "value": "330112" },
- {
- "label": "桐庐县",
- "value": "330122" },
- {
- "label": "淳安县",
- "value": "330127" },
- {
- "label": "建德市",
- "value": "330182" }],
- [{
- "label": "海曙区",
- "value": "330203" },
- {
- "label": "江北区",
- "value": "330205" },
- {
- "label": "北仑区",
- "value": "330206" },
- {
- "label": "镇海区",
- "value": "330211" },
- {
- "label": "鄞州区",
- "value": "330212" },
- {
- "label": "奉化区",
- "value": "330213" },
- {
- "label": "象山县",
- "value": "330225" },
- {
- "label": "宁海县",
- "value": "330226" },
- {
- "label": "余姚市",
- "value": "330281" },
- {
- "label": "慈溪市",
- "value": "330282" }],
- [{
- "label": "鹿城区",
- "value": "330302" },
- {
- "label": "龙湾区",
- "value": "330303" },
- {
- "label": "瓯海区",
- "value": "330304" },
- {
- "label": "洞头区",
- "value": "330305" },
- {
- "label": "永嘉县",
- "value": "330324" },
- {
- "label": "平阳县",
- "value": "330326" },
- {
- "label": "苍南县",
- "value": "330327" },
- {
- "label": "文成县",
- "value": "330328" },
- {
- "label": "泰顺县",
- "value": "330329" },
- {
- "label": "温州经济技术开发区",
- "value": "330371" },
- {
- "label": "瑞安市",
- "value": "330381" },
- {
- "label": "乐清市",
- "value": "330382" }],
- [{
- "label": "南湖区",
- "value": "330402" },
- {
- "label": "秀洲区",
- "value": "330411" },
- {
- "label": "嘉善县",
- "value": "330421" },
- {
- "label": "海盐县",
- "value": "330424" },
- {
- "label": "海宁市",
- "value": "330481" },
- {
- "label": "平湖市",
- "value": "330482" },
- {
- "label": "桐乡市",
- "value": "330483" }],
- [{
- "label": "吴兴区",
- "value": "330502" },
- {
- "label": "南浔区",
- "value": "330503" },
- {
- "label": "德清县",
- "value": "330521" },
- {
- "label": "长兴县",
- "value": "330522" },
- {
- "label": "安吉县",
- "value": "330523" }],
- [{
- "label": "越城区",
- "value": "330602" },
- {
- "label": "柯桥区",
- "value": "330603" },
- {
- "label": "上虞区",
- "value": "330604" },
- {
- "label": "新昌县",
- "value": "330624" },
- {
- "label": "诸暨市",
- "value": "330681" },
- {
- "label": "嵊州市",
- "value": "330683" }],
- [{
- "label": "婺城区",
- "value": "330702" },
- {
- "label": "金东区",
- "value": "330703" },
- {
- "label": "武义县",
- "value": "330723" },
- {
- "label": "浦江县",
- "value": "330726" },
- {
- "label": "磐安县",
- "value": "330727" },
- {
- "label": "兰溪市",
- "value": "330781" },
- {
- "label": "义乌市",
- "value": "330782" },
- {
- "label": "东阳市",
- "value": "330783" },
- {
- "label": "永康市",
- "value": "330784" }],
- [{
- "label": "柯城区",
- "value": "330802" },
- {
- "label": "衢江区",
- "value": "330803" },
- {
- "label": "常山县",
- "value": "330822" },
- {
- "label": "开化县",
- "value": "330824" },
- {
- "label": "龙游县",
- "value": "330825" },
- {
- "label": "江山市",
- "value": "330881" }],
- [{
- "label": "定海区",
- "value": "330902" },
- {
- "label": "普陀区",
- "value": "330903" },
- {
- "label": "岱山县",
- "value": "330921" },
- {
- "label": "嵊泗县",
- "value": "330922" }],
- [{
- "label": "椒江区",
- "value": "331002" },
- {
- "label": "黄岩区",
- "value": "331003" },
- {
- "label": "路桥区",
- "value": "331004" },
- {
- "label": "三门县",
- "value": "331022" },
- {
- "label": "天台县",
- "value": "331023" },
- {
- "label": "仙居县",
- "value": "331024" },
- {
- "label": "温岭市",
- "value": "331081" },
- {
- "label": "临海市",
- "value": "331082" },
- {
- "label": "玉环市",
- "value": "331083" }],
- [{
- "label": "莲都区",
- "value": "331102" },
- {
- "label": "青田县",
- "value": "331121" },
- {
- "label": "缙云县",
- "value": "331122" },
- {
- "label": "遂昌县",
- "value": "331123" },
- {
- "label": "松阳县",
- "value": "331124" },
- {
- "label": "云和县",
- "value": "331125" },
- {
- "label": "庆元县",
- "value": "331126" },
- {
- "label": "景宁畲族自治县",
- "value": "331127" },
- {
- "label": "龙泉市",
- "value": "331181" }]],
- [
- [{
- "label": "瑶海区",
- "value": "340102" },
- {
- "label": "庐阳区",
- "value": "340103" },
- {
- "label": "蜀山区",
- "value": "340104" },
- {
- "label": "包河区",
- "value": "340111" },
- {
- "label": "长丰县",
- "value": "340121" },
- {
- "label": "肥东县",
- "value": "340122" },
- {
- "label": "肥西县",
- "value": "340123" },
- {
- "label": "庐江县",
- "value": "340124" },
- {
- "label": "合肥高新技术产业开发区",
- "value": "340171" },
- {
- "label": "合肥经济技术开发区",
- "value": "340172" },
- {
- "label": "合肥新站高新技术产业开发区",
- "value": "340173" },
- {
- "label": "巢湖市",
- "value": "340181" }],
- [{
- "label": "镜湖区",
- "value": "340202" },
- {
- "label": "弋江区",
- "value": "340203" },
- {
- "label": "鸠江区",
- "value": "340207" },
- {
- "label": "三山区",
- "value": "340208" },
- {
- "label": "芜湖县",
- "value": "340221" },
- {
- "label": "繁昌县",
- "value": "340222" },
- {
- "label": "南陵县",
- "value": "340223" },
- {
- "label": "无为县",
- "value": "340225" },
- {
- "label": "芜湖经济技术开发区",
- "value": "340271" },
- {
- "label": "安徽芜湖长江大桥经济开发区",
- "value": "340272" }],
- [{
- "label": "龙子湖区",
- "value": "340302" },
- {
- "label": "蚌山区",
- "value": "340303" },
- {
- "label": "禹会区",
- "value": "340304" },
- {
- "label": "淮上区",
- "value": "340311" },
- {
- "label": "怀远县",
- "value": "340321" },
- {
- "label": "五河县",
- "value": "340322" },
- {
- "label": "固镇县",
- "value": "340323" },
- {
- "label": "蚌埠市高新技术开发区",
- "value": "340371" },
- {
- "label": "蚌埠市经济开发区",
- "value": "340372" }],
- [{
- "label": "大通区",
- "value": "340402" },
- {
- "label": "田家庵区",
- "value": "340403" },
- {
- "label": "谢家集区",
- "value": "340404" },
- {
- "label": "八公山区",
- "value": "340405" },
- {
- "label": "潘集区",
- "value": "340406" },
- {
- "label": "凤台县",
- "value": "340421" },
- {
- "label": "寿县",
- "value": "340422" }],
- [{
- "label": "花山区",
- "value": "340503" },
- {
- "label": "雨山区",
- "value": "340504" },
- {
- "label": "博望区",
- "value": "340506" },
- {
- "label": "当涂县",
- "value": "340521" },
- {
- "label": "含山县",
- "value": "340522" },
- {
- "label": "和县",
- "value": "340523" }],
- [{
- "label": "杜集区",
- "value": "340602" },
- {
- "label": "相山区",
- "value": "340603" },
- {
- "label": "烈山区",
- "value": "340604" },
- {
- "label": "濉溪县",
- "value": "340621" }],
- [{
- "label": "铜官区",
- "value": "340705" },
- {
- "label": "义安区",
- "value": "340706" },
- {
- "label": "郊区",
- "value": "340711" },
- {
- "label": "枞阳县",
- "value": "340722" }],
- [{
- "label": "迎江区",
- "value": "340802" },
- {
- "label": "大观区",
- "value": "340803" },
- {
- "label": "宜秀区",
- "value": "340811" },
- {
- "label": "怀宁县",
- "value": "340822" },
- {
- "label": "潜山县",
- "value": "340824" },
- {
- "label": "太湖县",
- "value": "340825" },
- {
- "label": "宿松县",
- "value": "340826" },
- {
- "label": "望江县",
- "value": "340827" },
- {
- "label": "岳西县",
- "value": "340828" },
- {
- "label": "安徽安庆经济开发区",
- "value": "340871" },
- {
- "label": "桐城市",
- "value": "340881" }],
- [{
- "label": "屯溪区",
- "value": "341002" },
- {
- "label": "黄山区",
- "value": "341003" },
- {
- "label": "徽州区",
- "value": "341004" },
- {
- "label": "歙县",
- "value": "341021" },
- {
- "label": "休宁县",
- "value": "341022" },
- {
- "label": "黟县",
- "value": "341023" },
- {
- "label": "祁门县",
- "value": "341024" }],
- [{
- "label": "琅琊区",
- "value": "341102" },
- {
- "label": "南谯区",
- "value": "341103" },
- {
- "label": "来安县",
- "value": "341122" },
- {
- "label": "全椒县",
- "value": "341124" },
- {
- "label": "定远县",
- "value": "341125" },
- {
- "label": "凤阳县",
- "value": "341126" },
- {
- "label": "苏滁现代产业园",
- "value": "341171" },
- {
- "label": "滁州经济技术开发区",
- "value": "341172" },
- {
- "label": "天长市",
- "value": "341181" },
- {
- "label": "明光市",
- "value": "341182" }],
- [{
- "label": "颍州区",
- "value": "341202" },
- {
- "label": "颍东区",
- "value": "341203" },
- {
- "label": "颍泉区",
- "value": "341204" },
- {
- "label": "临泉县",
- "value": "341221" },
- {
- "label": "太和县",
- "value": "341222" },
- {
- "label": "阜南县",
- "value": "341225" },
- {
- "label": "颍上县",
- "value": "341226" },
- {
- "label": "阜阳合肥现代产业园区",
- "value": "341271" },
- {
- "label": "阜阳经济技术开发区",
- "value": "341272" },
- {
- "label": "界首市",
- "value": "341282" }],
- [{
- "label": "埇桥区",
- "value": "341302" },
- {
- "label": "砀山县",
- "value": "341321" },
- {
- "label": "萧县",
- "value": "341322" },
- {
- "label": "灵璧县",
- "value": "341323" },
- {
- "label": "泗县",
- "value": "341324" },
- {
- "label": "宿州马鞍山现代产业园区",
- "value": "341371" },
- {
- "label": "宿州经济技术开发区",
- "value": "341372" }],
- [{
- "label": "金安区",
- "value": "341502" },
- {
- "label": "裕安区",
- "value": "341503" },
- {
- "label": "叶集区",
- "value": "341504" },
- {
- "label": "霍邱县",
- "value": "341522" },
- {
- "label": "舒城县",
- "value": "341523" },
- {
- "label": "金寨县",
- "value": "341524" },
- {
- "label": "霍山县",
- "value": "341525" }],
- [{
- "label": "谯城区",
- "value": "341602" },
- {
- "label": "涡阳县",
- "value": "341621" },
- {
- "label": "蒙城县",
- "value": "341622" },
- {
- "label": "利辛县",
- "value": "341623" }],
- [{
- "label": "贵池区",
- "value": "341702" },
- {
- "label": "东至县",
- "value": "341721" },
- {
- "label": "石台县",
- "value": "341722" },
- {
- "label": "青阳县",
- "value": "341723" }],
- [{
- "label": "宣州区",
- "value": "341802" },
- {
- "label": "郎溪县",
- "value": "341821" },
- {
- "label": "广德县",
- "value": "341822" },
- {
- "label": "泾县",
- "value": "341823" },
- {
- "label": "绩溪县",
- "value": "341824" },
- {
- "label": "旌德县",
- "value": "341825" },
- {
- "label": "宣城市经济开发区",
- "value": "341871" },
- {
- "label": "宁国市",
- "value": "341881" }]],
- [
- [{
- "label": "鼓楼区",
- "value": "350102" },
- {
- "label": "台江区",
- "value": "350103" },
- {
- "label": "仓山区",
- "value": "350104" },
- {
- "label": "马尾区",
- "value": "350105" },
- {
- "label": "晋安区",
- "value": "350111" },
- {
- "label": "闽侯县",
- "value": "350121" },
- {
- "label": "连江县",
- "value": "350122" },
- {
- "label": "罗源县",
- "value": "350123" },
- {
- "label": "闽清县",
- "value": "350124" },
- {
- "label": "永泰县",
- "value": "350125" },
- {
- "label": "平潭县",
- "value": "350128" },
- {
- "label": "福清市",
- "value": "350181" },
- {
- "label": "长乐市",
- "value": "350182" }],
- [{
- "label": "思明区",
- "value": "350203" },
- {
- "label": "海沧区",
- "value": "350205" },
- {
- "label": "湖里区",
- "value": "350206" },
- {
- "label": "集美区",
- "value": "350211" },
- {
- "label": "同安区",
- "value": "350212" },
- {
- "label": "翔安区",
- "value": "350213" }],
- [{
- "label": "城厢区",
- "value": "350302" },
- {
- "label": "涵江区",
- "value": "350303" },
- {
- "label": "荔城区",
- "value": "350304" },
- {
- "label": "秀屿区",
- "value": "350305" },
- {
- "label": "仙游县",
- "value": "350322" }],
- [{
- "label": "梅列区",
- "value": "350402" },
- {
- "label": "三元区",
- "value": "350403" },
- {
- "label": "明溪县",
- "value": "350421" },
- {
- "label": "清流县",
- "value": "350423" },
- {
- "label": "宁化县",
- "value": "350424" },
- {
- "label": "大田县",
- "value": "350425" },
- {
- "label": "尤溪县",
- "value": "350426" },
- {
- "label": "沙县",
- "value": "350427" },
- {
- "label": "将乐县",
- "value": "350428" },
- {
- "label": "泰宁县",
- "value": "350429" },
- {
- "label": "建宁县",
- "value": "350430" },
- {
- "label": "永安市",
- "value": "350481" }],
- [{
- "label": "鲤城区",
- "value": "350502" },
- {
- "label": "丰泽区",
- "value": "350503" },
- {
- "label": "洛江区",
- "value": "350504" },
- {
- "label": "泉港区",
- "value": "350505" },
- {
- "label": "惠安县",
- "value": "350521" },
- {
- "label": "安溪县",
- "value": "350524" },
- {
- "label": "永春县",
- "value": "350525" },
- {
- "label": "德化县",
- "value": "350526" },
- {
- "label": "金门县",
- "value": "350527" },
- {
- "label": "石狮市",
- "value": "350581" },
- {
- "label": "晋江市",
- "value": "350582" },
- {
- "label": "南安市",
- "value": "350583" }],
- [{
- "label": "芗城区",
- "value": "350602" },
- {
- "label": "龙文区",
- "value": "350603" },
- {
- "label": "云霄县",
- "value": "350622" },
- {
- "label": "漳浦县",
- "value": "350623" },
- {
- "label": "诏安县",
- "value": "350624" },
- {
- "label": "长泰县",
- "value": "350625" },
- {
- "label": "东山县",
- "value": "350626" },
- {
- "label": "南靖县",
- "value": "350627" },
- {
- "label": "平和县",
- "value": "350628" },
- {
- "label": "华安县",
- "value": "350629" },
- {
- "label": "龙海市",
- "value": "350681" }],
- [{
- "label": "延平区",
- "value": "350702" },
- {
- "label": "建阳区",
- "value": "350703" },
- {
- "label": "顺昌县",
- "value": "350721" },
- {
- "label": "浦城县",
- "value": "350722" },
- {
- "label": "光泽县",
- "value": "350723" },
- {
- "label": "松溪县",
- "value": "350724" },
- {
- "label": "政和县",
- "value": "350725" },
- {
- "label": "邵武市",
- "value": "350781" },
- {
- "label": "武夷山市",
- "value": "350782" },
- {
- "label": "建瓯市",
- "value": "350783" }],
- [{
- "label": "新罗区",
- "value": "350802" },
- {
- "label": "永定区",
- "value": "350803" },
- {
- "label": "长汀县",
- "value": "350821" },
- {
- "label": "上杭县",
- "value": "350823" },
- {
- "label": "武平县",
- "value": "350824" },
- {
- "label": "连城县",
- "value": "350825" },
- {
- "label": "漳平市",
- "value": "350881" }],
- [{
- "label": "蕉城区",
- "value": "350902" },
- {
- "label": "霞浦县",
- "value": "350921" },
- {
- "label": "古田县",
- "value": "350922" },
- {
- "label": "屏南县",
- "value": "350923" },
- {
- "label": "寿宁县",
- "value": "350924" },
- {
- "label": "周宁县",
- "value": "350925" },
- {
- "label": "柘荣县",
- "value": "350926" },
- {
- "label": "福安市",
- "value": "350981" },
- {
- "label": "福鼎市",
- "value": "350982" }]],
- [
- [{
- "label": "东湖区",
- "value": "360102" },
- {
- "label": "西湖区",
- "value": "360103" },
- {
- "label": "青云谱区",
- "value": "360104" },
- {
- "label": "湾里区",
- "value": "360105" },
- {
- "label": "青山湖区",
- "value": "360111" },
- {
- "label": "新建区",
- "value": "360112" },
- {
- "label": "南昌县",
- "value": "360121" },
- {
- "label": "安义县",
- "value": "360123" },
- {
- "label": "进贤县",
- "value": "360124" }],
- [{
- "label": "昌江区",
- "value": "360202" },
- {
- "label": "珠山区",
- "value": "360203" },
- {
- "label": "浮梁县",
- "value": "360222" },
- {
- "label": "乐平市",
- "value": "360281" }],
- [{
- "label": "安源区",
- "value": "360302" },
- {
- "label": "湘东区",
- "value": "360313" },
- {
- "label": "莲花县",
- "value": "360321" },
- {
- "label": "上栗县",
- "value": "360322" },
- {
- "label": "芦溪县",
- "value": "360323" }],
- [{
- "label": "濂溪区",
- "value": "360402" },
- {
- "label": "浔阳区",
- "value": "360403" },
- {
- "label": "柴桑区",
- "value": "360404" },
- {
- "label": "武宁县",
- "value": "360423" },
- {
- "label": "修水县",
- "value": "360424" },
- {
- "label": "永修县",
- "value": "360425" },
- {
- "label": "德安县",
- "value": "360426" },
- {
- "label": "都昌县",
- "value": "360428" },
- {
- "label": "湖口县",
- "value": "360429" },
- {
- "label": "彭泽县",
- "value": "360430" },
- {
- "label": "瑞昌市",
- "value": "360481" },
- {
- "label": "共青城市",
- "value": "360482" },
- {
- "label": "庐山市",
- "value": "360483" }],
- [{
- "label": "渝水区",
- "value": "360502" },
- {
- "label": "分宜县",
- "value": "360521" }],
- [{
- "label": "月湖区",
- "value": "360602" },
- {
- "label": "余江县",
- "value": "360622" },
- {
- "label": "贵溪市",
- "value": "360681" }],
- [{
- "label": "章贡区",
- "value": "360702" },
- {
- "label": "南康区",
- "value": "360703" },
- {
- "label": "赣县区",
- "value": "360704" },
- {
- "label": "信丰县",
- "value": "360722" },
- {
- "label": "大余县",
- "value": "360723" },
- {
- "label": "上犹县",
- "value": "360724" },
- {
- "label": "崇义县",
- "value": "360725" },
- {
- "label": "安远县",
- "value": "360726" },
- {
- "label": "龙南县",
- "value": "360727" },
- {
- "label": "定南县",
- "value": "360728" },
- {
- "label": "全南县",
- "value": "360729" },
- {
- "label": "宁都县",
- "value": "360730" },
- {
- "label": "于都县",
- "value": "360731" },
- {
- "label": "兴国县",
- "value": "360732" },
- {
- "label": "会昌县",
- "value": "360733" },
- {
- "label": "寻乌县",
- "value": "360734" },
- {
- "label": "石城县",
- "value": "360735" },
- {
- "label": "瑞金市",
- "value": "360781" }],
- [{
- "label": "吉州区",
- "value": "360802" },
- {
- "label": "青原区",
- "value": "360803" },
- {
- "label": "吉安县",
- "value": "360821" },
- {
- "label": "吉水县",
- "value": "360822" },
- {
- "label": "峡江县",
- "value": "360823" },
- {
- "label": "新干县",
- "value": "360824" },
- {
- "label": "永丰县",
- "value": "360825" },
- {
- "label": "泰和县",
- "value": "360826" },
- {
- "label": "遂川县",
- "value": "360827" },
- {
- "label": "万安县",
- "value": "360828" },
- {
- "label": "安福县",
- "value": "360829" },
- {
- "label": "永新县",
- "value": "360830" },
- {
- "label": "井冈山市",
- "value": "360881" }],
- [{
- "label": "袁州区",
- "value": "360902" },
- {
- "label": "奉新县",
- "value": "360921" },
- {
- "label": "万载县",
- "value": "360922" },
- {
- "label": "上高县",
- "value": "360923" },
- {
- "label": "宜丰县",
- "value": "360924" },
- {
- "label": "靖安县",
- "value": "360925" },
- {
- "label": "铜鼓县",
- "value": "360926" },
- {
- "label": "丰城市",
- "value": "360981" },
- {
- "label": "樟树市",
- "value": "360982" },
- {
- "label": "高安市",
- "value": "360983" }],
- [{
- "label": "临川区",
- "value": "361002" },
- {
- "label": "东乡区",
- "value": "361003" },
- {
- "label": "南城县",
- "value": "361021" },
- {
- "label": "黎川县",
- "value": "361022" },
- {
- "label": "南丰县",
- "value": "361023" },
- {
- "label": "崇仁县",
- "value": "361024" },
- {
- "label": "乐安县",
- "value": "361025" },
- {
- "label": "宜黄县",
- "value": "361026" },
- {
- "label": "金溪县",
- "value": "361027" },
- {
- "label": "资溪县",
- "value": "361028" },
- {
- "label": "广昌县",
- "value": "361030" }],
- [{
- "label": "信州区",
- "value": "361102" },
- {
- "label": "广丰区",
- "value": "361103" },
- {
- "label": "上饶县",
- "value": "361121" },
- {
- "label": "玉山县",
- "value": "361123" },
- {
- "label": "铅山县",
- "value": "361124" },
- {
- "label": "横峰县",
- "value": "361125" },
- {
- "label": "弋阳县",
- "value": "361126" },
- {
- "label": "余干县",
- "value": "361127" },
- {
- "label": "鄱阳县",
- "value": "361128" },
- {
- "label": "万年县",
- "value": "361129" },
- {
- "label": "婺源县",
- "value": "361130" },
- {
- "label": "德兴市",
- "value": "361181" }]],
- [
- [{
- "label": "历下区",
- "value": "370102" },
- {
- "label": "市中区",
- "value": "370103" },
- {
- "label": "槐荫区",
- "value": "370104" },
- {
- "label": "天桥区",
- "value": "370105" },
- {
- "label": "历城区",
- "value": "370112" },
- {
- "label": "长清区",
- "value": "370113" },
- {
- "label": "章丘区",
- "value": "370114" },
- {
- "label": "平阴县",
- "value": "370124" },
- {
- "label": "济阳县",
- "value": "370125" },
- {
- "label": "商河县",
- "value": "370126" },
- {
- "label": "济南高新技术产业开发区",
- "value": "370171" }],
- [{
- "label": "市南区",
- "value": "370202" },
- {
- "label": "市北区",
- "value": "370203" },
- {
- "label": "黄岛区",
- "value": "370211" },
- {
- "label": "崂山区",
- "value": "370212" },
- {
- "label": "李沧区",
- "value": "370213" },
- {
- "label": "城阳区",
- "value": "370214" },
- {
- "label": "即墨区",
- "value": "370215" },
- {
- "label": "青岛高新技术产业开发区",
- "value": "370271" },
- {
- "label": "胶州市",
- "value": "370281" },
- {
- "label": "平度市",
- "value": "370283" },
- {
- "label": "莱西市",
- "value": "370285" }],
- [{
- "label": "淄川区",
- "value": "370302" },
- {
- "label": "张店区",
- "value": "370303" },
- {
- "label": "博山区",
- "value": "370304" },
- {
- "label": "临淄区",
- "value": "370305" },
- {
- "label": "周村区",
- "value": "370306" },
- {
- "label": "桓台县",
- "value": "370321" },
- {
- "label": "高青县",
- "value": "370322" },
- {
- "label": "沂源县",
- "value": "370323" }],
- [{
- "label": "市中区",
- "value": "370402" },
- {
- "label": "薛城区",
- "value": "370403" },
- {
- "label": "峄城区",
- "value": "370404" },
- {
- "label": "台儿庄区",
- "value": "370405" },
- {
- "label": "山亭区",
- "value": "370406" },
- {
- "label": "滕州市",
- "value": "370481" }],
- [{
- "label": "东营区",
- "value": "370502" },
- {
- "label": "河口区",
- "value": "370503" },
- {
- "label": "垦利区",
- "value": "370505" },
- {
- "label": "利津县",
- "value": "370522" },
- {
- "label": "广饶县",
- "value": "370523" },
- {
- "label": "东营经济技术开发区",
- "value": "370571" },
- {
- "label": "东营港经济开发区",
- "value": "370572" }],
- [{
- "label": "芝罘区",
- "value": "370602" },
- {
- "label": "福山区",
- "value": "370611" },
- {
- "label": "牟平区",
- "value": "370612" },
- {
- "label": "莱山区",
- "value": "370613" },
- {
- "label": "长岛县",
- "value": "370634" },
- {
- "label": "烟台高新技术产业开发区",
- "value": "370671" },
- {
- "label": "烟台经济技术开发区",
- "value": "370672" },
- {
- "label": "龙口市",
- "value": "370681" },
- {
- "label": "莱阳市",
- "value": "370682" },
- {
- "label": "莱州市",
- "value": "370683" },
- {
- "label": "蓬莱市",
- "value": "370684" },
- {
- "label": "招远市",
- "value": "370685" },
- {
- "label": "栖霞市",
- "value": "370686" },
- {
- "label": "海阳市",
- "value": "370687" }],
- [{
- "label": "潍城区",
- "value": "370702" },
- {
- "label": "寒亭区",
- "value": "370703" },
- {
- "label": "坊子区",
- "value": "370704" },
- {
- "label": "奎文区",
- "value": "370705" },
- {
- "label": "临朐县",
- "value": "370724" },
- {
- "label": "昌乐县",
- "value": "370725" },
- {
- "label": "潍坊滨海经济技术开发区",
- "value": "370772" },
- {
- "label": "青州市",
- "value": "370781" },
- {
- "label": "诸城市",
- "value": "370782" },
- {
- "label": "寿光市",
- "value": "370783" },
- {
- "label": "安丘市",
- "value": "370784" },
- {
- "label": "高密市",
- "value": "370785" },
- {
- "label": "昌邑市",
- "value": "370786" }],
- [{
- "label": "任城区",
- "value": "370811" },
- {
- "label": "兖州区",
- "value": "370812" },
- {
- "label": "微山县",
- "value": "370826" },
- {
- "label": "鱼台县",
- "value": "370827" },
- {
- "label": "金乡县",
- "value": "370828" },
- {
- "label": "嘉祥县",
- "value": "370829" },
- {
- "label": "汶上县",
- "value": "370830" },
- {
- "label": "泗水县",
- "value": "370831" },
- {
- "label": "梁山县",
- "value": "370832" },
- {
- "label": "济宁高新技术产业开发区",
- "value": "370871" },
- {
- "label": "曲阜市",
- "value": "370881" },
- {
- "label": "邹城市",
- "value": "370883" }],
- [{
- "label": "泰山区",
- "value": "370902" },
- {
- "label": "岱岳区",
- "value": "370911" },
- {
- "label": "宁阳县",
- "value": "370921" },
- {
- "label": "东平县",
- "value": "370923" },
- {
- "label": "新泰市",
- "value": "370982" },
- {
- "label": "肥城市",
- "value": "370983" }],
- [{
- "label": "环翠区",
- "value": "371002" },
- {
- "label": "文登区",
- "value": "371003" },
- {
- "label": "威海火炬高技术产业开发区",
- "value": "371071" },
- {
- "label": "威海经济技术开发区",
- "value": "371072" },
- {
- "label": "威海临港经济技术开发区",
- "value": "371073" },
- {
- "label": "荣成市",
- "value": "371082" },
- {
- "label": "乳山市",
- "value": "371083" }],
- [{
- "label": "东港区",
- "value": "371102" },
- {
- "label": "岚山区",
- "value": "371103" },
- {
- "label": "五莲县",
- "value": "371121" },
- {
- "label": "莒县",
- "value": "371122" },
- {
- "label": "日照经济技术开发区",
- "value": "371171" },
- {
- "label": "日照国际海洋城",
- "value": "371172" }],
- [{
- "label": "莱城区",
- "value": "371202" },
- {
- "label": "钢城区",
- "value": "371203" }],
- [{
- "label": "兰山区",
- "value": "371302" },
- {
- "label": "罗庄区",
- "value": "371311" },
- {
- "label": "河东区",
- "value": "371312" },
- {
- "label": "沂南县",
- "value": "371321" },
- {
- "label": "郯城县",
- "value": "371322" },
- {
- "label": "沂水县",
- "value": "371323" },
- {
- "label": "兰陵县",
- "value": "371324" },
- {
- "label": "费县",
- "value": "371325" },
- {
- "label": "平邑县",
- "value": "371326" },
- {
- "label": "莒南县",
- "value": "371327" },
- {
- "label": "蒙阴县",
- "value": "371328" },
- {
- "label": "临沭县",
- "value": "371329" },
- {
- "label": "临沂高新技术产业开发区",
- "value": "371371" },
- {
- "label": "临沂经济技术开发区",
- "value": "371372" },
- {
- "label": "临沂临港经济开发区",
- "value": "371373" }],
- [{
- "label": "德城区",
- "value": "371402" },
- {
- "label": "陵城区",
- "value": "371403" },
- {
- "label": "宁津县",
- "value": "371422" },
- {
- "label": "庆云县",
- "value": "371423" },
- {
- "label": "临邑县",
- "value": "371424" },
- {
- "label": "齐河县",
- "value": "371425" },
- {
- "label": "平原县",
- "value": "371426" },
- {
- "label": "夏津县",
- "value": "371427" },
- {
- "label": "武城县",
- "value": "371428" },
- {
- "label": "德州经济技术开发区",
- "value": "371471" },
- {
- "label": "德州运河经济开发区",
- "value": "371472" },
- {
- "label": "乐陵市",
- "value": "371481" },
- {
- "label": "禹城市",
- "value": "371482" }],
- [{
- "label": "东昌府区",
- "value": "371502" },
- {
- "label": "阳谷县",
- "value": "371521" },
- {
- "label": "莘县",
- "value": "371522" },
- {
- "label": "茌平县",
- "value": "371523" },
- {
- "label": "东阿县",
- "value": "371524" },
- {
- "label": "冠县",
- "value": "371525" },
- {
- "label": "高唐县",
- "value": "371526" },
- {
- "label": "临清市",
- "value": "371581" }],
- [{
- "label": "滨城区",
- "value": "371602" },
- {
- "label": "沾化区",
- "value": "371603" },
- {
- "label": "惠民县",
- "value": "371621" },
- {
- "label": "阳信县",
- "value": "371622" },
- {
- "label": "无棣县",
- "value": "371623" },
- {
- "label": "博兴县",
- "value": "371625" },
- {
- "label": "邹平县",
- "value": "371626" }],
- [{
- "label": "牡丹区",
- "value": "371702" },
- {
- "label": "定陶区",
- "value": "371703" },
- {
- "label": "曹县",
- "value": "371721" },
- {
- "label": "单县",
- "value": "371722" },
- {
- "label": "成武县",
- "value": "371723" },
- {
- "label": "巨野县",
- "value": "371724" },
- {
- "label": "郓城县",
- "value": "371725" },
- {
- "label": "鄄城县",
- "value": "371726" },
- {
- "label": "东明县",
- "value": "371728" },
- {
- "label": "菏泽经济技术开发区",
- "value": "371771" },
- {
- "label": "菏泽高新技术开发区",
- "value": "371772" }]],
- [
- [{
- "label": "中原区",
- "value": "410102" },
- {
- "label": "二七区",
- "value": "410103" },
- {
- "label": "管城回族区",
- "value": "410104" },
- {
- "label": "金水区",
- "value": "410105" },
- {
- "label": "上街区",
- "value": "410106" },
- {
- "label": "惠济区",
- "value": "410108" },
- {
- "label": "中牟县",
- "value": "410122" },
- {
- "label": "郑州经济技术开发区",
- "value": "410171" },
- {
- "label": "郑州高新技术产业开发区",
- "value": "410172" },
- {
- "label": "郑州航空港经济综合实验区",
- "value": "410173" },
- {
- "label": "巩义市",
- "value": "410181" },
- {
- "label": "荥阳市",
- "value": "410182" },
- {
- "label": "新密市",
- "value": "410183" },
- {
- "label": "新郑市",
- "value": "410184" },
- {
- "label": "登封市",
- "value": "410185" }],
- [{
- "label": "龙亭区",
- "value": "410202" },
- {
- "label": "顺河回族区",
- "value": "410203" },
- {
- "label": "鼓楼区",
- "value": "410204" },
- {
- "label": "禹王台区",
- "value": "410205" },
- {
- "label": "祥符区",
- "value": "410212" },
- {
- "label": "杞县",
- "value": "410221" },
- {
- "label": "通许县",
- "value": "410222" },
- {
- "label": "尉氏县",
- "value": "410223" },
- {
- "label": "兰考县",
- "value": "410225" }],
- [{
- "label": "老城区",
- "value": "410302" },
- {
- "label": "西工区",
- "value": "410303" },
- {
- "label": "瀍河回族区",
- "value": "410304" },
- {
- "label": "涧西区",
- "value": "410305" },
- {
- "label": "吉利区",
- "value": "410306" },
- {
- "label": "洛龙区",
- "value": "410311" },
- {
- "label": "孟津县",
- "value": "410322" },
- {
- "label": "新安县",
- "value": "410323" },
- {
- "label": "栾川县",
- "value": "410324" },
- {
- "label": "嵩县",
- "value": "410325" },
- {
- "label": "汝阳县",
- "value": "410326" },
- {
- "label": "宜阳县",
- "value": "410327" },
- {
- "label": "洛宁县",
- "value": "410328" },
- {
- "label": "伊川县",
- "value": "410329" },
- {
- "label": "洛阳高新技术产业开发区",
- "value": "410371" },
- {
- "label": "偃师市",
- "value": "410381" }],
- [{
- "label": "新华区",
- "value": "410402" },
- {
- "label": "卫东区",
- "value": "410403" },
- {
- "label": "石龙区",
- "value": "410404" },
- {
- "label": "湛河区",
- "value": "410411" },
- {
- "label": "宝丰县",
- "value": "410421" },
- {
- "label": "叶县",
- "value": "410422" },
- {
- "label": "鲁山县",
- "value": "410423" },
- {
- "label": "郏县",
- "value": "410425" },
- {
- "label": "平顶山高新技术产业开发区",
- "value": "410471" },
- {
- "label": "平顶山市新城区",
- "value": "410472" },
- {
- "label": "舞钢市",
- "value": "410481" },
- {
- "label": "汝州市",
- "value": "410482" }],
- [{
- "label": "文峰区",
- "value": "410502" },
- {
- "label": "北关区",
- "value": "410503" },
- {
- "label": "殷都区",
- "value": "410505" },
- {
- "label": "龙安区",
- "value": "410506" },
- {
- "label": "安阳县",
- "value": "410522" },
- {
- "label": "汤阴县",
- "value": "410523" },
- {
- "label": "滑县",
- "value": "410526" },
- {
- "label": "内黄县",
- "value": "410527" },
- {
- "label": "安阳高新技术产业开发区",
- "value": "410571" },
- {
- "label": "林州市",
- "value": "410581" }],
- [{
- "label": "鹤山区",
- "value": "410602" },
- {
- "label": "山城区",
- "value": "410603" },
- {
- "label": "淇滨区",
- "value": "410611" },
- {
- "label": "浚县",
- "value": "410621" },
- {
- "label": "淇县",
- "value": "410622" },
- {
- "label": "鹤壁经济技术开发区",
- "value": "410671" }],
- [{
- "label": "红旗区",
- "value": "410702" },
- {
- "label": "卫滨区",
- "value": "410703" },
- {
- "label": "凤泉区",
- "value": "410704" },
- {
- "label": "牧野区",
- "value": "410711" },
- {
- "label": "新乡县",
- "value": "410721" },
- {
- "label": "获嘉县",
- "value": "410724" },
- {
- "label": "原阳县",
- "value": "410725" },
- {
- "label": "延津县",
- "value": "410726" },
- {
- "label": "封丘县",
- "value": "410727" },
- {
- "label": "长垣县",
- "value": "410728" },
- {
- "label": "新乡高新技术产业开发区",
- "value": "410771" },
- {
- "label": "新乡经济技术开发区",
- "value": "410772" },
- {
- "label": "新乡市平原城乡一体化示范区",
- "value": "410773" },
- {
- "label": "卫辉市",
- "value": "410781" },
- {
- "label": "辉县市",
- "value": "410782" }],
- [{
- "label": "解放区",
- "value": "410802" },
- {
- "label": "中站区",
- "value": "410803" },
- {
- "label": "马村区",
- "value": "410804" },
- {
- "label": "山阳区",
- "value": "410811" },
- {
- "label": "修武县",
- "value": "410821" },
- {
- "label": "博爱县",
- "value": "410822" },
- {
- "label": "武陟县",
- "value": "410823" },
- {
- "label": "温县",
- "value": "410825" },
- {
- "label": "焦作城乡一体化示范区",
- "value": "410871" },
- {
- "label": "沁阳市",
- "value": "410882" },
- {
- "label": "孟州市",
- "value": "410883" }],
- [{
- "label": "华龙区",
- "value": "410902" },
- {
- "label": "清丰县",
- "value": "410922" },
- {
- "label": "南乐县",
- "value": "410923" },
- {
- "label": "范县",
- "value": "410926" },
- {
- "label": "台前县",
- "value": "410927" },
- {
- "label": "濮阳县",
- "value": "410928" },
- {
- "label": "河南濮阳工业园区",
- "value": "410971" },
- {
- "label": "濮阳经济技术开发区",
- "value": "410972" }],
- [{
- "label": "魏都区",
- "value": "411002" },
- {
- "label": "建安区",
- "value": "411003" },
- {
- "label": "鄢陵县",
- "value": "411024" },
- {
- "label": "襄城县",
- "value": "411025" },
- {
- "label": "许昌经济技术开发区",
- "value": "411071" },
- {
- "label": "禹州市",
- "value": "411081" },
- {
- "label": "长葛市",
- "value": "411082" }],
- [{
- "label": "源汇区",
- "value": "411102" },
- {
- "label": "郾城区",
- "value": "411103" },
- {
- "label": "召陵区",
- "value": "411104" },
- {
- "label": "舞阳县",
- "value": "411121" },
- {
- "label": "临颍县",
- "value": "411122" },
- {
- "label": "漯河经济技术开发区",
- "value": "411171" }],
- [{
- "label": "湖滨区",
- "value": "411202" },
- {
- "label": "陕州区",
- "value": "411203" },
- {
- "label": "渑池县",
- "value": "411221" },
- {
- "label": "卢氏县",
- "value": "411224" },
- {
- "label": "河南三门峡经济开发区",
- "value": "411271" },
- {
- "label": "义马市",
- "value": "411281" },
- {
- "label": "灵宝市",
- "value": "411282" }],
- [{
- "label": "宛城区",
- "value": "411302" },
- {
- "label": "卧龙区",
- "value": "411303" },
- {
- "label": "南召县",
- "value": "411321" },
- {
- "label": "方城县",
- "value": "411322" },
- {
- "label": "西峡县",
- "value": "411323" },
- {
- "label": "镇平县",
- "value": "411324" },
- {
- "label": "内乡县",
- "value": "411325" },
- {
- "label": "淅川县",
- "value": "411326" },
- {
- "label": "社旗县",
- "value": "411327" },
- {
- "label": "唐河县",
- "value": "411328" },
- {
- "label": "新野县",
- "value": "411329" },
- {
- "label": "桐柏县",
- "value": "411330" },
- {
- "label": "南阳高新技术产业开发区",
- "value": "411371" },
- {
- "label": "南阳市城乡一体化示范区",
- "value": "411372" },
- {
- "label": "邓州市",
- "value": "411381" }],
- [{
- "label": "梁园区",
- "value": "411402" },
- {
- "label": "睢阳区",
- "value": "411403" },
- {
- "label": "民权县",
- "value": "411421" },
- {
- "label": "睢县",
- "value": "411422" },
- {
- "label": "宁陵县",
- "value": "411423" },
- {
- "label": "柘城县",
- "value": "411424" },
- {
- "label": "虞城县",
- "value": "411425" },
- {
- "label": "夏邑县",
- "value": "411426" },
- {
- "label": "豫东综合物流产业聚集区",
- "value": "411471" },
- {
- "label": "河南商丘经济开发区",
- "value": "411472" },
- {
- "label": "永城市",
- "value": "411481" }],
- [{
- "label": "浉河区",
- "value": "411502" },
- {
- "label": "平桥区",
- "value": "411503" },
- {
- "label": "罗山县",
- "value": "411521" },
- {
- "label": "光山县",
- "value": "411522" },
- {
- "label": "新县",
- "value": "411523" },
- {
- "label": "商城县",
- "value": "411524" },
- {
- "label": "固始县",
- "value": "411525" },
- {
- "label": "潢川县",
- "value": "411526" },
- {
- "label": "淮滨县",
- "value": "411527" },
- {
- "label": "息县",
- "value": "411528" },
- {
- "label": "信阳高新技术产业开发区",
- "value": "411571" }],
- [{
- "label": "川汇区",
- "value": "411602" },
- {
- "label": "扶沟县",
- "value": "411621" },
- {
- "label": "西华县",
- "value": "411622" },
- {
- "label": "商水县",
- "value": "411623" },
- {
- "label": "沈丘县",
- "value": "411624" },
- {
- "label": "郸城县",
- "value": "411625" },
- {
- "label": "淮阳县",
- "value": "411626" },
- {
- "label": "太康县",
- "value": "411627" },
- {
- "label": "鹿邑县",
- "value": "411628" },
- {
- "label": "河南周口经济开发区",
- "value": "411671" },
- {
- "label": "项城市",
- "value": "411681" }],
- [{
- "label": "驿城区",
- "value": "411702" },
- {
- "label": "西平县",
- "value": "411721" },
- {
- "label": "上蔡县",
- "value": "411722" },
- {
- "label": "平舆县",
- "value": "411723" },
- {
- "label": "正阳县",
- "value": "411724" },
- {
- "label": "确山县",
- "value": "411725" },
- {
- "label": "泌阳县",
- "value": "411726" },
- {
- "label": "汝南县",
- "value": "411727" },
- {
- "label": "遂平县",
- "value": "411728" },
- {
- "label": "新蔡县",
- "value": "411729" },
- {
- "label": "河南驻马店经济开发区",
- "value": "411771" }],
- [{
- "label": "济源市",
- "value": "419001" }]],
- [
- [{
- "label": "江岸区",
- "value": "420102" },
- {
- "label": "江汉区",
- "value": "420103" },
- {
- "label": "硚口区",
- "value": "420104" },
- {
- "label": "汉阳区",
- "value": "420105" },
- {
- "label": "武昌区",
- "value": "420106" },
- {
- "label": "青山区",
- "value": "420107" },
- {
- "label": "洪山区",
- "value": "420111" },
- {
- "label": "东西湖区",
- "value": "420112" },
- {
- "label": "汉南区",
- "value": "420113" },
- {
- "label": "蔡甸区",
- "value": "420114" },
- {
- "label": "江夏区",
- "value": "420115" },
- {
- "label": "黄陂区",
- "value": "420116" },
- {
- "label": "新洲区",
- "value": "420117" }],
- [{
- "label": "黄石港区",
- "value": "420202" },
- {
- "label": "西塞山区",
- "value": "420203" },
- {
- "label": "下陆区",
- "value": "420204" },
- {
- "label": "铁山区",
- "value": "420205" },
- {
- "label": "阳新县",
- "value": "420222" },
- {
- "label": "大冶市",
- "value": "420281" }],
- [{
- "label": "茅箭区",
- "value": "420302" },
- {
- "label": "张湾区",
- "value": "420303" },
- {
- "label": "郧阳区",
- "value": "420304" },
- {
- "label": "郧西县",
- "value": "420322" },
- {
- "label": "竹山县",
- "value": "420323" },
- {
- "label": "竹溪县",
- "value": "420324" },
- {
- "label": "房县",
- "value": "420325" },
- {
- "label": "丹江口市",
- "value": "420381" }],
- [{
- "label": "西陵区",
- "value": "420502" },
- {
- "label": "伍家岗区",
- "value": "420503" },
- {
- "label": "点军区",
- "value": "420504" },
- {
- "label": "猇亭区",
- "value": "420505" },
- {
- "label": "夷陵区",
- "value": "420506" },
- {
- "label": "远安县",
- "value": "420525" },
- {
- "label": "兴山县",
- "value": "420526" },
- {
- "label": "秭归县",
- "value": "420527" },
- {
- "label": "长阳土家族自治县",
- "value": "420528" },
- {
- "label": "五峰土家族自治县",
- "value": "420529" },
- {
- "label": "宜都市",
- "value": "420581" },
- {
- "label": "当阳市",
- "value": "420582" },
- {
- "label": "枝江市",
- "value": "420583" }],
- [{
- "label": "襄城区",
- "value": "420602" },
- {
- "label": "樊城区",
- "value": "420606" },
- {
- "label": "襄州区",
- "value": "420607" },
- {
- "label": "南漳县",
- "value": "420624" },
- {
- "label": "谷城县",
- "value": "420625" },
- {
- "label": "保康县",
- "value": "420626" },
- {
- "label": "老河口市",
- "value": "420682" },
- {
- "label": "枣阳市",
- "value": "420683" },
- {
- "label": "宜城市",
- "value": "420684" }],
- [{
- "label": "梁子湖区",
- "value": "420702" },
- {
- "label": "华容区",
- "value": "420703" },
- {
- "label": "鄂城区",
- "value": "420704" }],
- [{
- "label": "东宝区",
- "value": "420802" },
- {
- "label": "掇刀区",
- "value": "420804" },
- {
- "label": "京山县",
- "value": "420821" },
- {
- "label": "沙洋县",
- "value": "420822" },
- {
- "label": "钟祥市",
- "value": "420881" }],
- [{
- "label": "孝南区",
- "value": "420902" },
- {
- "label": "孝昌县",
- "value": "420921" },
- {
- "label": "大悟县",
- "value": "420922" },
- {
- "label": "云梦县",
- "value": "420923" },
- {
- "label": "应城市",
- "value": "420981" },
- {
- "label": "安陆市",
- "value": "420982" },
- {
- "label": "汉川市",
- "value": "420984" }],
- [{
- "label": "沙市区",
- "value": "421002" },
- {
- "label": "荆州区",
- "value": "421003" },
- {
- "label": "公安县",
- "value": "421022" },
- {
- "label": "监利县",
- "value": "421023" },
- {
- "label": "江陵县",
- "value": "421024" },
- {
- "label": "荆州经济技术开发区",
- "value": "421071" },
- {
- "label": "石首市",
- "value": "421081" },
- {
- "label": "洪湖市",
- "value": "421083" },
- {
- "label": "松滋市",
- "value": "421087" }],
- [{
- "label": "黄州区",
- "value": "421102" },
- {
- "label": "团风县",
- "value": "421121" },
- {
- "label": "红安县",
- "value": "421122" },
- {
- "label": "罗田县",
- "value": "421123" },
- {
- "label": "英山县",
- "value": "421124" },
- {
- "label": "浠水县",
- "value": "421125" },
- {
- "label": "蕲春县",
- "value": "421126" },
- {
- "label": "黄梅县",
- "value": "421127" },
- {
- "label": "龙感湖管理区",
- "value": "421171" },
- {
- "label": "麻城市",
- "value": "421181" },
- {
- "label": "武穴市",
- "value": "421182" }],
- [{
- "label": "咸安区",
- "value": "421202" },
- {
- "label": "嘉鱼县",
- "value": "421221" },
- {
- "label": "通城县",
- "value": "421222" },
- {
- "label": "崇阳县",
- "value": "421223" },
- {
- "label": "通山县",
- "value": "421224" },
- {
- "label": "赤壁市",
- "value": "421281" }],
- [{
- "label": "曾都区",
- "value": "421303" },
- {
- "label": "随县",
- "value": "421321" },
- {
- "label": "广水市",
- "value": "421381" }],
- [{
- "label": "恩施市",
- "value": "422801" },
- {
- "label": "利川市",
- "value": "422802" },
- {
- "label": "建始县",
- "value": "422822" },
- {
- "label": "巴东县",
- "value": "422823" },
- {
- "label": "宣恩县",
- "value": "422825" },
- {
- "label": "咸丰县",
- "value": "422826" },
- {
- "label": "来凤县",
- "value": "422827" },
- {
- "label": "鹤峰县",
- "value": "422828" }],
- [{
- "label": "仙桃市",
- "value": "429004" },
- {
- "label": "潜江市",
- "value": "429005" },
- {
- "label": "天门市",
- "value": "429006" },
- {
- "label": "神农架林区",
- "value": "429021" }]],
- [
- [{
- "label": "芙蓉区",
- "value": "430102" },
- {
- "label": "天心区",
- "value": "430103" },
- {
- "label": "岳麓区",
- "value": "430104" },
- {
- "label": "开福区",
- "value": "430105" },
- {
- "label": "雨花区",
- "value": "430111" },
- {
- "label": "望城区",
- "value": "430112" },
- {
- "label": "长沙县",
- "value": "430121" },
- {
- "label": "浏阳市",
- "value": "430181" },
- {
- "label": "宁乡市",
- "value": "430182" }],
- [{
- "label": "荷塘区",
- "value": "430202" },
- {
- "label": "芦淞区",
- "value": "430203" },
- {
- "label": "石峰区",
- "value": "430204" },
- {
- "label": "天元区",
- "value": "430211" },
- {
- "label": "株洲县",
- "value": "430221" },
- {
- "label": "攸县",
- "value": "430223" },
- {
- "label": "茶陵县",
- "value": "430224" },
- {
- "label": "炎陵县",
- "value": "430225" },
- {
- "label": "云龙示范区",
- "value": "430271" },
- {
- "label": "醴陵市",
- "value": "430281" }],
- [{
- "label": "雨湖区",
- "value": "430302" },
- {
- "label": "岳塘区",
- "value": "430304" },
- {
- "label": "湘潭县",
- "value": "430321" },
- {
- "label": "湖南湘潭高新技术产业园区",
- "value": "430371" },
- {
- "label": "湘潭昭山示范区",
- "value": "430372" },
- {
- "label": "湘潭九华示范区",
- "value": "430373" },
- {
- "label": "湘乡市",
- "value": "430381" },
- {
- "label": "韶山市",
- "value": "430382" }],
- [{
- "label": "珠晖区",
- "value": "430405" },
- {
- "label": "雁峰区",
- "value": "430406" },
- {
- "label": "石鼓区",
- "value": "430407" },
- {
- "label": "蒸湘区",
- "value": "430408" },
- {
- "label": "南岳区",
- "value": "430412" },
- {
- "label": "衡阳县",
- "value": "430421" },
- {
- "label": "衡南县",
- "value": "430422" },
- {
- "label": "衡山县",
- "value": "430423" },
- {
- "label": "衡东县",
- "value": "430424" },
- {
- "label": "祁东县",
- "value": "430426" },
- {
- "label": "衡阳综合保税区",
- "value": "430471" },
- {
- "label": "湖南衡阳高新技术产业园区",
- "value": "430472" },
- {
- "label": "湖南衡阳松木经济开发区",
- "value": "430473" },
- {
- "label": "耒阳市",
- "value": "430481" },
- {
- "label": "常宁市",
- "value": "430482" }],
- [{
- "label": "双清区",
- "value": "430502" },
- {
- "label": "大祥区",
- "value": "430503" },
- {
- "label": "北塔区",
- "value": "430511" },
- {
- "label": "邵东县",
- "value": "430521" },
- {
- "label": "新邵县",
- "value": "430522" },
- {
- "label": "邵阳县",
- "value": "430523" },
- {
- "label": "隆回县",
- "value": "430524" },
- {
- "label": "洞口县",
- "value": "430525" },
- {
- "label": "绥宁县",
- "value": "430527" },
- {
- "label": "新宁县",
- "value": "430528" },
- {
- "label": "城步苗族自治县",
- "value": "430529" },
- {
- "label": "武冈市",
- "value": "430581" }],
- [{
- "label": "岳阳楼区",
- "value": "430602" },
- {
- "label": "云溪区",
- "value": "430603" },
- {
- "label": "君山区",
- "value": "430611" },
- {
- "label": "岳阳县",
- "value": "430621" },
- {
- "label": "华容县",
- "value": "430623" },
- {
- "label": "湘阴县",
- "value": "430624" },
- {
- "label": "平江县",
- "value": "430626" },
- {
- "label": "岳阳市屈原管理区",
- "value": "430671" },
- {
- "label": "汨罗市",
- "value": "430681" },
- {
- "label": "临湘市",
- "value": "430682" }],
- [{
- "label": "武陵区",
- "value": "430702" },
- {
- "label": "鼎城区",
- "value": "430703" },
- {
- "label": "安乡县",
- "value": "430721" },
- {
- "label": "汉寿县",
- "value": "430722" },
- {
- "label": "澧县",
- "value": "430723" },
- {
- "label": "临澧县",
- "value": "430724" },
- {
- "label": "桃源县",
- "value": "430725" },
- {
- "label": "石门县",
- "value": "430726" },
- {
- "label": "常德市西洞庭管理区",
- "value": "430771" },
- {
- "label": "津市市",
- "value": "430781" }],
- [{
- "label": "永定区",
- "value": "430802" },
- {
- "label": "武陵源区",
- "value": "430811" },
- {
- "label": "慈利县",
- "value": "430821" },
- {
- "label": "桑植县",
- "value": "430822" }],
- [{
- "label": "资阳区",
- "value": "430902" },
- {
- "label": "赫山区",
- "value": "430903" },
- {
- "label": "南县",
- "value": "430921" },
- {
- "label": "桃江县",
- "value": "430922" },
- {
- "label": "安化县",
- "value": "430923" },
- {
- "label": "益阳市大通湖管理区",
- "value": "430971" },
- {
- "label": "湖南益阳高新技术产业园区",
- "value": "430972" },
- {
- "label": "沅江市",
- "value": "430981" }],
- [{
- "label": "北湖区",
- "value": "431002" },
- {
- "label": "苏仙区",
- "value": "431003" },
- {
- "label": "桂阳县",
- "value": "431021" },
- {
- "label": "宜章县",
- "value": "431022" },
- {
- "label": "永兴县",
- "value": "431023" },
- {
- "label": "嘉禾县",
- "value": "431024" },
- {
- "label": "临武县",
- "value": "431025" },
- {
- "label": "汝城县",
- "value": "431026" },
- {
- "label": "桂东县",
- "value": "431027" },
- {
- "label": "安仁县",
- "value": "431028" },
- {
- "label": "资兴市",
- "value": "431081" }],
- [{
- "label": "零陵区",
- "value": "431102" },
- {
- "label": "冷水滩区",
- "value": "431103" },
- {
- "label": "祁阳县",
- "value": "431121" },
- {
- "label": "东安县",
- "value": "431122" },
- {
- "label": "双牌县",
- "value": "431123" },
- {
- "label": "道县",
- "value": "431124" },
- {
- "label": "江永县",
- "value": "431125" },
- {
- "label": "宁远县",
- "value": "431126" },
- {
- "label": "蓝山县",
- "value": "431127" },
- {
- "label": "新田县",
- "value": "431128" },
- {
- "label": "江华瑶族自治县",
- "value": "431129" },
- {
- "label": "永州经济技术开发区",
- "value": "431171" },
- {
- "label": "永州市金洞管理区",
- "value": "431172" },
- {
- "label": "永州市回龙圩管理区",
- "value": "431173" }],
- [{
- "label": "鹤城区",
- "value": "431202" },
- {
- "label": "中方县",
- "value": "431221" },
- {
- "label": "沅陵县",
- "value": "431222" },
- {
- "label": "辰溪县",
- "value": "431223" },
- {
- "label": "溆浦县",
- "value": "431224" },
- {
- "label": "会同县",
- "value": "431225" },
- {
- "label": "麻阳苗族自治县",
- "value": "431226" },
- {
- "label": "新晃侗族自治县",
- "value": "431227" },
- {
- "label": "芷江侗族自治县",
- "value": "431228" },
- {
- "label": "靖州苗族侗族自治县",
- "value": "431229" },
- {
- "label": "通道侗族自治县",
- "value": "431230" },
- {
- "label": "怀化市洪江管理区",
- "value": "431271" },
- {
- "label": "洪江市",
- "value": "431281" }],
- [{
- "label": "娄星区",
- "value": "431302" },
- {
- "label": "双峰县",
- "value": "431321" },
- {
- "label": "新化县",
- "value": "431322" },
- {
- "label": "冷水江市",
- "value": "431381" },
- {
- "label": "涟源市",
- "value": "431382" }],
- [{
- "label": "吉首市",
- "value": "433101" },
- {
- "label": "泸溪县",
- "value": "433122" },
- {
- "label": "凤凰县",
- "value": "433123" },
- {
- "label": "花垣县",
- "value": "433124" },
- {
- "label": "保靖县",
- "value": "433125" },
- {
- "label": "古丈县",
- "value": "433126" },
- {
- "label": "永顺县",
- "value": "433127" },
- {
- "label": "龙山县",
- "value": "433130" },
- {
- "label": "湖南吉首经济开发区",
- "value": "433172" },
- {
- "label": "湖南永顺经济开发区",
- "value": "433173" }]],
- [
- [{
- "label": "荔湾区",
- "value": "440103" },
- {
- "label": "越秀区",
- "value": "440104" },
- {
- "label": "海珠区",
- "value": "440105" },
- {
- "label": "天河区",
- "value": "440106" },
- {
- "label": "白云区",
- "value": "440111" },
- {
- "label": "黄埔区",
- "value": "440112" },
- {
- "label": "番禺区",
- "value": "440113" },
- {
- "label": "花都区",
- "value": "440114" },
- {
- "label": "南沙区",
- "value": "440115" },
- {
- "label": "从化区",
- "value": "440117" },
- {
- "label": "增城区",
- "value": "440118" }],
- [{
- "label": "武江区",
- "value": "440203" },
- {
- "label": "浈江区",
- "value": "440204" },
- {
- "label": "曲江区",
- "value": "440205" },
- {
- "label": "始兴县",
- "value": "440222" },
- {
- "label": "仁化县",
- "value": "440224" },
- {
- "label": "翁源县",
- "value": "440229" },
- {
- "label": "乳源瑶族自治县",
- "value": "440232" },
- {
- "label": "新丰县",
- "value": "440233" },
- {
- "label": "乐昌市",
- "value": "440281" },
- {
- "label": "南雄市",
- "value": "440282" }],
- [{
- "label": "罗湖区",
- "value": "440303" },
- {
- "label": "福田区",
- "value": "440304" },
- {
- "label": "南山区",
- "value": "440305" },
- {
- "label": "宝安区",
- "value": "440306" },
- {
- "label": "龙岗区",
- "value": "440307" },
- {
- "label": "盐田区",
- "value": "440308" },
- {
- "label": "龙华区",
- "value": "440309" },
- {
- "label": "坪山区",
- "value": "440310" }],
- [{
- "label": "香洲区",
- "value": "440402" },
- {
- "label": "斗门区",
- "value": "440403" },
- {
- "label": "金湾区",
- "value": "440404" }],
- [{
- "label": "龙湖区",
- "value": "440507" },
- {
- "label": "金平区",
- "value": "440511" },
- {
- "label": "濠江区",
- "value": "440512" },
- {
- "label": "潮阳区",
- "value": "440513" },
- {
- "label": "潮南区",
- "value": "440514" },
- {
- "label": "澄海区",
- "value": "440515" },
- {
- "label": "南澳县",
- "value": "440523" }],
- [{
- "label": "禅城区",
- "value": "440604" },
- {
- "label": "南海区",
- "value": "440605" },
- {
- "label": "顺德区",
- "value": "440606" },
- {
- "label": "三水区",
- "value": "440607" },
- {
- "label": "高明区",
- "value": "440608" }],
- [{
- "label": "蓬江区",
- "value": "440703" },
- {
- "label": "江海区",
- "value": "440704" },
- {
- "label": "新会区",
- "value": "440705" },
- {
- "label": "台山市",
- "value": "440781" },
- {
- "label": "开平市",
- "value": "440783" },
- {
- "label": "鹤山市",
- "value": "440784" },
- {
- "label": "恩平市",
- "value": "440785" }],
- [{
- "label": "赤坎区",
- "value": "440802" },
- {
- "label": "霞山区",
- "value": "440803" },
- {
- "label": "坡头区",
- "value": "440804" },
- {
- "label": "麻章区",
- "value": "440811" },
- {
- "label": "遂溪县",
- "value": "440823" },
- {
- "label": "徐闻县",
- "value": "440825" },
- {
- "label": "廉江市",
- "value": "440881" },
- {
- "label": "雷州市",
- "value": "440882" },
- {
- "label": "吴川市",
- "value": "440883" }],
- [{
- "label": "茂南区",
- "value": "440902" },
- {
- "label": "电白区",
- "value": "440904" },
- {
- "label": "高州市",
- "value": "440981" },
- {
- "label": "化州市",
- "value": "440982" },
- {
- "label": "信宜市",
- "value": "440983" }],
- [{
- "label": "端州区",
- "value": "441202" },
- {
- "label": "鼎湖区",
- "value": "441203" },
- {
- "label": "高要区",
- "value": "441204" },
- {
- "label": "广宁县",
- "value": "441223" },
- {
- "label": "怀集县",
- "value": "441224" },
- {
- "label": "封开县",
- "value": "441225" },
- {
- "label": "德庆县",
- "value": "441226" },
- {
- "label": "四会市",
- "value": "441284" }],
- [{
- "label": "惠城区",
- "value": "441302" },
- {
- "label": "惠阳区",
- "value": "441303" },
- {
- "label": "博罗县",
- "value": "441322" },
- {
- "label": "惠东县",
- "value": "441323" },
- {
- "label": "龙门县",
- "value": "441324" }],
- [{
- "label": "梅江区",
- "value": "441402" },
- {
- "label": "梅县区",
- "value": "441403" },
- {
- "label": "大埔县",
- "value": "441422" },
- {
- "label": "丰顺县",
- "value": "441423" },
- {
- "label": "五华县",
- "value": "441424" },
- {
- "label": "平远县",
- "value": "441426" },
- {
- "label": "蕉岭县",
- "value": "441427" },
- {
- "label": "兴宁市",
- "value": "441481" }],
- [{
- "label": "城区",
- "value": "441502" },
- {
- "label": "海丰县",
- "value": "441521" },
- {
- "label": "陆河县",
- "value": "441523" },
- {
- "label": "陆丰市",
- "value": "441581" }],
- [{
- "label": "源城区",
- "value": "441602" },
- {
- "label": "紫金县",
- "value": "441621" },
- {
- "label": "龙川县",
- "value": "441622" },
- {
- "label": "连平县",
- "value": "441623" },
- {
- "label": "和平县",
- "value": "441624" },
- {
- "label": "东源县",
- "value": "441625" }],
- [{
- "label": "江城区",
- "value": "441702" },
- {
- "label": "阳东区",
- "value": "441704" },
- {
- "label": "阳西县",
- "value": "441721" },
- {
- "label": "阳春市",
- "value": "441781" }],
- [{
- "label": "清城区",
- "value": "441802" },
- {
- "label": "清新区",
- "value": "441803" },
- {
- "label": "佛冈县",
- "value": "441821" },
- {
- "label": "阳山县",
- "value": "441823" },
- {
- "label": "连山壮族瑶族自治县",
- "value": "441825" },
- {
- "label": "连南瑶族自治县",
- "value": "441826" },
- {
- "label": "英德市",
- "value": "441881" },
- {
- "label": "连州市",
- "value": "441882" }],
- [{
- "label": "东莞市",
- "value": "441900" }],
- [{
- "label": "中山市",
- "value": "442000" }],
- [{
- "label": "湘桥区",
- "value": "445102" },
- {
- "label": "潮安区",
- "value": "445103" },
- {
- "label": "饶平县",
- "value": "445122" }],
- [{
- "label": "榕城区",
- "value": "445202" },
- {
- "label": "揭东区",
- "value": "445203" },
- {
- "label": "揭西县",
- "value": "445222" },
- {
- "label": "惠来县",
- "value": "445224" },
- {
- "label": "普宁市",
- "value": "445281" }],
- [{
- "label": "云城区",
- "value": "445302" },
- {
- "label": "云安区",
- "value": "445303" },
- {
- "label": "新兴县",
- "value": "445321" },
- {
- "label": "郁南县",
- "value": "445322" },
- {
- "label": "罗定市",
- "value": "445381" }]],
- [
- [{
- "label": "兴宁区",
- "value": "450102" },
- {
- "label": "青秀区",
- "value": "450103" },
- {
- "label": "江南区",
- "value": "450105" },
- {
- "label": "西乡塘区",
- "value": "450107" },
- {
- "label": "良庆区",
- "value": "450108" },
- {
- "label": "邕宁区",
- "value": "450109" },
- {
- "label": "武鸣区",
- "value": "450110" },
- {
- "label": "隆安县",
- "value": "450123" },
- {
- "label": "马山县",
- "value": "450124" },
- {
- "label": "上林县",
- "value": "450125" },
- {
- "label": "宾阳县",
- "value": "450126" },
- {
- "label": "横县",
- "value": "450127" }],
- [{
- "label": "城中区",
- "value": "450202" },
- {
- "label": "鱼峰区",
- "value": "450203" },
- {
- "label": "柳南区",
- "value": "450204" },
- {
- "label": "柳北区",
- "value": "450205" },
- {
- "label": "柳江区",
- "value": "450206" },
- {
- "label": "柳城县",
- "value": "450222" },
- {
- "label": "鹿寨县",
- "value": "450223" },
- {
- "label": "融安县",
- "value": "450224" },
- {
- "label": "融水苗族自治县",
- "value": "450225" },
- {
- "label": "三江侗族自治县",
- "value": "450226" }],
- [{
- "label": "秀峰区",
- "value": "450302" },
- {
- "label": "叠彩区",
- "value": "450303" },
- {
- "label": "象山区",
- "value": "450304" },
- {
- "label": "七星区",
- "value": "450305" },
- {
- "label": "雁山区",
- "value": "450311" },
- {
- "label": "临桂区",
- "value": "450312" },
- {
- "label": "阳朔县",
- "value": "450321" },
- {
- "label": "灵川县",
- "value": "450323" },
- {
- "label": "全州县",
- "value": "450324" },
- {
- "label": "兴安县",
- "value": "450325" },
- {
- "label": "永福县",
- "value": "450326" },
- {
- "label": "灌阳县",
- "value": "450327" },
- {
- "label": "龙胜各族自治县",
- "value": "450328" },
- {
- "label": "资源县",
- "value": "450329" },
- {
- "label": "平乐县",
- "value": "450330" },
- {
- "label": "荔浦县",
- "value": "450331" },
- {
- "label": "恭城瑶族自治县",
- "value": "450332" }],
- [{
- "label": "万秀区",
- "value": "450403" },
- {
- "label": "长洲区",
- "value": "450405" },
- {
- "label": "龙圩区",
- "value": "450406" },
- {
- "label": "苍梧县",
- "value": "450421" },
- {
- "label": "藤县",
- "value": "450422" },
- {
- "label": "蒙山县",
- "value": "450423" },
- {
- "label": "岑溪市",
- "value": "450481" }],
- [{
- "label": "海城区",
- "value": "450502" },
- {
- "label": "银海区",
- "value": "450503" },
- {
- "label": "铁山港区",
- "value": "450512" },
- {
- "label": "合浦县",
- "value": "450521" }],
- [{
- "label": "港口区",
- "value": "450602" },
- {
- "label": "防城区",
- "value": "450603" },
- {
- "label": "上思县",
- "value": "450621" },
- {
- "label": "东兴市",
- "value": "450681" }],
- [{
- "label": "钦南区",
- "value": "450702" },
- {
- "label": "钦北区",
- "value": "450703" },
- {
- "label": "灵山县",
- "value": "450721" },
- {
- "label": "浦北县",
- "value": "450722" }],
- [{
- "label": "港北区",
- "value": "450802" },
- {
- "label": "港南区",
- "value": "450803" },
- {
- "label": "覃塘区",
- "value": "450804" },
- {
- "label": "平南县",
- "value": "450821" },
- {
- "label": "桂平市",
- "value": "450881" }],
- [{
- "label": "玉州区",
- "value": "450902" },
- {
- "label": "福绵区",
- "value": "450903" },
- {
- "label": "容县",
- "value": "450921" },
- {
- "label": "陆川县",
- "value": "450922" },
- {
- "label": "博白县",
- "value": "450923" },
- {
- "label": "兴业县",
- "value": "450924" },
- {
- "label": "北流市",
- "value": "450981" }],
- [{
- "label": "右江区",
- "value": "451002" },
- {
- "label": "田阳县",
- "value": "451021" },
- {
- "label": "田东县",
- "value": "451022" },
- {
- "label": "平果县",
- "value": "451023" },
- {
- "label": "德保县",
- "value": "451024" },
- {
- "label": "那坡县",
- "value": "451026" },
- {
- "label": "凌云县",
- "value": "451027" },
- {
- "label": "乐业县",
- "value": "451028" },
- {
- "label": "田林县",
- "value": "451029" },
- {
- "label": "西林县",
- "value": "451030" },
- {
- "label": "隆林各族自治县",
- "value": "451031" },
- {
- "label": "靖西市",
- "value": "451081" }],
- [{
- "label": "八步区",
- "value": "451102" },
- {
- "label": "平桂区",
- "value": "451103" },
- {
- "label": "昭平县",
- "value": "451121" },
- {
- "label": "钟山县",
- "value": "451122" },
- {
- "label": "富川瑶族自治县",
- "value": "451123" }],
- [{
- "label": "金城江区",
- "value": "451202" },
- {
- "label": "宜州区",
- "value": "451203" },
- {
- "label": "南丹县",
- "value": "451221" },
- {
- "label": "天峨县",
- "value": "451222" },
- {
- "label": "凤山县",
- "value": "451223" },
- {
- "label": "东兰县",
- "value": "451224" },
- {
- "label": "罗城仫佬族自治县",
- "value": "451225" },
- {
- "label": "环江毛南族自治县",
- "value": "451226" },
- {
- "label": "巴马瑶族自治县",
- "value": "451227" },
- {
- "label": "都安瑶族自治县",
- "value": "451228" },
- {
- "label": "大化瑶族自治县",
- "value": "451229" }],
- [{
- "label": "兴宾区",
- "value": "451302" },
- {
- "label": "忻城县",
- "value": "451321" },
- {
- "label": "象州县",
- "value": "451322" },
- {
- "label": "武宣县",
- "value": "451323" },
- {
- "label": "金秀瑶族自治县",
- "value": "451324" },
- {
- "label": "合山市",
- "value": "451381" }],
- [{
- "label": "江州区",
- "value": "451402" },
- {
- "label": "扶绥县",
- "value": "451421" },
- {
- "label": "宁明县",
- "value": "451422" },
- {
- "label": "龙州县",
- "value": "451423" },
- {
- "label": "大新县",
- "value": "451424" },
- {
- "label": "天等县",
- "value": "451425" },
- {
- "label": "凭祥市",
- "value": "451481" }]],
- [
- [{
- "label": "秀英区",
- "value": "460105" },
- {
- "label": "龙华区",
- "value": "460106" },
- {
- "label": "琼山区",
- "value": "460107" },
- {
- "label": "美兰区",
- "value": "460108" }],
- [{
- "label": "海棠区",
- "value": "460202" },
- {
- "label": "吉阳区",
- "value": "460203" },
- {
- "label": "天涯区",
- "value": "460204" },
- {
- "label": "崖州区",
- "value": "460205" }],
- [{
- "label": "西沙群岛",
- "value": "460321" },
- {
- "label": "南沙群岛",
- "value": "460322" },
- {
- "label": "中沙群岛的岛礁及其海域",
- "value": "460323" }],
- [{
- "label": "儋州市",
- "value": "460400" }],
- [{
- "label": "五指山市",
- "value": "469001" },
- {
- "label": "琼海市",
- "value": "469002" },
- {
- "label": "文昌市",
- "value": "469005" },
- {
- "label": "万宁市",
- "value": "469006" },
- {
- "label": "东方市",
- "value": "469007" },
- {
- "label": "定安县",
- "value": "469021" },
- {
- "label": "屯昌县",
- "value": "469022" },
- {
- "label": "澄迈县",
- "value": "469023" },
- {
- "label": "临高县",
- "value": "469024" },
- {
- "label": "白沙黎族自治县",
- "value": "469025" },
- {
- "label": "昌江黎族自治县",
- "value": "469026" },
- {
- "label": "乐东黎族自治县",
- "value": "469027" },
- {
- "label": "陵水黎族自治县",
- "value": "469028" },
- {
- "label": "保亭黎族苗族自治县",
- "value": "469029" },
- {
- "label": "琼中黎族苗族自治县",
- "value": "469030" }]],
- [
- [{
- "label": "万州区",
- "value": "500101" },
- {
- "label": "涪陵区",
- "value": "500102" },
- {
- "label": "渝中区",
- "value": "500103" },
- {
- "label": "大渡口区",
- "value": "500104" },
- {
- "label": "江北区",
- "value": "500105" },
- {
- "label": "沙坪坝区",
- "value": "500106" },
- {
- "label": "九龙坡区",
- "value": "500107" },
- {
- "label": "南岸区",
- "value": "500108" },
- {
- "label": "北碚区",
- "value": "500109" },
- {
- "label": "綦江区",
- "value": "500110" },
- {
- "label": "大足区",
- "value": "500111" },
- {
- "label": "渝北区",
- "value": "500112" },
- {
- "label": "巴南区",
- "value": "500113" },
- {
- "label": "黔江区",
- "value": "500114" },
- {
- "label": "长寿区",
- "value": "500115" },
- {
- "label": "江津区",
- "value": "500116" },
- {
- "label": "合川区",
- "value": "500117" },
- {
- "label": "永川区",
- "value": "500118" },
- {
- "label": "南川区",
- "value": "500119" },
- {
- "label": "璧山区",
- "value": "500120" },
- {
- "label": "铜梁区",
- "value": "500151" },
- {
- "label": "潼南区",
- "value": "500152" },
- {
- "label": "荣昌区",
- "value": "500153" },
- {
- "label": "开州区",
- "value": "500154" },
- {
- "label": "梁平区",
- "value": "500155" },
- {
- "label": "武隆区",
- "value": "500156" }],
- [{
- "label": "城口县",
- "value": "500229" },
- {
- "label": "丰都县",
- "value": "500230" },
- {
- "label": "垫江县",
- "value": "500231" },
- {
- "label": "忠县",
- "value": "500233" },
- {
- "label": "云阳县",
- "value": "500235" },
- {
- "label": "奉节县",
- "value": "500236" },
- {
- "label": "巫山县",
- "value": "500237" },
- {
- "label": "巫溪县",
- "value": "500238" },
- {
- "label": "石柱土家族自治县",
- "value": "500240" },
- {
- "label": "秀山土家族苗族自治县",
- "value": "500241" },
- {
- "label": "酉阳土家族苗族自治县",
- "value": "500242" },
- {
- "label": "彭水苗族土家族自治县",
- "value": "500243" }]],
- [
- [{
- "label": "锦江区",
- "value": "510104" },
- {
- "label": "青羊区",
- "value": "510105" },
- {
- "label": "金牛区",
- "value": "510106" },
- {
- "label": "武侯区",
- "value": "510107" },
- {
- "label": "成华区",
- "value": "510108" },
- {
- "label": "龙泉驿区",
- "value": "510112" },
- {
- "label": "青白江区",
- "value": "510113" },
- {
- "label": "新都区",
- "value": "510114" },
- {
- "label": "温江区",
- "value": "510115" },
- {
- "label": "双流区",
- "value": "510116" },
- {
- "label": "郫都区",
- "value": "510117" },
- {
- "label": "金堂县",
- "value": "510121" },
- {
- "label": "大邑县",
- "value": "510129" },
- {
- "label": "蒲江县",
- "value": "510131" },
- {
- "label": "新津县",
- "value": "510132" },
- {
- "label": "都江堰市",
- "value": "510181" },
- {
- "label": "彭州市",
- "value": "510182" },
- {
- "label": "邛崃市",
- "value": "510183" },
- {
- "label": "崇州市",
- "value": "510184" },
- {
- "label": "简阳市",
- "value": "510185" }],
- [{
- "label": "自流井区",
- "value": "510302" },
- {
- "label": "贡井区",
- "value": "510303" },
- {
- "label": "大安区",
- "value": "510304" },
- {
- "label": "沿滩区",
- "value": "510311" },
- {
- "label": "荣县",
- "value": "510321" },
- {
- "label": "富顺县",
- "value": "510322" }],
- [{
- "label": "东区",
- "value": "510402" },
- {
- "label": "西区",
- "value": "510403" },
- {
- "label": "仁和区",
- "value": "510411" },
- {
- "label": "米易县",
- "value": "510421" },
- {
- "label": "盐边县",
- "value": "510422" }],
- [{
- "label": "江阳区",
- "value": "510502" },
- {
- "label": "纳溪区",
- "value": "510503" },
- {
- "label": "龙马潭区",
- "value": "510504" },
- {
- "label": "泸县",
- "value": "510521" },
- {
- "label": "合江县",
- "value": "510522" },
- {
- "label": "叙永县",
- "value": "510524" },
- {
- "label": "古蔺县",
- "value": "510525" }],
- [{
- "label": "旌阳区",
- "value": "510603" },
- {
- "label": "罗江区",
- "value": "510604" },
- {
- "label": "中江县",
- "value": "510623" },
- {
- "label": "广汉市",
- "value": "510681" },
- {
- "label": "什邡市",
- "value": "510682" },
- {
- "label": "绵竹市",
- "value": "510683" }],
- [{
- "label": "涪城区",
- "value": "510703" },
- {
- "label": "游仙区",
- "value": "510704" },
- {
- "label": "安州区",
- "value": "510705" },
- {
- "label": "三台县",
- "value": "510722" },
- {
- "label": "盐亭县",
- "value": "510723" },
- {
- "label": "梓潼县",
- "value": "510725" },
- {
- "label": "北川羌族自治县",
- "value": "510726" },
- {
- "label": "平武县",
- "value": "510727" },
- {
- "label": "江油市",
- "value": "510781" }],
- [{
- "label": "利州区",
- "value": "510802" },
- {
- "label": "昭化区",
- "value": "510811" },
- {
- "label": "朝天区",
- "value": "510812" },
- {
- "label": "旺苍县",
- "value": "510821" },
- {
- "label": "青川县",
- "value": "510822" },
- {
- "label": "剑阁县",
- "value": "510823" },
- {
- "label": "苍溪县",
- "value": "510824" }],
- [{
- "label": "船山区",
- "value": "510903" },
- {
- "label": "安居区",
- "value": "510904" },
- {
- "label": "蓬溪县",
- "value": "510921" },
- {
- "label": "射洪县",
- "value": "510922" },
- {
- "label": "大英县",
- "value": "510923" }],
- [{
- "label": "市中区",
- "value": "511002" },
- {
- "label": "东兴区",
- "value": "511011" },
- {
- "label": "威远县",
- "value": "511024" },
- {
- "label": "资中县",
- "value": "511025" },
- {
- "label": "内江经济开发区",
- "value": "511071" },
- {
- "label": "隆昌市",
- "value": "511083" }],
- [{
- "label": "市中区",
- "value": "511102" },
- {
- "label": "沙湾区",
- "value": "511111" },
- {
- "label": "五通桥区",
- "value": "511112" },
- {
- "label": "金口河区",
- "value": "511113" },
- {
- "label": "犍为县",
- "value": "511123" },
- {
- "label": "井研县",
- "value": "511124" },
- {
- "label": "夹江县",
- "value": "511126" },
- {
- "label": "沐川县",
- "value": "511129" },
- {
- "label": "峨边彝族自治县",
- "value": "511132" },
- {
- "label": "马边彝族自治县",
- "value": "511133" },
- {
- "label": "峨眉山市",
- "value": "511181" }],
- [{
- "label": "顺庆区",
- "value": "511302" },
- {
- "label": "高坪区",
- "value": "511303" },
- {
- "label": "嘉陵区",
- "value": "511304" },
- {
- "label": "南部县",
- "value": "511321" },
- {
- "label": "营山县",
- "value": "511322" },
- {
- "label": "蓬安县",
- "value": "511323" },
- {
- "label": "仪陇县",
- "value": "511324" },
- {
- "label": "西充县",
- "value": "511325" },
- {
- "label": "阆中市",
- "value": "511381" }],
- [{
- "label": "东坡区",
- "value": "511402" },
- {
- "label": "彭山区",
- "value": "511403" },
- {
- "label": "仁寿县",
- "value": "511421" },
- {
- "label": "洪雅县",
- "value": "511423" },
- {
- "label": "丹棱县",
- "value": "511424" },
- {
- "label": "青神县",
- "value": "511425" }],
- [{
- "label": "翠屏区",
- "value": "511502" },
- {
- "label": "南溪区",
- "value": "511503" },
- {
- "label": "宜宾县",
- "value": "511521" },
- {
- "label": "江安县",
- "value": "511523" },
- {
- "label": "长宁县",
- "value": "511524" },
- {
- "label": "高县",
- "value": "511525" },
- {
- "label": "珙县",
- "value": "511526" },
- {
- "label": "筠连县",
- "value": "511527" },
- {
- "label": "兴文县",
- "value": "511528" },
- {
- "label": "屏山县",
- "value": "511529" }],
- [{
- "label": "广安区",
- "value": "511602" },
- {
- "label": "前锋区",
- "value": "511603" },
- {
- "label": "岳池县",
- "value": "511621" },
- {
- "label": "武胜县",
- "value": "511622" },
- {
- "label": "邻水县",
- "value": "511623" },
- {
- "label": "华蓥市",
- "value": "511681" }],
- [{
- "label": "通川区",
- "value": "511702" },
- {
- "label": "达川区",
- "value": "511703" },
- {
- "label": "宣汉县",
- "value": "511722" },
- {
- "label": "开江县",
- "value": "511723" },
- {
- "label": "大竹县",
- "value": "511724" },
- {
- "label": "渠县",
- "value": "511725" },
- {
- "label": "达州经济开发区",
- "value": "511771" },
- {
- "label": "万源市",
- "value": "511781" }],
- [{
- "label": "雨城区",
- "value": "511802" },
- {
- "label": "名山区",
- "value": "511803" },
- {
- "label": "荥经县",
- "value": "511822" },
- {
- "label": "汉源县",
- "value": "511823" },
- {
- "label": "石棉县",
- "value": "511824" },
- {
- "label": "天全县",
- "value": "511825" },
- {
- "label": "芦山县",
- "value": "511826" },
- {
- "label": "宝兴县",
- "value": "511827" }],
- [{
- "label": "巴州区",
- "value": "511902" },
- {
- "label": "恩阳区",
- "value": "511903" },
- {
- "label": "通江县",
- "value": "511921" },
- {
- "label": "南江县",
- "value": "511922" },
- {
- "label": "平昌县",
- "value": "511923" },
- {
- "label": "巴中经济开发区",
- "value": "511971" }],
- [{
- "label": "雁江区",
- "value": "512002" },
- {
- "label": "安岳县",
- "value": "512021" },
- {
- "label": "乐至县",
- "value": "512022" }],
- [{
- "label": "马尔康市",
- "value": "513201" },
- {
- "label": "汶川县",
- "value": "513221" },
- {
- "label": "理县",
- "value": "513222" },
- {
- "label": "茂县",
- "value": "513223" },
- {
- "label": "松潘县",
- "value": "513224" },
- {
- "label": "九寨沟县",
- "value": "513225" },
- {
- "label": "金川县",
- "value": "513226" },
- {
- "label": "小金县",
- "value": "513227" },
- {
- "label": "黑水县",
- "value": "513228" },
- {
- "label": "壤塘县",
- "value": "513230" },
- {
- "label": "阿坝县",
- "value": "513231" },
- {
- "label": "若尔盖县",
- "value": "513232" },
- {
- "label": "红原县",
- "value": "513233" }],
- [{
- "label": "康定市",
- "value": "513301" },
- {
- "label": "泸定县",
- "value": "513322" },
- {
- "label": "丹巴县",
- "value": "513323" },
- {
- "label": "九龙县",
- "value": "513324" },
- {
- "label": "雅江县",
- "value": "513325" },
- {
- "label": "道孚县",
- "value": "513326" },
- {
- "label": "炉霍县",
- "value": "513327" },
- {
- "label": "甘孜县",
- "value": "513328" },
- {
- "label": "新龙县",
- "value": "513329" },
- {
- "label": "德格县",
- "value": "513330" },
- {
- "label": "白玉县",
- "value": "513331" },
- {
- "label": "石渠县",
- "value": "513332" },
- {
- "label": "色达县",
- "value": "513333" },
- {
- "label": "理塘县",
- "value": "513334" },
- {
- "label": "巴塘县",
- "value": "513335" },
- {
- "label": "乡城县",
- "value": "513336" },
- {
- "label": "稻城县",
- "value": "513337" },
- {
- "label": "得荣县",
- "value": "513338" }],
- [{
- "label": "西昌市",
- "value": "513401" },
- {
- "label": "木里藏族自治县",
- "value": "513422" },
- {
- "label": "盐源县",
- "value": "513423" },
- {
- "label": "德昌县",
- "value": "513424" },
- {
- "label": "会理县",
- "value": "513425" },
- {
- "label": "会东县",
- "value": "513426" },
- {
- "label": "宁南县",
- "value": "513427" },
- {
- "label": "普格县",
- "value": "513428" },
- {
- "label": "布拖县",
- "value": "513429" },
- {
- "label": "金阳县",
- "value": "513430" },
- {
- "label": "昭觉县",
- "value": "513431" },
- {
- "label": "喜德县",
- "value": "513432" },
- {
- "label": "冕宁县",
- "value": "513433" },
- {
- "label": "越西县",
- "value": "513434" },
- {
- "label": "甘洛县",
- "value": "513435" },
- {
- "label": "美姑县",
- "value": "513436" },
- {
- "label": "雷波县",
- "value": "513437" }]],
- [
- [{
- "label": "南明区",
- "value": "520102" },
- {
- "label": "云岩区",
- "value": "520103" },
- {
- "label": "花溪区",
- "value": "520111" },
- {
- "label": "乌当区",
- "value": "520112" },
- {
- "label": "白云区",
- "value": "520113" },
- {
- "label": "观山湖区",
- "value": "520115" },
- {
- "label": "开阳县",
- "value": "520121" },
- {
- "label": "息烽县",
- "value": "520122" },
- {
- "label": "修文县",
- "value": "520123" },
- {
- "label": "清镇市",
- "value": "520181" }],
- [{
- "label": "钟山区",
- "value": "520201" },
- {
- "label": "六枝特区",
- "value": "520203" },
- {
- "label": "水城县",
- "value": "520221" },
- {
- "label": "盘州市",
- "value": "520281" }],
- [{
- "label": "红花岗区",
- "value": "520302" },
- {
- "label": "汇川区",
- "value": "520303" },
- {
- "label": "播州区",
- "value": "520304" },
- {
- "label": "桐梓县",
- "value": "520322" },
- {
- "label": "绥阳县",
- "value": "520323" },
- {
- "label": "正安县",
- "value": "520324" },
- {
- "label": "道真仡佬族苗族自治县",
- "value": "520325" },
- {
- "label": "务川仡佬族苗族自治县",
- "value": "520326" },
- {
- "label": "凤冈县",
- "value": "520327" },
- {
- "label": "湄潭县",
- "value": "520328" },
- {
- "label": "余庆县",
- "value": "520329" },
- {
- "label": "习水县",
- "value": "520330" },
- {
- "label": "赤水市",
- "value": "520381" },
- {
- "label": "仁怀市",
- "value": "520382" }],
- [{
- "label": "西秀区",
- "value": "520402" },
- {
- "label": "平坝区",
- "value": "520403" },
- {
- "label": "普定县",
- "value": "520422" },
- {
- "label": "镇宁布依族苗族自治县",
- "value": "520423" },
- {
- "label": "关岭布依族苗族自治县",
- "value": "520424" },
- {
- "label": "紫云苗族布依族自治县",
- "value": "520425" }],
- [{
- "label": "七星关区",
- "value": "520502" },
- {
- "label": "大方县",
- "value": "520521" },
- {
- "label": "黔西县",
- "value": "520522" },
- {
- "label": "金沙县",
- "value": "520523" },
- {
- "label": "织金县",
- "value": "520524" },
- {
- "label": "纳雍县",
- "value": "520525" },
- {
- "label": "威宁彝族回族苗族自治县",
- "value": "520526" },
- {
- "label": "赫章县",
- "value": "520527" }],
- [{
- "label": "碧江区",
- "value": "520602" },
- {
- "label": "万山区",
- "value": "520603" },
- {
- "label": "江口县",
- "value": "520621" },
- {
- "label": "玉屏侗族自治县",
- "value": "520622" },
- {
- "label": "石阡县",
- "value": "520623" },
- {
- "label": "思南县",
- "value": "520624" },
- {
- "label": "印江土家族苗族自治县",
- "value": "520625" },
- {
- "label": "德江县",
- "value": "520626" },
- {
- "label": "沿河土家族自治县",
- "value": "520627" },
- {
- "label": "松桃苗族自治县",
- "value": "520628" }],
- [{
- "label": "兴义市",
- "value": "522301" },
- {
- "label": "兴仁县",
- "value": "522322" },
- {
- "label": "普安县",
- "value": "522323" },
- {
- "label": "晴隆县",
- "value": "522324" },
- {
- "label": "贞丰县",
- "value": "522325" },
- {
- "label": "望谟县",
- "value": "522326" },
- {
- "label": "册亨县",
- "value": "522327" },
- {
- "label": "安龙县",
- "value": "522328" }],
- [{
- "label": "凯里市",
- "value": "522601" },
- {
- "label": "黄平县",
- "value": "522622" },
- {
- "label": "施秉县",
- "value": "522623" },
- {
- "label": "三穗县",
- "value": "522624" },
- {
- "label": "镇远县",
- "value": "522625" },
- {
- "label": "岑巩县",
- "value": "522626" },
- {
- "label": "天柱县",
- "value": "522627" },
- {
- "label": "锦屏县",
- "value": "522628" },
- {
- "label": "剑河县",
- "value": "522629" },
- {
- "label": "台江县",
- "value": "522630" },
- {
- "label": "黎平县",
- "value": "522631" },
- {
- "label": "榕江县",
- "value": "522632" },
- {
- "label": "从江县",
- "value": "522633" },
- {
- "label": "雷山县",
- "value": "522634" },
- {
- "label": "麻江县",
- "value": "522635" },
- {
- "label": "丹寨县",
- "value": "522636" }],
- [{
- "label": "都匀市",
- "value": "522701" },
- {
- "label": "福泉市",
- "value": "522702" },
- {
- "label": "荔波县",
- "value": "522722" },
- {
- "label": "贵定县",
- "value": "522723" },
- {
- "label": "瓮安县",
- "value": "522725" },
- {
- "label": "独山县",
- "value": "522726" },
- {
- "label": "平塘县",
- "value": "522727" },
- {
- "label": "罗甸县",
- "value": "522728" },
- {
- "label": "长顺县",
- "value": "522729" },
- {
- "label": "龙里县",
- "value": "522730" },
- {
- "label": "惠水县",
- "value": "522731" },
- {
- "label": "三都水族自治县",
- "value": "522732" }]],
- [
- [{
- "label": "五华区",
- "value": "530102" },
- {
- "label": "盘龙区",
- "value": "530103" },
- {
- "label": "官渡区",
- "value": "530111" },
- {
- "label": "西山区",
- "value": "530112" },
- {
- "label": "东川区",
- "value": "530113" },
- {
- "label": "呈贡区",
- "value": "530114" },
- {
- "label": "晋宁区",
- "value": "530115" },
- {
- "label": "富民县",
- "value": "530124" },
- {
- "label": "宜良县",
- "value": "530125" },
- {
- "label": "石林彝族自治县",
- "value": "530126" },
- {
- "label": "嵩明县",
- "value": "530127" },
- {
- "label": "禄劝彝族苗族自治县",
- "value": "530128" },
- {
- "label": "寻甸回族彝族自治县",
- "value": "530129" },
- {
- "label": "安宁市",
- "value": "530181" }],
- [{
- "label": "麒麟区",
- "value": "530302" },
- {
- "label": "沾益区",
- "value": "530303" },
- {
- "label": "马龙县",
- "value": "530321" },
- {
- "label": "陆良县",
- "value": "530322" },
- {
- "label": "师宗县",
- "value": "530323" },
- {
- "label": "罗平县",
- "value": "530324" },
- {
- "label": "富源县",
- "value": "530325" },
- {
- "label": "会泽县",
- "value": "530326" },
- {
- "label": "宣威市",
- "value": "530381" }],
- [{
- "label": "红塔区",
- "value": "530402" },
- {
- "label": "江川区",
- "value": "530403" },
- {
- "label": "澄江县",
- "value": "530422" },
- {
- "label": "通海县",
- "value": "530423" },
- {
- "label": "华宁县",
- "value": "530424" },
- {
- "label": "易门县",
- "value": "530425" },
- {
- "label": "峨山彝族自治县",
- "value": "530426" },
- {
- "label": "新平彝族傣族自治县",
- "value": "530427" },
- {
- "label": "元江哈尼族彝族傣族自治县",
- "value": "530428" }],
- [{
- "label": "隆阳区",
- "value": "530502" },
- {
- "label": "施甸县",
- "value": "530521" },
- {
- "label": "龙陵县",
- "value": "530523" },
- {
- "label": "昌宁县",
- "value": "530524" },
- {
- "label": "腾冲市",
- "value": "530581" }],
- [{
- "label": "昭阳区",
- "value": "530602" },
- {
- "label": "鲁甸县",
- "value": "530621" },
- {
- "label": "巧家县",
- "value": "530622" },
- {
- "label": "盐津县",
- "value": "530623" },
- {
- "label": "大关县",
- "value": "530624" },
- {
- "label": "永善县",
- "value": "530625" },
- {
- "label": "绥江县",
- "value": "530626" },
- {
- "label": "镇雄县",
- "value": "530627" },
- {
- "label": "彝良县",
- "value": "530628" },
- {
- "label": "威信县",
- "value": "530629" },
- {
- "label": "水富县",
- "value": "530630" }],
- [{
- "label": "古城区",
- "value": "530702" },
- {
- "label": "玉龙纳西族自治县",
- "value": "530721" },
- {
- "label": "永胜县",
- "value": "530722" },
- {
- "label": "华坪县",
- "value": "530723" },
- {
- "label": "宁蒗彝族自治县",
- "value": "530724" }],
- [{
- "label": "思茅区",
- "value": "530802" },
- {
- "label": "宁洱哈尼族彝族自治县",
- "value": "530821" },
- {
- "label": "墨江哈尼族自治县",
- "value": "530822" },
- {
- "label": "景东彝族自治县",
- "value": "530823" },
- {
- "label": "景谷傣族彝族自治县",
- "value": "530824" },
- {
- "label": "镇沅彝族哈尼族拉祜族自治县",
- "value": "530825" },
- {
- "label": "江城哈尼族彝族自治县",
- "value": "530826" },
- {
- "label": "孟连傣族拉祜族佤族自治县",
- "value": "530827" },
- {
- "label": "澜沧拉祜族自治县",
- "value": "530828" },
- {
- "label": "西盟佤族自治县",
- "value": "530829" }],
- [{
- "label": "临翔区",
- "value": "530902" },
- {
- "label": "凤庆县",
- "value": "530921" },
- {
- "label": "云县",
- "value": "530922" },
- {
- "label": "永德县",
- "value": "530923" },
- {
- "label": "镇康县",
- "value": "530924" },
- {
- "label": "双江拉祜族佤族布朗族傣族自治县",
- "value": "530925" },
- {
- "label": "耿马傣族佤族自治县",
- "value": "530926" },
- {
- "label": "沧源佤族自治县",
- "value": "530927" }],
- [{
- "label": "楚雄市",
- "value": "532301" },
- {
- "label": "双柏县",
- "value": "532322" },
- {
- "label": "牟定县",
- "value": "532323" },
- {
- "label": "南华县",
- "value": "532324" },
- {
- "label": "姚安县",
- "value": "532325" },
- {
- "label": "大姚县",
- "value": "532326" },
- {
- "label": "永仁县",
- "value": "532327" },
- {
- "label": "元谋县",
- "value": "532328" },
- {
- "label": "武定县",
- "value": "532329" },
- {
- "label": "禄丰县",
- "value": "532331" }],
- [{
- "label": "个旧市",
- "value": "532501" },
- {
- "label": "开远市",
- "value": "532502" },
- {
- "label": "蒙自市",
- "value": "532503" },
- {
- "label": "弥勒市",
- "value": "532504" },
- {
- "label": "屏边苗族自治县",
- "value": "532523" },
- {
- "label": "建水县",
- "value": "532524" },
- {
- "label": "石屏县",
- "value": "532525" },
- {
- "label": "泸西县",
- "value": "532527" },
- {
- "label": "元阳县",
- "value": "532528" },
- {
- "label": "红河县",
- "value": "532529" },
- {
- "label": "金平苗族瑶族傣族自治县",
- "value": "532530" },
- {
- "label": "绿春县",
- "value": "532531" },
- {
- "label": "河口瑶族自治县",
- "value": "532532" }],
- [{
- "label": "文山市",
- "value": "532601" },
- {
- "label": "砚山县",
- "value": "532622" },
- {
- "label": "西畴县",
- "value": "532623" },
- {
- "label": "麻栗坡县",
- "value": "532624" },
- {
- "label": "马关县",
- "value": "532625" },
- {
- "label": "丘北县",
- "value": "532626" },
- {
- "label": "广南县",
- "value": "532627" },
- {
- "label": "富宁县",
- "value": "532628" }],
- [{
- "label": "景洪市",
- "value": "532801" },
- {
- "label": "勐海县",
- "value": "532822" },
- {
- "label": "勐腊县",
- "value": "532823" }],
- [{
- "label": "大理市",
- "value": "532901" },
- {
- "label": "漾濞彝族自治县",
- "value": "532922" },
- {
- "label": "祥云县",
- "value": "532923" },
- {
- "label": "宾川县",
- "value": "532924" },
- {
- "label": "弥渡县",
- "value": "532925" },
- {
- "label": "南涧彝族自治县",
- "value": "532926" },
- {
- "label": "巍山彝族回族自治县",
- "value": "532927" },
- {
- "label": "永平县",
- "value": "532928" },
- {
- "label": "云龙县",
- "value": "532929" },
- {
- "label": "洱源县",
- "value": "532930" },
- {
- "label": "剑川县",
- "value": "532931" },
- {
- "label": "鹤庆县",
- "value": "532932" }],
- [{
- "label": "瑞丽市",
- "value": "533102" },
- {
- "label": "芒市",
- "value": "533103" },
- {
- "label": "梁河县",
- "value": "533122" },
- {
- "label": "盈江县",
- "value": "533123" },
- {
- "label": "陇川县",
- "value": "533124" }],
- [{
- "label": "泸水市",
- "value": "533301" },
- {
- "label": "福贡县",
- "value": "533323" },
- {
- "label": "贡山独龙族怒族自治县",
- "value": "533324" },
- {
- "label": "兰坪白族普米族自治县",
- "value": "533325" }],
- [{
- "label": "香格里拉市",
- "value": "533401" },
- {
- "label": "德钦县",
- "value": "533422" },
- {
- "label": "维西傈僳族自治县",
- "value": "533423" }]],
- [
- [{
- "label": "城关区",
- "value": "540102" },
- {
- "label": "堆龙德庆区",
- "value": "540103" },
- {
- "label": "林周县",
- "value": "540121" },
- {
- "label": "当雄县",
- "value": "540122" },
- {
- "label": "尼木县",
- "value": "540123" },
- {
- "label": "曲水县",
- "value": "540124" },
- {
- "label": "达孜县",
- "value": "540126" },
- {
- "label": "墨竹工卡县",
- "value": "540127" },
- {
- "label": "格尔木藏青工业园区",
- "value": "540171" },
- {
- "label": "拉萨经济技术开发区",
- "value": "540172" },
- {
- "label": "西藏文化旅游创意园区",
- "value": "540173" },
- {
- "label": "达孜工业园区",
- "value": "540174" }],
- [{
- "label": "桑珠孜区",
- "value": "540202" },
- {
- "label": "南木林县",
- "value": "540221" },
- {
- "label": "江孜县",
- "value": "540222" },
- {
- "label": "定日县",
- "value": "540223" },
- {
- "label": "萨迦县",
- "value": "540224" },
- {
- "label": "拉孜县",
- "value": "540225" },
- {
- "label": "昂仁县",
- "value": "540226" },
- {
- "label": "谢通门县",
- "value": "540227" },
- {
- "label": "白朗县",
- "value": "540228" },
- {
- "label": "仁布县",
- "value": "540229" },
- {
- "label": "康马县",
- "value": "540230" },
- {
- "label": "定结县",
- "value": "540231" },
- {
- "label": "仲巴县",
- "value": "540232" },
- {
- "label": "亚东县",
- "value": "540233" },
- {
- "label": "吉隆县",
- "value": "540234" },
- {
- "label": "聂拉木县",
- "value": "540235" },
- {
- "label": "萨嘎县",
- "value": "540236" },
- {
- "label": "岗巴县",
- "value": "540237" }],
- [{
- "label": "卡若区",
- "value": "540302" },
- {
- "label": "江达县",
- "value": "540321" },
- {
- "label": "贡觉县",
- "value": "540322" },
- {
- "label": "类乌齐县",
- "value": "540323" },
- {
- "label": "丁青县",
- "value": "540324" },
- {
- "label": "察雅县",
- "value": "540325" },
- {
- "label": "八宿县",
- "value": "540326" },
- {
- "label": "左贡县",
- "value": "540327" },
- {
- "label": "芒康县",
- "value": "540328" },
- {
- "label": "洛隆县",
- "value": "540329" },
- {
- "label": "边坝县",
- "value": "540330" }],
- [{
- "label": "巴宜区",
- "value": "540402" },
- {
- "label": "工布江达县",
- "value": "540421" },
- {
- "label": "米林县",
- "value": "540422" },
- {
- "label": "墨脱县",
- "value": "540423" },
- {
- "label": "波密县",
- "value": "540424" },
- {
- "label": "察隅县",
- "value": "540425" },
- {
- "label": "朗县",
- "value": "540426" }],
- [{
- "label": "乃东区",
- "value": "540502" },
- {
- "label": "扎囊县",
- "value": "540521" },
- {
- "label": "贡嘎县",
- "value": "540522" },
- {
- "label": "桑日县",
- "value": "540523" },
- {
- "label": "琼结县",
- "value": "540524" },
- {
- "label": "曲松县",
- "value": "540525" },
- {
- "label": "措美县",
- "value": "540526" },
- {
- "label": "洛扎县",
- "value": "540527" },
- {
- "label": "加查县",
- "value": "540528" },
- {
- "label": "隆子县",
- "value": "540529" },
- {
- "label": "错那县",
- "value": "540530" },
- {
- "label": "浪卡子县",
- "value": "540531" }],
- [{
- "label": "那曲县",
- "value": "542421" },
- {
- "label": "嘉黎县",
- "value": "542422" },
- {
- "label": "比如县",
- "value": "542423" },
- {
- "label": "聂荣县",
- "value": "542424" },
- {
- "label": "安多县",
- "value": "542425" },
- {
- "label": "申扎县",
- "value": "542426" },
- {
- "label": "索县",
- "value": "542427" },
- {
- "label": "班戈县",
- "value": "542428" },
- {
- "label": "巴青县",
- "value": "542429" },
- {
- "label": "尼玛县",
- "value": "542430" },
- {
- "label": "双湖县",
- "value": "542431" }],
- [{
- "label": "普兰县",
- "value": "542521" },
- {
- "label": "札达县",
- "value": "542522" },
- {
- "label": "噶尔县",
- "value": "542523" },
- {
- "label": "日土县",
- "value": "542524" },
- {
- "label": "革吉县",
- "value": "542525" },
- {
- "label": "改则县",
- "value": "542526" },
- {
- "label": "措勤县",
- "value": "542527" }]],
- [
- [{
- "label": "新城区",
- "value": "610102" },
- {
- "label": "碑林区",
- "value": "610103" },
- {
- "label": "莲湖区",
- "value": "610104" },
- {
- "label": "灞桥区",
- "value": "610111" },
- {
- "label": "未央区",
- "value": "610112" },
- {
- "label": "雁塔区",
- "value": "610113" },
- {
- "label": "阎良区",
- "value": "610114" },
- {
- "label": "临潼区",
- "value": "610115" },
- {
- "label": "长安区",
- "value": "610116" },
- {
- "label": "高陵区",
- "value": "610117" },
- {
- "label": "鄠邑区",
- "value": "610118" },
- {
- "label": "蓝田县",
- "value": "610122" },
- {
- "label": "周至县",
- "value": "610124" }],
- [{
- "label": "王益区",
- "value": "610202" },
- {
- "label": "印台区",
- "value": "610203" },
- {
- "label": "耀州区",
- "value": "610204" },
- {
- "label": "宜君县",
- "value": "610222" }],
- [{
- "label": "渭滨区",
- "value": "610302" },
- {
- "label": "金台区",
- "value": "610303" },
- {
- "label": "陈仓区",
- "value": "610304" },
- {
- "label": "凤翔县",
- "value": "610322" },
- {
- "label": "岐山县",
- "value": "610323" },
- {
- "label": "扶风县",
- "value": "610324" },
- {
- "label": "眉县",
- "value": "610326" },
- {
- "label": "陇县",
- "value": "610327" },
- {
- "label": "千阳县",
- "value": "610328" },
- {
- "label": "麟游县",
- "value": "610329" },
- {
- "label": "凤县",
- "value": "610330" },
- {
- "label": "太白县",
- "value": "610331" }],
- [{
- "label": "秦都区",
- "value": "610402" },
- {
- "label": "杨陵区",
- "value": "610403" },
- {
- "label": "渭城区",
- "value": "610404" },
- {
- "label": "三原县",
- "value": "610422" },
- {
- "label": "泾阳县",
- "value": "610423" },
- {
- "label": "乾县",
- "value": "610424" },
- {
- "label": "礼泉县",
- "value": "610425" },
- {
- "label": "永寿县",
- "value": "610426" },
- {
- "label": "彬县",
- "value": "610427" },
- {
- "label": "长武县",
- "value": "610428" },
- {
- "label": "旬邑县",
- "value": "610429" },
- {
- "label": "淳化县",
- "value": "610430" },
- {
- "label": "武功县",
- "value": "610431" },
- {
- "label": "兴平市",
- "value": "610481" }],
- [{
- "label": "临渭区",
- "value": "610502" },
- {
- "label": "华州区",
- "value": "610503" },
- {
- "label": "潼关县",
- "value": "610522" },
- {
- "label": "大荔县",
- "value": "610523" },
- {
- "label": "合阳县",
- "value": "610524" },
- {
- "label": "澄城县",
- "value": "610525" },
- {
- "label": "蒲城县",
- "value": "610526" },
- {
- "label": "白水县",
- "value": "610527" },
- {
- "label": "富平县",
- "value": "610528" },
- {
- "label": "韩城市",
- "value": "610581" },
- {
- "label": "华阴市",
- "value": "610582" }],
- [{
- "label": "宝塔区",
- "value": "610602" },
- {
- "label": "安塞区",
- "value": "610603" },
- {
- "label": "延长县",
- "value": "610621" },
- {
- "label": "延川县",
- "value": "610622" },
- {
- "label": "子长县",
- "value": "610623" },
- {
- "label": "志丹县",
- "value": "610625" },
- {
- "label": "吴起县",
- "value": "610626" },
- {
- "label": "甘泉县",
- "value": "610627" },
- {
- "label": "富县",
- "value": "610628" },
- {
- "label": "洛川县",
- "value": "610629" },
- {
- "label": "宜川县",
- "value": "610630" },
- {
- "label": "黄龙县",
- "value": "610631" },
- {
- "label": "黄陵县",
- "value": "610632" }],
- [{
- "label": "汉台区",
- "value": "610702" },
- {
- "label": "南郑区",
- "value": "610703" },
- {
- "label": "城固县",
- "value": "610722" },
- {
- "label": "洋县",
- "value": "610723" },
- {
- "label": "西乡县",
- "value": "610724" },
- {
- "label": "勉县",
- "value": "610725" },
- {
- "label": "宁强县",
- "value": "610726" },
- {
- "label": "略阳县",
- "value": "610727" },
- {
- "label": "镇巴县",
- "value": "610728" },
- {
- "label": "留坝县",
- "value": "610729" },
- {
- "label": "佛坪县",
- "value": "610730" }],
- [{
- "label": "榆阳区",
- "value": "610802" },
- {
- "label": "横山区",
- "value": "610803" },
- {
- "label": "府谷县",
- "value": "610822" },
- {
- "label": "靖边县",
- "value": "610824" },
- {
- "label": "定边县",
- "value": "610825" },
- {
- "label": "绥德县",
- "value": "610826" },
- {
- "label": "米脂县",
- "value": "610827" },
- {
- "label": "佳县",
- "value": "610828" },
- {
- "label": "吴堡县",
- "value": "610829" },
- {
- "label": "清涧县",
- "value": "610830" },
- {
- "label": "子洲县",
- "value": "610831" },
- {
- "label": "神木市",
- "value": "610881" }],
- [{
- "label": "汉滨区",
- "value": "610902" },
- {
- "label": "汉阴县",
- "value": "610921" },
- {
- "label": "石泉县",
- "value": "610922" },
- {
- "label": "宁陕县",
- "value": "610923" },
- {
- "label": "紫阳县",
- "value": "610924" },
- {
- "label": "岚皋县",
- "value": "610925" },
- {
- "label": "平利县",
- "value": "610926" },
- {
- "label": "镇坪县",
- "value": "610927" },
- {
- "label": "旬阳县",
- "value": "610928" },
- {
- "label": "白河县",
- "value": "610929" }],
- [{
- "label": "商州区",
- "value": "611002" },
- {
- "label": "洛南县",
- "value": "611021" },
- {
- "label": "丹凤县",
- "value": "611022" },
- {
- "label": "商南县",
- "value": "611023" },
- {
- "label": "山阳县",
- "value": "611024" },
- {
- "label": "镇安县",
- "value": "611025" },
- {
- "label": "柞水县",
- "value": "611026" }]],
- [
- [{
- "label": "城关区",
- "value": "620102" },
- {
- "label": "七里河区",
- "value": "620103" },
- {
- "label": "西固区",
- "value": "620104" },
- {
- "label": "安宁区",
- "value": "620105" },
- {
- "label": "红古区",
- "value": "620111" },
- {
- "label": "永登县",
- "value": "620121" },
- {
- "label": "皋兰县",
- "value": "620122" },
- {
- "label": "榆中县",
- "value": "620123" },
- {
- "label": "兰州新区",
- "value": "620171" }],
- [{
- "label": "嘉峪关市",
- "value": "620201" }],
- [{
- "label": "金川区",
- "value": "620302" },
- {
- "label": "永昌县",
- "value": "620321" }],
- [{
- "label": "白银区",
- "value": "620402" },
- {
- "label": "平川区",
- "value": "620403" },
- {
- "label": "靖远县",
- "value": "620421" },
- {
- "label": "会宁县",
- "value": "620422" },
- {
- "label": "景泰县",
- "value": "620423" }],
- [{
- "label": "秦州区",
- "value": "620502" },
- {
- "label": "麦积区",
- "value": "620503" },
- {
- "label": "清水县",
- "value": "620521" },
- {
- "label": "秦安县",
- "value": "620522" },
- {
- "label": "甘谷县",
- "value": "620523" },
- {
- "label": "武山县",
- "value": "620524" },
- {
- "label": "张家川回族自治县",
- "value": "620525" }],
- [{
- "label": "凉州区",
- "value": "620602" },
- {
- "label": "民勤县",
- "value": "620621" },
- {
- "label": "古浪县",
- "value": "620622" },
- {
- "label": "天祝藏族自治县",
- "value": "620623" }],
- [{
- "label": "甘州区",
- "value": "620702" },
- {
- "label": "肃南裕固族自治县",
- "value": "620721" },
- {
- "label": "民乐县",
- "value": "620722" },
- {
- "label": "临泽县",
- "value": "620723" },
- {
- "label": "高台县",
- "value": "620724" },
- {
- "label": "山丹县",
- "value": "620725" }],
- [{
- "label": "崆峒区",
- "value": "620802" },
- {
- "label": "泾川县",
- "value": "620821" },
- {
- "label": "灵台县",
- "value": "620822" },
- {
- "label": "崇信县",
- "value": "620823" },
- {
- "label": "华亭县",
- "value": "620824" },
- {
- "label": "庄浪县",
- "value": "620825" },
- {
- "label": "静宁县",
- "value": "620826" },
- {
- "label": "平凉工业园区",
- "value": "620871" }],
- [{
- "label": "肃州区",
- "value": "620902" },
- {
- "label": "金塔县",
- "value": "620921" },
- {
- "label": "瓜州县",
- "value": "620922" },
- {
- "label": "肃北蒙古族自治县",
- "value": "620923" },
- {
- "label": "阿克塞哈萨克族自治县",
- "value": "620924" },
- {
- "label": "玉门市",
- "value": "620981" },
- {
- "label": "敦煌市",
- "value": "620982" }],
- [{
- "label": "西峰区",
- "value": "621002" },
- {
- "label": "庆城县",
- "value": "621021" },
- {
- "label": "环县",
- "value": "621022" },
- {
- "label": "华池县",
- "value": "621023" },
- {
- "label": "合水县",
- "value": "621024" },
- {
- "label": "正宁县",
- "value": "621025" },
- {
- "label": "宁县",
- "value": "621026" },
- {
- "label": "镇原县",
- "value": "621027" }],
- [{
- "label": "安定区",
- "value": "621102" },
- {
- "label": "通渭县",
- "value": "621121" },
- {
- "label": "陇西县",
- "value": "621122" },
- {
- "label": "渭源县",
- "value": "621123" },
- {
- "label": "临洮县",
- "value": "621124" },
- {
- "label": "漳县",
- "value": "621125" },
- {
- "label": "岷县",
- "value": "621126" }],
- [{
- "label": "武都区",
- "value": "621202" },
- {
- "label": "成县",
- "value": "621221" },
- {
- "label": "文县",
- "value": "621222" },
- {
- "label": "宕昌县",
- "value": "621223" },
- {
- "label": "康县",
- "value": "621224" },
- {
- "label": "西和县",
- "value": "621225" },
- {
- "label": "礼县",
- "value": "621226" },
- {
- "label": "徽县",
- "value": "621227" },
- {
- "label": "两当县",
- "value": "621228" }],
- [{
- "label": "临夏市",
- "value": "622901" },
- {
- "label": "临夏县",
- "value": "622921" },
- {
- "label": "康乐县",
- "value": "622922" },
- {
- "label": "永靖县",
- "value": "622923" },
- {
- "label": "广河县",
- "value": "622924" },
- {
- "label": "和政县",
- "value": "622925" },
- {
- "label": "东乡族自治县",
- "value": "622926" },
- {
- "label": "积石山保安族东乡族撒拉族自治县",
- "value": "622927" }],
- [{
- "label": "合作市",
- "value": "623001" },
- {
- "label": "临潭县",
- "value": "623021" },
- {
- "label": "卓尼县",
- "value": "623022" },
- {
- "label": "舟曲县",
- "value": "623023" },
- {
- "label": "迭部县",
- "value": "623024" },
- {
- "label": "玛曲县",
- "value": "623025" },
- {
- "label": "碌曲县",
- "value": "623026" },
- {
- "label": "夏河县",
- "value": "623027" }]],
- [
- [{
- "label": "城东区",
- "value": "630102" },
- {
- "label": "城中区",
- "value": "630103" },
- {
- "label": "城西区",
- "value": "630104" },
- {
- "label": "城北区",
- "value": "630105" },
- {
- "label": "大通回族土族自治县",
- "value": "630121" },
- {
- "label": "湟中县",
- "value": "630122" },
- {
- "label": "湟源县",
- "value": "630123" }],
- [{
- "label": "乐都区",
- "value": "630202" },
- {
- "label": "平安区",
- "value": "630203" },
- {
- "label": "民和回族土族自治县",
- "value": "630222" },
- {
- "label": "互助土族自治县",
- "value": "630223" },
- {
- "label": "化隆回族自治县",
- "value": "630224" },
- {
- "label": "循化撒拉族自治县",
- "value": "630225" }],
- [{
- "label": "门源回族自治县",
- "value": "632221" },
- {
- "label": "祁连县",
- "value": "632222" },
- {
- "label": "海晏县",
- "value": "632223" },
- {
- "label": "刚察县",
- "value": "632224" }],
- [{
- "label": "同仁县",
- "value": "632321" },
- {
- "label": "尖扎县",
- "value": "632322" },
- {
- "label": "泽库县",
- "value": "632323" },
- {
- "label": "河南蒙古族自治县",
- "value": "632324" }],
- [{
- "label": "共和县",
- "value": "632521" },
- {
- "label": "同德县",
- "value": "632522" },
- {
- "label": "贵德县",
- "value": "632523" },
- {
- "label": "兴海县",
- "value": "632524" },
- {
- "label": "贵南县",
- "value": "632525" }],
- [{
- "label": "玛沁县",
- "value": "632621" },
- {
- "label": "班玛县",
- "value": "632622" },
- {
- "label": "甘德县",
- "value": "632623" },
- {
- "label": "达日县",
- "value": "632624" },
- {
- "label": "久治县",
- "value": "632625" },
- {
- "label": "玛多县",
- "value": "632626" }],
- [{
- "label": "玉树市",
- "value": "632701" },
- {
- "label": "杂多县",
- "value": "632722" },
- {
- "label": "称多县",
- "value": "632723" },
- {
- "label": "治多县",
- "value": "632724" },
- {
- "label": "囊谦县",
- "value": "632725" },
- {
- "label": "曲麻莱县",
- "value": "632726" }],
- [{
- "label": "格尔木市",
- "value": "632801" },
- {
- "label": "德令哈市",
- "value": "632802" },
- {
- "label": "乌兰县",
- "value": "632821" },
- {
- "label": "都兰县",
- "value": "632822" },
- {
- "label": "天峻县",
- "value": "632823" },
- {
- "label": "大柴旦行政委员会",
- "value": "632857" },
- {
- "label": "冷湖行政委员会",
- "value": "632858" },
- {
- "label": "茫崖行政委员会",
- "value": "632859" }]],
- [
- [{
- "label": "兴庆区",
- "value": "640104" },
- {
- "label": "西夏区",
- "value": "640105" },
- {
- "label": "金凤区",
- "value": "640106" },
- {
- "label": "永宁县",
- "value": "640121" },
- {
- "label": "贺兰县",
- "value": "640122" },
- {
- "label": "灵武市",
- "value": "640181" }],
- [{
- "label": "大武口区",
- "value": "640202" },
- {
- "label": "惠农区",
- "value": "640205" },
- {
- "label": "平罗县",
- "value": "640221" }],
- [{
- "label": "利通区",
- "value": "640302" },
- {
- "label": "红寺堡区",
- "value": "640303" },
- {
- "label": "盐池县",
- "value": "640323" },
- {
- "label": "同心县",
- "value": "640324" },
- {
- "label": "青铜峡市",
- "value": "640381" }],
- [{
- "label": "原州区",
- "value": "640402" },
- {
- "label": "西吉县",
- "value": "640422" },
- {
- "label": "隆德县",
- "value": "640423" },
- {
- "label": "泾源县",
- "value": "640424" },
- {
- "label": "彭阳县",
- "value": "640425" }],
- [{
- "label": "沙坡头区",
- "value": "640502" },
- {
- "label": "中宁县",
- "value": "640521" },
- {
- "label": "海原县",
- "value": "640522" }]],
- [
- [{
- "label": "天山区",
- "value": "650102" },
- {
- "label": "沙依巴克区",
- "value": "650103" },
- {
- "label": "新市区",
- "value": "650104" },
- {
- "label": "水磨沟区",
- "value": "650105" },
- {
- "label": "头屯河区",
- "value": "650106" },
- {
- "label": "达坂城区",
- "value": "650107" },
- {
- "label": "米东区",
- "value": "650109" },
- {
- "label": "乌鲁木齐县",
- "value": "650121" },
- {
- "label": "乌鲁木齐经济技术开发区",
- "value": "650171" },
- {
- "label": "乌鲁木齐高新技术产业开发区",
- "value": "650172" }],
- [{
- "label": "独山子区",
- "value": "650202" },
- {
- "label": "克拉玛依区",
- "value": "650203" },
- {
- "label": "白碱滩区",
- "value": "650204" },
- {
- "label": "乌尔禾区",
- "value": "650205" }],
- [{
- "label": "高昌区",
- "value": "650402" },
- {
- "label": "鄯善县",
- "value": "650421" },
- {
- "label": "托克逊县",
- "value": "650422" }],
- [{
- "label": "伊州区",
- "value": "650502" },
- {
- "label": "巴里坤哈萨克自治县",
- "value": "650521" },
- {
- "label": "伊吾县",
- "value": "650522" }],
- [{
- "label": "昌吉市",
- "value": "652301" },
- {
- "label": "阜康市",
- "value": "652302" },
- {
- "label": "呼图壁县",
- "value": "652323" },
- {
- "label": "玛纳斯县",
- "value": "652324" },
- {
- "label": "奇台县",
- "value": "652325" },
- {
- "label": "吉木萨尔县",
- "value": "652327" },
- {
- "label": "木垒哈萨克自治县",
- "value": "652328" }],
- [{
- "label": "博乐市",
- "value": "652701" },
- {
- "label": "阿拉山口市",
- "value": "652702" },
- {
- "label": "精河县",
- "value": "652722" },
- {
- "label": "温泉县",
- "value": "652723" }],
- [{
- "label": "库尔勒市",
- "value": "652801" },
- {
- "label": "轮台县",
- "value": "652822" },
- {
- "label": "尉犁县",
- "value": "652823" },
- {
- "label": "若羌县",
- "value": "652824" },
- {
- "label": "且末县",
- "value": "652825" },
- {
- "label": "焉耆回族自治县",
- "value": "652826" },
- {
- "label": "和静县",
- "value": "652827" },
- {
- "label": "和硕县",
- "value": "652828" },
- {
- "label": "博湖县",
- "value": "652829" },
- {
- "label": "库尔勒经济技术开发区",
- "value": "652871" }],
- [{
- "label": "阿克苏市",
- "value": "652901" },
- {
- "label": "温宿县",
- "value": "652922" },
- {
- "label": "库车县",
- "value": "652923" },
- {
- "label": "沙雅县",
- "value": "652924" },
- {
- "label": "新和县",
- "value": "652925" },
- {
- "label": "拜城县",
- "value": "652926" },
- {
- "label": "乌什县",
- "value": "652927" },
- {
- "label": "阿瓦提县",
- "value": "652928" },
- {
- "label": "柯坪县",
- "value": "652929" }],
- [{
- "label": "阿图什市",
- "value": "653001" },
- {
- "label": "阿克陶县",
- "value": "653022" },
- {
- "label": "阿合奇县",
- "value": "653023" },
- {
- "label": "乌恰县",
- "value": "653024" }],
- [{
- "label": "喀什市",
- "value": "653101" },
- {
- "label": "疏附县",
- "value": "653121" },
- {
- "label": "疏勒县",
- "value": "653122" },
- {
- "label": "英吉沙县",
- "value": "653123" },
- {
- "label": "泽普县",
- "value": "653124" },
- {
- "label": "莎车县",
- "value": "653125" },
- {
- "label": "叶城县",
- "value": "653126" },
- {
- "label": "麦盖提县",
- "value": "653127" },
- {
- "label": "岳普湖县",
- "value": "653128" },
- {
- "label": "伽师县",
- "value": "653129" },
- {
- "label": "巴楚县",
- "value": "653130" },
- {
- "label": "塔什库尔干塔吉克自治县",
- "value": "653131" }],
- [{
- "label": "和田市",
- "value": "653201" },
- {
- "label": "和田县",
- "value": "653221" },
- {
- "label": "墨玉县",
- "value": "653222" },
- {
- "label": "皮山县",
- "value": "653223" },
- {
- "label": "洛浦县",
- "value": "653224" },
- {
- "label": "策勒县",
- "value": "653225" },
- {
- "label": "于田县",
- "value": "653226" },
- {
- "label": "民丰县",
- "value": "653227" }],
- [{
- "label": "伊宁市",
- "value": "654002" },
- {
- "label": "奎屯市",
- "value": "654003" },
- {
- "label": "霍尔果斯市",
- "value": "654004" },
- {
- "label": "伊宁县",
- "value": "654021" },
- {
- "label": "察布查尔锡伯自治县",
- "value": "654022" },
- {
- "label": "霍城县",
- "value": "654023" },
- {
- "label": "巩留县",
- "value": "654024" },
- {
- "label": "新源县",
- "value": "654025" },
- {
- "label": "昭苏县",
- "value": "654026" },
- {
- "label": "特克斯县",
- "value": "654027" },
- {
- "label": "尼勒克县",
- "value": "654028" }],
- [{
- "label": "塔城市",
- "value": "654201" },
- {
- "label": "乌苏市",
- "value": "654202" },
- {
- "label": "额敏县",
- "value": "654221" },
- {
- "label": "沙湾县",
- "value": "654223" },
- {
- "label": "托里县",
- "value": "654224" },
- {
- "label": "裕民县",
- "value": "654225" },
- {
- "label": "和布克赛尔蒙古自治县",
- "value": "654226" }],
- [{
- "label": "阿勒泰市",
- "value": "654301" },
- {
- "label": "布尔津县",
- "value": "654321" },
- {
- "label": "富蕴县",
- "value": "654322" },
- {
- "label": "福海县",
- "value": "654323" },
- {
- "label": "哈巴河县",
- "value": "654324" },
- {
- "label": "青河县",
- "value": "654325" },
- {
- "label": "吉木乃县",
- "value": "654326" }],
- [{
- "label": "石河子市",
- "value": "659001" },
- {
- "label": "阿拉尔市",
- "value": "659002" },
- {
- "label": "图木舒克市",
- "value": "659003" },
- {
- "label": "五家渠市",
- "value": "659004" },
- {
- "label": "铁门关市",
- "value": "659006" }]],
- [
- [{
- "label": "台北",
- "value": "660101" }],
- [{
- "label": "高雄",
- "value": "660201" }],
- [{
- "label": "基隆",
- "value": "660301" }],
- [{
- "label": "台中",
- "value": "660401" }],
- [{
- "label": "台南",
- "value": "660501" }],
- [{
- "label": "新竹",
- "value": "660601" }],
- [{
- "label": "嘉义",
- "value": "660701" }],
- [{
- "label": "宜兰",
- "value": "660801" }],
- [{
- "label": "桃园",
- "value": "660901" }],
- [{
- "label": "苗栗",
- "value": "661001" }],
- [{
- "label": "彰化",
- "value": "661101" }],
- [{
- "label": "南投",
- "value": "661201" }],
- [{
- "label": "云林",
- "value": "661301" }],
- [{
- "label": "屏东",
- "value": "661401" }],
- [{
- "label": "台东",
- "value": "661501" }],
- [{
- "label": "花莲",
- "value": "661601" }],
- [{
- "label": "澎湖",
- "value": "661701" }]],
- [
- [{
- "label": "香港岛",
- "value": "670101" }],
- [{
- "label": "九龙",
- "value": "670201" }],
- [{
- "label": "新界",
- "value": "670301" }]],
- [
- [{
- "label": "澳门半岛",
- "value": "680101" }],
- [{
- "label": "氹仔岛",
- "value": "680201" }],
- [{
- "label": "路环岛",
- "value": "680301" }],
- [{
- "label": "路氹城",
- "value": "680401" }]]];var _default =
- areaData;exports.default = _default;
- /***/ }),
- /***/ 4:
- /*!*************************************!*\
- !*** D:/uinapp/myuinapp/pages.json ***!
- \*************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- /***/ }),
- /***/ 5:
- /*!*******************************************************!*\
- !*** ./node_modules/@dcloudio/uni-stat/dist/index.js ***!
- \*******************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- /* WEBPACK VAR INJECTION */(function(uni) {var _package = __webpack_require__(/*! ../package.json */ 6);function _possibleConstructorReturn(self, call) {if (call && (typeof call === "object" || typeof call === "function")) {return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self) {if (self === void 0) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o) {_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {return o.__proto__ || Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function");}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } });if (superClass) _setPrototypeOf(subClass, superClass);}function _setPrototypeOf(o, p) {_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {o.__proto__ = p;return o;};return _setPrototypeOf(o, p);}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 STAT_VERSION = _package.version;
- var STAT_URL = 'https://tongji.dcloud.io/uni/stat';
- var STAT_H5_URL = 'https://tongji.dcloud.io/uni/stat.gif';
- var PAGE_PVER_TIME = 1800;
- var APP_PVER_TIME = 300;
- var OPERATING_TIME = 10;
- var UUID_KEY = '__DC_STAT_UUID';
- var UUID_VALUE = '__DC_UUID_VALUE';
- function getUuid() {
- var uuid = '';
- if (getPlatformName() === 'n') {
- try {
- uuid = plus.runtime.getDCloudId();
- } catch (e) {
- uuid = '';
- }
- return uuid;
- }
- try {
- uuid = uni.getStorageSync(UUID_KEY);
- } catch (e) {
- uuid = UUID_VALUE;
- }
- if (!uuid) {
- uuid = Date.now() + '' + Math.floor(Math.random() * 1e7);
- try {
- uni.setStorageSync(UUID_KEY, uuid);
- } catch (e) {
- uni.setStorageSync(UUID_KEY, UUID_VALUE);
- }
- }
- return uuid;
- }
- var getSgin = function getSgin(statData) {
- var arr = Object.keys(statData);
- var sortArr = arr.sort();
- var sgin = {};
- var sginStr = '';
- for (var i in sortArr) {
- sgin[sortArr[i]] = statData[sortArr[i]];
- sginStr += sortArr[i] + '=' + statData[sortArr[i]] + '&';
- }
- // const options = sginStr.substr(0, sginStr.length - 1)
- // sginStr = sginStr.substr(0, sginStr.length - 1) + '&key=' + STAT_KEY;
- // const si = crypto.createHash('md5').update(sginStr).digest('hex');
- return {
- sign: '',
- options: sginStr.substr(0, sginStr.length - 1) };
- };
- var getSplicing = function getSplicing(data) {
- var str = '';
- for (var i in data) {
- str += i + '=' + data[i] + '&';
- }
- return str.substr(0, str.length - 1);
- };
- var getTime = function getTime() {
- return parseInt(new Date().getTime() / 1000);
- };
- var getPlatformName = function getPlatformName() {
- var platformList = {
- 'app-plus': 'n',
- 'h5': 'h5',
- 'mp-weixin': 'wx',
- 'mp-alipay': 'ali',
- 'mp-baidu': 'bd',
- 'mp-toutiao': 'tt',
- 'mp-qq': 'qq' };
- return platformList["mp-weixin"];
- };
- var getPackName = function getPackName() {
- var packName = '';
- if (getPlatformName() === 'wx' || getPlatformName() === 'qq') {
- // 兼容微信小程序低版本基础库
- if (uni.canIUse('getAccountInfoSync')) {
- packName = uni.getAccountInfoSync().miniProgram.appId || '';
- }
- }
- return packName;
- };
- var getVersion = function getVersion() {
- return getPlatformName() === 'n' ? plus.runtime.version : '';
- };
- var getChannel = function getChannel() {
- var platformName = getPlatformName();
- var channel = '';
- if (platformName === 'n') {
- channel = plus.runtime.channel;
- }
- return channel;
- };
- var getScene = function getScene(options) {
- var platformName = getPlatformName();
- var scene = '';
- if (options) {
- return options;
- }
- if (platformName === 'wx') {
- scene = uni.getLaunchOptionsSync().scene;
- }
- return scene;
- };
- var First__Visit__Time__KEY = 'First__Visit__Time';
- var Last__Visit__Time__KEY = 'Last__Visit__Time';
- var getFirstVisitTime = function getFirstVisitTime() {
- var timeStorge = uni.getStorageSync(First__Visit__Time__KEY);
- var time = 0;
- if (timeStorge) {
- time = timeStorge;
- } else {
- time = getTime();
- uni.setStorageSync(First__Visit__Time__KEY, time);
- uni.removeStorageSync(Last__Visit__Time__KEY);
- }
- return time;
- };
- var getLastVisitTime = function getLastVisitTime() {
- var timeStorge = uni.getStorageSync(Last__Visit__Time__KEY);
- var time = 0;
- if (timeStorge) {
- time = timeStorge;
- } else {
- time = '';
- }
- uni.setStorageSync(Last__Visit__Time__KEY, getTime());
- return time;
- };
- var PAGE_RESIDENCE_TIME = '__page__residence__time';
- var First_Page_residence_time = 0;
- var Last_Page_residence_time = 0;
- var setPageResidenceTime = function setPageResidenceTime() {
- First_Page_residence_time = getTime();
- if (getPlatformName() === 'n') {
- uni.setStorageSync(PAGE_RESIDENCE_TIME, getTime());
- }
- return First_Page_residence_time;
- };
- var getPageResidenceTime = function getPageResidenceTime() {
- Last_Page_residence_time = getTime();
- if (getPlatformName() === 'n') {
- First_Page_residence_time = uni.getStorageSync(PAGE_RESIDENCE_TIME);
- }
- return Last_Page_residence_time - First_Page_residence_time;
- };
- var TOTAL__VISIT__COUNT = 'Total__Visit__Count';
- var getTotalVisitCount = function getTotalVisitCount() {
- var timeStorge = uni.getStorageSync(TOTAL__VISIT__COUNT);
- var count = 1;
- if (timeStorge) {
- count = timeStorge;
- count++;
- }
- uni.setStorageSync(TOTAL__VISIT__COUNT, count);
- return count;
- };
- var GetEncodeURIComponentOptions = function GetEncodeURIComponentOptions(statData) {
- var data = {};
- for (var prop in statData) {
- data[prop] = encodeURIComponent(statData[prop]);
- }
- return data;
- };
- var Set__First__Time = 0;
- var Set__Last__Time = 0;
- var getFirstTime = function getFirstTime() {
- var time = new Date().getTime();
- Set__First__Time = time;
- Set__Last__Time = 0;
- return time;
- };
- var getLastTime = function getLastTime() {
- var time = new Date().getTime();
- Set__Last__Time = time;
- return time;
- };
- var getResidenceTime = function getResidenceTime(type) {
- var residenceTime = 0;
- if (Set__First__Time !== 0) {
- residenceTime = Set__Last__Time - Set__First__Time;
- }
- residenceTime = parseInt(residenceTime / 1000);
- residenceTime = residenceTime < 1 ? 1 : residenceTime;
- if (type === 'app') {
- var overtime = residenceTime > APP_PVER_TIME ? true : false;
- return {
- residenceTime: residenceTime,
- overtime: overtime };
- }
- if (type === 'page') {
- var _overtime = residenceTime > PAGE_PVER_TIME ? true : false;
- return {
- residenceTime: residenceTime,
- overtime: _overtime };
- }
- return {
- residenceTime: residenceTime };
- };
- var getRoute = function getRoute() {
- var pages = getCurrentPages();
- var page = pages[pages.length - 1];
- var _self = page.$vm;
- if (getPlatformName() === 'bd') {
- return _self.$mp && _self.$mp.page.is;
- } else {
- return _self.$scope && _self.$scope.route || _self.$mp && _self.$mp.page.route;
- }
- };
- var getPageRoute = function getPageRoute(self) {
- var pages = getCurrentPages();
- var page = pages[pages.length - 1];
- var _self = page.$vm;
- var query = self._query;
- var str = query && JSON.stringify(query) !== '{}' ? '?' + JSON.stringify(query) : '';
- // clear
- self._query = '';
- if (getPlatformName() === 'bd') {
- return _self.$mp && _self.$mp.page.is + str;
- } else {
- return _self.$scope && _self.$scope.route + str || _self.$mp && _self.$mp.page.route + str;
- }
- };
- var getPageTypes = function getPageTypes(self) {
- if (self.mpType === 'page' || self.$mp && self.$mp.mpType === 'page' || self.$options.mpType === 'page') {
- return true;
- }
- return false;
- };
- var calibration = function calibration(eventName, options) {
- // login 、 share 、pay_success 、pay_fail 、register 、title
- if (!eventName) {
- console.error("uni.report \u7F3A\u5C11 [eventName] \u53C2\u6570");
- return true;
- }
- if (typeof eventName !== 'string') {
- console.error("uni.report [eventName] \u53C2\u6570\u7C7B\u578B\u9519\u8BEF,\u53EA\u80FD\u4E3A String \u7C7B\u578B");
- return true;
- }
- if (eventName.length > 255) {
- console.error("uni.report [eventName] \u53C2\u6570\u957F\u5EA6\u4E0D\u80FD\u5927\u4E8E 255");
- return true;
- }
- if (typeof options !== 'string' && typeof options !== 'object') {
- console.error("uni.report [options] \u53C2\u6570\u7C7B\u578B\u9519\u8BEF,\u53EA\u80FD\u4E3A String \u6216 Object \u7C7B\u578B");
- return true;
- }
- if (typeof options === 'string' && options.length > 255) {
- console.error("uni.report [options] \u53C2\u6570\u957F\u5EA6\u4E0D\u80FD\u5927\u4E8E 255");
- return true;
- }
- if (eventName === 'title' && typeof options !== 'string') {
- console.error('uni.report [eventName] 参数为 title 时,[options] 参数只能为 String 类型');
- return true;
- }
- };
- var PagesJson = __webpack_require__(/*! uni-pages?{"type":"style"} */ 7).default;
- var statConfig = __webpack_require__(/*! uni-stat-config */ 8).default || __webpack_require__(/*! uni-stat-config */ 8);
- var resultOptions = uni.getSystemInfoSync();var
- Util = /*#__PURE__*/function () {
- function Util() {_classCallCheck(this, Util);
- this.self = '';
- this._retry = 0;
- this._platform = '';
- this._query = {};
- this._navigationBarTitle = {
- config: '',
- page: '',
- report: '',
- lt: '' };
- this._operatingTime = 0;
- this._reportingRequestData = {
- '1': [],
- '11': [] };
- this.__prevent_triggering = false;
- this.__licationHide = false;
- this.__licationShow = false;
- this._lastPageRoute = '';
- this.statData = {
- uuid: getUuid(),
- ut: getPlatformName(),
- mpn: getPackName(),
- ak: statConfig.appid,
- usv: STAT_VERSION,
- v: getVersion(),
- ch: getChannel(),
- cn: '',
- pn: '',
- ct: '',
- t: getTime(),
- tt: '',
- p: resultOptions.platform === 'android' ? 'a' : 'i',
- brand: resultOptions.brand || '',
- md: resultOptions.model,
- sv: resultOptions.system.replace(/(Android|iOS)\s/, ''),
- mpsdk: resultOptions.SDKVersion || '',
- mpv: resultOptions.version || '',
- lang: resultOptions.language,
- pr: resultOptions.pixelRatio,
- ww: resultOptions.windowWidth,
- wh: resultOptions.windowHeight,
- sw: resultOptions.screenWidth,
- sh: resultOptions.screenHeight };
- }_createClass(Util, [{ key: "_applicationShow", value: function _applicationShow()
- {
- if (this.__licationHide) {
- getLastTime();
- var time = getResidenceTime('app');
- if (time.overtime) {
- var options = {
- path: this._lastPageRoute,
- scene: this.statData.sc };
- this._sendReportRequest(options);
- }
- this.__licationHide = false;
- }
- } }, { key: "_applicationHide", value: function _applicationHide(
- self, type) {
- this.__licationHide = true;
- getLastTime();
- var time = getResidenceTime();
- getFirstTime();
- var route = getPageRoute(this);
- this._sendHideRequest({
- urlref: route,
- urlref_ts: time.residenceTime },
- type);
- } }, { key: "_pageShow", value: function _pageShow()
- {
- var route = getPageRoute(this);
- var routepath = getRoute();
- this._navigationBarTitle.config = PagesJson &&
- PagesJson.pages[routepath] &&
- PagesJson.pages[routepath].titleNView &&
- PagesJson.pages[routepath].titleNView.titleText ||
- PagesJson &&
- PagesJson.pages[routepath] &&
- PagesJson.pages[routepath].navigationBarTitleText || '';
- if (this.__licationShow) {
- getFirstTime();
- this.__licationShow = false;
- // console.log('这是 onLauch 之后执行的第一次 pageShow ,为下次记录时间做准备');
- this._lastPageRoute = route;
- return;
- }
- getLastTime();
- this._lastPageRoute = route;
- var time = getResidenceTime('page');
- if (time.overtime) {
- var options = {
- path: this._lastPageRoute,
- scene: this.statData.sc };
- this._sendReportRequest(options);
- }
- getFirstTime();
- } }, { key: "_pageHide", value: function _pageHide()
- {
- if (!this.__licationHide) {
- getLastTime();
- var time = getResidenceTime('page');
- this._sendPageRequest({
- url: this._lastPageRoute,
- urlref: this._lastPageRoute,
- urlref_ts: time.residenceTime });
- this._navigationBarTitle = {
- config: '',
- page: '',
- report: '',
- lt: '' };
- return;
- }
- } }, { key: "_login", value: function _login()
- {
- this._sendEventRequest({
- key: 'login' },
- 0);
- } }, { key: "_share", value: function _share()
- {
- this._sendEventRequest({
- key: 'share' },
- 0);
- } }, { key: "_payment", value: function _payment(
- key) {
- this._sendEventRequest({
- key: key },
- 0);
- } }, { key: "_sendReportRequest", value: function _sendReportRequest(
- options) {
- this._navigationBarTitle.lt = '1';
- var query = options.query && JSON.stringify(options.query) !== '{}' ? '?' + JSON.stringify(options.query) : '';
- this.statData.lt = '1';
- this.statData.url = options.path + query || '';
- this.statData.t = getTime();
- this.statData.sc = getScene(options.scene);
- this.statData.fvts = getFirstVisitTime();
- this.statData.lvts = getLastVisitTime();
- this.statData.tvc = getTotalVisitCount();
- if (getPlatformName() === 'n') {
- this.getProperty();
- } else {
- this.getNetworkInfo();
- }
- } }, { key: "_sendPageRequest", value: function _sendPageRequest(
- opt) {var
- url =
- opt.url,urlref = opt.urlref,urlref_ts = opt.urlref_ts;
- this._navigationBarTitle.lt = '11';
- var options = {
- ak: this.statData.ak,
- uuid: this.statData.uuid,
- lt: '11',
- ut: this.statData.ut,
- url: url,
- tt: this.statData.tt,
- urlref: urlref,
- urlref_ts: urlref_ts,
- ch: this.statData.ch,
- usv: this.statData.usv,
- t: getTime(),
- p: this.statData.p };
- this.request(options);
- } }, { key: "_sendHideRequest", value: function _sendHideRequest(
- opt, type) {var
- urlref =
- opt.urlref,urlref_ts = opt.urlref_ts;
- var options = {
- ak: this.statData.ak,
- uuid: this.statData.uuid,
- lt: '3',
- ut: this.statData.ut,
- urlref: urlref,
- urlref_ts: urlref_ts,
- ch: this.statData.ch,
- usv: this.statData.usv,
- t: getTime(),
- p: this.statData.p };
- this.request(options, type);
- } }, { key: "_sendEventRequest", value: function _sendEventRequest()
- {var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},_ref$key = _ref.key,key = _ref$key === void 0 ? '' : _ref$key,_ref$value = _ref.value,value = _ref$value === void 0 ? "" : _ref$value;
- var route = this._lastPageRoute;
- var options = {
- ak: this.statData.ak,
- uuid: this.statData.uuid,
- lt: '21',
- ut: this.statData.ut,
- url: route,
- ch: this.statData.ch,
- e_n: key,
- e_v: typeof value === 'object' ? JSON.stringify(value) : value.toString(),
- usv: this.statData.usv,
- t: getTime(),
- p: this.statData.p };
- this.request(options);
- } }, { key: "getNetworkInfo", value: function getNetworkInfo()
- {var _this = this;
- uni.getNetworkType({
- success: function success(result) {
- _this.statData.net = result.networkType;
- _this.getLocation();
- } });
- } }, { key: "getProperty", value: function getProperty()
- {var _this2 = this;
- plus.runtime.getProperty(plus.runtime.appid, function (wgtinfo) {
- _this2.statData.v = wgtinfo.version || '';
- _this2.getNetworkInfo();
- });
- } }, { key: "getLocation", value: function getLocation()
- {var _this3 = this;
- if (statConfig.getLocation) {
- uni.getLocation({
- type: 'wgs84',
- geocode: true,
- success: function success(result) {
- if (result.address) {
- _this3.statData.cn = result.address.country;
- _this3.statData.pn = result.address.province;
- _this3.statData.ct = result.address.city;
- }
- _this3.statData.lat = result.latitude;
- _this3.statData.lng = result.longitude;
- _this3.request(_this3.statData);
- } });
- } else {
- this.statData.lat = 0;
- this.statData.lng = 0;
- this.request(this.statData);
- }
- } }, { key: "request", value: function request(
- data, type) {var _this4 = this;
- var time = getTime();
- var title = this._navigationBarTitle;
- data.ttn = title.page;
- data.ttpj = title.config;
- data.ttc = title.report;
- var requestData = this._reportingRequestData;
- if (getPlatformName() === 'n') {
- requestData = uni.getStorageSync('__UNI__STAT__DATA') || {};
- }
- if (!requestData[data.lt]) {
- requestData[data.lt] = [];
- }
- requestData[data.lt].push(data);
- if (getPlatformName() === 'n') {
- uni.setStorageSync('__UNI__STAT__DATA', requestData);
- }
- if (getPageResidenceTime() < OPERATING_TIME && !type) {
- return;
- }
- var uniStatData = this._reportingRequestData;
- if (getPlatformName() === 'n') {
- uniStatData = uni.getStorageSync('__UNI__STAT__DATA');
- }
- // 时间超过,重新获取时间戳
- setPageResidenceTime();
- var firstArr = [];
- var contentArr = [];
- var lastArr = [];var _loop = function _loop(
- i) {
- var rd = uniStatData[i];
- rd.forEach(function (elm) {
- var newData = getSplicing(elm);
- if (i === 0) {
- firstArr.push(newData);
- } else if (i === 3) {
- lastArr.push(newData);
- } else {
- contentArr.push(newData);
- }
- });};for (var i in uniStatData) {_loop(i);
- }
- firstArr.push.apply(firstArr, contentArr.concat(lastArr));
- var optionsData = {
- usv: STAT_VERSION, //统计 SDK 版本号
- t: time, //发送请求时的时间戮
- requests: JSON.stringify(firstArr) };
- this._reportingRequestData = {};
- if (getPlatformName() === 'n') {
- uni.removeStorageSync('__UNI__STAT__DATA');
- }
- if (data.ut === 'h5') {
- this.imageRequest(optionsData);
- return;
- }
- if (getPlatformName() === 'n' && this.statData.p === 'a') {
- setTimeout(function () {
- _this4._sendRequest(optionsData);
- }, 200);
- return;
- }
- this._sendRequest(optionsData);
- } }, { key: "_sendRequest", value: function _sendRequest(
- optionsData) {var _this5 = this;
- uni.request({
- url: STAT_URL,
- method: 'POST',
- // header: {
- // 'content-type': 'application/json' // 默认值
- // },
- data: optionsData,
- success: function success() {
- // if (process.env.NODE_ENV === 'development') {
- // console.log('stat request success');
- // }
- },
- fail: function fail(e) {
- if (++_this5._retry < 3) {
- setTimeout(function () {
- _this5._sendRequest(optionsData);
- }, 1000);
- }
- } });
- }
- /**
- * h5 请求
- */ }, { key: "imageRequest", value: function imageRequest(
- data) {
- var image = new Image();
- var options = getSgin(GetEncodeURIComponentOptions(data)).options;
- image.src = STAT_H5_URL + '?' + options;
- } }, { key: "sendEvent", value: function sendEvent(
- key, value) {
- // 校验 type 参数
- if (calibration(key, value)) return;
- if (key === 'title') {
- this._navigationBarTitle.report = value;
- return;
- }
- this._sendEventRequest({
- key: key,
- value: typeof value === 'object' ? JSON.stringify(value) : value },
- 1);
- } }]);return Util;}();var
- Stat = /*#__PURE__*/function (_Util) {_inherits(Stat, _Util);_createClass(Stat, null, [{ key: "getInstance", value: function getInstance()
- {
- if (!this.instance) {
- this.instance = new Stat();
- }
- return this.instance;
- } }]);
- function Stat() {var _this6;_classCallCheck(this, Stat);
- _this6 = _possibleConstructorReturn(this, _getPrototypeOf(Stat).call(this));
- _this6.instance = null;
- // 注册拦截器
- if (typeof uni.addInterceptor === 'function' && "development" !== 'development') {
- _this6.addInterceptorInit();
- _this6.interceptLogin();
- _this6.interceptShare(true);
- _this6.interceptRequestPayment();
- }return _this6;
- }_createClass(Stat, [{ key: "addInterceptorInit", value: function addInterceptorInit()
- {
- var self = this;
- uni.addInterceptor('setNavigationBarTitle', {
- invoke: function invoke(args) {
- self._navigationBarTitle.page = args.title;
- } });
- } }, { key: "interceptLogin", value: function interceptLogin()
- {
- var self = this;
- uni.addInterceptor('login', {
- complete: function complete() {
- self._login();
- } });
- } }, { key: "interceptShare", value: function interceptShare(
- type) {
- var self = this;
- if (!type) {
- self._share();
- return;
- }
- uni.addInterceptor('share', {
- success: function success() {
- self._share();
- },
- fail: function fail() {
- self._share();
- } });
- } }, { key: "interceptRequestPayment", value: function interceptRequestPayment()
- {
- var self = this;
- uni.addInterceptor('requestPayment', {
- success: function success() {
- self._payment('pay_success');
- },
- fail: function fail() {
- self._payment('pay_fail');
- } });
- } }, { key: "report", value: function report(
- options, self) {
- this.self = self;
- // if (process.env.NODE_ENV === 'development') {
- // console.log('report init');
- // }
- setPageResidenceTime();
- this.__licationShow = true;
- this._sendReportRequest(options, true);
- } }, { key: "load", value: function load(
- options, self) {
- if (!self.$scope && !self.$mp) {
- var page = getCurrentPages();
- self.$scope = page[page.length - 1];
- }
- this.self = self;
- this._query = options;
- } }, { key: "show", value: function show(
- self) {
- this.self = self;
- if (getPageTypes(self)) {
- this._pageShow(self);
- } else {
- this._applicationShow(self);
- }
- } }, { key: "ready", value: function ready(
- self) {
- // this.self = self;
- // if (getPageTypes(self)) {
- // this._pageShow(self);
- // }
- } }, { key: "hide", value: function hide(
- self) {
- this.self = self;
- if (getPageTypes(self)) {
- this._pageHide(self);
- } else {
- this._applicationHide(self, true);
- }
- } }, { key: "error", value: function error(
- em) {
- if (this._platform === 'devtools') {
- if (true) {
- console.info('当前运行环境为开发者工具,不上报数据。');
- }
- // return;
- }
- var emVal = '';
- if (!em.message) {
- emVal = JSON.stringify(em);
- } else {
- emVal = em.stack;
- }
- var options = {
- ak: this.statData.ak,
- uuid: this.statData.uuid,
- lt: '31',
- ut: this.statData.ut,
- ch: this.statData.ch,
- mpsdk: this.statData.mpsdk,
- mpv: this.statData.mpv,
- v: this.statData.v,
- em: emVal,
- usv: this.statData.usv,
- t: getTime(),
- p: this.statData.p };
- this.request(options);
- } }]);return Stat;}(Util);
- var stat = Stat.getInstance();
- var isHide = false;
- var lifecycle = {
- onLaunch: function onLaunch(options) {
- stat.report(options, this);
- },
- onReady: function onReady() {
- stat.ready(this);
- },
- onLoad: function onLoad(options) {
- stat.load(options, this);
- // 重写分享,获取分享上报事件
- if (this.$scope && this.$scope.onShareAppMessage) {
- var oldShareAppMessage = this.$scope.onShareAppMessage;
- this.$scope.onShareAppMessage = function (options) {
- stat.interceptShare(false);
- return oldShareAppMessage.call(this, options);
- };
- }
- },
- onShow: function onShow() {
- isHide = false;
- stat.show(this);
- },
- onHide: function onHide() {
- isHide = true;
- stat.hide(this);
- },
- onUnload: function onUnload() {
- if (isHide) {
- isHide = false;
- return;
- }
- stat.hide(this);
- },
- onError: function onError(e) {
- stat.error(e);
- } };
- function main() {
- if (true) {
- uni.report = function (type, options) {};
- } else { var Vue; }
- }
- main();
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
- /***/ }),
- /***/ 58:
- /*!**********************************************************!*\
- !*** ./node_modules/@babel/runtime/regenerator/index.js ***!
- \**********************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- module.exports = __webpack_require__(/*! regenerator-runtime */ 59);
- /***/ }),
- /***/ 59:
- /*!************************************************************!*\
- !*** ./node_modules/regenerator-runtime/runtime-module.js ***!
- \************************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- /**
- * Copyright (c) 2014-present, Facebook, Inc.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */
- // This method of obtaining a reference to the global object needs to be
- // kept identical to the way it is obtained in runtime.js
- var g = (function() {
- return this || (typeof self === "object" && self);
- })() || Function("return this")();
- // Use `getOwnPropertyNames` because not all browsers support calling
- // `hasOwnProperty` on the global `self` object in a worker. See #183.
- var hadRuntime = g.regeneratorRuntime &&
- Object.getOwnPropertyNames(g).indexOf("regeneratorRuntime") >= 0;
- // Save the old regeneratorRuntime in case it needs to be restored later.
- var oldRuntime = hadRuntime && g.regeneratorRuntime;
- // Force reevalutation of runtime.js.
- g.regeneratorRuntime = undefined;
- module.exports = __webpack_require__(/*! ./runtime */ 60);
- if (hadRuntime) {
- // Restore the original runtime.
- g.regeneratorRuntime = oldRuntime;
- } else {
- // Remove the global property added by runtime.js.
- try {
- delete g.regeneratorRuntime;
- } catch(e) {
- g.regeneratorRuntime = undefined;
- }
- }
- /***/ }),
- /***/ 6:
- /*!******************************************************!*\
- !*** ./node_modules/@dcloudio/uni-stat/package.json ***!
- \******************************************************/
- /*! exports provided: _from, _id, _inBundle, _integrity, _location, _phantomChildren, _requested, _requiredBy, _resolved, _shasum, _spec, _where, author, bugs, bundleDependencies, deprecated, description, devDependencies, files, gitHead, homepage, license, main, name, repository, scripts, version, default */
- /***/ (function(module) {
- module.exports = {"_from":"@dcloudio/uni-stat@next","_id":"@dcloudio/uni-stat@2.0.0-26820200330001","_inBundle":false,"_integrity":"sha512-Qzo5LcBl+abS7DvpyTXBYW2VVYHVcHBewduQecjn/gbzAn9e90aOVn02/2VZ82wV6TBiDXbGyloXojOY3InzWA==","_location":"/@dcloudio/uni-stat","_phantomChildren":{},"_requested":{"type":"tag","registry":true,"raw":"@dcloudio/uni-stat@next","name":"@dcloudio/uni-stat","escapedName":"@dcloudio%2funi-stat","scope":"@dcloudio","rawSpec":"next","saveSpec":null,"fetchSpec":"next"},"_requiredBy":["#USER","/","/@dcloudio/vue-cli-plugin-uni"],"_resolved":"https://registry.npmjs.org/@dcloudio/uni-stat/-/uni-stat-2.0.0-26820200330001.tgz","_shasum":"880c5c5a4920bb35e9cf691eeb7427a7bf67ffd7","_spec":"@dcloudio/uni-stat@next","_where":"/Users/guoshengqiang/Documents/dcloud-plugins/release/uniapp-cli","author":"","bugs":{"url":"https://github.com/dcloudio/uni-app/issues"},"bundleDependencies":false,"deprecated":false,"description":"","devDependencies":{"@babel/core":"^7.5.5","@babel/preset-env":"^7.5.5","eslint":"^6.1.0","rollup":"^1.19.3","rollup-plugin-babel":"^4.3.3","rollup-plugin-clear":"^2.0.7","rollup-plugin-commonjs":"^10.0.2","rollup-plugin-copy":"^3.1.0","rollup-plugin-eslint":"^7.0.0","rollup-plugin-json":"^4.0.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-replace":"^2.2.0","rollup-plugin-uglify":"^6.0.2"},"files":["dist","package.json","LICENSE"],"gitHead":"57ef7f7b5b6164a74ec425ff12f9fe0a1147841a","homepage":"https://github.com/dcloudio/uni-app#readme","license":"Apache-2.0","main":"dist/index.js","name":"@dcloudio/uni-stat","repository":{"type":"git","url":"git+https://github.com/dcloudio/uni-app.git","directory":"packages/uni-stat"},"scripts":{"build":"NODE_ENV=production rollup -c rollup.config.js","dev":"NODE_ENV=development rollup -w -c rollup.config.js"},"version":"2.0.0-26820200330001"};
- /***/ }),
- /***/ 60:
- /*!*****************************************************!*\
- !*** ./node_modules/regenerator-runtime/runtime.js ***!
- \*****************************************************/
- /*! no static exports found */
- /***/ (function(module, exports) {
- /**
- * Copyright (c) 2014-present, Facebook, Inc.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */
- !(function(global) {
- "use strict";
- var Op = Object.prototype;
- var hasOwn = Op.hasOwnProperty;
- var undefined; // More compressible than void 0.
- var $Symbol = typeof Symbol === "function" ? Symbol : {};
- var iteratorSymbol = $Symbol.iterator || "@@iterator";
- var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
- var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
- var inModule = typeof module === "object";
- var runtime = global.regeneratorRuntime;
- if (runtime) {
- if (inModule) {
- // If regeneratorRuntime is defined globally and we're in a module,
- // make the exports object identical to regeneratorRuntime.
- module.exports = runtime;
- }
- // Don't bother evaluating the rest of this file if the runtime was
- // already defined globally.
- return;
- }
- // Define the runtime globally (as expected by generated code) as either
- // module.exports (if we're in a module) or a new, empty object.
- runtime = global.regeneratorRuntime = inModule ? module.exports : {};
- function wrap(innerFn, outerFn, self, tryLocsList) {
- // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
- var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
- var generator = Object.create(protoGenerator.prototype);
- var context = new Context(tryLocsList || []);
- // The ._invoke method unifies the implementations of the .next,
- // .throw, and .return methods.
- generator._invoke = makeInvokeMethod(innerFn, self, context);
- return generator;
- }
- runtime.wrap = wrap;
- // Try/catch helper to minimize deoptimizations. Returns a completion
- // record like context.tryEntries[i].completion. This interface could
- // have been (and was previously) designed to take a closure to be
- // invoked without arguments, but in all the cases we care about we
- // already have an existing method we want to call, so there's no need
- // to create a new function object. We can even get away with assuming
- // the method takes exactly one argument, since that happens to be true
- // in every case, so we don't have to touch the arguments object. The
- // only additional allocation required is the completion record, which
- // has a stable shape and so hopefully should be cheap to allocate.
- function tryCatch(fn, obj, arg) {
- try {
- return { type: "normal", arg: fn.call(obj, arg) };
- } catch (err) {
- return { type: "throw", arg: err };
- }
- }
- var GenStateSuspendedStart = "suspendedStart";
- var GenStateSuspendedYield = "suspendedYield";
- var GenStateExecuting = "executing";
- var GenStateCompleted = "completed";
- // Returning this object from the innerFn has the same effect as
- // breaking out of the dispatch switch statement.
- var ContinueSentinel = {};
- // Dummy constructor functions that we use as the .constructor and
- // .constructor.prototype properties for functions that return Generator
- // objects. For full spec compliance, you may wish to configure your
- // minifier not to mangle the names of these two functions.
- function Generator() {}
- function GeneratorFunction() {}
- function GeneratorFunctionPrototype() {}
- // This is a polyfill for %IteratorPrototype% for environments that
- // don't natively support it.
- var IteratorPrototype = {};
- IteratorPrototype[iteratorSymbol] = function () {
- return this;
- };
- var getProto = Object.getPrototypeOf;
- var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
- if (NativeIteratorPrototype &&
- NativeIteratorPrototype !== Op &&
- hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
- // This environment has a native %IteratorPrototype%; use it instead
- // of the polyfill.
- IteratorPrototype = NativeIteratorPrototype;
- }
- var Gp = GeneratorFunctionPrototype.prototype =
- Generator.prototype = Object.create(IteratorPrototype);
- GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
- GeneratorFunctionPrototype.constructor = GeneratorFunction;
- GeneratorFunctionPrototype[toStringTagSymbol] =
- GeneratorFunction.displayName = "GeneratorFunction";
- // Helper for defining the .next, .throw, and .return methods of the
- // Iterator interface in terms of a single ._invoke method.
- function defineIteratorMethods(prototype) {
- ["next", "throw", "return"].forEach(function(method) {
- prototype[method] = function(arg) {
- return this._invoke(method, arg);
- };
- });
- }
- runtime.isGeneratorFunction = function(genFun) {
- var ctor = typeof genFun === "function" && genFun.constructor;
- return ctor
- ? ctor === GeneratorFunction ||
- // For the native GeneratorFunction constructor, the best we can
- // do is to check its .name property.
- (ctor.displayName || ctor.name) === "GeneratorFunction"
- : false;
- };
- runtime.mark = function(genFun) {
- if (Object.setPrototypeOf) {
- Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
- } else {
- genFun.__proto__ = GeneratorFunctionPrototype;
- if (!(toStringTagSymbol in genFun)) {
- genFun[toStringTagSymbol] = "GeneratorFunction";
- }
- }
- genFun.prototype = Object.create(Gp);
- return genFun;
- };
- // Within the body of any async function, `await x` is transformed to
- // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
- // `hasOwn.call(value, "__await")` to determine if the yielded value is
- // meant to be awaited.
- runtime.awrap = function(arg) {
- return { __await: arg };
- };
- function AsyncIterator(generator) {
- function invoke(method, arg, resolve, reject) {
- var record = tryCatch(generator[method], generator, arg);
- if (record.type === "throw") {
- reject(record.arg);
- } else {
- var result = record.arg;
- var value = result.value;
- if (value &&
- typeof value === "object" &&
- hasOwn.call(value, "__await")) {
- return Promise.resolve(value.__await).then(function(value) {
- invoke("next", value, resolve, reject);
- }, function(err) {
- invoke("throw", err, resolve, reject);
- });
- }
- return Promise.resolve(value).then(function(unwrapped) {
- // When a yielded Promise is resolved, its final value becomes
- // the .value of the Promise<{value,done}> result for the
- // current iteration.
- result.value = unwrapped;
- resolve(result);
- }, function(error) {
- // If a rejected Promise was yielded, throw the rejection back
- // into the async generator function so it can be handled there.
- return invoke("throw", error, resolve, reject);
- });
- }
- }
- var previousPromise;
- function enqueue(method, arg) {
- function callInvokeWithMethodAndArg() {
- return new Promise(function(resolve, reject) {
- invoke(method, arg, resolve, reject);
- });
- }
- return previousPromise =
- // If enqueue has been called before, then we want to wait until
- // all previous Promises have been resolved before calling invoke,
- // so that results are always delivered in the correct order. If
- // enqueue has not been called before, then it is important to
- // call invoke immediately, without waiting on a callback to fire,
- // so that the async generator function has the opportunity to do
- // any necessary setup in a predictable way. This predictability
- // is why the Promise constructor synchronously invokes its
- // executor callback, and why async functions synchronously
- // execute code before the first await. Since we implement simple
- // async functions in terms of async generators, it is especially
- // important to get this right, even though it requires care.
- previousPromise ? previousPromise.then(
- callInvokeWithMethodAndArg,
- // Avoid propagating failures to Promises returned by later
- // invocations of the iterator.
- callInvokeWithMethodAndArg
- ) : callInvokeWithMethodAndArg();
- }
- // Define the unified helper method that is used to implement .next,
- // .throw, and .return (see defineIteratorMethods).
- this._invoke = enqueue;
- }
- defineIteratorMethods(AsyncIterator.prototype);
- AsyncIterator.prototype[asyncIteratorSymbol] = function () {
- return this;
- };
- runtime.AsyncIterator = AsyncIterator;
- // Note that simple async functions are implemented on top of
- // AsyncIterator objects; they just return a Promise for the value of
- // the final result produced by the iterator.
- runtime.async = function(innerFn, outerFn, self, tryLocsList) {
- var iter = new AsyncIterator(
- wrap(innerFn, outerFn, self, tryLocsList)
- );
- return runtime.isGeneratorFunction(outerFn)
- ? iter // If outerFn is a generator, return the full iterator.
- : iter.next().then(function(result) {
- return result.done ? result.value : iter.next();
- });
- };
- function makeInvokeMethod(innerFn, self, context) {
- var state = GenStateSuspendedStart;
- return function invoke(method, arg) {
- if (state === GenStateExecuting) {
- throw new Error("Generator is already running");
- }
- if (state === GenStateCompleted) {
- if (method === "throw") {
- throw arg;
- }
- // Be forgiving, per 25.3.3.3.3 of the spec:
- // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
- return doneResult();
- }
- context.method = method;
- context.arg = arg;
- while (true) {
- var delegate = context.delegate;
- if (delegate) {
- var delegateResult = maybeInvokeDelegate(delegate, context);
- if (delegateResult) {
- if (delegateResult === ContinueSentinel) continue;
- return delegateResult;
- }
- }
- if (context.method === "next") {
- // Setting context._sent for legacy support of Babel's
- // function.sent implementation.
- context.sent = context._sent = context.arg;
- } else if (context.method === "throw") {
- if (state === GenStateSuspendedStart) {
- state = GenStateCompleted;
- throw context.arg;
- }
- context.dispatchException(context.arg);
- } else if (context.method === "return") {
- context.abrupt("return", context.arg);
- }
- state = GenStateExecuting;
- var record = tryCatch(innerFn, self, context);
- if (record.type === "normal") {
- // If an exception is thrown from innerFn, we leave state ===
- // GenStateExecuting and loop back for another invocation.
- state = context.done
- ? GenStateCompleted
- : GenStateSuspendedYield;
- if (record.arg === ContinueSentinel) {
- continue;
- }
- return {
- value: record.arg,
- done: context.done
- };
- } else if (record.type === "throw") {
- state = GenStateCompleted;
- // Dispatch the exception by looping back around to the
- // context.dispatchException(context.arg) call above.
- context.method = "throw";
- context.arg = record.arg;
- }
- }
- };
- }
- // Call delegate.iterator[context.method](context.arg) and handle the
- // result, either by returning a { value, done } result from the
- // delegate iterator, or by modifying context.method and context.arg,
- // setting context.delegate to null, and returning the ContinueSentinel.
- function maybeInvokeDelegate(delegate, context) {
- var method = delegate.iterator[context.method];
- if (method === undefined) {
- // A .throw or .return when the delegate iterator has no .throw
- // method always terminates the yield* loop.
- context.delegate = null;
- if (context.method === "throw") {
- if (delegate.iterator.return) {
- // If the delegate iterator has a return method, give it a
- // chance to clean up.
- context.method = "return";
- context.arg = undefined;
- maybeInvokeDelegate(delegate, context);
- if (context.method === "throw") {
- // If maybeInvokeDelegate(context) changed context.method from
- // "return" to "throw", let that override the TypeError below.
- return ContinueSentinel;
- }
- }
- context.method = "throw";
- context.arg = new TypeError(
- "The iterator does not provide a 'throw' method");
- }
- return ContinueSentinel;
- }
- var record = tryCatch(method, delegate.iterator, context.arg);
- if (record.type === "throw") {
- context.method = "throw";
- context.arg = record.arg;
- context.delegate = null;
- return ContinueSentinel;
- }
- var info = record.arg;
- if (! info) {
- context.method = "throw";
- context.arg = new TypeError("iterator result is not an object");
- context.delegate = null;
- return ContinueSentinel;
- }
- if (info.done) {
- // Assign the result of the finished delegate to the temporary
- // variable specified by delegate.resultName (see delegateYield).
- context[delegate.resultName] = info.value;
- // Resume execution at the desired location (see delegateYield).
- context.next = delegate.nextLoc;
- // If context.method was "throw" but the delegate handled the
- // exception, let the outer generator proceed normally. If
- // context.method was "next", forget context.arg since it has been
- // "consumed" by the delegate iterator. If context.method was
- // "return", allow the original .return call to continue in the
- // outer generator.
- if (context.method !== "return") {
- context.method = "next";
- context.arg = undefined;
- }
- } else {
- // Re-yield the result returned by the delegate method.
- return info;
- }
- // The delegate iterator is finished, so forget it and continue with
- // the outer generator.
- context.delegate = null;
- return ContinueSentinel;
- }
- // Define Generator.prototype.{next,throw,return} in terms of the
- // unified ._invoke helper method.
- defineIteratorMethods(Gp);
- Gp[toStringTagSymbol] = "Generator";
- // A Generator should always return itself as the iterator object when the
- // @@iterator function is called on it. Some browsers' implementations of the
- // iterator prototype chain incorrectly implement this, causing the Generator
- // object to not be returned from this call. This ensures that doesn't happen.
- // See https://github.com/facebook/regenerator/issues/274 for more details.
- Gp[iteratorSymbol] = function() {
- return this;
- };
- Gp.toString = function() {
- return "[object Generator]";
- };
- function pushTryEntry(locs) {
- var entry = { tryLoc: locs[0] };
- if (1 in locs) {
- entry.catchLoc = locs[1];
- }
- if (2 in locs) {
- entry.finallyLoc = locs[2];
- entry.afterLoc = locs[3];
- }
- this.tryEntries.push(entry);
- }
- function resetTryEntry(entry) {
- var record = entry.completion || {};
- record.type = "normal";
- delete record.arg;
- entry.completion = record;
- }
- function Context(tryLocsList) {
- // The root entry object (effectively a try statement without a catch
- // or a finally block) gives us a place to store values thrown from
- // locations where there is no enclosing try statement.
- this.tryEntries = [{ tryLoc: "root" }];
- tryLocsList.forEach(pushTryEntry, this);
- this.reset(true);
- }
- runtime.keys = function(object) {
- var keys = [];
- for (var key in object) {
- keys.push(key);
- }
- keys.reverse();
- // Rather than returning an object with a next method, we keep
- // things simple and return the next function itself.
- return function next() {
- while (keys.length) {
- var key = keys.pop();
- if (key in object) {
- next.value = key;
- next.done = false;
- return next;
- }
- }
- // To avoid creating an additional object, we just hang the .value
- // and .done properties off the next function object itself. This
- // also ensures that the minifier will not anonymize the function.
- next.done = true;
- return next;
- };
- };
- function values(iterable) {
- if (iterable) {
- var iteratorMethod = iterable[iteratorSymbol];
- if (iteratorMethod) {
- return iteratorMethod.call(iterable);
- }
- if (typeof iterable.next === "function") {
- return iterable;
- }
- if (!isNaN(iterable.length)) {
- var i = -1, next = function next() {
- while (++i < iterable.length) {
- if (hasOwn.call(iterable, i)) {
- next.value = iterable[i];
- next.done = false;
- return next;
- }
- }
- next.value = undefined;
- next.done = true;
- return next;
- };
- return next.next = next;
- }
- }
- // Return an iterator with no values.
- return { next: doneResult };
- }
- runtime.values = values;
- function doneResult() {
- return { value: undefined, done: true };
- }
- Context.prototype = {
- constructor: Context,
- reset: function(skipTempReset) {
- this.prev = 0;
- this.next = 0;
- // Resetting context._sent for legacy support of Babel's
- // function.sent implementation.
- this.sent = this._sent = undefined;
- this.done = false;
- this.delegate = null;
- this.method = "next";
- this.arg = undefined;
- this.tryEntries.forEach(resetTryEntry);
- if (!skipTempReset) {
- for (var name in this) {
- // Not sure about the optimal order of these conditions:
- if (name.charAt(0) === "t" &&
- hasOwn.call(this, name) &&
- !isNaN(+name.slice(1))) {
- this[name] = undefined;
- }
- }
- }
- },
- stop: function() {
- this.done = true;
- var rootEntry = this.tryEntries[0];
- var rootRecord = rootEntry.completion;
- if (rootRecord.type === "throw") {
- throw rootRecord.arg;
- }
- return this.rval;
- },
- dispatchException: function(exception) {
- if (this.done) {
- throw exception;
- }
- var context = this;
- function handle(loc, caught) {
- record.type = "throw";
- record.arg = exception;
- context.next = loc;
- if (caught) {
- // If the dispatched exception was caught by a catch block,
- // then let that catch block handle the exception normally.
- context.method = "next";
- context.arg = undefined;
- }
- return !! caught;
- }
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- var record = entry.completion;
- if (entry.tryLoc === "root") {
- // Exception thrown outside of any try block that could handle
- // it, so set the completion value of the entire function to
- // throw the exception.
- return handle("end");
- }
- if (entry.tryLoc <= this.prev) {
- var hasCatch = hasOwn.call(entry, "catchLoc");
- var hasFinally = hasOwn.call(entry, "finallyLoc");
- if (hasCatch && hasFinally) {
- if (this.prev < entry.catchLoc) {
- return handle(entry.catchLoc, true);
- } else if (this.prev < entry.finallyLoc) {
- return handle(entry.finallyLoc);
- }
- } else if (hasCatch) {
- if (this.prev < entry.catchLoc) {
- return handle(entry.catchLoc, true);
- }
- } else if (hasFinally) {
- if (this.prev < entry.finallyLoc) {
- return handle(entry.finallyLoc);
- }
- } else {
- throw new Error("try statement without catch or finally");
- }
- }
- }
- },
- abrupt: function(type, arg) {
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- if (entry.tryLoc <= this.prev &&
- hasOwn.call(entry, "finallyLoc") &&
- this.prev < entry.finallyLoc) {
- var finallyEntry = entry;
- break;
- }
- }
- if (finallyEntry &&
- (type === "break" ||
- type === "continue") &&
- finallyEntry.tryLoc <= arg &&
- arg <= finallyEntry.finallyLoc) {
- // Ignore the finally entry if control is not jumping to a
- // location outside the try/catch block.
- finallyEntry = null;
- }
- var record = finallyEntry ? finallyEntry.completion : {};
- record.type = type;
- record.arg = arg;
- if (finallyEntry) {
- this.method = "next";
- this.next = finallyEntry.finallyLoc;
- return ContinueSentinel;
- }
- return this.complete(record);
- },
- complete: function(record, afterLoc) {
- if (record.type === "throw") {
- throw record.arg;
- }
- if (record.type === "break" ||
- record.type === "continue") {
- this.next = record.arg;
- } else if (record.type === "return") {
- this.rval = this.arg = record.arg;
- this.method = "return";
- this.next = "end";
- } else if (record.type === "normal" && afterLoc) {
- this.next = afterLoc;
- }
- return ContinueSentinel;
- },
- finish: function(finallyLoc) {
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- if (entry.finallyLoc === finallyLoc) {
- this.complete(entry.completion, entry.afterLoc);
- resetTryEntry(entry);
- return ContinueSentinel;
- }
- }
- },
- "catch": function(tryLoc) {
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- if (entry.tryLoc === tryLoc) {
- var record = entry.completion;
- if (record.type === "throw") {
- var thrown = record.arg;
- resetTryEntry(entry);
- }
- return thrown;
- }
- }
- // The context.catch method must only be called with a location
- // argument that corresponds to a known catch block.
- throw new Error("illegal catch attempt");
- },
- delegateYield: function(iterable, resultName, nextLoc) {
- this.delegate = {
- iterator: values(iterable),
- resultName: resultName,
- nextLoc: nextLoc
- };
- if (this.method === "next") {
- // Deliberately forget the last sent value so that we don't
- // accidentally pass it on to the delegate.
- this.arg = undefined;
- }
- return ContinueSentinel;
- }
- };
- })(
- // In sloppy mode, unbound `this` refers to the global object, fallback to
- // Function constructor if we're in global strict mode. That is sadly a form
- // of indirect eval which violates Content Security Policy.
- (function() {
- return this || (typeof self === "object" && self);
- })() || Function("return this")()
- );
- /***/ }),
- /***/ 7:
- /*!******************************************************!*\
- !*** D:/uinapp/myuinapp/pages.json?{"type":"style"} ***!
- \******************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = { "pages": { "pages/index/index": { "navigationBarTitleText": "首页", "usingComponents": { "uni-nav-bar": "/component/uni-nav-bar/uni-nav-bar", "uni-icon": "/component/uni-icon/uni-icon", "logion-dialog": "/component/loginDialog" }, "usingAutoImportComponents": {} }, "pages/index/hotel": { "navigationStyle": "custom", "usingComponents": { "uni-icon": "/component/uni-icon/uni-icon", "uni-nav-bar": "/component/uni-nav-bar/uni-nav-bar", "commo-nar": "/component/commoNar", "assess": "/component/assess", "shop-list": "/component/shopList", "logion-dialog": "/component/loginDialog" }, "usingAutoImportComponents": {} }, "pages/index/hoteldetail": { "navigationBarTitleText": "商品销售", "usingComponents": { "shop-list": "/component/shopList" }, "usingAutoImportComponents": {} }, "pages/index/cart": { "navigationBarTitleText": "购物车", "usingComponents": { "uni-nav-bar": "/component/uni-nav-bar/uni-nav-bar", "uninumberbox": "/component/uinNumberCart" }, "usingAutoImportComponents": {} }, "pages/index/shop": { "navigationBarTitleText": "商品详情", "usingComponents": { "uni-icon": "/component/uni-icon/uni-icon", "assess": "/component/assess", "uninumberbox": "/component/uinNumber", "logion-dialog": "/component/loginDialog" }, "usingAutoImportComponents": {} }, "pages/index/commemt": { "navigationBarTitleText": "评价", "usingComponents": { "assess": "/component/assess" }, "usingAutoImportComponents": {} }, "pages/index/searchresult": { "navigationBarTitleText": "酒店搜索", "usingComponents": { "uni-icon": "/component/uni-icon/uni-icon" }, "usingAutoImportComponents": {} }, "pages/myone/oneIndex": { "navigationBarTitleText": "发现", "usingComponents": { "uni-icon": "/component/uni-icon/uni-icon" }, "usingAutoImportComponents": {} }, "pages/myone/onedetail": { "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myOrder/index": { "navigationBarTitleText": "我的订单", "usingComponents": { "dialog": "/component/Dialog", "logion-dialog": "/component/loginDialog" }, "usingAutoImportComponents": {} }, "pages/index/sureBuy": { "navigationBarTitleText": "确认订单", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myOrder/paymoment": { "navigationBarTitleText": "支付方式", "usingComponents": { "dialog": "/component/Dialog" }, "usingAutoImportComponents": {} }, "pages/myOrder/order": { "navigationBarTitleText": "订单详情", "usingComponents": { "dialog": "/component/Dialog" }, "usingAutoImportComponents": {} }, "pages/myOrder/reminder": { "navigationBarTitleText": "催单", "usingComponents": { "text-area": "/component/textarea" }, "usingAutoImportComponents": {} }, "pages/myOrder/estimate": { "navigationBarTitleText": "评价晒单", "usingComponents": { "text-area": "/component/textarea", "upload-image": "/component/uploadImage" }, "usingAutoImportComponents": {} }, "pages/myOrder/adress": { "navigationBarTitleText": "我的地址", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myOrder/adressManger": { "usingComponents": { "mpvue-city-picker": "/component/mpvue-citypicker/mpvueCityPicker" }, "usingAutoImportComponents": {} }, "pages/myCenter/index": { "navigationBarTitleText": "我的", "usingComponents": { "uni-icon": "/component/uni-icon/uni-icon", "logion-dialog": "/component/loginDialog" }, "usingAutoImportComponents": {} }, "pages/myCenter/applyfor": { "navigationBarTitleText": "申请代理", "usingComponents": { "upload-image": "/component/uploadImage" }, "usingAutoImportComponents": {} }, "pages/myCenter/Settled": { "navigationBarTitleText": "申请酒店入驻", "usingComponents": { "upload-image": "/component/uploadImage" }, "usingAutoImportComponents": {} }, "pages/myCenter/definite": { "navigationBarTitleText": "圈币明细", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myCenter/logion": { "navigationBarTitleText": "登录", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myCenter/business": { "navigationBarTitleText": "商务合作", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myCenter/commentback": { "navigationBarTitleText": "意见反馈", "usingComponents": { "text-area": "/component/textarea", "upload-image": "/component/uploadImage" }, "usingAutoImportComponents": {} }, "pages/myCenter/myCollect": { "navigationBarTitleText": "我的收藏", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/myCenter/information": { "navigationBarTitleText": "消息通知", "usingComponents": {}, "usingAutoImportComponents": {} }, "pages/index/hotelsearch": { "navigationBarTitleText": "商品搜索", "usingComponents": { "uni-icon": "/component/uni-icon/uni-icon", "shop-list": "/component/shopList" }, "usingAutoImportComponents": {} } }, "globalStyle": { "navigationBarTextStyle": "black", "navigationBarTitleText": "uni-app", "navigationBarBackgroundColor": "#fff", "backgroundColor": "#F8F8F8" } };exports.default = _default;
- /***/ }),
- /***/ 8:
- /*!*****************************************************!*\
- !*** D:/uinapp/myuinapp/pages.json?{"type":"stat"} ***!
- \*****************************************************/
- /*! no static exports found */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = { "appid": "__UNI__99C074F" };exports.default = _default;
- /***/ })
- }]);
- //# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map
|