{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js?543d","webpack:///(webpack)/buildin/global.js?cd00","webpack:///./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js?37dc","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js?66fd","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js?f0c5","uni-app:///store/index.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vuex3/dist/vuex.common.js?26cb","uni-app:///store/modules/moduleA.js","uni-app:///store/modules/moduleB.js","uni-app:///jsFile/tools.js","uni-app:///jsFile/requst.js"],"names":["realAtob","b64","b64re","atob","str","String","replace","test","Error","slice","length","bitmap","result","r1","r2","i","indexOf","charAt","fromCharCode","b64DecodeUnicode","decodeURIComponent","split","map","c","charCodeAt","toString","join","getCurrentUserInfo","token","wx","getStorageSync","tokenArr","uid","role","permission","tokenExpired","userInfo","JSON","parse","error","message","exp","iat","uniIdMixin","Vue","prototype","uniIDHasRole","roleId","uniIDHasPermission","permissionId","uniIDTokenValid","Date","now","_toString","Object","hasOwnProperty","isFn","fn","isStr","isPlainObject","obj","call","hasOwn","key","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","_","toUpperCase","sortObject","sortObj","keys","sort","forEach","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","res","concat","Array","isArray","dedupeHooks","hooks","push","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","data","isPromise","then","queue","promise","Promise","resolve","callback","wrapperOptions","options","name","oldCallback","callbackInterceptor","wrapperReturnValue","returnValue","returnValueHooks","getApiInterceptorHooks","scopedInterceptor","invokeApi","api","params","invoke","promiseInterceptor","reject","SYNC_API_RE","CONTEXT_API_RE","CONTEXT_API_RE_EXC","ASYNC_API","CALLBACK_API_RE","isContextApi","isSyncApi","isCallbackApi","handlePromise","catch","err","shouldPromise","finally","constructor","value","reason","promisify","promiseApi","success","fail","complete","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","Number","Math","floor","LOCALE_ZH_HANS","LOCALE_ZH_HANT","LOCALE_EN","LOCALE_FR","LOCALE_ES","messages","locale","normalizeLocale","language","initI18nMessages","isEnableLocale","localeKeys","__uniConfig","locales","curMessages","userMessages","i18n","t","i18nMixin","mixin","beforeCreate","unwatch","watchLocale","$forceUpdate","$once","methods","$$t","values","setLocale","getLocale","initAppLocale","appVm","state","observable","localeWatchers","$watchLocale","defineProperty","get","set","v","watch","include","parts","find","part","startsWith","trim","toLowerCase","lang","getLocale$1","app","getApp","allowDefault","$vm","$locale","setLocale$1","oldLocale","onLocaleChangeCallbacks","onLocaleChange","global","interceptors","baseApi","freeze","__proto__","findExistsPageIndex","url","pages","getCurrentPages","len","page","$page","fullPath","redirectTo","fromArgs","exists","delta","args","existsPageIndex","previewImage","currentIndex","parseInt","current","isNaN","urls","filter","item","indicator","loop","UUID_KEY","deviceId","useDeviceId","random","setStorage","addSafeAreaInsets","safeArea","safeAreaInsets","top","left","right","bottom","screenHeight","populateParameters","brand","model","system","theme","version","fontSizeSetting","SDKVersion","deviceOrientation","osName","osVersion","hostVersion","deviceType","getGetDeviceType","deviceBrand","getDeviceBrand","_hostName","getHostName","_deviceOrientation","_devicePixelRatio","_SDKVersion","hostLanguage","parameters","appId","process","appName","appVersion","appVersionCode","appLanguage","getAppLanguage","uniCompileVersion","uniRuntimeVersion","uniPlatform","deviceModel","devicePixelRatio","toLocaleLowerCase","hostTheme","hostName","hostSDKVersion","hostFontSizeSetting","windowTop","windowBottom","osLanguage","undefined","osTheme","ua","hostPackageName","browserName","browserVersion","deviceTypeMaps","ipad","windows","mac","deviceTypeMapsKeys","_model","_m","defaultLanguage","_platform","environment","host","env","getSystemInfo","showActionSheet","alertText","title","getAppBaseInfo","getDeviceInfo","getWindowInfo","getAppAuthorizeSetting","locationReducedAccuracy","locationAccuracy","protocols","todos","canIUses","CALLBACKS","processCallback","methodName","processReturnValue","processArgs","argsOption","keepFromArgs","toArgs","keyOption","console","warn","keepReturnValue","wrapper","protocol","arg1","arg2","apply","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","Emitter","getUniEmitter","ctx","$on","arguments","$off","$emit","eventApi","tryCatch","e","getApiCallbacks","apiCallbacks","param","cid","cidErrMsg","enabled","normalizePushMessage","invokePushCallback","type","invokeGetPushCidCallbacks","onPushMessageCallbacks","stopped","getPushCidCallbacks","getPushClientId","hasSuccess","hasFail","hasComplete","onPushMessage","offPushMessage","MPPage","Page","MPComponent","Component","customizeRE","customize","initTriggerEvent","mpInstance","oldTriggerEvent","triggerEvent","newTriggerEvent","event","dataset","comType","newEvent","_triggerEvent","initHook","isComponent","oldHook","__$wrappered","after","PAGE_EVENT_HOOKS","initMocks","vm","mocks","$mp","mpType","mock","hasHook","vueOptions","default","extendOptions","super","mixins","initHooks","mpOptions","__call_hook","initUnknownHooks","excludes","findHooks","initHook$1","initVueComponent","VueComponent","extend","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","_$vueId","_$vuePid","initData","context","VUE_APP_DEBUG","stringify","__lifecycle_hooks__","PROP_TYPES","Boolean","createObserver","observer","newVal","oldVal","initBehaviors","initBehavior","vueBehaviors","behaviors","vueExtends","extends","vueMixins","vueProps","props","behavior","properties","initProperties","vueMixin","parsePropType","defaultValue","file","isBehavior","vueId","virtualHost","virtualHostStyle","virtualHostClass","scopedSlotsCompiler","setData","opts","wrapper$1","mp","stopPropagation","preventDefault","target","detail","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","isInteger","substr","__get_value","vForItem","vForKey","processEventExtra","extra","__args__","extraObj","getObjByArray","arr","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","ret","arg","ONCE","CUSTOM","isMatchEventType","eventType","optType","getContextVm","$parent","$options","generic","$scope","handleEvent","eventOpts","eventOpt","eventsArray","isOnce","eventArray","handlerCtx","handler","path","route","is","once","eventChannels","eventChannelStack","getEventChannel","id","eventChannel","shift","initEventChannel","getOpenerEventChannel","callHook","__id__","__eventChannel__","initScopedSlotsParams","center","parents","$hasScopedSlotsParams","has","$getScopedSlotsParams","object","$setScopedSlotsParams","propsData","destroyed","parseBaseApp","initRefs","store","$store","mpHost","$i18n","_i18n","appOptions","onLaunch","canIUse","globalData","_isMounted","findVmByVueId","vuePid","$children","childVm","parentVm","Behavior","isPage","initRelation","selectAllComponents","selector","$refs","components","component","ref","vueGeneric","scopedComponent","forComponents","handleLink","parent","parseApp","createApp","App","encodeReserveRE","encodeReserveReplacer","commaRE","encode","encodeURIComponent","stringifyQuery","encodeStr","val","val2","x","parseBaseComponent","vueComponentOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","size","__l","__e","externalClasses","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","copyQuery","parsePage","createPage","createComponent","createSubpackageApp","onShow","onAppShow","onHide","onAppHide","getLaunchOptionsSync","createPlugin","canIUseApi","apiName","uni","Proxy","uni$1","isObject","defaultDelimiters","BaseFormatter","_caches","delimiters","tokens","compile","RE_TOKEN_LIST_VALUE","RE_TOKEN_NAMED_VALUE","format","startDelimiter","endDelimiter","position","text","char","sub","isClosed","compiled","mode","defaultFormatter","I18n","fallbackLocale","watcher","formater","watchers","override","interpolate","watchAppLocale","newLocale","$watch","getDefaultLocale","initVueI18n","isWatchedAppLocale","f","add","isString","hasI18nJson","jsonObj","walkJsonObj","isI18nStr","parseI18nJson","compileStr","compileI18nJsonStr","jsonStr","localeValues","unshift","compileJsonObj","compileValue","valueLocales","localValue","walk","resolveLocale","resolveLocaleChain","chain","pop","use","Vuex","Store","modules","moduleA","moduleB","footHeight","count","publicColor","done","a","b","titleList","imgList","onLineList","cartNum","cartPrice","geList","changeBusiness","mutations","setNum","num","setPrice","price","setGe","payload","footHeightEv","add2","amount","setToken","updateUserInfo","newProp","updateState","list","actions","addCountAction","commit","addCountAction2","addCountAction3","setTimeout","actionA","actionB","dispatch","getters","doneTodos","todo","doneTodosCount","getTodoById","tools","timer","daoTime","setStorageSync","setInterval","removeStorageSync","clearInterval","closeTimer","log","obtainCount","unescapeEv","op","unescape","q","isPhone","phone","reg_tel","isEmail","email","reg_email","isIdentity","identity","reg_identity","hideMPhone","phoneAddChat","startNum","endNum","character","phoneStr","phoneArr","hideName","changeNum","substring","addXiaoShu","toFixed","includes","operationEv","num1","num2","index1","index2","ws1","ws2","bigger","smaller","zerosCount","sum","beishu","checkPrice","zong","reg","newObj","showToast","msg","icon","time","newTime","duration","escape2Html","arrEntities","all","match","p1","networkStatus","getNetworkType","networkType","checkUpdate","self","updateManager","getUpdateManager","onCheckForUpdate","hasUpdate","showModal","content","confirm","downLoadAndUpdate","clearStorage","clearStorageSync","cancel","showCancel","confirmText","showLoading","onUpdateReady","hideLoading","applyUpdate","onUpdateFailed","clickCopy","setClipboardData","authTimer","judgeAuth","auth","clearTimeout","reLaunch","currentContext","hInfo","getAccountInfoSync","miniProgram","envVersion","disableShareEv","hideShareMenu","menus","obtainPagePath","routeParam","countCustomer","phoneList","itemList","itemColor","makePhoneCall","phoneNumber","tapIndex","uploadImg","imgArr","chooseImage","sizeType","sourceType","files","tempFilePaths","wxOpenSet","authorize","scope","cancelText","openSetting","goFlag","goThere","latitude","longitude","address","getLocation","openLocation","parseFloat","saveImg","src","exist","downloadFile","saveImageToPhotosAlbum","filePath","tempFilePath","saveFile","wximg","getBase64ImageUrl","base64Data","arrayBufferToBase64","base64ToArrayBuffer","base64ImgUrl","goLogin","navigateTo","flag","refreshTokenPage","currentRoutes","currentRoute","currentParam","localRoute","login","request","hostapi","code","account_id","openid","expire","phone_active","is_active","checkError","headers","header","statusCode","rest","uploadFile","tempData","fileType","formData","temp","post","postForm","upload"],"mappings":"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;AACH;AACJ;AACJ;AACD,SAAO,KAAP;AACH;;AAED,SAASioB,aAAT,CAAuB7gB,OAAvB,EAAgC;AAC5B,SAAO,UAACP,MAAD,EAAY;AACf,QAAI,CAACA,MAAL,EAAa;AACT,aAAOA,MAAP;AACH;AACDA,UAAM,GAAGC,eAAe,CAACD,MAAD,CAAf,IAA2BA,MAApC;AACA,WAAOqhB,kBAAkB,CAACrhB,MAAD,CAAlB,CAA2BqC,IAA3B,CAAgC,UAACrC,MAAD,UAAYO,OAAO,CAACnK,OAAR,CAAgB4J,MAAhB,IAA0B,CAAC,CAAvC,EAAhC,CAAP;AACH,GAND;AAOH;AACD,SAASqhB,kBAAT,CAA4BrhB,MAA5B,EAAoC;AAChC,MAAMshB,KAAK,GAAG,EAAd;AACA,MAAMhD,MAAM,GAAGte,MAAM,CAACvJ,KAAP,CAAa,GAAb,CAAf;AACA,SAAO6nB,MAAM,CAACxoB,MAAd,EAAsB;AAClBwrB,SAAK,CAACvmB,IAAN,CAAWujB,MAAM,CAACxnB,IAAP,CAAY,GAAZ,CAAX;AACAwnB,UAAM,CAACiD,GAAP;AACH;AACD,SAAOD,KAAP;AACH,C;;;;;;;;;;;;ACncD;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA,kCAAkC;;AAElC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA,sBAAsB,+BAA+B;AACrD,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,kDAAkD,iCAAiC,EAAE;AACrF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,cAAc;;AAE3C;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;;AAEvC;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,aAAoB;;AAErC;AACA;AACA;AACA,YAAY,aAAoB;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC,iBAAiB;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA,oCAAoC;AACpC;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA,iCAAiC;AACjC,uCAAuC,wBAAwB,EAAE;AACjE,0BAA0B;;AAE1B;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC,kBAAkB,YAAY;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,wCAAwC,EAAE;AAC1C;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,+BAA+B,oBAAoB,EAAE;AACrD;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B,SAAS,qBAAqB;;AAExD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA,GAAG;AACH,CAAC;;AAED;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;;AAEA,iBAAiB,iBAAiB;AAClC;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,uBAAuB;AACzD,iCAAiC,sBAAsB;AACvD;AACA,kBAAkB;AAClB,MAAM,IAAqC;AAC3C;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,aAAoB;AACtC;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,OAAO,UAAU,IAAqC;AACtD;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,mBAAmB,mBAAmB;AACtC,+BAA+B;AAC/B;AACA,GAAG;AACH;AACA;AACA;AACA,kBAAkB,YAAY;AAC9B,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA,oCAAoC;AACpC;AACA,qCAAqC;AACrC;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAEQ;AACZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,6CAA6C,SAAS;AACtD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,6CAA6C,qCAAqC,EAAE;AACpF;;AAEA;AACA;AACA;;AAEA,oCAAoC,yCAAyC,EAAE;AAC/E;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA;AACA,4BAA4B;AAC5B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sDAAsD,EAAE;AACtF;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;;AAEA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yBAAyB;AAC1C,GAAG;AACH;AACA;AACA,iBAAiB,+BAA+B;AAChD;AACA;;AAEA;AACA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,uBAAuB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,mBAAmB;AACxC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,qBAAqB;AAClC;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO,MAAM,EAEN;AACP,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,iBAAiB;AACpC;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,UAAU,IAAqC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,OAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA,sBAAsB,mBAAmB;AACzC;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC,uCAAuC;AACvC;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB,sCAAsC;AACtC;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,OAAO;AACzC;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,4CAA4C,eAAe;AAC3D,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,kDAAkD;AAClD,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA,KAAK,UAAU,KAAqC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,qCAAqC,gEAAgE;AACrG;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,4BAA4B,+BAA+B;AAC3D,4BAA4B,+BAA+B;AAC3D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C,kDAAkD;AAClD;AACA;AACA,mCAAmC;AACnC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sEAAsE;;AAEtE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,uFAAuF;AAC5F;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C;AAC1C,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG,+BAA+B;AAClC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,oBAAoB;AACxC,sBAAsB,4BAA4B;AAClD;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,mBAAmB;AACnB,yBAAyB;AACzB;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,6CAA6C;AAC9E;AACA;AACA,6CAA6C,4CAA4C;;AAEzF;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,GAAG,MAAM,EAGN;AACH;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,KAAK,2CAA2C,8BAA8B,EAAE;;AAEhF;AACA,wCAAwC,OAAO;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;;AAEL;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,KAAqC;AACrD;AACA,oBAAoB,SAAI;AACxB;AACA;AACA,WAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uCAAuC,OAAO;AAC9C;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;;AAE1B,kBAAkB;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,IAAqC;AAC3C;AACA;AACA;;AAEA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0BAA0B;AACpD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,oBAAoB,EAAE;;AAEpD;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,oBAAoB;AACpB;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA,oBAAoB,KAAqC;AACzD;AACA,MAAM,SAAE;AACR;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C,qBAAqB,+BAA+B;AACpD;AACA;AACA,GAAG;AACH,yBAAyB;AACzB;AACA,sBAAsB,iCAAiC;AACvD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,UAAU,IAAqC;AACpD;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,8BAA8B;AAC9B,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA,sCAAsC;AACtC,8C;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,eAAe;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA;AACA;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC;;AAEjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,YAAY,KAAqC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;;;AAIA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA,0CAA0C,2BAA2B,EAAE;AACvE,KAAK;AACL;AACA,0CAA0C,4BAA4B,EAAE;AACxE,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,+BAA+B,eAAe;AAC9C,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA,6BAA6B;AAC7B;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,iBAAiB;AACjB;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,sGAAW;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,gCAAgC,EAAE;AAC5E;;AAEA;AACA;AACA;AACA;AACA,WAAW,sGAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,sGAAW;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,0CAA0C;;AAE1C;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,sCAAsC;AACtC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA,KAAK;AACL;AACA;AACA,UAAU,sGAAW;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,OAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,qDAAqD,EAAE,SAAS;AACtH;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC,OAAO;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,0BAA0B,OAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEe,kEAAG,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACl6LnB;AAAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACjHA;AACA;AACA;AACA,8F,8FAJA;;AAMAtpB,aAAIwpB,GAAJ,CAAQC,aAAR,E,CAAc;;AAEd;AACA,IAAM/I,KAAK,GAAG,IAAI+I,cAAKC,KAAT,CAAe;AAC5BC,SAAO,EAAE;AACRC,WAAO,EAAPA,gBADQ;AAERC,WAAO,EAAPA,gBAFQ,EADmB,EAAf,CAAd,C;;;AAMenJ,K;;;;;;;;;;;ACff;AACA;AACA;AACA;AACA;AACa;;AAEb;AACA;;AAEA;AACA,eAAe,yBAAyB;AACxC,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;;AAErB;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG,GAAG,gBAAgB;;AAEtB;AACA;AACA,GAAG,GAAG,gBAAgB;AACtB;;AAEA;AACA;AACA;AACA;AACA,WAAW,MAAM;AACjB,WAAW,SAAS;AACpB,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,EAAE;AACb,WAAW,cAAc;AACzB,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sCAAsC,2BAA2B,EAAE;AACnE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA,2CAA2C,0BAA0B,EAAE;AACvE;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB;AACnB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,0BAA0B,cAAc,qBAAqB;;AAE7D;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,4BAA4B,oCAAoC,EAAE;AAClE;AACA;;AAEA;AACA,4BAA4B;AAC5B,uEAAuE,EAAE;AACzE;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,0BAA0B;;AAE1B;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ;;AAER;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;AACA;AACA;;AAEA,gCAAgC;AAChC,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,qCAAqC,uBAAuB,EAAE;;AAE9D;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,SAAS,qBAAqB;;AAE1D;AACA;AACA;;AAEA;AACA,OAAO,IAAqC;AAC5C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;;AAEH;AACA;AACA,6BAA6B,oCAAoC,EAAE;;AAEnE;AACA,KAAK,KAAqC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,gBAAgB;AAChB;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B,mBAAmB,EAAE;AACnD,+BAA+B,yCAAyC,EAAE;AAC1E,GAAG;AACH,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;;AAEA;AACA,gDAAgD,yBAAyB,EAAE;AAC3E;;AAEA;AACA;AACA;AACA;AACA,kCAAkC,kBAAkB,EAAE;AACtD,mCAAmC,wCAAwC,EAAE;AAC7E,OAAO;AACP,aAAa,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,kBAAkB,EAAE;AACtD,mCAAmC,+CAA+C,EAAE;AACpF,OAAO;AACP,aAAa,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA,yCAAyC,aAAa;AACtD;AACA;;AAEA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;AACA,6CAA6C,6CAA6C,EAAE;AAC5F;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA,iCAAiC,eAAe;;AAEhD,OAAO,IAAqC;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iCAAiC,eAAe;;AAEhD,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA,iCAAiC,eAAe;;AAEhD,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;;AAEA,yEAAyE,iCAAiC;AAC1G;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB,EAAE;AACjD;AACA,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,8BAA8B,yBAAyB,EAAE;AACzD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kDAAkD,aAAoB;AACtE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,IAAqC;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,KAAqC;AAClD;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,KAAqC;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C,uBAAuB,2CAA2C;AAClE,KAAK;AACL;AACA,wBAAwB,0CAA0C;AAClE;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;;AAElD;AACA;;AAEA;AACA;AACA;AACA;AACA,0BAA0B,4BAA4B,EAAE;AACxD;AACA,OAAO;AACP,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gCAAgC,4BAA4B;AAC5D,SAAS,IAAqC;AAC9C;AACA;AACA,GAAG,GAAG,yBAAyB;AAC/B;;AAEA;AACA,4CAA4C,mBAAmB,EAAE;AACjE;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;;AAEA,UAAU;AACV;;AAEA;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,WAAW;AACX;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,KAAqC;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA,CAAC,EAAE;;AAEH;AACA;AACA,iCAAiC,iBAAiB,GAAG,iBAAiB,GAAG,iBAAiB;AAC1F,iBAAiB,iBAAiB,QAAQ,mBAAmB,GAAG,mBAAmB,GAAG,mBAAmB;AACzG,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,UAAU,qBAAqB,EAAE,EAAE;AACjE,2CAA2C,UAAU,0BAA0B,EAAE,EAAE;AACnF;;AAEA;AACA;AACA,WAAW,EAAE;AACb,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,SAAS;AACpB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,gCAAgC;AAChC,0BAA0B,iFAAiF,aAAa;AACxH,oCAAoC,+DAA+D,cAAc;AACjH,oDAAoD,6EAA6E,YAAY;AAC7I,sCAAsC,yEAAyE,aAAa;AAC5H,gDAAgD,yEAAyE,YAAY;AACrI,sCAAsC;AACtC,kCAAkC;AAClC,0BAA0B;;AAE1B;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sDAAsD;AACtD,oDAAoD;AACpD,sDAAsD;AACtD;AACA;;AAEA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kDAAkD;AAClD;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;A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","file":"common/vendor.js","sourcesContent":["import { initVueI18n } from '@dcloudio/uni-i18n';\r\nimport Vue from 'vue';\r\n\r\nlet realAtob;\r\n\r\nconst b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\r\nconst b64re = /^(?:[A-Za-z\\d+/]{4})*?(?:[A-Za-z\\d+/]{2}(?:==)?|[A-Za-z\\d+/]{3}=?)?$/;\r\n\r\nif (typeof atob !== 'function') {\r\n realAtob = function (str) {\r\n str = String(str).replace(/[\\t\\n\\f\\r ]+/g, '');\r\n if (!b64re.test(str)) { throw new Error(\"Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.\") }\r\n\r\n // Adding the padding if missing, for semplicity\r\n str += '=='.slice(2 - (str.length & 3));\r\n var bitmap; var result = ''; var r1; var r2; var i = 0;\r\n for (; i < str.length;) {\r\n bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 |\r\n (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));\r\n\r\n result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255)\r\n : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255)\r\n : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);\r\n }\r\n return result\r\n };\r\n} else {\r\n // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法\r\n realAtob = atob;\r\n}\r\n\r\nfunction b64DecodeUnicode (str) {\r\n return decodeURIComponent(realAtob(str).split('').map(function (c) {\r\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)\r\n }).join(''))\r\n}\r\n\r\nfunction getCurrentUserInfo () {\r\n const token = ( wx).getStorageSync('uni_id_token') || '';\r\n const tokenArr = token.split('.');\r\n if (!token || tokenArr.length !== 3) {\r\n return {\r\n uid: null,\r\n role: [],\r\n permission: [],\r\n tokenExpired: 0\r\n }\r\n }\r\n let userInfo;\r\n try {\r\n userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));\r\n } catch (error) {\r\n throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message)\r\n }\r\n userInfo.tokenExpired = userInfo.exp * 1000;\r\n delete userInfo.exp;\r\n delete userInfo.iat;\r\n return userInfo\r\n}\r\n\r\nfunction uniIdMixin (Vue) {\r\n Vue.prototype.uniIDHasRole = function (roleId) {\r\n const {\r\n role\r\n } = getCurrentUserInfo();\r\n return role.indexOf(roleId) > -1\r\n };\r\n Vue.prototype.uniIDHasPermission = function (permissionId) {\r\n const {\r\n permission\r\n } = getCurrentUserInfo();\r\n return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1\r\n };\r\n Vue.prototype.uniIDTokenValid = function () {\r\n const {\r\n tokenExpired\r\n } = getCurrentUserInfo();\r\n return tokenExpired > Date.now()\r\n };\r\n}\r\n\r\nconst _toString = Object.prototype.toString;\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\n\r\nfunction isFn (fn) {\r\n return typeof fn === 'function'\r\n}\r\n\r\nfunction isStr (str) {\r\n return typeof str === 'string'\r\n}\r\n\r\nfunction isPlainObject (obj) {\r\n return _toString.call(obj) === '[object Object]'\r\n}\r\n\r\nfunction hasOwn (obj, key) {\r\n return hasOwnProperty.call(obj, key)\r\n}\r\n\r\nfunction noop () { }\r\n\r\n/**\r\n * Create a cached version of a pure function.\r\n */\r\nfunction cached (fn) {\r\n const cache = Object.create(null);\r\n return function cachedFn (str) {\r\n const hit = cache[str];\r\n return hit || (cache[str] = fn(str))\r\n }\r\n}\r\n\r\n/**\r\n * Camelize a hyphen-delimited string.\r\n */\r\nconst camelizeRE = /-(\\w)/g;\r\nconst camelize = cached((str) => {\r\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\r\n});\r\n\r\nfunction sortObject (obj) {\r\n const sortObj = {};\r\n if (isPlainObject(obj)) {\r\n Object.keys(obj).sort().forEach(key => {\r\n sortObj[key] = obj[key];\r\n });\r\n }\r\n return !Object.keys(sortObj) ? obj : sortObj\r\n}\r\n\r\nconst HOOKS = [\r\n 'invoke',\r\n 'success',\r\n 'fail',\r\n 'complete',\r\n 'returnValue'\r\n];\r\n\r\nconst globalInterceptors = {};\r\nconst scopedInterceptors = {};\r\n\r\nfunction mergeHook (parentVal, childVal) {\r\n const res = childVal\r\n ? parentVal\r\n ? parentVal.concat(childVal)\r\n : Array.isArray(childVal)\r\n ? childVal : [childVal]\r\n : parentVal;\r\n return res\r\n ? dedupeHooks(res)\r\n : res\r\n}\r\n\r\nfunction dedupeHooks (hooks) {\r\n const res = [];\r\n for (let i = 0; i < hooks.length; i++) {\r\n if (res.indexOf(hooks[i]) === -1) {\r\n res.push(hooks[i]);\r\n }\r\n }\r\n return res\r\n}\r\n\r\nfunction removeHook (hooks, hook) {\r\n const index = hooks.indexOf(hook);\r\n if (index !== -1) {\r\n hooks.splice(index, 1);\r\n }\r\n}\r\n\r\nfunction mergeInterceptorHook (interceptor, option) {\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction removeInterceptorHook (interceptor, option) {\r\n if (!interceptor || !option) {\r\n return\r\n }\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n removeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction addInterceptor (method, option) {\r\n if (typeof method === 'string' && isPlainObject(option)) {\r\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\r\n } else if (isPlainObject(method)) {\r\n mergeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction removeInterceptor (method, option) {\r\n if (typeof method === 'string') {\r\n if (isPlainObject(option)) {\r\n removeInterceptorHook(scopedInterceptors[method], option);\r\n } else {\r\n delete scopedInterceptors[method];\r\n }\r\n } else if (isPlainObject(method)) {\r\n removeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction wrapperHook (hook) {\r\n return function (data) {\r\n return hook(data) || data\r\n }\r\n}\r\n\r\nfunction isPromise (obj) {\r\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\r\n}\r\n\r\nfunction queue (hooks, data) {\r\n let promise = false;\r\n for (let i = 0; i < hooks.length; i++) {\r\n const hook = hooks[i];\r\n if (promise) {\r\n promise = Promise.resolve(wrapperHook(hook));\r\n } else {\r\n const res = hook(data);\r\n if (isPromise(res)) {\r\n promise = Promise.resolve(res);\r\n }\r\n if (res === false) {\r\n return {\r\n then () { }\r\n }\r\n }\r\n }\r\n }\r\n return promise || {\r\n then (callback) {\r\n return callback(data)\r\n }\r\n }\r\n}\r\n\r\nfunction wrapperOptions (interceptor, options = {}) {\r\n ['success', 'fail', 'complete'].forEach(name => {\r\n if (Array.isArray(interceptor[name])) {\r\n const oldCallback = options[name];\r\n options[name] = function callbackInterceptor (res) {\r\n queue(interceptor[name], res).then((res) => {\r\n /* eslint-disable no-mixed-operators */\r\n return isFn(oldCallback) && oldCallback(res) || res\r\n });\r\n };\r\n }\r\n });\r\n return options\r\n}\r\n\r\nfunction wrapperReturnValue (method, returnValue) {\r\n const returnValueHooks = [];\r\n if (Array.isArray(globalInterceptors.returnValue)) {\r\n returnValueHooks.push(...globalInterceptors.returnValue);\r\n }\r\n const interceptor = scopedInterceptors[method];\r\n if (interceptor && Array.isArray(interceptor.returnValue)) {\r\n returnValueHooks.push(...interceptor.returnValue);\r\n }\r\n returnValueHooks.forEach(hook => {\r\n returnValue = hook(returnValue) || returnValue;\r\n });\r\n return returnValue\r\n}\r\n\r\nfunction getApiInterceptorHooks (method) {\r\n const interceptor = Object.create(null);\r\n Object.keys(globalInterceptors).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = globalInterceptors[hook].slice();\r\n }\r\n });\r\n const scopedInterceptor = scopedInterceptors[method];\r\n if (scopedInterceptor) {\r\n Object.keys(scopedInterceptor).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\r\n }\r\n });\r\n }\r\n return interceptor\r\n}\r\n\r\nfunction invokeApi (method, api, options, ...params) {\r\n const interceptor = getApiInterceptorHooks(method);\r\n if (interceptor && Object.keys(interceptor).length) {\r\n if (Array.isArray(interceptor.invoke)) {\r\n const res = queue(interceptor.invoke, options);\r\n return res.then((options) => {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n })\r\n } else {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n }\r\n }\r\n return api(options, ...params)\r\n}\r\n\r\nconst promiseInterceptor = {\r\n returnValue (res) {\r\n if (!isPromise(res)) {\r\n return res\r\n }\r\n return new Promise((resolve, reject) => {\r\n res.then(res => {\r\n if (res[0]) {\r\n reject(res[0]);\r\n } else {\r\n resolve(res[1]);\r\n }\r\n });\r\n })\r\n }\r\n};\r\n\r\nconst SYNC_API_RE =\r\n /^\\$|Window$|WindowStyle$|sendHostEvent|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getLocale|setLocale|invokePushCallback|getWindowInfo|getDeviceInfo|getAppBaseInfo|getSystemSetting|getAppAuthorizeSetting/;\r\n\r\nconst CONTEXT_API_RE = /^create|Manager$/;\r\n\r\n// Context例外情况\r\nconst CONTEXT_API_RE_EXC = ['createBLEConnection'];\r\n\r\n// 同步例外情况\r\nconst ASYNC_API = ['createBLEConnection', 'createPushMessage'];\r\n\r\nconst CALLBACK_API_RE = /^on|^off/;\r\n\r\nfunction isContextApi (name) {\r\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\r\n}\r\nfunction isSyncApi (name) {\r\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\r\n}\r\n\r\nfunction isCallbackApi (name) {\r\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\r\n}\r\n\r\nfunction handlePromise (promise) {\r\n return promise.then(data => {\r\n return [null, data]\r\n })\r\n .catch(err => [err])\r\n}\r\n\r\nfunction shouldPromise (name) {\r\n if (\r\n isContextApi(name) ||\r\n isSyncApi(name) ||\r\n isCallbackApi(name)\r\n ) {\r\n return false\r\n }\r\n return true\r\n}\r\n\r\n/* eslint-disable no-extend-native */\r\nif (!Promise.prototype.finally) {\r\n Promise.prototype.finally = function (callback) {\r\n const promise = this.constructor;\r\n return this.then(\r\n value => promise.resolve(callback()).then(() => value),\r\n reason => promise.resolve(callback()).then(() => {\r\n throw reason\r\n })\r\n )\r\n };\r\n}\r\n\r\nfunction promisify (name, api) {\r\n if (!shouldPromise(name)) {\r\n return api\r\n }\r\n return function promiseApi (options = {}, ...params) {\r\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\r\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\r\n }\r\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\r\n invokeApi(name, api, Object.assign({}, options, {\r\n success: resolve,\r\n fail: reject\r\n }), ...params);\r\n })))\r\n }\r\n}\r\n\r\nconst EPS = 1e-4;\r\nconst BASE_DEVICE_WIDTH = 750;\r\nlet isIOS = false;\r\nlet deviceWidth = 0;\r\nlet deviceDPR = 0;\r\n\r\nfunction checkDeviceWidth () {\r\n const {\r\n platform,\r\n pixelRatio,\r\n windowWidth\r\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\r\n\r\n deviceWidth = windowWidth;\r\n deviceDPR = pixelRatio;\r\n isIOS = platform === 'ios';\r\n}\r\n\r\nfunction upx2px (number, newDeviceWidth) {\r\n if (deviceWidth === 0) {\r\n checkDeviceWidth();\r\n }\r\n\r\n number = Number(number);\r\n if (number === 0) {\r\n return 0\r\n }\r\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\r\n if (result < 0) {\r\n result = -result;\r\n }\r\n result = Math.floor(result + EPS);\r\n if (result === 0) {\r\n if (deviceDPR === 1 || !isIOS) {\r\n result = 1;\r\n } else {\r\n result = 0.5;\r\n }\r\n }\r\n return number < 0 ? -result : result\r\n}\r\n\r\nconst LOCALE_ZH_HANS = 'zh-Hans';\r\nconst LOCALE_ZH_HANT = 'zh-Hant';\r\nconst LOCALE_EN = 'en';\r\nconst LOCALE_FR = 'fr';\r\nconst LOCALE_ES = 'es';\r\n\r\nconst messages = {};\r\n\r\nlet locale;\r\n\r\n{\r\n locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;\r\n}\r\n\r\nfunction initI18nMessages () {\r\n if (!isEnableLocale()) {\r\n return\r\n }\r\n const localeKeys = Object.keys(__uniConfig.locales);\r\n if (localeKeys.length) {\r\n localeKeys.forEach((locale) => {\r\n const curMessages = messages[locale];\r\n const userMessages = __uniConfig.locales[locale];\r\n if (curMessages) {\r\n Object.assign(curMessages, userMessages);\r\n } else {\r\n messages[locale] = userMessages;\r\n }\r\n });\r\n }\r\n}\r\n\r\ninitI18nMessages();\r\n\r\nconst i18n = initVueI18n(\r\n locale,\r\n {}\r\n);\r\nconst t = i18n.t;\r\nconst i18nMixin = (i18n.mixin = {\r\n beforeCreate () {\r\n const unwatch = i18n.i18n.watchLocale(() => {\r\n this.$forceUpdate();\r\n });\r\n this.$once('hook:beforeDestroy', function () {\r\n unwatch();\r\n });\r\n },\r\n methods: {\r\n $$t (key, values) {\r\n return t(key, values)\r\n }\r\n }\r\n});\r\nconst setLocale = i18n.setLocale;\r\nconst getLocale = i18n.getLocale;\r\n\r\nfunction initAppLocale (Vue, appVm, locale) {\r\n const state = Vue.observable({\r\n locale: locale || i18n.getLocale()\r\n });\r\n const localeWatchers = [];\r\n appVm.$watchLocale = fn => {\r\n localeWatchers.push(fn);\r\n };\r\n Object.defineProperty(appVm, '$locale', {\r\n get () {\r\n return state.locale\r\n },\r\n set (v) {\r\n state.locale = v;\r\n localeWatchers.forEach(watch => watch(v));\r\n }\r\n });\r\n}\r\n\r\nfunction isEnableLocale () {\r\n return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length\r\n}\r\n\r\nfunction include (str, parts) {\r\n return !!parts.find((part) => str.indexOf(part) !== -1)\r\n}\r\n\r\nfunction startsWith (str, parts) {\r\n return parts.find((part) => str.indexOf(part) === 0)\r\n}\r\n\r\nfunction normalizeLocale (locale, messages) {\r\n if (!locale) {\r\n return\r\n }\r\n locale = locale.trim().replace(/_/g, '-');\r\n if (messages && messages[locale]) {\r\n return locale\r\n }\r\n locale = locale.toLowerCase();\r\n if (locale === 'chinese') {\r\n // 支付宝\r\n return LOCALE_ZH_HANS\r\n }\r\n if (locale.indexOf('zh') === 0) {\r\n if (locale.indexOf('-hans') > -1) {\r\n return LOCALE_ZH_HANS\r\n }\r\n if (locale.indexOf('-hant') > -1) {\r\n return LOCALE_ZH_HANT\r\n }\r\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\r\n return LOCALE_ZH_HANT\r\n }\r\n return LOCALE_ZH_HANS\r\n }\r\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\r\n if (lang) {\r\n return lang\r\n }\r\n}\r\n// export function initI18n() {\r\n// const localeKeys = Object.keys(__uniConfig.locales || {})\r\n// if (localeKeys.length) {\r\n// localeKeys.forEach((locale) =>\r\n// i18n.add(locale, __uniConfig.locales[locale])\r\n// )\r\n// }\r\n// }\r\n\r\nfunction getLocale$1 () {\r\n // 优先使用 $locale\r\n const app = getApp({\r\n allowDefault: true\r\n });\r\n if (app && app.$vm) {\r\n return app.$vm.$locale\r\n }\r\n return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN\r\n}\r\n\r\nfunction setLocale$1 (locale) {\r\n const app = getApp();\r\n if (!app) {\r\n return false\r\n }\r\n const oldLocale = app.$vm.$locale;\r\n if (oldLocale !== locale) {\r\n app.$vm.$locale = locale;\r\n onLocaleChangeCallbacks.forEach((fn) => fn({\r\n locale\r\n }));\r\n return true\r\n }\r\n return false\r\n}\r\n\r\nconst onLocaleChangeCallbacks = [];\r\nfunction onLocaleChange (fn) {\r\n if (onLocaleChangeCallbacks.indexOf(fn) === -1) {\r\n onLocaleChangeCallbacks.push(fn);\r\n }\r\n}\r\n\r\nif (typeof global !== 'undefined') {\r\n global.getLocale = getLocale$1;\r\n}\r\n\r\nconst interceptors = {\r\n promiseInterceptor\r\n};\r\n\r\nvar baseApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n upx2px: upx2px,\r\n getLocale: getLocale$1,\r\n setLocale: setLocale$1,\r\n onLocaleChange: onLocaleChange,\r\n addInterceptor: addInterceptor,\r\n removeInterceptor: removeInterceptor,\r\n interceptors: interceptors\r\n});\r\n\r\nfunction findExistsPageIndex (url) {\r\n const pages = getCurrentPages();\r\n let len = pages.length;\r\n while (len--) {\r\n const page = pages[len];\r\n if (page.$page && page.$page.fullPath === url) {\r\n return len\r\n }\r\n }\r\n return -1\r\n}\r\n\r\nvar redirectTo = {\r\n name (fromArgs) {\r\n if (fromArgs.exists === 'back' && fromArgs.delta) {\r\n return 'navigateBack'\r\n }\r\n return 'redirectTo'\r\n },\r\n args (fromArgs) {\r\n if (fromArgs.exists === 'back' && fromArgs.url) {\r\n const existsPageIndex = findExistsPageIndex(fromArgs.url);\r\n if (existsPageIndex !== -1) {\r\n const delta = getCurrentPages().length - 1 - existsPageIndex;\r\n if (delta > 0) {\r\n fromArgs.delta = delta;\r\n }\r\n }\r\n }\r\n }\r\n};\r\n\r\nvar previewImage = {\r\n args (fromArgs) {\r\n let currentIndex = parseInt(fromArgs.current);\r\n if (isNaN(currentIndex)) {\r\n return\r\n }\r\n const urls = fromArgs.urls;\r\n if (!Array.isArray(urls)) {\r\n return\r\n }\r\n const len = urls.length;\r\n if (!len) {\r\n return\r\n }\r\n if (currentIndex < 0) {\r\n currentIndex = 0;\r\n } else if (currentIndex >= len) {\r\n currentIndex = len - 1;\r\n }\r\n if (currentIndex > 0) {\r\n fromArgs.current = urls[currentIndex];\r\n fromArgs.urls = urls.filter(\r\n (item, index) => index < currentIndex ? item !== urls[currentIndex] : true\r\n );\r\n } else {\r\n fromArgs.current = urls[0];\r\n }\r\n return {\r\n indicator: false,\r\n loop: false\r\n }\r\n }\r\n};\r\n\r\nconst UUID_KEY = '__DC_STAT_UUID';\r\nlet deviceId;\r\nfunction useDeviceId (result) {\r\n deviceId = deviceId || wx.getStorageSync(UUID_KEY);\r\n if (!deviceId) {\r\n deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);\r\n wx.setStorage({\r\n key: UUID_KEY,\r\n data: deviceId\r\n });\r\n }\r\n result.deviceId = deviceId;\r\n}\r\n\r\nfunction addSafeAreaInsets (result) {\r\n if (result.safeArea) {\r\n const safeArea = result.safeArea;\r\n result.safeAreaInsets = {\r\n top: safeArea.top,\r\n left: safeArea.left,\r\n right: result.windowWidth - safeArea.right,\r\n bottom: result.screenHeight - safeArea.bottom\r\n };\r\n }\r\n}\r\n\r\nfunction populateParameters (result) {\r\n const {\r\n brand = '', model = '', system = '',\r\n language = '', theme, version,\r\n platform, fontSizeSetting,\r\n SDKVersion, pixelRatio, deviceOrientation\r\n } = result;\r\n // const isQuickApp = \"mp-weixin\".indexOf('quickapp-webview') !== -1\r\n\r\n // osName osVersion\r\n let osName = '';\r\n let osVersion = '';\r\n {\r\n osName = system.split(' ')[0] || '';\r\n osVersion = system.split(' ')[1] || '';\r\n }\r\n let hostVersion = version;\r\n\r\n // deviceType\r\n const deviceType = getGetDeviceType(result, model);\r\n\r\n // deviceModel\r\n const deviceBrand = getDeviceBrand(brand);\r\n\r\n // hostName\r\n const _hostName = getHostName(result);\r\n\r\n // deviceOrientation\r\n let _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持\r\n\r\n // devicePixelRatio\r\n let _devicePixelRatio = pixelRatio;\r\n\r\n // SDKVersion\r\n let _SDKVersion = SDKVersion;\r\n\r\n // hostLanguage\r\n const hostLanguage = language.replace(/_/g, '-');\r\n\r\n // wx.getAccountInfoSync\r\n\r\n const parameters = {\r\n appId: process.env.UNI_APP_ID,\r\n appName: process.env.UNI_APP_NAME,\r\n appVersion: process.env.UNI_APP_VERSION_NAME,\r\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\r\n appLanguage: getAppLanguage(hostLanguage),\r\n uniCompileVersion: process.env.UNI_COMPILER_VERSION,\r\n uniRuntimeVersion: process.env.UNI_COMPILER_VERSION,\r\n uniPlatform: process.env.UNI_SUB_PLATFORM || process.env.UNI_PLATFORM,\r\n deviceBrand,\r\n deviceModel: model,\r\n deviceType,\r\n devicePixelRatio: _devicePixelRatio,\r\n deviceOrientation: _deviceOrientation,\r\n osName: osName.toLocaleLowerCase(),\r\n osVersion,\r\n hostTheme: theme,\r\n hostVersion,\r\n hostLanguage,\r\n hostName: _hostName,\r\n hostSDKVersion: _SDKVersion,\r\n hostFontSizeSetting: fontSizeSetting,\r\n windowTop: 0,\r\n windowBottom: 0,\r\n // TODO\r\n osLanguage: undefined,\r\n osTheme: undefined,\r\n ua: undefined,\r\n hostPackageName: undefined,\r\n browserName: undefined,\r\n browserVersion: undefined\r\n };\r\n\r\n Object.assign(result, parameters);\r\n}\r\n\r\nfunction getGetDeviceType (result, model) {\r\n let deviceType = result.deviceType || 'phone';\r\n {\r\n const deviceTypeMaps = {\r\n ipad: 'pad',\r\n windows: 'pc',\r\n mac: 'pc'\r\n };\r\n const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);\r\n const _model = model.toLocaleLowerCase();\r\n for (let index = 0; index < deviceTypeMapsKeys.length; index++) {\r\n const _m = deviceTypeMapsKeys[index];\r\n if (_model.indexOf(_m) !== -1) {\r\n deviceType = deviceTypeMaps[_m];\r\n break\r\n }\r\n }\r\n }\r\n return deviceType\r\n}\r\n\r\nfunction getDeviceBrand (brand) {\r\n let deviceBrand = brand;\r\n if (deviceBrand) {\r\n deviceBrand = brand.toLocaleLowerCase();\r\n }\r\n return deviceBrand\r\n}\r\n\r\nfunction getAppLanguage (defaultLanguage) {\r\n return getLocale$1\r\n ? getLocale$1()\r\n : defaultLanguage\r\n}\r\n\r\nfunction getHostName (result) {\r\n const _platform = 'WeChat' ;\r\n let _hostName = result.hostName || _platform; // mp-jd\r\n {\r\n if (result.environment) {\r\n _hostName = result.environment;\r\n } else if (result.host && result.host.env) {\r\n _hostName = result.host.env;\r\n }\r\n }\r\n\r\n return _hostName\r\n}\r\n\r\nvar getSystemInfo = {\r\n returnValue: function (result) {\r\n useDeviceId(result);\r\n addSafeAreaInsets(result);\r\n populateParameters(result);\r\n }\r\n};\r\n\r\nvar showActionSheet = {\r\n args (fromArgs) {\r\n if (typeof fromArgs === 'object') {\r\n fromArgs.alertText = fromArgs.title;\r\n }\r\n }\r\n};\r\n\r\nvar getAppBaseInfo = {\r\n returnValue: function (result) {\r\n const { version, language, SDKVersion, theme } = result;\r\n\r\n const _hostName = getHostName(result);\r\n\r\n const hostLanguage = language.replace('_', '-');\r\n\r\n result = sortObject(Object.assign(result, {\r\n appId: process.env.UNI_APP_ID,\r\n appName: process.env.UNI_APP_NAME,\r\n appVersion: process.env.UNI_APP_VERSION_NAME,\r\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\r\n appLanguage: getAppLanguage(hostLanguage),\r\n hostVersion: version,\r\n hostLanguage,\r\n hostName: _hostName,\r\n hostSDKVersion: SDKVersion,\r\n hostTheme: theme\r\n }));\r\n }\r\n};\r\n\r\nvar getDeviceInfo = {\r\n returnValue: function (result) {\r\n const { brand, model } = result;\r\n const deviceType = getGetDeviceType(result, model);\r\n const deviceBrand = getDeviceBrand(brand);\r\n useDeviceId(result);\r\n\r\n result = sortObject(Object.assign(result, {\r\n deviceType,\r\n deviceBrand,\r\n deviceModel: model\r\n }));\r\n }\r\n};\r\n\r\nvar getWindowInfo = {\r\n returnValue: function (result) {\r\n addSafeAreaInsets(result);\r\n\r\n result = sortObject(Object.assign(result, {\r\n windowTop: 0,\r\n windowBottom: 0\r\n }));\r\n }\r\n};\r\n\r\nvar getAppAuthorizeSetting = {\r\n returnValue: function (result) {\r\n const { locationReducedAccuracy } = result;\r\n\r\n result.locationAccuracy = 'unsupported';\r\n if (locationReducedAccuracy === true) {\r\n result.locationAccuracy = 'reduced';\r\n } else if (locationReducedAccuracy === false) {\r\n result.locationAccuracy = 'full';\r\n }\r\n }\r\n};\r\n\r\n// import navigateTo from 'uni-helpers/navigate-to'\r\n\r\nconst protocols = {\r\n redirectTo,\r\n // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP\r\n previewImage,\r\n getSystemInfo,\r\n getSystemInfoSync: getSystemInfo,\r\n showActionSheet,\r\n getAppBaseInfo,\r\n getDeviceInfo,\r\n getWindowInfo,\r\n getAppAuthorizeSetting\r\n};\r\nconst todos = [\r\n 'vibrate',\r\n 'preloadPage',\r\n 'unPreloadPage',\r\n 'loadSubPackage'\r\n];\r\nconst canIUses = [];\r\n\r\nconst CALLBACKS = ['success', 'fail', 'cancel', 'complete'];\r\n\r\nfunction processCallback (methodName, method, returnValue) {\r\n return function (res) {\r\n return method(processReturnValue(methodName, res, returnValue))\r\n }\r\n}\r\n\r\nfunction processArgs (methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {\r\n if (isPlainObject(fromArgs)) { // 一般 api 的参数解析\r\n const toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值\r\n if (isFn(argsOption)) {\r\n argsOption = argsOption(fromArgs, toArgs) || {};\r\n }\r\n for (const key in fromArgs) {\r\n if (hasOwn(argsOption, key)) {\r\n let keyOption = argsOption[key];\r\n if (isFn(keyOption)) {\r\n keyOption = keyOption(fromArgs[key], fromArgs, toArgs);\r\n }\r\n if (!keyOption) { // 不支持的参数\r\n console.warn(`The '${methodName}' method of platform '微信小程序' does not support option '${key}'`);\r\n } else if (isStr(keyOption)) { // 重写参数 key\r\n toArgs[keyOption] = fromArgs[key];\r\n } else if (isPlainObject(keyOption)) { // {name:newName,value:value}可重新指定参数 key:value\r\n toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;\r\n }\r\n } else if (CALLBACKS.indexOf(key) !== -1) {\r\n if (isFn(fromArgs[key])) {\r\n toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\r\n }\r\n } else {\r\n if (!keepFromArgs) {\r\n toArgs[key] = fromArgs[key];\r\n }\r\n }\r\n }\r\n return toArgs\r\n } else if (isFn(fromArgs)) {\r\n fromArgs = processCallback(methodName, fromArgs, returnValue);\r\n }\r\n return fromArgs\r\n}\r\n\r\nfunction processReturnValue (methodName, res, returnValue, keepReturnValue = false) {\r\n if (isFn(protocols.returnValue)) { // 处理通用 returnValue\r\n res = protocols.returnValue(methodName, res);\r\n }\r\n return processArgs(methodName, res, returnValue, {}, keepReturnValue)\r\n}\r\n\r\nfunction wrapper (methodName, method) {\r\n if (hasOwn(protocols, methodName)) {\r\n const protocol = protocols[methodName];\r\n if (!protocol) { // 暂不支持的 api\r\n return function () {\r\n console.error(`Platform '微信小程序' does not support '${methodName}'.`);\r\n }\r\n }\r\n return function (arg1, arg2) { // 目前 api 最多两个参数\r\n let options = protocol;\r\n if (isFn(protocol)) {\r\n options = protocol(arg1);\r\n }\r\n\r\n arg1 = processArgs(methodName, arg1, options.args, options.returnValue);\r\n\r\n const args = [arg1];\r\n if (typeof arg2 !== 'undefined') {\r\n args.push(arg2);\r\n }\r\n if (isFn(options.name)) {\r\n methodName = options.name(arg1);\r\n } else if (isStr(options.name)) {\r\n methodName = options.name;\r\n }\r\n const returnValue = wx[methodName].apply(wx, args);\r\n if (isSyncApi(methodName)) { // 同步 api\r\n return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName))\r\n }\r\n return returnValue\r\n }\r\n }\r\n return method\r\n}\r\n\r\nconst todoApis = Object.create(null);\r\n\r\nconst TODOS = [\r\n 'onTabBarMidButtonTap',\r\n 'subscribePush',\r\n 'unsubscribePush',\r\n 'onPush',\r\n 'offPush',\r\n 'share'\r\n];\r\n\r\nfunction createTodoApi (name) {\r\n return function todoApi ({\r\n fail,\r\n complete\r\n }) {\r\n const res = {\r\n errMsg: `${name}:fail method '${name}' not supported`\r\n };\r\n isFn(fail) && fail(res);\r\n isFn(complete) && complete(res);\r\n }\r\n}\r\n\r\nTODOS.forEach(function (name) {\r\n todoApis[name] = createTodoApi(name);\r\n});\r\n\r\nvar providers = {\r\n oauth: ['weixin'],\r\n share: ['weixin'],\r\n payment: ['wxpay'],\r\n push: ['weixin']\r\n};\r\n\r\nfunction getProvider ({\r\n service,\r\n success,\r\n fail,\r\n complete\r\n}) {\r\n let res = false;\r\n if (providers[service]) {\r\n res = {\r\n errMsg: 'getProvider:ok',\r\n service,\r\n provider: providers[service]\r\n };\r\n isFn(success) && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getProvider:fail service not found'\r\n };\r\n isFn(fail) && fail(res);\r\n }\r\n isFn(complete) && complete(res);\r\n}\r\n\r\nvar extraApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n getProvider: getProvider\r\n});\r\n\r\nconst getEmitter = (function () {\r\n let Emitter;\r\n return function getUniEmitter () {\r\n if (!Emitter) {\r\n Emitter = new Vue();\r\n }\r\n return Emitter\r\n }\r\n})();\r\n\r\nfunction apply (ctx, method, args) {\r\n return ctx[method].apply(ctx, args)\r\n}\r\n\r\nfunction $on () {\r\n return apply(getEmitter(), '$on', [...arguments])\r\n}\r\nfunction $off () {\r\n return apply(getEmitter(), '$off', [...arguments])\r\n}\r\nfunction $once () {\r\n return apply(getEmitter(), '$once', [...arguments])\r\n}\r\nfunction $emit () {\r\n return apply(getEmitter(), '$emit', [...arguments])\r\n}\r\n\r\nvar eventApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n $on: $on,\r\n $off: $off,\r\n $once: $once,\r\n $emit: $emit\r\n});\r\n\r\n/**\r\n * 框架内 try-catch\r\n */\r\n/**\r\n * 开发者 try-catch\r\n */\r\nfunction tryCatch (fn) {\r\n return function () {\r\n try {\r\n return fn.apply(fn, arguments)\r\n } catch (e) {\r\n // TODO\r\n console.error(e);\r\n }\r\n }\r\n}\r\n\r\nfunction getApiCallbacks (params) {\r\n const apiCallbacks = {};\r\n for (const name in params) {\r\n const param = params[name];\r\n if (isFn(param)) {\r\n apiCallbacks[name] = tryCatch(param);\r\n delete params[name];\r\n }\r\n }\r\n return apiCallbacks\r\n}\r\n\r\nlet cid;\r\nlet cidErrMsg;\r\nlet enabled;\r\n\r\nfunction normalizePushMessage (message) {\r\n try {\r\n return JSON.parse(message)\r\n } catch (e) {}\r\n return message\r\n}\r\n\r\nfunction invokePushCallback (\r\n args\r\n) {\r\n if (args.type === 'enabled') {\r\n enabled = true;\r\n } else if (args.type === 'clientId') {\r\n cid = args.cid;\r\n cidErrMsg = args.errMsg;\r\n invokeGetPushCidCallbacks(cid, args.errMsg);\r\n } else if (args.type === 'pushMsg') {\r\n const message = {\r\n type: 'receive',\r\n data: normalizePushMessage(args.message)\r\n };\r\n for (let i = 0; i < onPushMessageCallbacks.length; i++) {\r\n const callback = onPushMessageCallbacks[i];\r\n callback(message);\r\n // 该消息已被阻止\r\n if (message.stopped) {\r\n break\r\n }\r\n }\r\n } else if (args.type === 'click') {\r\n onPushMessageCallbacks.forEach((callback) => {\r\n callback({\r\n type: 'click',\r\n data: normalizePushMessage(args.message)\r\n });\r\n });\r\n }\r\n}\r\n\r\nconst getPushCidCallbacks = [];\r\n\r\nfunction invokeGetPushCidCallbacks (cid, errMsg) {\r\n getPushCidCallbacks.forEach((callback) => {\r\n callback(cid, errMsg);\r\n });\r\n getPushCidCallbacks.length = 0;\r\n}\r\n\r\nfunction getPushClientId (args) {\r\n if (!isPlainObject(args)) {\r\n args = {};\r\n }\r\n const {\r\n success,\r\n fail,\r\n complete\r\n } = getApiCallbacks(args);\r\n const hasSuccess = isFn(success);\r\n const hasFail = isFn(fail);\r\n const hasComplete = isFn(complete);\r\n\r\n Promise.resolve().then(() => {\r\n if (typeof enabled === 'undefined') {\r\n enabled = false;\r\n cid = '';\r\n cidErrMsg = 'uniPush is not enabled';\r\n }\r\n getPushCidCallbacks.push((cid, errMsg) => {\r\n let res;\r\n if (cid) {\r\n res = {\r\n errMsg: 'getPushClientId:ok',\r\n cid\r\n };\r\n hasSuccess && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')\r\n };\r\n hasFail && fail(res);\r\n }\r\n hasComplete && complete(res);\r\n });\r\n if (typeof cid !== 'undefined') {\r\n invokeGetPushCidCallbacks(cid, cidErrMsg);\r\n }\r\n });\r\n}\r\n\r\nconst onPushMessageCallbacks = [];\r\n// 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现\r\nconst onPushMessage = (fn) => {\r\n if (onPushMessageCallbacks.indexOf(fn) === -1) {\r\n onPushMessageCallbacks.push(fn);\r\n }\r\n};\r\n\r\nconst offPushMessage = (fn) => {\r\n if (!fn) {\r\n onPushMessageCallbacks.length = 0;\r\n } else {\r\n const index = onPushMessageCallbacks.indexOf(fn);\r\n if (index > -1) {\r\n onPushMessageCallbacks.splice(index, 1);\r\n }\r\n }\r\n};\r\n\r\nvar api = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n getPushClientId: getPushClientId,\r\n onPushMessage: onPushMessage,\r\n offPushMessage: offPushMessage,\r\n invokePushCallback: invokePushCallback\r\n});\r\n\r\nconst MPPage = Page;\r\nconst MPComponent = Component;\r\n\r\nconst customizeRE = /:/g;\r\n\r\nconst customize = cached((str) => {\r\n return camelize(str.replace(customizeRE, '-'))\r\n});\r\n\r\nfunction initTriggerEvent (mpInstance) {\r\n const oldTriggerEvent = mpInstance.triggerEvent;\r\n const newTriggerEvent = function (event, ...args) {\r\n // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件\r\n if (this.$vm || (this.dataset && this.dataset.comType)) {\r\n event = customize(event);\r\n } else {\r\n // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目\r\n const newEvent = customize(event);\r\n if (newEvent !== event) {\r\n oldTriggerEvent.apply(this, [newEvent, ...args]);\r\n }\r\n }\r\n return oldTriggerEvent.apply(this, [event, ...args])\r\n };\r\n try {\r\n // 京东小程序 triggerEvent 为只读\r\n mpInstance.triggerEvent = newTriggerEvent;\r\n } catch (error) {\r\n mpInstance._triggerEvent = newTriggerEvent;\r\n }\r\n}\r\n\r\nfunction initHook (name, options, isComponent) {\r\n const oldHook = options[name];\r\n if (!oldHook) {\r\n options[name] = function () {\r\n initTriggerEvent(this);\r\n };\r\n } else {\r\n options[name] = function (...args) {\r\n initTriggerEvent(this);\r\n return oldHook.apply(this, args)\r\n };\r\n }\r\n}\r\nif (!MPPage.__$wrappered) {\r\n MPPage.__$wrappered = true;\r\n Page = function (options = {}) {\r\n initHook('onLoad', options);\r\n return MPPage(options)\r\n };\r\n Page.after = MPPage.after;\r\n\r\n Component = function (options = {}) {\r\n initHook('created', options);\r\n return MPComponent(options)\r\n };\r\n}\r\n\r\nconst PAGE_EVENT_HOOKS = [\r\n 'onPullDownRefresh',\r\n 'onReachBottom',\r\n 'onAddToFavorites',\r\n 'onShareTimeline',\r\n 'onShareAppMessage',\r\n 'onPageScroll',\r\n 'onResize',\r\n 'onTabItemTap'\r\n];\r\n\r\nfunction initMocks (vm, mocks) {\r\n const mpInstance = vm.$mp[vm.mpType];\r\n mocks.forEach(mock => {\r\n if (hasOwn(mpInstance, mock)) {\r\n vm[mock] = mpInstance[mock];\r\n }\r\n });\r\n}\r\n\r\nfunction hasHook (hook, vueOptions) {\r\n if (!vueOptions) {\r\n return true\r\n }\r\n\r\n if (Vue.options && Array.isArray(Vue.options[hook])) {\r\n return true\r\n }\r\n\r\n vueOptions = vueOptions.default || vueOptions;\r\n\r\n if (isFn(vueOptions)) {\r\n if (isFn(vueOptions.extendOptions[hook])) {\r\n return true\r\n }\r\n if (vueOptions.super &&\r\n vueOptions.super.options &&\r\n Array.isArray(vueOptions.super.options[hook])) {\r\n return true\r\n }\r\n return false\r\n }\r\n\r\n if (isFn(vueOptions[hook])) {\r\n return true\r\n }\r\n const mixins = vueOptions.mixins;\r\n if (Array.isArray(mixins)) {\r\n return !!mixins.find(mixin => hasHook(hook, mixin))\r\n }\r\n}\r\n\r\nfunction initHooks (mpOptions, hooks, vueOptions) {\r\n hooks.forEach(hook => {\r\n if (hasHook(hook, vueOptions)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n });\r\n}\r\n\r\nfunction initUnknownHooks (mpOptions, vueOptions, excludes = []) {\r\n findHooks(vueOptions).forEach((hook) => initHook$1(mpOptions, hook, excludes));\r\n}\r\n\r\nfunction findHooks (vueOptions, hooks = []) {\r\n if (vueOptions) {\r\n Object.keys(vueOptions).forEach((name) => {\r\n if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {\r\n hooks.push(name);\r\n }\r\n });\r\n }\r\n return hooks\r\n}\r\n\r\nfunction initHook$1 (mpOptions, hook, excludes) {\r\n if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n}\r\n\r\nfunction initVueComponent (Vue, vueOptions) {\r\n vueOptions = vueOptions.default || vueOptions;\r\n let VueComponent;\r\n if (isFn(vueOptions)) {\r\n VueComponent = vueOptions;\r\n } else {\r\n VueComponent = Vue.extend(vueOptions);\r\n }\r\n vueOptions = VueComponent.options;\r\n return [VueComponent, vueOptions]\r\n}\r\n\r\nfunction initSlots (vm, vueSlots) {\r\n if (Array.isArray(vueSlots) && vueSlots.length) {\r\n const $slots = Object.create(null);\r\n vueSlots.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n vm.$scopedSlots = vm.$slots = $slots;\r\n }\r\n}\r\n\r\nfunction initVueIds (vueIds, mpInstance) {\r\n vueIds = (vueIds || '').split(',');\r\n const len = vueIds.length;\r\n\r\n if (len === 1) {\r\n mpInstance._$vueId = vueIds[0];\r\n } else if (len === 2) {\r\n mpInstance._$vueId = vueIds[0];\r\n mpInstance._$vuePid = vueIds[1];\r\n }\r\n}\r\n\r\nfunction initData (vueOptions, context) {\r\n let data = vueOptions.data || {};\r\n const methods = vueOptions.methods || {};\r\n\r\n if (typeof data === 'function') {\r\n try {\r\n data = data.call(context); // 支持 Vue.prototype 上挂的数据\r\n } catch (e) {\r\n if (process.env.VUE_APP_DEBUG) {\r\n console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);\r\n }\r\n }\r\n } else {\r\n try {\r\n // 对 data 格式化\r\n data = JSON.parse(JSON.stringify(data));\r\n } catch (e) { }\r\n }\r\n\r\n if (!isPlainObject(data)) {\r\n data = {};\r\n }\r\n\r\n Object.keys(methods).forEach(methodName => {\r\n if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {\r\n data[methodName] = methods[methodName];\r\n }\r\n });\r\n\r\n return data\r\n}\r\n\r\nconst PROP_TYPES = [String, Number, Boolean, Object, Array, null];\r\n\r\nfunction createObserver (name) {\r\n return function observer (newVal, oldVal) {\r\n if (this.$vm) {\r\n this.$vm[name] = newVal; // 为了触发其他非 render watcher\r\n }\r\n }\r\n}\r\n\r\nfunction initBehaviors (vueOptions, initBehavior) {\r\n const vueBehaviors = vueOptions.behaviors;\r\n const vueExtends = vueOptions.extends;\r\n const vueMixins = vueOptions.mixins;\r\n\r\n let vueProps = vueOptions.props;\r\n\r\n if (!vueProps) {\r\n vueOptions.props = vueProps = [];\r\n }\r\n\r\n const behaviors = [];\r\n if (Array.isArray(vueBehaviors)) {\r\n vueBehaviors.forEach(behavior => {\r\n behaviors.push(behavior.replace('uni://', `${\"wx\"}://`));\r\n if (behavior === 'uni://form-field') {\r\n if (Array.isArray(vueProps)) {\r\n vueProps.push('name');\r\n vueProps.push('value');\r\n } else {\r\n vueProps.name = {\r\n type: String,\r\n default: ''\r\n };\r\n vueProps.value = {\r\n type: [String, Number, Boolean, Array, Object, Date],\r\n default: ''\r\n };\r\n }\r\n }\r\n });\r\n }\r\n if (isPlainObject(vueExtends) && vueExtends.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueExtends.props, true)\r\n })\r\n );\r\n }\r\n if (Array.isArray(vueMixins)) {\r\n vueMixins.forEach(vueMixin => {\r\n if (isPlainObject(vueMixin) && vueMixin.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueMixin.props, true)\r\n })\r\n );\r\n }\r\n });\r\n }\r\n return behaviors\r\n}\r\n\r\nfunction parsePropType (key, type, defaultValue, file) {\r\n // [String]=>String\r\n if (Array.isArray(type) && type.length === 1) {\r\n return type[0]\r\n }\r\n return type\r\n}\r\n\r\nfunction initProperties (props, isBehavior = false, file = '', options) {\r\n const properties = {};\r\n if (!isBehavior) {\r\n properties.vueId = {\r\n type: String,\r\n value: ''\r\n };\r\n {\r\n if ( options.virtualHost) {\r\n properties.virtualHostStyle = {\r\n type: null,\r\n value: ''\r\n };\r\n properties.virtualHostClass = {\r\n type: null,\r\n value: ''\r\n };\r\n }\r\n }\r\n // scopedSlotsCompiler auto\r\n properties.scopedSlotsCompiler = {\r\n type: String,\r\n value: ''\r\n };\r\n properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots\r\n type: null,\r\n value: [],\r\n observer: function (newVal, oldVal) {\r\n const $slots = Object.create(null);\r\n newVal.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n this.setData({\r\n $slots\r\n });\r\n }\r\n };\r\n }\r\n if (Array.isArray(props)) { // ['title']\r\n props.forEach(key => {\r\n properties[key] = {\r\n type: null,\r\n observer: createObserver(key)\r\n };\r\n });\r\n } else if (isPlainObject(props)) { // {title:{type:String,default:''},content:String}\r\n Object.keys(props).forEach(key => {\r\n const opts = props[key];\r\n if (isPlainObject(opts)) { // title:{type:String,default:''}\r\n let value = opts.default;\r\n if (isFn(value)) {\r\n value = value();\r\n }\r\n\r\n opts.type = parsePropType(key, opts.type);\r\n\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,\r\n value,\r\n observer: createObserver(key)\r\n };\r\n } else { // content:String\r\n const type = parsePropType(key, opts);\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(type) !== -1 ? type : null,\r\n observer: createObserver(key)\r\n };\r\n }\r\n });\r\n }\r\n return properties\r\n}\r\n\r\nfunction wrapper$1 (event) {\r\n // TODO 又得兼容 mpvue 的 mp 对象\r\n try {\r\n event.mp = JSON.parse(JSON.stringify(event));\r\n } catch (e) { }\r\n\r\n event.stopPropagation = noop;\r\n event.preventDefault = noop;\r\n\r\n event.target = event.target || {};\r\n\r\n if (!hasOwn(event, 'detail')) {\r\n event.detail = {};\r\n }\r\n\r\n if (hasOwn(event, 'markerId')) {\r\n event.detail = typeof event.detail === 'object' ? event.detail : {};\r\n event.detail.markerId = event.markerId;\r\n }\r\n\r\n if (isPlainObject(event.detail)) {\r\n event.target = Object.assign({}, event.target, event.detail);\r\n }\r\n\r\n return event\r\n}\r\n\r\nfunction getExtraValue (vm, dataPathsArray) {\r\n let context = vm;\r\n dataPathsArray.forEach(dataPathArray => {\r\n const dataPath = dataPathArray[0];\r\n const value = dataPathArray[2];\r\n if (dataPath || typeof value !== 'undefined') { // ['','',index,'disable']\r\n const propPath = dataPathArray[1];\r\n const valuePath = dataPathArray[3];\r\n\r\n let vFor;\r\n if (Number.isInteger(dataPath)) {\r\n vFor = dataPath;\r\n } else if (!dataPath) {\r\n vFor = context;\r\n } else if (typeof dataPath === 'string' && dataPath) {\r\n if (dataPath.indexOf('#s#') === 0) {\r\n vFor = dataPath.substr(3);\r\n } else {\r\n vFor = vm.__get_value(dataPath, context);\r\n }\r\n }\r\n\r\n if (Number.isInteger(vFor)) {\r\n context = value;\r\n } else if (!propPath) {\r\n context = vFor[value];\r\n } else {\r\n if (Array.isArray(vFor)) {\r\n context = vFor.find(vForItem => {\r\n return vm.__get_value(propPath, vForItem) === value\r\n });\r\n } else if (isPlainObject(vFor)) {\r\n context = Object.keys(vFor).find(vForKey => {\r\n return vm.__get_value(propPath, vFor[vForKey]) === value\r\n });\r\n } else {\r\n console.error('v-for 暂不支持循环数据:', vFor);\r\n }\r\n }\r\n\r\n if (valuePath) {\r\n context = vm.__get_value(valuePath, context);\r\n }\r\n }\r\n });\r\n return context\r\n}\r\n\r\nfunction processEventExtra (vm, extra, event, __args__) {\r\n const extraObj = {};\r\n\r\n if (Array.isArray(extra) && extra.length) {\r\n /**\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *'test'\r\n */\r\n extra.forEach((dataPath, index) => {\r\n if (typeof dataPath === 'string') {\r\n if (!dataPath) { // model,prop.sync\r\n extraObj['$' + index] = vm;\r\n } else {\r\n if (dataPath === '$event') { // $event\r\n extraObj['$' + index] = event;\r\n } else if (dataPath === 'arguments') {\r\n extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;\r\n } else if (dataPath.indexOf('$event.') === 0) { // $event.target.value\r\n extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);\r\n } else {\r\n extraObj['$' + index] = vm.__get_value(dataPath);\r\n }\r\n }\r\n } else {\r\n extraObj['$' + index] = getExtraValue(vm, dataPath);\r\n }\r\n });\r\n }\r\n\r\n return extraObj\r\n}\r\n\r\nfunction getObjByArray (arr) {\r\n const obj = {};\r\n for (let i = 1; i < arr.length; i++) {\r\n const element = arr[i];\r\n obj[element[0]] = element[1];\r\n }\r\n return obj\r\n}\r\n\r\nfunction processEventArgs (vm, event, args = [], extra = [], isCustom, methodName) {\r\n let isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象\r\n\r\n // fixed 用户直接触发 mpInstance.triggerEvent\r\n const __args__ = isPlainObject(event.detail)\r\n ? event.detail.__args__ || [event.detail]\r\n : [event.detail];\r\n\r\n if (isCustom) { // 自定义事件\r\n isCustomMPEvent = event.currentTarget &&\r\n event.currentTarget.dataset &&\r\n event.currentTarget.dataset.comType === 'wx';\r\n if (!args.length) { // 无参数,直接传入 event 或 detail 数组\r\n if (isCustomMPEvent) {\r\n return [event]\r\n }\r\n return __args__\r\n }\r\n }\r\n\r\n const extraObj = processEventExtra(vm, extra, event, __args__);\r\n\r\n const ret = [];\r\n args.forEach(arg => {\r\n if (arg === '$event') {\r\n if (methodName === '__set_model' && !isCustom) { // input v-model value\r\n ret.push(event.target.value);\r\n } else {\r\n if (isCustom && !isCustomMPEvent) {\r\n ret.push(__args__[0]);\r\n } else { // wxcomponent 组件或内置组件\r\n ret.push(event);\r\n }\r\n }\r\n } else {\r\n if (Array.isArray(arg) && arg[0] === 'o') {\r\n ret.push(getObjByArray(arg));\r\n } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {\r\n ret.push(extraObj[arg]);\r\n } else {\r\n ret.push(arg);\r\n }\r\n }\r\n });\r\n\r\n return ret\r\n}\r\n\r\nconst ONCE = '~';\r\nconst CUSTOM = '^';\r\n\r\nfunction isMatchEventType (eventType, optType) {\r\n return (eventType === optType) ||\r\n (\r\n optType === 'regionchange' &&\r\n (\r\n eventType === 'begin' ||\r\n eventType === 'end'\r\n )\r\n )\r\n}\r\n\r\nfunction getContextVm (vm) {\r\n let $parent = vm.$parent;\r\n // 父组件是 scoped slots 或者其他自定义组件时继续查找\r\n while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {\r\n $parent = $parent.$parent;\r\n }\r\n return $parent && $parent.$parent\r\n}\r\n\r\nfunction handleEvent (event) {\r\n event = wrapper$1(event);\r\n\r\n // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]\r\n const dataset = (event.currentTarget || event.target).dataset;\r\n if (!dataset) {\r\n return console.warn('事件信息不存在')\r\n }\r\n const eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰\r\n if (!eventOpts) {\r\n return console.warn('事件信息不存在')\r\n }\r\n\r\n // [['handle',[1,2,a]],['handle1',[1,2,a]]]\r\n const eventType = event.type;\r\n\r\n const ret = [];\r\n\r\n eventOpts.forEach(eventOpt => {\r\n let type = eventOpt[0];\r\n const eventsArray = eventOpt[1];\r\n\r\n const isCustom = type.charAt(0) === CUSTOM;\r\n type = isCustom ? type.slice(1) : type;\r\n const isOnce = type.charAt(0) === ONCE;\r\n type = isOnce ? type.slice(1) : type;\r\n\r\n if (eventsArray && isMatchEventType(eventType, type)) {\r\n eventsArray.forEach(eventArray => {\r\n const methodName = eventArray[0];\r\n if (methodName) {\r\n let handlerCtx = this.$vm;\r\n if (handlerCtx.$options.generic) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\r\n handlerCtx = getContextVm(handlerCtx) || handlerCtx;\r\n }\r\n if (methodName === '$emit') {\r\n handlerCtx.$emit.apply(handlerCtx,\r\n processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n ));\r\n return\r\n }\r\n const handler = handlerCtx[methodName];\r\n if (!isFn(handler)) {\r\n const type = this.$vm.mpType === 'page' ? 'Page' : 'Component';\r\n const path = this.route || this.is;\r\n throw new Error(`${type} \"${path}\" does not have a method \"${methodName}\"`)\r\n }\r\n if (isOnce) {\r\n if (handler.once) {\r\n return\r\n }\r\n handler.once = true;\r\n }\r\n let params = processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n );\r\n params = Array.isArray(params) ? params : [];\r\n // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据\r\n if (/=\\s*\\S+\\.eventParams\\s*\\|\\|\\s*\\S+\\[['\"]event-params['\"]\\]/.test(handler.toString())) {\r\n // eslint-disable-next-line no-sparse-arrays\r\n params = params.concat([, , , , , , , , , , event]);\r\n }\r\n ret.push(handler.apply(handlerCtx, params));\r\n }\r\n });\r\n }\r\n });\r\n\r\n if (\r\n eventType === 'input' &&\r\n ret.length === 1 &&\r\n typeof ret[0] !== 'undefined'\r\n ) {\r\n return ret[0]\r\n }\r\n}\r\n\r\nconst eventChannels = {};\r\n\r\nconst eventChannelStack = [];\r\n\r\nfunction getEventChannel (id) {\r\n if (id) {\r\n const eventChannel = eventChannels[id];\r\n delete eventChannels[id];\r\n return eventChannel\r\n }\r\n return eventChannelStack.shift()\r\n}\r\n\r\nconst hooks = [\r\n 'onShow',\r\n 'onHide',\r\n 'onError',\r\n 'onPageNotFound',\r\n 'onThemeChange',\r\n 'onUnhandledRejection'\r\n];\r\n\r\nfunction initEventChannel () {\r\n Vue.prototype.getOpenerEventChannel = function () {\r\n // 微信小程序使用自身getOpenerEventChannel\r\n {\r\n return this.$scope.getOpenerEventChannel()\r\n }\r\n };\r\n const callHook = Vue.prototype.__call_hook;\r\n Vue.prototype.__call_hook = function (hook, args) {\r\n if (hook === 'onLoad' && args && args.__id__) {\r\n this.__eventChannel__ = getEventChannel(args.__id__);\r\n delete args.__id__;\r\n }\r\n return callHook.call(this, hook, args)\r\n };\r\n}\r\n\r\nfunction initScopedSlotsParams () {\r\n const center = {};\r\n const parents = {};\r\n\r\n Vue.prototype.$hasScopedSlotsParams = function (vueId) {\r\n const has = center[vueId];\r\n if (!has) {\r\n parents[vueId] = this;\r\n this.$on('hook:destroyed', () => {\r\n delete parents[vueId];\r\n });\r\n }\r\n return has\r\n };\r\n\r\n Vue.prototype.$getScopedSlotsParams = function (vueId, name, key) {\r\n const data = center[vueId];\r\n if (data) {\r\n const object = data[name] || {};\r\n return key ? object[key] : object\r\n } else {\r\n parents[vueId] = this;\r\n this.$on('hook:destroyed', () => {\r\n delete parents[vueId];\r\n });\r\n }\r\n };\r\n\r\n Vue.prototype.$setScopedSlotsParams = function (name, value) {\r\n const vueIds = this.$options.propsData.vueId;\r\n if (vueIds) {\r\n const vueId = vueIds.split(',')[0];\r\n const object = center[vueId] = center[vueId] || {};\r\n object[name] = value;\r\n if (parents[vueId]) {\r\n parents[vueId].$forceUpdate();\r\n }\r\n }\r\n };\r\n\r\n Vue.mixin({\r\n destroyed () {\r\n const propsData = this.$options.propsData;\r\n const vueId = propsData && propsData.vueId;\r\n if (vueId) {\r\n delete center[vueId];\r\n delete parents[vueId];\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction parseBaseApp (vm, {\r\n mocks,\r\n initRefs\r\n}) {\r\n initEventChannel();\r\n {\r\n initScopedSlotsParams();\r\n }\r\n if (vm.$options.store) {\r\n Vue.prototype.$store = vm.$options.store;\r\n }\r\n uniIdMixin(Vue);\r\n\r\n Vue.prototype.mpHost = \"mp-weixin\";\r\n\r\n Vue.mixin({\r\n beforeCreate () {\r\n if (!this.$options.mpType) {\r\n return\r\n }\r\n\r\n this.mpType = this.$options.mpType;\r\n\r\n this.$mp = {\r\n data: {},\r\n [this.mpType]: this.$options.mpInstance\r\n };\r\n\r\n this.$scope = this.$options.mpInstance;\r\n\r\n delete this.$options.mpType;\r\n delete this.$options.mpInstance;\r\n if (this.mpType === 'page' && typeof getApp === 'function') { // hack vue-i18n\r\n const app = getApp();\r\n if (app.$vm && app.$vm.$i18n) {\r\n this._i18n = app.$vm.$i18n;\r\n }\r\n }\r\n if (this.mpType !== 'app') {\r\n initRefs(this);\r\n initMocks(this, mocks);\r\n }\r\n }\r\n });\r\n\r\n const appOptions = {\r\n onLaunch (args) {\r\n if (this.$vm) { // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前\r\n return\r\n }\r\n {\r\n if (wx.canIUse && !wx.canIUse('nextTick')) { // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断\r\n console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');\r\n }\r\n }\r\n\r\n this.$vm = vm;\r\n\r\n this.$vm.$mp = {\r\n app: this\r\n };\r\n\r\n this.$vm.$scope = this;\r\n // vm 上也挂载 globalData\r\n this.$vm.globalData = this.globalData;\r\n\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted', args);\r\n\r\n this.$vm.__call_hook('onLaunch', args);\r\n }\r\n };\r\n\r\n // 兼容旧版本 globalData\r\n appOptions.globalData = vm.$options.globalData || {};\r\n // 将 methods 中的方法挂在 getApp() 中\r\n const methods = vm.$options.methods;\r\n if (methods) {\r\n Object.keys(methods).forEach(name => {\r\n appOptions[name] = methods[name];\r\n });\r\n }\r\n\r\n initAppLocale(Vue, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);\r\n\r\n initHooks(appOptions, hooks);\r\n initUnknownHooks(appOptions, vm.$options);\r\n\r\n return appOptions\r\n}\r\n\r\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\r\n\r\nfunction findVmByVueId (vm, vuePid) {\r\n const $children = vm.$children;\r\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n const childVm = $children[i];\r\n if (childVm.$scope._$vueId === vuePid) {\r\n return childVm\r\n }\r\n }\r\n // 反向递归查找\r\n let parentVm;\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n parentVm = findVmByVueId($children[i], vuePid);\r\n if (parentVm) {\r\n return parentVm\r\n }\r\n }\r\n}\r\n\r\nfunction initBehavior (options) {\r\n return Behavior(options)\r\n}\r\n\r\nfunction isPage () {\r\n return !!this.route\r\n}\r\n\r\nfunction initRelation (detail) {\r\n this.triggerEvent('__l', detail);\r\n}\r\n\r\nfunction selectAllComponents (mpInstance, selector, $refs) {\r\n const components = mpInstance.selectAllComponents(selector);\r\n components.forEach(component => {\r\n const ref = component.dataset.ref;\r\n $refs[ref] = component.$vm || component;\r\n {\r\n if (component.dataset.vueGeneric === 'scoped') {\r\n component.selectAllComponents('.scoped-ref').forEach(scopedComponent => {\r\n selectAllComponents(scopedComponent, selector, $refs);\r\n });\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction initRefs (vm) {\r\n const mpInstance = vm.$scope;\r\n Object.defineProperty(vm, '$refs', {\r\n get () {\r\n const $refs = {};\r\n selectAllComponents(mpInstance, '.vue-ref', $refs);\r\n // TODO 暂不考虑 for 中的 scoped\r\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');\r\n forComponents.forEach(component => {\r\n const ref = component.dataset.ref;\r\n if (!$refs[ref]) {\r\n $refs[ref] = [];\r\n }\r\n $refs[ref].push(component.$vm || component);\r\n });\r\n return $refs\r\n }\r\n });\r\n}\r\n\r\nfunction handleLink (event) {\r\n const {\r\n vuePid,\r\n vueOptions\r\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\r\n\r\n let parentVm;\r\n\r\n if (vuePid) {\r\n parentVm = findVmByVueId(this.$vm, vuePid);\r\n }\r\n\r\n if (!parentVm) {\r\n parentVm = this.$vm;\r\n }\r\n\r\n vueOptions.parent = parentVm;\r\n}\r\n\r\nfunction parseApp (vm) {\r\n return parseBaseApp(vm, {\r\n mocks,\r\n initRefs\r\n })\r\n}\r\n\r\nfunction createApp (vm) {\r\n App(parseApp(vm));\r\n return vm\r\n}\r\n\r\nconst encodeReserveRE = /[!'()*]/g;\r\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16);\r\nconst commaRE = /%2C/g;\r\n\r\n// fixed encodeURIComponent which is more conformant to RFC3986:\r\n// - escapes [!'()*]\r\n// - preserve commas\r\nconst encode = str => encodeURIComponent(str)\r\n .replace(encodeReserveRE, encodeReserveReplacer)\r\n .replace(commaRE, ',');\r\n\r\nfunction stringifyQuery (obj, encodeStr = encode) {\r\n const res = obj ? Object.keys(obj).map(key => {\r\n const val = obj[key];\r\n\r\n if (val === undefined) {\r\n return ''\r\n }\r\n\r\n if (val === null) {\r\n return encodeStr(key)\r\n }\r\n\r\n if (Array.isArray(val)) {\r\n const result = [];\r\n val.forEach(val2 => {\r\n if (val2 === undefined) {\r\n return\r\n }\r\n if (val2 === null) {\r\n result.push(encodeStr(key));\r\n } else {\r\n result.push(encodeStr(key) + '=' + encodeStr(val2));\r\n }\r\n });\r\n return result.join('&')\r\n }\r\n\r\n return encodeStr(key) + '=' + encodeStr(val)\r\n }).filter(x => x.length > 0).join('&') : null;\r\n return res ? `?${res}` : ''\r\n}\r\n\r\nfunction parseBaseComponent (vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n} = {}) {\r\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\r\n\r\n const options = {\r\n multipleSlots: true,\r\n addGlobalClass: true,\r\n ...(vueOptions.options || {})\r\n };\r\n\r\n {\r\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\r\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\r\n Object.assign(options, vueOptions['mp-weixin'].options);\r\n }\r\n }\r\n\r\n const componentOptions = {\r\n options,\r\n data: initData(vueOptions, Vue.prototype),\r\n behaviors: initBehaviors(vueOptions, initBehavior),\r\n properties: initProperties(vueOptions.props, false, vueOptions.__file, options),\r\n lifetimes: {\r\n attached () {\r\n const properties = this.properties;\r\n\r\n const options = {\r\n mpType: isPage.call(this) ? 'page' : 'component',\r\n mpInstance: this,\r\n propsData: properties\r\n };\r\n\r\n initVueIds(properties.vueId, this);\r\n\r\n // 处理父子关系\r\n initRelation.call(this, {\r\n vuePid: this._$vuePid,\r\n vueOptions: options\r\n });\r\n\r\n // 初始化 vue 实例\r\n this.$vm = new VueComponent(options);\r\n\r\n // 处理$slots,$scopedSlots(暂不支持动态变化$slots)\r\n initSlots(this.$vm, properties.vueSlots);\r\n\r\n // 触发首次 setData\r\n this.$vm.$mount();\r\n },\r\n ready () {\r\n // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发\r\n // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800\r\n if (this.$vm) {\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted');\r\n this.$vm.__call_hook('onReady');\r\n }\r\n },\r\n detached () {\r\n this.$vm && this.$vm.$destroy();\r\n }\r\n },\r\n pageLifetimes: {\r\n show (args) {\r\n this.$vm && this.$vm.__call_hook('onPageShow', args);\r\n },\r\n hide () {\r\n this.$vm && this.$vm.__call_hook('onPageHide');\r\n },\r\n resize (size) {\r\n this.$vm && this.$vm.__call_hook('onPageResize', size);\r\n }\r\n },\r\n methods: {\r\n __l: handleLink,\r\n __e: handleEvent\r\n }\r\n };\r\n // externalClasses\r\n if (vueOptions.externalClasses) {\r\n componentOptions.externalClasses = vueOptions.externalClasses;\r\n }\r\n\r\n if (Array.isArray(vueOptions.wxsCallMethods)) {\r\n vueOptions.wxsCallMethods.forEach(callMethod => {\r\n componentOptions.methods[callMethod] = function (args) {\r\n return this.$vm[callMethod](args)\r\n };\r\n });\r\n }\r\n\r\n if (isPage) {\r\n return componentOptions\r\n }\r\n return [componentOptions, VueComponent]\r\n}\r\n\r\nfunction parseComponent (vueComponentOptions) {\r\n return parseBaseComponent(vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nconst hooks$1 = [\r\n 'onShow',\r\n 'onHide',\r\n 'onUnload'\r\n];\r\n\r\nhooks$1.push(...PAGE_EVENT_HOOKS);\r\n\r\nfunction parseBasePage (vuePageOptions, {\r\n isPage,\r\n initRelation\r\n}) {\r\n const pageOptions = parseComponent(vuePageOptions);\r\n\r\n initHooks(pageOptions.methods, hooks$1, vuePageOptions);\r\n\r\n pageOptions.methods.onLoad = function (query) {\r\n this.options = query;\r\n const copyQuery = Object.assign({}, query);\r\n delete copyQuery.__id__;\r\n this.$page = {\r\n fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)\r\n };\r\n this.$vm.$mp.query = query; // 兼容 mpvue\r\n this.$vm.__call_hook('onLoad', query);\r\n };\r\n {\r\n initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);\r\n }\r\n\r\n return pageOptions\r\n}\r\n\r\nfunction parsePage (vuePageOptions) {\r\n return parseBasePage(vuePageOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nfunction createPage (vuePageOptions) {\r\n {\r\n return Component(parsePage(vuePageOptions))\r\n }\r\n}\r\n\r\nfunction createComponent (vueOptions) {\r\n {\r\n return Component(parseComponent(vueOptions))\r\n }\r\n}\r\n\r\nfunction createSubpackageApp (vm) {\r\n const appOptions = parseApp(vm);\r\n const app = getApp({\r\n allowDefault: true\r\n });\r\n vm.$scope = app;\r\n const globalData = app.globalData;\r\n if (globalData) {\r\n Object.keys(appOptions.globalData).forEach(name => {\r\n if (!hasOwn(globalData, name)) {\r\n globalData[name] = appOptions.globalData[name];\r\n }\r\n });\r\n }\r\n Object.keys(appOptions).forEach(name => {\r\n if (!hasOwn(app, name)) {\r\n app[name] = appOptions[name];\r\n }\r\n });\r\n if (isFn(appOptions.onShow) && wx.onAppShow) {\r\n wx.onAppShow((...args) => {\r\n vm.__call_hook('onShow', args);\r\n });\r\n }\r\n if (isFn(appOptions.onHide) && wx.onAppHide) {\r\n wx.onAppHide((...args) => {\r\n vm.__call_hook('onHide', args);\r\n });\r\n }\r\n if (isFn(appOptions.onLaunch)) {\r\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\r\n vm.__call_hook('onLaunch', args);\r\n }\r\n return vm\r\n}\r\n\r\nfunction createPlugin (vm) {\r\n const appOptions = parseApp(vm);\r\n if (isFn(appOptions.onShow) && wx.onAppShow) {\r\n wx.onAppShow((...args) => {\r\n vm.__call_hook('onShow', args);\r\n });\r\n }\r\n if (isFn(appOptions.onHide) && wx.onAppHide) {\r\n wx.onAppHide((...args) => {\r\n vm.__call_hook('onHide', args);\r\n });\r\n }\r\n if (isFn(appOptions.onLaunch)) {\r\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\r\n vm.__call_hook('onLaunch', args);\r\n }\r\n return vm\r\n}\r\n\r\ntodos.forEach(todoApi => {\r\n protocols[todoApi] = false;\r\n});\r\n\r\ncanIUses.forEach(canIUseApi => {\r\n const apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name\r\n : canIUseApi;\r\n if (!wx.canIUse(apiName)) {\r\n protocols[canIUseApi] = false;\r\n }\r\n});\r\n\r\nlet uni = {};\r\n\r\nif (typeof Proxy !== 'undefined' && \"mp-weixin\" !== 'app-plus') {\r\n uni = new Proxy({}, {\r\n get (target, name) {\r\n if (hasOwn(target, name)) {\r\n return target[name]\r\n }\r\n if (baseApi[name]) {\r\n return baseApi[name]\r\n }\r\n if (api[name]) {\r\n return promisify(name, api[name])\r\n }\r\n {\r\n if (extraApi[name]) {\r\n return promisify(name, extraApi[name])\r\n }\r\n if (todoApis[name]) {\r\n return promisify(name, todoApis[name])\r\n }\r\n }\r\n if (eventApi[name]) {\r\n return eventApi[name]\r\n }\r\n if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {\r\n return\r\n }\r\n return promisify(name, wrapper(name, wx[name]))\r\n },\r\n set (target, name, value) {\r\n target[name] = value;\r\n return true\r\n }\r\n });\r\n} else {\r\n Object.keys(baseApi).forEach(name => {\r\n uni[name] = baseApi[name];\r\n });\r\n\r\n {\r\n Object.keys(todoApis).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n Object.keys(extraApi).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n }\r\n\r\n Object.keys(eventApi).forEach(name => {\r\n uni[name] = eventApi[name];\r\n });\r\n\r\n Object.keys(api).forEach(name => {\r\n uni[name] = promisify(name, api[name]);\r\n });\r\n\r\n Object.keys(wx).forEach(name => {\r\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\r\n uni[name] = promisify(name, wrapper(name, wx[name]));\r\n }\r\n });\r\n}\r\n\r\nwx.createApp = createApp;\r\nwx.createPage = createPage;\r\nwx.createComponent = createComponent;\r\nwx.createSubpackageApp = createSubpackageApp;\r\nwx.createPlugin = createPlugin;\r\n\r\nvar uni$1 = uni;\r\n\r\nexport default uni$1;\r\nexport { createApp, createComponent, createPage, createPlugin, createSubpackageApp };\r\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","const isArray = Array.isArray;\r\nconst isObject = (val) => val !== null && typeof val === 'object';\r\nconst defaultDelimiters = ['{', '}'];\r\nclass BaseFormatter {\r\n constructor() {\r\n this._caches = Object.create(null);\r\n }\r\n interpolate(message, values, delimiters = defaultDelimiters) {\r\n if (!values) {\r\n return [message];\r\n }\r\n let tokens = this._caches[message];\r\n if (!tokens) {\r\n tokens = parse(message, delimiters);\r\n this._caches[message] = tokens;\r\n }\r\n return compile(tokens, values);\r\n }\r\n}\r\nconst RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\r\nconst RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\r\nfunction parse(format, [startDelimiter, endDelimiter]) {\r\n const tokens = [];\r\n let position = 0;\r\n let text = '';\r\n while (position < format.length) {\r\n let char = format[position++];\r\n if (char === startDelimiter) {\r\n if (text) {\r\n tokens.push({ type: 'text', value: text });\r\n }\r\n text = '';\r\n let sub = '';\r\n char = format[position++];\r\n while (char !== undefined && char !== endDelimiter) {\r\n sub += char;\r\n char = format[position++];\r\n }\r\n const isClosed = char === endDelimiter;\r\n const type = RE_TOKEN_LIST_VALUE.test(sub)\r\n ? 'list'\r\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\r\n ? 'named'\r\n : 'unknown';\r\n tokens.push({ value: sub, type });\r\n }\r\n // else if (char === '%') {\r\n // // when found rails i18n syntax, skip text capture\r\n // if (format[position] !== '{') {\r\n // text += char\r\n // }\r\n // }\r\n else {\r\n text += char;\r\n }\r\n }\r\n text && tokens.push({ type: 'text', value: text });\r\n return tokens;\r\n}\r\nfunction compile(tokens, values) {\r\n const compiled = [];\r\n let index = 0;\r\n const mode = isArray(values)\r\n ? 'list'\r\n : isObject(values)\r\n ? 'named'\r\n : 'unknown';\r\n if (mode === 'unknown') {\r\n return compiled;\r\n }\r\n while (index < tokens.length) {\r\n const token = tokens[index];\r\n switch (token.type) {\r\n case 'text':\r\n compiled.push(token.value);\r\n break;\r\n case 'list':\r\n compiled.push(values[parseInt(token.value, 10)]);\r\n break;\r\n case 'named':\r\n if (mode === 'named') {\r\n compiled.push(values[token.value]);\r\n }\r\n else {\r\n if (process.env.NODE_ENV !== 'production') {\r\n console.warn(`Type of token '${token.type}' and format of value '${mode}' don't match!`);\r\n }\r\n }\r\n break;\r\n case 'unknown':\r\n if (process.env.NODE_ENV !== 'production') {\r\n console.warn(`Detect 'unknown' type of token!`);\r\n }\r\n break;\r\n }\r\n index++;\r\n }\r\n return compiled;\r\n}\r\n\r\nconst LOCALE_ZH_HANS = 'zh-Hans';\r\nconst LOCALE_ZH_HANT = 'zh-Hant';\r\nconst LOCALE_EN = 'en';\r\nconst LOCALE_FR = 'fr';\r\nconst LOCALE_ES = 'es';\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\r\nconst defaultFormatter = new BaseFormatter();\r\nfunction include(str, parts) {\r\n return !!parts.find((part) => str.indexOf(part) !== -1);\r\n}\r\nfunction startsWith(str, parts) {\r\n return parts.find((part) => str.indexOf(part) === 0);\r\n}\r\nfunction normalizeLocale(locale, messages) {\r\n if (!locale) {\r\n return;\r\n }\r\n locale = locale.trim().replace(/_/g, '-');\r\n if (messages && messages[locale]) {\r\n return locale;\r\n }\r\n locale = locale.toLowerCase();\r\n if (locale.indexOf('zh') === 0) {\r\n if (locale.indexOf('-hans') > -1) {\r\n return LOCALE_ZH_HANS;\r\n }\r\n if (locale.indexOf('-hant') > -1) {\r\n return LOCALE_ZH_HANT;\r\n }\r\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\r\n return LOCALE_ZH_HANT;\r\n }\r\n return LOCALE_ZH_HANS;\r\n }\r\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\r\n if (lang) {\r\n return lang;\r\n }\r\n}\r\nclass I18n {\r\n constructor({ locale, fallbackLocale, messages, watcher, formater, }) {\r\n this.locale = LOCALE_EN;\r\n this.fallbackLocale = LOCALE_EN;\r\n this.message = {};\r\n this.messages = {};\r\n this.watchers = [];\r\n if (fallbackLocale) {\r\n this.fallbackLocale = fallbackLocale;\r\n }\r\n this.formater = formater || defaultFormatter;\r\n this.messages = messages || {};\r\n this.setLocale(locale || LOCALE_EN);\r\n if (watcher) {\r\n this.watchLocale(watcher);\r\n }\r\n }\r\n setLocale(locale) {\r\n const oldLocale = this.locale;\r\n this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;\r\n if (!this.messages[this.locale]) {\r\n // 可能初始化时不存在\r\n this.messages[this.locale] = {};\r\n }\r\n this.message = this.messages[this.locale];\r\n // 仅发生变化时,通知\r\n if (oldLocale !== this.locale) {\r\n this.watchers.forEach((watcher) => {\r\n watcher(this.locale, oldLocale);\r\n });\r\n }\r\n }\r\n getLocale() {\r\n return this.locale;\r\n }\r\n watchLocale(fn) {\r\n const index = this.watchers.push(fn) - 1;\r\n return () => {\r\n this.watchers.splice(index, 1);\r\n };\r\n }\r\n add(locale, message, override = true) {\r\n const curMessages = this.messages[locale];\r\n if (curMessages) {\r\n if (override) {\r\n Object.assign(curMessages, message);\r\n }\r\n else {\r\n Object.keys(message).forEach((key) => {\r\n if (!hasOwn(curMessages, key)) {\r\n curMessages[key] = message[key];\r\n }\r\n });\r\n }\r\n }\r\n else {\r\n this.messages[locale] = message;\r\n }\r\n }\r\n f(message, values, delimiters) {\r\n return this.formater.interpolate(message, values, delimiters).join('');\r\n }\r\n t(key, locale, values) {\r\n let message = this.message;\r\n if (typeof locale === 'string') {\r\n locale = normalizeLocale(locale, this.messages);\r\n locale && (message = this.messages[locale]);\r\n }\r\n else {\r\n values = locale;\r\n }\r\n if (!hasOwn(message, key)) {\r\n console.warn(`Cannot translate the value of keypath ${key}. Use the value of keypath as default.`);\r\n return key;\r\n }\r\n return this.formater.interpolate(message[key], values).join('');\r\n }\r\n}\r\n\r\nfunction watchAppLocale(appVm, i18n) {\r\n // 需要保证 watch 的触发在组件渲染之前\r\n if (appVm.$watchLocale) {\r\n // vue2\r\n appVm.$watchLocale((newLocale) => {\r\n i18n.setLocale(newLocale);\r\n });\r\n }\r\n else {\r\n appVm.$watch(() => appVm.$locale, (newLocale) => {\r\n i18n.setLocale(newLocale);\r\n });\r\n }\r\n}\r\nfunction getDefaultLocale() {\r\n if (typeof uni !== 'undefined' && uni.getLocale) {\r\n return uni.getLocale();\r\n }\r\n // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale\r\n if (typeof global !== 'undefined' && global.getLocale) {\r\n return global.getLocale();\r\n }\r\n return LOCALE_EN;\r\n}\r\nfunction initVueI18n(locale, messages = {}, fallbackLocale, watcher) {\r\n // 兼容旧版本入参\r\n if (typeof locale !== 'string') {\r\n [locale, messages] = [\r\n messages,\r\n locale,\r\n ];\r\n }\r\n if (typeof locale !== 'string') {\r\n // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined\r\n locale = getDefaultLocale();\r\n }\r\n if (typeof fallbackLocale !== 'string') {\r\n fallbackLocale =\r\n (typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale) ||\r\n LOCALE_EN;\r\n }\r\n const i18n = new I18n({\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n watcher,\r\n });\r\n let t = (key, values) => {\r\n if (typeof getApp !== 'function') {\r\n // app view\r\n /* eslint-disable no-func-assign */\r\n t = function (key, values) {\r\n return i18n.t(key, values);\r\n };\r\n }\r\n else {\r\n let isWatchedAppLocale = false;\r\n t = function (key, values) {\r\n const appVm = getApp().$vm;\r\n // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化\r\n // options: {\r\n // \ttype: Array,\r\n // \tdefault () {\r\n // \t\treturn [{\r\n // \t\t\ticon: 'shop',\r\n // \t\t\ttext: t(\"uni-goods-nav.options.shop\"),\r\n // \t\t}, {\r\n // \t\t\ticon: 'cart',\r\n // \t\t\ttext: t(\"uni-goods-nav.options.cart\")\r\n // \t\t}]\r\n // \t}\r\n // },\r\n if (appVm) {\r\n // 触发响应式\r\n appVm.$locale;\r\n if (!isWatchedAppLocale) {\r\n isWatchedAppLocale = true;\r\n watchAppLocale(appVm, i18n);\r\n }\r\n }\r\n return i18n.t(key, values);\r\n };\r\n }\r\n return t(key, values);\r\n };\r\n return {\r\n i18n,\r\n f(message, values, delimiters) {\r\n return i18n.f(message, values, delimiters);\r\n },\r\n t(key, values) {\r\n return t(key, values);\r\n },\r\n add(locale, message, override = true) {\r\n return i18n.add(locale, message, override);\r\n },\r\n watch(fn) {\r\n return i18n.watchLocale(fn);\r\n },\r\n getLocale() {\r\n return i18n.getLocale();\r\n },\r\n setLocale(newLocale) {\r\n return i18n.setLocale(newLocale);\r\n },\r\n };\r\n}\r\n\r\nconst isString = (val) => typeof val === 'string';\r\nlet formater;\r\nfunction hasI18nJson(jsonObj, delimiters) {\r\n if (!formater) {\r\n formater = new BaseFormatter();\r\n }\r\n return walkJsonObj(jsonObj, (jsonObj, key) => {\r\n const value = jsonObj[key];\r\n if (isString(value)) {\r\n if (isI18nStr(value, delimiters)) {\r\n return true;\r\n }\r\n }\r\n else {\r\n return hasI18nJson(value, delimiters);\r\n }\r\n });\r\n}\r\nfunction parseI18nJson(jsonObj, values, delimiters) {\r\n if (!formater) {\r\n formater = new BaseFormatter();\r\n }\r\n walkJsonObj(jsonObj, (jsonObj, key) => {\r\n const value = jsonObj[key];\r\n if (isString(value)) {\r\n if (isI18nStr(value, delimiters)) {\r\n jsonObj[key] = compileStr(value, values, delimiters);\r\n }\r\n }\r\n else {\r\n parseI18nJson(value, values, delimiters);\r\n }\r\n });\r\n return jsonObj;\r\n}\r\nfunction compileI18nJsonStr(jsonStr, { locale, locales, delimiters, }) {\r\n if (!isI18nStr(jsonStr, delimiters)) {\r\n return jsonStr;\r\n }\r\n if (!formater) {\r\n formater = new BaseFormatter();\r\n }\r\n const localeValues = [];\r\n Object.keys(locales).forEach((name) => {\r\n if (name !== locale) {\r\n localeValues.push({\r\n locale: name,\r\n values: locales[name],\r\n });\r\n }\r\n });\r\n localeValues.unshift({ locale, values: locales[locale] });\r\n try {\r\n return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);\r\n }\r\n catch (e) { }\r\n return jsonStr;\r\n}\r\nfunction isI18nStr(value, delimiters) {\r\n return value.indexOf(delimiters[0]) > -1;\r\n}\r\nfunction compileStr(value, values, delimiters) {\r\n return formater.interpolate(value, values, delimiters).join('');\r\n}\r\nfunction compileValue(jsonObj, key, localeValues, delimiters) {\r\n const value = jsonObj[key];\r\n if (isString(value)) {\r\n // 存在国际化\r\n if (isI18nStr(value, delimiters)) {\r\n jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);\r\n if (localeValues.length > 1) {\r\n // 格式化国际化语言\r\n const valueLocales = (jsonObj[key + 'Locales'] = {});\r\n localeValues.forEach((localValue) => {\r\n valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);\r\n });\r\n }\r\n }\r\n }\r\n else {\r\n compileJsonObj(value, localeValues, delimiters);\r\n }\r\n}\r\nfunction compileJsonObj(jsonObj, localeValues, delimiters) {\r\n walkJsonObj(jsonObj, (jsonObj, key) => {\r\n compileValue(jsonObj, key, localeValues, delimiters);\r\n });\r\n return jsonObj;\r\n}\r\nfunction walkJsonObj(jsonObj, walk) {\r\n if (isArray(jsonObj)) {\r\n for (let i = 0; i < jsonObj.length; i++) {\r\n if (walk(jsonObj, i)) {\r\n return true;\r\n }\r\n }\r\n }\r\n else if (isObject(jsonObj)) {\r\n for (const key in jsonObj) {\r\n if (walk(jsonObj, key)) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n}\r\n\r\nfunction resolveLocale(locales) {\r\n return (locale) => {\r\n if (!locale) {\r\n return locale;\r\n }\r\n locale = normalizeLocale(locale) || locale;\r\n return resolveLocaleChain(locale).find((locale) => locales.indexOf(locale) > -1);\r\n };\r\n}\r\nfunction resolveLocaleChain(locale) {\r\n const chain = [];\r\n const tokens = locale.split('-');\r\n while (tokens.length) {\r\n chain.push(tokens.join('-'));\r\n tokens.pop();\r\n }\r\n return chain;\r\n}\r\n\r\nexport { BaseFormatter as Formatter, I18n, LOCALE_EN, LOCALE_ES, LOCALE_FR, LOCALE_ZH_HANS, LOCALE_ZH_HANT, compileI18nJsonStr, hasI18nJson, initVueI18n, isI18nStr, isString, normalizeLocale, parseI18nJson, resolveLocale };\r\n","/*!\n * Vue.js v2.6.11\n * (c) 2014-2022 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar 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/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n if (vm.$options && vm.$options.__file) { // fixed by xxxxxx\n return ('') + vm.$options.__file\n }\n return ''\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm && vm.$options.name !== 'PageBody') {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n !vm.$options.isReserved && tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.SharedObject.target) {\n Dep.SharedObject.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\n// fixed by xxxxxx (nvue shared vuex)\n/* eslint-disable no-undef */\nDep.SharedObject = {};\nDep.SharedObject.target = null;\nDep.SharedObject.targetStack = [];\n\nfunction pushTarget (target) {\n Dep.SharedObject.targetStack.push(target);\n Dep.SharedObject.target = target;\n Dep.target = target;\n}\n\nfunction popTarget () {\n Dep.SharedObject.targetStack.pop();\n Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];\n Dep.target = Dep.SharedObject.target;\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑\n if(value.push !== value.__proto__.push){\n copyAugment(value, arrayMethods, arrayKeys);\n } else {\n protoAugment(value, arrayMethods);\n }\n }\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.SharedObject.target) { // fixed by xxxxxx\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\n/* */\n\n// fixed by xxxxxx (mp properties)\nfunction extractPropertiesFromVNodeData(data, Ctor, res, context) {\n var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;\n if (isUndef(propOptions)) {\n return res\n }\n var externalClasses = Ctor.options.mpOptions.externalClasses || [];\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n var result = checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n // externalClass\n if (\n result &&\n res[key] &&\n externalClasses.indexOf(altKey) !== -1 &&\n context[camelize(res[key])]\n ) {\n // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)\n res[key] = context[camelize(res[key])];\n }\n }\n }\n return res\n}\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag,\n context// fixed by xxxxxx\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n // fixed by xxxxxx\n return extractPropertiesFromVNodeData(data, Ctor, {}, context)\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n // fixed by xxxxxx\n return extractPropertiesFromVNodeData(data, Ctor, res, context)\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.