Commit c8fe4cdf3a5970219c5bdbed4cf098e5330215de
1 parent
a968c6d4
同步
Showing
10 changed files
with
20 additions
and
12 deletions
apis/all/index.js
| @@ -36,10 +36,10 @@ export default { | @@ -36,10 +36,10 @@ export default { | ||
| 36 | //获取招聘列表 | 36 | //获取招聘列表 |
| 37 | Gettbrecruit(data) { | 37 | Gettbrecruit(data) { |
| 38 | return request.get( | 38 | return request.get( |
| 39 | - `/api/attract/tbrecruit?keyword=${data.keyword}¤tPage=${data.currentPage}&pageSize=${data.pageSize}`, | 39 | + `/api/attract/tbrecruit?keyword=${data.keyword}¤tPage=${data.currentPage}&pageSize=${data.pageSize}&sidx=${data.sidx}&sort=${data.sort}`, |
| 40 | ) | 40 | ) |
| 41 | }, | 41 | }, |
| 42 | - //获取招聘列表 | 42 | + //获取招聘详细 |
| 43 | GettbrecruitById(id) { | 43 | GettbrecruitById(id) { |
| 44 | return request.get(`/api/attract/tbrecruit/${id}`, ) | 44 | return request.get(`/api/attract/tbrecruit/${id}`, ) |
| 45 | }, | 45 | }, |
pages/AllWork/AllWork.vue
pages/home/home.vue
| @@ -157,7 +157,9 @@ | @@ -157,7 +157,9 @@ | ||
| 157 | query: { | 157 | query: { |
| 158 | currentPage: 1, | 158 | currentPage: 1, |
| 159 | pageSize: 10, | 159 | pageSize: 10, |
| 160 | - keyword: "" | 160 | + keyword: "", |
| 161 | + sidx:"lastModifyTime", | ||
| 162 | + sort:"desc" | ||
| 161 | }, | 163 | }, |
| 162 | tbrecruitList: [], | 164 | tbrecruitList: [], |
| 163 | SearchText: "", | 165 | SearchText: "", |
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
| 1 | -{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js?bc2e","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js?c240","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js?9523","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js?a395","webpack:///./node_modules/@babel/runtime/helpers/typeof.js?7037","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js?e50d","webpack:///./node_modules/@babel/runtime/helpers/construct.js?b17c","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js?4a4b","webpack:///./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js?6f8f","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js?448a","uni-app:///components/mescroll-uni/mescroll-uni.js","uni-app:///components/mescroll-uni/mescroll-uni-option.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js?2236","uni-app:///components/mescroll-uni/wxs/mixins.js","webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js?543d","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js?11b0","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js?0676","webpack:///./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js?37dc","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js?970b","webpack:///./node_modules/@babel/runtime/helpers/createClass.js?5bc3","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js?66fd",null,"webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js?f0c5","uni-app:///apis/index.js","uni-app:///apis/login/index.js","uni-app:///node_modules/uview-ui/libs/mixin/mixin.js","uni-app:///service/request.js","uni-app:///service/service.js","uni-app:///common/config.js","uni-app:///service/utils.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js?4ea4","uni-app:///apis/all/index.js","uni-app:///components/mescroll-uni/mescroll-mixins.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js?278c","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js?c135","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js?9b42","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js?6613","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js?5a43"],"names":["objectKeys","target","globalThis","key","join","oldWx","isWxKey","indexOf","initWx","newWx","_nonIterableRest","TypeError","module","exports","__esModule","toPropertyKey","require","_defineProperty","obj","value","Object","defineProperty","enumerable","configurable","writable","_typeof","toPrimitive","_toPropertyKey","arg","String","Symbol","iterator","constructor","prototype","_toPrimitive","input","hint","prim","undefined","res","call","Number","setPrototypeOf","isNativeReflectConstruct","_construct","Parent","args","Class","Reflect","construct","bind","a","push","apply","Constructor","Function","instance","arguments","_setPrototypeOf","o","p","__proto__","_isNativeReflectConstruct","sham","Proxy","Boolean","valueOf","e","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","_toConsumableArray","arr","MeScroll","options","isScrollBody","me","version","isDownScrolling","isUpScrolling","hasDownCallback","down","callback","initDownScroll","initUpScroll","setTimeout","optDown","use","native","auto","autoShowLoading","triggerDownScroll","isUpAutoLoad","optUp","triggerUpScroll","extendDownScroll","extend","isLock","offset","startTop","inOffsetRate","outOffsetRate","bottomOffset","minAngle","textInOffset","textOutOffset","textLoading","textSuccess","textErr","beforeEndDelay","bgColor","textColor","inited","inOffset","outOffset","onMoving","beforeLoading","showLoading","afterLoading","beforeEndDownScroll","endDownScroll","afterEndDownScroll","mescroll","resetUpScroll","extendUpScroll","isBoth","page","num","size","time","noMoreSize","textNoMore","showNoMore","hideUpScroll","errDistance","toTop","src","duration","btnClick","onShow","zIndex","left","right","bottom","safearea","width","radius","empty","icon","tip","btnText","fixed","top","onScroll","userOption","defaultOption","def","hasColor","color","c","toLowerCase","downHight","touchstartEvent","startPoint","getPoint","getScrollTop","startAngle","lastPoint","maxTouchmoveY","getBodyHeight","inTouchend","touchmoveEvent","scrollTop","curPoint","moveY","y","getAngle","touchendEvent","preventDefault","diff","movetype","isDownEndSuccess","isMoveDown","Math","round","rate","endDownScrollCall","isScrollUp","angle","x","touches","pageX","pageY","changedTouches","clientX","clientY","p1","p2","abs","z","sqrt","asin","PI","showDownScroll","uni","startPullDownRefresh","showDownLoadingCall","onPullDownRefresh","stopPullDownRefresh","endScroll","setScrollHeight","scrollTo","delay","lockDownScroll","lockUpScroll","up","hasNext","startNum","onReachBottom","onPageScroll","setScrollTop","showTopBtn","hideTopBtn","scroll","scrollHeight","preScrollY","isCheck","canUp","getScrollBottom","showUpScroll","endUpScroll","isShowNoMore","isShowLoading","prePageNum","prePageTime","removeEmpty","setPageNum","setPageSize","endByPage","dataSize","totalPage","systime","endSuccess","endBySize","totalSize","loadSize","pageNum","pageSize","showEmpty","allDataSize","endErr","topBtnShow","t","myScrollTo","resetScrollTo","getScrollHeight","getClientHeight","getStep","star","end","count","step","i","timer","setInterval","clearInterval","isReal","h","clientHeight","setClientHeight","bodyHeight","setBodyHeight","cancelable","defaultPrevented","GlobalOption","arrayLikeToArray","_arrayWithoutHoles","Array","isArray","WxsMixin","data","wxsProp","isUpBoth","callProp","callType","renderBiz","propObserver","methods","wxsCall","msg","type","Date","now","downLoadType","$set","mounted","realAtob","b64","b64re","atob","str","replace","test","Error","slice","length","bitmap","result","r1","r2","charAt","fromCharCode","b64DecodeUnicode","decodeURIComponent","split","map","charCodeAt","toString","getCurrentUserInfo","token","wx","getStorageSync","tokenArr","uid","role","permission","tokenExpired","userInfo","JSON","parse","error","message","exp","iat","uniIdMixin","Vue","uniIDHasRole","roleId","uniIDHasPermission","permissionId","uniIDTokenValid","_toString","hasOwnProperty","isFn","fn","isStr","isObject","isPlainObject","hasOwn","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","_","toUpperCase","sortObject","sortObj","keys","sort","forEach","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","concat","dedupeHooks","hooks","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","isPromise","then","queue","promise","Promise","resolve","wrapperOptions","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","reason","promisify","promiseApi","success","fail","complete","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","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","initVueI18n","i18nMixin","mixin","beforeCreate","unwatch","watchLocale","$forceUpdate","$once","$$t","values","setLocale","getLocale","initAppLocale","appVm","state","observable","localeWatchers","$watchLocale","get","set","v","watch","include","parts","find","part","startsWith","trim","lang","getLocale$1","getApp","app","allowDefault","$vm","$locale","setLocale$1","oldLocale","onLocaleChangeCallbacks","onLocaleChange","global","interceptors","baseApi","freeze","findExistsPageIndex","url","pages","getCurrentPages","len","$page","fullPath","redirectTo","fromArgs","exists","delta","existsPageIndex","previewImage","currentIndex","parseInt","current","isNaN","urls","filter","item","indicator","loop","UUID_KEY","deviceId","useDeviceId","random","setStorage","addSafeAreaInsets","safeArea","safeAreaInsets","screenHeight","populateParameters","brand","model","system","theme","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","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","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","Emitter","getUniEmitter","ctx","$on","$off","$emit","eventApi","tryCatch","getApiCallbacks","apiCallbacks","param","cid","cidErrMsg","enabled","normalizePushMessage","invokePushCallback","invokeGetPushCidCallbacks","onPushMessageCallbacks","stopped","getPushCidCallbacks","getPushClientId","hasSuccess","hasFail","hasComplete","onPushMessage","offPushMessage","baseInfo","shareVideoMessage","miniapp","mocks","findVmByVueId","vm","vuePid","$children","childVm","$scope","_$vueId","parentVm","initBehavior","Behavior","isPage","route","initRelation","detail","triggerEvent","selectAllComponents","mpInstance","selector","$refs","components","component","ref","dataset","toSkip","vueGeneric","scopedComponent","syncRefs","refs","newRefs","oldKeys","Set","newKeys","oldValue","newValue","every","includes","delete","initRefs","forComponents","handleLink","event","vueOptions","parent","markMPComponent","IS_MP","OB","SKIP","isExtensible","MPPage","Page","MPComponent","Component","customizeRE","customize","initTriggerEvent","oldTriggerEvent","newTriggerEvent","comType","newEvent","_triggerEvent","initHook","isComponent","oldHook","__$wrappered","after","PAGE_EVENT_HOOKS","initMocks","$mp","mpType","mock","hasHook","default","extendOptions","super","mixins","initHooks","mpOptions","__call_hook","initUnknownHooks","excludes","findHooks","initHook$1","initVueComponent","VueComponent","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","_$vuePid","initData","context","VUE_APP_DEBUG","stringify","__lifecycle_hooks__","PROP_TYPES","createObserver","observer","newVal","oldVal","initBehaviors","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","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","isInteger","substr","__get_value","vForItem","vForKey","processEventExtra","extra","__args__","extraObj","getObjByArray","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","ret","ONCE","CUSTOM","isMatchEventType","eventType","optType","getContextVm","$parent","$options","generic","handleEvent","eventOpts","eventOpt","eventsArray","isOnce","eventArray","handlerCtx","handler","path","is","once","eventChannels","eventChannelStack","getEventChannel","id","eventChannel","shift","initEventChannel","getOpenerEventChannel","callHook","__id__","__eventChannel__","initScopedSlotsParams","center","parents","$hasScopedSlotsParams","has","$getScopedSlotsParams","object","$setScopedSlotsParams","propsData","destroyed","parseBaseApp","store","$store","mpHost","$i18n","_i18n","appOptions","onLaunch","canIUse","globalData","_isMounted","parseApp","createApp","App","encodeReserveRE","encodeReserveReplacer","commaRE","encode","encodeURIComponent","stringifyQuery","encodeStr","val","val2","parseBaseComponent","vueComponentOptions","needVueOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","__l","__e","externalClasses","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","copyQuery","parsePage","createPage","createComponent","createSubpackageApp","onAppShow","onHide","onAppHide","getLaunchOptionsSync","createPlugin","canIUseApi","apiName","uni$1","_iterableToArray","iter","from","_nonIterableSpread","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","isWatchedAppLocale","f","add","isString","hasI18nJson","jsonObj","walkJsonObj","isI18nStr","parseI18nJson","compileStr","compileI18nJsonStr","jsonStr","localeValues","unshift","compileJsonObj","compileValue","valueLocales","localValue","walk","resolveLocale","resolveLocaleChain","chain","pop","_classCallCheck","_defineProperties","descriptor","_createClass","protoProps","staticProps","login","AllApi","oauthLogin","request","postFormData","register","post","Login","customStyle","customClass","linkType","$u","getRect","$uGetRect","created","computed","deepMerge","http","bem","change","prefix","classes","openPage","urlKey","all","createSelectorQuery","in","boundingClientRect","rect","exec","getParentData","parentName","children","parentData","preventEvent","beforeDestroy","array","childrenList","child","put","put1","del","headers","header","urlsNoAuth","getToken","BASE_URL","log","timeout","statusCode","code","showToast","flag","addToken","hideLoading","USERS_KEY","TOKEN_KEY","ORDER_COUNT_KEY","SYSTEM_INFO_KEY","setStorageSync","saveUser","user","getUser","getOrderCount","addOrderCount","updateOrderCount","setSystemInfo","info","statusBarHeight","getPayDomain","API","PayDomain","utils","ObjectToQureyParams","formatTime","date","formatStr","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","formatTime1","parseTime","getUrlQueryParam","_interopRequireDefault","GetTbpolicy","currentPage","GetTbpolicyById","Gettbtraininfo","GettbtraininfoById","ApplyT","CreateRres","GetRresOne","Gettbrecruit","keyword","GettbrecruitById","PostApplyL","Gettbgoodstype","GettGetListCom","GettbgoodscompanyById","MescrollMixin","mescrollInit","mescrollInitByRef","mescrollRef","downCallback","upCallback","arrayWithHoles","iterableToArrayLimit","nonIterableRest","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","_unsupportedIterableToArray","minLen","n","_arrayLikeToArray","arr2"],"mappings":"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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;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;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;AACA;AACA;AACA;AACA;AACA;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,gIAAW;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,gIAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,gIAAW;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;AACA;AACA;AACA;AACA;;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,gIAAW;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;AACA,WAAW;AACX,SAAS;;AAET;AACA;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;;;;;;;;;;;;;;;;;;;;;;;;AC77LnB;;AAEA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;AACA;AACA,4CAA4C;;AAE5C;;;;;;;;;;;;;ACnBA;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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","file":"common/vendor.js","sourcesContent":["const objectKeys = [\n 'qy',\n 'env',\n 'error',\n 'version',\n 'lanDebug',\n 'cloud',\n 'serviceMarket',\n 'router',\n 'worklet',\n]\n\nconst target = typeof globalThis !== 'undefined' ? globalThis : (function() {\n return this\n})()\n\nconst key = ['w', 'x'].join('')\nconst oldWx = target[key]\n\nfunction isWxKey(key) {\n return objectKeys.indexOf(key) > -1 || typeof oldWx[key] === 'function'\n}\n\nfunction initWx() {\n const newWx = {}\n for (const key in oldWx) {\n if (isWxKey(key)) {\n // TODO wrapper function\n newWx[key] = oldWx[key]\n }\n }\n return newWx\n}\ntarget[key] = initWx()\nexport default target[key]\n","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n } else {\n module.exports = _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n }\n return _construct.apply(null, arguments);\n}\nmodule.exports = _construct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/* mescroll\r\n * version 1.3.3\r\n * 2020-09-15 wenju\r\n * https://www.mescroll.com\r\n */\r\n\r\nexport default function MeScroll(options, isScrollBody) {\r\n\tlet me = this;\r\n\tme.version = '1.3.3'; // mescroll版本号\r\n\tme.options = options || {}; // 配置\r\n\tme.isScrollBody = isScrollBody || false; // 滚动区域是否为原生页面滚动; 默认为scroll-view\r\n\r\n\tme.isDownScrolling = false; // 是否在执行下拉刷新的回调\r\n\tme.isUpScrolling = false; // 是否在执行上拉加载的回调\r\n\tlet hasDownCallback = me.options.down && me.options.down.callback; // 是否配置了down的callback\r\n\r\n\t// 初始化下拉刷新\r\n\tme.initDownScroll();\r\n\t// 初始化上拉加载,则初始化\r\n\tme.initUpScroll();\r\n\r\n\t// 自动加载\r\n\tsetTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例\r\n\t\t// 自动触发下拉刷新 (只有配置了down的callback才自动触发下拉刷新)\r\n\t\tif ((me.optDown.use || me.optDown.native) && me.optDown.auto && hasDownCallback) {\r\n\t\t\tif (me.optDown.autoShowLoading) {\r\n\t\t\t\tme.triggerDownScroll(); // 显示下拉进度,执行下拉回调\r\n\t\t\t} else {\r\n\t\t\t\tme.optDown.callback && me.optDown.callback(me); // 不显示下拉进度,直接执行下拉回调\r\n\t\t\t}\r\n\t\t}\r\n\t\t// 自动触发上拉加载\r\n\t\tif(!me.isUpAutoLoad){ // 部分小程序(头条小程序)emit是异步, 会导致isUpAutoLoad判断有误, 先延时确保先执行down的callback,再执行up的callback\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tme.optUp.use && me.optUp.auto && !me.isUpAutoLoad && me.triggerUpScroll();\r\n\t\t\t},100)\r\n\t\t}\r\n\t}, 30); // 需让me.optDown.inited和me.optUp.inited先执行\r\n}\r\n\r\n/* 配置参数:下拉刷新 */\r\nMeScroll.prototype.extendDownScroll = function(optDown) {\r\n\t// 下拉刷新的配置\r\n\tMeScroll.extend(optDown, {\r\n\t\tuse: true, // 是否启用下拉刷新; 默认true\r\n\t\tauto: true, // 是否在初始化完毕之后自动执行下拉刷新的回调; 默认true\r\n\t\tnative: false, // 是否使用系统自带的下拉刷新; 默认false; 仅mescroll-body生效 (值为true时,还需在pages配置enablePullDownRefresh:true;详请参考mescroll-native的案例)\r\n\t\tautoShowLoading: false, // 如果设置auto=true(在初始化完毕之后自动执行下拉刷新的回调),那么是否显示下拉刷新的进度; 默认false\r\n\t\tisLock: false, // 是否锁定下拉刷新,默认false;\r\n\t\toffset: 80, // 在列表顶部,下拉大于80px,松手即可触发下拉刷新的回调\r\n\t\tstartTop: 100, // scroll-view快速滚动到顶部时,此时的scroll-top可能大于0, 此值用于控制最大的误差\r\n\t\tinOffsetRate: 1, // 在列表顶部,下拉的距离小于offset时,改变下拉区域高度比例;值小于1且越接近0,高度变化越小,表现为越往下越难拉\r\n\t\toutOffsetRate: 0.2, // 在列表顶部,下拉的距离大于offset时,改变下拉区域高度比例;值小于1且越接近0,高度变化越小,表现为越往下越难拉\r\n\t\tbottomOffset: 20, // 当手指touchmove位置在距离body底部20px范围内的时候结束上拉刷新,避免Webview嵌套导致touchend事件不执行\r\n\t\tminAngle: 45, // 向下滑动最少偏移的角度,取值区间 [0,90];默认45度,即向下滑动的角度大于45度则触发下拉;而小于45度,将不触发下拉,避免与左右滑动的轮播等组件冲突;\r\n\t\ttextInOffset: '下拉刷新', // 下拉的距离在offset范围内的提示文本\r\n\t\ttextOutOffset: '释放更新', // 下拉的距离大于offset范围的提示文本\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextSuccess: '加载成功', // 加载成功的文本\r\n\t\ttextErr: '加载失败', // 加载失败的文本\r\n\t\tbeforeEndDelay: 100, // 延时结束的时长 (显示加载成功/失败的时长)\r\n\t\tbgColor: \"transparent\", // 背景颜色 (建议在pages.json中再设置一下backgroundColorTop)\r\n\t\ttextColor: \"gray\", // 文本颜色 (当bgColor配置了颜色,而textColor未配置时,则textColor会默认为白色)\r\n\t\tinited: null, // 下拉刷新初始化完毕的回调\r\n\t\tinOffset: null, // 下拉的距离进入offset范围内那一刻的回调\r\n\t\toutOffset: null, // 下拉的距离大于offset那一刻的回调\r\n\t\tonMoving: null, // 下拉过程中的回调,滑动过程一直在执行; rate下拉区域当前高度与指定距离的比值(inOffset: rate<1; outOffset: rate>=1); downHight当前下拉区域的高度\r\n\t\tbeforeLoading: null, // 准备触发下拉刷新的回调: 如果return true,将不触发showLoading和callback回调; 常用来完全自定义下拉刷新, 参考案例【淘宝 v6.8.0】\r\n\t\tshowLoading: null, // 显示下拉刷新进度的回调\r\n\t\tafterLoading: null, // 显示下拉刷新进度的回调之后,马上要执行的代码 (如: 在wxs中使用)\r\n\t\tbeforeEndDownScroll: null, // 准备结束下拉的回调. 返回结束下拉的延时执行时间,默认0ms; 常用于结束下拉之前再显示另外一小段动画,才去隐藏下拉刷新的场景, 参考案例【dotJump】\r\n\t\tendDownScroll: null, // 结束下拉刷新的回调\r\n\t\tafterEndDownScroll: null, // 结束下拉刷新的回调,马上要执行的代码 (如: 在wxs中使用)\r\n\t\tcallback: function(mescroll) {\r\n\t\t\t// 下拉刷新的回调;默认重置上拉加载列表为第一页\r\n\t\t\tmescroll.resetUpScroll();\r\n\t\t}\r\n\t})\r\n}\r\n\r\n/* 配置参数:上拉加载 */\r\nMeScroll.prototype.extendUpScroll = function(optUp) {\r\n\t// 上拉加载的配置\r\n\tMeScroll.extend(optUp, {\r\n\t\tuse: true, // 是否启用上拉加载; 默认true\r\n\t\tauto: true, // 是否在初始化完毕之后自动执行上拉加载的回调; 默认true\r\n\t\tisLock: false, // 是否锁定上拉加载,默认false;\r\n\t\tisBoth: true, // 上拉加载时,如果滑动到列表顶部是否可以同时触发下拉刷新;默认true,两者可同时触发;\r\n\t\tcallback: null, // 上拉加载的回调;function(page,mescroll){ }\r\n\t\tpage: {\r\n\t\t\tnum: 0, // 当前页码,默认0,回调之前会加1,即callback(page)会从1开始\r\n\t\t\tsize: 10, // 每页数据的数量\r\n\t\t\ttime: null // 加载第一页数据服务器返回的时间; 防止用户翻页时,后台新增了数据从而导致下一页数据重复;\r\n\t\t},\r\n\t\tnoMoreSize: 5, // 如果列表已无数据,可设置列表的总数量要大于等于5条才显示无更多数据;避免列表数据过少(比如只有一条数据),显示无更多数据会不好看\r\n\t\toffset: 150, // 距底部多远时,触发upCallback,仅mescroll-uni生效 ( mescroll-body配置的是pages.json的 onReachBottomDistance )\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextNoMore: '-- END --', // 没有更多数据的提示文本\r\n\t\tbgColor: \"transparent\", // 背景颜色 (建议在pages.json中再设置一下backgroundColorBottom)\r\n\t\ttextColor: \"gray\", // 文本颜色 (当bgColor配置了颜色,而textColor未配置时,则textColor会默认为白色)\r\n\t\tinited: null, // 初始化完毕的回调\r\n\t\tshowLoading: null, // 显示加载中的回调\r\n\t\tshowNoMore: null, // 显示无更多数据的回调\r\n\t\thideUpScroll: null, // 隐藏上拉加载的回调\r\n\t\terrDistance: 60, // endErr的时候需往上滑动一段距离,使其往下滑动时再次触发onReachBottom,仅mescroll-body生效\r\n\t\ttoTop: {\r\n\t\t\t// 回到顶部按钮,需配置src才显示\r\n\t\t\tsrc: null, // 图片路径,默认null (绝对路径或网络图)\r\n\t\t\toffset: 1000, // 列表滚动多少距离才显示回到顶部按钮,默认1000\r\n\t\t\tduration: 300, // 回到顶部的动画时长,默认300ms (当值为0或300则使用系统自带回到顶部,更流畅; 其他值则通过step模拟,部分机型可能不够流畅,所以非特殊情况不建议修改此项)\r\n\t\t\tbtnClick: null, // 点击按钮的回调\r\n\t\t\tonShow: null, // 是否显示的回调\r\n\t\t\tzIndex: 9990, // fixed定位z-index值\r\n\t\t\tleft: null, // 到左边的距离, 默认null. 此项有值时,right不生效. (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tright: 20, // 到右边的距离, 默认20 (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tbottom: 120, // 到底部的距离, 默认120 (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tsafearea: false, // bottom的偏移量是否加上底部安全区的距离, 默认false, 需要适配iPhoneX时使用 (具体的界面如果不配置此项,则取本vue的safearea值)\r\n\t\t\twidth: 72, // 回到顶部图标的宽度, 默认72 (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tradius: \"50%\" // 圆角, 默认\"50%\" (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t},\r\n\t\tempty: {\r\n\t\t\tuse: true, // 是否显示空布局\r\n\t\t\ticon: null, // 图标路径\r\n\t\t\ttip: '~ 暂无相关数据 ~', // 提示\r\n\t\t\tbtnText: '', // 按钮\r\n\t\t\tbtnClick: null, // 点击按钮的回调\r\n\t\t\tonShow: null, // 是否显示的回调\r\n\t\t\tfixed: false, // 是否使用fixed定位,默认false; 配置fixed为true,以下的top和zIndex才生效 (transform会使fixed失效,最终会降级为absolute)\r\n\t\t\ttop: \"100rpx\", // fixed定位的top值 (完整的单位值,如 \"10%\"; \"100rpx\")\r\n\t\t\tzIndex: 99 // fixed定位z-index值\r\n\t\t},\r\n\t\tonScroll: false // 是否监听滚动事件\r\n\t})\r\n}\r\n\r\n/* 配置参数 */\r\nMeScroll.extend = function(userOption, defaultOption) {\r\n\tif (!userOption) return defaultOption;\r\n\tfor (let key in defaultOption) {\r\n\t\tif (userOption[key] == null) {\r\n\t\t\tlet def = defaultOption[key];\r\n\t\t\tif (def != null && typeof def === 'object') {\r\n\t\t\t\tuserOption[key] = MeScroll.extend({}, def); // 深度匹配\r\n\t\t\t} else {\r\n\t\t\t\tuserOption[key] = def;\r\n\t\t\t}\r\n\t\t} else if (typeof userOption[key] === 'object') {\r\n\t\t\tMeScroll.extend(userOption[key], defaultOption[key]); // 深度匹配\r\n\t\t}\r\n\t}\r\n\treturn userOption;\r\n}\r\n\r\n/* 简单判断是否配置了颜色 (非透明,非白色) */\r\nMeScroll.prototype.hasColor = function(color) {\r\n\tif(!color) return false;\r\n\tlet c = color.toLowerCase();\r\n\treturn c != \"#fff\" && c != \"#ffffff\" && c != \"transparent\" && c != \"white\"\r\n}\r\n\r\n/* -------初始化下拉刷新------- */\r\nMeScroll.prototype.initDownScroll = function() {\r\n\tlet me = this;\r\n\t// 配置参数\r\n\tme.optDown = me.options.down || {};\r\n\tif(!me.optDown.textColor && me.hasColor(me.optDown.bgColor)) me.optDown.textColor = \"#fff\"; // 当bgColor有值且textColor未设置,则textColor默认白色\r\n\tme.extendDownScroll(me.optDown);\r\n\t\r\n\t// 如果是mescroll-body且配置了native,则禁止自定义的下拉刷新\r\n\tif(me.isScrollBody && me.optDown.native){\r\n\t\tme.optDown.use = false\r\n\t}else{\r\n\t\tme.optDown.native = false // 仅mescroll-body支持,mescroll-uni不支持\r\n\t}\r\n\t\r\n\tme.downHight = 0; // 下拉区域的高度\r\n\r\n\t// 在页面中加入下拉布局\r\n\tif (me.optDown.use && me.optDown.inited) {\r\n\t\t// 初始化完毕的回调\r\n\t\tsetTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例\r\n\t\t\tme.optDown.inited(me);\r\n\t\t}, 0)\r\n\t}\r\n}\r\n\r\n/* 列表touchstart事件 */\r\nMeScroll.prototype.touchstartEvent = function(e) {\r\n\tif (!this.optDown.use) return;\r\n\r\n\tthis.startPoint = this.getPoint(e); // 记录起点\r\n\tthis.startTop = this.getScrollTop(); // 记录此时的滚动条位置\r\n\tthis.startAngle = 0; // 初始角度\r\n\tthis.lastPoint = this.startPoint; // 重置上次move的点\r\n\tthis.maxTouchmoveY = this.getBodyHeight() - this.optDown.bottomOffset; // 手指触摸的最大范围(写在touchstart避免body获取高度为0的情况)\r\n\tthis.inTouchend = false; // 标记不是touchend\r\n}\r\n\r\n/* 列表touchmove事件 */\r\nMeScroll.prototype.touchmoveEvent = function(e) {\r\n\tif (!this.optDown.use) return;\r\n\tlet me = this;\r\n\r\n\tlet scrollTop = me.getScrollTop(); // 当前滚动条的距离\r\n\tlet curPoint = me.getPoint(e); // 当前点\r\n\r\n\tlet moveY = curPoint.y - me.startPoint.y; // 和起点比,移动的距离,大于0向下拉,小于0向上拉\r\n\r\n\t// 向下拉 && 在顶部\r\n\t// mescroll-body,直接判定在顶部即可\r\n\t// scroll-view在滚动时不会触发touchmove,当触顶/底/左/右时,才会触发touchmove\r\n\t// scroll-view滚动到顶部时,scrollTop不一定为0,也有可能大于0; 在iOS的APP中scrollTop可能为负数,不一定和startTop相等\r\n\tif (moveY > 0 && (\r\n\t\t\t(me.isScrollBody && scrollTop <= 0)\r\n\t\t\t||\r\n\t\t\t(!me.isScrollBody && (scrollTop <= 0 || (scrollTop <= me.optDown.startTop && scrollTop === me.startTop)) )\r\n\t\t)) {\r\n\t\t// 可下拉的条件\r\n\t\tif (!me.inTouchend && !me.isDownScrolling && !me.optDown.isLock && (!me.isUpScrolling || (me.isUpScrolling &&\r\n\t\t\t\tme.optUp.isBoth))) {\r\n\r\n\t\t\t// 下拉的初始角度是否在配置的范围内\r\n\t\t\tif(!me.startAngle) me.startAngle = me.getAngle(me.lastPoint, curPoint); // 两点之间的角度,区间 [0,90]\r\n\t\t\tif (me.startAngle < me.optDown.minAngle) return; // 如果小于配置的角度,则不往下执行下拉刷新\r\n\r\n\t\t\t// 如果手指的位置超过配置的距离,则提前结束下拉,避免Webview嵌套导致touchend无法触发\r\n\t\t\tif (me.maxTouchmoveY > 0 && curPoint.y >= me.maxTouchmoveY) {\r\n\t\t\t\tme.inTouchend = true; // 标记执行touchend\r\n\t\t\t\tme.touchendEvent(); // 提前触发touchend\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tme.preventDefault(e); // 阻止默认事件\r\n\r\n\t\t\tlet diff = curPoint.y - me.lastPoint.y; // 和上次比,移动的距离 (大于0向下,小于0向上)\r\n\r\n\t\t\t// 下拉距离 < 指定距离\r\n\t\t\tif (me.downHight < me.optDown.offset) {\r\n\t\t\t\tif (me.movetype !== 1) {\r\n\t\t\t\t\tme.movetype = 1; // 加入标记,保证只执行一次\r\n\t\t\t\t\tme.isDownEndSuccess = null; // 重置是否加载成功的状态 (wxs执行的是wxs.wxs)\r\n\t\t\t\t\tme.optDown.inOffset && me.optDown.inOffset(me); // 进入指定距离范围内那一刻的回调,只执行一次\r\n\t\t\t\t\tme.isMoveDown = true; // 标记下拉区域高度改变,在touchend重置回来\r\n\t\t\t\t}\r\n\t\t\t\tme.downHight += diff * me.optDown.inOffsetRate; // 越往下,高度变化越小\r\n\r\n\t\t\t\t// 指定距离 <= 下拉距离\r\n\t\t\t} else {\r\n\t\t\t\tif (me.movetype !== 2) {\r\n\t\t\t\t\tme.movetype = 2; // 加入标记,保证只执行一次\r\n\t\t\t\t\tme.optDown.outOffset && me.optDown.outOffset(me); // 下拉超过指定距离那一刻的回调,只执行一次\r\n\t\t\t\t\tme.isMoveDown = true; // 标记下拉区域高度改变,在touchend重置回来\r\n\t\t\t\t}\r\n\t\t\t\tif (diff > 0) { // 向下拉\r\n\t\t\t\t\tme.downHight += diff * me.optDown.outOffsetRate; // 越往下,高度变化越小\r\n\t\t\t\t} else { // 向上收\r\n\t\t\t\t\tme.downHight += diff; // 向上收回高度,则向上滑多少收多少高度\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tme.downHight = Math.round(me.downHight) // 取整\r\n\t\t\tlet rate = me.downHight / me.optDown.offset; // 下拉区域当前高度与指定距离的比值\r\n\t\t\tme.optDown.onMoving && me.optDown.onMoving(me, rate, me.downHight); // 下拉过程中的回调,一直在执行\r\n\t\t}\r\n\t}\r\n\r\n\tme.lastPoint = curPoint; // 记录本次移动的点\r\n}\r\n\r\n/* 列表touchend事件 */\r\nMeScroll.prototype.touchendEvent = function(e) {\r\n\tif (!this.optDown.use) return;\r\n\t// 如果下拉区域高度已改变,则需重置回来\r\n\tif (this.isMoveDown) {\r\n\t\tif (this.downHight >= this.optDown.offset) {\r\n\t\t\t// 符合触发刷新的条件\r\n\t\t\tthis.triggerDownScroll();\r\n\t\t} else {\r\n\t\t\t// 不符合的话 则重置\r\n\t\t\tthis.downHight = 0;\r\n\t\t\tthis.endDownScrollCall(this);\r\n\t\t}\r\n\t\tthis.movetype = 0;\r\n\t\tthis.isMoveDown = false;\r\n\t} else if (!this.isScrollBody && this.getScrollTop() === this.startTop) { // scroll-view到顶/左/右/底的滑动事件\r\n\t\tlet isScrollUp = this.getPoint(e).y - this.startPoint.y < 0; // 和起点比,移动的距离,大于0向下拉,小于0向上拉\r\n\t\t// 上滑\r\n\t\tif (isScrollUp) {\r\n\t\t\t// 需检查滑动的角度\r\n\t\t\tlet angle = this.getAngle(this.getPoint(e), this.startPoint); // 两点之间的角度,区间 [0,90]\r\n\t\t\tif (angle > 80) {\r\n\t\t\t\t// 检查并触发上拉\r\n\t\t\t\tthis.triggerUpScroll(true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* 根据点击滑动事件获取第一个手指的坐标 */\r\nMeScroll.prototype.getPoint = function(e) {\r\n\tif (!e) {\r\n\t\treturn {\r\n\t\t\tx: 0,\r\n\t\t\ty: 0\r\n\t\t}\r\n\t}\r\n\tif (e.touches && e.touches[0]) {\r\n\t\treturn {\r\n\t\t\tx: e.touches[0].pageX,\r\n\t\t\ty: e.touches[0].pageY\r\n\t\t}\r\n\t} else if (e.changedTouches && e.changedTouches[0]) {\r\n\t\treturn {\r\n\t\t\tx: e.changedTouches[0].pageX,\r\n\t\t\ty: e.changedTouches[0].pageY\r\n\t\t}\r\n\t} else {\r\n\t\treturn {\r\n\t\t\tx: e.clientX,\r\n\t\t\ty: e.clientY\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* 计算两点之间的角度: 区间 [0,90]*/\r\nMeScroll.prototype.getAngle = function(p1, p2) {\r\n\tlet x = Math.abs(p1.x - p2.x);\r\n\tlet y = Math.abs(p1.y - p2.y);\r\n\tlet z = Math.sqrt(x * x + y * y);\r\n\tlet angle = 0;\r\n\tif (z !== 0) {\r\n\t\tangle = Math.asin(y / z) / Math.PI * 180;\r\n\t}\r\n\treturn angle\r\n}\r\n\r\n/* 触发下拉刷新 */\r\nMeScroll.prototype.triggerDownScroll = function() {\r\n\tif (this.optDown.beforeLoading && this.optDown.beforeLoading(this)) {\r\n\t\t//return true则处于完全自定义状态\r\n\t} else {\r\n\t\tthis.showDownScroll(); // 下拉刷新中...\r\n\t\t!this.optDown.native && this.optDown.callback && this.optDown.callback(this); // 执行回调,联网加载数据\r\n\t}\r\n}\r\n\r\n/* 显示下拉进度布局 */\r\nMeScroll.prototype.showDownScroll = function() {\r\n\tthis.isDownScrolling = true; // 标记下拉中\r\n\tif (this.optDown.native) {\r\n\t\tuni.startPullDownRefresh(); // 系统自带的下拉刷新\r\n\t\tthis.showDownLoadingCall(0); // 仍触发showLoading,因为上拉加载用到\r\n\t} else{\r\n\t\tthis.downHight = this.optDown.offset; // 更新下拉区域高度\r\n\t\tthis.showDownLoadingCall(this.downHight); // 下拉刷新中...\r\n\t}\r\n}\r\n\r\nMeScroll.prototype.showDownLoadingCall = function(downHight) {\r\n\tthis.optDown.showLoading && this.optDown.showLoading(this, downHight); // 下拉刷新中...\r\n\tthis.optDown.afterLoading && this.optDown.afterLoading(this, downHight); // 下拉刷新中...触发之后马上要执行的代码\r\n}\r\n\r\n/* 显示系统自带的下拉刷新时需要处理的业务 */\r\nMeScroll.prototype.onPullDownRefresh = function() {\r\n\tthis.isDownScrolling = true; // 标记下拉中\r\n\tthis.showDownLoadingCall(0); // 仍触发showLoading,因为上拉加载用到\r\n\tthis.optDown.callback && this.optDown.callback(this); // 执行回调,联网加载数据\r\n}\r\n\r\n/* 结束下拉刷新 */\r\nMeScroll.prototype.endDownScroll = function() {\r\n\tif (this.optDown.native) { // 结束原生下拉刷新\r\n\t\tthis.isDownScrolling = false;\r\n\t\tthis.endDownScrollCall(this);\r\n\t\tuni.stopPullDownRefresh();\r\n\t\treturn\r\n\t}\r\n\tlet me = this;\r\n\t// 结束下拉刷新的方法\r\n\tlet endScroll = function() {\r\n\t\tme.downHight = 0;\r\n\t\tme.isDownScrolling = false;\r\n\t\tme.endDownScrollCall(me);\r\n\t\tif(!me.isScrollBody){\r\n\t\t\tme.setScrollHeight(0) // scroll-view重置滚动区域,使数据不满屏时仍可检查触发翻页\r\n\t\t\tme.scrollTo(0,0) // scroll-view需重置滚动条到顶部,避免startTop大于0时,对下拉刷新的影响\r\n\t\t}\r\n\t}\r\n\t// 结束下拉刷新时的回调\r\n\tlet delay = 0;\r\n\tif (me.optDown.beforeEndDownScroll) {\r\n\t\tdelay = me.optDown.beforeEndDownScroll(me); // 结束下拉刷新的延时,单位ms\r\n\t\tif(me.isDownEndSuccess == null) delay = 0; // 没有执行加载中,则不延时\r\n\t}\r\n\tif (typeof delay === 'number' && delay > 0) {\r\n\t\tsetTimeout(endScroll, delay);\r\n\t} else {\r\n\t\tendScroll();\r\n\t}\r\n}\r\n\r\nMeScroll.prototype.endDownScrollCall = function() {\r\n\tthis.optDown.endDownScroll && this.optDown.endDownScroll(this);\r\n\tthis.optDown.afterEndDownScroll && this.optDown.afterEndDownScroll(this);\r\n}\r\n\r\n/* 锁定下拉刷新:isLock=ture,null锁定;isLock=false解锁 */\r\nMeScroll.prototype.lockDownScroll = function(isLock) {\r\n\tif (isLock == null) isLock = true;\r\n\tthis.optDown.isLock = isLock;\r\n}\r\n\r\n/* 锁定上拉加载:isLock=ture,null锁定;isLock=false解锁 */\r\nMeScroll.prototype.lockUpScroll = function(isLock) {\r\n\tif (isLock == null) isLock = true;\r\n\tthis.optUp.isLock = isLock;\r\n}\r\n\r\n/* -------初始化上拉加载------- */\r\nMeScroll.prototype.initUpScroll = function() {\r\n\tlet me = this;\r\n\t// 配置参数\r\n\tme.optUp = me.options.up || {use: false}\r\n\tif(!me.optUp.textColor && me.hasColor(me.optUp.bgColor)) me.optUp.textColor = \"#fff\"; // 当bgColor有值且textColor未设置,则textColor默认白色\r\n\tme.extendUpScroll(me.optUp);\r\n\r\n\tif (me.optUp.use === false) return; // 配置不使用上拉加载时,则不初始化上拉布局\r\n\tme.optUp.hasNext = true; // 如果使用上拉,则默认有下一页\r\n\tme.startNum = me.optUp.page.num + 1; // 记录page开始的页码\r\n\r\n\t// 初始化完毕的回调\r\n\tif (me.optUp.inited) {\r\n\t\tsetTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例\r\n\t\t\tme.optUp.inited(me);\r\n\t\t}, 0)\r\n\t}\r\n}\r\n\r\n/*滚动到底部的事件 (仅mescroll-body生效)*/\r\nMeScroll.prototype.onReachBottom = function() {\r\n\tif (this.isScrollBody && !this.isUpScrolling) { // 只能支持下拉刷新的时候同时可以触发上拉加载,否则滚动到底部就需要上滑一点才能触发onReachBottom\r\n\t\tif (!this.optUp.isLock && this.optUp.hasNext) {\r\n\t\t\tthis.triggerUpScroll();\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/*列表滚动事件 (仅mescroll-body生效)*/\r\nMeScroll.prototype.onPageScroll = function(e) {\r\n\tif (!this.isScrollBody) return;\r\n\t\r\n\t// 更新滚动条的位置 (主要用于判断下拉刷新时,滚动条是否在顶部)\r\n\tthis.setScrollTop(e.scrollTop);\r\n\r\n\t// 顶部按钮的显示隐藏\r\n\tif (e.scrollTop >= this.optUp.toTop.offset) {\r\n\t\tthis.showTopBtn();\r\n\t} else {\r\n\t\tthis.hideTopBtn();\r\n\t}\r\n}\r\n\r\n/*列表滚动事件*/\r\nMeScroll.prototype.scroll = function(e, onScroll) {\r\n\t// 更新滚动条的位置\r\n\tthis.setScrollTop(e.scrollTop);\r\n\t// 更新滚动内容高度\r\n\tthis.setScrollHeight(e.scrollHeight);\r\n\r\n\t// 向上滑还是向下滑动\r\n\tif (this.preScrollY == null) this.preScrollY = 0;\r\n\tthis.isScrollUp = e.scrollTop - this.preScrollY > 0;\r\n\tthis.preScrollY = e.scrollTop;\r\n\r\n\t// 上滑 && 检查并触发上拉\r\n\tthis.isScrollUp && this.triggerUpScroll(true);\r\n\r\n\t// 顶部按钮的显示隐藏\r\n\tif (e.scrollTop >= this.optUp.toTop.offset) {\r\n\t\tthis.showTopBtn();\r\n\t} else {\r\n\t\tthis.hideTopBtn();\r\n\t}\r\n\r\n\t// 滑动监听\r\n\tthis.optUp.onScroll && onScroll && onScroll()\r\n}\r\n\r\n/* 触发上拉加载 */\r\nMeScroll.prototype.triggerUpScroll = function(isCheck) {\r\n\tif (!this.isUpScrolling && this.optUp.use && this.optUp.callback) {\r\n\t\t// 是否校验在底部; 默认不校验\r\n\t\tif (isCheck === true) {\r\n\t\t\tlet canUp = false;\r\n\t\t\t// 还有下一页 && 没有锁定 && 不在下拉中\r\n\t\t\tif (this.optUp.hasNext && !this.optUp.isLock && !this.isDownScrolling) {\r\n\t\t\t\tif (this.getScrollBottom() <= this.optUp.offset) { // 到底部\r\n\t\t\t\t\tcanUp = true; // 标记可上拉\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (canUp === false) return;\r\n\t\t}\r\n\t\tthis.showUpScroll(); // 上拉加载中...\r\n\t\tthis.optUp.page.num++; // 预先加一页,如果失败则减回\r\n\t\tthis.isUpAutoLoad = true; // 标记上拉已经自动执行过,避免初始化时多次触发上拉回调\r\n\t\tthis.num = this.optUp.page.num; // 把最新的页数赋值在mescroll上,避免对page的影响\r\n\t\tthis.size = this.optUp.page.size; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.time = this.optUp.page.time; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.optUp.callback(this); // 执行回调,联网加载数据\r\n\t}\r\n}\r\n\r\n/* 显示上拉加载中 */\r\nMeScroll.prototype.showUpScroll = function() {\r\n\tthis.isUpScrolling = true; // 标记上拉加载中\r\n\tthis.optUp.showLoading && this.optUp.showLoading(this); // 回调\r\n}\r\n\r\n/* 显示上拉无更多数据 */\r\nMeScroll.prototype.showNoMore = function() {\r\n\tthis.optUp.hasNext = false; // 标记无更多数据\r\n\tthis.optUp.showNoMore && this.optUp.showNoMore(this); // 回调\r\n}\r\n\r\n/* 隐藏上拉区域**/\r\nMeScroll.prototype.hideUpScroll = function() {\r\n\tthis.optUp.hideUpScroll && this.optUp.hideUpScroll(this); // 回调\r\n}\r\n\r\n/* 结束上拉加载 */\r\nMeScroll.prototype.endUpScroll = function(isShowNoMore) {\r\n\tif (isShowNoMore != null) { // isShowNoMore=null,不处理下拉状态,下拉刷新的时候调用\r\n\t\tif (isShowNoMore) {\r\n\t\t\tthis.showNoMore(); // isShowNoMore=true,显示无更多数据\r\n\t\t} else {\r\n\t\t\tthis.hideUpScroll(); // isShowNoMore=false,隐藏上拉加载\r\n\t\t}\r\n\t}\r\n\tthis.isUpScrolling = false; // 标记结束上拉加载\r\n}\r\n\r\n/* 重置上拉加载列表为第一页\r\n *isShowLoading 是否显示进度布局;\r\n * 1.默认null,不传参,则显示上拉加载的进度布局\r\n * 2.传参true, 则显示下拉刷新的进度布局\r\n * 3.传参false,则不显示上拉和下拉的进度 (常用于静默更新列表数据)\r\n */\r\nMeScroll.prototype.resetUpScroll = function(isShowLoading) {\r\n\tif (this.optUp && this.optUp.use) {\r\n\t\tlet page = this.optUp.page;\r\n\t\tthis.prePageNum = page.num; // 缓存重置前的页码,加载失败可退回\r\n\t\tthis.prePageTime = page.time; // 缓存重置前的时间,加载失败可退回\r\n\t\tpage.num = this.startNum; // 重置为第一页\r\n\t\tpage.time = null; // 重置时间为空\r\n\t\tif (!this.isDownScrolling && isShowLoading !== false) { // 如果不是下拉刷新触发的resetUpScroll并且不配置列表静默更新,则显示进度;\r\n\t\t\tif (isShowLoading == null) {\r\n\t\t\t\tthis.removeEmpty(); // 移除空布局\r\n\t\t\t\tthis.showUpScroll(); // 不传参,默认显示上拉加载的进度布局\r\n\t\t\t} else {\r\n\t\t\t\tthis.showDownScroll(); // 传true,显示下拉刷新的进度布局,不清空列表\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.isUpAutoLoad = true; // 标记上拉已经自动执行过,避免初始化时多次触发上拉回调\r\n\t\tthis.num = page.num; // 把最新的页数赋值在mescroll上,避免对page的影响\r\n\t\tthis.size = page.size; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.time = page.time; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.optUp.callback && this.optUp.callback(this); // 执行上拉回调\r\n\t}\r\n}\r\n\r\n/* 设置page.num的值 */\r\nMeScroll.prototype.setPageNum = function(num) {\r\n\tthis.optUp.page.num = num - 1;\r\n}\r\n\r\n/* 设置page.size的值 */\r\nMeScroll.prototype.setPageSize = function(size) {\r\n\tthis.optUp.page.size = size;\r\n}\r\n\r\n/* 联网回调成功,结束下拉刷新和上拉加载\r\n * dataSize: 当前页的数据量(必传)\r\n * totalPage: 总页数(必传)\r\n * systime: 服务器时间 (可空)\r\n */\r\nMeScroll.prototype.endByPage = function(dataSize, totalPage, systime) {\r\n\tlet hasNext;\r\n\tif (this.optUp.use && totalPage != null) hasNext = this.optUp.page.num < totalPage; // 是否还有下一页\r\n\tthis.endSuccess(dataSize, hasNext, systime);\r\n}\r\n\r\n/* 联网回调成功,结束下拉刷新和上拉加载\r\n * dataSize: 当前页的数据量(必传)\r\n * totalSize: 列表所有数据总数量(必传)\r\n * systime: 服务器时间 (可空)\r\n */\r\nMeScroll.prototype.endBySize = function(dataSize, totalSize, systime) {\r\n\tlet hasNext;\r\n\tif (this.optUp.use && totalSize != null) {\r\n\t\tlet loadSize = (this.optUp.page.num - 1) * this.optUp.page.size + dataSize; // 已加载的数据总数\r\n\t\thasNext = loadSize < totalSize; // 是否还有下一页\r\n\t}\r\n\tthis.endSuccess(dataSize, hasNext, systime);\r\n}\r\n\r\n/* 联网回调成功,结束下拉刷新和上拉加载\r\n * dataSize: 当前页的数据个数(不是所有页的数据总和),用于上拉加载判断是否还有下一页.如果不传,则会判断还有下一页\r\n * hasNext: 是否还有下一页,布尔类型;用来解决这个小问题:比如列表共有20条数据,每页加载10条,共2页.如果只根据dataSize判断,则需翻到第三页才会知道无更多数据,如果传了hasNext,则翻到第二页即可显示无更多数据.\r\n * systime: 服务器时间(可空);用来解决这个小问题:当准备翻下一页时,数据库新增了几条记录,此时翻下一页,前面的几条数据会和上一页的重复;这里传入了systime,那么upCallback的page.time就会有值,把page.time传给服务器,让后台过滤新加入的那几条记录\r\n */\r\nMeScroll.prototype.endSuccess = function(dataSize, hasNext, systime) {\r\n\tlet me = this;\r\n\t// 结束下拉刷新\r\n\tif (me.isDownScrolling) {\r\n\t\tme.isDownEndSuccess = true\r\n\t\tme.endDownScroll();\r\n\t}\r\n\r\n\t// 结束上拉加载\r\n\tif (me.optUp.use) {\r\n\t\tlet isShowNoMore; // 是否已无更多数据\r\n\t\tif (dataSize != null) {\r\n\t\t\tlet pageNum = me.optUp.page.num; // 当前页码\r\n\t\t\tlet pageSize = me.optUp.page.size; // 每页长度\r\n\t\t\t// 如果是第一页\r\n\t\t\tif (pageNum === 1) {\r\n\t\t\t\tif (systime) me.optUp.page.time = systime; // 设置加载列表数据第一页的时间\r\n\t\t\t}\r\n\t\t\tif (dataSize < pageSize || hasNext === false) {\r\n\t\t\t\t// 返回的数据不满一页时,则说明已无更多数据\r\n\t\t\t\tme.optUp.hasNext = false;\r\n\t\t\t\tif (dataSize === 0 && pageNum === 1) {\r\n\t\t\t\t\t// 如果第一页无任何数据且配置了空布局\r\n\t\t\t\t\tisShowNoMore = false;\r\n\t\t\t\t\tme.showEmpty();\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// 总列表数少于配置的数量,则不显示无更多数据\r\n\t\t\t\t\tlet allDataSize = (pageNum - 1) * pageSize + dataSize;\r\n\t\t\t\t\tif (allDataSize < me.optUp.noMoreSize) {\r\n\t\t\t\t\t\tisShowNoMore = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tisShowNoMore = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tme.removeEmpty(); // 移除空布局\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// 还有下一页\r\n\t\t\t\tisShowNoMore = false;\r\n\t\t\t\tme.optUp.hasNext = true;\r\n\t\t\t\tme.removeEmpty(); // 移除空布局\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// 隐藏上拉\r\n\t\tme.endUpScroll(isShowNoMore);\r\n\t}\r\n}\r\n\r\n/* 回调失败,结束下拉刷新和上拉加载 */\r\nMeScroll.prototype.endErr = function(errDistance) {\r\n\t// 结束下拉,回调失败重置回原来的页码和时间\r\n\tif (this.isDownScrolling) {\r\n\t\tthis.isDownEndSuccess = false\r\n\t\tlet page = this.optUp.page;\r\n\t\tif (page && this.prePageNum) {\r\n\t\t\tpage.num = this.prePageNum;\r\n\t\t\tpage.time = this.prePageTime;\r\n\t\t}\r\n\t\tthis.endDownScroll();\r\n\t}\r\n\t// 结束上拉,回调失败重置回原来的页码\r\n\tif (this.isUpScrolling) {\r\n\t\tthis.optUp.page.num--;\r\n\t\tthis.endUpScroll(false);\r\n\t\t// 如果是mescroll-body,则需往回滚一定距离\r\n\t\tif(this.isScrollBody && errDistance !== 0){ // 不处理0\r\n\t\t\tif(!errDistance) errDistance = this.optUp.errDistance; // 不传,则取默认\r\n\t\t\tthis.scrollTo(this.getScrollTop() - errDistance, 0) // 往上回滚的距离\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* 显示空布局 */\r\nMeScroll.prototype.showEmpty = function() {\r\n\tthis.optUp.empty.use && this.optUp.empty.onShow && this.optUp.empty.onShow(true)\r\n}\r\n\r\n/* 移除空布局 */\r\nMeScroll.prototype.removeEmpty = function() {\r\n\tthis.optUp.empty.use && this.optUp.empty.onShow && this.optUp.empty.onShow(false)\r\n}\r\n\r\n/* 显示回到顶部的按钮 */\r\nMeScroll.prototype.showTopBtn = function() {\r\n\tif (!this.topBtnShow) {\r\n\t\tthis.topBtnShow = true;\r\n\t\tthis.optUp.toTop.onShow && this.optUp.toTop.onShow(true);\r\n\t}\r\n}\r\n\r\n/* 隐藏回到顶部的按钮 */\r\nMeScroll.prototype.hideTopBtn = function() {\r\n\tif (this.topBtnShow) {\r\n\t\tthis.topBtnShow = false;\r\n\t\tthis.optUp.toTop.onShow && this.optUp.toTop.onShow(false);\r\n\t}\r\n}\r\n\r\n/* 获取滚动条的位置 */\r\nMeScroll.prototype.getScrollTop = function() {\r\n\treturn this.scrollTop || 0\r\n}\r\n\r\n/* 记录滚动条的位置 */\r\nMeScroll.prototype.setScrollTop = function(y) {\r\n\tthis.scrollTop = y;\r\n}\r\n\r\n/* 滚动到指定位置 */\r\nMeScroll.prototype.scrollTo = function(y, t) {\r\n\tthis.myScrollTo && this.myScrollTo(y, t) // scrollview需自定义回到顶部方法\r\n}\r\n\r\n/* 自定义scrollTo */\r\nMeScroll.prototype.resetScrollTo = function(myScrollTo) {\r\n\tthis.myScrollTo = myScrollTo\r\n}\r\n\r\n/* 滚动条到底部的距离 */\r\nMeScroll.prototype.getScrollBottom = function() {\r\n\treturn this.getScrollHeight() - this.getClientHeight() - this.getScrollTop()\r\n}\r\n\r\n/* 计步器\r\n star: 开始值\r\n end: 结束值\r\n callback(step,timer): 回调step值,计步器timer,可自行通过window.clearInterval(timer)结束计步器;\r\n t: 计步时长,传0则直接回调end值;不传则默认300ms\r\n rate: 周期;不传则默认30ms计步一次\r\n * */\r\nMeScroll.prototype.getStep = function(star, end, callback, t, rate) {\r\n\tlet diff = end - star; // 差值\r\n\tif (t === 0 || diff === 0) {\r\n\t\tcallback && callback(end);\r\n\t\treturn;\r\n\t}\r\n\tt = t || 300; // 时长 300ms\r\n\trate = rate || 30; // 周期 30ms\r\n\tlet count = t / rate; // 次数\r\n\tlet step = diff / count; // 步长\r\n\tlet i = 0; // 计数\r\n\tlet timer = setInterval(function() {\r\n\t\tif (i < count - 1) {\r\n\t\t\tstar += step;\r\n\t\t\tcallback && callback(star, timer);\r\n\t\t\ti++;\r\n\t\t} else {\r\n\t\t\tcallback && callback(end, timer); // 最后一次直接设置end,避免计算误差\r\n\t\t\tclearInterval(timer);\r\n\t\t}\r\n\t}, rate);\r\n}\r\n\r\n/* 滚动容器的高度 */\r\nMeScroll.prototype.getClientHeight = function(isReal) {\r\n\tlet h = this.clientHeight || 0\r\n\tif (h === 0 && isReal !== true) { // 未获取到容器的高度,可临时取body的高度 (可能会有误差)\r\n\t\th = this.getBodyHeight()\r\n\t}\r\n\treturn h\r\n}\r\nMeScroll.prototype.setClientHeight = function(h) {\r\n\tthis.clientHeight = h;\r\n}\r\n\r\n/* 滚动内容的高度 */\r\nMeScroll.prototype.getScrollHeight = function() {\r\n\treturn this.scrollHeight || 0;\r\n}\r\nMeScroll.prototype.setScrollHeight = function(h) {\r\n\tthis.scrollHeight = h;\r\n}\r\n\r\n/* body的高度 */\r\nMeScroll.prototype.getBodyHeight = function() {\r\n\treturn this.bodyHeight || 0;\r\n}\r\nMeScroll.prototype.setBodyHeight = function(h) {\r\n\tthis.bodyHeight = h;\r\n}\r\n\r\n/* 阻止浏览器默认滚动事件 */\r\nMeScroll.prototype.preventDefault = function(e) {\r\n\t// 小程序不支持e.preventDefault, 已在wxs中禁止\r\n\t// app的bounce只能通过配置pages.json的style.app-plus.bounce为\"none\"来禁止, 或使用renderjs禁止\r\n\t// cancelable:是否可以被禁用; defaultPrevented:是否已经被禁用\r\n\tif (e && e.cancelable && !e.defaultPrevented) e.preventDefault()\r\n}","// 全局配置\r\n// mescroll-body 和 mescroll-uni 通用\r\nconst GlobalOption = {\r\n\tdown: {\r\n\t\t// 其他down的配置参数也可以写,这里只展示了常用的配置:\r\n\t\ttextInOffset: '下拉刷新', // 下拉的距离在offset范围内的提示文本\r\n\t\ttextOutOffset: '释放更新', // 下拉的距离大于offset范围的提示文本\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextSuccess: '加载成功', // 加载成功的文本\r\n\t\ttextErr: '加载失败', // 加载失败的文本\r\n\t\tbeforeEndDelay: 100, // 延时结束的时长 (显示加载成功/失败的时长)\r\n\t\toffset: 80, // 在列表顶部,下拉大于80px,松手即可触发下拉刷新的回调\r\n\t\tnative: false // 是否使用系统自带的下拉刷新; 默认false; 仅在mescroll-body生效 (值为true时,还需在pages配置enablePullDownRefresh:true;详请参考mescroll-native的案例)\r\n\t},\r\n\tup: {\r\n\t\t// 其他up的配置参数也可以写,这里只展示了常用的配置:\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextNoMore: '-- END --', // 没有更多数据的提示文本\r\n\t\toffset: 150, // 距底部多远时,触发upCallback,仅mescroll-uni生效 ( mescroll-body配置的是pages.json的 onReachBottomDistance )\r\n\t\ttoTop: {\r\n\t\t\t// 回到顶部按钮,需配置src才显示\r\n\t\t\tsrc: \"\", // 图片路径 (建议放入static目录, 如 /static/img/mescroll-totop.png )\r\n\t\t\toffset: 1000, // 列表滚动多少距离才显示回到顶部按钮,默认1000px\r\n\t\t\tright: 20, // 到右边的距离, 默认20 (支持\"20rpx\", \"20px\", \"20%\"格式的值, 纯数字则默认单位rpx)\r\n\t\t\tbottom: 120, // 到底部的距离, 默认120 (支持\"20rpx\", \"20px\", \"20%\"格式的值, 纯数字则默认单位rpx)\r\n\t\t\twidth: 72 // 回到顶部图标的宽度, 默认72 (支持\"20rpx\", \"20px\", \"20%\"格式的值, 纯数字则默认单位rpx)\r\n\t\t},\r\n\t\tempty: {\r\n\t\t\tuse: true, // 是否显示空布局\r\n\t\t\ticon: \"\", // 图标路径 (建议放入static目录, 如 /static/img/mescroll-empty.png )\r\n\t\t\ttip: '~ 空空如也 ~' // 提示\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport default GlobalOption\r\n","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// 定义在wxs (含renderjs) 逻辑层的数据和方法, 与视图层相互通信\r\nconst WxsMixin = {\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\t// 传入wxs视图层的数据 (响应式)\r\n\t\t\twxsProp: {\r\n\t\t\t\toptDown:{}, // 下拉刷新的配置\r\n\t\t\t\tscrollTop:0, // 滚动条的距离\r\n\t\t\t\tbodyHeight:0, // body的高度\r\n\t\t\t\tisDownScrolling:false, // 是否正在下拉刷新中\r\n\t\t\t\tisUpScrolling:false, // 是否正在上拉加载中\r\n\t\t\t\tisScrollBody:true, // 是否为mescroll-body滚动\r\n\t\t\t\tisUpBoth:true, // 上拉加载时,是否同时可以下拉刷新\r\n\t\t\t\tt: 0 // 数据更新的标记 (只有数据更新了,才会触发wxs的Observer)\r\n\t\t\t},\r\n\t\t\t\r\n\t\t\t// 标记调用wxs视图层的方法\r\n\t\t\tcallProp: {\r\n\t\t\t\tcallType: '', // 方法名\r\n\t\t\t\tt: 0 // 数据更新的标记 (只有数据更新了,才会触发wxs的Observer)\r\n\t\t\t},\r\n\t\t\t\r\n\t\t\t// 不用wxs的平台使用此处的wxsBiz对象,抹平wxs的写法 (微信小程序和APP使用的wxsBiz对象是./wxs/wxs.wxs)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\t\t\r\n\t\t\t// 不用renderjs的平台使用此处的renderBiz对象,抹平renderjs的写法 (app 和 h5 使用的renderBiz对象是./wxs/renderjs.js)\r\n\r\n\t\t\trenderBiz: {\r\n\t\t\t\tpropObserver(){} // 抹平renderjs的写法\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t},\r\n\tmethods: {\r\n\t\t// wxs视图层调用逻辑层的回调\r\n\t\twxsCall(msg){\r\n\t\t\tif(msg.type === 'setWxsProp'){\r\n\t\t\t\t// 更新wxsProp数据 (值改变才触发更新)\r\n\t\t\t\tthis.wxsProp = {\r\n\t\t\t\t\toptDown: this.mescroll.optDown,\r\n\t\t\t\t\tscrollTop: this.mescroll.getScrollTop(),\r\n\t\t\t\t\tbodyHeight: this.mescroll.getBodyHeight(),\r\n\t\t\t\t\tisDownScrolling: this.mescroll.isDownScrolling,\r\n\t\t\t\t\tisUpScrolling: this.mescroll.isUpScrolling,\r\n\t\t\t\t\tisUpBoth: this.mescroll.optUp.isBoth,\r\n\t\t\t\t\tisScrollBody:this.mescroll.isScrollBody,\r\n\t\t\t\t\tt: Date.now()\r\n\t\t\t\t}\r\n\t\t\t}else if(msg.type === 'setLoadType'){\r\n\t\t\t\t// 设置inOffset,outOffset的状态\r\n\t\t\t\tthis.downLoadType = msg.downLoadType\r\n\t\t\t\t// 状态挂载到mescroll对象, 以便在其他组件中使用, 比如<me-video>中\r\n\t\t\t\tthis.$set(this.mescroll, 'downLoadType', this.downLoadType)\r\n\t\t\t\t// 重置是否加载成功的状态\r\n\t\t\t\tthis.$set(this.mescroll, 'isDownEndSuccess', null)\r\n\t\t\t}else if(msg.type === 'triggerDownScroll'){\r\n\t\t\t\t// 主动触发下拉刷新\r\n\t\t\t\tthis.mescroll.triggerDownScroll();\r\n\t\t\t}else if(msg.type === 'endDownScroll'){\r\n\t\t\t\t// 结束下拉刷新\r\n\t\t\t\tthis.mescroll.endDownScroll();\r\n\t\t\t}else if(msg.type === 'triggerUpScroll'){\r\n\t\t\t\t// 主动触发上拉加载\r\n\t\t\t\tthis.mescroll.triggerUpScroll(true);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\r\n\t\t// 配置主动触发wxs显示加载进度的回调\r\n\t\tthis.mescroll.optDown.afterLoading = ()=>{\r\n\t\t\tthis.callProp = {callType: \"showLoading\", t: Date.now()} // 触发wxs的方法 (值改变才触发更新)\r\n\t\t}\r\n\t\t// 配置主动触发wxs隐藏加载进度的回调\r\n\t\tthis.mescroll.optDown.afterEndDownScroll = ()=>{\r\n\t\t\tthis.callProp = {callType: \"endDownScroll\", t: Date.now()} // 触发wxs的方法 (值改变才触发更新)\r\n\t\t\tlet delay = 300 + (this.mescroll.optDown.beforeEndDelay || 0)\r\n\t\t\tsetTimeout(()=>{\r\n\t\t\t\tif(this.downLoadType === 4 || this.downLoadType === 0){\r\n\t\t\t\t\tthis.callProp = {callType: \"clearTransform\", t: Date.now()} // 触发wxs的方法 (值改变才触发更新)\r\n\t\t\t\t}\r\n\t\t\t\t// 状态挂载到mescroll对象, 以便在其他组件中使用, 比如<me-video>中\r\n\t\t\t\tthis.$set(this.mescroll, 'downLoadType', this.downLoadType)\r\n\t\t\t}, delay)\r\n\t\t}\r\n\t\t// 初始化wxs的数据\r\n\t\tthis.wxsCall({type: 'setWxsProp'})\r\n\r\n\t}\r\n}\r\n\r\nexport default WxsMixin;\r\n","import { initVueI18n } from '@dcloudio/uni-i18n';\nimport Vue from 'vue';\n\nlet realAtob;\n\nconst b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nconst b64re = /^(?:[A-Za-z\\d+/]{4})*?(?:[A-Za-z\\d+/]{2}(?:==)?|[A-Za-z\\d+/]{3}=?)?$/;\n\nif (typeof atob !== 'function') {\n realAtob = function (str) {\n str = String(str).replace(/[\\t\\n\\f\\r ]+/g, '');\n if (!b64re.test(str)) { throw new Error(\"Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.\") }\n\n // Adding the padding if missing, for semplicity\n str += '=='.slice(2 - (str.length & 3));\n var bitmap; var result = ''; var r1; var r2; var i = 0;\n for (; i < str.length;) {\n bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 |\n (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));\n\n result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255)\n : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255)\n : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);\n }\n return result\n };\n} else {\n // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法\n realAtob = atob;\n}\n\nfunction b64DecodeUnicode (str) {\n return decodeURIComponent(realAtob(str).split('').map(function (c) {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)\n }).join(''))\n}\n\nfunction getCurrentUserInfo () {\n const token = ( wx).getStorageSync('uni_id_token') || '';\n const tokenArr = token.split('.');\n if (!token || tokenArr.length !== 3) {\n return {\n uid: null,\n role: [],\n permission: [],\n tokenExpired: 0\n }\n }\n let userInfo;\n try {\n userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));\n } catch (error) {\n throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message)\n }\n userInfo.tokenExpired = userInfo.exp * 1000;\n delete userInfo.exp;\n delete userInfo.iat;\n return userInfo\n}\n\nfunction uniIdMixin (Vue) {\n Vue.prototype.uniIDHasRole = function (roleId) {\n const {\n role\n } = getCurrentUserInfo();\n return role.indexOf(roleId) > -1\n };\n Vue.prototype.uniIDHasPermission = function (permissionId) {\n const {\n permission\n } = getCurrentUserInfo();\n return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1\n };\n Vue.prototype.uniIDTokenValid = function () {\n const {\n tokenExpired\n } = getCurrentUserInfo();\n return tokenExpired > Date.now()\n };\n}\n\nconst _toString = Object.prototype.toString;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isFn (fn) {\n return typeof fn === 'function'\n}\n\nfunction isStr (str) {\n return typeof str === 'string'\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\nfunction noop () { }\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n const cache = Object.create(null);\n return function cachedFn (str) {\n const hit = cache[str];\n return hit || (cache[str] = fn(str))\n }\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cached((str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\n});\n\nfunction sortObject (obj) {\n const sortObj = {};\n if (isPlainObject(obj)) {\n Object.keys(obj).sort().forEach(key => {\n sortObj[key] = obj[key];\n });\n }\n return !Object.keys(sortObj) ? obj : sortObj\n}\n\nconst HOOKS = [\n 'invoke',\n 'success',\n 'fail',\n 'complete',\n 'returnValue'\n];\n\nconst globalInterceptors = {};\nconst scopedInterceptors = {};\n\nfunction mergeHook (parentVal, childVal) {\n const res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n const res = [];\n for (let 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\nfunction removeHook (hooks, hook) {\n const index = hooks.indexOf(hook);\n if (index !== -1) {\n hooks.splice(index, 1);\n }\n}\n\nfunction mergeInterceptorHook (interceptor, option) {\n Object.keys(option).forEach(hook => {\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\n }\n });\n}\n\nfunction removeInterceptorHook (interceptor, option) {\n if (!interceptor || !option) {\n return\n }\n Object.keys(option).forEach(hook => {\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\n removeHook(interceptor[hook], option[hook]);\n }\n });\n}\n\nfunction addInterceptor (method, option) {\n if (typeof method === 'string' && isPlainObject(option)) {\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\n } else if (isPlainObject(method)) {\n mergeInterceptorHook(globalInterceptors, method);\n }\n}\n\nfunction removeInterceptor (method, option) {\n if (typeof method === 'string') {\n if (isPlainObject(option)) {\n removeInterceptorHook(scopedInterceptors[method], option);\n } else {\n delete scopedInterceptors[method];\n }\n } else if (isPlainObject(method)) {\n removeInterceptorHook(globalInterceptors, method);\n }\n}\n\nfunction wrapperHook (hook) {\n return function (data) {\n return hook(data) || data\n }\n}\n\nfunction isPromise (obj) {\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\n}\n\nfunction queue (hooks, data) {\n let promise = false;\n for (let i = 0; i < hooks.length; i++) {\n const hook = hooks[i];\n if (promise) {\n promise = Promise.resolve(wrapperHook(hook));\n } else {\n const res = hook(data);\n if (isPromise(res)) {\n promise = Promise.resolve(res);\n }\n if (res === false) {\n return {\n then () { }\n }\n }\n }\n }\n return promise || {\n then (callback) {\n return callback(data)\n }\n }\n}\n\nfunction wrapperOptions (interceptor, options = {}) {\n ['success', 'fail', 'complete'].forEach(name => {\n if (Array.isArray(interceptor[name])) {\n const oldCallback = options[name];\n options[name] = function callbackInterceptor (res) {\n queue(interceptor[name], res).then((res) => {\n /* eslint-disable no-mixed-operators */\n return isFn(oldCallback) && oldCallback(res) || res\n });\n };\n }\n });\n return options\n}\n\nfunction wrapperReturnValue (method, returnValue) {\n const returnValueHooks = [];\n if (Array.isArray(globalInterceptors.returnValue)) {\n returnValueHooks.push(...globalInterceptors.returnValue);\n }\n const interceptor = scopedInterceptors[method];\n if (interceptor && Array.isArray(interceptor.returnValue)) {\n returnValueHooks.push(...interceptor.returnValue);\n }\n returnValueHooks.forEach(hook => {\n returnValue = hook(returnValue) || returnValue;\n });\n return returnValue\n}\n\nfunction getApiInterceptorHooks (method) {\n const interceptor = Object.create(null);\n Object.keys(globalInterceptors).forEach(hook => {\n if (hook !== 'returnValue') {\n interceptor[hook] = globalInterceptors[hook].slice();\n }\n });\n const scopedInterceptor = scopedInterceptors[method];\n if (scopedInterceptor) {\n Object.keys(scopedInterceptor).forEach(hook => {\n if (hook !== 'returnValue') {\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\n }\n });\n }\n return interceptor\n}\n\nfunction invokeApi (method, api, options, ...params) {\n const interceptor = getApiInterceptorHooks(method);\n if (interceptor && Object.keys(interceptor).length) {\n if (Array.isArray(interceptor.invoke)) {\n const res = queue(interceptor.invoke, options);\n return res.then((options) => {\n return api(wrapperOptions(interceptor, options), ...params)\n })\n } else {\n return api(wrapperOptions(interceptor, options), ...params)\n }\n }\n return api(options, ...params)\n}\n\nconst promiseInterceptor = {\n returnValue (res) {\n if (!isPromise(res)) {\n return res\n }\n return new Promise((resolve, reject) => {\n res.then(res => {\n if (res[0]) {\n reject(res[0]);\n } else {\n resolve(res[1]);\n }\n });\n })\n }\n};\n\nconst SYNC_API_RE =\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/;\n\nconst CONTEXT_API_RE = /^create|Manager$/;\n\n// Context例外情况\nconst CONTEXT_API_RE_EXC = ['createBLEConnection'];\n\n// 同步例外情况\nconst ASYNC_API = ['createBLEConnection', 'createPushMessage'];\n\nconst CALLBACK_API_RE = /^on|^off/;\n\nfunction isContextApi (name) {\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\n}\nfunction isSyncApi (name) {\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\n}\n\nfunction isCallbackApi (name) {\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\n}\n\nfunction handlePromise (promise) {\n return promise.then(data => {\n return [null, data]\n })\n .catch(err => [err])\n}\n\nfunction shouldPromise (name) {\n if (\n isContextApi(name) ||\n isSyncApi(name) ||\n isCallbackApi(name)\n ) {\n return false\n }\n return true\n}\n\n/* eslint-disable no-extend-native */\nif (!Promise.prototype.finally) {\n Promise.prototype.finally = function (callback) {\n const promise = this.constructor;\n return this.then(\n value => promise.resolve(callback()).then(() => value),\n reason => promise.resolve(callback()).then(() => {\n throw reason\n })\n )\n };\n}\n\nfunction promisify (name, api) {\n if (!shouldPromise(name) || !isFn(api)) {\n return api\n }\n return function promiseApi (options = {}, ...params) {\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\n }\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\n invokeApi(name, api, Object.assign({}, options, {\n success: resolve,\n fail: reject\n }), ...params);\n })))\n }\n}\n\nconst EPS = 1e-4;\nconst BASE_DEVICE_WIDTH = 750;\nlet isIOS = false;\nlet deviceWidth = 0;\nlet deviceDPR = 0;\n\nfunction checkDeviceWidth () {\n const {\n platform,\n pixelRatio,\n windowWidth\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\n\n deviceWidth = windowWidth;\n deviceDPR = pixelRatio;\n isIOS = platform === 'ios';\n}\n\nfunction upx2px (number, newDeviceWidth) {\n if (deviceWidth === 0) {\n checkDeviceWidth();\n }\n\n number = Number(number);\n if (number === 0) {\n return 0\n }\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\n if (result < 0) {\n result = -result;\n }\n result = Math.floor(result + EPS);\n if (result === 0) {\n if (deviceDPR === 1 || !isIOS) {\n result = 1;\n } else {\n result = 0.5;\n }\n }\n return number < 0 ? -result : result\n}\n\nconst LOCALE_ZH_HANS = 'zh-Hans';\nconst LOCALE_ZH_HANT = 'zh-Hant';\nconst LOCALE_EN = 'en';\nconst LOCALE_FR = 'fr';\nconst LOCALE_ES = 'es';\n\nconst messages = {};\n\nlet locale;\n\n{\n locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;\n}\n\nfunction initI18nMessages () {\n if (!isEnableLocale()) {\n return\n }\n const localeKeys = Object.keys(__uniConfig.locales);\n if (localeKeys.length) {\n localeKeys.forEach((locale) => {\n const curMessages = messages[locale];\n const userMessages = __uniConfig.locales[locale];\n if (curMessages) {\n Object.assign(curMessages, userMessages);\n } else {\n messages[locale] = userMessages;\n }\n });\n }\n}\n\ninitI18nMessages();\n\nconst i18n = initVueI18n(\n locale,\n {}\n);\nconst t = i18n.t;\nconst i18nMixin = (i18n.mixin = {\n beforeCreate () {\n const unwatch = i18n.i18n.watchLocale(() => {\n this.$forceUpdate();\n });\n this.$once('hook:beforeDestroy', function () {\n unwatch();\n });\n },\n methods: {\n $$t (key, values) {\n return t(key, values)\n }\n }\n});\nconst setLocale = i18n.setLocale;\nconst getLocale = i18n.getLocale;\n\nfunction initAppLocale (Vue, appVm, locale) {\n const state = Vue.observable({\n locale: locale || i18n.getLocale()\n });\n const localeWatchers = [];\n appVm.$watchLocale = fn => {\n localeWatchers.push(fn);\n };\n Object.defineProperty(appVm, '$locale', {\n get () {\n return state.locale\n },\n set (v) {\n state.locale = v;\n localeWatchers.forEach(watch => watch(v));\n }\n });\n}\n\nfunction isEnableLocale () {\n return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length\n}\n\nfunction include (str, parts) {\n return !!parts.find((part) => str.indexOf(part) !== -1)\n}\n\nfunction startsWith (str, parts) {\n return parts.find((part) => str.indexOf(part) === 0)\n}\n\nfunction normalizeLocale (locale, messages) {\n if (!locale) {\n return\n }\n locale = locale.trim().replace(/_/g, '-');\n if (messages && messages[locale]) {\n return locale\n }\n locale = locale.toLowerCase();\n if (locale === 'chinese') {\n // 支付宝\n return LOCALE_ZH_HANS\n }\n if (locale.indexOf('zh') === 0) {\n if (locale.indexOf('-hans') > -1) {\n return LOCALE_ZH_HANS\n }\n if (locale.indexOf('-hant') > -1) {\n return LOCALE_ZH_HANT\n }\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\n return LOCALE_ZH_HANT\n }\n return LOCALE_ZH_HANS\n }\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\n if (lang) {\n return lang\n }\n}\n// export function initI18n() {\n// const localeKeys = Object.keys(__uniConfig.locales || {})\n// if (localeKeys.length) {\n// localeKeys.forEach((locale) =>\n// i18n.add(locale, __uniConfig.locales[locale])\n// )\n// }\n// }\n\nfunction getLocale$1 () {\n // 优先使用 $locale\n if (isFn(getApp)) {\n const app = getApp({\n allowDefault: true\n });\n if (app && app.$vm) {\n return app.$vm.$locale\n }\n }\n return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN\n}\n\nfunction setLocale$1 (locale) {\n const app = isFn(getApp) ? getApp() : false;\n if (!app) {\n return false\n }\n const oldLocale = app.$vm.$locale;\n if (oldLocale !== locale) {\n app.$vm.$locale = locale;\n onLocaleChangeCallbacks.forEach((fn) => fn({\n locale\n }));\n return true\n }\n return false\n}\n\nconst onLocaleChangeCallbacks = [];\nfunction onLocaleChange (fn) {\n if (onLocaleChangeCallbacks.indexOf(fn) === -1) {\n onLocaleChangeCallbacks.push(fn);\n }\n}\n\nif (typeof global !== 'undefined') {\n global.getLocale = getLocale$1;\n}\n\nconst interceptors = {\n promiseInterceptor\n};\n\nvar baseApi = /*#__PURE__*/Object.freeze({\n __proto__: null,\n upx2px: upx2px,\n getLocale: getLocale$1,\n setLocale: setLocale$1,\n onLocaleChange: onLocaleChange,\n addInterceptor: addInterceptor,\n removeInterceptor: removeInterceptor,\n interceptors: interceptors\n});\n\nfunction findExistsPageIndex (url) {\n const pages = getCurrentPages();\n let len = pages.length;\n while (len--) {\n const page = pages[len];\n if (page.$page && page.$page.fullPath === url) {\n return len\n }\n }\n return -1\n}\n\nvar redirectTo = {\n name (fromArgs) {\n if (fromArgs.exists === 'back' && fromArgs.delta) {\n return 'navigateBack'\n }\n return 'redirectTo'\n },\n args (fromArgs) {\n if (fromArgs.exists === 'back' && fromArgs.url) {\n const existsPageIndex = findExistsPageIndex(fromArgs.url);\n if (existsPageIndex !== -1) {\n const delta = getCurrentPages().length - 1 - existsPageIndex;\n if (delta > 0) {\n fromArgs.delta = delta;\n }\n }\n }\n }\n};\n\nvar previewImage = {\n args (fromArgs) {\n let currentIndex = parseInt(fromArgs.current);\n if (isNaN(currentIndex)) {\n return\n }\n const urls = fromArgs.urls;\n if (!Array.isArray(urls)) {\n return\n }\n const len = urls.length;\n if (!len) {\n return\n }\n if (currentIndex < 0) {\n currentIndex = 0;\n } else if (currentIndex >= len) {\n currentIndex = len - 1;\n }\n if (currentIndex > 0) {\n fromArgs.current = urls[currentIndex];\n fromArgs.urls = urls.filter(\n (item, index) => index < currentIndex ? item !== urls[currentIndex] : true\n );\n } else {\n fromArgs.current = urls[0];\n }\n return {\n indicator: false,\n loop: false\n }\n }\n};\n\nconst UUID_KEY = '__DC_STAT_UUID';\nlet deviceId;\nfunction useDeviceId (result) {\n deviceId = deviceId || wx.getStorageSync(UUID_KEY);\n if (!deviceId) {\n deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);\n wx.setStorage({\n key: UUID_KEY,\n data: deviceId\n });\n }\n result.deviceId = deviceId;\n}\n\nfunction addSafeAreaInsets (result) {\n if (result.safeArea) {\n const safeArea = result.safeArea;\n result.safeAreaInsets = {\n top: safeArea.top,\n left: safeArea.left,\n right: result.windowWidth - safeArea.right,\n bottom: result.screenHeight - safeArea.bottom\n };\n }\n}\n\nfunction populateParameters (result) {\n const {\n brand = '', model = '', system = '',\n language = '', theme, version,\n platform, fontSizeSetting,\n SDKVersion, pixelRatio, deviceOrientation\n } = result;\n // const isQuickApp = \"mp-weixin\".indexOf('quickapp-webview') !== -1\n\n // osName osVersion\n let osName = '';\n let osVersion = '';\n {\n osName = system.split(' ')[0] || '';\n osVersion = system.split(' ')[1] || '';\n }\n let hostVersion = version;\n\n // deviceType\n const deviceType = getGetDeviceType(result, model);\n\n // deviceModel\n const deviceBrand = getDeviceBrand(brand);\n\n // hostName\n const _hostName = getHostName(result);\n\n // deviceOrientation\n let _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持\n\n // devicePixelRatio\n let _devicePixelRatio = pixelRatio;\n\n // SDKVersion\n let _SDKVersion = SDKVersion;\n\n // hostLanguage\n const hostLanguage = language.replace(/_/g, '-');\n\n // wx.getAccountInfoSync\n\n const parameters = {\n appId: process.env.UNI_APP_ID,\n appName: process.env.UNI_APP_NAME,\n appVersion: process.env.UNI_APP_VERSION_NAME,\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\n appLanguage: getAppLanguage(hostLanguage),\n uniCompileVersion: process.env.UNI_COMPILER_VERSION,\n uniRuntimeVersion: process.env.UNI_COMPILER_VERSION,\n uniPlatform: process.env.UNI_SUB_PLATFORM || process.env.UNI_PLATFORM,\n deviceBrand,\n deviceModel: model,\n deviceType,\n devicePixelRatio: _devicePixelRatio,\n deviceOrientation: _deviceOrientation,\n osName: osName.toLocaleLowerCase(),\n osVersion,\n hostTheme: theme,\n hostVersion,\n hostLanguage,\n hostName: _hostName,\n hostSDKVersion: _SDKVersion,\n hostFontSizeSetting: fontSizeSetting,\n windowTop: 0,\n windowBottom: 0,\n // TODO\n osLanguage: undefined,\n osTheme: undefined,\n ua: undefined,\n hostPackageName: undefined,\n browserName: undefined,\n browserVersion: undefined\n };\n\n Object.assign(result, parameters);\n}\n\nfunction getGetDeviceType (result, model) {\n let deviceType = result.deviceType || 'phone';\n {\n const deviceTypeMaps = {\n ipad: 'pad',\n windows: 'pc',\n mac: 'pc'\n };\n const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);\n const _model = model.toLocaleLowerCase();\n for (let index = 0; index < deviceTypeMapsKeys.length; index++) {\n const _m = deviceTypeMapsKeys[index];\n if (_model.indexOf(_m) !== -1) {\n deviceType = deviceTypeMaps[_m];\n break\n }\n }\n }\n return deviceType\n}\n\nfunction getDeviceBrand (brand) {\n let deviceBrand = brand;\n if (deviceBrand) {\n deviceBrand = brand.toLocaleLowerCase();\n }\n return deviceBrand\n}\n\nfunction getAppLanguage (defaultLanguage) {\n return getLocale$1\n ? getLocale$1()\n : defaultLanguage\n}\n\nfunction getHostName (result) {\n const _platform = 'WeChat' ;\n let _hostName = result.hostName || _platform; // mp-jd\n {\n if (result.environment) {\n _hostName = result.environment;\n } else if (result.host && result.host.env) {\n _hostName = result.host.env;\n }\n }\n\n return _hostName\n}\n\nvar getSystemInfo = {\n returnValue: function (result) {\n useDeviceId(result);\n addSafeAreaInsets(result);\n populateParameters(result);\n }\n};\n\nvar showActionSheet = {\n args (fromArgs) {\n if (typeof fromArgs === 'object') {\n fromArgs.alertText = fromArgs.title;\n }\n }\n};\n\nvar getAppBaseInfo = {\n returnValue: function (result) {\n const { version, language, SDKVersion, theme } = result;\n\n const _hostName = getHostName(result);\n\n const hostLanguage = language.replace('_', '-');\n\n result = sortObject(Object.assign(result, {\n appId: process.env.UNI_APP_ID,\n appName: process.env.UNI_APP_NAME,\n appVersion: process.env.UNI_APP_VERSION_NAME,\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\n appLanguage: getAppLanguage(hostLanguage),\n hostVersion: version,\n hostLanguage,\n hostName: _hostName,\n hostSDKVersion: SDKVersion,\n hostTheme: theme\n }));\n }\n};\n\nvar getDeviceInfo = {\n returnValue: function (result) {\n const { brand, model } = result;\n const deviceType = getGetDeviceType(result, model);\n const deviceBrand = getDeviceBrand(brand);\n useDeviceId(result);\n\n result = sortObject(Object.assign(result, {\n deviceType,\n deviceBrand,\n deviceModel: model\n }));\n }\n};\n\nvar getWindowInfo = {\n returnValue: function (result) {\n addSafeAreaInsets(result);\n\n result = sortObject(Object.assign(result, {\n windowTop: 0,\n windowBottom: 0\n }));\n }\n};\n\nvar getAppAuthorizeSetting = {\n returnValue: function (result) {\n const { locationReducedAccuracy } = result;\n\n result.locationAccuracy = 'unsupported';\n if (locationReducedAccuracy === true) {\n result.locationAccuracy = 'reduced';\n } else if (locationReducedAccuracy === false) {\n result.locationAccuracy = 'full';\n }\n }\n};\n\n// import navigateTo from 'uni-helpers/navigate-to'\n\nconst protocols = {\n redirectTo,\n // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP\n previewImage,\n getSystemInfo,\n getSystemInfoSync: getSystemInfo,\n showActionSheet,\n getAppBaseInfo,\n getDeviceInfo,\n getWindowInfo,\n getAppAuthorizeSetting\n};\nconst todos = [\n 'vibrate',\n 'preloadPage',\n 'unPreloadPage',\n 'loadSubPackage'\n];\nconst canIUses = [];\n\nconst CALLBACKS = ['success', 'fail', 'cancel', 'complete'];\n\nfunction processCallback (methodName, method, returnValue) {\n return function (res) {\n return method(processReturnValue(methodName, res, returnValue))\n }\n}\n\nfunction processArgs (methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {\n if (isPlainObject(fromArgs)) { // 一般 api 的参数解析\n const toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值\n if (isFn(argsOption)) {\n argsOption = argsOption(fromArgs, toArgs) || {};\n }\n for (const key in fromArgs) {\n if (hasOwn(argsOption, key)) {\n let keyOption = argsOption[key];\n if (isFn(keyOption)) {\n keyOption = keyOption(fromArgs[key], fromArgs, toArgs);\n }\n if (!keyOption) { // 不支持的参数\n console.warn(`The '${methodName}' method of platform '微信小程序' does not support option '${key}'`);\n } else if (isStr(keyOption)) { // 重写参数 key\n toArgs[keyOption] = fromArgs[key];\n } else if (isPlainObject(keyOption)) { // {name:newName,value:value}可重新指定参数 key:value\n toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;\n }\n } else if (CALLBACKS.indexOf(key) !== -1) {\n if (isFn(fromArgs[key])) {\n toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\n }\n } else {\n if (!keepFromArgs) {\n toArgs[key] = fromArgs[key];\n }\n }\n }\n return toArgs\n } else if (isFn(fromArgs)) {\n fromArgs = processCallback(methodName, fromArgs, returnValue);\n }\n return fromArgs\n}\n\nfunction processReturnValue (methodName, res, returnValue, keepReturnValue = false) {\n if (isFn(protocols.returnValue)) { // 处理通用 returnValue\n res = protocols.returnValue(methodName, res);\n }\n return processArgs(methodName, res, returnValue, {}, keepReturnValue)\n}\n\nfunction wrapper (methodName, method) {\n if (hasOwn(protocols, methodName)) {\n const protocol = protocols[methodName];\n if (!protocol) { // 暂不支持的 api\n return function () {\n console.error(`Platform '微信小程序' does not support '${methodName}'.`);\n }\n }\n return function (arg1, arg2) { // 目前 api 最多两个参数\n let options = protocol;\n if (isFn(protocol)) {\n options = protocol(arg1);\n }\n\n arg1 = processArgs(methodName, arg1, options.args, options.returnValue);\n\n const args = [arg1];\n if (typeof arg2 !== 'undefined') {\n args.push(arg2);\n }\n if (isFn(options.name)) {\n methodName = options.name(arg1);\n } else if (isStr(options.name)) {\n methodName = options.name;\n }\n const returnValue = wx[methodName].apply(wx, args);\n if (isSyncApi(methodName)) { // 同步 api\n return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName))\n }\n return returnValue\n }\n }\n return method\n}\n\nconst todoApis = Object.create(null);\n\nconst TODOS = [\n 'onTabBarMidButtonTap',\n 'subscribePush',\n 'unsubscribePush',\n 'onPush',\n 'offPush',\n 'share'\n];\n\nfunction createTodoApi (name) {\n return function todoApi ({\n fail,\n complete\n }) {\n const res = {\n errMsg: `${name}:fail method '${name}' not supported`\n };\n isFn(fail) && fail(res);\n isFn(complete) && complete(res);\n }\n}\n\nTODOS.forEach(function (name) {\n todoApis[name] = createTodoApi(name);\n});\n\nvar providers = {\n oauth: ['weixin'],\n share: ['weixin'],\n payment: ['wxpay'],\n push: ['weixin']\n};\n\nfunction getProvider ({\n service,\n success,\n fail,\n complete\n}) {\n let res = false;\n if (providers[service]) {\n res = {\n errMsg: 'getProvider:ok',\n service,\n provider: providers[service]\n };\n isFn(success) && success(res);\n } else {\n res = {\n errMsg: 'getProvider:fail service not found'\n };\n isFn(fail) && fail(res);\n }\n isFn(complete) && complete(res);\n}\n\nvar extraApi = /*#__PURE__*/Object.freeze({\n __proto__: null,\n getProvider: getProvider\n});\n\nconst getEmitter = (function () {\n let Emitter;\n return function getUniEmitter () {\n if (!Emitter) {\n Emitter = new Vue();\n }\n return Emitter\n }\n})();\n\nfunction apply (ctx, method, args) {\n return ctx[method].apply(ctx, args)\n}\n\nfunction $on () {\n return apply(getEmitter(), '$on', [...arguments])\n}\nfunction $off () {\n return apply(getEmitter(), '$off', [...arguments])\n}\nfunction $once () {\n return apply(getEmitter(), '$once', [...arguments])\n}\nfunction $emit () {\n return apply(getEmitter(), '$emit', [...arguments])\n}\n\nvar eventApi = /*#__PURE__*/Object.freeze({\n __proto__: null,\n $on: $on,\n $off: $off,\n $once: $once,\n $emit: $emit\n});\n\n/**\n * 框架内 try-catch\n */\n/**\n * 开发者 try-catch\n */\nfunction tryCatch (fn) {\n return function () {\n try {\n return fn.apply(fn, arguments)\n } catch (e) {\n // TODO\n console.error(e);\n }\n }\n}\n\nfunction getApiCallbacks (params) {\n const apiCallbacks = {};\n for (const name in params) {\n const param = params[name];\n if (isFn(param)) {\n apiCallbacks[name] = tryCatch(param);\n delete params[name];\n }\n }\n return apiCallbacks\n}\n\nlet cid;\nlet cidErrMsg;\nlet enabled;\n\nfunction normalizePushMessage (message) {\n try {\n return JSON.parse(message)\n } catch (e) {}\n return message\n}\n\nfunction invokePushCallback (\n args\n) {\n if (args.type === 'enabled') {\n enabled = true;\n } else if (args.type === 'clientId') {\n cid = args.cid;\n cidErrMsg = args.errMsg;\n invokeGetPushCidCallbacks(cid, args.errMsg);\n } else if (args.type === 'pushMsg') {\n const message = {\n type: 'receive',\n data: normalizePushMessage(args.message)\n };\n for (let i = 0; i < onPushMessageCallbacks.length; i++) {\n const callback = onPushMessageCallbacks[i];\n callback(message);\n // 该消息已被阻止\n if (message.stopped) {\n break\n }\n }\n } else if (args.type === 'click') {\n onPushMessageCallbacks.forEach((callback) => {\n callback({\n type: 'click',\n data: normalizePushMessage(args.message)\n });\n });\n }\n}\n\nconst getPushCidCallbacks = [];\n\nfunction invokeGetPushCidCallbacks (cid, errMsg) {\n getPushCidCallbacks.forEach((callback) => {\n callback(cid, errMsg);\n });\n getPushCidCallbacks.length = 0;\n}\n\nfunction getPushClientId (args) {\n if (!isPlainObject(args)) {\n args = {};\n }\n const {\n success,\n fail,\n complete\n } = getApiCallbacks(args);\n const hasSuccess = isFn(success);\n const hasFail = isFn(fail);\n const hasComplete = isFn(complete);\n\n Promise.resolve().then(() => {\n if (typeof enabled === 'undefined') {\n enabled = false;\n cid = '';\n cidErrMsg = 'uniPush is not enabled';\n }\n getPushCidCallbacks.push((cid, errMsg) => {\n let res;\n if (cid) {\n res = {\n errMsg: 'getPushClientId:ok',\n cid\n };\n hasSuccess && success(res);\n } else {\n res = {\n errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')\n };\n hasFail && fail(res);\n }\n hasComplete && complete(res);\n });\n if (typeof cid !== 'undefined') {\n invokeGetPushCidCallbacks(cid, cidErrMsg);\n }\n });\n}\n\nconst onPushMessageCallbacks = [];\n// 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现\nconst onPushMessage = (fn) => {\n if (onPushMessageCallbacks.indexOf(fn) === -1) {\n onPushMessageCallbacks.push(fn);\n }\n};\n\nconst offPushMessage = (fn) => {\n if (!fn) {\n onPushMessageCallbacks.length = 0;\n } else {\n const index = onPushMessageCallbacks.indexOf(fn);\n if (index > -1) {\n onPushMessageCallbacks.splice(index, 1);\n }\n }\n};\n\nlet baseInfo = wx.getAppBaseInfo && wx.getAppBaseInfo();\nif (!baseInfo) {\n baseInfo = wx.getSystemInfoSync();\n}\nconst host = baseInfo ? baseInfo.host : null;\nconst shareVideoMessage =\n host && host.env === 'SAAASDK' ? wx.miniapp.shareVideoMessage : wx.shareVideoMessage;\n\nvar api = /*#__PURE__*/Object.freeze({\n __proto__: null,\n shareVideoMessage: shareVideoMessage,\n getPushClientId: getPushClientId,\n onPushMessage: onPushMessage,\n offPushMessage: offPushMessage,\n invokePushCallback: invokePushCallback\n});\n\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\n\nfunction findVmByVueId (vm, vuePid) {\n const $children = vm.$children;\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\n for (let i = $children.length - 1; i >= 0; i--) {\n const childVm = $children[i];\n if (childVm.$scope._$vueId === vuePid) {\n return childVm\n }\n }\n // 反向递归查找\n let parentVm;\n for (let i = $children.length - 1; i >= 0; i--) {\n parentVm = findVmByVueId($children[i], vuePid);\n if (parentVm) {\n return parentVm\n }\n }\n}\n\nfunction initBehavior (options) {\n return Behavior(options)\n}\n\nfunction isPage () {\n return !!this.route\n}\n\nfunction initRelation (detail) {\n this.triggerEvent('__l', detail);\n}\n\nfunction selectAllComponents (mpInstance, selector, $refs) {\n const components = mpInstance.selectAllComponents(selector) || [];\n components.forEach(component => {\n const ref = component.dataset.ref;\n $refs[ref] = component.$vm || toSkip(component);\n {\n if (component.dataset.vueGeneric === 'scoped') {\n component.selectAllComponents('.scoped-ref').forEach(scopedComponent => {\n selectAllComponents(scopedComponent, selector, $refs);\n });\n }\n }\n });\n}\n\nfunction syncRefs (refs, newRefs) {\n const oldKeys = new Set(...Object.keys(refs));\n const newKeys = Object.keys(newRefs);\n newKeys.forEach(key => {\n const oldValue = refs[key];\n const newValue = newRefs[key];\n if (Array.isArray(oldValue) && Array.isArray(newValue) && oldValue.length === newValue.length && newValue.every(value => oldValue.includes(value))) {\n return\n }\n refs[key] = newValue;\n oldKeys.delete(key);\n });\n oldKeys.forEach(key => {\n delete refs[key];\n });\n return refs\n}\n\nfunction initRefs (vm) {\n const mpInstance = vm.$scope;\n const refs = {};\n Object.defineProperty(vm, '$refs', {\n get () {\n const $refs = {};\n selectAllComponents(mpInstance, '.vue-ref', $refs);\n // TODO 暂不考虑 for 中的 scoped\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for') || [];\n forComponents.forEach(component => {\n const ref = component.dataset.ref;\n if (!$refs[ref]) {\n $refs[ref] = [];\n }\n $refs[ref].push(component.$vm || toSkip(component));\n });\n return syncRefs(refs, $refs)\n }\n });\n}\n\nfunction handleLink (event) {\n const {\n vuePid,\n vueOptions\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\n\n let parentVm;\n\n if (vuePid) {\n parentVm = findVmByVueId(this.$vm, vuePid);\n }\n\n if (!parentVm) {\n parentVm = this.$vm;\n }\n\n vueOptions.parent = parentVm;\n}\n\nfunction markMPComponent (component) {\n // 在 Vue 中标记为小程序组件\n const IS_MP = '__v_isMPComponent';\n Object.defineProperty(component, IS_MP, {\n configurable: true,\n enumerable: false,\n value: true\n });\n return component\n}\n\nfunction toSkip (obj) {\n const OB = '__ob__';\n const SKIP = '__v_skip';\n if (isObject(obj) && Object.isExtensible(obj)) {\n // 避免被 @vue/composition-api 观测\n Object.defineProperty(obj, OB, {\n configurable: true,\n enumerable: false,\n value: {\n [SKIP]: true\n }\n });\n }\n return obj\n}\n\nconst MPPage = Page;\nconst MPComponent = Component;\n\nconst customizeRE = /:/g;\n\nconst customize = cached((str) => {\n return camelize(str.replace(customizeRE, '-'))\n});\n\nfunction initTriggerEvent (mpInstance) {\n const oldTriggerEvent = mpInstance.triggerEvent;\n const newTriggerEvent = function (event, ...args) {\n // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件\n if (this.$vm || (this.dataset && this.dataset.comType)) {\n event = customize(event);\n } else {\n // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目\n const newEvent = customize(event);\n if (newEvent !== event) {\n oldTriggerEvent.apply(this, [newEvent, ...args]);\n }\n }\n return oldTriggerEvent.apply(this, [event, ...args])\n };\n try {\n // 京东小程序 triggerEvent 为只读\n mpInstance.triggerEvent = newTriggerEvent;\n } catch (error) {\n mpInstance._triggerEvent = newTriggerEvent;\n }\n}\n\nfunction initHook (name, options, isComponent) {\n const oldHook = options[name];\n options[name] = function (...args) {\n markMPComponent(this);\n initTriggerEvent(this);\n if (oldHook) {\n return oldHook.apply(this, args)\n }\n };\n}\nif (!MPPage.__$wrappered) {\n MPPage.__$wrappered = true;\n Page = function (options = {}) {\n initHook('onLoad', options);\n return MPPage(options)\n };\n Page.after = MPPage.after;\n\n Component = function (options = {}) {\n initHook('created', options);\n return MPComponent(options)\n };\n}\n\nconst PAGE_EVENT_HOOKS = [\n 'onPullDownRefresh',\n 'onReachBottom',\n 'onAddToFavorites',\n 'onShareTimeline',\n 'onShareAppMessage',\n 'onPageScroll',\n 'onResize',\n 'onTabItemTap'\n];\n\nfunction initMocks (vm, mocks) {\n const mpInstance = vm.$mp[vm.mpType];\n mocks.forEach(mock => {\n if (hasOwn(mpInstance, mock)) {\n vm[mock] = mpInstance[mock];\n }\n });\n}\n\nfunction hasHook (hook, vueOptions) {\n if (!vueOptions) {\n return true\n }\n\n if (Vue.options && Array.isArray(Vue.options[hook])) {\n return true\n }\n\n vueOptions = vueOptions.default || vueOptions;\n\n if (isFn(vueOptions)) {\n if (isFn(vueOptions.extendOptions[hook])) {\n return true\n }\n if (vueOptions.super &&\n vueOptions.super.options &&\n Array.isArray(vueOptions.super.options[hook])) {\n return true\n }\n return false\n }\n\n if (isFn(vueOptions[hook]) || Array.isArray(vueOptions[hook])) {\n return true\n }\n const mixins = vueOptions.mixins;\n if (Array.isArray(mixins)) {\n return !!mixins.find(mixin => hasHook(hook, mixin))\n }\n}\n\nfunction initHooks (mpOptions, hooks, vueOptions) {\n hooks.forEach(hook => {\n if (hasHook(hook, vueOptions)) {\n mpOptions[hook] = function (args) {\n return this.$vm && this.$vm.__call_hook(hook, args)\n };\n }\n });\n}\n\nfunction initUnknownHooks (mpOptions, vueOptions, excludes = []) {\n findHooks(vueOptions).forEach((hook) => initHook$1(mpOptions, hook, excludes));\n}\n\nfunction findHooks (vueOptions, hooks = []) {\n if (vueOptions) {\n Object.keys(vueOptions).forEach((name) => {\n if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {\n hooks.push(name);\n }\n });\n }\n return hooks\n}\n\nfunction initHook$1 (mpOptions, hook, excludes) {\n if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {\n mpOptions[hook] = function (args) {\n return this.$vm && this.$vm.__call_hook(hook, args)\n };\n }\n}\n\nfunction initVueComponent (Vue, vueOptions) {\n vueOptions = vueOptions.default || vueOptions;\n let VueComponent;\n if (isFn(vueOptions)) {\n VueComponent = vueOptions;\n } else {\n VueComponent = Vue.extend(vueOptions);\n }\n vueOptions = VueComponent.options;\n return [VueComponent, vueOptions]\n}\n\nfunction initSlots (vm, vueSlots) {\n if (Array.isArray(vueSlots) && vueSlots.length) {\n const $slots = Object.create(null);\n vueSlots.forEach(slotName => {\n $slots[slotName] = true;\n });\n vm.$scopedSlots = vm.$slots = $slots;\n }\n}\n\nfunction initVueIds (vueIds, mpInstance) {\n vueIds = (vueIds || '').split(',');\n const len = vueIds.length;\n\n if (len === 1) {\n mpInstance._$vueId = vueIds[0];\n } else if (len === 2) {\n mpInstance._$vueId = vueIds[0];\n mpInstance._$vuePid = vueIds[1];\n }\n}\n\nfunction initData (vueOptions, context) {\n let data = vueOptions.data || {};\n const methods = vueOptions.methods || {};\n\n if (typeof data === 'function') {\n try {\n data = data.call(context); // 支持 Vue.prototype 上挂的数据\n } catch (e) {\n if (process.env.VUE_APP_DEBUG) {\n console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);\n }\n }\n } else {\n try {\n // 对 data 格式化\n data = JSON.parse(JSON.stringify(data));\n } catch (e) { }\n }\n\n if (!isPlainObject(data)) {\n data = {};\n }\n\n Object.keys(methods).forEach(methodName => {\n if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {\n data[methodName] = methods[methodName];\n }\n });\n\n return data\n}\n\nconst PROP_TYPES = [String, Number, Boolean, Object, Array, null];\n\nfunction createObserver (name) {\n return function observer (newVal, oldVal) {\n if (this.$vm) {\n this.$vm[name] = newVal; // 为了触发其他非 render watcher\n }\n }\n}\n\nfunction initBehaviors (vueOptions, initBehavior) {\n const vueBehaviors = vueOptions.behaviors;\n const vueExtends = vueOptions.extends;\n const vueMixins = vueOptions.mixins;\n\n let vueProps = vueOptions.props;\n\n if (!vueProps) {\n vueOptions.props = vueProps = [];\n }\n\n const behaviors = [];\n if (Array.isArray(vueBehaviors)) {\n vueBehaviors.forEach(behavior => {\n behaviors.push(behavior.replace('uni://', `${\"wx\"}://`));\n if (behavior === 'uni://form-field') {\n if (Array.isArray(vueProps)) {\n vueProps.push('name');\n vueProps.push('value');\n } else {\n vueProps.name = {\n type: String,\n default: ''\n };\n vueProps.value = {\n type: [String, Number, Boolean, Array, Object, Date],\n default: ''\n };\n }\n }\n });\n }\n if (isPlainObject(vueExtends) && vueExtends.props) {\n behaviors.push(\n initBehavior({\n properties: initProperties(vueExtends.props, true)\n })\n );\n }\n if (Array.isArray(vueMixins)) {\n vueMixins.forEach(vueMixin => {\n if (isPlainObject(vueMixin) && vueMixin.props) {\n behaviors.push(\n initBehavior({\n properties: initProperties(vueMixin.props, true)\n })\n );\n }\n });\n }\n return behaviors\n}\n\nfunction parsePropType (key, type, defaultValue, file) {\n // [String]=>String\n if (Array.isArray(type) && type.length === 1) {\n return type[0]\n }\n return type\n}\n\nfunction initProperties (props, isBehavior = false, file = '', options) {\n const properties = {};\n if (!isBehavior) {\n properties.vueId = {\n type: String,\n value: ''\n };\n {\n if ( options.virtualHost) {\n properties.virtualHostStyle = {\n type: null,\n value: ''\n };\n properties.virtualHostClass = {\n type: null,\n value: ''\n };\n }\n }\n // scopedSlotsCompiler auto\n properties.scopedSlotsCompiler = {\n type: String,\n value: ''\n };\n properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots\n type: null,\n value: [],\n observer: function (newVal, oldVal) {\n const $slots = Object.create(null);\n newVal.forEach(slotName => {\n $slots[slotName] = true;\n });\n this.setData({\n $slots\n });\n }\n };\n }\n if (Array.isArray(props)) { // ['title']\n props.forEach(key => {\n properties[key] = {\n type: null,\n observer: createObserver(key)\n };\n });\n } else if (isPlainObject(props)) { // {title:{type:String,default:''},content:String}\n Object.keys(props).forEach(key => {\n const opts = props[key];\n if (isPlainObject(opts)) { // title:{type:String,default:''}\n let value = opts.default;\n if (isFn(value)) {\n value = value();\n }\n\n opts.type = parsePropType(key, opts.type);\n\n properties[key] = {\n type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,\n value,\n observer: createObserver(key)\n };\n } else { // content:String\n const type = parsePropType(key, opts);\n properties[key] = {\n type: PROP_TYPES.indexOf(type) !== -1 ? type : null,\n observer: createObserver(key)\n };\n }\n });\n }\n return properties\n}\n\nfunction wrapper$1 (event) {\n // TODO 又得兼容 mpvue 的 mp 对象\n try {\n event.mp = JSON.parse(JSON.stringify(event));\n } catch (e) { }\n\n event.stopPropagation = noop;\n event.preventDefault = noop;\n\n event.target = event.target || {};\n\n if (!hasOwn(event, 'detail')) {\n event.detail = {};\n }\n\n if (hasOwn(event, 'markerId')) {\n event.detail = typeof event.detail === 'object' ? event.detail : {};\n event.detail.markerId = event.markerId;\n }\n\n if (isPlainObject(event.detail)) {\n event.target = Object.assign({}, event.target, event.detail);\n }\n\n return event\n}\n\nfunction getExtraValue (vm, dataPathsArray) {\n let context = vm;\n dataPathsArray.forEach(dataPathArray => {\n const dataPath = dataPathArray[0];\n const value = dataPathArray[2];\n if (dataPath || typeof value !== 'undefined') { // ['','',index,'disable']\n const propPath = dataPathArray[1];\n const valuePath = dataPathArray[3];\n\n let vFor;\n if (Number.isInteger(dataPath)) {\n vFor = dataPath;\n } else if (!dataPath) {\n vFor = context;\n } else if (typeof dataPath === 'string' && dataPath) {\n if (dataPath.indexOf('#s#') === 0) {\n vFor = dataPath.substr(3);\n } else {\n vFor = vm.__get_value(dataPath, context);\n }\n }\n\n if (Number.isInteger(vFor)) {\n context = value;\n } else if (!propPath) {\n context = vFor[value];\n } else {\n if (Array.isArray(vFor)) {\n context = vFor.find(vForItem => {\n return vm.__get_value(propPath, vForItem) === value\n });\n } else if (isPlainObject(vFor)) {\n context = Object.keys(vFor).find(vForKey => {\n return vm.__get_value(propPath, vFor[vForKey]) === value\n });\n } else {\n console.error('v-for 暂不支持循环数据:', vFor);\n }\n }\n\n if (valuePath) {\n context = vm.__get_value(valuePath, context);\n }\n }\n });\n return context\n}\n\nfunction processEventExtra (vm, extra, event, __args__) {\n const extraObj = {};\n\n if (Array.isArray(extra) && extra.length) {\n /**\n *[\n * ['data.items', 'data.id', item.data.id],\n * ['metas', 'id', meta.id]\n *],\n *[\n * ['data.items', 'data.id', item.data.id],\n * ['metas', 'id', meta.id]\n *],\n *'test'\n */\n extra.forEach((dataPath, index) => {\n if (typeof dataPath === 'string') {\n if (!dataPath) { // model,prop.sync\n extraObj['$' + index] = vm;\n } else {\n if (dataPath === '$event') { // $event\n extraObj['$' + index] = event;\n } else if (dataPath === 'arguments') {\n extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;\n } else if (dataPath.indexOf('$event.') === 0) { // $event.target.value\n extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);\n } else {\n extraObj['$' + index] = vm.__get_value(dataPath);\n }\n }\n } else {\n extraObj['$' + index] = getExtraValue(vm, dataPath);\n }\n });\n }\n\n return extraObj\n}\n\nfunction getObjByArray (arr) {\n const obj = {};\n for (let i = 1; i < arr.length; i++) {\n const element = arr[i];\n obj[element[0]] = element[1];\n }\n return obj\n}\n\nfunction processEventArgs (vm, event, args = [], extra = [], isCustom, methodName) {\n let isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象\n\n // fixed 用户直接触发 mpInstance.triggerEvent\n const __args__ = isPlainObject(event.detail)\n ? event.detail.__args__ || [event.detail]\n : [event.detail];\n\n if (isCustom) { // 自定义事件\n isCustomMPEvent = event.currentTarget &&\n event.currentTarget.dataset &&\n event.currentTarget.dataset.comType === 'wx';\n if (!args.length) { // 无参数,直接传入 event 或 detail 数组\n if (isCustomMPEvent) {\n return [event]\n }\n return __args__\n }\n }\n\n const extraObj = processEventExtra(vm, extra, event, __args__);\n\n const ret = [];\n args.forEach(arg => {\n if (arg === '$event') {\n if (methodName === '__set_model' && !isCustom) { // input v-model value\n ret.push(event.target.value);\n } else {\n if (isCustom && !isCustomMPEvent) {\n ret.push(__args__[0]);\n } else { // wxcomponent 组件或内置组件\n ret.push(event);\n }\n }\n } else {\n if (Array.isArray(arg) && arg[0] === 'o') {\n ret.push(getObjByArray(arg));\n } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {\n ret.push(extraObj[arg]);\n } else {\n ret.push(arg);\n }\n }\n });\n\n return ret\n}\n\nconst ONCE = '~';\nconst CUSTOM = '^';\n\nfunction isMatchEventType (eventType, optType) {\n return (eventType === optType) ||\n (\n optType === 'regionchange' &&\n (\n eventType === 'begin' ||\n eventType === 'end'\n )\n )\n}\n\nfunction getContextVm (vm) {\n let $parent = vm.$parent;\n // 父组件是 scoped slots 或者其他自定义组件时继续查找\n while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {\n $parent = $parent.$parent;\n }\n return $parent && $parent.$parent\n}\n\nfunction handleEvent (event) {\n event = wrapper$1(event);\n\n // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]\n const dataset = (event.currentTarget || event.target).dataset;\n if (!dataset) {\n return console.warn('事件信息不存在')\n }\n const eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰\n if (!eventOpts) {\n return console.warn('事件信息不存在')\n }\n\n // [['handle',[1,2,a]],['handle1',[1,2,a]]]\n const eventType = event.type;\n\n const ret = [];\n\n eventOpts.forEach(eventOpt => {\n let type = eventOpt[0];\n const eventsArray = eventOpt[1];\n\n const isCustom = type.charAt(0) === CUSTOM;\n type = isCustom ? type.slice(1) : type;\n const isOnce = type.charAt(0) === ONCE;\n type = isOnce ? type.slice(1) : type;\n\n if (eventsArray && isMatchEventType(eventType, type)) {\n eventsArray.forEach(eventArray => {\n const methodName = eventArray[0];\n if (methodName) {\n let handlerCtx = this.$vm;\n if (handlerCtx.$options.generic) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\n handlerCtx = getContextVm(handlerCtx) || handlerCtx;\n }\n if (methodName === '$emit') {\n handlerCtx.$emit.apply(handlerCtx,\n processEventArgs(\n this.$vm,\n event,\n eventArray[1],\n eventArray[2],\n isCustom,\n methodName\n ));\n return\n }\n const handler = handlerCtx[methodName];\n if (!isFn(handler)) {\n const type = this.$vm.mpType === 'page' ? 'Page' : 'Component';\n const path = this.route || this.is;\n throw new Error(`${type} \"${path}\" does not have a method \"${methodName}\"`)\n }\n if (isOnce) {\n if (handler.once) {\n return\n }\n handler.once = true;\n }\n let params = processEventArgs(\n this.$vm,\n event,\n eventArray[1],\n eventArray[2],\n isCustom,\n methodName\n );\n params = Array.isArray(params) ? params : [];\n // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据\n if (/=\\s*\\S+\\.eventParams\\s*\\|\\|\\s*\\S+\\[['\"]event-params['\"]\\]/.test(handler.toString())) {\n // eslint-disable-next-line no-sparse-arrays\n params = params.concat([, , , , , , , , , , event]);\n }\n ret.push(handler.apply(handlerCtx, params));\n }\n });\n }\n });\n\n if (\n eventType === 'input' &&\n ret.length === 1 &&\n typeof ret[0] !== 'undefined'\n ) {\n return ret[0]\n }\n}\n\nconst eventChannels = {};\n\nconst eventChannelStack = [];\n\nfunction getEventChannel (id) {\n if (id) {\n const eventChannel = eventChannels[id];\n delete eventChannels[id];\n return eventChannel\n }\n return eventChannelStack.shift()\n}\n\nconst hooks = [\n 'onShow',\n 'onHide',\n 'onError',\n 'onPageNotFound',\n 'onThemeChange',\n 'onUnhandledRejection'\n];\n\nfunction initEventChannel () {\n Vue.prototype.getOpenerEventChannel = function () {\n // 微信小程序使用自身getOpenerEventChannel\n {\n return this.$scope.getOpenerEventChannel()\n }\n };\n const callHook = Vue.prototype.__call_hook;\n Vue.prototype.__call_hook = function (hook, args) {\n if (hook === 'onLoad' && args && args.__id__) {\n this.__eventChannel__ = getEventChannel(args.__id__);\n delete args.__id__;\n }\n return callHook.call(this, hook, args)\n };\n}\n\nfunction initScopedSlotsParams () {\n const center = {};\n const parents = {};\n\n Vue.prototype.$hasScopedSlotsParams = function (vueId) {\n const has = center[vueId];\n if (!has) {\n parents[vueId] = this;\n this.$on('hook:destroyed', () => {\n delete parents[vueId];\n });\n }\n return has\n };\n\n Vue.prototype.$getScopedSlotsParams = function (vueId, name, key) {\n const data = center[vueId];\n if (data) {\n const object = data[name] || {};\n return key ? object[key] : object\n } else {\n parents[vueId] = this;\n this.$on('hook:destroyed', () => {\n delete parents[vueId];\n });\n }\n };\n\n Vue.prototype.$setScopedSlotsParams = function (name, value) {\n const vueIds = this.$options.propsData.vueId;\n if (vueIds) {\n const vueId = vueIds.split(',')[0];\n const object = center[vueId] = center[vueId] || {};\n object[name] = value;\n if (parents[vueId]) {\n parents[vueId].$forceUpdate();\n }\n }\n };\n\n Vue.mixin({\n destroyed () {\n const propsData = this.$options.propsData;\n const vueId = propsData && propsData.vueId;\n if (vueId) {\n delete center[vueId];\n delete parents[vueId];\n }\n }\n });\n}\n\nfunction parseBaseApp (vm, {\n mocks,\n initRefs\n}) {\n initEventChannel();\n {\n initScopedSlotsParams();\n }\n if (vm.$options.store) {\n Vue.prototype.$store = vm.$options.store;\n }\n uniIdMixin(Vue);\n\n Vue.prototype.mpHost = \"mp-weixin\";\n\n Vue.mixin({\n beforeCreate () {\n if (!this.$options.mpType) {\n return\n }\n\n this.mpType = this.$options.mpType;\n\n this.$mp = {\n data: {},\n [this.mpType]: this.$options.mpInstance\n };\n\n this.$scope = this.$options.mpInstance;\n\n delete this.$options.mpType;\n delete this.$options.mpInstance;\n if (this.mpType === 'page' && typeof getApp === 'function') { // hack vue-i18n\n const app = getApp();\n if (app.$vm && app.$vm.$i18n) {\n this._i18n = app.$vm.$i18n;\n }\n }\n if (this.mpType !== 'app') {\n initRefs(this);\n initMocks(this, mocks);\n }\n }\n });\n\n const appOptions = {\n onLaunch (args) {\n if (this.$vm) { // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前\n return\n }\n {\n if (wx.canIUse && !wx.canIUse('nextTick')) { // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断\n console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');\n }\n }\n\n this.$vm = vm;\n\n this.$vm.$mp = {\n app: this\n };\n\n this.$vm.$scope = this;\n // vm 上也挂载 globalData\n this.$vm.globalData = this.globalData;\n\n this.$vm._isMounted = true;\n this.$vm.__call_hook('mounted', args);\n\n this.$vm.__call_hook('onLaunch', args);\n }\n };\n\n // 兼容旧版本 globalData\n appOptions.globalData = vm.$options.globalData || {};\n // 将 methods 中的方法挂在 getApp() 中\n const methods = vm.$options.methods;\n if (methods) {\n Object.keys(methods).forEach(name => {\n appOptions[name] = methods[name];\n });\n }\n\n initAppLocale(Vue, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);\n\n initHooks(appOptions, hooks);\n initUnknownHooks(appOptions, vm.$options);\n\n return appOptions\n}\n\nfunction parseApp (vm) {\n return parseBaseApp(vm, {\n mocks,\n initRefs\n })\n}\n\nfunction createApp (vm) {\n App(parseApp(vm));\n return vm\n}\n\nconst encodeReserveRE = /[!'()*]/g;\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16);\nconst commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nconst encode = str => encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ',');\n\nfunction stringifyQuery (obj, encodeStr = encode) {\n const res = obj ? Object.keys(obj).map(key => {\n const val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encodeStr(key)\n }\n\n if (Array.isArray(val)) {\n const result = [];\n val.forEach(val2 => {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encodeStr(key));\n } else {\n result.push(encodeStr(key) + '=' + encodeStr(val2));\n }\n });\n return result.join('&')\n }\n\n return encodeStr(key) + '=' + encodeStr(val)\n }).filter(x => x.length > 0).join('&') : null;\n return res ? `?${res}` : ''\n}\n\nfunction parseBaseComponent (vueComponentOptions, {\n isPage,\n initRelation\n} = {}, needVueOptions) {\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\n\n const options = {\n multipleSlots: true,\n addGlobalClass: true,\n ...(vueOptions.options || {})\n };\n\n {\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\n Object.assign(options, vueOptions['mp-weixin'].options);\n }\n }\n\n const componentOptions = {\n options,\n data: initData(vueOptions, Vue.prototype),\n behaviors: initBehaviors(vueOptions, initBehavior),\n properties: initProperties(vueOptions.props, false, vueOptions.__file, options),\n lifetimes: {\n attached () {\n const properties = this.properties;\n\n const options = {\n mpType: isPage.call(this) ? 'page' : 'component',\n mpInstance: this,\n propsData: properties\n };\n\n initVueIds(properties.vueId, this);\n\n // 处理父子关系\n initRelation.call(this, {\n vuePid: this._$vuePid,\n vueOptions: options\n });\n\n // 初始化 vue 实例\n this.$vm = new VueComponent(options);\n\n // 处理$slots,$scopedSlots(暂不支持动态变化$slots)\n initSlots(this.$vm, properties.vueSlots);\n\n // 触发首次 setData\n this.$vm.$mount();\n },\n ready () {\n // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发\n // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800\n if (this.$vm) {\n this.$vm._isMounted = true;\n this.$vm.__call_hook('mounted');\n this.$vm.__call_hook('onReady');\n }\n },\n detached () {\n this.$vm && this.$vm.$destroy();\n }\n },\n pageLifetimes: {\n show (args) {\n this.$vm && this.$vm.__call_hook('onPageShow', args);\n },\n hide () {\n this.$vm && this.$vm.__call_hook('onPageHide');\n },\n resize (size) {\n this.$vm && this.$vm.__call_hook('onPageResize', size);\n }\n },\n methods: {\n __l: handleLink,\n __e: handleEvent\n }\n };\n // externalClasses\n if (vueOptions.externalClasses) {\n componentOptions.externalClasses = vueOptions.externalClasses;\n }\n\n if (Array.isArray(vueOptions.wxsCallMethods)) {\n vueOptions.wxsCallMethods.forEach(callMethod => {\n componentOptions.methods[callMethod] = function (args) {\n return this.$vm[callMethod](args)\n };\n });\n }\n\n if (needVueOptions) {\n return [componentOptions, vueOptions, VueComponent]\n }\n if (isPage) {\n return componentOptions\n }\n return [componentOptions, VueComponent]\n}\n\nfunction parseComponent (vueComponentOptions, needVueOptions) {\n return parseBaseComponent(vueComponentOptions, {\n isPage,\n initRelation\n }, needVueOptions)\n}\n\nconst hooks$1 = [\n 'onShow',\n 'onHide',\n 'onUnload'\n];\n\nhooks$1.push(...PAGE_EVENT_HOOKS);\n\nfunction parseBasePage (vuePageOptions) {\n const [pageOptions, vueOptions] = parseComponent(vuePageOptions, true);\n\n initHooks(pageOptions.methods, hooks$1, vueOptions);\n\n pageOptions.methods.onLoad = function (query) {\n this.options = query;\n const copyQuery = Object.assign({}, query);\n delete copyQuery.__id__;\n this.$page = {\n fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)\n };\n this.$vm.$mp.query = query; // 兼容 mpvue\n this.$vm.__call_hook('onLoad', query);\n };\n {\n initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);\n }\n\n return pageOptions\n}\n\nfunction parsePage (vuePageOptions) {\n return parseBasePage(vuePageOptions)\n}\n\nfunction createPage (vuePageOptions) {\n {\n return Component(parsePage(vuePageOptions))\n }\n}\n\nfunction createComponent (vueOptions) {\n {\n return Component(parseComponent(vueOptions))\n }\n}\n\nfunction createSubpackageApp (vm) {\n const appOptions = parseApp(vm);\n const app = getApp({\n allowDefault: true\n });\n vm.$scope = app;\n const globalData = app.globalData;\n if (globalData) {\n Object.keys(appOptions.globalData).forEach(name => {\n if (!hasOwn(globalData, name)) {\n globalData[name] = appOptions.globalData[name];\n }\n });\n }\n Object.keys(appOptions).forEach(name => {\n if (!hasOwn(app, name)) {\n app[name] = appOptions[name];\n }\n });\n if (isFn(appOptions.onShow) && wx.onAppShow) {\n wx.onAppShow((...args) => {\n vm.__call_hook('onShow', args);\n });\n }\n if (isFn(appOptions.onHide) && wx.onAppHide) {\n wx.onAppHide((...args) => {\n vm.__call_hook('onHide', args);\n });\n }\n if (isFn(appOptions.onLaunch)) {\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\n vm.__call_hook('onLaunch', args);\n }\n return vm\n}\n\nfunction createPlugin (vm) {\n const appOptions = parseApp(vm);\n if (isFn(appOptions.onShow) && wx.onAppShow) {\n wx.onAppShow((...args) => {\n vm.__call_hook('onShow', args);\n });\n }\n if (isFn(appOptions.onHide) && wx.onAppHide) {\n wx.onAppHide((...args) => {\n vm.__call_hook('onHide', args);\n });\n }\n if (isFn(appOptions.onLaunch)) {\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\n vm.__call_hook('onLaunch', args);\n }\n return vm\n}\n\ntodos.forEach(todoApi => {\n protocols[todoApi] = false;\n});\n\ncanIUses.forEach(canIUseApi => {\n const apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name\n : canIUseApi;\n if (!wx.canIUse(apiName)) {\n protocols[canIUseApi] = false;\n }\n});\n\nlet uni = {};\n\nif (typeof Proxy !== 'undefined' && \"mp-weixin\" !== 'app-plus') {\n uni = new Proxy({}, {\n get (target, name) {\n if (hasOwn(target, name)) {\n return target[name]\n }\n if (baseApi[name]) {\n return baseApi[name]\n }\n if (api[name]) {\n return promisify(name, api[name])\n }\n {\n if (extraApi[name]) {\n return promisify(name, extraApi[name])\n }\n if (todoApis[name]) {\n return promisify(name, todoApis[name])\n }\n }\n if (eventApi[name]) {\n return eventApi[name]\n }\n return promisify(name, wrapper(name, wx[name]))\n },\n set (target, name, value) {\n target[name] = value;\n return true\n }\n });\n} else {\n Object.keys(baseApi).forEach(name => {\n uni[name] = baseApi[name];\n });\n\n {\n Object.keys(todoApis).forEach(name => {\n uni[name] = promisify(name, todoApis[name]);\n });\n Object.keys(extraApi).forEach(name => {\n uni[name] = promisify(name, todoApis[name]);\n });\n }\n\n Object.keys(eventApi).forEach(name => {\n uni[name] = eventApi[name];\n });\n\n Object.keys(api).forEach(name => {\n uni[name] = promisify(name, api[name]);\n });\n\n Object.keys(wx).forEach(name => {\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\n uni[name] = promisify(name, wrapper(name, wx[name]));\n }\n });\n}\n\nwx.createApp = createApp;\nwx.createPage = createPage;\nwx.createComponent = createComponent;\nwx.createSubpackageApp = createSubpackageApp;\nwx.createPlugin = createPlugin;\n\nvar uni$1 = uni;\n\nexport default uni$1;\nexport { createApp, createComponent, createPage, createPlugin, createSubpackageApp };\n","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","const isArray = Array.isArray;\nconst isObject = (val) => val !== null && typeof val === 'object';\nconst defaultDelimiters = ['{', '}'];\nclass BaseFormatter {\n constructor() {\n this._caches = Object.create(null);\n }\n interpolate(message, values, delimiters = defaultDelimiters) {\n if (!values) {\n return [message];\n }\n let tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message, delimiters);\n this._caches[message] = tokens;\n }\n return compile(tokens, values);\n }\n}\nconst RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nconst RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\nfunction parse(format, [startDelimiter, endDelimiter]) {\n const tokens = [];\n let position = 0;\n let text = '';\n while (position < format.length) {\n let char = format[position++];\n if (char === startDelimiter) {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n text = '';\n let sub = '';\n char = format[position++];\n while (char !== undefined && char !== endDelimiter) {\n sub += char;\n char = format[position++];\n }\n const isClosed = char === endDelimiter;\n const type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type });\n }\n // else if (char === '%') {\n // // when found rails i18n syntax, skip text capture\n // if (format[position] !== '{') {\n // text += char\n // }\n // }\n else {\n text += char;\n }\n }\n text && tokens.push({ type: 'text', value: text });\n return tokens;\n}\nfunction compile(tokens, values) {\n const compiled = [];\n let index = 0;\n const mode = isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') {\n return compiled;\n }\n while (index < tokens.length) {\n const token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break;\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break;\n case 'named':\n if (mode === 'named') {\n compiled.push(values[token.value]);\n }\n else {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Type of token '${token.type}' and format of value '${mode}' don't match!`);\n }\n }\n break;\n case 'unknown':\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Detect 'unknown' type of token!`);\n }\n break;\n }\n index++;\n }\n return compiled;\n}\n\nconst LOCALE_ZH_HANS = 'zh-Hans';\nconst LOCALE_ZH_HANT = 'zh-Hant';\nconst LOCALE_EN = 'en';\nconst LOCALE_FR = 'fr';\nconst LOCALE_ES = 'es';\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst defaultFormatter = new BaseFormatter();\nfunction include(str, parts) {\n return !!parts.find((part) => str.indexOf(part) !== -1);\n}\nfunction startsWith(str, parts) {\n return parts.find((part) => str.indexOf(part) === 0);\n}\nfunction normalizeLocale(locale, messages) {\n if (!locale) {\n return;\n }\n locale = locale.trim().replace(/_/g, '-');\n if (messages && messages[locale]) {\n return locale;\n }\n locale = locale.toLowerCase();\n if (locale.indexOf('zh') === 0) {\n if (locale.indexOf('-hans') > -1) {\n return LOCALE_ZH_HANS;\n }\n if (locale.indexOf('-hant') > -1) {\n return LOCALE_ZH_HANT;\n }\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\n return LOCALE_ZH_HANT;\n }\n return LOCALE_ZH_HANS;\n }\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\n if (lang) {\n return lang;\n }\n}\nclass I18n {\n constructor({ locale, fallbackLocale, messages, watcher, formater, }) {\n this.locale = LOCALE_EN;\n this.fallbackLocale = LOCALE_EN;\n this.message = {};\n this.messages = {};\n this.watchers = [];\n if (fallbackLocale) {\n this.fallbackLocale = fallbackLocale;\n }\n this.formater = formater || defaultFormatter;\n this.messages = messages || {};\n this.setLocale(locale || LOCALE_EN);\n if (watcher) {\n this.watchLocale(watcher);\n }\n }\n setLocale(locale) {\n const oldLocale = this.locale;\n this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;\n if (!this.messages[this.locale]) {\n // 可能初始化时不存在\n this.messages[this.locale] = {};\n }\n this.message = this.messages[this.locale];\n // 仅发生变化时,通知\n if (oldLocale !== this.locale) {\n this.watchers.forEach((watcher) => {\n watcher(this.locale, oldLocale);\n });\n }\n }\n getLocale() {\n return this.locale;\n }\n watchLocale(fn) {\n const index = this.watchers.push(fn) - 1;\n return () => {\n this.watchers.splice(index, 1);\n };\n }\n add(locale, message, override = true) {\n const curMessages = this.messages[locale];\n if (curMessages) {\n if (override) {\n Object.assign(curMessages, message);\n }\n else {\n Object.keys(message).forEach((key) => {\n if (!hasOwn(curMessages, key)) {\n curMessages[key] = message[key];\n }\n });\n }\n }\n else {\n this.messages[locale] = message;\n }\n }\n f(message, values, delimiters) {\n return this.formater.interpolate(message, values, delimiters).join('');\n }\n t(key, locale, values) {\n let message = this.message;\n if (typeof locale === 'string') {\n locale = normalizeLocale(locale, this.messages);\n locale && (message = this.messages[locale]);\n }\n else {\n values = locale;\n }\n if (!hasOwn(message, key)) {\n console.warn(`Cannot translate the value of keypath ${key}. Use the value of keypath as default.`);\n return key;\n }\n return this.formater.interpolate(message[key], values).join('');\n }\n}\n\nfunction watchAppLocale(appVm, i18n) {\n // 需要保证 watch 的触发在组件渲染之前\n if (appVm.$watchLocale) {\n // vue2\n appVm.$watchLocale((newLocale) => {\n i18n.setLocale(newLocale);\n });\n }\n else {\n appVm.$watch(() => appVm.$locale, (newLocale) => {\n i18n.setLocale(newLocale);\n });\n }\n}\nfunction getDefaultLocale() {\n if (typeof uni !== 'undefined' && uni.getLocale) {\n return uni.getLocale();\n }\n // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale\n if (typeof global !== 'undefined' && global.getLocale) {\n return global.getLocale();\n }\n return LOCALE_EN;\n}\nfunction initVueI18n(locale, messages = {}, fallbackLocale, watcher) {\n // 兼容旧版本入参\n if (typeof locale !== 'string') {\n [locale, messages] = [\n messages,\n locale,\n ];\n }\n if (typeof locale !== 'string') {\n // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined\n locale = getDefaultLocale();\n }\n if (typeof fallbackLocale !== 'string') {\n fallbackLocale =\n (typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale) ||\n LOCALE_EN;\n }\n const i18n = new I18n({\n locale,\n fallbackLocale,\n messages,\n watcher,\n });\n let t = (key, values) => {\n if (typeof getApp !== 'function') {\n // app view\n /* eslint-disable no-func-assign */\n t = function (key, values) {\n return i18n.t(key, values);\n };\n }\n else {\n let isWatchedAppLocale = false;\n t = function (key, values) {\n const appVm = getApp().$vm;\n // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化\n // options: {\n // \ttype: Array,\n // \tdefault () {\n // \t\treturn [{\n // \t\t\ticon: 'shop',\n // \t\t\ttext: t(\"uni-goods-nav.options.shop\"),\n // \t\t}, {\n // \t\t\ticon: 'cart',\n // \t\t\ttext: t(\"uni-goods-nav.options.cart\")\n // \t\t}]\n // \t}\n // },\n if (appVm) {\n // 触发响应式\n appVm.$locale;\n if (!isWatchedAppLocale) {\n isWatchedAppLocale = true;\n watchAppLocale(appVm, i18n);\n }\n }\n return i18n.t(key, values);\n };\n }\n return t(key, values);\n };\n return {\n i18n,\n f(message, values, delimiters) {\n return i18n.f(message, values, delimiters);\n },\n t(key, values) {\n return t(key, values);\n },\n add(locale, message, override = true) {\n return i18n.add(locale, message, override);\n },\n watch(fn) {\n return i18n.watchLocale(fn);\n },\n getLocale() {\n return i18n.getLocale();\n },\n setLocale(newLocale) {\n return i18n.setLocale(newLocale);\n },\n };\n}\n\nconst isString = (val) => typeof val === 'string';\nlet formater;\nfunction hasI18nJson(jsonObj, delimiters) {\n if (!formater) {\n formater = new BaseFormatter();\n }\n return walkJsonObj(jsonObj, (jsonObj, key) => {\n const value = jsonObj[key];\n if (isString(value)) {\n if (isI18nStr(value, delimiters)) {\n return true;\n }\n }\n else {\n return hasI18nJson(value, delimiters);\n }\n });\n}\nfunction parseI18nJson(jsonObj, values, delimiters) {\n if (!formater) {\n formater = new BaseFormatter();\n }\n walkJsonObj(jsonObj, (jsonObj, key) => {\n const value = jsonObj[key];\n if (isString(value)) {\n if (isI18nStr(value, delimiters)) {\n jsonObj[key] = compileStr(value, values, delimiters);\n }\n }\n else {\n parseI18nJson(value, values, delimiters);\n }\n });\n return jsonObj;\n}\nfunction compileI18nJsonStr(jsonStr, { locale, locales, delimiters, }) {\n if (!isI18nStr(jsonStr, delimiters)) {\n return jsonStr;\n }\n if (!formater) {\n formater = new BaseFormatter();\n }\n const localeValues = [];\n Object.keys(locales).forEach((name) => {\n if (name !== locale) {\n localeValues.push({\n locale: name,\n values: locales[name],\n });\n }\n });\n localeValues.unshift({ locale, values: locales[locale] });\n try {\n return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);\n }\n catch (e) { }\n return jsonStr;\n}\nfunction isI18nStr(value, delimiters) {\n return value.indexOf(delimiters[0]) > -1;\n}\nfunction compileStr(value, values, delimiters) {\n return formater.interpolate(value, values, delimiters).join('');\n}\nfunction compileValue(jsonObj, key, localeValues, delimiters) {\n const value = jsonObj[key];\n if (isString(value)) {\n // 存在国际化\n if (isI18nStr(value, delimiters)) {\n jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);\n if (localeValues.length > 1) {\n // 格式化国际化语言\n const valueLocales = (jsonObj[key + 'Locales'] = {});\n localeValues.forEach((localValue) => {\n valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);\n });\n }\n }\n }\n else {\n compileJsonObj(value, localeValues, delimiters);\n }\n}\nfunction compileJsonObj(jsonObj, localeValues, delimiters) {\n walkJsonObj(jsonObj, (jsonObj, key) => {\n compileValue(jsonObj, key, localeValues, delimiters);\n });\n return jsonObj;\n}\nfunction walkJsonObj(jsonObj, walk) {\n if (isArray(jsonObj)) {\n for (let i = 0; i < jsonObj.length; i++) {\n if (walk(jsonObj, i)) {\n return true;\n }\n }\n }\n else if (isObject(jsonObj)) {\n for (const key in jsonObj) {\n if (walk(jsonObj, key)) {\n return true;\n }\n }\n }\n return false;\n}\n\nfunction resolveLocale(locales) {\n return (locale) => {\n if (!locale) {\n return locale;\n }\n locale = normalizeLocale(locale) || locale;\n return resolveLocaleChain(locale).find((locale) => locales.indexOf(locale) > -1);\n };\n}\nfunction resolveLocaleChain(locale) {\n const chain = [];\n const tokens = locale.split('-');\n while (tokens.length) {\n chain.push(tokens.join('-'));\n tokens.pop();\n }\n return chain;\n}\n\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 };\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/*!\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 '<Root>'\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)) + \">\") : \"<Anonymous>\") +\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 !value.__v_isMPComponent\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<VNode>. 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. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page\n if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){\n (slots['page'] || (slots['page'] = [])).push(child);\n }else{\n (slots.default || (slots.default = [])).push(child);\n }\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i, i, i); // fixed by xxxxxx\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length, i, i++)); // fixed by xxxxxx\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i, i); // fixed by xxxxxx\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n // fixed by xxxxxx app-plus scopedSlot\n nodes = scopedSlotFn(props, this, props._i) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a special value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n callHook(componentInstance, 'onServiceCreated');\n callHook(componentInstance, 'onServiceAttached');\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n if (process.env.NODE_ENV !== 'production' && isDef(data) && isDef(data.nativeOn)) {\n warn(\n (\"The .native modifier for v-on is only valid on components but it was used on <\" + tag + \">.\"),\n context\n );\n }\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack because all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n \n // fixed by xxxxxx update properties(mp runtime)\n vm._$updateProperties && vm._$updateProperties(vm);\n \n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n {\n if(vm.mpHost === 'mp-baidu' || vm.mpHost === 'mp-kuaishou' || vm.mpHost === 'mp-xhs'){//百度、快手、小红书 observer 在 setData callback 之后触发,直接忽略该 warn\n return\n }\n //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警\n if(\n key === 'value' && \n Array.isArray(vm.$options.behaviors) &&\n vm.$options.behaviors.indexOf('uni://form-field') !== -1\n ){\n return\n }\n if(vm._getFormData){\n return\n }\n var $parent = vm.$parent;\n while($parent){\n if($parent.__next_tick_pending){\n return \n }\n $parent = $parent.$parent;\n }\n }\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.SharedObject.target) {// fixed by xxxxxx\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n !vm._$fallback && initInjections(vm); // resolve injections before data/props \n initState(vm);\n !vm._$fallback && initProvide(vm); // resolve provide after data/props\n !vm._$fallback && callHook(vm, 'created'); \n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.11';\n\n/**\n * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js\n */\nvar ARRAYTYPE = '[object Array]';\nvar OBJECTTYPE = '[object Object]';\nvar NULLTYPE = '[object Null]';\nvar UNDEFINEDTYPE = '[object Undefined]';\n// const FUNCTIONTYPE = '[object Function]'\n\nfunction diff(current, pre) {\n var result = {};\n syncKeys(current, pre);\n _diff(current, pre, '', result);\n return result\n}\n\nfunction syncKeys(current, pre) {\n if (current === pre) { return }\n var rootCurrentType = type(current);\n var rootPreType = type(pre);\n if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {\n if(Object.keys(current).length >= Object.keys(pre).length){\n for (var key in pre) {\n var currentValue = current[key];\n if (currentValue === undefined) {\n current[key] = null;\n } else {\n syncKeys(currentValue, pre[key]);\n }\n }\n }\n } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {\n if (current.length >= pre.length) {\n pre.forEach(function (item, index) {\n syncKeys(current[index], item);\n });\n }\n }\n}\n\nfunction nullOrUndefined(currentType, preType) {\n if(\n (currentType === NULLTYPE || currentType === UNDEFINEDTYPE) && \n (preType === NULLTYPE || preType === UNDEFINEDTYPE)\n ) {\n return false\n }\n return true\n}\n\nfunction _diff(current, pre, path, result) {\n if (current === pre) { return }\n var rootCurrentType = type(current);\n var rootPreType = type(pre);\n if (rootCurrentType == OBJECTTYPE) {\n if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {\n setResult(result, path, current);\n } else {\n var loop = function ( key ) {\n var currentValue = current[key];\n var preValue = pre[key];\n var currentType = type(currentValue);\n var preType = type(preValue);\n if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {\n if (currentValue !== pre[key] && nullOrUndefined(currentType, preType)) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n }\n } else if (currentType == ARRAYTYPE) {\n if (preType != ARRAYTYPE) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n } else {\n if (currentValue.length < preValue.length) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n } else {\n currentValue.forEach(function (item, index) {\n _diff(item, preValue[index], (path == '' ? '' : path + \".\") + key + '[' + index + ']', result);\n });\n }\n }\n } else if (currentType == OBJECTTYPE) {\n if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n } else {\n for (var subKey in currentValue) {\n _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + \".\") + key + '.' + subKey, result);\n }\n }\n }\n };\n\n for (var key in current) loop( key );\n }\n } else if (rootCurrentType == ARRAYTYPE) {\n if (rootPreType != ARRAYTYPE) {\n setResult(result, path, current);\n } else {\n if (current.length < pre.length) {\n setResult(result, path, current);\n } else {\n current.forEach(function (item, index) {\n _diff(item, pre[index], path + '[' + index + ']', result);\n });\n }\n }\n } else {\n setResult(result, path, current);\n }\n}\n\nfunction setResult(result, k, v) {\n // if (type(v) != FUNCTIONTYPE) {\n result[k] = v;\n // }\n}\n\nfunction type(obj) {\n return Object.prototype.toString.call(obj)\n}\n\n/* */\n\nfunction flushCallbacks$1(vm) {\n if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {\n if (process.env.VUE_APP_DEBUG) {\n var mpInstance = vm.$scope;\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +\n ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');\n }\n var copies = vm.__next_tick_callbacks.slice(0);\n vm.__next_tick_callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n }\n}\n\nfunction hasRenderWatcher(vm) {\n return queue.find(function (watcher) { return vm._watcher === watcher; })\n}\n\nfunction nextTick$1(vm, cb) {\n //1.nextTick 之前 已 setData 且 setData 还未回调完成\n //2.nextTick 之前存在 render watcher\n if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {\n if(process.env.VUE_APP_DEBUG){\n var mpInstance = vm.$scope;\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +\n ']:nextVueTick');\n }\n return nextTick(cb, vm)\n }else{\n if(process.env.VUE_APP_DEBUG){\n var mpInstance$1 = vm.$scope;\n console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +\n ']:nextMPTick');\n }\n }\n var _resolve;\n if (!vm.__next_tick_callbacks) {\n vm.__next_tick_callbacks = [];\n }\n vm.__next_tick_callbacks.push(function () {\n if (cb) {\n try {\n cb.call(vm);\n } catch (e) {\n handleError(e, vm, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(vm);\n }\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\nfunction clearInstance(key, value) {\n // 简易去除 Vue 和小程序组件实例\n if (value) {\n if (value._isVue || value.__v_isMPComponent) {\n return {}\n }\n }\n return value\n}\n\nfunction cloneWithData(vm) {\n // 确保当前 vm 所有数据被同步\n var ret = Object.create(null);\n var dataKeys = [].concat(\n Object.keys(vm._data || {}),\n Object.keys(vm._computedWatchers || {}));\n\n dataKeys.reduce(function(ret, key) {\n ret[key] = vm[key];\n return ret\n }, ret);\n\n // vue-composition-api\n var compositionApiState = vm.__composition_api_state__ || vm.__secret_vfa_state__;\n var rawBindings = compositionApiState && compositionApiState.rawBindings;\n if (rawBindings) {\n Object.keys(rawBindings).forEach(function (key) {\n ret[key] = vm[key];\n });\n }\n\n //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据\n Object.assign(ret, vm.$mp.data || {});\n if (\n Array.isArray(vm.$options.behaviors) &&\n vm.$options.behaviors.indexOf('uni://form-field') !== -1\n ) { //form-field\n ret['name'] = vm.name;\n ret['value'] = vm.value;\n }\n\n return JSON.parse(JSON.stringify(ret, clearInstance))\n}\n\nvar patch = function(oldVnode, vnode) {\n var this$1 = this;\n\n if (vnode === null) { //destroy\n return\n }\n if (this.mpType === 'page' || this.mpType === 'component') {\n var mpInstance = this.$scope;\n var data = Object.create(null);\n try {\n data = cloneWithData(this);\n } catch (err) {\n console.error(err);\n }\n data.__webviewId__ = mpInstance.data.__webviewId__;\n var mpData = Object.create(null);\n Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据\n mpData[key] = mpInstance.data[key];\n });\n var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);\n if (Object.keys(diffData).length) {\n if (process.env.VUE_APP_DEBUG) {\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +\n ']差量更新',\n JSON.stringify(diffData));\n }\n this.__next_tick_pending = true;\n mpInstance.setData(diffData, function () {\n this$1.__next_tick_pending = false;\n flushCallbacks$1(this$1);\n });\n } else {\n flushCallbacks$1(this);\n }\n }\n};\n\n/* */\n\nfunction createEmptyRender() {\n\n}\n\nfunction mountComponent$1(\n vm,\n el,\n hydrating\n) {\n if (!vm.mpType) {//main.js 中的 new Vue\n return vm\n }\n if (vm.mpType === 'app') {\n vm.$options.render = createEmptyRender;\n }\n if (!vm.$options.render) {\n vm.$options.render = createEmptyRender;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n \n !vm._$fallback && callHook(vm, 'beforeMount');\n\n var updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before() {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n return vm\n}\n\n/* */\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/* */\n\nvar MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];\n\nfunction getTarget(obj, path) {\n var parts = path.split('.');\n var key = parts[0];\n if (key.indexOf('__$n') === 0) { //number index\n key = parseInt(key.replace('__$n', ''));\n }\n if (parts.length === 1) {\n return obj[key]\n }\n return getTarget(obj[key], parts.slice(1).join('.'))\n}\n\nfunction internalMixin(Vue) {\n\n Vue.config.errorHandler = function(err, vm, info) {\n Vue.util.warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n console.error(err);\n /* eslint-disable no-undef */\n var app = typeof getApp === 'function' && getApp();\n if (app && app.onError) {\n app.onError(err);\n }\n };\n\n var oldEmit = Vue.prototype.$emit;\n\n Vue.prototype.$emit = function(event) {\n if (this.$scope && event) {\n var triggerEvent = this.$scope['_triggerEvent'] || this.$scope['triggerEvent'];\n if (triggerEvent) {\n try {\n triggerEvent.call(this.$scope, event, {\n __args__: toArray(arguments, 1)\n });\n } catch (error) {\n\n }\n }\n }\n return oldEmit.apply(this, arguments)\n };\n\n Vue.prototype.$nextTick = function(fn) {\n return nextTick$1(this, fn)\n };\n\n MP_METHODS.forEach(function (method) {\n Vue.prototype[method] = function(args) {\n if (this.$scope && this.$scope[method]) {\n return this.$scope[method](args)\n }\n // mp-alipay\n if (typeof my === 'undefined') {\n return\n }\n if (method === 'createSelectorQuery') {\n /* eslint-disable no-undef */\n return my.createSelectorQuery(args)\n } else if (method === 'createIntersectionObserver') {\n /* eslint-disable no-undef */\n return my.createIntersectionObserver(args)\n }\n // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent\n };\n });\n\n Vue.prototype.__init_provide = initProvide;\n\n Vue.prototype.__init_injections = initInjections;\n\n Vue.prototype.__call_hook = function(hook, args) {\n var vm = this;\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n var ret;\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook, args);\n }\n popTarget();\n return ret\n };\n\n Vue.prototype.__set_model = function(target, key, value, modifiers) {\n if (Array.isArray(modifiers)) {\n if (modifiers.indexOf('trim') !== -1) {\n value = value.trim();\n }\n if (modifiers.indexOf('number') !== -1) {\n value = this._n(value);\n }\n }\n if (!target) {\n target = this;\n }\n // 解决动态属性添加\n Vue.set(target, key, value);\n };\n\n Vue.prototype.__set_sync = function(target, key, value) {\n if (!target) {\n target = this;\n }\n // 解决动态属性添加\n Vue.set(target, key, value);\n };\n\n Vue.prototype.__get_orig = function(item) {\n if (isPlainObject(item)) {\n return item['$orig'] || item\n }\n return item\n };\n\n Vue.prototype.__get_value = function(dataPath, target) {\n return getTarget(target || this, dataPath)\n };\n\n\n Vue.prototype.__get_class = function(dynamicClass, staticClass) {\n return renderClass(staticClass, dynamicClass)\n };\n\n Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {\n if (!dynamicStyle && !staticStyle) {\n return ''\n }\n var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);\n var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;\n return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + \":\" + (styleObj[name])); }).join(';')\n };\n\n Vue.prototype.__map = function(val, iteratee) {\n //TODO 暂不考虑 string\n var ret, i, l, keys, key;\n if (Array.isArray(val)) {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = iteratee(val[i], i);\n }\n return ret\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = Object.create(null);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[key] = iteratee(val[key], key, i);\n }\n return ret\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0, l = val; i < l; i++) {\n // 第一个参数暂时仍和小程序一致\n ret[i] = iteratee(i, i);\n }\n return ret\n }\n return []\n };\n\n}\n\n/* */\n\nvar LIFECYCLE_HOOKS$1 = [\n //App\n 'onLaunch',\n 'onShow',\n 'onHide',\n 'onUniNViewMessage',\n 'onPageNotFound',\n 'onThemeChange',\n 'onError',\n 'onUnhandledRejection',\n //Page\n 'onInit',\n 'onLoad',\n // 'onShow',\n 'onReady',\n // 'onHide',\n 'onUnload',\n 'onPullDownRefresh',\n 'onReachBottom',\n 'onTabItemTap',\n 'onAddToFavorites',\n 'onShareTimeline',\n 'onShareAppMessage',\n 'onResize',\n 'onPageScroll',\n 'onNavigationBarButtonTap',\n 'onBackPress',\n 'onNavigationBarSearchInputChanged',\n 'onNavigationBarSearchInputConfirmed',\n 'onNavigationBarSearchInputClicked',\n //Component\n // 'onReady', // 兼容旧版本,应该移除该事件\n 'onPageShow',\n 'onPageHide',\n 'onPageResize',\n 'onUploadDouyinVideo'\n];\nfunction lifecycleMixin$1(Vue) {\n\n //fixed vue-class-component\n var oldExtend = Vue.extend;\n Vue.extend = function(extendOptions) {\n extendOptions = extendOptions || {};\n\n var methods = extendOptions.methods;\n if (methods) {\n Object.keys(methods).forEach(function (methodName) {\n if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {\n extendOptions[methodName] = methods[methodName];\n delete methods[methodName];\n }\n });\n }\n\n return oldExtend.call(this, extendOptions)\n };\n\n var strategies = Vue.config.optionMergeStrategies;\n var mergeHook = strategies.created;\n LIFECYCLE_HOOKS$1.forEach(function (hook) {\n strategies[hook] = mergeHook;\n });\n\n Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;\n}\n\n/* */\n\n// install platform patch function\nVue.prototype.__patch__ = patch;\n\n// public mount method\nVue.prototype.$mount = function(\n el ,\n hydrating \n) {\n return mountComponent$1(this, el, hydrating)\n};\n\nlifecycleMixin$1(Vue);\ninternalMixin(Vue);\n\n/* */\n\nexport default Vue;\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","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode, /* vue-cli only */\n components, // fixed by xxxxxx auto components\n renderjs // fixed by xxxxxx renderjs\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // fixed by xxxxxx auto components\n if (components) {\n if (!options.components) {\n options.components = {}\n }\n var hasOwn = Object.prototype.hasOwnProperty\n for (var name in components) {\n if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {\n options.components[name] = components[name]\n }\n }\n }\n // fixed by xxxxxx renderjs\n if (renderjs) {\n (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {\n this[renderjs.__module] = this\n });\n (options.mixins || (options.mixins = [])).push(renderjs)\n }\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import login from '@/apis/login/index.js'\nimport AllApi from '@/apis/all/index.js'\nexport default {\n\t...login,\n\t...AllApi,\n}\n","import { data } from 'uview-ui/libs/mixin/mixin'\r\nimport request from '../../service/request.js'\r\nimport utils from '../../service/utils.js'\r\nexport default { \r\n\t//登录\r\n\toauthLogin(data) {\r\n\t\treturn request.postFormData('/api/oauth/Login',data)\r\n\t},\r\n\t//获取当前用户信息\r\n\tgetCurrentUserInfo(){\r\n\t\treturn request.get('/api/permission/Users/current/BaseInfo')\r\n\t},\r\n\t\r\n\t//注册\r\n\tregister(data) {\r\n\t\treturn request.post('/api/attract/tbusers',data)\r\n\t},\r\n\t//登录\r\n\tLogin(data) {\r\n\t\treturn request.post('/api/attract/tbusers/loginadmin',data)\r\n\t},\r\n}","module.exports = {\n // 定义每个组件都可能需要用到的外部样式以及类名\n props: {\n // 每个组件都有的父组件传递的样式,可以为字符串或者对象形式\n customStyle: {\n type: [Object, String],\n default: () => ({})\n },\n customClass: {\n type: String,\n default: ''\n },\n // 跳转的页面路径\n url: {\n type: String,\n default: ''\n },\n // 页面跳转的类型\n linkType: {\n type: String,\n default: 'navigateTo'\n }\n },\n data() {\n return {}\n },\n onLoad() {\n // getRect挂载到$u上,因为这方法需要使用in(this),所以无法把它独立成一个单独的文件导出\n this.$u.getRect = this.$uGetRect\n },\n created() {\n // 组件当中,只有created声明周期,为了能在组件使用,故也在created中将方法挂载到$u\n this.$u.getRect = this.$uGetRect\n },\n computed: {\n // 在2.x版本中,将会把$u挂载到uni对象下,导致在模板中无法使用uni.$u.xxx形式\n // 所以这里通过computed计算属性将其附加到this.$u上,就可以在模板或者js中使用uni.$u.xxx\n // 只在nvue环境通过此方式引入完整的$u,其他平台会出现性能问题,非nvue则按需引入(主要原因是props过大)\n $u() {\n\n // 在非nvue端,移除props,http,mixin等对象,避免在小程序setData时数据过大影响性能\n return uni.$u.deepMerge(uni.$u, {\n props: undefined,\n http: undefined,\n mixin: undefined\n })\n\n\n\n\n },\n /**\n * 生成bem规则类名\n * 由于微信小程序,H5,nvue之间绑定class的差异,无法通过:class=\"[bem()]\"的形式进行同用\n * 故采用如下折中做法,最后返回的是数组(一般平台)或字符串(支付宝和字节跳动平台),类似['a', 'b', 'c']或'a b c'的形式\n * @param {String} name 组件名称\n * @param {Array} fixed 一直会存在的类名\n * @param {Array} change 会根据变量值为true或者false而出现或者隐藏的类名\n * @returns {Array|string}\n */\n bem() {\n return function (name, fixed, change) {\n // 类名前缀\n const prefix = `u-${name}--`\n const classes = {}\n if (fixed) {\n fixed.map((item) => {\n // 这里的类名,会一直存在\n classes[prefix + this[item]] = true\n })\n }\n if (change) {\n change.map((item) => {\n // 这里的类名,会根据this[item]的值为true或者false,而进行添加或者移除某一个类\n this[item] ? (classes[prefix + item] = this[item]) : (delete classes[prefix + item])\n })\n }\n return Object.keys(classes)\n // 支付宝,头条小程序无法动态绑定一个数组类名,否则解析出来的结果会带有\",\",而导致失效\n\n\n\n }\n }\n },\n methods: {\n // 跳转某一个页面\n openPage(urlKey = 'url') {\n const url = this[urlKey]\n if (url) {\n // 执行类似uni.navigateTo的方法\n uni[this.linkType]({\n url\n })\n }\n },\n // 查询节点信息\n // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸,为支付宝的bug(2020-07-21)\n // 解决办法为在组件根部再套一个没有任何作用的view元素\n $uGetRect(selector, all) {\n return new Promise((resolve) => {\n uni.createSelectorQuery()\n .in(this)[all ? 'selectAll' : 'select'](selector)\n .boundingClientRect((rect) => {\n if (all && Array.isArray(rect) && rect.length) {\n resolve(rect)\n }\n if (!all && rect) {\n resolve(rect)\n }\n })\n .exec()\n })\n },\n getParentData(parentName = '') {\n // 避免在created中去定义parent变量\n if (!this.parent) this.parent = {}\n // 这里的本质原理是,通过获取父组件实例(也即类似u-radio的父组件u-radio-group的this)\n // 将父组件this中对应的参数,赋值给本组件(u-radio的this)的parentData对象中对应的属性\n // 之所以需要这么做,是因为所有端中,头条小程序不支持通过this.parent.xxx去监听父组件参数的变化\n // 此处并不会自动更新子组件的数据,而是依赖父组件u-radio-group去监听data的变化,手动调用更新子组件的方法去重新获取\n this.parent = uni.$u.$parent.call(this, parentName)\n if (this.parent.children) {\n // 如果父组件的children不存在本组件的实例,才将本实例添加到父组件的children中\n this.parent.children.indexOf(this) === -1 && this.parent.children.push(this)\n }\n if (this.parent && this.parentData) {\n // 历遍parentData中的属性,将parent中的同名属性赋值给parentData\n Object.keys(this.parentData).map((key) => {\n this.parentData[key] = this.parent[key]\n })\n }\n },\n // 阻止事件冒泡\n preventEvent(e) {\n e && typeof (e.stopPropagation) === 'function' && e.stopPropagation()\n },\n // 空操作\n noop(e) {\n this.preventEvent(e)\n }\n },\n onReachBottom() {\n uni.$emit('uOnReachBottom')\n },\n beforeDestroy() {\n // 判断当前页面是否存在parent和chldren,一般在checkbox和checkbox-group父子联动的场景会有此情况\n // 组件销毁时,移除子组件在父组件children数组中的实例,释放资源,避免数据混乱\n if (this.parent && uni.$u.test.array(this.parent.children)) {\n // 组件销毁时,移除父组件中的children数组中对应的实例\n const childrenList = this.parent.children\n childrenList.map((child, index) => {\n // 如果相等,则移除\n if (child === this) {\n childrenList.splice(index, 1)\n }\n })\n }\n }\n}\n","import service from './service.js'\r\nimport BASE_URL from '../common/config.js'\r\nconst get=function(url,data){\r\n\treturn request(url,'GET',data);\r\n}\r\nconst post=function(url,data){\r\n\treturn request(url,'POST',data);\r\n}\r\nconst put=function(url,data){\r\n\treturn request(url,'put',data);\r\n}\r\nconst put1=function(url,data){\r\n\treturn request(url,'put',data,{\r\n\t\t'Content-Type':'application/json-patch+json'\r\n\t});\r\n}\r\nconst postFormData=function(url,data){\r\n\treturn request(url,'POST',data,{\r\n\t\t'Content-Type':'application/x-www-form-urlencoded'\r\n\t});\r\n}\r\nconst del=function(url,data){\r\n\treturn request(url,'DELETE',data);\r\n}\r\n\r\nconst request=function(url,method,data,headers){\r\n\tlet header= {};\r\n\tlet urlsNoAuth=['/authentication/form'];\r\n\tif(!urlsNoAuth.includes(url)){\r\n\t\theader['Authorization']=`${service.getToken()}`\r\n\t}\r\n\tif(!url.includes('https://')){\r\n\t\turl=BASE_URL+url;\r\n\t}\r\n\tif(headers){\r\n\t\theader = Object.assign({},header,headers)\r\n\t}\r\n\treturn new Promise((resolve,reject)=>{\r\n\t\tconsole.log(\"111111111111111111111\");\r\n\t\tuni.request({\r\n\t\t url,\r\n\t\t data,\r\n\t\t\tmethod,\r\n\t\t header,\r\n\t\t\ttimeout:50000,\r\n\t\t success: (res) => {\r\n\t\t\t\tif(res.statusCode === 200){\r\n\t\t\t\t\tif(res.data.code == 600 || res.data.msg == '登录过期,请重新登录'){\r\n\t\t\t\t\t\tconsole.log('登录过期,跳转到登录界面');\r\n\t\t\t\t\t\tuni.redirectTo({\r\n\t\t\t\t\t\t\turl:'/pages/Login/index'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(res.data.code < 0 && res.data.message){\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ticon:'none',\r\n\t\t\t\t\t\t title: res.data.data.message,\r\n\t\t\t\t\t\t duration: 2000\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treject();\r\n\t\t\t\t\t}else if(!res.data.flag && res.data.code === 500){\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ticon:'none',\r\n\t\t\t\t\t\t title: res.data.msg || '操作失败,请联系管理员',\r\n\t\t\t\t\t\t duration: 2000\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treject();\r\n\t\t\t\t\t}else{\r\n\t\t\t\t\t\tresolve(res.data);\r\n\t\t\t\t\t}\r\n\t\t\t\t}else if(res.statusCode === 403 || res.statusCode === 401){\r\n\t\t\t\t\tservice.addToken('');\r\n\t\t\t\t\tuni.redirectTo({\r\n\t\t\t\t\t\turl:'/pages/login/index'\r\n\t\t\t\t\t});\r\n\t\t\t\t\treject();\r\n\t\t\t\t}else{\r\n\t\t\t\t\treject();\r\n\t\t\t\t\t// uni.showToast({\r\n\t\t\t\t\t// \ticon:'none',\r\n\t\t\t\t\t// title: res.data.msg || '系统繁忙!',\r\n\t\t\t\t\t// duration: 2000\r\n\t\t\t\t\t// });\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t },\r\n\t\t\tfail: (error) => {\r\n\t\t\t\tuni.hideLoading();\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n}\r\n \r\n export default {\r\n \tget,\r\n \tpost,\r\n\tdel,\r\n\trequest,\r\n\tpostFormData,\r\n\tput,\r\n\tput1\r\n }","import Vue from 'vue'\r\n \r\n // 管理账号信息\r\n \r\n const USERS_KEY = 'USERS_KEY';\r\n\r\n const TOKEN_KEY = 'UserToken_KEY';\r\n const ORDER_COUNT_KEY = 'ORDER_COUNT_KEY';\r\n const SYSTEM_INFO_KEY = 'SYSTEM_INFO_KEY';\r\n\r\n const getToken = function() {\r\n \tlet ret = uni.getStorageSync(TOKEN_KEY);\r\n \treturn ret || '';\r\n }\r\n const addToken = function(val) {\r\n \tuni.setStorageSync(TOKEN_KEY, val);\r\n }\r\n const saveUser = function(user){\r\n\t uni.setStorageSync(USERS_KEY, user);\r\n }\r\n const getUser = function() {\r\n \tlet ret = uni.getStorageSync(USERS_KEY) || {};\r\n\tif(ret && ret.id){\r\n\t\treturn ret;\r\n\t}else{\r\n\t\treturn ret;\r\n\t}\r\n }\r\n const getOrderCount = function() {\r\n \tlet ret = uni.getStorageSync(ORDER_COUNT_KEY);\r\n \treturn ret || '';\r\n }\r\n const addOrderCount = function(val) {\r\n \tuni.setStorageSync(ORDER_COUNT_KEY, val);\r\n }\r\n const updateOrderCount = function(val){\r\n\t if(val){\r\n\t\t addOrderCount(val);\r\n\t }else{\r\n\t\t if(getToken()){\r\n\t\t }\r\n\t }\r\n }\r\n const setSystemInfo = function(info){\r\n\t uni.setStorageSync(SYSTEM_INFO_KEY, info);\r\n }\r\n const getSystemInfo = function(){\r\n\t return new Promise((resolve,reject)=>{\r\n\t\t let info=uni.getStorageSync(SYSTEM_INFO_KEY);\r\n\t\t if(info && info.statusBarHeight){\r\n\t\t \tresolve(info);\r\n\t\t }else{\r\n\t\t\tuni.getSystemInfo({\r\n\t\t\t success: function (res) {\r\n\t\t\t\t\tresolve(res);\r\n\t\t\t\t\tsetSystemInfo(res);\r\n\t\t\t },\r\n\t\t\t\tfail:function(){\r\n\t\t\t\t\treject();\r\n\t\t\t\t}\r\n\t\t\t}); \r\n\t\t }\r\n\t });\r\n }\r\n const getPayDomain = ()=>{\r\n\t return new Promise((resolve,reject)=>{\r\n\t\t Vue.prototype.API.PayDomain().then(res=>{\r\n\t\t\t if(res.code>0 && res.data){\r\n\t\t\t\t resolve(res.data);\r\n\t\t\t }else{\r\n\r\n\t\t\t\t resolve('http://manage.casichtzh.com/');\r\n\t\t\t }\r\n\t\t })\r\n\t });\r\n }\r\n export default {\r\n \tgetToken,\r\n \taddToken,\r\n\tsaveUser,\r\n\tgetUser,\r\n\tgetOrderCount,\r\n\taddOrderCount,\r\n\tupdateOrderCount,\r\n\tgetSystemInfo,\r\n\tsetSystemInfo,\r\n\tgetPayDomain,\r\n }\r\n","// let BASE_URL ='http://119.3.1.28:8011'\r\n// let BASE_URL = \"http://119.3.1.28:8011\"\r\nlet BASE_URL = \"http://8.130.163.46:8065\"\r\n// let BASE_URL = \"http://localhost:2021\"\r\nexport default BASE_URL","// import { pathToBase64, base64ToPath } from '../js_sdk/image-tools/index.js'\r\nconst utils={\r\n\tObjectToQureyParams(obj){\r\n\t\tlet arr=[]\r\n\t\tfor(let key in obj){\r\n\t\t\tarr.push(`${key}=${obj[key]}`);\r\n\t\t}\r\n\t\treturn arr.join('&');\r\n\t},\r\n\tformatTime(date,formatStr){\r\n\t\tformatStr=formatStr || 'yyyy-MM-dd HH:mm:ss';\r\n\t\tdate=new Date(date)||new Date();\r\n\t\tformatStr = formatStr.replace('yyyy',date.getFullYear());\r\n\t\tformatStr = formatStr.replace('MM',(date.getMonth()+1).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('dd',(date.getDate()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('HH',(date.getHours()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('mm',(date.getMinutes()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('ss',(date.getSeconds()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('M',(date.getMonth()+1));\r\n\t\tformatStr = formatStr.replace('d',date.getDate());\r\n\t\tformatStr = formatStr.replace('H',date.getHours());\r\n\t\tformatStr = formatStr.replace('m',date.getMinutes());\r\n\t\tformatStr = formatStr.replace('s',date.getSeconds());\r\n\t\treturn formatStr;\r\n\t},\r\n\tformatTime1(date,formatStr){\r\n\t\tformatStr=formatStr || 'yyyy-MM-dd';\r\n\t\tdate=new Date(date)||new Date();\r\n\t\tformatStr = formatStr.replace('yyyy',date.getFullYear());\r\n\t\tformatStr = formatStr.replace('MM',(date.getMonth()+1).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('dd',(date.getDate()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('HH',(date.getHours()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('mm',(date.getMinutes()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('ss',(date.getSeconds()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('M',(date.getMonth()+1));\r\n\t\tformatStr = formatStr.replace('d',date.getDate());\r\n\t\treturn formatStr;\r\n\t},\r\n\tparseTime(str){\r\n\t\treturn new Date(str);\r\n\t},\r\n\t// imagePathToBase64(path){\r\n\t// \treturn new Promise((resolve,reject)=>{\r\n\t// \t\tpathToBase64(path)\r\n\t// \t\t .then(base64 => {\r\n\t// \t\t resolve(base64)\r\n\t// \t\t })\r\n\t// \t\t .catch(error => {\r\n\t// \t\t reject(error)\r\n\t// \t\t })\r\n\t// \t});\r\n\t// },\r\n\tgetUrlQueryParam(url,key){\r\n\t\ttry{\r\n\t\t\tlet query=url.split('?')[1];\r\n\t\t\tquery = query.split('&');\r\n\t\t\treturn query.map(t=>{\r\n\t\t\t\treturn {\r\n\t\t\t\t\tkey:t.split('=')[0],\r\n\t\t\t\t\tval:t.split('=')[1]\r\n\t\t\t\t}\r\n\t\t\t}).find(t=>t.key == key).val;\r\n\t\t}catch(e){\r\n\t\t\treturn '';\r\n\t\t}\r\n\t\t\r\n\t}\r\n\t\r\n};\r\nexport default utils;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import request from '../../service/request.js'\nimport utils from '@/service/utils.js'\nexport default {\n\t//获取政策咨询\n\tGetTbpolicy(data) {\n\t\treturn request.get(`/api/attract/tbpolicy?currentPage=${data.currentPage}&pageSize=${data.pageSize}`, )\n\t},\n\t//通过ID获取政策咨询详细信息\n\tGetTbpolicyById(id) {\n\t\treturn request.get(`/api/attract/tbpolicy/GetInfoOne?id=${id}`, )\n\t},\n\n\t//培训考证\n\tGettbtraininfo(data) {\n\t\treturn request.get(\n\t\t\t`/api/attract/tbtraininfo?type=${data.name}¤tPage=${data.currentPage}&pageSize=${data.pageSize}`,\n\t\t)\n\t},\n\t//通过ID培训考证详细信息\n\tGettbtraininfoById(id) {\n\t\treturn request.get(`/api/attract/tbtraininfo/${id}`)\n\t},\n\t//培训报名\n\tApplyT(id) {\n\t\treturn request.post(`/api/attract/tbapplyt/ApplyT?id=${id}`)\n\t},\n\t//设置招工信息\n\tCreateRres(data) {\n\t\tconsole.log(data);\n\t\treturn request.post(`/api/attract/fcompany/CreateRres`, data)\n\t},\n\t//获取当前登录账号的招工信息\n\tGetRresOne() {\n\t\treturn request.get(`/api/attract/fcompany/GetOne`)\n\t},\n\t//获取招聘列表\n\tGettbrecruit(data) {\n\t\treturn request.get(\n\t\t\t`/api/attract/tbrecruit?keyword=${data.keyword}¤tPage=${data.currentPage}&pageSize=${data.pageSize}`,\n\t\t)\n\t},\n\t//获取招聘列表\n\tGettbrecruitById(id) {\n\t\treturn request.get(`/api/attract/tbrecruit/${id}`, )\n\t},\n\t//提交招聘\n\tPostApplyL(id) {\n\t\treturn request.post(`/api/attract/tbapplyi/ApplyL?id=${id}`, )\n\t},\n\n\t//获取商品分类\n\tGettbgoodstype(data) {\n\t\treturn request.get(`/api/attract/tbgoodstype?currentPage=${data.currentPage}&pageSize=${data.pageSize}`, )\n\t},\n\n\t//获取商品分类下面的产品\n\tGettGetListCom(data) {\n\t\treturn request.get(\n\t\t\t`/api/attract/tbgoods/GetListCom?type=${data.type}¤tPage=${data.currentPage}&pageSize=${data.pageSize}`,\n\t\t)\n\t},\n\t//通过ID获取产品详细\n\tGettbgoodscompanyById(id) {\n\t\treturn request.get(`/api/attract/tbgoods/GetInfoNum?id=${id}`, )\n\t},\n\n\t//设置简历信息\n\tCreateRres(data) {\n\t\tconsole.log(data);\n\t\treturn request.post(`/api/attract/tbresume/CreateRres`, data)\n\t},\n\t//获取当前登录账号的简历信息\n\tGettbresumeOne() {\n\t\treturn request.get(`/api/attract/tbresume/GetOne`)\n\t},\n\n\t//获取人力资源外包信息\n\tGetTrue() {\n\t\treturn request.get(`/api/attract/tbepiboly/GetTrue`)\n\t},\n\t//获取首页轮播图\n\tGettbbanner() {\n\t\treturn request.get(`/api/attract/tbbanner?currentPage=1&pageSize=10`)\n\t},\n\t//获取政策轮播图\n\tGettbzcbanner() {\n\t\treturn request.get(`/api/attract/tbzcbanner?currentPage=1&pageSize=10`)\n\t},\n\tGetDetail(id){\n\t\treturn request.get(`/api/attract/TbText/${id}`)\n\t},\n\t//获取客服电话\n\tGetPhone(){\n\t\treturn request.get(`/api/attract/tbrelation/GetPhone`)\n\t},\n\t//添加意见反馈\n\tCreatetbidea(data) {\n\t\treturn request.post(`/api/attract/tbidea`, data)\n\t},\n}\n","// mescroll-body 和 mescroll-uni 通用\r\n\r\n// import MescrollUni from \"./mescroll-uni.vue\";\r\n// import MescrollBody from \"./mescroll-body.vue\";\r\n\r\nconst MescrollMixin = {\r\n\t// components: { // 非H5端无法通过mixin注册组件, 只能在main.js中注册全局组件或具体界面中注册\r\n\t// \tMescrollUni,\r\n\t// \tMescrollBody\r\n\t// },\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmescroll: null //mescroll实例对象\r\n\t\t}\r\n\t},\r\n\t// 注册系统自带的下拉刷新 (配置down.native为true时生效, 还需在pages配置enablePullDownRefresh:true;详请参考mescroll-native的案例)\r\n\tonPullDownRefresh(){\r\n\t\tthis.mescroll && this.mescroll.onPullDownRefresh();\r\n\t},\r\n\t// 注册列表滚动事件,用于判定在顶部可下拉刷新,在指定位置可显示隐藏回到顶部按钮 (此方法为页面生命周期,无法在子组件中触发, 仅在mescroll-body生效)\r\n\tonPageScroll(e) {\r\n\t\tthis.mescroll && this.mescroll.onPageScroll(e);\r\n\t},\r\n\t// 注册滚动到底部的事件,用于上拉加载 (此方法为页面生命周期,无法在子组件中触发, 仅在mescroll-body生效)\r\n\tonReachBottom() {\r\n\t\tthis.mescroll && this.mescroll.onReachBottom();\r\n\t},\r\n\tmethods: {\r\n\t\t// mescroll组件初始化的回调,可获取到mescroll对象\r\n\t\tmescrollInit(mescroll) {\r\n\t\t\tthis.mescroll = mescroll;\r\n\t\t\tthis.mescrollInitByRef(); // 兼容字节跳动小程序\r\n\t\t},\r\n\t\t// 以ref的方式初始化mescroll对象 (兼容字节跳动小程序)\r\n\t\tmescrollInitByRef() {\r\n\t\t\tif(!this.mescroll || !this.mescroll.resetUpScroll){\r\n\t\t\t\tlet mescrollRef = this.$refs.mescrollRef;\r\n\t\t\t\tif(mescrollRef) this.mescroll = mescrollRef.mescroll\r\n\t\t\t}\r\n\t\t},\r\n\t\t// 下拉刷新的回调 (mixin默认resetUpScroll)\r\n\t\tdownCallback() {\r\n\t\t\tif(this.mescroll){\r\n\t\t\t\tif(this.mescroll.optUp.use){\r\n\t\t\t\t\tthis.mescroll.resetUpScroll()\r\n\t\t\t\t}else{\r\n\t\t\t\t\tsetTimeout(()=>{\r\n\t\t\t\t\t\tthis.mescroll.endSuccess();\r\n\t\t\t\t\t}, 500)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\t// 上拉加载的回调\r\n\t\tupCallback() {\r\n\t\t\t// mixin默认延时500自动结束加载\r\n\t\t\tsetTimeout(()=>{\r\n\t\t\t\tthis.mescroll.endErr();\r\n\t\t\t}, 500)\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\t\tthis.mescrollInitByRef(); // 兼容字节跳动小程序, 避免未设置@init或@init此时未能取到ref的情况\r\n\t}\r\n\t\r\n}\r\n\r\nexport default MescrollMixin;\r\n","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {\n ;\n }\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"sourceRoot":""} | ||
| 2 | \ No newline at end of file | 1 | \ No newline at end of file |
| 2 | +{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js?bc2e","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js?c240","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js?9523","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js?a395","webpack:///./node_modules/@babel/runtime/helpers/typeof.js?7037","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js?e50d","webpack:///./node_modules/@babel/runtime/helpers/construct.js?b17c","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js?4a4b","webpack:///./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js?6f8f","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js?448a","uni-app:///components/mescroll-uni/mescroll-uni.js","uni-app:///components/mescroll-uni/mescroll-uni-option.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js?2236","uni-app:///components/mescroll-uni/wxs/mixins.js","webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js?543d","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js?11b0","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js?0676","webpack:///./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js?37dc","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js?970b","webpack:///./node_modules/@babel/runtime/helpers/createClass.js?5bc3","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js?66fd",null,"webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js?f0c5","uni-app:///apis/index.js","uni-app:///apis/login/index.js","uni-app:///node_modules/uview-ui/libs/mixin/mixin.js","uni-app:///service/request.js","uni-app:///service/service.js","uni-app:///common/config.js","uni-app:///service/utils.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js?4ea4","uni-app:///apis/all/index.js","uni-app:///components/mescroll-uni/mescroll-mixins.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js?278c","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js?c135","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js?9b42","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js?6613","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js?5a43"],"names":["objectKeys","target","globalThis","key","join","oldWx","isWxKey","indexOf","initWx","newWx","_nonIterableRest","TypeError","module","exports","__esModule","toPropertyKey","require","_defineProperty","obj","value","Object","defineProperty","enumerable","configurable","writable","_typeof","toPrimitive","_toPropertyKey","arg","String","Symbol","iterator","constructor","prototype","_toPrimitive","input","hint","prim","undefined","res","call","Number","setPrototypeOf","isNativeReflectConstruct","_construct","Parent","args","Class","Reflect","construct","bind","a","push","apply","Constructor","Function","instance","arguments","_setPrototypeOf","o","p","__proto__","_isNativeReflectConstruct","sham","Proxy","Boolean","valueOf","e","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","_toConsumableArray","arr","MeScroll","options","isScrollBody","me","version","isDownScrolling","isUpScrolling","hasDownCallback","down","callback","initDownScroll","initUpScroll","setTimeout","optDown","use","native","auto","autoShowLoading","triggerDownScroll","isUpAutoLoad","optUp","triggerUpScroll","extendDownScroll","extend","isLock","offset","startTop","inOffsetRate","outOffsetRate","bottomOffset","minAngle","textInOffset","textOutOffset","textLoading","textSuccess","textErr","beforeEndDelay","bgColor","textColor","inited","inOffset","outOffset","onMoving","beforeLoading","showLoading","afterLoading","beforeEndDownScroll","endDownScroll","afterEndDownScroll","mescroll","resetUpScroll","extendUpScroll","isBoth","page","num","size","time","noMoreSize","textNoMore","showNoMore","hideUpScroll","errDistance","toTop","src","duration","btnClick","onShow","zIndex","left","right","bottom","safearea","width","radius","empty","icon","tip","btnText","fixed","top","onScroll","userOption","defaultOption","def","hasColor","color","c","toLowerCase","downHight","touchstartEvent","startPoint","getPoint","getScrollTop","startAngle","lastPoint","maxTouchmoveY","getBodyHeight","inTouchend","touchmoveEvent","scrollTop","curPoint","moveY","y","getAngle","touchendEvent","preventDefault","diff","movetype","isDownEndSuccess","isMoveDown","Math","round","rate","endDownScrollCall","isScrollUp","angle","x","touches","pageX","pageY","changedTouches","clientX","clientY","p1","p2","abs","z","sqrt","asin","PI","showDownScroll","uni","startPullDownRefresh","showDownLoadingCall","onPullDownRefresh","stopPullDownRefresh","endScroll","setScrollHeight","scrollTo","delay","lockDownScroll","lockUpScroll","up","hasNext","startNum","onReachBottom","onPageScroll","setScrollTop","showTopBtn","hideTopBtn","scroll","scrollHeight","preScrollY","isCheck","canUp","getScrollBottom","showUpScroll","endUpScroll","isShowNoMore","isShowLoading","prePageNum","prePageTime","removeEmpty","setPageNum","setPageSize","endByPage","dataSize","totalPage","systime","endSuccess","endBySize","totalSize","loadSize","pageNum","pageSize","showEmpty","allDataSize","endErr","topBtnShow","t","myScrollTo","resetScrollTo","getScrollHeight","getClientHeight","getStep","star","end","count","step","i","timer","setInterval","clearInterval","isReal","h","clientHeight","setClientHeight","bodyHeight","setBodyHeight","cancelable","defaultPrevented","GlobalOption","arrayLikeToArray","_arrayWithoutHoles","Array","isArray","WxsMixin","data","wxsProp","isUpBoth","callProp","callType","renderBiz","propObserver","methods","wxsCall","msg","type","Date","now","downLoadType","$set","mounted","realAtob","b64","b64re","atob","str","replace","test","Error","slice","length","bitmap","result","r1","r2","charAt","fromCharCode","b64DecodeUnicode","decodeURIComponent","split","map","charCodeAt","toString","getCurrentUserInfo","token","wx","getStorageSync","tokenArr","uid","role","permission","tokenExpired","userInfo","JSON","parse","error","message","exp","iat","uniIdMixin","Vue","uniIDHasRole","roleId","uniIDHasPermission","permissionId","uniIDTokenValid","_toString","hasOwnProperty","isFn","fn","isStr","isObject","isPlainObject","hasOwn","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","_","toUpperCase","sortObject","sortObj","keys","sort","forEach","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","concat","dedupeHooks","hooks","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","isPromise","then","queue","promise","Promise","resolve","wrapperOptions","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","reason","promisify","promiseApi","success","fail","complete","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","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","initVueI18n","i18nMixin","mixin","beforeCreate","unwatch","watchLocale","$forceUpdate","$once","$$t","values","setLocale","getLocale","initAppLocale","appVm","state","observable","localeWatchers","$watchLocale","get","set","v","watch","include","parts","find","part","startsWith","trim","lang","getLocale$1","getApp","app","allowDefault","$vm","$locale","setLocale$1","oldLocale","onLocaleChangeCallbacks","onLocaleChange","global","interceptors","baseApi","freeze","findExistsPageIndex","url","pages","getCurrentPages","len","$page","fullPath","redirectTo","fromArgs","exists","delta","existsPageIndex","previewImage","currentIndex","parseInt","current","isNaN","urls","filter","item","indicator","loop","UUID_KEY","deviceId","useDeviceId","random","setStorage","addSafeAreaInsets","safeArea","safeAreaInsets","screenHeight","populateParameters","brand","model","system","theme","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","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","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","Emitter","getUniEmitter","ctx","$on","$off","$emit","eventApi","tryCatch","getApiCallbacks","apiCallbacks","param","cid","cidErrMsg","enabled","normalizePushMessage","invokePushCallback","invokeGetPushCidCallbacks","onPushMessageCallbacks","stopped","getPushCidCallbacks","getPushClientId","hasSuccess","hasFail","hasComplete","onPushMessage","offPushMessage","baseInfo","shareVideoMessage","miniapp","mocks","findVmByVueId","vm","vuePid","$children","childVm","$scope","_$vueId","parentVm","initBehavior","Behavior","isPage","route","initRelation","detail","triggerEvent","selectAllComponents","mpInstance","selector","$refs","components","component","ref","dataset","toSkip","vueGeneric","scopedComponent","syncRefs","refs","newRefs","oldKeys","Set","newKeys","oldValue","newValue","every","includes","delete","initRefs","forComponents","handleLink","event","vueOptions","parent","markMPComponent","IS_MP","OB","SKIP","isExtensible","MPPage","Page","MPComponent","Component","customizeRE","customize","initTriggerEvent","oldTriggerEvent","newTriggerEvent","comType","newEvent","_triggerEvent","initHook","isComponent","oldHook","__$wrappered","after","PAGE_EVENT_HOOKS","initMocks","$mp","mpType","mock","hasHook","default","extendOptions","super","mixins","initHooks","mpOptions","__call_hook","initUnknownHooks","excludes","findHooks","initHook$1","initVueComponent","VueComponent","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","_$vuePid","initData","context","VUE_APP_DEBUG","stringify","__lifecycle_hooks__","PROP_TYPES","createObserver","observer","newVal","oldVal","initBehaviors","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","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","isInteger","substr","__get_value","vForItem","vForKey","processEventExtra","extra","__args__","extraObj","getObjByArray","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","ret","ONCE","CUSTOM","isMatchEventType","eventType","optType","getContextVm","$parent","$options","generic","handleEvent","eventOpts","eventOpt","eventsArray","isOnce","eventArray","handlerCtx","handler","path","is","once","eventChannels","eventChannelStack","getEventChannel","id","eventChannel","shift","initEventChannel","getOpenerEventChannel","callHook","__id__","__eventChannel__","initScopedSlotsParams","center","parents","$hasScopedSlotsParams","has","$getScopedSlotsParams","object","$setScopedSlotsParams","propsData","destroyed","parseBaseApp","store","$store","mpHost","$i18n","_i18n","appOptions","onLaunch","canIUse","globalData","_isMounted","parseApp","createApp","App","encodeReserveRE","encodeReserveReplacer","commaRE","encode","encodeURIComponent","stringifyQuery","encodeStr","val","val2","parseBaseComponent","vueComponentOptions","needVueOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","__l","__e","externalClasses","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","copyQuery","parsePage","createPage","createComponent","createSubpackageApp","onAppShow","onHide","onAppHide","getLaunchOptionsSync","createPlugin","canIUseApi","apiName","uni$1","_iterableToArray","iter","from","_nonIterableSpread","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","isWatchedAppLocale","f","add","isString","hasI18nJson","jsonObj","walkJsonObj","isI18nStr","parseI18nJson","compileStr","compileI18nJsonStr","jsonStr","localeValues","unshift","compileJsonObj","compileValue","valueLocales","localValue","walk","resolveLocale","resolveLocaleChain","chain","pop","_classCallCheck","_defineProperties","descriptor","_createClass","protoProps","staticProps","login","AllApi","oauthLogin","request","postFormData","register","post","Login","customStyle","customClass","linkType","$u","getRect","$uGetRect","created","computed","deepMerge","http","bem","change","prefix","classes","openPage","urlKey","all","createSelectorQuery","in","boundingClientRect","rect","exec","getParentData","parentName","children","parentData","preventEvent","beforeDestroy","array","childrenList","child","put","put1","del","headers","header","urlsNoAuth","getToken","BASE_URL","log","timeout","statusCode","code","showToast","flag","addToken","hideLoading","USERS_KEY","TOKEN_KEY","ORDER_COUNT_KEY","SYSTEM_INFO_KEY","setStorageSync","saveUser","user","getUser","getOrderCount","addOrderCount","updateOrderCount","setSystemInfo","info","statusBarHeight","getPayDomain","API","PayDomain","utils","ObjectToQureyParams","formatTime","date","formatStr","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","formatTime1","parseTime","getUrlQueryParam","_interopRequireDefault","GetTbpolicy","currentPage","GetTbpolicyById","Gettbtraininfo","GettbtraininfoById","ApplyT","CreateRres","GetRresOne","Gettbrecruit","keyword","sidx","GettbrecruitById","PostApplyL","Gettbgoodstype","GettGetListCom","GettbgoodscompanyById","MescrollMixin","mescrollInit","mescrollInitByRef","mescrollRef","downCallback","upCallback","arrayWithHoles","iterableToArrayLimit","nonIterableRest","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","_unsupportedIterableToArray","minLen","n","_arrayLikeToArray","arr2"],"mappings":"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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;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;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;AACA;AACA;AACA;AACA;AACA;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,gIAAW;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,gIAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,gIAAW;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;AACA;AACA;AACA;AACA;;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,gIAAW;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;AACA,WAAW;AACX,SAAS;;AAET;AACA;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;;;;;;;;;;;;;;;;;;;;;;;;AC77LnB;;AAEA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;AACA;AACA,4CAA4C;;AAE5C;;;;;;;;;;;;;ACnBA;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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","file":"common/vendor.js","sourcesContent":["const objectKeys = [\n 'qy',\n 'env',\n 'error',\n 'version',\n 'lanDebug',\n 'cloud',\n 'serviceMarket',\n 'router',\n 'worklet',\n]\n\nconst target = typeof globalThis !== 'undefined' ? globalThis : (function() {\n return this\n})()\n\nconst key = ['w', 'x'].join('')\nconst oldWx = target[key]\n\nfunction isWxKey(key) {\n return objectKeys.indexOf(key) > -1 || typeof oldWx[key] === 'function'\n}\n\nfunction initWx() {\n const newWx = {}\n for (const key in oldWx) {\n if (isWxKey(key)) {\n // TODO wrapper function\n newWx[key] = oldWx[key]\n }\n }\n return newWx\n}\ntarget[key] = initWx()\nexport default target[key]\n","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n } else {\n module.exports = _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n }\n return _construct.apply(null, arguments);\n}\nmodule.exports = _construct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/* mescroll\r\n * version 1.3.3\r\n * 2020-09-15 wenju\r\n * https://www.mescroll.com\r\n */\r\n\r\nexport default function MeScroll(options, isScrollBody) {\r\n\tlet me = this;\r\n\tme.version = '1.3.3'; // mescroll版本号\r\n\tme.options = options || {}; // 配置\r\n\tme.isScrollBody = isScrollBody || false; // 滚动区域是否为原生页面滚动; 默认为scroll-view\r\n\r\n\tme.isDownScrolling = false; // 是否在执行下拉刷新的回调\r\n\tme.isUpScrolling = false; // 是否在执行上拉加载的回调\r\n\tlet hasDownCallback = me.options.down && me.options.down.callback; // 是否配置了down的callback\r\n\r\n\t// 初始化下拉刷新\r\n\tme.initDownScroll();\r\n\t// 初始化上拉加载,则初始化\r\n\tme.initUpScroll();\r\n\r\n\t// 自动加载\r\n\tsetTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例\r\n\t\t// 自动触发下拉刷新 (只有配置了down的callback才自动触发下拉刷新)\r\n\t\tif ((me.optDown.use || me.optDown.native) && me.optDown.auto && hasDownCallback) {\r\n\t\t\tif (me.optDown.autoShowLoading) {\r\n\t\t\t\tme.triggerDownScroll(); // 显示下拉进度,执行下拉回调\r\n\t\t\t} else {\r\n\t\t\t\tme.optDown.callback && me.optDown.callback(me); // 不显示下拉进度,直接执行下拉回调\r\n\t\t\t}\r\n\t\t}\r\n\t\t// 自动触发上拉加载\r\n\t\tif(!me.isUpAutoLoad){ // 部分小程序(头条小程序)emit是异步, 会导致isUpAutoLoad判断有误, 先延时确保先执行down的callback,再执行up的callback\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tme.optUp.use && me.optUp.auto && !me.isUpAutoLoad && me.triggerUpScroll();\r\n\t\t\t},100)\r\n\t\t}\r\n\t}, 30); // 需让me.optDown.inited和me.optUp.inited先执行\r\n}\r\n\r\n/* 配置参数:下拉刷新 */\r\nMeScroll.prototype.extendDownScroll = function(optDown) {\r\n\t// 下拉刷新的配置\r\n\tMeScroll.extend(optDown, {\r\n\t\tuse: true, // 是否启用下拉刷新; 默认true\r\n\t\tauto: true, // 是否在初始化完毕之后自动执行下拉刷新的回调; 默认true\r\n\t\tnative: false, // 是否使用系统自带的下拉刷新; 默认false; 仅mescroll-body生效 (值为true时,还需在pages配置enablePullDownRefresh:true;详请参考mescroll-native的案例)\r\n\t\tautoShowLoading: false, // 如果设置auto=true(在初始化完毕之后自动执行下拉刷新的回调),那么是否显示下拉刷新的进度; 默认false\r\n\t\tisLock: false, // 是否锁定下拉刷新,默认false;\r\n\t\toffset: 80, // 在列表顶部,下拉大于80px,松手即可触发下拉刷新的回调\r\n\t\tstartTop: 100, // scroll-view快速滚动到顶部时,此时的scroll-top可能大于0, 此值用于控制最大的误差\r\n\t\tinOffsetRate: 1, // 在列表顶部,下拉的距离小于offset时,改变下拉区域高度比例;值小于1且越接近0,高度变化越小,表现为越往下越难拉\r\n\t\toutOffsetRate: 0.2, // 在列表顶部,下拉的距离大于offset时,改变下拉区域高度比例;值小于1且越接近0,高度变化越小,表现为越往下越难拉\r\n\t\tbottomOffset: 20, // 当手指touchmove位置在距离body底部20px范围内的时候结束上拉刷新,避免Webview嵌套导致touchend事件不执行\r\n\t\tminAngle: 45, // 向下滑动最少偏移的角度,取值区间 [0,90];默认45度,即向下滑动的角度大于45度则触发下拉;而小于45度,将不触发下拉,避免与左右滑动的轮播等组件冲突;\r\n\t\ttextInOffset: '下拉刷新', // 下拉的距离在offset范围内的提示文本\r\n\t\ttextOutOffset: '释放更新', // 下拉的距离大于offset范围的提示文本\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextSuccess: '加载成功', // 加载成功的文本\r\n\t\ttextErr: '加载失败', // 加载失败的文本\r\n\t\tbeforeEndDelay: 100, // 延时结束的时长 (显示加载成功/失败的时长)\r\n\t\tbgColor: \"transparent\", // 背景颜色 (建议在pages.json中再设置一下backgroundColorTop)\r\n\t\ttextColor: \"gray\", // 文本颜色 (当bgColor配置了颜色,而textColor未配置时,则textColor会默认为白色)\r\n\t\tinited: null, // 下拉刷新初始化完毕的回调\r\n\t\tinOffset: null, // 下拉的距离进入offset范围内那一刻的回调\r\n\t\toutOffset: null, // 下拉的距离大于offset那一刻的回调\r\n\t\tonMoving: null, // 下拉过程中的回调,滑动过程一直在执行; rate下拉区域当前高度与指定距离的比值(inOffset: rate<1; outOffset: rate>=1); downHight当前下拉区域的高度\r\n\t\tbeforeLoading: null, // 准备触发下拉刷新的回调: 如果return true,将不触发showLoading和callback回调; 常用来完全自定义下拉刷新, 参考案例【淘宝 v6.8.0】\r\n\t\tshowLoading: null, // 显示下拉刷新进度的回调\r\n\t\tafterLoading: null, // 显示下拉刷新进度的回调之后,马上要执行的代码 (如: 在wxs中使用)\r\n\t\tbeforeEndDownScroll: null, // 准备结束下拉的回调. 返回结束下拉的延时执行时间,默认0ms; 常用于结束下拉之前再显示另外一小段动画,才去隐藏下拉刷新的场景, 参考案例【dotJump】\r\n\t\tendDownScroll: null, // 结束下拉刷新的回调\r\n\t\tafterEndDownScroll: null, // 结束下拉刷新的回调,马上要执行的代码 (如: 在wxs中使用)\r\n\t\tcallback: function(mescroll) {\r\n\t\t\t// 下拉刷新的回调;默认重置上拉加载列表为第一页\r\n\t\t\tmescroll.resetUpScroll();\r\n\t\t}\r\n\t})\r\n}\r\n\r\n/* 配置参数:上拉加载 */\r\nMeScroll.prototype.extendUpScroll = function(optUp) {\r\n\t// 上拉加载的配置\r\n\tMeScroll.extend(optUp, {\r\n\t\tuse: true, // 是否启用上拉加载; 默认true\r\n\t\tauto: true, // 是否在初始化完毕之后自动执行上拉加载的回调; 默认true\r\n\t\tisLock: false, // 是否锁定上拉加载,默认false;\r\n\t\tisBoth: true, // 上拉加载时,如果滑动到列表顶部是否可以同时触发下拉刷新;默认true,两者可同时触发;\r\n\t\tcallback: null, // 上拉加载的回调;function(page,mescroll){ }\r\n\t\tpage: {\r\n\t\t\tnum: 0, // 当前页码,默认0,回调之前会加1,即callback(page)会从1开始\r\n\t\t\tsize: 10, // 每页数据的数量\r\n\t\t\ttime: null // 加载第一页数据服务器返回的时间; 防止用户翻页时,后台新增了数据从而导致下一页数据重复;\r\n\t\t},\r\n\t\tnoMoreSize: 5, // 如果列表已无数据,可设置列表的总数量要大于等于5条才显示无更多数据;避免列表数据过少(比如只有一条数据),显示无更多数据会不好看\r\n\t\toffset: 150, // 距底部多远时,触发upCallback,仅mescroll-uni生效 ( mescroll-body配置的是pages.json的 onReachBottomDistance )\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextNoMore: '-- END --', // 没有更多数据的提示文本\r\n\t\tbgColor: \"transparent\", // 背景颜色 (建议在pages.json中再设置一下backgroundColorBottom)\r\n\t\ttextColor: \"gray\", // 文本颜色 (当bgColor配置了颜色,而textColor未配置时,则textColor会默认为白色)\r\n\t\tinited: null, // 初始化完毕的回调\r\n\t\tshowLoading: null, // 显示加载中的回调\r\n\t\tshowNoMore: null, // 显示无更多数据的回调\r\n\t\thideUpScroll: null, // 隐藏上拉加载的回调\r\n\t\terrDistance: 60, // endErr的时候需往上滑动一段距离,使其往下滑动时再次触发onReachBottom,仅mescroll-body生效\r\n\t\ttoTop: {\r\n\t\t\t// 回到顶部按钮,需配置src才显示\r\n\t\t\tsrc: null, // 图片路径,默认null (绝对路径或网络图)\r\n\t\t\toffset: 1000, // 列表滚动多少距离才显示回到顶部按钮,默认1000\r\n\t\t\tduration: 300, // 回到顶部的动画时长,默认300ms (当值为0或300则使用系统自带回到顶部,更流畅; 其他值则通过step模拟,部分机型可能不够流畅,所以非特殊情况不建议修改此项)\r\n\t\t\tbtnClick: null, // 点击按钮的回调\r\n\t\t\tonShow: null, // 是否显示的回调\r\n\t\t\tzIndex: 9990, // fixed定位z-index值\r\n\t\t\tleft: null, // 到左边的距离, 默认null. 此项有值时,right不生效. (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tright: 20, // 到右边的距离, 默认20 (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tbottom: 120, // 到底部的距离, 默认120 (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tsafearea: false, // bottom的偏移量是否加上底部安全区的距离, 默认false, 需要适配iPhoneX时使用 (具体的界面如果不配置此项,则取本vue的safearea值)\r\n\t\t\twidth: 72, // 回到顶部图标的宽度, 默认72 (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t\tradius: \"50%\" // 圆角, 默认\"50%\" (支持20, \"20rpx\", \"20px\", \"20%\"格式的值, 其中纯数字则默认单位rpx)\r\n\t\t},\r\n\t\tempty: {\r\n\t\t\tuse: true, // 是否显示空布局\r\n\t\t\ticon: null, // 图标路径\r\n\t\t\ttip: '~ 暂无相关数据 ~', // 提示\r\n\t\t\tbtnText: '', // 按钮\r\n\t\t\tbtnClick: null, // 点击按钮的回调\r\n\t\t\tonShow: null, // 是否显示的回调\r\n\t\t\tfixed: false, // 是否使用fixed定位,默认false; 配置fixed为true,以下的top和zIndex才生效 (transform会使fixed失效,最终会降级为absolute)\r\n\t\t\ttop: \"100rpx\", // fixed定位的top值 (完整的单位值,如 \"10%\"; \"100rpx\")\r\n\t\t\tzIndex: 99 // fixed定位z-index值\r\n\t\t},\r\n\t\tonScroll: false // 是否监听滚动事件\r\n\t})\r\n}\r\n\r\n/* 配置参数 */\r\nMeScroll.extend = function(userOption, defaultOption) {\r\n\tif (!userOption) return defaultOption;\r\n\tfor (let key in defaultOption) {\r\n\t\tif (userOption[key] == null) {\r\n\t\t\tlet def = defaultOption[key];\r\n\t\t\tif (def != null && typeof def === 'object') {\r\n\t\t\t\tuserOption[key] = MeScroll.extend({}, def); // 深度匹配\r\n\t\t\t} else {\r\n\t\t\t\tuserOption[key] = def;\r\n\t\t\t}\r\n\t\t} else if (typeof userOption[key] === 'object') {\r\n\t\t\tMeScroll.extend(userOption[key], defaultOption[key]); // 深度匹配\r\n\t\t}\r\n\t}\r\n\treturn userOption;\r\n}\r\n\r\n/* 简单判断是否配置了颜色 (非透明,非白色) */\r\nMeScroll.prototype.hasColor = function(color) {\r\n\tif(!color) return false;\r\n\tlet c = color.toLowerCase();\r\n\treturn c != \"#fff\" && c != \"#ffffff\" && c != \"transparent\" && c != \"white\"\r\n}\r\n\r\n/* -------初始化下拉刷新------- */\r\nMeScroll.prototype.initDownScroll = function() {\r\n\tlet me = this;\r\n\t// 配置参数\r\n\tme.optDown = me.options.down || {};\r\n\tif(!me.optDown.textColor && me.hasColor(me.optDown.bgColor)) me.optDown.textColor = \"#fff\"; // 当bgColor有值且textColor未设置,则textColor默认白色\r\n\tme.extendDownScroll(me.optDown);\r\n\t\r\n\t// 如果是mescroll-body且配置了native,则禁止自定义的下拉刷新\r\n\tif(me.isScrollBody && me.optDown.native){\r\n\t\tme.optDown.use = false\r\n\t}else{\r\n\t\tme.optDown.native = false // 仅mescroll-body支持,mescroll-uni不支持\r\n\t}\r\n\t\r\n\tme.downHight = 0; // 下拉区域的高度\r\n\r\n\t// 在页面中加入下拉布局\r\n\tif (me.optDown.use && me.optDown.inited) {\r\n\t\t// 初始化完毕的回调\r\n\t\tsetTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例\r\n\t\t\tme.optDown.inited(me);\r\n\t\t}, 0)\r\n\t}\r\n}\r\n\r\n/* 列表touchstart事件 */\r\nMeScroll.prototype.touchstartEvent = function(e) {\r\n\tif (!this.optDown.use) return;\r\n\r\n\tthis.startPoint = this.getPoint(e); // 记录起点\r\n\tthis.startTop = this.getScrollTop(); // 记录此时的滚动条位置\r\n\tthis.startAngle = 0; // 初始角度\r\n\tthis.lastPoint = this.startPoint; // 重置上次move的点\r\n\tthis.maxTouchmoveY = this.getBodyHeight() - this.optDown.bottomOffset; // 手指触摸的最大范围(写在touchstart避免body获取高度为0的情况)\r\n\tthis.inTouchend = false; // 标记不是touchend\r\n}\r\n\r\n/* 列表touchmove事件 */\r\nMeScroll.prototype.touchmoveEvent = function(e) {\r\n\tif (!this.optDown.use) return;\r\n\tlet me = this;\r\n\r\n\tlet scrollTop = me.getScrollTop(); // 当前滚动条的距离\r\n\tlet curPoint = me.getPoint(e); // 当前点\r\n\r\n\tlet moveY = curPoint.y - me.startPoint.y; // 和起点比,移动的距离,大于0向下拉,小于0向上拉\r\n\r\n\t// 向下拉 && 在顶部\r\n\t// mescroll-body,直接判定在顶部即可\r\n\t// scroll-view在滚动时不会触发touchmove,当触顶/底/左/右时,才会触发touchmove\r\n\t// scroll-view滚动到顶部时,scrollTop不一定为0,也有可能大于0; 在iOS的APP中scrollTop可能为负数,不一定和startTop相等\r\n\tif (moveY > 0 && (\r\n\t\t\t(me.isScrollBody && scrollTop <= 0)\r\n\t\t\t||\r\n\t\t\t(!me.isScrollBody && (scrollTop <= 0 || (scrollTop <= me.optDown.startTop && scrollTop === me.startTop)) )\r\n\t\t)) {\r\n\t\t// 可下拉的条件\r\n\t\tif (!me.inTouchend && !me.isDownScrolling && !me.optDown.isLock && (!me.isUpScrolling || (me.isUpScrolling &&\r\n\t\t\t\tme.optUp.isBoth))) {\r\n\r\n\t\t\t// 下拉的初始角度是否在配置的范围内\r\n\t\t\tif(!me.startAngle) me.startAngle = me.getAngle(me.lastPoint, curPoint); // 两点之间的角度,区间 [0,90]\r\n\t\t\tif (me.startAngle < me.optDown.minAngle) return; // 如果小于配置的角度,则不往下执行下拉刷新\r\n\r\n\t\t\t// 如果手指的位置超过配置的距离,则提前结束下拉,避免Webview嵌套导致touchend无法触发\r\n\t\t\tif (me.maxTouchmoveY > 0 && curPoint.y >= me.maxTouchmoveY) {\r\n\t\t\t\tme.inTouchend = true; // 标记执行touchend\r\n\t\t\t\tme.touchendEvent(); // 提前触发touchend\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tme.preventDefault(e); // 阻止默认事件\r\n\r\n\t\t\tlet diff = curPoint.y - me.lastPoint.y; // 和上次比,移动的距离 (大于0向下,小于0向上)\r\n\r\n\t\t\t// 下拉距离 < 指定距离\r\n\t\t\tif (me.downHight < me.optDown.offset) {\r\n\t\t\t\tif (me.movetype !== 1) {\r\n\t\t\t\t\tme.movetype = 1; // 加入标记,保证只执行一次\r\n\t\t\t\t\tme.isDownEndSuccess = null; // 重置是否加载成功的状态 (wxs执行的是wxs.wxs)\r\n\t\t\t\t\tme.optDown.inOffset && me.optDown.inOffset(me); // 进入指定距离范围内那一刻的回调,只执行一次\r\n\t\t\t\t\tme.isMoveDown = true; // 标记下拉区域高度改变,在touchend重置回来\r\n\t\t\t\t}\r\n\t\t\t\tme.downHight += diff * me.optDown.inOffsetRate; // 越往下,高度变化越小\r\n\r\n\t\t\t\t// 指定距离 <= 下拉距离\r\n\t\t\t} else {\r\n\t\t\t\tif (me.movetype !== 2) {\r\n\t\t\t\t\tme.movetype = 2; // 加入标记,保证只执行一次\r\n\t\t\t\t\tme.optDown.outOffset && me.optDown.outOffset(me); // 下拉超过指定距离那一刻的回调,只执行一次\r\n\t\t\t\t\tme.isMoveDown = true; // 标记下拉区域高度改变,在touchend重置回来\r\n\t\t\t\t}\r\n\t\t\t\tif (diff > 0) { // 向下拉\r\n\t\t\t\t\tme.downHight += diff * me.optDown.outOffsetRate; // 越往下,高度变化越小\r\n\t\t\t\t} else { // 向上收\r\n\t\t\t\t\tme.downHight += diff; // 向上收回高度,则向上滑多少收多少高度\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tme.downHight = Math.round(me.downHight) // 取整\r\n\t\t\tlet rate = me.downHight / me.optDown.offset; // 下拉区域当前高度与指定距离的比值\r\n\t\t\tme.optDown.onMoving && me.optDown.onMoving(me, rate, me.downHight); // 下拉过程中的回调,一直在执行\r\n\t\t}\r\n\t}\r\n\r\n\tme.lastPoint = curPoint; // 记录本次移动的点\r\n}\r\n\r\n/* 列表touchend事件 */\r\nMeScroll.prototype.touchendEvent = function(e) {\r\n\tif (!this.optDown.use) return;\r\n\t// 如果下拉区域高度已改变,则需重置回来\r\n\tif (this.isMoveDown) {\r\n\t\tif (this.downHight >= this.optDown.offset) {\r\n\t\t\t// 符合触发刷新的条件\r\n\t\t\tthis.triggerDownScroll();\r\n\t\t} else {\r\n\t\t\t// 不符合的话 则重置\r\n\t\t\tthis.downHight = 0;\r\n\t\t\tthis.endDownScrollCall(this);\r\n\t\t}\r\n\t\tthis.movetype = 0;\r\n\t\tthis.isMoveDown = false;\r\n\t} else if (!this.isScrollBody && this.getScrollTop() === this.startTop) { // scroll-view到顶/左/右/底的滑动事件\r\n\t\tlet isScrollUp = this.getPoint(e).y - this.startPoint.y < 0; // 和起点比,移动的距离,大于0向下拉,小于0向上拉\r\n\t\t// 上滑\r\n\t\tif (isScrollUp) {\r\n\t\t\t// 需检查滑动的角度\r\n\t\t\tlet angle = this.getAngle(this.getPoint(e), this.startPoint); // 两点之间的角度,区间 [0,90]\r\n\t\t\tif (angle > 80) {\r\n\t\t\t\t// 检查并触发上拉\r\n\t\t\t\tthis.triggerUpScroll(true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* 根据点击滑动事件获取第一个手指的坐标 */\r\nMeScroll.prototype.getPoint = function(e) {\r\n\tif (!e) {\r\n\t\treturn {\r\n\t\t\tx: 0,\r\n\t\t\ty: 0\r\n\t\t}\r\n\t}\r\n\tif (e.touches && e.touches[0]) {\r\n\t\treturn {\r\n\t\t\tx: e.touches[0].pageX,\r\n\t\t\ty: e.touches[0].pageY\r\n\t\t}\r\n\t} else if (e.changedTouches && e.changedTouches[0]) {\r\n\t\treturn {\r\n\t\t\tx: e.changedTouches[0].pageX,\r\n\t\t\ty: e.changedTouches[0].pageY\r\n\t\t}\r\n\t} else {\r\n\t\treturn {\r\n\t\t\tx: e.clientX,\r\n\t\t\ty: e.clientY\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* 计算两点之间的角度: 区间 [0,90]*/\r\nMeScroll.prototype.getAngle = function(p1, p2) {\r\n\tlet x = Math.abs(p1.x - p2.x);\r\n\tlet y = Math.abs(p1.y - p2.y);\r\n\tlet z = Math.sqrt(x * x + y * y);\r\n\tlet angle = 0;\r\n\tif (z !== 0) {\r\n\t\tangle = Math.asin(y / z) / Math.PI * 180;\r\n\t}\r\n\treturn angle\r\n}\r\n\r\n/* 触发下拉刷新 */\r\nMeScroll.prototype.triggerDownScroll = function() {\r\n\tif (this.optDown.beforeLoading && this.optDown.beforeLoading(this)) {\r\n\t\t//return true则处于完全自定义状态\r\n\t} else {\r\n\t\tthis.showDownScroll(); // 下拉刷新中...\r\n\t\t!this.optDown.native && this.optDown.callback && this.optDown.callback(this); // 执行回调,联网加载数据\r\n\t}\r\n}\r\n\r\n/* 显示下拉进度布局 */\r\nMeScroll.prototype.showDownScroll = function() {\r\n\tthis.isDownScrolling = true; // 标记下拉中\r\n\tif (this.optDown.native) {\r\n\t\tuni.startPullDownRefresh(); // 系统自带的下拉刷新\r\n\t\tthis.showDownLoadingCall(0); // 仍触发showLoading,因为上拉加载用到\r\n\t} else{\r\n\t\tthis.downHight = this.optDown.offset; // 更新下拉区域高度\r\n\t\tthis.showDownLoadingCall(this.downHight); // 下拉刷新中...\r\n\t}\r\n}\r\n\r\nMeScroll.prototype.showDownLoadingCall = function(downHight) {\r\n\tthis.optDown.showLoading && this.optDown.showLoading(this, downHight); // 下拉刷新中...\r\n\tthis.optDown.afterLoading && this.optDown.afterLoading(this, downHight); // 下拉刷新中...触发之后马上要执行的代码\r\n}\r\n\r\n/* 显示系统自带的下拉刷新时需要处理的业务 */\r\nMeScroll.prototype.onPullDownRefresh = function() {\r\n\tthis.isDownScrolling = true; // 标记下拉中\r\n\tthis.showDownLoadingCall(0); // 仍触发showLoading,因为上拉加载用到\r\n\tthis.optDown.callback && this.optDown.callback(this); // 执行回调,联网加载数据\r\n}\r\n\r\n/* 结束下拉刷新 */\r\nMeScroll.prototype.endDownScroll = function() {\r\n\tif (this.optDown.native) { // 结束原生下拉刷新\r\n\t\tthis.isDownScrolling = false;\r\n\t\tthis.endDownScrollCall(this);\r\n\t\tuni.stopPullDownRefresh();\r\n\t\treturn\r\n\t}\r\n\tlet me = this;\r\n\t// 结束下拉刷新的方法\r\n\tlet endScroll = function() {\r\n\t\tme.downHight = 0;\r\n\t\tme.isDownScrolling = false;\r\n\t\tme.endDownScrollCall(me);\r\n\t\tif(!me.isScrollBody){\r\n\t\t\tme.setScrollHeight(0) // scroll-view重置滚动区域,使数据不满屏时仍可检查触发翻页\r\n\t\t\tme.scrollTo(0,0) // scroll-view需重置滚动条到顶部,避免startTop大于0时,对下拉刷新的影响\r\n\t\t}\r\n\t}\r\n\t// 结束下拉刷新时的回调\r\n\tlet delay = 0;\r\n\tif (me.optDown.beforeEndDownScroll) {\r\n\t\tdelay = me.optDown.beforeEndDownScroll(me); // 结束下拉刷新的延时,单位ms\r\n\t\tif(me.isDownEndSuccess == null) delay = 0; // 没有执行加载中,则不延时\r\n\t}\r\n\tif (typeof delay === 'number' && delay > 0) {\r\n\t\tsetTimeout(endScroll, delay);\r\n\t} else {\r\n\t\tendScroll();\r\n\t}\r\n}\r\n\r\nMeScroll.prototype.endDownScrollCall = function() {\r\n\tthis.optDown.endDownScroll && this.optDown.endDownScroll(this);\r\n\tthis.optDown.afterEndDownScroll && this.optDown.afterEndDownScroll(this);\r\n}\r\n\r\n/* 锁定下拉刷新:isLock=ture,null锁定;isLock=false解锁 */\r\nMeScroll.prototype.lockDownScroll = function(isLock) {\r\n\tif (isLock == null) isLock = true;\r\n\tthis.optDown.isLock = isLock;\r\n}\r\n\r\n/* 锁定上拉加载:isLock=ture,null锁定;isLock=false解锁 */\r\nMeScroll.prototype.lockUpScroll = function(isLock) {\r\n\tif (isLock == null) isLock = true;\r\n\tthis.optUp.isLock = isLock;\r\n}\r\n\r\n/* -------初始化上拉加载------- */\r\nMeScroll.prototype.initUpScroll = function() {\r\n\tlet me = this;\r\n\t// 配置参数\r\n\tme.optUp = me.options.up || {use: false}\r\n\tif(!me.optUp.textColor && me.hasColor(me.optUp.bgColor)) me.optUp.textColor = \"#fff\"; // 当bgColor有值且textColor未设置,则textColor默认白色\r\n\tme.extendUpScroll(me.optUp);\r\n\r\n\tif (me.optUp.use === false) return; // 配置不使用上拉加载时,则不初始化上拉布局\r\n\tme.optUp.hasNext = true; // 如果使用上拉,则默认有下一页\r\n\tme.startNum = me.optUp.page.num + 1; // 记录page开始的页码\r\n\r\n\t// 初始化完毕的回调\r\n\tif (me.optUp.inited) {\r\n\t\tsetTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例\r\n\t\t\tme.optUp.inited(me);\r\n\t\t}, 0)\r\n\t}\r\n}\r\n\r\n/*滚动到底部的事件 (仅mescroll-body生效)*/\r\nMeScroll.prototype.onReachBottom = function() {\r\n\tif (this.isScrollBody && !this.isUpScrolling) { // 只能支持下拉刷新的时候同时可以触发上拉加载,否则滚动到底部就需要上滑一点才能触发onReachBottom\r\n\t\tif (!this.optUp.isLock && this.optUp.hasNext) {\r\n\t\t\tthis.triggerUpScroll();\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/*列表滚动事件 (仅mescroll-body生效)*/\r\nMeScroll.prototype.onPageScroll = function(e) {\r\n\tif (!this.isScrollBody) return;\r\n\t\r\n\t// 更新滚动条的位置 (主要用于判断下拉刷新时,滚动条是否在顶部)\r\n\tthis.setScrollTop(e.scrollTop);\r\n\r\n\t// 顶部按钮的显示隐藏\r\n\tif (e.scrollTop >= this.optUp.toTop.offset) {\r\n\t\tthis.showTopBtn();\r\n\t} else {\r\n\t\tthis.hideTopBtn();\r\n\t}\r\n}\r\n\r\n/*列表滚动事件*/\r\nMeScroll.prototype.scroll = function(e, onScroll) {\r\n\t// 更新滚动条的位置\r\n\tthis.setScrollTop(e.scrollTop);\r\n\t// 更新滚动内容高度\r\n\tthis.setScrollHeight(e.scrollHeight);\r\n\r\n\t// 向上滑还是向下滑动\r\n\tif (this.preScrollY == null) this.preScrollY = 0;\r\n\tthis.isScrollUp = e.scrollTop - this.preScrollY > 0;\r\n\tthis.preScrollY = e.scrollTop;\r\n\r\n\t// 上滑 && 检查并触发上拉\r\n\tthis.isScrollUp && this.triggerUpScroll(true);\r\n\r\n\t// 顶部按钮的显示隐藏\r\n\tif (e.scrollTop >= this.optUp.toTop.offset) {\r\n\t\tthis.showTopBtn();\r\n\t} else {\r\n\t\tthis.hideTopBtn();\r\n\t}\r\n\r\n\t// 滑动监听\r\n\tthis.optUp.onScroll && onScroll && onScroll()\r\n}\r\n\r\n/* 触发上拉加载 */\r\nMeScroll.prototype.triggerUpScroll = function(isCheck) {\r\n\tif (!this.isUpScrolling && this.optUp.use && this.optUp.callback) {\r\n\t\t// 是否校验在底部; 默认不校验\r\n\t\tif (isCheck === true) {\r\n\t\t\tlet canUp = false;\r\n\t\t\t// 还有下一页 && 没有锁定 && 不在下拉中\r\n\t\t\tif (this.optUp.hasNext && !this.optUp.isLock && !this.isDownScrolling) {\r\n\t\t\t\tif (this.getScrollBottom() <= this.optUp.offset) { // 到底部\r\n\t\t\t\t\tcanUp = true; // 标记可上拉\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (canUp === false) return;\r\n\t\t}\r\n\t\tthis.showUpScroll(); // 上拉加载中...\r\n\t\tthis.optUp.page.num++; // 预先加一页,如果失败则减回\r\n\t\tthis.isUpAutoLoad = true; // 标记上拉已经自动执行过,避免初始化时多次触发上拉回调\r\n\t\tthis.num = this.optUp.page.num; // 把最新的页数赋值在mescroll上,避免对page的影响\r\n\t\tthis.size = this.optUp.page.size; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.time = this.optUp.page.time; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.optUp.callback(this); // 执行回调,联网加载数据\r\n\t}\r\n}\r\n\r\n/* 显示上拉加载中 */\r\nMeScroll.prototype.showUpScroll = function() {\r\n\tthis.isUpScrolling = true; // 标记上拉加载中\r\n\tthis.optUp.showLoading && this.optUp.showLoading(this); // 回调\r\n}\r\n\r\n/* 显示上拉无更多数据 */\r\nMeScroll.prototype.showNoMore = function() {\r\n\tthis.optUp.hasNext = false; // 标记无更多数据\r\n\tthis.optUp.showNoMore && this.optUp.showNoMore(this); // 回调\r\n}\r\n\r\n/* 隐藏上拉区域**/\r\nMeScroll.prototype.hideUpScroll = function() {\r\n\tthis.optUp.hideUpScroll && this.optUp.hideUpScroll(this); // 回调\r\n}\r\n\r\n/* 结束上拉加载 */\r\nMeScroll.prototype.endUpScroll = function(isShowNoMore) {\r\n\tif (isShowNoMore != null) { // isShowNoMore=null,不处理下拉状态,下拉刷新的时候调用\r\n\t\tif (isShowNoMore) {\r\n\t\t\tthis.showNoMore(); // isShowNoMore=true,显示无更多数据\r\n\t\t} else {\r\n\t\t\tthis.hideUpScroll(); // isShowNoMore=false,隐藏上拉加载\r\n\t\t}\r\n\t}\r\n\tthis.isUpScrolling = false; // 标记结束上拉加载\r\n}\r\n\r\n/* 重置上拉加载列表为第一页\r\n *isShowLoading 是否显示进度布局;\r\n * 1.默认null,不传参,则显示上拉加载的进度布局\r\n * 2.传参true, 则显示下拉刷新的进度布局\r\n * 3.传参false,则不显示上拉和下拉的进度 (常用于静默更新列表数据)\r\n */\r\nMeScroll.prototype.resetUpScroll = function(isShowLoading) {\r\n\tif (this.optUp && this.optUp.use) {\r\n\t\tlet page = this.optUp.page;\r\n\t\tthis.prePageNum = page.num; // 缓存重置前的页码,加载失败可退回\r\n\t\tthis.prePageTime = page.time; // 缓存重置前的时间,加载失败可退回\r\n\t\tpage.num = this.startNum; // 重置为第一页\r\n\t\tpage.time = null; // 重置时间为空\r\n\t\tif (!this.isDownScrolling && isShowLoading !== false) { // 如果不是下拉刷新触发的resetUpScroll并且不配置列表静默更新,则显示进度;\r\n\t\t\tif (isShowLoading == null) {\r\n\t\t\t\tthis.removeEmpty(); // 移除空布局\r\n\t\t\t\tthis.showUpScroll(); // 不传参,默认显示上拉加载的进度布局\r\n\t\t\t} else {\r\n\t\t\t\tthis.showDownScroll(); // 传true,显示下拉刷新的进度布局,不清空列表\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.isUpAutoLoad = true; // 标记上拉已经自动执行过,避免初始化时多次触发上拉回调\r\n\t\tthis.num = page.num; // 把最新的页数赋值在mescroll上,避免对page的影响\r\n\t\tthis.size = page.size; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.time = page.time; // 把最新的页码赋值在mescroll上,避免对page的影响\r\n\t\tthis.optUp.callback && this.optUp.callback(this); // 执行上拉回调\r\n\t}\r\n}\r\n\r\n/* 设置page.num的值 */\r\nMeScroll.prototype.setPageNum = function(num) {\r\n\tthis.optUp.page.num = num - 1;\r\n}\r\n\r\n/* 设置page.size的值 */\r\nMeScroll.prototype.setPageSize = function(size) {\r\n\tthis.optUp.page.size = size;\r\n}\r\n\r\n/* 联网回调成功,结束下拉刷新和上拉加载\r\n * dataSize: 当前页的数据量(必传)\r\n * totalPage: 总页数(必传)\r\n * systime: 服务器时间 (可空)\r\n */\r\nMeScroll.prototype.endByPage = function(dataSize, totalPage, systime) {\r\n\tlet hasNext;\r\n\tif (this.optUp.use && totalPage != null) hasNext = this.optUp.page.num < totalPage; // 是否还有下一页\r\n\tthis.endSuccess(dataSize, hasNext, systime);\r\n}\r\n\r\n/* 联网回调成功,结束下拉刷新和上拉加载\r\n * dataSize: 当前页的数据量(必传)\r\n * totalSize: 列表所有数据总数量(必传)\r\n * systime: 服务器时间 (可空)\r\n */\r\nMeScroll.prototype.endBySize = function(dataSize, totalSize, systime) {\r\n\tlet hasNext;\r\n\tif (this.optUp.use && totalSize != null) {\r\n\t\tlet loadSize = (this.optUp.page.num - 1) * this.optUp.page.size + dataSize; // 已加载的数据总数\r\n\t\thasNext = loadSize < totalSize; // 是否还有下一页\r\n\t}\r\n\tthis.endSuccess(dataSize, hasNext, systime);\r\n}\r\n\r\n/* 联网回调成功,结束下拉刷新和上拉加载\r\n * dataSize: 当前页的数据个数(不是所有页的数据总和),用于上拉加载判断是否还有下一页.如果不传,则会判断还有下一页\r\n * hasNext: 是否还有下一页,布尔类型;用来解决这个小问题:比如列表共有20条数据,每页加载10条,共2页.如果只根据dataSize判断,则需翻到第三页才会知道无更多数据,如果传了hasNext,则翻到第二页即可显示无更多数据.\r\n * systime: 服务器时间(可空);用来解决这个小问题:当准备翻下一页时,数据库新增了几条记录,此时翻下一页,前面的几条数据会和上一页的重复;这里传入了systime,那么upCallback的page.time就会有值,把page.time传给服务器,让后台过滤新加入的那几条记录\r\n */\r\nMeScroll.prototype.endSuccess = function(dataSize, hasNext, systime) {\r\n\tlet me = this;\r\n\t// 结束下拉刷新\r\n\tif (me.isDownScrolling) {\r\n\t\tme.isDownEndSuccess = true\r\n\t\tme.endDownScroll();\r\n\t}\r\n\r\n\t// 结束上拉加载\r\n\tif (me.optUp.use) {\r\n\t\tlet isShowNoMore; // 是否已无更多数据\r\n\t\tif (dataSize != null) {\r\n\t\t\tlet pageNum = me.optUp.page.num; // 当前页码\r\n\t\t\tlet pageSize = me.optUp.page.size; // 每页长度\r\n\t\t\t// 如果是第一页\r\n\t\t\tif (pageNum === 1) {\r\n\t\t\t\tif (systime) me.optUp.page.time = systime; // 设置加载列表数据第一页的时间\r\n\t\t\t}\r\n\t\t\tif (dataSize < pageSize || hasNext === false) {\r\n\t\t\t\t// 返回的数据不满一页时,则说明已无更多数据\r\n\t\t\t\tme.optUp.hasNext = false;\r\n\t\t\t\tif (dataSize === 0 && pageNum === 1) {\r\n\t\t\t\t\t// 如果第一页无任何数据且配置了空布局\r\n\t\t\t\t\tisShowNoMore = false;\r\n\t\t\t\t\tme.showEmpty();\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// 总列表数少于配置的数量,则不显示无更多数据\r\n\t\t\t\t\tlet allDataSize = (pageNum - 1) * pageSize + dataSize;\r\n\t\t\t\t\tif (allDataSize < me.optUp.noMoreSize) {\r\n\t\t\t\t\t\tisShowNoMore = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tisShowNoMore = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tme.removeEmpty(); // 移除空布局\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// 还有下一页\r\n\t\t\t\tisShowNoMore = false;\r\n\t\t\t\tme.optUp.hasNext = true;\r\n\t\t\t\tme.removeEmpty(); // 移除空布局\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// 隐藏上拉\r\n\t\tme.endUpScroll(isShowNoMore);\r\n\t}\r\n}\r\n\r\n/* 回调失败,结束下拉刷新和上拉加载 */\r\nMeScroll.prototype.endErr = function(errDistance) {\r\n\t// 结束下拉,回调失败重置回原来的页码和时间\r\n\tif (this.isDownScrolling) {\r\n\t\tthis.isDownEndSuccess = false\r\n\t\tlet page = this.optUp.page;\r\n\t\tif (page && this.prePageNum) {\r\n\t\t\tpage.num = this.prePageNum;\r\n\t\t\tpage.time = this.prePageTime;\r\n\t\t}\r\n\t\tthis.endDownScroll();\r\n\t}\r\n\t// 结束上拉,回调失败重置回原来的页码\r\n\tif (this.isUpScrolling) {\r\n\t\tthis.optUp.page.num--;\r\n\t\tthis.endUpScroll(false);\r\n\t\t// 如果是mescroll-body,则需往回滚一定距离\r\n\t\tif(this.isScrollBody && errDistance !== 0){ // 不处理0\r\n\t\t\tif(!errDistance) errDistance = this.optUp.errDistance; // 不传,则取默认\r\n\t\t\tthis.scrollTo(this.getScrollTop() - errDistance, 0) // 往上回滚的距离\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* 显示空布局 */\r\nMeScroll.prototype.showEmpty = function() {\r\n\tthis.optUp.empty.use && this.optUp.empty.onShow && this.optUp.empty.onShow(true)\r\n}\r\n\r\n/* 移除空布局 */\r\nMeScroll.prototype.removeEmpty = function() {\r\n\tthis.optUp.empty.use && this.optUp.empty.onShow && this.optUp.empty.onShow(false)\r\n}\r\n\r\n/* 显示回到顶部的按钮 */\r\nMeScroll.prototype.showTopBtn = function() {\r\n\tif (!this.topBtnShow) {\r\n\t\tthis.topBtnShow = true;\r\n\t\tthis.optUp.toTop.onShow && this.optUp.toTop.onShow(true);\r\n\t}\r\n}\r\n\r\n/* 隐藏回到顶部的按钮 */\r\nMeScroll.prototype.hideTopBtn = function() {\r\n\tif (this.topBtnShow) {\r\n\t\tthis.topBtnShow = false;\r\n\t\tthis.optUp.toTop.onShow && this.optUp.toTop.onShow(false);\r\n\t}\r\n}\r\n\r\n/* 获取滚动条的位置 */\r\nMeScroll.prototype.getScrollTop = function() {\r\n\treturn this.scrollTop || 0\r\n}\r\n\r\n/* 记录滚动条的位置 */\r\nMeScroll.prototype.setScrollTop = function(y) {\r\n\tthis.scrollTop = y;\r\n}\r\n\r\n/* 滚动到指定位置 */\r\nMeScroll.prototype.scrollTo = function(y, t) {\r\n\tthis.myScrollTo && this.myScrollTo(y, t) // scrollview需自定义回到顶部方法\r\n}\r\n\r\n/* 自定义scrollTo */\r\nMeScroll.prototype.resetScrollTo = function(myScrollTo) {\r\n\tthis.myScrollTo = myScrollTo\r\n}\r\n\r\n/* 滚动条到底部的距离 */\r\nMeScroll.prototype.getScrollBottom = function() {\r\n\treturn this.getScrollHeight() - this.getClientHeight() - this.getScrollTop()\r\n}\r\n\r\n/* 计步器\r\n star: 开始值\r\n end: 结束值\r\n callback(step,timer): 回调step值,计步器timer,可自行通过window.clearInterval(timer)结束计步器;\r\n t: 计步时长,传0则直接回调end值;不传则默认300ms\r\n rate: 周期;不传则默认30ms计步一次\r\n * */\r\nMeScroll.prototype.getStep = function(star, end, callback, t, rate) {\r\n\tlet diff = end - star; // 差值\r\n\tif (t === 0 || diff === 0) {\r\n\t\tcallback && callback(end);\r\n\t\treturn;\r\n\t}\r\n\tt = t || 300; // 时长 300ms\r\n\trate = rate || 30; // 周期 30ms\r\n\tlet count = t / rate; // 次数\r\n\tlet step = diff / count; // 步长\r\n\tlet i = 0; // 计数\r\n\tlet timer = setInterval(function() {\r\n\t\tif (i < count - 1) {\r\n\t\t\tstar += step;\r\n\t\t\tcallback && callback(star, timer);\r\n\t\t\ti++;\r\n\t\t} else {\r\n\t\t\tcallback && callback(end, timer); // 最后一次直接设置end,避免计算误差\r\n\t\t\tclearInterval(timer);\r\n\t\t}\r\n\t}, rate);\r\n}\r\n\r\n/* 滚动容器的高度 */\r\nMeScroll.prototype.getClientHeight = function(isReal) {\r\n\tlet h = this.clientHeight || 0\r\n\tif (h === 0 && isReal !== true) { // 未获取到容器的高度,可临时取body的高度 (可能会有误差)\r\n\t\th = this.getBodyHeight()\r\n\t}\r\n\treturn h\r\n}\r\nMeScroll.prototype.setClientHeight = function(h) {\r\n\tthis.clientHeight = h;\r\n}\r\n\r\n/* 滚动内容的高度 */\r\nMeScroll.prototype.getScrollHeight = function() {\r\n\treturn this.scrollHeight || 0;\r\n}\r\nMeScroll.prototype.setScrollHeight = function(h) {\r\n\tthis.scrollHeight = h;\r\n}\r\n\r\n/* body的高度 */\r\nMeScroll.prototype.getBodyHeight = function() {\r\n\treturn this.bodyHeight || 0;\r\n}\r\nMeScroll.prototype.setBodyHeight = function(h) {\r\n\tthis.bodyHeight = h;\r\n}\r\n\r\n/* 阻止浏览器默认滚动事件 */\r\nMeScroll.prototype.preventDefault = function(e) {\r\n\t// 小程序不支持e.preventDefault, 已在wxs中禁止\r\n\t// app的bounce只能通过配置pages.json的style.app-plus.bounce为\"none\"来禁止, 或使用renderjs禁止\r\n\t// cancelable:是否可以被禁用; defaultPrevented:是否已经被禁用\r\n\tif (e && e.cancelable && !e.defaultPrevented) e.preventDefault()\r\n}","// 全局配置\r\n// mescroll-body 和 mescroll-uni 通用\r\nconst GlobalOption = {\r\n\tdown: {\r\n\t\t// 其他down的配置参数也可以写,这里只展示了常用的配置:\r\n\t\ttextInOffset: '下拉刷新', // 下拉的距离在offset范围内的提示文本\r\n\t\ttextOutOffset: '释放更新', // 下拉的距离大于offset范围的提示文本\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextSuccess: '加载成功', // 加载成功的文本\r\n\t\ttextErr: '加载失败', // 加载失败的文本\r\n\t\tbeforeEndDelay: 100, // 延时结束的时长 (显示加载成功/失败的时长)\r\n\t\toffset: 80, // 在列表顶部,下拉大于80px,松手即可触发下拉刷新的回调\r\n\t\tnative: false // 是否使用系统自带的下拉刷新; 默认false; 仅在mescroll-body生效 (值为true时,还需在pages配置enablePullDownRefresh:true;详请参考mescroll-native的案例)\r\n\t},\r\n\tup: {\r\n\t\t// 其他up的配置参数也可以写,这里只展示了常用的配置:\r\n\t\ttextLoading: '加载中 ...', // 加载中的提示文本\r\n\t\ttextNoMore: '-- END --', // 没有更多数据的提示文本\r\n\t\toffset: 150, // 距底部多远时,触发upCallback,仅mescroll-uni生效 ( mescroll-body配置的是pages.json的 onReachBottomDistance )\r\n\t\ttoTop: {\r\n\t\t\t// 回到顶部按钮,需配置src才显示\r\n\t\t\tsrc: \"\", // 图片路径 (建议放入static目录, 如 /static/img/mescroll-totop.png )\r\n\t\t\toffset: 1000, // 列表滚动多少距离才显示回到顶部按钮,默认1000px\r\n\t\t\tright: 20, // 到右边的距离, 默认20 (支持\"20rpx\", \"20px\", \"20%\"格式的值, 纯数字则默认单位rpx)\r\n\t\t\tbottom: 120, // 到底部的距离, 默认120 (支持\"20rpx\", \"20px\", \"20%\"格式的值, 纯数字则默认单位rpx)\r\n\t\t\twidth: 72 // 回到顶部图标的宽度, 默认72 (支持\"20rpx\", \"20px\", \"20%\"格式的值, 纯数字则默认单位rpx)\r\n\t\t},\r\n\t\tempty: {\r\n\t\t\tuse: true, // 是否显示空布局\r\n\t\t\ticon: \"\", // 图标路径 (建议放入static目录, 如 /static/img/mescroll-empty.png )\r\n\t\t\ttip: '~ 空空如也 ~' // 提示\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport default GlobalOption\r\n","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// 定义在wxs (含renderjs) 逻辑层的数据和方法, 与视图层相互通信\r\nconst WxsMixin = {\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\t// 传入wxs视图层的数据 (响应式)\r\n\t\t\twxsProp: {\r\n\t\t\t\toptDown:{}, // 下拉刷新的配置\r\n\t\t\t\tscrollTop:0, // 滚动条的距离\r\n\t\t\t\tbodyHeight:0, // body的高度\r\n\t\t\t\tisDownScrolling:false, // 是否正在下拉刷新中\r\n\t\t\t\tisUpScrolling:false, // 是否正在上拉加载中\r\n\t\t\t\tisScrollBody:true, // 是否为mescroll-body滚动\r\n\t\t\t\tisUpBoth:true, // 上拉加载时,是否同时可以下拉刷新\r\n\t\t\t\tt: 0 // 数据更新的标记 (只有数据更新了,才会触发wxs的Observer)\r\n\t\t\t},\r\n\t\t\t\r\n\t\t\t// 标记调用wxs视图层的方法\r\n\t\t\tcallProp: {\r\n\t\t\t\tcallType: '', // 方法名\r\n\t\t\t\tt: 0 // 数据更新的标记 (只有数据更新了,才会触发wxs的Observer)\r\n\t\t\t},\r\n\t\t\t\r\n\t\t\t// 不用wxs的平台使用此处的wxsBiz对象,抹平wxs的写法 (微信小程序和APP使用的wxsBiz对象是./wxs/wxs.wxs)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\t\t\r\n\t\t\t// 不用renderjs的平台使用此处的renderBiz对象,抹平renderjs的写法 (app 和 h5 使用的renderBiz对象是./wxs/renderjs.js)\r\n\r\n\t\t\trenderBiz: {\r\n\t\t\t\tpropObserver(){} // 抹平renderjs的写法\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t},\r\n\tmethods: {\r\n\t\t// wxs视图层调用逻辑层的回调\r\n\t\twxsCall(msg){\r\n\t\t\tif(msg.type === 'setWxsProp'){\r\n\t\t\t\t// 更新wxsProp数据 (值改变才触发更新)\r\n\t\t\t\tthis.wxsProp = {\r\n\t\t\t\t\toptDown: this.mescroll.optDown,\r\n\t\t\t\t\tscrollTop: this.mescroll.getScrollTop(),\r\n\t\t\t\t\tbodyHeight: this.mescroll.getBodyHeight(),\r\n\t\t\t\t\tisDownScrolling: this.mescroll.isDownScrolling,\r\n\t\t\t\t\tisUpScrolling: this.mescroll.isUpScrolling,\r\n\t\t\t\t\tisUpBoth: this.mescroll.optUp.isBoth,\r\n\t\t\t\t\tisScrollBody:this.mescroll.isScrollBody,\r\n\t\t\t\t\tt: Date.now()\r\n\t\t\t\t}\r\n\t\t\t}else if(msg.type === 'setLoadType'){\r\n\t\t\t\t// 设置inOffset,outOffset的状态\r\n\t\t\t\tthis.downLoadType = msg.downLoadType\r\n\t\t\t\t// 状态挂载到mescroll对象, 以便在其他组件中使用, 比如<me-video>中\r\n\t\t\t\tthis.$set(this.mescroll, 'downLoadType', this.downLoadType)\r\n\t\t\t\t// 重置是否加载成功的状态\r\n\t\t\t\tthis.$set(this.mescroll, 'isDownEndSuccess', null)\r\n\t\t\t}else if(msg.type === 'triggerDownScroll'){\r\n\t\t\t\t// 主动触发下拉刷新\r\n\t\t\t\tthis.mescroll.triggerDownScroll();\r\n\t\t\t}else if(msg.type === 'endDownScroll'){\r\n\t\t\t\t// 结束下拉刷新\r\n\t\t\t\tthis.mescroll.endDownScroll();\r\n\t\t\t}else if(msg.type === 'triggerUpScroll'){\r\n\t\t\t\t// 主动触发上拉加载\r\n\t\t\t\tthis.mescroll.triggerUpScroll(true);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\r\n\t\t// 配置主动触发wxs显示加载进度的回调\r\n\t\tthis.mescroll.optDown.afterLoading = ()=>{\r\n\t\t\tthis.callProp = {callType: \"showLoading\", t: Date.now()} // 触发wxs的方法 (值改变才触发更新)\r\n\t\t}\r\n\t\t// 配置主动触发wxs隐藏加载进度的回调\r\n\t\tthis.mescroll.optDown.afterEndDownScroll = ()=>{\r\n\t\t\tthis.callProp = {callType: \"endDownScroll\", t: Date.now()} // 触发wxs的方法 (值改变才触发更新)\r\n\t\t\tlet delay = 300 + (this.mescroll.optDown.beforeEndDelay || 0)\r\n\t\t\tsetTimeout(()=>{\r\n\t\t\t\tif(this.downLoadType === 4 || this.downLoadType === 0){\r\n\t\t\t\t\tthis.callProp = {callType: \"clearTransform\", t: Date.now()} // 触发wxs的方法 (值改变才触发更新)\r\n\t\t\t\t}\r\n\t\t\t\t// 状态挂载到mescroll对象, 以便在其他组件中使用, 比如<me-video>中\r\n\t\t\t\tthis.$set(this.mescroll, 'downLoadType', this.downLoadType)\r\n\t\t\t}, delay)\r\n\t\t}\r\n\t\t// 初始化wxs的数据\r\n\t\tthis.wxsCall({type: 'setWxsProp'})\r\n\r\n\t}\r\n}\r\n\r\nexport default WxsMixin;\r\n","import { initVueI18n } from '@dcloudio/uni-i18n';\nimport Vue from 'vue';\n\nlet realAtob;\n\nconst b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nconst b64re = /^(?:[A-Za-z\\d+/]{4})*?(?:[A-Za-z\\d+/]{2}(?:==)?|[A-Za-z\\d+/]{3}=?)?$/;\n\nif (typeof atob !== 'function') {\n realAtob = function (str) {\n str = String(str).replace(/[\\t\\n\\f\\r ]+/g, '');\n if (!b64re.test(str)) { throw new Error(\"Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.\") }\n\n // Adding the padding if missing, for semplicity\n str += '=='.slice(2 - (str.length & 3));\n var bitmap; var result = ''; var r1; var r2; var i = 0;\n for (; i < str.length;) {\n bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 |\n (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));\n\n result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255)\n : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255)\n : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);\n }\n return result\n };\n} else {\n // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法\n realAtob = atob;\n}\n\nfunction b64DecodeUnicode (str) {\n return decodeURIComponent(realAtob(str).split('').map(function (c) {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)\n }).join(''))\n}\n\nfunction getCurrentUserInfo () {\n const token = ( wx).getStorageSync('uni_id_token') || '';\n const tokenArr = token.split('.');\n if (!token || tokenArr.length !== 3) {\n return {\n uid: null,\n role: [],\n permission: [],\n tokenExpired: 0\n }\n }\n let userInfo;\n try {\n userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));\n } catch (error) {\n throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message)\n }\n userInfo.tokenExpired = userInfo.exp * 1000;\n delete userInfo.exp;\n delete userInfo.iat;\n return userInfo\n}\n\nfunction uniIdMixin (Vue) {\n Vue.prototype.uniIDHasRole = function (roleId) {\n const {\n role\n } = getCurrentUserInfo();\n return role.indexOf(roleId) > -1\n };\n Vue.prototype.uniIDHasPermission = function (permissionId) {\n const {\n permission\n } = getCurrentUserInfo();\n return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1\n };\n Vue.prototype.uniIDTokenValid = function () {\n const {\n tokenExpired\n } = getCurrentUserInfo();\n return tokenExpired > Date.now()\n };\n}\n\nconst _toString = Object.prototype.toString;\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isFn (fn) {\n return typeof fn === 'function'\n}\n\nfunction isStr (str) {\n return typeof str === 'string'\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\nfunction noop () { }\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n const cache = Object.create(null);\n return function cachedFn (str) {\n const hit = cache[str];\n return hit || (cache[str] = fn(str))\n }\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cached((str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\n});\n\nfunction sortObject (obj) {\n const sortObj = {};\n if (isPlainObject(obj)) {\n Object.keys(obj).sort().forEach(key => {\n sortObj[key] = obj[key];\n });\n }\n return !Object.keys(sortObj) ? obj : sortObj\n}\n\nconst HOOKS = [\n 'invoke',\n 'success',\n 'fail',\n 'complete',\n 'returnValue'\n];\n\nconst globalInterceptors = {};\nconst scopedInterceptors = {};\n\nfunction mergeHook (parentVal, childVal) {\n const res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n const res = [];\n for (let 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\nfunction removeHook (hooks, hook) {\n const index = hooks.indexOf(hook);\n if (index !== -1) {\n hooks.splice(index, 1);\n }\n}\n\nfunction mergeInterceptorHook (interceptor, option) {\n Object.keys(option).forEach(hook => {\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\n }\n });\n}\n\nfunction removeInterceptorHook (interceptor, option) {\n if (!interceptor || !option) {\n return\n }\n Object.keys(option).forEach(hook => {\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\n removeHook(interceptor[hook], option[hook]);\n }\n });\n}\n\nfunction addInterceptor (method, option) {\n if (typeof method === 'string' && isPlainObject(option)) {\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\n } else if (isPlainObject(method)) {\n mergeInterceptorHook(globalInterceptors, method);\n }\n}\n\nfunction removeInterceptor (method, option) {\n if (typeof method === 'string') {\n if (isPlainObject(option)) {\n removeInterceptorHook(scopedInterceptors[method], option);\n } else {\n delete scopedInterceptors[method];\n }\n } else if (isPlainObject(method)) {\n removeInterceptorHook(globalInterceptors, method);\n }\n}\n\nfunction wrapperHook (hook) {\n return function (data) {\n return hook(data) || data\n }\n}\n\nfunction isPromise (obj) {\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\n}\n\nfunction queue (hooks, data) {\n let promise = false;\n for (let i = 0; i < hooks.length; i++) {\n const hook = hooks[i];\n if (promise) {\n promise = Promise.resolve(wrapperHook(hook));\n } else {\n const res = hook(data);\n if (isPromise(res)) {\n promise = Promise.resolve(res);\n }\n if (res === false) {\n return {\n then () { }\n }\n }\n }\n }\n return promise || {\n then (callback) {\n return callback(data)\n }\n }\n}\n\nfunction wrapperOptions (interceptor, options = {}) {\n ['success', 'fail', 'complete'].forEach(name => {\n if (Array.isArray(interceptor[name])) {\n const oldCallback = options[name];\n options[name] = function callbackInterceptor (res) {\n queue(interceptor[name], res).then((res) => {\n /* eslint-disable no-mixed-operators */\n return isFn(oldCallback) && oldCallback(res) || res\n });\n };\n }\n });\n return options\n}\n\nfunction wrapperReturnValue (method, returnValue) {\n const returnValueHooks = [];\n if (Array.isArray(globalInterceptors.returnValue)) {\n returnValueHooks.push(...globalInterceptors.returnValue);\n }\n const interceptor = scopedInterceptors[method];\n if (interceptor && Array.isArray(interceptor.returnValue)) {\n returnValueHooks.push(...interceptor.returnValue);\n }\n returnValueHooks.forEach(hook => {\n returnValue = hook(returnValue) || returnValue;\n });\n return returnValue\n}\n\nfunction getApiInterceptorHooks (method) {\n const interceptor = Object.create(null);\n Object.keys(globalInterceptors).forEach(hook => {\n if (hook !== 'returnValue') {\n interceptor[hook] = globalInterceptors[hook].slice();\n }\n });\n const scopedInterceptor = scopedInterceptors[method];\n if (scopedInterceptor) {\n Object.keys(scopedInterceptor).forEach(hook => {\n if (hook !== 'returnValue') {\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\n }\n });\n }\n return interceptor\n}\n\nfunction invokeApi (method, api, options, ...params) {\n const interceptor = getApiInterceptorHooks(method);\n if (interceptor && Object.keys(interceptor).length) {\n if (Array.isArray(interceptor.invoke)) {\n const res = queue(interceptor.invoke, options);\n return res.then((options) => {\n return api(wrapperOptions(interceptor, options), ...params)\n })\n } else {\n return api(wrapperOptions(interceptor, options), ...params)\n }\n }\n return api(options, ...params)\n}\n\nconst promiseInterceptor = {\n returnValue (res) {\n if (!isPromise(res)) {\n return res\n }\n return new Promise((resolve, reject) => {\n res.then(res => {\n if (res[0]) {\n reject(res[0]);\n } else {\n resolve(res[1]);\n }\n });\n })\n }\n};\n\nconst SYNC_API_RE =\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/;\n\nconst CONTEXT_API_RE = /^create|Manager$/;\n\n// Context例外情况\nconst CONTEXT_API_RE_EXC = ['createBLEConnection'];\n\n// 同步例外情况\nconst ASYNC_API = ['createBLEConnection', 'createPushMessage'];\n\nconst CALLBACK_API_RE = /^on|^off/;\n\nfunction isContextApi (name) {\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\n}\nfunction isSyncApi (name) {\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\n}\n\nfunction isCallbackApi (name) {\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\n}\n\nfunction handlePromise (promise) {\n return promise.then(data => {\n return [null, data]\n })\n .catch(err => [err])\n}\n\nfunction shouldPromise (name) {\n if (\n isContextApi(name) ||\n isSyncApi(name) ||\n isCallbackApi(name)\n ) {\n return false\n }\n return true\n}\n\n/* eslint-disable no-extend-native */\nif (!Promise.prototype.finally) {\n Promise.prototype.finally = function (callback) {\n const promise = this.constructor;\n return this.then(\n value => promise.resolve(callback()).then(() => value),\n reason => promise.resolve(callback()).then(() => {\n throw reason\n })\n )\n };\n}\n\nfunction promisify (name, api) {\n if (!shouldPromise(name) || !isFn(api)) {\n return api\n }\n return function promiseApi (options = {}, ...params) {\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\n }\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\n invokeApi(name, api, Object.assign({}, options, {\n success: resolve,\n fail: reject\n }), ...params);\n })))\n }\n}\n\nconst EPS = 1e-4;\nconst BASE_DEVICE_WIDTH = 750;\nlet isIOS = false;\nlet deviceWidth = 0;\nlet deviceDPR = 0;\n\nfunction checkDeviceWidth () {\n const {\n platform,\n pixelRatio,\n windowWidth\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\n\n deviceWidth = windowWidth;\n deviceDPR = pixelRatio;\n isIOS = platform === 'ios';\n}\n\nfunction upx2px (number, newDeviceWidth) {\n if (deviceWidth === 0) {\n checkDeviceWidth();\n }\n\n number = Number(number);\n if (number === 0) {\n return 0\n }\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\n if (result < 0) {\n result = -result;\n }\n result = Math.floor(result + EPS);\n if (result === 0) {\n if (deviceDPR === 1 || !isIOS) {\n result = 1;\n } else {\n result = 0.5;\n }\n }\n return number < 0 ? -result : result\n}\n\nconst LOCALE_ZH_HANS = 'zh-Hans';\nconst LOCALE_ZH_HANT = 'zh-Hant';\nconst LOCALE_EN = 'en';\nconst LOCALE_FR = 'fr';\nconst LOCALE_ES = 'es';\n\nconst messages = {};\n\nlet locale;\n\n{\n locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;\n}\n\nfunction initI18nMessages () {\n if (!isEnableLocale()) {\n return\n }\n const localeKeys = Object.keys(__uniConfig.locales);\n if (localeKeys.length) {\n localeKeys.forEach((locale) => {\n const curMessages = messages[locale];\n const userMessages = __uniConfig.locales[locale];\n if (curMessages) {\n Object.assign(curMessages, userMessages);\n } else {\n messages[locale] = userMessages;\n }\n });\n }\n}\n\ninitI18nMessages();\n\nconst i18n = initVueI18n(\n locale,\n {}\n);\nconst t = i18n.t;\nconst i18nMixin = (i18n.mixin = {\n beforeCreate () {\n const unwatch = i18n.i18n.watchLocale(() => {\n this.$forceUpdate();\n });\n this.$once('hook:beforeDestroy', function () {\n unwatch();\n });\n },\n methods: {\n $$t (key, values) {\n return t(key, values)\n }\n }\n});\nconst setLocale = i18n.setLocale;\nconst getLocale = i18n.getLocale;\n\nfunction initAppLocale (Vue, appVm, locale) {\n const state = Vue.observable({\n locale: locale || i18n.getLocale()\n });\n const localeWatchers = [];\n appVm.$watchLocale = fn => {\n localeWatchers.push(fn);\n };\n Object.defineProperty(appVm, '$locale', {\n get () {\n return state.locale\n },\n set (v) {\n state.locale = v;\n localeWatchers.forEach(watch => watch(v));\n }\n });\n}\n\nfunction isEnableLocale () {\n return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length\n}\n\nfunction include (str, parts) {\n return !!parts.find((part) => str.indexOf(part) !== -1)\n}\n\nfunction startsWith (str, parts) {\n return parts.find((part) => str.indexOf(part) === 0)\n}\n\nfunction normalizeLocale (locale, messages) {\n if (!locale) {\n return\n }\n locale = locale.trim().replace(/_/g, '-');\n if (messages && messages[locale]) {\n return locale\n }\n locale = locale.toLowerCase();\n if (locale === 'chinese') {\n // 支付宝\n return LOCALE_ZH_HANS\n }\n if (locale.indexOf('zh') === 0) {\n if (locale.indexOf('-hans') > -1) {\n return LOCALE_ZH_HANS\n }\n if (locale.indexOf('-hant') > -1) {\n return LOCALE_ZH_HANT\n }\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\n return LOCALE_ZH_HANT\n }\n return LOCALE_ZH_HANS\n }\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\n if (lang) {\n return lang\n }\n}\n// export function initI18n() {\n// const localeKeys = Object.keys(__uniConfig.locales || {})\n// if (localeKeys.length) {\n// localeKeys.forEach((locale) =>\n// i18n.add(locale, __uniConfig.locales[locale])\n// )\n// }\n// }\n\nfunction getLocale$1 () {\n // 优先使用 $locale\n if (isFn(getApp)) {\n const app = getApp({\n allowDefault: true\n });\n if (app && app.$vm) {\n return app.$vm.$locale\n }\n }\n return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN\n}\n\nfunction setLocale$1 (locale) {\n const app = isFn(getApp) ? getApp() : false;\n if (!app) {\n return false\n }\n const oldLocale = app.$vm.$locale;\n if (oldLocale !== locale) {\n app.$vm.$locale = locale;\n onLocaleChangeCallbacks.forEach((fn) => fn({\n locale\n }));\n return true\n }\n return false\n}\n\nconst onLocaleChangeCallbacks = [];\nfunction onLocaleChange (fn) {\n if (onLocaleChangeCallbacks.indexOf(fn) === -1) {\n onLocaleChangeCallbacks.push(fn);\n }\n}\n\nif (typeof global !== 'undefined') {\n global.getLocale = getLocale$1;\n}\n\nconst interceptors = {\n promiseInterceptor\n};\n\nvar baseApi = /*#__PURE__*/Object.freeze({\n __proto__: null,\n upx2px: upx2px,\n getLocale: getLocale$1,\n setLocale: setLocale$1,\n onLocaleChange: onLocaleChange,\n addInterceptor: addInterceptor,\n removeInterceptor: removeInterceptor,\n interceptors: interceptors\n});\n\nfunction findExistsPageIndex (url) {\n const pages = getCurrentPages();\n let len = pages.length;\n while (len--) {\n const page = pages[len];\n if (page.$page && page.$page.fullPath === url) {\n return len\n }\n }\n return -1\n}\n\nvar redirectTo = {\n name (fromArgs) {\n if (fromArgs.exists === 'back' && fromArgs.delta) {\n return 'navigateBack'\n }\n return 'redirectTo'\n },\n args (fromArgs) {\n if (fromArgs.exists === 'back' && fromArgs.url) {\n const existsPageIndex = findExistsPageIndex(fromArgs.url);\n if (existsPageIndex !== -1) {\n const delta = getCurrentPages().length - 1 - existsPageIndex;\n if (delta > 0) {\n fromArgs.delta = delta;\n }\n }\n }\n }\n};\n\nvar previewImage = {\n args (fromArgs) {\n let currentIndex = parseInt(fromArgs.current);\n if (isNaN(currentIndex)) {\n return\n }\n const urls = fromArgs.urls;\n if (!Array.isArray(urls)) {\n return\n }\n const len = urls.length;\n if (!len) {\n return\n }\n if (currentIndex < 0) {\n currentIndex = 0;\n } else if (currentIndex >= len) {\n currentIndex = len - 1;\n }\n if (currentIndex > 0) {\n fromArgs.current = urls[currentIndex];\n fromArgs.urls = urls.filter(\n (item, index) => index < currentIndex ? item !== urls[currentIndex] : true\n );\n } else {\n fromArgs.current = urls[0];\n }\n return {\n indicator: false,\n loop: false\n }\n }\n};\n\nconst UUID_KEY = '__DC_STAT_UUID';\nlet deviceId;\nfunction useDeviceId (result) {\n deviceId = deviceId || wx.getStorageSync(UUID_KEY);\n if (!deviceId) {\n deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);\n wx.setStorage({\n key: UUID_KEY,\n data: deviceId\n });\n }\n result.deviceId = deviceId;\n}\n\nfunction addSafeAreaInsets (result) {\n if (result.safeArea) {\n const safeArea = result.safeArea;\n result.safeAreaInsets = {\n top: safeArea.top,\n left: safeArea.left,\n right: result.windowWidth - safeArea.right,\n bottom: result.screenHeight - safeArea.bottom\n };\n }\n}\n\nfunction populateParameters (result) {\n const {\n brand = '', model = '', system = '',\n language = '', theme, version,\n platform, fontSizeSetting,\n SDKVersion, pixelRatio, deviceOrientation\n } = result;\n // const isQuickApp = \"mp-weixin\".indexOf('quickapp-webview') !== -1\n\n // osName osVersion\n let osName = '';\n let osVersion = '';\n {\n osName = system.split(' ')[0] || '';\n osVersion = system.split(' ')[1] || '';\n }\n let hostVersion = version;\n\n // deviceType\n const deviceType = getGetDeviceType(result, model);\n\n // deviceModel\n const deviceBrand = getDeviceBrand(brand);\n\n // hostName\n const _hostName = getHostName(result);\n\n // deviceOrientation\n let _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持\n\n // devicePixelRatio\n let _devicePixelRatio = pixelRatio;\n\n // SDKVersion\n let _SDKVersion = SDKVersion;\n\n // hostLanguage\n const hostLanguage = language.replace(/_/g, '-');\n\n // wx.getAccountInfoSync\n\n const parameters = {\n appId: process.env.UNI_APP_ID,\n appName: process.env.UNI_APP_NAME,\n appVersion: process.env.UNI_APP_VERSION_NAME,\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\n appLanguage: getAppLanguage(hostLanguage),\n uniCompileVersion: process.env.UNI_COMPILER_VERSION,\n uniRuntimeVersion: process.env.UNI_COMPILER_VERSION,\n uniPlatform: process.env.UNI_SUB_PLATFORM || process.env.UNI_PLATFORM,\n deviceBrand,\n deviceModel: model,\n deviceType,\n devicePixelRatio: _devicePixelRatio,\n deviceOrientation: _deviceOrientation,\n osName: osName.toLocaleLowerCase(),\n osVersion,\n hostTheme: theme,\n hostVersion,\n hostLanguage,\n hostName: _hostName,\n hostSDKVersion: _SDKVersion,\n hostFontSizeSetting: fontSizeSetting,\n windowTop: 0,\n windowBottom: 0,\n // TODO\n osLanguage: undefined,\n osTheme: undefined,\n ua: undefined,\n hostPackageName: undefined,\n browserName: undefined,\n browserVersion: undefined\n };\n\n Object.assign(result, parameters);\n}\n\nfunction getGetDeviceType (result, model) {\n let deviceType = result.deviceType || 'phone';\n {\n const deviceTypeMaps = {\n ipad: 'pad',\n windows: 'pc',\n mac: 'pc'\n };\n const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);\n const _model = model.toLocaleLowerCase();\n for (let index = 0; index < deviceTypeMapsKeys.length; index++) {\n const _m = deviceTypeMapsKeys[index];\n if (_model.indexOf(_m) !== -1) {\n deviceType = deviceTypeMaps[_m];\n break\n }\n }\n }\n return deviceType\n}\n\nfunction getDeviceBrand (brand) {\n let deviceBrand = brand;\n if (deviceBrand) {\n deviceBrand = brand.toLocaleLowerCase();\n }\n return deviceBrand\n}\n\nfunction getAppLanguage (defaultLanguage) {\n return getLocale$1\n ? getLocale$1()\n : defaultLanguage\n}\n\nfunction getHostName (result) {\n const _platform = 'WeChat' ;\n let _hostName = result.hostName || _platform; // mp-jd\n {\n if (result.environment) {\n _hostName = result.environment;\n } else if (result.host && result.host.env) {\n _hostName = result.host.env;\n }\n }\n\n return _hostName\n}\n\nvar getSystemInfo = {\n returnValue: function (result) {\n useDeviceId(result);\n addSafeAreaInsets(result);\n populateParameters(result);\n }\n};\n\nvar showActionSheet = {\n args (fromArgs) {\n if (typeof fromArgs === 'object') {\n fromArgs.alertText = fromArgs.title;\n }\n }\n};\n\nvar getAppBaseInfo = {\n returnValue: function (result) {\n const { version, language, SDKVersion, theme } = result;\n\n const _hostName = getHostName(result);\n\n const hostLanguage = language.replace('_', '-');\n\n result = sortObject(Object.assign(result, {\n appId: process.env.UNI_APP_ID,\n appName: process.env.UNI_APP_NAME,\n appVersion: process.env.UNI_APP_VERSION_NAME,\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\n appLanguage: getAppLanguage(hostLanguage),\n hostVersion: version,\n hostLanguage,\n hostName: _hostName,\n hostSDKVersion: SDKVersion,\n hostTheme: theme\n }));\n }\n};\n\nvar getDeviceInfo = {\n returnValue: function (result) {\n const { brand, model } = result;\n const deviceType = getGetDeviceType(result, model);\n const deviceBrand = getDeviceBrand(brand);\n useDeviceId(result);\n\n result = sortObject(Object.assign(result, {\n deviceType,\n deviceBrand,\n deviceModel: model\n }));\n }\n};\n\nvar getWindowInfo = {\n returnValue: function (result) {\n addSafeAreaInsets(result);\n\n result = sortObject(Object.assign(result, {\n windowTop: 0,\n windowBottom: 0\n }));\n }\n};\n\nvar getAppAuthorizeSetting = {\n returnValue: function (result) {\n const { locationReducedAccuracy } = result;\n\n result.locationAccuracy = 'unsupported';\n if (locationReducedAccuracy === true) {\n result.locationAccuracy = 'reduced';\n } else if (locationReducedAccuracy === false) {\n result.locationAccuracy = 'full';\n }\n }\n};\n\n// import navigateTo from 'uni-helpers/navigate-to'\n\nconst protocols = {\n redirectTo,\n // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP\n previewImage,\n getSystemInfo,\n getSystemInfoSync: getSystemInfo,\n showActionSheet,\n getAppBaseInfo,\n getDeviceInfo,\n getWindowInfo,\n getAppAuthorizeSetting\n};\nconst todos = [\n 'vibrate',\n 'preloadPage',\n 'unPreloadPage',\n 'loadSubPackage'\n];\nconst canIUses = [];\n\nconst CALLBACKS = ['success', 'fail', 'cancel', 'complete'];\n\nfunction processCallback (methodName, method, returnValue) {\n return function (res) {\n return method(processReturnValue(methodName, res, returnValue))\n }\n}\n\nfunction processArgs (methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {\n if (isPlainObject(fromArgs)) { // 一般 api 的参数解析\n const toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值\n if (isFn(argsOption)) {\n argsOption = argsOption(fromArgs, toArgs) || {};\n }\n for (const key in fromArgs) {\n if (hasOwn(argsOption, key)) {\n let keyOption = argsOption[key];\n if (isFn(keyOption)) {\n keyOption = keyOption(fromArgs[key], fromArgs, toArgs);\n }\n if (!keyOption) { // 不支持的参数\n console.warn(`The '${methodName}' method of platform '微信小程序' does not support option '${key}'`);\n } else if (isStr(keyOption)) { // 重写参数 key\n toArgs[keyOption] = fromArgs[key];\n } else if (isPlainObject(keyOption)) { // {name:newName,value:value}可重新指定参数 key:value\n toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;\n }\n } else if (CALLBACKS.indexOf(key) !== -1) {\n if (isFn(fromArgs[key])) {\n toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\n }\n } else {\n if (!keepFromArgs) {\n toArgs[key] = fromArgs[key];\n }\n }\n }\n return toArgs\n } else if (isFn(fromArgs)) {\n fromArgs = processCallback(methodName, fromArgs, returnValue);\n }\n return fromArgs\n}\n\nfunction processReturnValue (methodName, res, returnValue, keepReturnValue = false) {\n if (isFn(protocols.returnValue)) { // 处理通用 returnValue\n res = protocols.returnValue(methodName, res);\n }\n return processArgs(methodName, res, returnValue, {}, keepReturnValue)\n}\n\nfunction wrapper (methodName, method) {\n if (hasOwn(protocols, methodName)) {\n const protocol = protocols[methodName];\n if (!protocol) { // 暂不支持的 api\n return function () {\n console.error(`Platform '微信小程序' does not support '${methodName}'.`);\n }\n }\n return function (arg1, arg2) { // 目前 api 最多两个参数\n let options = protocol;\n if (isFn(protocol)) {\n options = protocol(arg1);\n }\n\n arg1 = processArgs(methodName, arg1, options.args, options.returnValue);\n\n const args = [arg1];\n if (typeof arg2 !== 'undefined') {\n args.push(arg2);\n }\n if (isFn(options.name)) {\n methodName = options.name(arg1);\n } else if (isStr(options.name)) {\n methodName = options.name;\n }\n const returnValue = wx[methodName].apply(wx, args);\n if (isSyncApi(methodName)) { // 同步 api\n return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName))\n }\n return returnValue\n }\n }\n return method\n}\n\nconst todoApis = Object.create(null);\n\nconst TODOS = [\n 'onTabBarMidButtonTap',\n 'subscribePush',\n 'unsubscribePush',\n 'onPush',\n 'offPush',\n 'share'\n];\n\nfunction createTodoApi (name) {\n return function todoApi ({\n fail,\n complete\n }) {\n const res = {\n errMsg: `${name}:fail method '${name}' not supported`\n };\n isFn(fail) && fail(res);\n isFn(complete) && complete(res);\n }\n}\n\nTODOS.forEach(function (name) {\n todoApis[name] = createTodoApi(name);\n});\n\nvar providers = {\n oauth: ['weixin'],\n share: ['weixin'],\n payment: ['wxpay'],\n push: ['weixin']\n};\n\nfunction getProvider ({\n service,\n success,\n fail,\n complete\n}) {\n let res = false;\n if (providers[service]) {\n res = {\n errMsg: 'getProvider:ok',\n service,\n provider: providers[service]\n };\n isFn(success) && success(res);\n } else {\n res = {\n errMsg: 'getProvider:fail service not found'\n };\n isFn(fail) && fail(res);\n }\n isFn(complete) && complete(res);\n}\n\nvar extraApi = /*#__PURE__*/Object.freeze({\n __proto__: null,\n getProvider: getProvider\n});\n\nconst getEmitter = (function () {\n let Emitter;\n return function getUniEmitter () {\n if (!Emitter) {\n Emitter = new Vue();\n }\n return Emitter\n }\n})();\n\nfunction apply (ctx, method, args) {\n return ctx[method].apply(ctx, args)\n}\n\nfunction $on () {\n return apply(getEmitter(), '$on', [...arguments])\n}\nfunction $off () {\n return apply(getEmitter(), '$off', [...arguments])\n}\nfunction $once () {\n return apply(getEmitter(), '$once', [...arguments])\n}\nfunction $emit () {\n return apply(getEmitter(), '$emit', [...arguments])\n}\n\nvar eventApi = /*#__PURE__*/Object.freeze({\n __proto__: null,\n $on: $on,\n $off: $off,\n $once: $once,\n $emit: $emit\n});\n\n/**\n * 框架内 try-catch\n */\n/**\n * 开发者 try-catch\n */\nfunction tryCatch (fn) {\n return function () {\n try {\n return fn.apply(fn, arguments)\n } catch (e) {\n // TODO\n console.error(e);\n }\n }\n}\n\nfunction getApiCallbacks (params) {\n const apiCallbacks = {};\n for (const name in params) {\n const param = params[name];\n if (isFn(param)) {\n apiCallbacks[name] = tryCatch(param);\n delete params[name];\n }\n }\n return apiCallbacks\n}\n\nlet cid;\nlet cidErrMsg;\nlet enabled;\n\nfunction normalizePushMessage (message) {\n try {\n return JSON.parse(message)\n } catch (e) {}\n return message\n}\n\nfunction invokePushCallback (\n args\n) {\n if (args.type === 'enabled') {\n enabled = true;\n } else if (args.type === 'clientId') {\n cid = args.cid;\n cidErrMsg = args.errMsg;\n invokeGetPushCidCallbacks(cid, args.errMsg);\n } else if (args.type === 'pushMsg') {\n const message = {\n type: 'receive',\n data: normalizePushMessage(args.message)\n };\n for (let i = 0; i < onPushMessageCallbacks.length; i++) {\n const callback = onPushMessageCallbacks[i];\n callback(message);\n // 该消息已被阻止\n if (message.stopped) {\n break\n }\n }\n } else if (args.type === 'click') {\n onPushMessageCallbacks.forEach((callback) => {\n callback({\n type: 'click',\n data: normalizePushMessage(args.message)\n });\n });\n }\n}\n\nconst getPushCidCallbacks = [];\n\nfunction invokeGetPushCidCallbacks (cid, errMsg) {\n getPushCidCallbacks.forEach((callback) => {\n callback(cid, errMsg);\n });\n getPushCidCallbacks.length = 0;\n}\n\nfunction getPushClientId (args) {\n if (!isPlainObject(args)) {\n args = {};\n }\n const {\n success,\n fail,\n complete\n } = getApiCallbacks(args);\n const hasSuccess = isFn(success);\n const hasFail = isFn(fail);\n const hasComplete = isFn(complete);\n\n Promise.resolve().then(() => {\n if (typeof enabled === 'undefined') {\n enabled = false;\n cid = '';\n cidErrMsg = 'uniPush is not enabled';\n }\n getPushCidCallbacks.push((cid, errMsg) => {\n let res;\n if (cid) {\n res = {\n errMsg: 'getPushClientId:ok',\n cid\n };\n hasSuccess && success(res);\n } else {\n res = {\n errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')\n };\n hasFail && fail(res);\n }\n hasComplete && complete(res);\n });\n if (typeof cid !== 'undefined') {\n invokeGetPushCidCallbacks(cid, cidErrMsg);\n }\n });\n}\n\nconst onPushMessageCallbacks = [];\n// 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现\nconst onPushMessage = (fn) => {\n if (onPushMessageCallbacks.indexOf(fn) === -1) {\n onPushMessageCallbacks.push(fn);\n }\n};\n\nconst offPushMessage = (fn) => {\n if (!fn) {\n onPushMessageCallbacks.length = 0;\n } else {\n const index = onPushMessageCallbacks.indexOf(fn);\n if (index > -1) {\n onPushMessageCallbacks.splice(index, 1);\n }\n }\n};\n\nlet baseInfo = wx.getAppBaseInfo && wx.getAppBaseInfo();\nif (!baseInfo) {\n baseInfo = wx.getSystemInfoSync();\n}\nconst host = baseInfo ? baseInfo.host : null;\nconst shareVideoMessage =\n host && host.env === 'SAAASDK' ? wx.miniapp.shareVideoMessage : wx.shareVideoMessage;\n\nvar api = /*#__PURE__*/Object.freeze({\n __proto__: null,\n shareVideoMessage: shareVideoMessage,\n getPushClientId: getPushClientId,\n onPushMessage: onPushMessage,\n offPushMessage: offPushMessage,\n invokePushCallback: invokePushCallback\n});\n\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\n\nfunction findVmByVueId (vm, vuePid) {\n const $children = vm.$children;\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\n for (let i = $children.length - 1; i >= 0; i--) {\n const childVm = $children[i];\n if (childVm.$scope._$vueId === vuePid) {\n return childVm\n }\n }\n // 反向递归查找\n let parentVm;\n for (let i = $children.length - 1; i >= 0; i--) {\n parentVm = findVmByVueId($children[i], vuePid);\n if (parentVm) {\n return parentVm\n }\n }\n}\n\nfunction initBehavior (options) {\n return Behavior(options)\n}\n\nfunction isPage () {\n return !!this.route\n}\n\nfunction initRelation (detail) {\n this.triggerEvent('__l', detail);\n}\n\nfunction selectAllComponents (mpInstance, selector, $refs) {\n const components = mpInstance.selectAllComponents(selector) || [];\n components.forEach(component => {\n const ref = component.dataset.ref;\n $refs[ref] = component.$vm || toSkip(component);\n {\n if (component.dataset.vueGeneric === 'scoped') {\n component.selectAllComponents('.scoped-ref').forEach(scopedComponent => {\n selectAllComponents(scopedComponent, selector, $refs);\n });\n }\n }\n });\n}\n\nfunction syncRefs (refs, newRefs) {\n const oldKeys = new Set(...Object.keys(refs));\n const newKeys = Object.keys(newRefs);\n newKeys.forEach(key => {\n const oldValue = refs[key];\n const newValue = newRefs[key];\n if (Array.isArray(oldValue) && Array.isArray(newValue) && oldValue.length === newValue.length && newValue.every(value => oldValue.includes(value))) {\n return\n }\n refs[key] = newValue;\n oldKeys.delete(key);\n });\n oldKeys.forEach(key => {\n delete refs[key];\n });\n return refs\n}\n\nfunction initRefs (vm) {\n const mpInstance = vm.$scope;\n const refs = {};\n Object.defineProperty(vm, '$refs', {\n get () {\n const $refs = {};\n selectAllComponents(mpInstance, '.vue-ref', $refs);\n // TODO 暂不考虑 for 中的 scoped\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for') || [];\n forComponents.forEach(component => {\n const ref = component.dataset.ref;\n if (!$refs[ref]) {\n $refs[ref] = [];\n }\n $refs[ref].push(component.$vm || toSkip(component));\n });\n return syncRefs(refs, $refs)\n }\n });\n}\n\nfunction handleLink (event) {\n const {\n vuePid,\n vueOptions\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\n\n let parentVm;\n\n if (vuePid) {\n parentVm = findVmByVueId(this.$vm, vuePid);\n }\n\n if (!parentVm) {\n parentVm = this.$vm;\n }\n\n vueOptions.parent = parentVm;\n}\n\nfunction markMPComponent (component) {\n // 在 Vue 中标记为小程序组件\n const IS_MP = '__v_isMPComponent';\n Object.defineProperty(component, IS_MP, {\n configurable: true,\n enumerable: false,\n value: true\n });\n return component\n}\n\nfunction toSkip (obj) {\n const OB = '__ob__';\n const SKIP = '__v_skip';\n if (isObject(obj) && Object.isExtensible(obj)) {\n // 避免被 @vue/composition-api 观测\n Object.defineProperty(obj, OB, {\n configurable: true,\n enumerable: false,\n value: {\n [SKIP]: true\n }\n });\n }\n return obj\n}\n\nconst MPPage = Page;\nconst MPComponent = Component;\n\nconst customizeRE = /:/g;\n\nconst customize = cached((str) => {\n return camelize(str.replace(customizeRE, '-'))\n});\n\nfunction initTriggerEvent (mpInstance) {\n const oldTriggerEvent = mpInstance.triggerEvent;\n const newTriggerEvent = function (event, ...args) {\n // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件\n if (this.$vm || (this.dataset && this.dataset.comType)) {\n event = customize(event);\n } else {\n // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目\n const newEvent = customize(event);\n if (newEvent !== event) {\n oldTriggerEvent.apply(this, [newEvent, ...args]);\n }\n }\n return oldTriggerEvent.apply(this, [event, ...args])\n };\n try {\n // 京东小程序 triggerEvent 为只读\n mpInstance.triggerEvent = newTriggerEvent;\n } catch (error) {\n mpInstance._triggerEvent = newTriggerEvent;\n }\n}\n\nfunction initHook (name, options, isComponent) {\n const oldHook = options[name];\n options[name] = function (...args) {\n markMPComponent(this);\n initTriggerEvent(this);\n if (oldHook) {\n return oldHook.apply(this, args)\n }\n };\n}\nif (!MPPage.__$wrappered) {\n MPPage.__$wrappered = true;\n Page = function (options = {}) {\n initHook('onLoad', options);\n return MPPage(options)\n };\n Page.after = MPPage.after;\n\n Component = function (options = {}) {\n initHook('created', options);\n return MPComponent(options)\n };\n}\n\nconst PAGE_EVENT_HOOKS = [\n 'onPullDownRefresh',\n 'onReachBottom',\n 'onAddToFavorites',\n 'onShareTimeline',\n 'onShareAppMessage',\n 'onPageScroll',\n 'onResize',\n 'onTabItemTap'\n];\n\nfunction initMocks (vm, mocks) {\n const mpInstance = vm.$mp[vm.mpType];\n mocks.forEach(mock => {\n if (hasOwn(mpInstance, mock)) {\n vm[mock] = mpInstance[mock];\n }\n });\n}\n\nfunction hasHook (hook, vueOptions) {\n if (!vueOptions) {\n return true\n }\n\n if (Vue.options && Array.isArray(Vue.options[hook])) {\n return true\n }\n\n vueOptions = vueOptions.default || vueOptions;\n\n if (isFn(vueOptions)) {\n if (isFn(vueOptions.extendOptions[hook])) {\n return true\n }\n if (vueOptions.super &&\n vueOptions.super.options &&\n Array.isArray(vueOptions.super.options[hook])) {\n return true\n }\n return false\n }\n\n if (isFn(vueOptions[hook]) || Array.isArray(vueOptions[hook])) {\n return true\n }\n const mixins = vueOptions.mixins;\n if (Array.isArray(mixins)) {\n return !!mixins.find(mixin => hasHook(hook, mixin))\n }\n}\n\nfunction initHooks (mpOptions, hooks, vueOptions) {\n hooks.forEach(hook => {\n if (hasHook(hook, vueOptions)) {\n mpOptions[hook] = function (args) {\n return this.$vm && this.$vm.__call_hook(hook, args)\n };\n }\n });\n}\n\nfunction initUnknownHooks (mpOptions, vueOptions, excludes = []) {\n findHooks(vueOptions).forEach((hook) => initHook$1(mpOptions, hook, excludes));\n}\n\nfunction findHooks (vueOptions, hooks = []) {\n if (vueOptions) {\n Object.keys(vueOptions).forEach((name) => {\n if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {\n hooks.push(name);\n }\n });\n }\n return hooks\n}\n\nfunction initHook$1 (mpOptions, hook, excludes) {\n if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {\n mpOptions[hook] = function (args) {\n return this.$vm && this.$vm.__call_hook(hook, args)\n };\n }\n}\n\nfunction initVueComponent (Vue, vueOptions) {\n vueOptions = vueOptions.default || vueOptions;\n let VueComponent;\n if (isFn(vueOptions)) {\n VueComponent = vueOptions;\n } else {\n VueComponent = Vue.extend(vueOptions);\n }\n vueOptions = VueComponent.options;\n return [VueComponent, vueOptions]\n}\n\nfunction initSlots (vm, vueSlots) {\n if (Array.isArray(vueSlots) && vueSlots.length) {\n const $slots = Object.create(null);\n vueSlots.forEach(slotName => {\n $slots[slotName] = true;\n });\n vm.$scopedSlots = vm.$slots = $slots;\n }\n}\n\nfunction initVueIds (vueIds, mpInstance) {\n vueIds = (vueIds || '').split(',');\n const len = vueIds.length;\n\n if (len === 1) {\n mpInstance._$vueId = vueIds[0];\n } else if (len === 2) {\n mpInstance._$vueId = vueIds[0];\n mpInstance._$vuePid = vueIds[1];\n }\n}\n\nfunction initData (vueOptions, context) {\n let data = vueOptions.data || {};\n const methods = vueOptions.methods || {};\n\n if (typeof data === 'function') {\n try {\n data = data.call(context); // 支持 Vue.prototype 上挂的数据\n } catch (e) {\n if (process.env.VUE_APP_DEBUG) {\n console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);\n }\n }\n } else {\n try {\n // 对 data 格式化\n data = JSON.parse(JSON.stringify(data));\n } catch (e) { }\n }\n\n if (!isPlainObject(data)) {\n data = {};\n }\n\n Object.keys(methods).forEach(methodName => {\n if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {\n data[methodName] = methods[methodName];\n }\n });\n\n return data\n}\n\nconst PROP_TYPES = [String, Number, Boolean, Object, Array, null];\n\nfunction createObserver (name) {\n return function observer (newVal, oldVal) {\n if (this.$vm) {\n this.$vm[name] = newVal; // 为了触发其他非 render watcher\n }\n }\n}\n\nfunction initBehaviors (vueOptions, initBehavior) {\n const vueBehaviors = vueOptions.behaviors;\n const vueExtends = vueOptions.extends;\n const vueMixins = vueOptions.mixins;\n\n let vueProps = vueOptions.props;\n\n if (!vueProps) {\n vueOptions.props = vueProps = [];\n }\n\n const behaviors = [];\n if (Array.isArray(vueBehaviors)) {\n vueBehaviors.forEach(behavior => {\n behaviors.push(behavior.replace('uni://', `${\"wx\"}://`));\n if (behavior === 'uni://form-field') {\n if (Array.isArray(vueProps)) {\n vueProps.push('name');\n vueProps.push('value');\n } else {\n vueProps.name = {\n type: String,\n default: ''\n };\n vueProps.value = {\n type: [String, Number, Boolean, Array, Object, Date],\n default: ''\n };\n }\n }\n });\n }\n if (isPlainObject(vueExtends) && vueExtends.props) {\n behaviors.push(\n initBehavior({\n properties: initProperties(vueExtends.props, true)\n })\n );\n }\n if (Array.isArray(vueMixins)) {\n vueMixins.forEach(vueMixin => {\n if (isPlainObject(vueMixin) && vueMixin.props) {\n behaviors.push(\n initBehavior({\n properties: initProperties(vueMixin.props, true)\n })\n );\n }\n });\n }\n return behaviors\n}\n\nfunction parsePropType (key, type, defaultValue, file) {\n // [String]=>String\n if (Array.isArray(type) && type.length === 1) {\n return type[0]\n }\n return type\n}\n\nfunction initProperties (props, isBehavior = false, file = '', options) {\n const properties = {};\n if (!isBehavior) {\n properties.vueId = {\n type: String,\n value: ''\n };\n {\n if ( options.virtualHost) {\n properties.virtualHostStyle = {\n type: null,\n value: ''\n };\n properties.virtualHostClass = {\n type: null,\n value: ''\n };\n }\n }\n // scopedSlotsCompiler auto\n properties.scopedSlotsCompiler = {\n type: String,\n value: ''\n };\n properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots\n type: null,\n value: [],\n observer: function (newVal, oldVal) {\n const $slots = Object.create(null);\n newVal.forEach(slotName => {\n $slots[slotName] = true;\n });\n this.setData({\n $slots\n });\n }\n };\n }\n if (Array.isArray(props)) { // ['title']\n props.forEach(key => {\n properties[key] = {\n type: null,\n observer: createObserver(key)\n };\n });\n } else if (isPlainObject(props)) { // {title:{type:String,default:''},content:String}\n Object.keys(props).forEach(key => {\n const opts = props[key];\n if (isPlainObject(opts)) { // title:{type:String,default:''}\n let value = opts.default;\n if (isFn(value)) {\n value = value();\n }\n\n opts.type = parsePropType(key, opts.type);\n\n properties[key] = {\n type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,\n value,\n observer: createObserver(key)\n };\n } else { // content:String\n const type = parsePropType(key, opts);\n properties[key] = {\n type: PROP_TYPES.indexOf(type) !== -1 ? type : null,\n observer: createObserver(key)\n };\n }\n });\n }\n return properties\n}\n\nfunction wrapper$1 (event) {\n // TODO 又得兼容 mpvue 的 mp 对象\n try {\n event.mp = JSON.parse(JSON.stringify(event));\n } catch (e) { }\n\n event.stopPropagation = noop;\n event.preventDefault = noop;\n\n event.target = event.target || {};\n\n if (!hasOwn(event, 'detail')) {\n event.detail = {};\n }\n\n if (hasOwn(event, 'markerId')) {\n event.detail = typeof event.detail === 'object' ? event.detail : {};\n event.detail.markerId = event.markerId;\n }\n\n if (isPlainObject(event.detail)) {\n event.target = Object.assign({}, event.target, event.detail);\n }\n\n return event\n}\n\nfunction getExtraValue (vm, dataPathsArray) {\n let context = vm;\n dataPathsArray.forEach(dataPathArray => {\n const dataPath = dataPathArray[0];\n const value = dataPathArray[2];\n if (dataPath || typeof value !== 'undefined') { // ['','',index,'disable']\n const propPath = dataPathArray[1];\n const valuePath = dataPathArray[3];\n\n let vFor;\n if (Number.isInteger(dataPath)) {\n vFor = dataPath;\n } else if (!dataPath) {\n vFor = context;\n } else if (typeof dataPath === 'string' && dataPath) {\n if (dataPath.indexOf('#s#') === 0) {\n vFor = dataPath.substr(3);\n } else {\n vFor = vm.__get_value(dataPath, context);\n }\n }\n\n if (Number.isInteger(vFor)) {\n context = value;\n } else if (!propPath) {\n context = vFor[value];\n } else {\n if (Array.isArray(vFor)) {\n context = vFor.find(vForItem => {\n return vm.__get_value(propPath, vForItem) === value\n });\n } else if (isPlainObject(vFor)) {\n context = Object.keys(vFor).find(vForKey => {\n return vm.__get_value(propPath, vFor[vForKey]) === value\n });\n } else {\n console.error('v-for 暂不支持循环数据:', vFor);\n }\n }\n\n if (valuePath) {\n context = vm.__get_value(valuePath, context);\n }\n }\n });\n return context\n}\n\nfunction processEventExtra (vm, extra, event, __args__) {\n const extraObj = {};\n\n if (Array.isArray(extra) && extra.length) {\n /**\n *[\n * ['data.items', 'data.id', item.data.id],\n * ['metas', 'id', meta.id]\n *],\n *[\n * ['data.items', 'data.id', item.data.id],\n * ['metas', 'id', meta.id]\n *],\n *'test'\n */\n extra.forEach((dataPath, index) => {\n if (typeof dataPath === 'string') {\n if (!dataPath) { // model,prop.sync\n extraObj['$' + index] = vm;\n } else {\n if (dataPath === '$event') { // $event\n extraObj['$' + index] = event;\n } else if (dataPath === 'arguments') {\n extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;\n } else if (dataPath.indexOf('$event.') === 0) { // $event.target.value\n extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);\n } else {\n extraObj['$' + index] = vm.__get_value(dataPath);\n }\n }\n } else {\n extraObj['$' + index] = getExtraValue(vm, dataPath);\n }\n });\n }\n\n return extraObj\n}\n\nfunction getObjByArray (arr) {\n const obj = {};\n for (let i = 1; i < arr.length; i++) {\n const element = arr[i];\n obj[element[0]] = element[1];\n }\n return obj\n}\n\nfunction processEventArgs (vm, event, args = [], extra = [], isCustom, methodName) {\n let isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象\n\n // fixed 用户直接触发 mpInstance.triggerEvent\n const __args__ = isPlainObject(event.detail)\n ? event.detail.__args__ || [event.detail]\n : [event.detail];\n\n if (isCustom) { // 自定义事件\n isCustomMPEvent = event.currentTarget &&\n event.currentTarget.dataset &&\n event.currentTarget.dataset.comType === 'wx';\n if (!args.length) { // 无参数,直接传入 event 或 detail 数组\n if (isCustomMPEvent) {\n return [event]\n }\n return __args__\n }\n }\n\n const extraObj = processEventExtra(vm, extra, event, __args__);\n\n const ret = [];\n args.forEach(arg => {\n if (arg === '$event') {\n if (methodName === '__set_model' && !isCustom) { // input v-model value\n ret.push(event.target.value);\n } else {\n if (isCustom && !isCustomMPEvent) {\n ret.push(__args__[0]);\n } else { // wxcomponent 组件或内置组件\n ret.push(event);\n }\n }\n } else {\n if (Array.isArray(arg) && arg[0] === 'o') {\n ret.push(getObjByArray(arg));\n } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {\n ret.push(extraObj[arg]);\n } else {\n ret.push(arg);\n }\n }\n });\n\n return ret\n}\n\nconst ONCE = '~';\nconst CUSTOM = '^';\n\nfunction isMatchEventType (eventType, optType) {\n return (eventType === optType) ||\n (\n optType === 'regionchange' &&\n (\n eventType === 'begin' ||\n eventType === 'end'\n )\n )\n}\n\nfunction getContextVm (vm) {\n let $parent = vm.$parent;\n // 父组件是 scoped slots 或者其他自定义组件时继续查找\n while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {\n $parent = $parent.$parent;\n }\n return $parent && $parent.$parent\n}\n\nfunction handleEvent (event) {\n event = wrapper$1(event);\n\n // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]\n const dataset = (event.currentTarget || event.target).dataset;\n if (!dataset) {\n return console.warn('事件信息不存在')\n }\n const eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰\n if (!eventOpts) {\n return console.warn('事件信息不存在')\n }\n\n // [['handle',[1,2,a]],['handle1',[1,2,a]]]\n const eventType = event.type;\n\n const ret = [];\n\n eventOpts.forEach(eventOpt => {\n let type = eventOpt[0];\n const eventsArray = eventOpt[1];\n\n const isCustom = type.charAt(0) === CUSTOM;\n type = isCustom ? type.slice(1) : type;\n const isOnce = type.charAt(0) === ONCE;\n type = isOnce ? type.slice(1) : type;\n\n if (eventsArray && isMatchEventType(eventType, type)) {\n eventsArray.forEach(eventArray => {\n const methodName = eventArray[0];\n if (methodName) {\n let handlerCtx = this.$vm;\n if (handlerCtx.$options.generic) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\n handlerCtx = getContextVm(handlerCtx) || handlerCtx;\n }\n if (methodName === '$emit') {\n handlerCtx.$emit.apply(handlerCtx,\n processEventArgs(\n this.$vm,\n event,\n eventArray[1],\n eventArray[2],\n isCustom,\n methodName\n ));\n return\n }\n const handler = handlerCtx[methodName];\n if (!isFn(handler)) {\n const type = this.$vm.mpType === 'page' ? 'Page' : 'Component';\n const path = this.route || this.is;\n throw new Error(`${type} \"${path}\" does not have a method \"${methodName}\"`)\n }\n if (isOnce) {\n if (handler.once) {\n return\n }\n handler.once = true;\n }\n let params = processEventArgs(\n this.$vm,\n event,\n eventArray[1],\n eventArray[2],\n isCustom,\n methodName\n );\n params = Array.isArray(params) ? params : [];\n // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据\n if (/=\\s*\\S+\\.eventParams\\s*\\|\\|\\s*\\S+\\[['\"]event-params['\"]\\]/.test(handler.toString())) {\n // eslint-disable-next-line no-sparse-arrays\n params = params.concat([, , , , , , , , , , event]);\n }\n ret.push(handler.apply(handlerCtx, params));\n }\n });\n }\n });\n\n if (\n eventType === 'input' &&\n ret.length === 1 &&\n typeof ret[0] !== 'undefined'\n ) {\n return ret[0]\n }\n}\n\nconst eventChannels = {};\n\nconst eventChannelStack = [];\n\nfunction getEventChannel (id) {\n if (id) {\n const eventChannel = eventChannels[id];\n delete eventChannels[id];\n return eventChannel\n }\n return eventChannelStack.shift()\n}\n\nconst hooks = [\n 'onShow',\n 'onHide',\n 'onError',\n 'onPageNotFound',\n 'onThemeChange',\n 'onUnhandledRejection'\n];\n\nfunction initEventChannel () {\n Vue.prototype.getOpenerEventChannel = function () {\n // 微信小程序使用自身getOpenerEventChannel\n {\n return this.$scope.getOpenerEventChannel()\n }\n };\n const callHook = Vue.prototype.__call_hook;\n Vue.prototype.__call_hook = function (hook, args) {\n if (hook === 'onLoad' && args && args.__id__) {\n this.__eventChannel__ = getEventChannel(args.__id__);\n delete args.__id__;\n }\n return callHook.call(this, hook, args)\n };\n}\n\nfunction initScopedSlotsParams () {\n const center = {};\n const parents = {};\n\n Vue.prototype.$hasScopedSlotsParams = function (vueId) {\n const has = center[vueId];\n if (!has) {\n parents[vueId] = this;\n this.$on('hook:destroyed', () => {\n delete parents[vueId];\n });\n }\n return has\n };\n\n Vue.prototype.$getScopedSlotsParams = function (vueId, name, key) {\n const data = center[vueId];\n if (data) {\n const object = data[name] || {};\n return key ? object[key] : object\n } else {\n parents[vueId] = this;\n this.$on('hook:destroyed', () => {\n delete parents[vueId];\n });\n }\n };\n\n Vue.prototype.$setScopedSlotsParams = function (name, value) {\n const vueIds = this.$options.propsData.vueId;\n if (vueIds) {\n const vueId = vueIds.split(',')[0];\n const object = center[vueId] = center[vueId] || {};\n object[name] = value;\n if (parents[vueId]) {\n parents[vueId].$forceUpdate();\n }\n }\n };\n\n Vue.mixin({\n destroyed () {\n const propsData = this.$options.propsData;\n const vueId = propsData && propsData.vueId;\n if (vueId) {\n delete center[vueId];\n delete parents[vueId];\n }\n }\n });\n}\n\nfunction parseBaseApp (vm, {\n mocks,\n initRefs\n}) {\n initEventChannel();\n {\n initScopedSlotsParams();\n }\n if (vm.$options.store) {\n Vue.prototype.$store = vm.$options.store;\n }\n uniIdMixin(Vue);\n\n Vue.prototype.mpHost = \"mp-weixin\";\n\n Vue.mixin({\n beforeCreate () {\n if (!this.$options.mpType) {\n return\n }\n\n this.mpType = this.$options.mpType;\n\n this.$mp = {\n data: {},\n [this.mpType]: this.$options.mpInstance\n };\n\n this.$scope = this.$options.mpInstance;\n\n delete this.$options.mpType;\n delete this.$options.mpInstance;\n if (this.mpType === 'page' && typeof getApp === 'function') { // hack vue-i18n\n const app = getApp();\n if (app.$vm && app.$vm.$i18n) {\n this._i18n = app.$vm.$i18n;\n }\n }\n if (this.mpType !== 'app') {\n initRefs(this);\n initMocks(this, mocks);\n }\n }\n });\n\n const appOptions = {\n onLaunch (args) {\n if (this.$vm) { // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前\n return\n }\n {\n if (wx.canIUse && !wx.canIUse('nextTick')) { // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断\n console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');\n }\n }\n\n this.$vm = vm;\n\n this.$vm.$mp = {\n app: this\n };\n\n this.$vm.$scope = this;\n // vm 上也挂载 globalData\n this.$vm.globalData = this.globalData;\n\n this.$vm._isMounted = true;\n this.$vm.__call_hook('mounted', args);\n\n this.$vm.__call_hook('onLaunch', args);\n }\n };\n\n // 兼容旧版本 globalData\n appOptions.globalData = vm.$options.globalData || {};\n // 将 methods 中的方法挂在 getApp() 中\n const methods = vm.$options.methods;\n if (methods) {\n Object.keys(methods).forEach(name => {\n appOptions[name] = methods[name];\n });\n }\n\n initAppLocale(Vue, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);\n\n initHooks(appOptions, hooks);\n initUnknownHooks(appOptions, vm.$options);\n\n return appOptions\n}\n\nfunction parseApp (vm) {\n return parseBaseApp(vm, {\n mocks,\n initRefs\n })\n}\n\nfunction createApp (vm) {\n App(parseApp(vm));\n return vm\n}\n\nconst encodeReserveRE = /[!'()*]/g;\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16);\nconst commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nconst encode = str => encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ',');\n\nfunction stringifyQuery (obj, encodeStr = encode) {\n const res = obj ? Object.keys(obj).map(key => {\n const val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encodeStr(key)\n }\n\n if (Array.isArray(val)) {\n const result = [];\n val.forEach(val2 => {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encodeStr(key));\n } else {\n result.push(encodeStr(key) + '=' + encodeStr(val2));\n }\n });\n return result.join('&')\n }\n\n return encodeStr(key) + '=' + encodeStr(val)\n }).filter(x => x.length > 0).join('&') : null;\n return res ? `?${res}` : ''\n}\n\nfunction parseBaseComponent (vueComponentOptions, {\n isPage,\n initRelation\n} = {}, needVueOptions) {\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\n\n const options = {\n multipleSlots: true,\n addGlobalClass: true,\n ...(vueOptions.options || {})\n };\n\n {\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\n Object.assign(options, vueOptions['mp-weixin'].options);\n }\n }\n\n const componentOptions = {\n options,\n data: initData(vueOptions, Vue.prototype),\n behaviors: initBehaviors(vueOptions, initBehavior),\n properties: initProperties(vueOptions.props, false, vueOptions.__file, options),\n lifetimes: {\n attached () {\n const properties = this.properties;\n\n const options = {\n mpType: isPage.call(this) ? 'page' : 'component',\n mpInstance: this,\n propsData: properties\n };\n\n initVueIds(properties.vueId, this);\n\n // 处理父子关系\n initRelation.call(this, {\n vuePid: this._$vuePid,\n vueOptions: options\n });\n\n // 初始化 vue 实例\n this.$vm = new VueComponent(options);\n\n // 处理$slots,$scopedSlots(暂不支持动态变化$slots)\n initSlots(this.$vm, properties.vueSlots);\n\n // 触发首次 setData\n this.$vm.$mount();\n },\n ready () {\n // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发\n // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800\n if (this.$vm) {\n this.$vm._isMounted = true;\n this.$vm.__call_hook('mounted');\n this.$vm.__call_hook('onReady');\n }\n },\n detached () {\n this.$vm && this.$vm.$destroy();\n }\n },\n pageLifetimes: {\n show (args) {\n this.$vm && this.$vm.__call_hook('onPageShow', args);\n },\n hide () {\n this.$vm && this.$vm.__call_hook('onPageHide');\n },\n resize (size) {\n this.$vm && this.$vm.__call_hook('onPageResize', size);\n }\n },\n methods: {\n __l: handleLink,\n __e: handleEvent\n }\n };\n // externalClasses\n if (vueOptions.externalClasses) {\n componentOptions.externalClasses = vueOptions.externalClasses;\n }\n\n if (Array.isArray(vueOptions.wxsCallMethods)) {\n vueOptions.wxsCallMethods.forEach(callMethod => {\n componentOptions.methods[callMethod] = function (args) {\n return this.$vm[callMethod](args)\n };\n });\n }\n\n if (needVueOptions) {\n return [componentOptions, vueOptions, VueComponent]\n }\n if (isPage) {\n return componentOptions\n }\n return [componentOptions, VueComponent]\n}\n\nfunction parseComponent (vueComponentOptions, needVueOptions) {\n return parseBaseComponent(vueComponentOptions, {\n isPage,\n initRelation\n }, needVueOptions)\n}\n\nconst hooks$1 = [\n 'onShow',\n 'onHide',\n 'onUnload'\n];\n\nhooks$1.push(...PAGE_EVENT_HOOKS);\n\nfunction parseBasePage (vuePageOptions) {\n const [pageOptions, vueOptions] = parseComponent(vuePageOptions, true);\n\n initHooks(pageOptions.methods, hooks$1, vueOptions);\n\n pageOptions.methods.onLoad = function (query) {\n this.options = query;\n const copyQuery = Object.assign({}, query);\n delete copyQuery.__id__;\n this.$page = {\n fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)\n };\n this.$vm.$mp.query = query; // 兼容 mpvue\n this.$vm.__call_hook('onLoad', query);\n };\n {\n initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);\n }\n\n return pageOptions\n}\n\nfunction parsePage (vuePageOptions) {\n return parseBasePage(vuePageOptions)\n}\n\nfunction createPage (vuePageOptions) {\n {\n return Component(parsePage(vuePageOptions))\n }\n}\n\nfunction createComponent (vueOptions) {\n {\n return Component(parseComponent(vueOptions))\n }\n}\n\nfunction createSubpackageApp (vm) {\n const appOptions = parseApp(vm);\n const app = getApp({\n allowDefault: true\n });\n vm.$scope = app;\n const globalData = app.globalData;\n if (globalData) {\n Object.keys(appOptions.globalData).forEach(name => {\n if (!hasOwn(globalData, name)) {\n globalData[name] = appOptions.globalData[name];\n }\n });\n }\n Object.keys(appOptions).forEach(name => {\n if (!hasOwn(app, name)) {\n app[name] = appOptions[name];\n }\n });\n if (isFn(appOptions.onShow) && wx.onAppShow) {\n wx.onAppShow((...args) => {\n vm.__call_hook('onShow', args);\n });\n }\n if (isFn(appOptions.onHide) && wx.onAppHide) {\n wx.onAppHide((...args) => {\n vm.__call_hook('onHide', args);\n });\n }\n if (isFn(appOptions.onLaunch)) {\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\n vm.__call_hook('onLaunch', args);\n }\n return vm\n}\n\nfunction createPlugin (vm) {\n const appOptions = parseApp(vm);\n if (isFn(appOptions.onShow) && wx.onAppShow) {\n wx.onAppShow((...args) => {\n vm.__call_hook('onShow', args);\n });\n }\n if (isFn(appOptions.onHide) && wx.onAppHide) {\n wx.onAppHide((...args) => {\n vm.__call_hook('onHide', args);\n });\n }\n if (isFn(appOptions.onLaunch)) {\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\n vm.__call_hook('onLaunch', args);\n }\n return vm\n}\n\ntodos.forEach(todoApi => {\n protocols[todoApi] = false;\n});\n\ncanIUses.forEach(canIUseApi => {\n const apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name\n : canIUseApi;\n if (!wx.canIUse(apiName)) {\n protocols[canIUseApi] = false;\n }\n});\n\nlet uni = {};\n\nif (typeof Proxy !== 'undefined' && \"mp-weixin\" !== 'app-plus') {\n uni = new Proxy({}, {\n get (target, name) {\n if (hasOwn(target, name)) {\n return target[name]\n }\n if (baseApi[name]) {\n return baseApi[name]\n }\n if (api[name]) {\n return promisify(name, api[name])\n }\n {\n if (extraApi[name]) {\n return promisify(name, extraApi[name])\n }\n if (todoApis[name]) {\n return promisify(name, todoApis[name])\n }\n }\n if (eventApi[name]) {\n return eventApi[name]\n }\n return promisify(name, wrapper(name, wx[name]))\n },\n set (target, name, value) {\n target[name] = value;\n return true\n }\n });\n} else {\n Object.keys(baseApi).forEach(name => {\n uni[name] = baseApi[name];\n });\n\n {\n Object.keys(todoApis).forEach(name => {\n uni[name] = promisify(name, todoApis[name]);\n });\n Object.keys(extraApi).forEach(name => {\n uni[name] = promisify(name, todoApis[name]);\n });\n }\n\n Object.keys(eventApi).forEach(name => {\n uni[name] = eventApi[name];\n });\n\n Object.keys(api).forEach(name => {\n uni[name] = promisify(name, api[name]);\n });\n\n Object.keys(wx).forEach(name => {\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\n uni[name] = promisify(name, wrapper(name, wx[name]));\n }\n });\n}\n\nwx.createApp = createApp;\nwx.createPage = createPage;\nwx.createComponent = createComponent;\nwx.createSubpackageApp = createSubpackageApp;\nwx.createPlugin = createPlugin;\n\nvar uni$1 = uni;\n\nexport default uni$1;\nexport { createApp, createComponent, createPage, createPlugin, createSubpackageApp };\n","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","const isArray = Array.isArray;\nconst isObject = (val) => val !== null && typeof val === 'object';\nconst defaultDelimiters = ['{', '}'];\nclass BaseFormatter {\n constructor() {\n this._caches = Object.create(null);\n }\n interpolate(message, values, delimiters = defaultDelimiters) {\n if (!values) {\n return [message];\n }\n let tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message, delimiters);\n this._caches[message] = tokens;\n }\n return compile(tokens, values);\n }\n}\nconst RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nconst RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\nfunction parse(format, [startDelimiter, endDelimiter]) {\n const tokens = [];\n let position = 0;\n let text = '';\n while (position < format.length) {\n let char = format[position++];\n if (char === startDelimiter) {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n text = '';\n let sub = '';\n char = format[position++];\n while (char !== undefined && char !== endDelimiter) {\n sub += char;\n char = format[position++];\n }\n const isClosed = char === endDelimiter;\n const type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type });\n }\n // else if (char === '%') {\n // // when found rails i18n syntax, skip text capture\n // if (format[position] !== '{') {\n // text += char\n // }\n // }\n else {\n text += char;\n }\n }\n text && tokens.push({ type: 'text', value: text });\n return tokens;\n}\nfunction compile(tokens, values) {\n const compiled = [];\n let index = 0;\n const mode = isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') {\n return compiled;\n }\n while (index < tokens.length) {\n const token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break;\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break;\n case 'named':\n if (mode === 'named') {\n compiled.push(values[token.value]);\n }\n else {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Type of token '${token.type}' and format of value '${mode}' don't match!`);\n }\n }\n break;\n case 'unknown':\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Detect 'unknown' type of token!`);\n }\n break;\n }\n index++;\n }\n return compiled;\n}\n\nconst LOCALE_ZH_HANS = 'zh-Hans';\nconst LOCALE_ZH_HANT = 'zh-Hant';\nconst LOCALE_EN = 'en';\nconst LOCALE_FR = 'fr';\nconst LOCALE_ES = 'es';\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst defaultFormatter = new BaseFormatter();\nfunction include(str, parts) {\n return !!parts.find((part) => str.indexOf(part) !== -1);\n}\nfunction startsWith(str, parts) {\n return parts.find((part) => str.indexOf(part) === 0);\n}\nfunction normalizeLocale(locale, messages) {\n if (!locale) {\n return;\n }\n locale = locale.trim().replace(/_/g, '-');\n if (messages && messages[locale]) {\n return locale;\n }\n locale = locale.toLowerCase();\n if (locale.indexOf('zh') === 0) {\n if (locale.indexOf('-hans') > -1) {\n return LOCALE_ZH_HANS;\n }\n if (locale.indexOf('-hant') > -1) {\n return LOCALE_ZH_HANT;\n }\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\n return LOCALE_ZH_HANT;\n }\n return LOCALE_ZH_HANS;\n }\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\n if (lang) {\n return lang;\n }\n}\nclass I18n {\n constructor({ locale, fallbackLocale, messages, watcher, formater, }) {\n this.locale = LOCALE_EN;\n this.fallbackLocale = LOCALE_EN;\n this.message = {};\n this.messages = {};\n this.watchers = [];\n if (fallbackLocale) {\n this.fallbackLocale = fallbackLocale;\n }\n this.formater = formater || defaultFormatter;\n this.messages = messages || {};\n this.setLocale(locale || LOCALE_EN);\n if (watcher) {\n this.watchLocale(watcher);\n }\n }\n setLocale(locale) {\n const oldLocale = this.locale;\n this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;\n if (!this.messages[this.locale]) {\n // 可能初始化时不存在\n this.messages[this.locale] = {};\n }\n this.message = this.messages[this.locale];\n // 仅发生变化时,通知\n if (oldLocale !== this.locale) {\n this.watchers.forEach((watcher) => {\n watcher(this.locale, oldLocale);\n });\n }\n }\n getLocale() {\n return this.locale;\n }\n watchLocale(fn) {\n const index = this.watchers.push(fn) - 1;\n return () => {\n this.watchers.splice(index, 1);\n };\n }\n add(locale, message, override = true) {\n const curMessages = this.messages[locale];\n if (curMessages) {\n if (override) {\n Object.assign(curMessages, message);\n }\n else {\n Object.keys(message).forEach((key) => {\n if (!hasOwn(curMessages, key)) {\n curMessages[key] = message[key];\n }\n });\n }\n }\n else {\n this.messages[locale] = message;\n }\n }\n f(message, values, delimiters) {\n return this.formater.interpolate(message, values, delimiters).join('');\n }\n t(key, locale, values) {\n let message = this.message;\n if (typeof locale === 'string') {\n locale = normalizeLocale(locale, this.messages);\n locale && (message = this.messages[locale]);\n }\n else {\n values = locale;\n }\n if (!hasOwn(message, key)) {\n console.warn(`Cannot translate the value of keypath ${key}. Use the value of keypath as default.`);\n return key;\n }\n return this.formater.interpolate(message[key], values).join('');\n }\n}\n\nfunction watchAppLocale(appVm, i18n) {\n // 需要保证 watch 的触发在组件渲染之前\n if (appVm.$watchLocale) {\n // vue2\n appVm.$watchLocale((newLocale) => {\n i18n.setLocale(newLocale);\n });\n }\n else {\n appVm.$watch(() => appVm.$locale, (newLocale) => {\n i18n.setLocale(newLocale);\n });\n }\n}\nfunction getDefaultLocale() {\n if (typeof uni !== 'undefined' && uni.getLocale) {\n return uni.getLocale();\n }\n // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale\n if (typeof global !== 'undefined' && global.getLocale) {\n return global.getLocale();\n }\n return LOCALE_EN;\n}\nfunction initVueI18n(locale, messages = {}, fallbackLocale, watcher) {\n // 兼容旧版本入参\n if (typeof locale !== 'string') {\n [locale, messages] = [\n messages,\n locale,\n ];\n }\n if (typeof locale !== 'string') {\n // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined\n locale = getDefaultLocale();\n }\n if (typeof fallbackLocale !== 'string') {\n fallbackLocale =\n (typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale) ||\n LOCALE_EN;\n }\n const i18n = new I18n({\n locale,\n fallbackLocale,\n messages,\n watcher,\n });\n let t = (key, values) => {\n if (typeof getApp !== 'function') {\n // app view\n /* eslint-disable no-func-assign */\n t = function (key, values) {\n return i18n.t(key, values);\n };\n }\n else {\n let isWatchedAppLocale = false;\n t = function (key, values) {\n const appVm = getApp().$vm;\n // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化\n // options: {\n // \ttype: Array,\n // \tdefault () {\n // \t\treturn [{\n // \t\t\ticon: 'shop',\n // \t\t\ttext: t(\"uni-goods-nav.options.shop\"),\n // \t\t}, {\n // \t\t\ticon: 'cart',\n // \t\t\ttext: t(\"uni-goods-nav.options.cart\")\n // \t\t}]\n // \t}\n // },\n if (appVm) {\n // 触发响应式\n appVm.$locale;\n if (!isWatchedAppLocale) {\n isWatchedAppLocale = true;\n watchAppLocale(appVm, i18n);\n }\n }\n return i18n.t(key, values);\n };\n }\n return t(key, values);\n };\n return {\n i18n,\n f(message, values, delimiters) {\n return i18n.f(message, values, delimiters);\n },\n t(key, values) {\n return t(key, values);\n },\n add(locale, message, override = true) {\n return i18n.add(locale, message, override);\n },\n watch(fn) {\n return i18n.watchLocale(fn);\n },\n getLocale() {\n return i18n.getLocale();\n },\n setLocale(newLocale) {\n return i18n.setLocale(newLocale);\n },\n };\n}\n\nconst isString = (val) => typeof val === 'string';\nlet formater;\nfunction hasI18nJson(jsonObj, delimiters) {\n if (!formater) {\n formater = new BaseFormatter();\n }\n return walkJsonObj(jsonObj, (jsonObj, key) => {\n const value = jsonObj[key];\n if (isString(value)) {\n if (isI18nStr(value, delimiters)) {\n return true;\n }\n }\n else {\n return hasI18nJson(value, delimiters);\n }\n });\n}\nfunction parseI18nJson(jsonObj, values, delimiters) {\n if (!formater) {\n formater = new BaseFormatter();\n }\n walkJsonObj(jsonObj, (jsonObj, key) => {\n const value = jsonObj[key];\n if (isString(value)) {\n if (isI18nStr(value, delimiters)) {\n jsonObj[key] = compileStr(value, values, delimiters);\n }\n }\n else {\n parseI18nJson(value, values, delimiters);\n }\n });\n return jsonObj;\n}\nfunction compileI18nJsonStr(jsonStr, { locale, locales, delimiters, }) {\n if (!isI18nStr(jsonStr, delimiters)) {\n return jsonStr;\n }\n if (!formater) {\n formater = new BaseFormatter();\n }\n const localeValues = [];\n Object.keys(locales).forEach((name) => {\n if (name !== locale) {\n localeValues.push({\n locale: name,\n values: locales[name],\n });\n }\n });\n localeValues.unshift({ locale, values: locales[locale] });\n try {\n return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);\n }\n catch (e) { }\n return jsonStr;\n}\nfunction isI18nStr(value, delimiters) {\n return value.indexOf(delimiters[0]) > -1;\n}\nfunction compileStr(value, values, delimiters) {\n return formater.interpolate(value, values, delimiters).join('');\n}\nfunction compileValue(jsonObj, key, localeValues, delimiters) {\n const value = jsonObj[key];\n if (isString(value)) {\n // 存在国际化\n if (isI18nStr(value, delimiters)) {\n jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);\n if (localeValues.length > 1) {\n // 格式化国际化语言\n const valueLocales = (jsonObj[key + 'Locales'] = {});\n localeValues.forEach((localValue) => {\n valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);\n });\n }\n }\n }\n else {\n compileJsonObj(value, localeValues, delimiters);\n }\n}\nfunction compileJsonObj(jsonObj, localeValues, delimiters) {\n walkJsonObj(jsonObj, (jsonObj, key) => {\n compileValue(jsonObj, key, localeValues, delimiters);\n });\n return jsonObj;\n}\nfunction walkJsonObj(jsonObj, walk) {\n if (isArray(jsonObj)) {\n for (let i = 0; i < jsonObj.length; i++) {\n if (walk(jsonObj, i)) {\n return true;\n }\n }\n }\n else if (isObject(jsonObj)) {\n for (const key in jsonObj) {\n if (walk(jsonObj, key)) {\n return true;\n }\n }\n }\n return false;\n}\n\nfunction resolveLocale(locales) {\n return (locale) => {\n if (!locale) {\n return locale;\n }\n locale = normalizeLocale(locale) || locale;\n return resolveLocaleChain(locale).find((locale) => locales.indexOf(locale) > -1);\n };\n}\nfunction resolveLocaleChain(locale) {\n const chain = [];\n const tokens = locale.split('-');\n while (tokens.length) {\n chain.push(tokens.join('-'));\n tokens.pop();\n }\n return chain;\n}\n\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 };\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/*!\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 '<Root>'\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)) + \">\") : \"<Anonymous>\") +\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 !value.__v_isMPComponent\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<VNode>. 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. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page\n if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){\n (slots['page'] || (slots['page'] = [])).push(child);\n }else{\n (slots.default || (slots.default = [])).push(child);\n }\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i, i, i); // fixed by xxxxxx\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length, i, i++)); // fixed by xxxxxx\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i, i); // fixed by xxxxxx\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n // fixed by xxxxxx app-plus scopedSlot\n nodes = scopedSlotFn(props, this, props._i) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a special value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n callHook(componentInstance, 'onServiceCreated');\n callHook(componentInstance, 'onServiceAttached');\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n if (process.env.NODE_ENV !== 'production' && isDef(data) && isDef(data.nativeOn)) {\n warn(\n (\"The .native modifier for v-on is only valid on components but it was used on <\" + tag + \">.\"),\n context\n );\n }\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack because all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n \n // fixed by xxxxxx update properties(mp runtime)\n vm._$updateProperties && vm._$updateProperties(vm);\n \n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n {\n if(vm.mpHost === 'mp-baidu' || vm.mpHost === 'mp-kuaishou' || vm.mpHost === 'mp-xhs'){//百度、快手、小红书 observer 在 setData callback 之后触发,直接忽略该 warn\n return\n }\n //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警\n if(\n key === 'value' && \n Array.isArray(vm.$options.behaviors) &&\n vm.$options.behaviors.indexOf('uni://form-field') !== -1\n ){\n return\n }\n if(vm._getFormData){\n return\n }\n var $parent = vm.$parent;\n while($parent){\n if($parent.__next_tick_pending){\n return \n }\n $parent = $parent.$parent;\n }\n }\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.SharedObject.target) {// fixed by xxxxxx\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n !vm._$fallback && initInjections(vm); // resolve injections before data/props \n initState(vm);\n !vm._$fallback && initProvide(vm); // resolve provide after data/props\n !vm._$fallback && callHook(vm, 'created'); \n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.11';\n\n/**\n * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js\n */\nvar ARRAYTYPE = '[object Array]';\nvar OBJECTTYPE = '[object Object]';\nvar NULLTYPE = '[object Null]';\nvar UNDEFINEDTYPE = '[object Undefined]';\n// const FUNCTIONTYPE = '[object Function]'\n\nfunction diff(current, pre) {\n var result = {};\n syncKeys(current, pre);\n _diff(current, pre, '', result);\n return result\n}\n\nfunction syncKeys(current, pre) {\n if (current === pre) { return }\n var rootCurrentType = type(current);\n var rootPreType = type(pre);\n if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {\n if(Object.keys(current).length >= Object.keys(pre).length){\n for (var key in pre) {\n var currentValue = current[key];\n if (currentValue === undefined) {\n current[key] = null;\n } else {\n syncKeys(currentValue, pre[key]);\n }\n }\n }\n } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {\n if (current.length >= pre.length) {\n pre.forEach(function (item, index) {\n syncKeys(current[index], item);\n });\n }\n }\n}\n\nfunction nullOrUndefined(currentType, preType) {\n if(\n (currentType === NULLTYPE || currentType === UNDEFINEDTYPE) && \n (preType === NULLTYPE || preType === UNDEFINEDTYPE)\n ) {\n return false\n }\n return true\n}\n\nfunction _diff(current, pre, path, result) {\n if (current === pre) { return }\n var rootCurrentType = type(current);\n var rootPreType = type(pre);\n if (rootCurrentType == OBJECTTYPE) {\n if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {\n setResult(result, path, current);\n } else {\n var loop = function ( key ) {\n var currentValue = current[key];\n var preValue = pre[key];\n var currentType = type(currentValue);\n var preType = type(preValue);\n if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {\n if (currentValue !== pre[key] && nullOrUndefined(currentType, preType)) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n }\n } else if (currentType == ARRAYTYPE) {\n if (preType != ARRAYTYPE) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n } else {\n if (currentValue.length < preValue.length) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n } else {\n currentValue.forEach(function (item, index) {\n _diff(item, preValue[index], (path == '' ? '' : path + \".\") + key + '[' + index + ']', result);\n });\n }\n }\n } else if (currentType == OBJECTTYPE) {\n if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {\n setResult(result, (path == '' ? '' : path + \".\") + key, currentValue);\n } else {\n for (var subKey in currentValue) {\n _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + \".\") + key + '.' + subKey, result);\n }\n }\n }\n };\n\n for (var key in current) loop( key );\n }\n } else if (rootCurrentType == ARRAYTYPE) {\n if (rootPreType != ARRAYTYPE) {\n setResult(result, path, current);\n } else {\n if (current.length < pre.length) {\n setResult(result, path, current);\n } else {\n current.forEach(function (item, index) {\n _diff(item, pre[index], path + '[' + index + ']', result);\n });\n }\n }\n } else {\n setResult(result, path, current);\n }\n}\n\nfunction setResult(result, k, v) {\n // if (type(v) != FUNCTIONTYPE) {\n result[k] = v;\n // }\n}\n\nfunction type(obj) {\n return Object.prototype.toString.call(obj)\n}\n\n/* */\n\nfunction flushCallbacks$1(vm) {\n if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {\n if (process.env.VUE_APP_DEBUG) {\n var mpInstance = vm.$scope;\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +\n ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');\n }\n var copies = vm.__next_tick_callbacks.slice(0);\n vm.__next_tick_callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n }\n}\n\nfunction hasRenderWatcher(vm) {\n return queue.find(function (watcher) { return vm._watcher === watcher; })\n}\n\nfunction nextTick$1(vm, cb) {\n //1.nextTick 之前 已 setData 且 setData 还未回调完成\n //2.nextTick 之前存在 render watcher\n if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {\n if(process.env.VUE_APP_DEBUG){\n var mpInstance = vm.$scope;\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +\n ']:nextVueTick');\n }\n return nextTick(cb, vm)\n }else{\n if(process.env.VUE_APP_DEBUG){\n var mpInstance$1 = vm.$scope;\n console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +\n ']:nextMPTick');\n }\n }\n var _resolve;\n if (!vm.__next_tick_callbacks) {\n vm.__next_tick_callbacks = [];\n }\n vm.__next_tick_callbacks.push(function () {\n if (cb) {\n try {\n cb.call(vm);\n } catch (e) {\n handleError(e, vm, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(vm);\n }\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\nfunction clearInstance(key, value) {\n // 简易去除 Vue 和小程序组件实例\n if (value) {\n if (value._isVue || value.__v_isMPComponent) {\n return {}\n }\n }\n return value\n}\n\nfunction cloneWithData(vm) {\n // 确保当前 vm 所有数据被同步\n var ret = Object.create(null);\n var dataKeys = [].concat(\n Object.keys(vm._data || {}),\n Object.keys(vm._computedWatchers || {}));\n\n dataKeys.reduce(function(ret, key) {\n ret[key] = vm[key];\n return ret\n }, ret);\n\n // vue-composition-api\n var compositionApiState = vm.__composition_api_state__ || vm.__secret_vfa_state__;\n var rawBindings = compositionApiState && compositionApiState.rawBindings;\n if (rawBindings) {\n Object.keys(rawBindings).forEach(function (key) {\n ret[key] = vm[key];\n });\n }\n\n //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据\n Object.assign(ret, vm.$mp.data || {});\n if (\n Array.isArray(vm.$options.behaviors) &&\n vm.$options.behaviors.indexOf('uni://form-field') !== -1\n ) { //form-field\n ret['name'] = vm.name;\n ret['value'] = vm.value;\n }\n\n return JSON.parse(JSON.stringify(ret, clearInstance))\n}\n\nvar patch = function(oldVnode, vnode) {\n var this$1 = this;\n\n if (vnode === null) { //destroy\n return\n }\n if (this.mpType === 'page' || this.mpType === 'component') {\n var mpInstance = this.$scope;\n var data = Object.create(null);\n try {\n data = cloneWithData(this);\n } catch (err) {\n console.error(err);\n }\n data.__webviewId__ = mpInstance.data.__webviewId__;\n var mpData = Object.create(null);\n Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据\n mpData[key] = mpInstance.data[key];\n });\n var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);\n if (Object.keys(diffData).length) {\n if (process.env.VUE_APP_DEBUG) {\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +\n ']差量更新',\n JSON.stringify(diffData));\n }\n this.__next_tick_pending = true;\n mpInstance.setData(diffData, function () {\n this$1.__next_tick_pending = false;\n flushCallbacks$1(this$1);\n });\n } else {\n flushCallbacks$1(this);\n }\n }\n};\n\n/* */\n\nfunction createEmptyRender() {\n\n}\n\nfunction mountComponent$1(\n vm,\n el,\n hydrating\n) {\n if (!vm.mpType) {//main.js 中的 new Vue\n return vm\n }\n if (vm.mpType === 'app') {\n vm.$options.render = createEmptyRender;\n }\n if (!vm.$options.render) {\n vm.$options.render = createEmptyRender;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n \n !vm._$fallback && callHook(vm, 'beforeMount');\n\n var updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before() {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n return vm\n}\n\n/* */\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/* */\n\nvar MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];\n\nfunction getTarget(obj, path) {\n var parts = path.split('.');\n var key = parts[0];\n if (key.indexOf('__$n') === 0) { //number index\n key = parseInt(key.replace('__$n', ''));\n }\n if (parts.length === 1) {\n return obj[key]\n }\n return getTarget(obj[key], parts.slice(1).join('.'))\n}\n\nfunction internalMixin(Vue) {\n\n Vue.config.errorHandler = function(err, vm, info) {\n Vue.util.warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n console.error(err);\n /* eslint-disable no-undef */\n var app = typeof getApp === 'function' && getApp();\n if (app && app.onError) {\n app.onError(err);\n }\n };\n\n var oldEmit = Vue.prototype.$emit;\n\n Vue.prototype.$emit = function(event) {\n if (this.$scope && event) {\n var triggerEvent = this.$scope['_triggerEvent'] || this.$scope['triggerEvent'];\n if (triggerEvent) {\n try {\n triggerEvent.call(this.$scope, event, {\n __args__: toArray(arguments, 1)\n });\n } catch (error) {\n\n }\n }\n }\n return oldEmit.apply(this, arguments)\n };\n\n Vue.prototype.$nextTick = function(fn) {\n return nextTick$1(this, fn)\n };\n\n MP_METHODS.forEach(function (method) {\n Vue.prototype[method] = function(args) {\n if (this.$scope && this.$scope[method]) {\n return this.$scope[method](args)\n }\n // mp-alipay\n if (typeof my === 'undefined') {\n return\n }\n if (method === 'createSelectorQuery') {\n /* eslint-disable no-undef */\n return my.createSelectorQuery(args)\n } else if (method === 'createIntersectionObserver') {\n /* eslint-disable no-undef */\n return my.createIntersectionObserver(args)\n }\n // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent\n };\n });\n\n Vue.prototype.__init_provide = initProvide;\n\n Vue.prototype.__init_injections = initInjections;\n\n Vue.prototype.__call_hook = function(hook, args) {\n var vm = this;\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n var ret;\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook, args);\n }\n popTarget();\n return ret\n };\n\n Vue.prototype.__set_model = function(target, key, value, modifiers) {\n if (Array.isArray(modifiers)) {\n if (modifiers.indexOf('trim') !== -1) {\n value = value.trim();\n }\n if (modifiers.indexOf('number') !== -1) {\n value = this._n(value);\n }\n }\n if (!target) {\n target = this;\n }\n // 解决动态属性添加\n Vue.set(target, key, value);\n };\n\n Vue.prototype.__set_sync = function(target, key, value) {\n if (!target) {\n target = this;\n }\n // 解决动态属性添加\n Vue.set(target, key, value);\n };\n\n Vue.prototype.__get_orig = function(item) {\n if (isPlainObject(item)) {\n return item['$orig'] || item\n }\n return item\n };\n\n Vue.prototype.__get_value = function(dataPath, target) {\n return getTarget(target || this, dataPath)\n };\n\n\n Vue.prototype.__get_class = function(dynamicClass, staticClass) {\n return renderClass(staticClass, dynamicClass)\n };\n\n Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {\n if (!dynamicStyle && !staticStyle) {\n return ''\n }\n var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);\n var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;\n return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + \":\" + (styleObj[name])); }).join(';')\n };\n\n Vue.prototype.__map = function(val, iteratee) {\n //TODO 暂不考虑 string\n var ret, i, l, keys, key;\n if (Array.isArray(val)) {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = iteratee(val[i], i);\n }\n return ret\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = Object.create(null);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[key] = iteratee(val[key], key, i);\n }\n return ret\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0, l = val; i < l; i++) {\n // 第一个参数暂时仍和小程序一致\n ret[i] = iteratee(i, i);\n }\n return ret\n }\n return []\n };\n\n}\n\n/* */\n\nvar LIFECYCLE_HOOKS$1 = [\n //App\n 'onLaunch',\n 'onShow',\n 'onHide',\n 'onUniNViewMessage',\n 'onPageNotFound',\n 'onThemeChange',\n 'onError',\n 'onUnhandledRejection',\n //Page\n 'onInit',\n 'onLoad',\n // 'onShow',\n 'onReady',\n // 'onHide',\n 'onUnload',\n 'onPullDownRefresh',\n 'onReachBottom',\n 'onTabItemTap',\n 'onAddToFavorites',\n 'onShareTimeline',\n 'onShareAppMessage',\n 'onResize',\n 'onPageScroll',\n 'onNavigationBarButtonTap',\n 'onBackPress',\n 'onNavigationBarSearchInputChanged',\n 'onNavigationBarSearchInputConfirmed',\n 'onNavigationBarSearchInputClicked',\n //Component\n // 'onReady', // 兼容旧版本,应该移除该事件\n 'onPageShow',\n 'onPageHide',\n 'onPageResize',\n 'onUploadDouyinVideo'\n];\nfunction lifecycleMixin$1(Vue) {\n\n //fixed vue-class-component\n var oldExtend = Vue.extend;\n Vue.extend = function(extendOptions) {\n extendOptions = extendOptions || {};\n\n var methods = extendOptions.methods;\n if (methods) {\n Object.keys(methods).forEach(function (methodName) {\n if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {\n extendOptions[methodName] = methods[methodName];\n delete methods[methodName];\n }\n });\n }\n\n return oldExtend.call(this, extendOptions)\n };\n\n var strategies = Vue.config.optionMergeStrategies;\n var mergeHook = strategies.created;\n LIFECYCLE_HOOKS$1.forEach(function (hook) {\n strategies[hook] = mergeHook;\n });\n\n Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;\n}\n\n/* */\n\n// install platform patch function\nVue.prototype.__patch__ = patch;\n\n// public mount method\nVue.prototype.$mount = function(\n el ,\n hydrating \n) {\n return mountComponent$1(this, el, hydrating)\n};\n\nlifecycleMixin$1(Vue);\ninternalMixin(Vue);\n\n/* */\n\nexport default Vue;\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","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode, /* vue-cli only */\n components, // fixed by xxxxxx auto components\n renderjs // fixed by xxxxxx renderjs\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // fixed by xxxxxx auto components\n if (components) {\n if (!options.components) {\n options.components = {}\n }\n var hasOwn = Object.prototype.hasOwnProperty\n for (var name in components) {\n if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {\n options.components[name] = components[name]\n }\n }\n }\n // fixed by xxxxxx renderjs\n if (renderjs) {\n (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {\n this[renderjs.__module] = this\n });\n (options.mixins || (options.mixins = [])).push(renderjs)\n }\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import login from '@/apis/login/index.js'\nimport AllApi from '@/apis/all/index.js'\nexport default {\n\t...login,\n\t...AllApi,\n}\n","import { data } from 'uview-ui/libs/mixin/mixin'\r\nimport request from '../../service/request.js'\r\nimport utils from '../../service/utils.js'\r\nexport default { \r\n\t//登录\r\n\toauthLogin(data) {\r\n\t\treturn request.postFormData('/api/oauth/Login',data)\r\n\t},\r\n\t//获取当前用户信息\r\n\tgetCurrentUserInfo(){\r\n\t\treturn request.get('/api/permission/Users/current/BaseInfo')\r\n\t},\r\n\t\r\n\t//注册\r\n\tregister(data) {\r\n\t\treturn request.post('/api/attract/tbusers',data)\r\n\t},\r\n\t//登录\r\n\tLogin(data) {\r\n\t\treturn request.post('/api/attract/tbusers/loginadmin',data)\r\n\t},\r\n}","module.exports = {\n // 定义每个组件都可能需要用到的外部样式以及类名\n props: {\n // 每个组件都有的父组件传递的样式,可以为字符串或者对象形式\n customStyle: {\n type: [Object, String],\n default: () => ({})\n },\n customClass: {\n type: String,\n default: ''\n },\n // 跳转的页面路径\n url: {\n type: String,\n default: ''\n },\n // 页面跳转的类型\n linkType: {\n type: String,\n default: 'navigateTo'\n }\n },\n data() {\n return {}\n },\n onLoad() {\n // getRect挂载到$u上,因为这方法需要使用in(this),所以无法把它独立成一个单独的文件导出\n this.$u.getRect = this.$uGetRect\n },\n created() {\n // 组件当中,只有created声明周期,为了能在组件使用,故也在created中将方法挂载到$u\n this.$u.getRect = this.$uGetRect\n },\n computed: {\n // 在2.x版本中,将会把$u挂载到uni对象下,导致在模板中无法使用uni.$u.xxx形式\n // 所以这里通过computed计算属性将其附加到this.$u上,就可以在模板或者js中使用uni.$u.xxx\n // 只在nvue环境通过此方式引入完整的$u,其他平台会出现性能问题,非nvue则按需引入(主要原因是props过大)\n $u() {\n\n // 在非nvue端,移除props,http,mixin等对象,避免在小程序setData时数据过大影响性能\n return uni.$u.deepMerge(uni.$u, {\n props: undefined,\n http: undefined,\n mixin: undefined\n })\n\n\n\n\n },\n /**\n * 生成bem规则类名\n * 由于微信小程序,H5,nvue之间绑定class的差异,无法通过:class=\"[bem()]\"的形式进行同用\n * 故采用如下折中做法,最后返回的是数组(一般平台)或字符串(支付宝和字节跳动平台),类似['a', 'b', 'c']或'a b c'的形式\n * @param {String} name 组件名称\n * @param {Array} fixed 一直会存在的类名\n * @param {Array} change 会根据变量值为true或者false而出现或者隐藏的类名\n * @returns {Array|string}\n */\n bem() {\n return function (name, fixed, change) {\n // 类名前缀\n const prefix = `u-${name}--`\n const classes = {}\n if (fixed) {\n fixed.map((item) => {\n // 这里的类名,会一直存在\n classes[prefix + this[item]] = true\n })\n }\n if (change) {\n change.map((item) => {\n // 这里的类名,会根据this[item]的值为true或者false,而进行添加或者移除某一个类\n this[item] ? (classes[prefix + item] = this[item]) : (delete classes[prefix + item])\n })\n }\n return Object.keys(classes)\n // 支付宝,头条小程序无法动态绑定一个数组类名,否则解析出来的结果会带有\",\",而导致失效\n\n\n\n }\n }\n },\n methods: {\n // 跳转某一个页面\n openPage(urlKey = 'url') {\n const url = this[urlKey]\n if (url) {\n // 执行类似uni.navigateTo的方法\n uni[this.linkType]({\n url\n })\n }\n },\n // 查询节点信息\n // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸,为支付宝的bug(2020-07-21)\n // 解决办法为在组件根部再套一个没有任何作用的view元素\n $uGetRect(selector, all) {\n return new Promise((resolve) => {\n uni.createSelectorQuery()\n .in(this)[all ? 'selectAll' : 'select'](selector)\n .boundingClientRect((rect) => {\n if (all && Array.isArray(rect) && rect.length) {\n resolve(rect)\n }\n if (!all && rect) {\n resolve(rect)\n }\n })\n .exec()\n })\n },\n getParentData(parentName = '') {\n // 避免在created中去定义parent变量\n if (!this.parent) this.parent = {}\n // 这里的本质原理是,通过获取父组件实例(也即类似u-radio的父组件u-radio-group的this)\n // 将父组件this中对应的参数,赋值给本组件(u-radio的this)的parentData对象中对应的属性\n // 之所以需要这么做,是因为所有端中,头条小程序不支持通过this.parent.xxx去监听父组件参数的变化\n // 此处并不会自动更新子组件的数据,而是依赖父组件u-radio-group去监听data的变化,手动调用更新子组件的方法去重新获取\n this.parent = uni.$u.$parent.call(this, parentName)\n if (this.parent.children) {\n // 如果父组件的children不存在本组件的实例,才将本实例添加到父组件的children中\n this.parent.children.indexOf(this) === -1 && this.parent.children.push(this)\n }\n if (this.parent && this.parentData) {\n // 历遍parentData中的属性,将parent中的同名属性赋值给parentData\n Object.keys(this.parentData).map((key) => {\n this.parentData[key] = this.parent[key]\n })\n }\n },\n // 阻止事件冒泡\n preventEvent(e) {\n e && typeof (e.stopPropagation) === 'function' && e.stopPropagation()\n },\n // 空操作\n noop(e) {\n this.preventEvent(e)\n }\n },\n onReachBottom() {\n uni.$emit('uOnReachBottom')\n },\n beforeDestroy() {\n // 判断当前页面是否存在parent和chldren,一般在checkbox和checkbox-group父子联动的场景会有此情况\n // 组件销毁时,移除子组件在父组件children数组中的实例,释放资源,避免数据混乱\n if (this.parent && uni.$u.test.array(this.parent.children)) {\n // 组件销毁时,移除父组件中的children数组中对应的实例\n const childrenList = this.parent.children\n childrenList.map((child, index) => {\n // 如果相等,则移除\n if (child === this) {\n childrenList.splice(index, 1)\n }\n })\n }\n }\n}\n","import service from './service.js'\r\nimport BASE_URL from '../common/config.js'\r\nconst get=function(url,data){\r\n\treturn request(url,'GET',data);\r\n}\r\nconst post=function(url,data){\r\n\treturn request(url,'POST',data);\r\n}\r\nconst put=function(url,data){\r\n\treturn request(url,'put',data);\r\n}\r\nconst put1=function(url,data){\r\n\treturn request(url,'put',data,{\r\n\t\t'Content-Type':'application/json-patch+json'\r\n\t});\r\n}\r\nconst postFormData=function(url,data){\r\n\treturn request(url,'POST',data,{\r\n\t\t'Content-Type':'application/x-www-form-urlencoded'\r\n\t});\r\n}\r\nconst del=function(url,data){\r\n\treturn request(url,'DELETE',data);\r\n}\r\n\r\nconst request=function(url,method,data,headers){\r\n\tlet header= {};\r\n\tlet urlsNoAuth=['/authentication/form'];\r\n\tif(!urlsNoAuth.includes(url)){\r\n\t\theader['Authorization']=`${service.getToken()}`\r\n\t}\r\n\tif(!url.includes('https://')){\r\n\t\turl=BASE_URL+url;\r\n\t}\r\n\tif(headers){\r\n\t\theader = Object.assign({},header,headers)\r\n\t}\r\n\treturn new Promise((resolve,reject)=>{\r\n\t\tconsole.log(\"111111111111111111111\");\r\n\t\tuni.request({\r\n\t\t url,\r\n\t\t data,\r\n\t\t\tmethod,\r\n\t\t header,\r\n\t\t\ttimeout:50000,\r\n\t\t success: (res) => {\r\n\t\t\t\tif(res.statusCode === 200){\r\n\t\t\t\t\tif(res.data.code == 600 || res.data.msg == '登录过期,请重新登录'){\r\n\t\t\t\t\t\tconsole.log('登录过期,跳转到登录界面');\r\n\t\t\t\t\t\tuni.redirectTo({\r\n\t\t\t\t\t\t\turl:'/pages/Login/index'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(res.data.code < 0 && res.data.message){\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ticon:'none',\r\n\t\t\t\t\t\t title: res.data.data.message,\r\n\t\t\t\t\t\t duration: 2000\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treject();\r\n\t\t\t\t\t}else if(!res.data.flag && res.data.code === 500){\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ticon:'none',\r\n\t\t\t\t\t\t title: res.data.msg || '操作失败,请联系管理员',\r\n\t\t\t\t\t\t duration: 2000\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treject();\r\n\t\t\t\t\t}else{\r\n\t\t\t\t\t\tresolve(res.data);\r\n\t\t\t\t\t}\r\n\t\t\t\t}else if(res.statusCode === 403 || res.statusCode === 401){\r\n\t\t\t\t\tservice.addToken('');\r\n\t\t\t\t\tuni.redirectTo({\r\n\t\t\t\t\t\turl:'/pages/login/index'\r\n\t\t\t\t\t});\r\n\t\t\t\t\treject();\r\n\t\t\t\t}else{\r\n\t\t\t\t\treject();\r\n\t\t\t\t\t// uni.showToast({\r\n\t\t\t\t\t// \ticon:'none',\r\n\t\t\t\t\t// title: res.data.msg || '系统繁忙!',\r\n\t\t\t\t\t// duration: 2000\r\n\t\t\t\t\t// });\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t },\r\n\t\t\tfail: (error) => {\r\n\t\t\t\tuni.hideLoading();\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n}\r\n \r\n export default {\r\n \tget,\r\n \tpost,\r\n\tdel,\r\n\trequest,\r\n\tpostFormData,\r\n\tput,\r\n\tput1\r\n }","import Vue from 'vue'\r\n \r\n // 管理账号信息\r\n \r\n const USERS_KEY = 'USERS_KEY';\r\n\r\n const TOKEN_KEY = 'UserToken_KEY';\r\n const ORDER_COUNT_KEY = 'ORDER_COUNT_KEY';\r\n const SYSTEM_INFO_KEY = 'SYSTEM_INFO_KEY';\r\n\r\n const getToken = function() {\r\n \tlet ret = uni.getStorageSync(TOKEN_KEY);\r\n \treturn ret || '';\r\n }\r\n const addToken = function(val) {\r\n \tuni.setStorageSync(TOKEN_KEY, val);\r\n }\r\n const saveUser = function(user){\r\n\t uni.setStorageSync(USERS_KEY, user);\r\n }\r\n const getUser = function() {\r\n \tlet ret = uni.getStorageSync(USERS_KEY) || {};\r\n\tif(ret && ret.id){\r\n\t\treturn ret;\r\n\t}else{\r\n\t\treturn ret;\r\n\t}\r\n }\r\n const getOrderCount = function() {\r\n \tlet ret = uni.getStorageSync(ORDER_COUNT_KEY);\r\n \treturn ret || '';\r\n }\r\n const addOrderCount = function(val) {\r\n \tuni.setStorageSync(ORDER_COUNT_KEY, val);\r\n }\r\n const updateOrderCount = function(val){\r\n\t if(val){\r\n\t\t addOrderCount(val);\r\n\t }else{\r\n\t\t if(getToken()){\r\n\t\t }\r\n\t }\r\n }\r\n const setSystemInfo = function(info){\r\n\t uni.setStorageSync(SYSTEM_INFO_KEY, info);\r\n }\r\n const getSystemInfo = function(){\r\n\t return new Promise((resolve,reject)=>{\r\n\t\t let info=uni.getStorageSync(SYSTEM_INFO_KEY);\r\n\t\t if(info && info.statusBarHeight){\r\n\t\t \tresolve(info);\r\n\t\t }else{\r\n\t\t\tuni.getSystemInfo({\r\n\t\t\t success: function (res) {\r\n\t\t\t\t\tresolve(res);\r\n\t\t\t\t\tsetSystemInfo(res);\r\n\t\t\t },\r\n\t\t\t\tfail:function(){\r\n\t\t\t\t\treject();\r\n\t\t\t\t}\r\n\t\t\t}); \r\n\t\t }\r\n\t });\r\n }\r\n const getPayDomain = ()=>{\r\n\t return new Promise((resolve,reject)=>{\r\n\t\t Vue.prototype.API.PayDomain().then(res=>{\r\n\t\t\t if(res.code>0 && res.data){\r\n\t\t\t\t resolve(res.data);\r\n\t\t\t }else{\r\n\r\n\t\t\t\t resolve('http://manage.casichtzh.com/');\r\n\t\t\t }\r\n\t\t })\r\n\t });\r\n }\r\n export default {\r\n \tgetToken,\r\n \taddToken,\r\n\tsaveUser,\r\n\tgetUser,\r\n\tgetOrderCount,\r\n\taddOrderCount,\r\n\tupdateOrderCount,\r\n\tgetSystemInfo,\r\n\tsetSystemInfo,\r\n\tgetPayDomain,\r\n }\r\n","// let BASE_URL ='http://119.3.1.28:8011'\r\n// let BASE_URL = \"http://119.3.1.28:8011\"\r\nlet BASE_URL = \"http://8.130.163.46:8065\"\r\n// let BASE_URL = \"http://localhost:2021\"\r\nexport default BASE_URL","// import { pathToBase64, base64ToPath } from '../js_sdk/image-tools/index.js'\r\nconst utils={\r\n\tObjectToQureyParams(obj){\r\n\t\tlet arr=[]\r\n\t\tfor(let key in obj){\r\n\t\t\tarr.push(`${key}=${obj[key]}`);\r\n\t\t}\r\n\t\treturn arr.join('&');\r\n\t},\r\n\tformatTime(date,formatStr){\r\n\t\tformatStr=formatStr || 'yyyy-MM-dd HH:mm:ss';\r\n\t\tdate=new Date(date)||new Date();\r\n\t\tformatStr = formatStr.replace('yyyy',date.getFullYear());\r\n\t\tformatStr = formatStr.replace('MM',(date.getMonth()+1).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('dd',(date.getDate()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('HH',(date.getHours()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('mm',(date.getMinutes()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('ss',(date.getSeconds()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('M',(date.getMonth()+1));\r\n\t\tformatStr = formatStr.replace('d',date.getDate());\r\n\t\tformatStr = formatStr.replace('H',date.getHours());\r\n\t\tformatStr = formatStr.replace('m',date.getMinutes());\r\n\t\tformatStr = formatStr.replace('s',date.getSeconds());\r\n\t\treturn formatStr;\r\n\t},\r\n\tformatTime1(date,formatStr){\r\n\t\tformatStr=formatStr || 'yyyy-MM-dd';\r\n\t\tdate=new Date(date)||new Date();\r\n\t\tformatStr = formatStr.replace('yyyy',date.getFullYear());\r\n\t\tformatStr = formatStr.replace('MM',(date.getMonth()+1).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('dd',(date.getDate()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('HH',(date.getHours()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('mm',(date.getMinutes()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('ss',(date.getSeconds()).toString().padStart(2,'0'));\r\n\t\tformatStr = formatStr.replace('M',(date.getMonth()+1));\r\n\t\tformatStr = formatStr.replace('d',date.getDate());\r\n\t\treturn formatStr;\r\n\t},\r\n\tparseTime(str){\r\n\t\treturn new Date(str);\r\n\t},\r\n\t// imagePathToBase64(path){\r\n\t// \treturn new Promise((resolve,reject)=>{\r\n\t// \t\tpathToBase64(path)\r\n\t// \t\t .then(base64 => {\r\n\t// \t\t resolve(base64)\r\n\t// \t\t })\r\n\t// \t\t .catch(error => {\r\n\t// \t\t reject(error)\r\n\t// \t\t })\r\n\t// \t});\r\n\t// },\r\n\tgetUrlQueryParam(url,key){\r\n\t\ttry{\r\n\t\t\tlet query=url.split('?')[1];\r\n\t\t\tquery = query.split('&');\r\n\t\t\treturn query.map(t=>{\r\n\t\t\t\treturn {\r\n\t\t\t\t\tkey:t.split('=')[0],\r\n\t\t\t\t\tval:t.split('=')[1]\r\n\t\t\t\t}\r\n\t\t\t}).find(t=>t.key == key).val;\r\n\t\t}catch(e){\r\n\t\t\treturn '';\r\n\t\t}\r\n\t\t\r\n\t}\r\n\t\r\n};\r\nexport default utils;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import request from '../../service/request.js'\nimport utils from '@/service/utils.js'\nexport default {\n\t//获取政策咨询\n\tGetTbpolicy(data) {\n\t\treturn request.get(`/api/attract/tbpolicy?currentPage=${data.currentPage}&pageSize=${data.pageSize}`, )\n\t},\n\t//通过ID获取政策咨询详细信息\n\tGetTbpolicyById(id) {\n\t\treturn request.get(`/api/attract/tbpolicy/GetInfoOne?id=${id}`, )\n\t},\n\n\t//培训考证\n\tGettbtraininfo(data) {\n\t\treturn request.get(\n\t\t\t`/api/attract/tbtraininfo?type=${data.name}¤tPage=${data.currentPage}&pageSize=${data.pageSize}`,\n\t\t)\n\t},\n\t//通过ID培训考证详细信息\n\tGettbtraininfoById(id) {\n\t\treturn request.get(`/api/attract/tbtraininfo/${id}`)\n\t},\n\t//培训报名\n\tApplyT(id) {\n\t\treturn request.post(`/api/attract/tbapplyt/ApplyT?id=${id}`)\n\t},\n\t//设置招工信息\n\tCreateRres(data) {\n\t\tconsole.log(data);\n\t\treturn request.post(`/api/attract/fcompany/CreateRres`, data)\n\t},\n\t//获取当前登录账号的招工信息\n\tGetRresOne() {\n\t\treturn request.get(`/api/attract/fcompany/GetOne`)\n\t},\n\t//获取招聘列表\n\tGettbrecruit(data) {\n\t\treturn request.get(\n\t\t\t`/api/attract/tbrecruit?keyword=${data.keyword}¤tPage=${data.currentPage}&pageSize=${data.pageSize}&sidx=${data.sidx}&sort=${data.sort}`,\n\t\t)\n\t},\n\t//获取招聘详细\n\tGettbrecruitById(id) {\n\t\treturn request.get(`/api/attract/tbrecruit/${id}`, )\n\t},\n\t//提交招聘\n\tPostApplyL(id) {\n\t\treturn request.post(`/api/attract/tbapplyi/ApplyL?id=${id}`, )\n\t},\n\n\t//获取商品分类\n\tGettbgoodstype(data) {\n\t\treturn request.get(`/api/attract/tbgoodstype?currentPage=${data.currentPage}&pageSize=${data.pageSize}`, )\n\t},\n\n\t//获取商品分类下面的产品\n\tGettGetListCom(data) {\n\t\treturn request.get(\n\t\t\t`/api/attract/tbgoods/GetListCom?type=${data.type}¤tPage=${data.currentPage}&pageSize=${data.pageSize}`,\n\t\t)\n\t},\n\t//通过ID获取产品详细\n\tGettbgoodscompanyById(id) {\n\t\treturn request.get(`/api/attract/tbgoods/GetInfoNum?id=${id}`, )\n\t},\n\n\t//设置简历信息\n\tCreateRres(data) {\n\t\tconsole.log(data);\n\t\treturn request.post(`/api/attract/tbresume/CreateRres`, data)\n\t},\n\t//获取当前登录账号的简历信息\n\tGettbresumeOne() {\n\t\treturn request.get(`/api/attract/tbresume/GetOne`)\n\t},\n\n\t//获取人力资源外包信息\n\tGetTrue() {\n\t\treturn request.get(`/api/attract/tbepiboly/GetTrue`)\n\t},\n\t//获取首页轮播图\n\tGettbbanner() {\n\t\treturn request.get(`/api/attract/tbbanner?currentPage=1&pageSize=10`)\n\t},\n\t//获取政策轮播图\n\tGettbzcbanner() {\n\t\treturn request.get(`/api/attract/tbzcbanner?currentPage=1&pageSize=10`)\n\t},\n\tGetDetail(id){\n\t\treturn request.get(`/api/attract/TbText/${id}`)\n\t},\n\t//获取客服电话\n\tGetPhone(){\n\t\treturn request.get(`/api/attract/tbrelation/GetPhone`)\n\t},\n\t//添加意见反馈\n\tCreatetbidea(data) {\n\t\treturn request.post(`/api/attract/tbidea`, data)\n\t},\n}\n","// mescroll-body 和 mescroll-uni 通用\r\n\r\n// import MescrollUni from \"./mescroll-uni.vue\";\r\n// import MescrollBody from \"./mescroll-body.vue\";\r\n\r\nconst MescrollMixin = {\r\n\t// components: { // 非H5端无法通过mixin注册组件, 只能在main.js中注册全局组件或具体界面中注册\r\n\t// \tMescrollUni,\r\n\t// \tMescrollBody\r\n\t// },\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmescroll: null //mescroll实例对象\r\n\t\t}\r\n\t},\r\n\t// 注册系统自带的下拉刷新 (配置down.native为true时生效, 还需在pages配置enablePullDownRefresh:true;详请参考mescroll-native的案例)\r\n\tonPullDownRefresh(){\r\n\t\tthis.mescroll && this.mescroll.onPullDownRefresh();\r\n\t},\r\n\t// 注册列表滚动事件,用于判定在顶部可下拉刷新,在指定位置可显示隐藏回到顶部按钮 (此方法为页面生命周期,无法在子组件中触发, 仅在mescroll-body生效)\r\n\tonPageScroll(e) {\r\n\t\tthis.mescroll && this.mescroll.onPageScroll(e);\r\n\t},\r\n\t// 注册滚动到底部的事件,用于上拉加载 (此方法为页面生命周期,无法在子组件中触发, 仅在mescroll-body生效)\r\n\tonReachBottom() {\r\n\t\tthis.mescroll && this.mescroll.onReachBottom();\r\n\t},\r\n\tmethods: {\r\n\t\t// mescroll组件初始化的回调,可获取到mescroll对象\r\n\t\tmescrollInit(mescroll) {\r\n\t\t\tthis.mescroll = mescroll;\r\n\t\t\tthis.mescrollInitByRef(); // 兼容字节跳动小程序\r\n\t\t},\r\n\t\t// 以ref的方式初始化mescroll对象 (兼容字节跳动小程序)\r\n\t\tmescrollInitByRef() {\r\n\t\t\tif(!this.mescroll || !this.mescroll.resetUpScroll){\r\n\t\t\t\tlet mescrollRef = this.$refs.mescrollRef;\r\n\t\t\t\tif(mescrollRef) this.mescroll = mescrollRef.mescroll\r\n\t\t\t}\r\n\t\t},\r\n\t\t// 下拉刷新的回调 (mixin默认resetUpScroll)\r\n\t\tdownCallback() {\r\n\t\t\tif(this.mescroll){\r\n\t\t\t\tif(this.mescroll.optUp.use){\r\n\t\t\t\t\tthis.mescroll.resetUpScroll()\r\n\t\t\t\t}else{\r\n\t\t\t\t\tsetTimeout(()=>{\r\n\t\t\t\t\t\tthis.mescroll.endSuccess();\r\n\t\t\t\t\t}, 500)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\t// 上拉加载的回调\r\n\t\tupCallback() {\r\n\t\t\t// mixin默认延时500自动结束加载\r\n\t\t\tsetTimeout(()=>{\r\n\t\t\t\tthis.mescroll.endErr();\r\n\t\t\t}, 500)\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\t\tthis.mescrollInitByRef(); // 兼容字节跳动小程序, 避免未设置@init或@init此时未能取到ref的情况\r\n\t}\r\n\t\r\n}\r\n\r\nexport default MescrollMixin;\r\n","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {\n ;\n }\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"sourceRoot":""} | ||
| 3 | \ No newline at end of file | 3 | \ No newline at end of file |
unpackage/dist/dev/.sourcemap/mp-weixin/pages/AllWork/AllWork.js.map
| 1 | -{"version":3,"sources":["uni-app:///main.js","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?0a73","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?1d05","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?ec45","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?8ef5","uni-app:///pages/AllWork/AllWork.vue","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?94e7","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?249d"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","mixins","components","TabBar","customHead","data","BASE_URL","headtitle","mescroll","downOption","upOption","tbrecruitList","query","currentPage","pageSize","keyword","onReady","uni","onLoad","methods","JobsDetails","url","Searchtbrecruit","Gettbrecruit","getDifferTime","startDate","getNowDate","month","day","formatDateTime","MM","d","h","m","s","downCallback","that","upCallback","setTimeout","onArticle"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,gBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAgI;AAChI;AAC2D;AACL;AACsC;;;AAG5F;AACgN;AAChN,gBAAgB,iNAAU;AAC1B,EAAE,6EAAM;AACR,EAAE,8FAAM;AACR,EAAE,uGAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,kGAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA,aAAa,4KAEN;AACP,KAAK;AACL;AACA,CAAC;AACD;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;AACA;AACA,GAAG;AACH;AACA,MAAM;AACN;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACjDA;AAAA;AAAA;AAAA;AAAq0B,CAAgB,qyBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;AC4Cz1B;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eACA;EACAC;EAAA;EACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MAAA;MACA;MACAC;MACA;MACAC;MACAC;MACAC;QACAC;QACAC;QACAC;MACA;IACA;EACA;EACAC;IACAC;EAEA;EACAC;IACA;IACA;EACA;EACAC;IACAC;MACAH;QACAI;MACA;IACA;IACAC;MACA;MACA;MACA;MACA;IACA;IACAC;MAAA;MAEA;QACA;MACA;IACA;IACAC;MACAC;MACA;MACA;MACA;MACA;MACA;QACA;MACA;QACA;MACA;IACA;IACAC;MACA;MACA;MACA;MACA;MACAC;MACAC;MACA;MACA;IACA;IACAC;MAAA;MACA;QACA;MACA;QACA;QACA;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;MACA;IACA;IACA,qBACAC;MACA;MACA;MACAC;MACAA;MACA;IACA;IACA,WACAC;MAAA;MACAC;QACA;MACA;IACA;IACA;AACA;AACA;IACAC;MACAtB;QACAI;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AClKA;AAAA;AAAA;AAAA;AAA4jD,CAAgB,47CAAG,EAAC,C;;;;;;;;;;;ACAhlD;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/AllWork/AllWork.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/AllWork/AllWork.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./AllWork.vue?vue&type=template&id=a9eced28&scoped=true&\"\nvar renderjs\nimport script from \"./AllWork.vue?vue&type=script&lang=js&\"\nexport * from \"./AllWork.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AllWork.vue?vue&type=style&index=0&id=a9eced28&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a9eced28\",\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/AllWork/AllWork.vue\"\nexport default component.exports","export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=template&id=a9eced28&scoped=true&\"","var components\ntry {\n components = {\n TabBar: function () {\n return import(\n /* webpackChunkName: \"components/TabBar/TabBar\" */ \"@/components/TabBar/TabBar.vue\"\n )\n },\n }\n} catch (e) {\n if (\n e.message.indexOf(\"Cannot find module\") !== -1 &&\n e.message.indexOf(\".vue\") !== -1\n ) {\n console.error(e.message)\n console.error(\"1. 排查组件名称拼写是否正确\")\n console.error(\n \"2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n )\n console.error(\n \"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件\"\n )\n } else {\n throw e\n }\n}\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n var l0 = _vm.__map(_vm.tbrecruitList, function (item, __i0__) {\n var $orig = _vm.__get_orig(item)\n var m0 = _vm.getDifferTime(item.lastModifyTime)\n return {\n $orig: $orig,\n m0: m0,\n }\n })\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n l0: l0,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view>\r\n\t\t<view class=\"search-box\">\r\n\t\t\t<view class=\"search\">\r\n\t\t\t\t<view class=\"iconfont icon-fadajing\"></view>\r\n\t\t\t\t<input type=\"text\" placeholder=\"热门搜索:成都、高薪\" v-model=\"query.keyword\" />\r\n\t\t\t\t<view class=\"search-btn\" @click=\"Searchtbrecruit()\">搜索</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"title-screen\">\r\n\t\t\t<view class=\"title-screen-box\">发布时间<image src=\"../../static/down.png\"></image>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<!-- 文章数据 -->\r\n\t\t<mescroll-body ref=\"mescrollRef\" @down=\"downCallback\" @up=\"upCallback\" :down=\"downOption\" :up=\"upOption\"\r\n\t\t\t:top=\"0\">\r\n\t\t\t<view class=\"record-list\">\r\n\t\t\t\t<view class=\"list\" @click=\"JobsDetails(item.id)\" v-for=\"item in tbrecruitList\">\r\n\t\t\t\t\t<view class=\"title-date\">\r\n\t\t\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t\t\t<text class=\"two-omit\">{{item.companyName}}-{{item.jop}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view class=\"date\">\r\n\t\t\t\t\t\t\t<text class=\"one-omit\">{{item.introduce}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t<view class=\"yellow-btn\">{{getDifferTime(item.lastModifyTime)}}</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t\t<view class=\"integral\">\r\n\t\t\t\t\t\t<text class=\"integral-btn\">{{item.jopName}}</text>\r\n\t\t\t\t\t\t<view class=\"integral-num\">{{item.pay}}</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\r\n\t\t\t</view>\r\n\r\n\t\t</mescroll-body>\r\n\t\t<!-- tabbar -->\r\n\t\t<TabBar :tabBarShow=\"1\"></TabBar>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport BASE_URL from '@/common/config.js'\r\n\timport TabBar from '../../components/TabBar/TabBar.vue';\r\n\timport customHead from \"@/components/xy-customhead/xy-customhead.vue\";\r\n\t// 引入mescroll-mixins.js\r\n\timport MescrollMixin from \"@/components/mescroll-uni/mescroll-mixins.js\";\r\n\texport default {\r\n\t\tmixins: [MescrollMixin], // 使用mixin\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tcustomHead,\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tBASE_URL,\r\n\t\t\t\theadtitle: '铭钛招聘',\r\n\t\t\t\tmescroll: null, // mescroll实例对象 (此行可删,mixins已默认)\r\n\t\t\t\t// 下拉刷新的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tdownOption: {},\r\n\t\t\t\t// 上拉加载的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tupOption: {},\r\n\t\t\t\ttbrecruitList: [],\r\n\t\t\t\tquery: {\r\n\t\t\t\t\tcurrentPage: 1,\r\n\t\t\t\t\tpageSize: 10,\r\n\t\t\t\t\tkeyword: \"\",\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t},\r\n\t\tonReady() {\r\n\t\t\tuni.hideTabBar();\r\n\r\n\t\t},\r\n\t\tonLoad(e) {\r\n\t\t\tthis.query.keyword = e.keyword;\r\n\t\t\tthis.Gettbrecruit();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tJobsDetails(id) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/JobsDetails/JobsDetails?id=' + id\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tSearchtbrecruit() {\r\n\t\t\t\tthis.query.currentPage = 1;\r\n\t\t\t\tthis.query.pageSize = 10;\r\n\t\t\t\tthis.tbrecruitList = [];\r\n\t\t\t\tthis.Gettbrecruit();\r\n\t\t\t},\r\n\t\t\tGettbrecruit() {\r\n\r\n\t\t\t\tthis.API.Gettbrecruit(this.query).then(res => {\r\n\t\t\t\t\tthis.tbrecruitList = res.data.list;\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tgetDifferTime(startDate) {\r\n\t\t\t\tstartDate = this.formatDateTime(startDate);\r\n\t\t\t\tlet startTime = new Date(Date.parse(startDate.replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet endTime = new Date(Date.parse(this.getNowDate().replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet dates = Math.abs((startTime - endTime)) / (1000 * 60 * 60 * 24);\r\n\t\t\t\tlet DayNumber = Math.ceil(dates);\r\n\t\t\t\tif (DayNumber <= 7) {\r\n\t\t\t\t\treturn DayNumber + \"天内发布\"\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn DayNumber + \"天前发布\"\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgetNowDate() {\r\n\t\t\t\tconst timeOne = new Date()\r\n\t\t\t\tconst year = timeOne.getFullYear()\r\n\t\t\t\tlet month = timeOne.getMonth() + 1\r\n\t\t\t\tlet day = timeOne.getDate()\r\n\t\t\t\tmonth = month < 10 ? '0' + month : month\r\n\t\t\t\tday = day < 10 ? '0' + day : day\r\n\t\t\t\tconst NOW_MONTHS_AGO = `${year}-${month}-${day}`\r\n\t\t\t\treturn NOW_MONTHS_AGO\r\n\t\t\t},\r\n\t\t\tformatDateTime(value) { // 时间戳转换日期格式方法\r\n\t\t\t\tif (value == null) {\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst date = new Date(value)\r\n\t\t\t\t\tconst y = date.getFullYear() // 年\r\n\t\t\t\t\tlet MM = date.getMonth() + 1 // 月\r\n\t\t\t\t\tMM = MM < 10 ? ('0' + MM) : MM\r\n\t\t\t\t\tlet d = date.getDate() // 日\r\n\t\t\t\t\td = d < 10 ? ('0' + d) : d\r\n\t\t\t\t\tlet h = date.getHours() // 时\r\n\t\t\t\t\th = h < 10 ? ('0' + h) : h\r\n\t\t\t\t\tlet m = date.getMinutes() // 分\r\n\t\t\t\t\tm = m < 10 ? ('0' + m) : m\r\n\t\t\t\t\tlet s = date.getSeconds() // 秒\r\n\t\t\t\t\ts = s < 10 ? ('0' + s) : s\r\n\t\t\t\t\treturn y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t/*下拉刷新的回调, 有三种处理方式:*/\r\n\t\t\tdownCallback() {\r\n\t\t\t\tthis.mescroll.endSuccess();\r\n\t\t\t\tvar that = this;\r\n\t\t\t\tthat.query.currentPage = 1;\r\n\t\t\t\tthat.query.pageSize = 10;\r\n\t\t\t\tthis.Gettbrecruit(that.query);\r\n\t\t\t},\r\n\t\t\t/*上拉加载的回调*/\r\n\t\t\tupCallback(page) {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tthis.mescroll.endByPage(10, 20);\r\n\t\t\t\t}, 2000)\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 文章点击\r\n\t\t\t */\r\n\t\t\tonArticle(id) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/ArticleDetails/ArticleDetails?id=' + id,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n\t@import 'AllWork.scss';\r\n</style>\n","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=style&index=0&id=a9eced28&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=style&index=0&id=a9eced28&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1675071447467\n var cssReload = require(\"/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} | ||
| 2 | \ No newline at end of file | 1 | \ No newline at end of file |
| 2 | +{"version":3,"sources":["uni-app:///main.js",null,"webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?1d05","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?ec45","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?8ef5","uni-app:///pages/AllWork/AllWork.vue","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?94e7","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/AllWork/AllWork.vue?249d"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","mixins","components","TabBar","customHead","data","BASE_URL","headtitle","mescroll","downOption","upOption","tbrecruitList","query","currentPage","pageSize","keyword","sidx","sort","onReady","uni","onLoad","methods","JobsDetails","url","Searchtbrecruit","Gettbrecruit","getDifferTime","startDate","getNowDate","month","day","formatDateTime","MM","d","h","m","s","downCallback","that","upCallback","setTimeout","onArticle"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,gBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAgI;AAChI;AAC2D;AACL;AACsC;;;AAG5F;AACgN;AAChN,gBAAgB,iNAAU;AAC1B,EAAE,6EAAM;AACR,EAAE,8FAAM;AACR,EAAE,uGAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,kGAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA,aAAa,4KAEN;AACP,KAAK;AACL;AACA,CAAC;AACD;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;AACA;AACA,GAAG;AACH;AACA,MAAM;AACN;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACjDA;AAAA;AAAA;AAAA;AAAq0B,CAAgB,qyBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;AC4Cz1B;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eACA;EACAC;EAAA;EACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MAAA;MACA;MACAC;MACA;MACAC;MACAC;MACAC;QACAC;QACAC;QACAC;QACAC;QACAC;MACA;IACA;EACA;EACAC;IACAC;EAEA;EACAC;IACA;IACA;EACA;EACAC;IACAC;MACAH;QACAI;MACA;IACA;IACAC;MACA;MACA;MACA;MACA;IACA;IACAC;MAAA;MAEA;QACA;MACA;IACA;IACAC;MACAC;MACA;MACA;MACA;MACA;MACA;QACA;MACA;QACA;MACA;IACA;IACAC;MACA;MACA;MACA;MACA;MACAC;MACAC;MACA;MACA;IACA;IACAC;MAAA;MACA;QACA;MACA;QACA;QACA;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;MACA;IACA;IACA,qBACAC;MACA;MACA;MACAC;MACAA;MACA;IACA;IACA,WACAC;MAAA;MACAC;QACA;MACA;IACA;IACA;AACA;AACA;IACAC;MACAtB;QACAI;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;ACpKA;AAAA;AAAA;AAAA;AAA4jD,CAAgB,47CAAG,EAAC,C;;;;;;;;;;;ACAhlD;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/AllWork/AllWork.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/AllWork/AllWork.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./AllWork.vue?vue&type=template&id=a9eced28&scoped=true&\"\nvar renderjs\nimport script from \"./AllWork.vue?vue&type=script&lang=js&\"\nexport * from \"./AllWork.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AllWork.vue?vue&type=style&index=0&id=a9eced28&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a9eced28\",\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/AllWork/AllWork.vue\"\nexport default component.exports","export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=template&id=a9eced28&scoped=true&\"","var components\ntry {\n components = {\n TabBar: function () {\n return import(\n /* webpackChunkName: \"components/TabBar/TabBar\" */ \"@/components/TabBar/TabBar.vue\"\n )\n },\n }\n} catch (e) {\n if (\n e.message.indexOf(\"Cannot find module\") !== -1 &&\n e.message.indexOf(\".vue\") !== -1\n ) {\n console.error(e.message)\n console.error(\"1. 排查组件名称拼写是否正确\")\n console.error(\n \"2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n )\n console.error(\n \"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件\"\n )\n } else {\n throw e\n }\n}\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n var l0 = _vm.__map(_vm.tbrecruitList, function (item, __i0__) {\n var $orig = _vm.__get_orig(item)\n var m0 = _vm.getDifferTime(item.lastModifyTime)\n return {\n $orig: $orig,\n m0: m0,\n }\n })\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n l0: l0,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view>\r\n\t\t<view class=\"search-box\">\r\n\t\t\t<view class=\"search\">\r\n\t\t\t\t<view class=\"iconfont icon-fadajing\"></view>\r\n\t\t\t\t<input type=\"text\" placeholder=\"热门搜索:成都、高薪\" v-model=\"query.keyword\" />\r\n\t\t\t\t<view class=\"search-btn\" @click=\"Searchtbrecruit()\">搜索</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"title-screen\">\r\n\t\t\t<view class=\"title-screen-box\">发布时间<image src=\"../../static/down.png\"></image>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<!-- 文章数据 -->\r\n\t\t<mescroll-body ref=\"mescrollRef\" @down=\"downCallback\" @up=\"upCallback\" :down=\"downOption\" :up=\"upOption\"\r\n\t\t\t:top=\"0\">\r\n\t\t\t<view class=\"record-list\">\r\n\t\t\t\t<view class=\"list\" @click=\"JobsDetails(item.id)\" v-for=\"item in tbrecruitList\">\r\n\t\t\t\t\t<view class=\"title-date\">\r\n\t\t\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t\t\t<text class=\"two-omit\">{{item.companyName}}-{{item.jop}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view class=\"date\">\r\n\t\t\t\t\t\t\t<text class=\"one-omit\">{{item.introduce}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t<view class=\"yellow-btn\">{{getDifferTime(item.lastModifyTime)}}</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t\t<view class=\"integral\">\r\n\t\t\t\t\t\t<text class=\"integral-btn\">{{item.jopName}}</text>\r\n\t\t\t\t\t\t<view class=\"integral-num\">{{item.pay}}</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\r\n\t\t\t</view>\r\n\r\n\t\t</mescroll-body>\r\n\t\t<!-- tabbar -->\r\n\t\t<TabBar :tabBarShow=\"1\"></TabBar>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport BASE_URL from '@/common/config.js'\r\n\timport TabBar from '../../components/TabBar/TabBar.vue';\r\n\timport customHead from \"@/components/xy-customhead/xy-customhead.vue\";\r\n\t// 引入mescroll-mixins.js\r\n\timport MescrollMixin from \"@/components/mescroll-uni/mescroll-mixins.js\";\r\n\texport default {\r\n\t\tmixins: [MescrollMixin], // 使用mixin\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tcustomHead,\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tBASE_URL,\r\n\t\t\t\theadtitle: '铭钛招聘',\r\n\t\t\t\tmescroll: null, // mescroll实例对象 (此行可删,mixins已默认)\r\n\t\t\t\t// 下拉刷新的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tdownOption: {},\r\n\t\t\t\t// 上拉加载的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tupOption: {},\r\n\t\t\t\ttbrecruitList: [],\r\n\t\t\t\tquery: {\r\n\t\t\t\t\tcurrentPage: 1,\r\n\t\t\t\t\tpageSize: 10,\r\n\t\t\t\t\tkeyword: \"\",\n\t\t\t\t\tsidx:\"lastModifyTime\",\n\t\t\t\t\tsort:\"desc\"\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t},\r\n\t\tonReady() {\r\n\t\t\tuni.hideTabBar();\r\n\r\n\t\t},\r\n\t\tonLoad(e) {\r\n\t\t\tthis.query.keyword = e.keyword;\r\n\t\t\tthis.Gettbrecruit();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tJobsDetails(id) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/JobsDetails/JobsDetails?id=' + id\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tSearchtbrecruit() {\r\n\t\t\t\tthis.query.currentPage = 1;\r\n\t\t\t\tthis.query.pageSize = 10;\r\n\t\t\t\tthis.tbrecruitList = [];\r\n\t\t\t\tthis.Gettbrecruit();\r\n\t\t\t},\r\n\t\t\tGettbrecruit() {\r\n\r\n\t\t\t\tthis.API.Gettbrecruit(this.query).then(res => {\r\n\t\t\t\t\tthis.tbrecruitList = res.data.list;\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tgetDifferTime(startDate) {\r\n\t\t\t\tstartDate = this.formatDateTime(startDate);\r\n\t\t\t\tlet startTime = new Date(Date.parse(startDate.replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet endTime = new Date(Date.parse(this.getNowDate().replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet dates = Math.abs((startTime - endTime)) / (1000 * 60 * 60 * 24);\r\n\t\t\t\tlet DayNumber = Math.ceil(dates);\r\n\t\t\t\tif (DayNumber <= 7) {\r\n\t\t\t\t\treturn DayNumber + \"天内发布\"\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn DayNumber + \"天前发布\"\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgetNowDate() {\r\n\t\t\t\tconst timeOne = new Date()\r\n\t\t\t\tconst year = timeOne.getFullYear()\r\n\t\t\t\tlet month = timeOne.getMonth() + 1\r\n\t\t\t\tlet day = timeOne.getDate()\r\n\t\t\t\tmonth = month < 10 ? '0' + month : month\r\n\t\t\t\tday = day < 10 ? '0' + day : day\r\n\t\t\t\tconst NOW_MONTHS_AGO = `${year}-${month}-${day}`\r\n\t\t\t\treturn NOW_MONTHS_AGO\r\n\t\t\t},\r\n\t\t\tformatDateTime(value) { // 时间戳转换日期格式方法\r\n\t\t\t\tif (value == null) {\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst date = new Date(value)\r\n\t\t\t\t\tconst y = date.getFullYear() // 年\r\n\t\t\t\t\tlet MM = date.getMonth() + 1 // 月\r\n\t\t\t\t\tMM = MM < 10 ? ('0' + MM) : MM\r\n\t\t\t\t\tlet d = date.getDate() // 日\r\n\t\t\t\t\td = d < 10 ? ('0' + d) : d\r\n\t\t\t\t\tlet h = date.getHours() // 时\r\n\t\t\t\t\th = h < 10 ? ('0' + h) : h\r\n\t\t\t\t\tlet m = date.getMinutes() // 分\r\n\t\t\t\t\tm = m < 10 ? ('0' + m) : m\r\n\t\t\t\t\tlet s = date.getSeconds() // 秒\r\n\t\t\t\t\ts = s < 10 ? ('0' + s) : s\r\n\t\t\t\t\treturn y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t/*下拉刷新的回调, 有三种处理方式:*/\r\n\t\t\tdownCallback() {\r\n\t\t\t\tthis.mescroll.endSuccess();\r\n\t\t\t\tvar that = this;\r\n\t\t\t\tthat.query.currentPage = 1;\r\n\t\t\t\tthat.query.pageSize = 10;\r\n\t\t\t\tthis.Gettbrecruit(that.query);\r\n\t\t\t},\r\n\t\t\t/*上拉加载的回调*/\r\n\t\t\tupCallback(page) {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tthis.mescroll.endByPage(10, 20);\r\n\t\t\t\t}, 2000)\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 文章点击\r\n\t\t\t */\r\n\t\t\tonArticle(id) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/ArticleDetails/ArticleDetails?id=' + id,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n\t@import 'AllWork.scss';\r\n</style>\n","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=style&index=0&id=a9eced28&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./AllWork.vue?vue&type=style&index=0&id=a9eced28&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1675075005682\n var cssReload = require(\"/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} | ||
| 3 | \ No newline at end of file | 3 | \ No newline at end of file |
unpackage/dist/dev/.sourcemap/mp-weixin/pages/GoodsDetails/GoodsDetails.js.map
| 1 | -{"version":3,"sources":["uni-app:///main.js","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?1dda","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?7d59","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?265a","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?1efa","uni-app:///pages/GoodsDetails/GoodsDetails.vue","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?d58d","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?e3db"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","data","BASE_URL","TabShow","isMore","AttentionShow","PageScrollTop","type","id","onLoad","console","onPageScroll","methods","ApplyT","uni","title","icon","GettbtraininfoById","onBack","onTab","scrollTop","duration","onToCart","url","onDepreciate","onAttention","onEvaluate"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,qBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAqI;AACrI;AACgE;AACL;AACsC;;;AAGjG;AACgN;AAChN,gBAAgB,iNAAU;AAC1B,EAAE,kFAAM;AACR,EAAE,mGAAM;AACR,EAAE,4GAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,uGAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACbA;AAAA;AAAA;AAAA;AAA00B,CAAgB,0yBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;AC+G91B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eACA;EACAC,aACA;EACAC;IACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAP;IACA;EACA;EACAQ;IACA;IACAC;IACA;EACA;EACAC;IACA;EACA;EACAC;IACAC;MACA;QACA;UACAC;YACAC;YACAC;UACA;QACA;MACA;IACA;IACAC;MAAA;MACA;QACA;UACA;UACA;UACA;UACAP;QACA;MACA;IACA;IACA;AACA;AACA;IACAQ;MACAJ;IACA;IACA;AACA;AACA;IACAK;MAAA;MACA;MACA;QACA;UACAL;YACAM;YACAC;UACA;UACA;QACA;UACAP;YAAA;YACAA;cACAM;cACAC;YACA;UACA;UACA;QACA;UACAP,wFACAb;YAAA;YACAa;cACAM;cACAC;YACA;UACA;UACA;MAAA;IAEA;IACA;AACA;AACA;IACAC;MACAR;QACAS;MACA;IACA;IACA;AACA;AACA;IACAC;MACAV;QACAC;QACAC;MACA;IACA;IACA;AACA;AACA;IACAS;MACA;QACA;QACAX;UACAC;UACAC;QACA;MACA;QACA;QACAF;UACAC;UACAC;QACA;MACA;IAEA;IACA;AACA;AACA;IACAU;MACAZ;QACAS;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC9OA;AAAA;AAAA;AAAA;AAAikD,CAAgB,i8CAAG,EAAC,C;;;;;;;;;;;ACArlD;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/GoodsDetails/GoodsDetails.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/GoodsDetails/GoodsDetails.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./GoodsDetails.vue?vue&type=template&id=ac2c40f4&scoped=true&\"\nvar renderjs\nimport script from \"./GoodsDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./GoodsDetails.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GoodsDetails.vue?vue&type=style&index=0&id=ac2c40f4&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ac2c40f4\",\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/GoodsDetails/GoodsDetails.vue\"\nexport default component.exports","export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=template&id=ac2c40f4&scoped=true&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n if (!_vm._isMounted) {\n _vm.e0 = function ($event) {\n _vm.isMore = false\n }\n }\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view @click=\"isMore = false\">\r\n\t\t<view class=\"goods-head\" :style=\"'background:rgba(255,255,255,' + PageScrollTop / 100 + ')'\">\r\n\t\t\t<!-- 返回 -->\r\n\t\t\t<view class=\"back\" @click=\"onBack\">\r\n\t\t\t\t<view class=\"back-one\" :class=\"{ action: PageScrollTop > 120 }\">\r\n\t\t\t\t\t<image src=\"../../static/left.png\"></image>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"head-title\">{{data.name}}</view>\r\n\t\t\t<!-- tab切换 -->\r\n\t\t</view>\r\n\t\t<!-- banner,标题 -->\r\n\t\t<view class=\"banner-title\">\r\n\t\t\t<!-- banner -->\r\n\t\t\t<view class=\"banner\">\r\n\t\t\t\t<swiper class=\"screen-swiper round-dot\" indicator-dots=\"true\" circular=\"true\" autoplay=\"true\"\r\n\t\t\t\t\tinterval=\"5000\" duration=\"500\">\r\n\t\t\t\t\t<swiper-item v-for=\"(item, index) in data.background\" :key=\"index\">\r\n\t\t\t\t\t\t<image :src=\"BASE_URL+item.url\" mode=\"aspectFill\"></image>\r\n\t\t\t\t\t</swiper-item>\r\n\t\t\t\t</swiper>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<!-- 评价 -->\r\n\t\t<view class=\"evaluate-data\" ref=\"evaluate\">\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>简介</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\">\r\n\t\t\t\t\t\t<text>{{data.synopsis}}</text>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list-line\"></view>\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>前景</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\">\r\n\t\t\t\t\t\t<text>{{data.prospect}}</text>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list-line\"></view>\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>就业方向</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\" v-html=\"data.direction\">\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<!-- 商品介绍 -->\r\n\t\t<view class=\"products-introduction\" ref=\"products\">\r\n\t\t\t<view class=\"content\">\r\n\t\t\t\t<img v-for=\"item in data.image\" :src=\"BASE_URL+item.url\" />\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"evaluate-data\" ref=\"evaluate\">\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>备注说明</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\">\r\n\t\t\t\t\t\t<text>{{data.remark}}</text>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"my-phone\">\r\n\t\t\t<view>客服电话:654564</view>\r\n\t\t\t<view>彭州市人社局监督电话:541516</view>\r\n\t\t\t<view>备案号:6556121212</view>\r\n\t\t</view>\r\n\t\t<!-- 底部 -->\r\n\t\t<view class=\"page-footer\">\r\n\t\t\t<view class=\"footer-fn\">\r\n\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t<text>培训费用:</text>\r\n\t\t\t\t\t<text class=\"list-red\">¥{{data.trainCost}}</text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t<text>报名费用:</text>\r\n\t\t\t\t\t<text class=\"list-red\">¥{{data.applyCost}}</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"footer-buy\">\r\n\t\t\t\t<view class=\"buy-at\" @click=\"ApplyT\">\r\n\t\t\t\t\t<text>立即报名</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\t\timport BASE_URL from '@/common/config.js'\r\n\texport default {\r\n\t\tcomponents: {\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tBASE_URL,\r\n\t\t\t\tTabShow: 0,\r\n\t\t\t\tisMore: false,\r\n\t\t\t\tAttentionShow: 0,\r\n\t\t\t\tPageScrollTop: 0,\r\n\t\t\t\ttype: 0,\r\n\t\t\t\tid:0,\r\n\t\t\t\tdata:{}\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad(params) {\r\n\t\t\tthis.id = params.id;\r\n\t\t\tconsole.log(params);\r\n\t\t\tthis.GettbtraininfoById();\r\n\t\t},\r\n\t\tonPageScroll(e) {\r\n\t\t\tthis.PageScrollTop = e.scrollTop;\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tApplyT(){\r\n\t\t\t\tthis.API.ApplyT(this.id).then(res=>{\r\n\t\t\t\t\tif(res.code==200){\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ttitle: '报名成功,请等待联系!',\r\n\t\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tGettbtraininfoById() {\r\n\t\t\t\tthis.API.GettbtraininfoById(this.id).then(res => {\r\n\t\t\t\t\tif (res.code == 200) {\r\n\t\t\t\t\t\tthis.data = res.data;\r\n\t\t\t\t\t\tthis.data.image = JSON.parse(res.data.image);\r\n\t\t\t\t\t\tthis.data.background = JSON.parse(res.data.background);\r\n\t\t\t\t\t\tconsole.log(this.data);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 返回\r\n\t\t\t */\r\n\t\t\tonBack() {\r\n\t\t\t\tuni.navigateBack();\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * tab\r\n\t\t\t */\r\n\t\t\tonTab(type) {\r\n\t\t\t\tthis.TabShow = type;\r\n\t\t\t\tswitch (type) {\r\n\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\tuni.pageScrollTo({\r\n\t\t\t\t\t\t\tscrollTop: 0,\r\n\t\t\t\t\t\t\tduration: 300\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\tuni.createSelectorQuery().select(\".evaluate-data\").boundingClientRect((data) => { //data - 各种参数\r\n\t\t\t\t\t\t\tuni.pageScrollTo({\r\n\t\t\t\t\t\t\t\tscrollTop: this.PageScrollTop + data.top - 50,\r\n\t\t\t\t\t\t\t\tduration: 300\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}).exec()\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 2:\r\n\t\t\t\t\t\tuni.createSelectorQuery().select(\".products-introduction\").boundingClientRect((\r\n\t\t\t\t\t\tdata) => { //data - 各种参数\r\n\t\t\t\t\t\t\tuni.pageScrollTo({\r\n\t\t\t\t\t\t\t\tscrollTop: this.PageScrollTop + data.top - 50,\r\n\t\t\t\t\t\t\t\tduration: 300\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}).exec()\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 去购物车\r\n\t\t\t */\r\n\t\t\tonToCart() {\r\n\t\t\t\tuni.switchTab({\r\n\t\t\t\t\turl: '/pages/cart/cart'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 降价通知点击\r\n\t\t\t */\r\n\t\t\tonDepreciate() {\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: '降价通知提醒成功',\r\n\t\t\t\t\ticon: 'success'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 关注点击\r\n\t\t\t */\r\n\t\t\tonAttention() {\r\n\t\t\t\tif (this.AttentionShow === 0) {\r\n\t\t\t\t\tthis.AttentionShow = 1;\r\n\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\ttitle: '关注成功',\r\n\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.AttentionShow = 0;\r\n\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\ttitle: '取消成功',\r\n\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 评价点击\r\n\t\t\t */\r\n\t\t\tonEvaluate() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/GoodsEvaluateList/GoodsEvaluateList'\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n\t@import 'GoodsDetails.scss';\r\n</style>\n","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=style&index=0&id=ac2c40f4&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=style&index=0&id=ac2c40f4&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1675071447289\n var cssReload = require(\"/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} | ||
| 2 | \ No newline at end of file | 1 | \ No newline at end of file |
| 2 | +{"version":3,"sources":["uni-app:///main.js",null,"webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?7d59","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?265a","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?1efa","uni-app:///pages/GoodsDetails/GoodsDetails.vue","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?d58d","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/GoodsDetails/GoodsDetails.vue?e3db"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","data","BASE_URL","TabShow","isMore","AttentionShow","PageScrollTop","type","id","onLoad","console","onPageScroll","methods","ApplyT","uni","title","icon","GettbtraininfoById","onBack","onTab","scrollTop","duration","onToCart","url","onDepreciate","onAttention","onEvaluate"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,qBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAqI;AACrI;AACgE;AACL;AACsC;;;AAGjG;AACgN;AAChN,gBAAgB,iNAAU;AAC1B,EAAE,kFAAM;AACR,EAAE,mGAAM;AACR,EAAE,4GAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,uGAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACbA;AAAA;AAAA;AAAA;AAA00B,CAAgB,0yBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;AC+G91B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eACA;EACAC,aACA;EACAC;IACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAP;IACA;EACA;EACAQ;IACA;IACAC;IACA;EACA;EACAC;IACA;EACA;EACAC;IACAC;MACA;QACA;UACAC;YACAC;YACAC;UACA;QACA;MACA;IACA;IACAC;MAAA;MACA;QACA;UACA;UACA;UACA;UACAP;QACA;MACA;IACA;IACA;AACA;AACA;IACAQ;MACAJ;IACA;IACA;AACA;AACA;IACAK;MAAA;MACA;MACA;QACA;UACAL;YACAM;YACAC;UACA;UACA;QACA;UACAP;YAAA;YACAA;cACAM;cACAC;YACA;UACA;UACA;QACA;UACAP,wFACAb;YAAA;YACAa;cACAM;cACAC;YACA;UACA;UACA;MAAA;IAEA;IACA;AACA;AACA;IACAC;MACAR;QACAS;MACA;IACA;IACA;AACA;AACA;IACAC;MACAV;QACAC;QACAC;MACA;IACA;IACA;AACA;AACA;IACAS;MACA;QACA;QACAX;UACAC;UACAC;QACA;MACA;QACA;QACAF;UACAC;UACAC;QACA;MACA;IAEA;IACA;AACA;AACA;IACAU;MACAZ;QACAS;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC9OA;AAAA;AAAA;AAAA;AAAikD,CAAgB,i8CAAG,EAAC,C;;;;;;;;;;;ACArlD;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/GoodsDetails/GoodsDetails.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/GoodsDetails/GoodsDetails.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./GoodsDetails.vue?vue&type=template&id=ac2c40f4&scoped=true&\"\nvar renderjs\nimport script from \"./GoodsDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./GoodsDetails.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GoodsDetails.vue?vue&type=style&index=0&id=ac2c40f4&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ac2c40f4\",\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/GoodsDetails/GoodsDetails.vue\"\nexport default component.exports","export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=template&id=ac2c40f4&scoped=true&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n if (!_vm._isMounted) {\n _vm.e0 = function ($event) {\n _vm.isMore = false\n }\n }\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view @click=\"isMore = false\">\r\n\t\t<view class=\"goods-head\" :style=\"'background:rgba(255,255,255,' + PageScrollTop / 100 + ')'\">\r\n\t\t\t<!-- 返回 -->\r\n\t\t\t<view class=\"back\" @click=\"onBack\">\r\n\t\t\t\t<view class=\"back-one\" :class=\"{ action: PageScrollTop > 120 }\">\r\n\t\t\t\t\t<image src=\"../../static/left.png\"></image>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"head-title\">{{data.name}}</view>\r\n\t\t\t<!-- tab切换 -->\r\n\t\t</view>\r\n\t\t<!-- banner,标题 -->\r\n\t\t<view class=\"banner-title\">\r\n\t\t\t<!-- banner -->\r\n\t\t\t<view class=\"banner\">\r\n\t\t\t\t<swiper class=\"screen-swiper round-dot\" indicator-dots=\"true\" circular=\"true\" autoplay=\"true\"\r\n\t\t\t\t\tinterval=\"5000\" duration=\"500\">\r\n\t\t\t\t\t<swiper-item v-for=\"(item, index) in data.background\" :key=\"index\">\r\n\t\t\t\t\t\t<image :src=\"BASE_URL+item.url\" mode=\"aspectFill\"></image>\r\n\t\t\t\t\t</swiper-item>\r\n\t\t\t\t</swiper>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<!-- 评价 -->\r\n\t\t<view class=\"evaluate-data\" ref=\"evaluate\">\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>简介</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\">\r\n\t\t\t\t\t\t<text>{{data.synopsis}}</text>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list-line\"></view>\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>前景</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\">\r\n\t\t\t\t\t\t<text>{{data.prospect}}</text>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list-line\"></view>\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>就业方向</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\" v-html=\"data.direction\">\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<!-- 商品介绍 -->\r\n\t\t<view class=\"products-introduction\" ref=\"products\">\r\n\t\t\t<view class=\"content\">\r\n\t\t\t\t<img v-for=\"item in data.image\" :src=\"BASE_URL+item.url\" />\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"evaluate-data\" ref=\"evaluate\">\r\n\t\t\t<view class=\"title-more\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>备注说明</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"evaluate-list\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<view class=\"character\">\r\n\t\t\t\t\t\t<text>{{data.remark}}</text>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"my-phone\">\r\n\t\t\t<view>客服电话:654564</view>\r\n\t\t\t<view>彭州市人社局监督电话:541516</view>\r\n\t\t\t<view>备案号:6556121212</view>\r\n\t\t</view>\r\n\t\t<!-- 底部 -->\r\n\t\t<view class=\"page-footer\">\r\n\t\t\t<view class=\"footer-fn\">\r\n\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t<text>培训费用:</text>\r\n\t\t\t\t\t<text class=\"list-red\">¥{{data.trainCost}}</text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t<text>报名费用:</text>\r\n\t\t\t\t\t<text class=\"list-red\">¥{{data.applyCost}}</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"footer-buy\">\r\n\t\t\t\t<view class=\"buy-at\" @click=\"ApplyT\">\r\n\t\t\t\t\t<text>立即报名</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\t\timport BASE_URL from '@/common/config.js'\r\n\texport default {\r\n\t\tcomponents: {\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tBASE_URL,\r\n\t\t\t\tTabShow: 0,\r\n\t\t\t\tisMore: false,\r\n\t\t\t\tAttentionShow: 0,\r\n\t\t\t\tPageScrollTop: 0,\r\n\t\t\t\ttype: 0,\r\n\t\t\t\tid:0,\r\n\t\t\t\tdata:{}\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad(params) {\r\n\t\t\tthis.id = params.id;\r\n\t\t\tconsole.log(params);\r\n\t\t\tthis.GettbtraininfoById();\r\n\t\t},\r\n\t\tonPageScroll(e) {\r\n\t\t\tthis.PageScrollTop = e.scrollTop;\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tApplyT(){\r\n\t\t\t\tthis.API.ApplyT(this.id).then(res=>{\r\n\t\t\t\t\tif(res.code==200){\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ttitle: '报名成功,请等待联系!',\r\n\t\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tGettbtraininfoById() {\r\n\t\t\t\tthis.API.GettbtraininfoById(this.id).then(res => {\r\n\t\t\t\t\tif (res.code == 200) {\r\n\t\t\t\t\t\tthis.data = res.data;\r\n\t\t\t\t\t\tthis.data.image = JSON.parse(res.data.image);\r\n\t\t\t\t\t\tthis.data.background = JSON.parse(res.data.background);\r\n\t\t\t\t\t\tconsole.log(this.data);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 返回\r\n\t\t\t */\r\n\t\t\tonBack() {\r\n\t\t\t\tuni.navigateBack();\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * tab\r\n\t\t\t */\r\n\t\t\tonTab(type) {\r\n\t\t\t\tthis.TabShow = type;\r\n\t\t\t\tswitch (type) {\r\n\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\tuni.pageScrollTo({\r\n\t\t\t\t\t\t\tscrollTop: 0,\r\n\t\t\t\t\t\t\tduration: 300\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\tuni.createSelectorQuery().select(\".evaluate-data\").boundingClientRect((data) => { //data - 各种参数\r\n\t\t\t\t\t\t\tuni.pageScrollTo({\r\n\t\t\t\t\t\t\t\tscrollTop: this.PageScrollTop + data.top - 50,\r\n\t\t\t\t\t\t\t\tduration: 300\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}).exec()\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 2:\r\n\t\t\t\t\t\tuni.createSelectorQuery().select(\".products-introduction\").boundingClientRect((\r\n\t\t\t\t\t\tdata) => { //data - 各种参数\r\n\t\t\t\t\t\t\tuni.pageScrollTo({\r\n\t\t\t\t\t\t\t\tscrollTop: this.PageScrollTop + data.top - 50,\r\n\t\t\t\t\t\t\t\tduration: 300\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}).exec()\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 去购物车\r\n\t\t\t */\r\n\t\t\tonToCart() {\r\n\t\t\t\tuni.switchTab({\r\n\t\t\t\t\turl: '/pages/cart/cart'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 降价通知点击\r\n\t\t\t */\r\n\t\t\tonDepreciate() {\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: '降价通知提醒成功',\r\n\t\t\t\t\ticon: 'success'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 关注点击\r\n\t\t\t */\r\n\t\t\tonAttention() {\r\n\t\t\t\tif (this.AttentionShow === 0) {\r\n\t\t\t\t\tthis.AttentionShow = 1;\r\n\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\ttitle: '关注成功',\r\n\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.AttentionShow = 0;\r\n\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\ttitle: '取消成功',\r\n\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 评价点击\r\n\t\t\t */\r\n\t\t\tonEvaluate() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/GoodsEvaluateList/GoodsEvaluateList'\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n\t@import 'GoodsDetails.scss';\r\n</style>\n","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=style&index=0&id=ac2c40f4&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./GoodsDetails.vue?vue&type=style&index=0&id=ac2c40f4&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1675074845404\n var cssReload = require(\"/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} | ||
| 3 | \ No newline at end of file | 3 | \ No newline at end of file |
unpackage/dist/dev/.sourcemap/mp-weixin/pages/home/home.js.map
| 1 | -{"version":3,"sources":["uni-app:///main.js","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?a204","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?5a75","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?e328","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?4ffe","uni-app:///pages/home/home.vue","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?8dc7","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?771a"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","mixins","components","TabBar","customHead","data","BASE_URL","headtitle","mescroll","downOption","upOption","use","swiperList","id","type","url","slideNum","classifyShow","pageHeight","query","currentPage","pageSize","keyword","tbrecruitList","SearchText","bannerIImg","onReady","uni","title","frontColor","backgroundColor","onLoad","res","onPageScroll","onReachBottom","console","methods","getDifferTime","startDate","getNowDate","month","day","formatDateTime","MM","d","h","m","s","Gettbrecruit","nvInputTap","nvInput","nvFormSubmit","content","nvAddressTap","back","delta","onBack","downCallback","upCallback","setTimeout","ScrollMenu","AllWork","Feedback","FindWord","MyCoupon","ConfirmOrder","JobsDetails","onClassify","onSkip","animationType","animationDuration"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,aAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAA6H;AAC7H;AACwD;AACL;AACsC;;;AAGzF;AACgN;AAChN,gBAAgB,iNAAU;AAC1B,EAAE,0EAAM;AACR,EAAE,2FAAM;AACR,EAAE,oGAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,+FAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA,aAAa,4KAEN;AACP,KAAK;AACL;AACA,CAAC;AACD;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;AACA;AACA,GAAG;AACH;AACA,MAAM;AACN;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACjDA;AAAA;AAAA;AAAA;AAAk0B,CAAgB,kyBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;ACuHt1B;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eACA;EACAC;EAAA;EACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MAAA;MACA;MACAC;MACA;MACAC;QACAC;MACA;MACAC;QACAC;QACAC;QACAC;MACA,GACA;QACAF;QACAC;QACAC;MACA,EACA;MACAC;MACAC;MACA;MACAC;MACAC;QACAC;QACAC;QACAC;MACA;MACAC;MACAC;MACAC;IACA;EACA;EACAC;IACAC;IAEAA;MACAC;IACA;IACAD;MACAE;MACAC;IACA;EAEA;EACAC;IAAA;IACA;IACA;MACA;QACAC;QACA;MACA;IACA;EACA;EACAC;IACA;IACA;MACA;IACA;MACA;IACA;EACA;EACAC;IACAC;EACA;EACAC;IACAC;MACAC;MACA;MACA;MACA;MACA;MACA;QACA;MACA;QACA;MACA;IACA;IACAC;MACA;MACA;MACA;MACA;MACAC;MACAC;MACA;MACA;IACA;IACAC;MAAA;MACA;QACA;MACA;QACA;QACA;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;MACA;IACA;IACAC;MAAA;MACA;QACA;MACA;IACA;IACAC;MACAd;IACA;IACAe;MACAf;IACA;IACAgB;MACAhB;MACAR;QACAC;QACAwB;MACA;IACA;IACAC;MACAlB;MACA;MACAR;QACAC;QACAwB;MACA;IACA;IACA;IACAE;MACA3B;QACA4B;MACA;IACA;IACA;IACAC;MACA;IACA;IACA,qBACAC;MACA;IACA;IACA,WACAC;MAAA;MACAC;QACA;MACA;IACA;IACA;AACA;AACA;IACAC;MAAA;MACA;MACA;MACAzC;QACA;QACA;MACA;IACA;IACA;AACA;AACA;IACA0C;MACAlC;QACAZ;MACA;IACA;IACA+C;MACAnC;QACAZ;MACA;IACA;IACAgD;MACApC;QACAZ;MACA;IACA;IACAiD;MACArC;QACAZ;MACA;IACA;IACAkD;MACAtC;QACAZ;MACA;IACA;IACAmD;MACAvC;QACAZ;MACA;IACA;IACA;AACA;AACA;AACA;AACA;IACAoD;MACA;IACA;IACA;AACA;AACA;AACA;IACAC;MACA;QACA;UACAzC;YACAZ;UACA;UACA;QACA;UACAY;YACAZ;UACA;UACA;QACA;UACAY;YACAZ;UACA;UACA;QACA;UACA;QACA;UACAY;YACAZ;UACA;UACA;QACA;UACAY;YACAZ;UACA;UACA;QACA;UACAY;YACAZ;YACAsD;YACAC;UACA;UACA;MAAA;IAEA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC7XA;AAAA;AAAA;AAAA;AAAyjD,CAAgB,y7CAAG,EAAC,C;;;;;;;;;;;ACA7kD;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/home/home.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/home/home.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./home.vue?vue&type=template&id=92bb8f34&scoped=true&\"\nvar renderjs\nimport script from \"./home.vue?vue&type=script&lang=js&\"\nexport * from \"./home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./home.vue?vue&type=style&index=0&id=92bb8f34&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"92bb8f34\",\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/home/home.vue\"\nexport default component.exports","export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=template&id=92bb8f34&scoped=true&\"","var components\ntry {\n components = {\n TabBar: function () {\n return import(\n /* webpackChunkName: \"components/TabBar/TabBar\" */ \"@/components/TabBar/TabBar.vue\"\n )\n },\n }\n} catch (e) {\n if (\n e.message.indexOf(\"Cannot find module\") !== -1 &&\n e.message.indexOf(\".vue\") !== -1\n ) {\n console.error(e.message)\n console.error(\"1. 排查组件名称拼写是否正确\")\n console.error(\n \"2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n )\n console.error(\n \"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件\"\n )\n } else {\n throw e\n }\n}\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n var l0 = _vm.__map(_vm.tbrecruitList, function (item, __i0__) {\n var $orig = _vm.__get_orig(item)\n var m0 = _vm.getDifferTime(item.lastModifyTime)\n return {\n $orig: $orig,\n m0: m0,\n }\n })\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n l0: l0,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view class=\"page\">\r\n\t\t<customHead mode='searchNav' :title='headtitle'></customHead>\r\n\t\t<view class=\"main\">\r\n\t\t\t<!-- banner -->\r\n\t\t\t<view class=\"banner\">\r\n\t\t\t\t<swiper class=\"screen-swiper square-dot\" indicator-dots=\"true\" circular=\"true\" autoplay=\"true\"\r\n\t\t\t\t\tinterval=\"5000\" duration=\"500\">\r\n\t\t\t\t\t<swiper-item v-for=\"(item,index) in bannerIImg\" :key=\"index\">\r\n\t\t\t\t\t\t<image :src=\"BASE_URL+item.image[0].url\" mode=\"aspectFill\"></image>\r\n\t\t\t\t\t\t<!-- <video src=\"{{item.url}}\" autoplay loop muted show-play-btn=\"{{false}}\" controls=\"{{false}}\" objectFit=\"cover\" wx:if=\"{{item.type=='video'}}\"></video> -->\r\n\t\t\t\t\t</swiper-item>\r\n\t\t\t\t</swiper>\r\n\t\t\t</view>\r\n\t\t\t<!-- 限时抢购,好货精选 -->\r\n\t\t\t<view class=\"flash-good cf\" @click=\"FindWord\">\r\n\t\t\t\t<view class=\"flash-sale fl\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">我要找工作</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">轻松高薪</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home1-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"good-choice fl\" @click=\"Feedback\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">我要招工</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">人员可靠</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home2-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"good-choice1 fl\" @click=\"ConfirmOrder\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">人力资源外包</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">信息公开透明</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home3-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"good-choice2 fl\" @click=\"MyCoupon\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">培训考证</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">提升专业能力</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home4-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"search-box\">\r\n\t\t\t\t<view class=\"search\">\r\n\t\t\t\t\t<view class=\"iconfont icon-fadajing\"></view>\r\n\t\t\t\t\t<input type=\"text\" v-model=\"SearchText\" placeholder=\"热门搜索:成都、高薪\" />\r\n\t\t\t\t\t<view class=\"search-btn\" @click=\"AllWork\">搜索</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"titleall-box\">\r\n\t\t\t\t<view class=\"titleall-left\">\r\n\t\t\t\t\t<view class=\"titleall-left-line\"></view>职位列表\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"titleall-right\" @click=\"AllWork\">查看全部岗位<image src=\"../../static/right.png\"></image>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"title-screen\">\r\n\t\t\t\t<view class=\"title-screen-box\">发布时间<image src=\"../../static/down.png\"></image>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"record-list\">\r\n\t\t\t\t<view class=\"list\" @click=\"JobsDetails(item.id)\" v-for=\"item in tbrecruitList\">\r\n\t\t\t\t\t<view class=\"title-date\">\r\n\t\t\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t\t\t<text class=\"two-omit\">{{item.companyName}}-{{item.jop}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view class=\"date\">\r\n\t\t\t\t\t\t\t<text class=\"one-omit\">{{item.introduce}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t<view class=\"yellow-btn\">{{getDifferTime(item.lastModifyTime)}}</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t\t<view class=\"integral\">\r\n\t\t\t\t\t\t<text class=\"integral-btn\">{{item.jopName}}</text>\r\n\t\t\t\t\t\t<view class=\"integral-num\">{{item.pay}}</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\r\n\t\t\t</view>\r\n\r\n\t\t</view>\r\n\t\t<!-- tabbar -->\r\n\t\t<TabBar :tabBarShow=\"0\"></TabBar>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport BASE_URL from '@/common/config.js'\r\n\timport TabBar from '../../components/TabBar/TabBar.vue';\r\n\timport customHead from \"@/components/xy-customhead/xy-customhead.vue\";\r\n\t// 引入mescroll-mixins.js\r\n\timport MescrollMixin from \"@/components/mescroll-uni/mescroll-mixins.js\";\r\n\texport default {\r\n\t\tmixins: [MescrollMixin], // 使用mixin\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tcustomHead,\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tBASE_URL,\r\n\t\t\t\theadtitle: '铭钛招聘',\r\n\t\t\t\tmescroll: null, // mescroll实例对象 (此行可删,mixins已默认)\r\n\t\t\t\t// 下拉刷新的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tdownOption: {},\r\n\t\t\t\t// 上拉加载的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tupOption: {\r\n\t\t\t\t\tuse: false\r\n\t\t\t\t},\r\n\t\t\t\tswiperList: [{\r\n\t\t\t\t\t\tid: 0,\r\n\t\t\t\t\t\ttype: 'image',\r\n\t\t\t\t\t\turl: '/static/img/banner_01.png'\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 1,\r\n\t\t\t\t\t\ttype: 'image',\r\n\t\t\t\t\t\turl: '/static/img/banner_02.png'\r\n\t\t\t\t\t},\r\n\t\t\t\t],\r\n\t\t\t\tslideNum: 0,\r\n\t\t\t\tclassifyShow: 0,\r\n\t\t\t\t// 页面高度\r\n\t\t\t\tpageHeight: 500,\r\n\t\t\t\tquery: {\r\n\t\t\t\t\tcurrentPage: 1,\r\n\t\t\t\t\tpageSize: 10,\r\n\t\t\t\t\tkeyword: \"\"\r\n\t\t\t\t},\r\n\t\t\t\ttbrecruitList: [],\r\n\t\t\t\tSearchText: \"\",\r\n\t\t\t\tbannerIImg: [],\r\n\t\t\t}\r\n\t\t},\r\n\t\tonReady() {\r\n\t\t\tuni.hideTabBar();\r\n\t\t\t// #ifdef MP\r\n\t\t\tuni.setNavigationBarTitle({\r\n\t\t\t\ttitle: '首页',\r\n\t\t\t})\r\n\t\t\tuni.setNavigationBarColor({\r\n\t\t\t\tfrontColor: '#ffffff',\r\n\t\t\t\tbackgroundColor: '#fe3b0f',\r\n\t\t\t})\r\n\t\t\t// #endif\r\n\t\t},\r\n\t\tonLoad() {\r\n\t\t\tthis.Gettbrecruit();\r\n\t\t\tthis.API.Gettbbanner().then(res => {\r\n\t\t\t\tthis.bannerIImg = res.data.list.map(res => {\r\n\t\t\t\t\tres.image = JSON.parse(res.image);\r\n\t\t\t\t\treturn res;\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\t\tonPageScroll(e) {\r\n\t\t\tlet scrollTop = e.scrollTop;\r\n\t\t\tif (scrollTop > 0) {\r\n\t\t\t\tthis.pageHeight = 210;\r\n\t\t\t} else {\r\n\t\t\t\tthis.pageHeight = 500;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonReachBottom() {\r\n\t\t\tconsole.log(12333);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tgetDifferTime(startDate) {\r\n\t\t\t\tstartDate = this.formatDateTime(startDate);\r\n\t\t\t\tlet startTime = new Date(Date.parse(startDate.replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet endTime = new Date(Date.parse(this.getNowDate().replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet dates = Math.abs((startTime - endTime)) / (1000 * 60 * 60 * 24);\r\n\t\t\t\tlet DayNumber = Math.ceil(dates);\r\n\t\t\t\tif (DayNumber <= 7) {\r\n\t\t\t\t\treturn DayNumber + \"天内发布\"\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn DayNumber + \"天前发布\"\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgetNowDate() {\r\n\t\t\t\tconst timeOne = new Date()\r\n\t\t\t\tconst year = timeOne.getFullYear()\r\n\t\t\t\tlet month = timeOne.getMonth() + 1\r\n\t\t\t\tlet day = timeOne.getDate()\r\n\t\t\t\tmonth = month < 10 ? '0' + month : month\r\n\t\t\t\tday = day < 10 ? '0' + day : day\r\n\t\t\t\tconst NOW_MONTHS_AGO = `${year}-${month}-${day}`\r\n\t\t\t\treturn NOW_MONTHS_AGO\r\n\t\t\t},\r\n\t\t\tformatDateTime(value) { // 时间戳转换日期格式方法\r\n\t\t\t\tif (value == null) {\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t} else {\r\n\t\t\t \tconst date = new Date(value)\r\n\t\t\t\t\tconst y = date.getFullYear() // 年\r\n\t\t\t\t\tlet MM = date.getMonth() + 1 // 月\r\n\t\t\t\t\tMM = MM < 10 ? ('0' + MM) : MM\r\n\t\t\t let d = date.getDate() // 日\r\n\t\t\t\t\td = d < 10 ? ('0' + d) : d\r\n\t\t\t let h = date.getHours() // 时\r\n\t\t\t\t\th = h < 10 ? ('0' + h) : h\r\n\t\t\t\t\tlet m = date.getMinutes() // 分\r\n\t\t\t\t\tm = m < 10 ? ('0' + m) : m\r\n\t\t\t let s = date.getSeconds() // 秒\r\n\t\t\t\t\ts = s < 10 ? ('0' + s) : s\r\n\t\t\t\t\treturn y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tGettbrecruit() {\r\n\t\t\t\tthis.API.Gettbrecruit(this.query).then(res => {\r\n\t\t\t\t\tthis.tbrecruitList = res.data.list;\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tnvInputTap(e) {\r\n\t\t\t\tconsole.log(e);\r\n\t\t\t},\r\n\t\t\tnvInput(e) {\r\n\t\t\t\tconsole.log(e.detail.value);\r\n\t\t\t},\r\n\t\t\tnvFormSubmit(e) {\r\n\t\t\t\tconsole.log(e.detail.value);\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: \"pyh-nv\",\r\n\t\t\t\t\tcontent: \"input提交:\" + JSON.stringify(e.detail.value)\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tnvAddressTap(e) {\r\n\t\t\t\tconsole.log(\"点击了地址\");\r\n\t\t\t\t// this.nvConfig.address.province = \"湖南省\"\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: \"pyh-nv\",\r\n\t\t\t\t\tcontent: \"点击了地址\"\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t// 回到上一页\r\n\t\t\tback: function() {\r\n\t\t\t\tuni.navigateBack({\r\n\t\t\t\t\tdelta: 1\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t// 左侧返回按钮调用\r\n\t\t\tonBack() {\r\n\t\t\t\tthis.$emit(\"onBack\")\r\n\t\t\t},\r\n\t\t\t/*下拉刷新的回调, 有三种处理方式:*/\r\n\t\t\tdownCallback() {\r\n\t\t\t\tthis.mescroll.endSuccess();\r\n\t\t\t},\r\n\t\t\t/*上拉加载的回调*/\r\n\t\t\tupCallback(page) {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tthis.mescroll.endByPage(10, 20);\r\n\t\t\t\t}, 2000)\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 菜单导航滚动\r\n\t\t\t */\r\n\t\t\tScrollMenu(e) {\r\n\t\t\t\tlet scrollLeft = e.target.scrollLeft;\r\n\t\t\t\tconst query = uni.createSelectorQuery().in(this);\r\n\t\t\t\tquery.select('.nav').boundingClientRect(data => {\r\n\t\t\t\t\tlet wid = e.target.scrollWidth - data.width - (data.left * 2 + 5);\r\n\t\t\t\t\tthis.slideNum = (scrollLeft / wid * 300) / 2;\r\n\t\t\t\t}).exec();\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 搜索点击\r\n\t\t\t */\r\n\t\t\tAllWork() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/AllWork/AllWork?keyword=' + this.SearchText\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tFeedback() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/Feedback/Feedback'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tFindWord() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/FindWord/FindWord'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tMyCoupon() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/MyCoupon/MyCoupon'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tConfirmOrder() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/ConfirmOrder/ConfirmOrder'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tJobsDetails(id) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/JobsDetails/JobsDetails?id=' + id\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 分类点击\r\n\t\t\t * @param {Object} item\r\n\t\t\t * @param {Number} index\r\n\t\t\t */\r\n\t\t\tonClassify(item, index) {\r\n\t\t\t\tthis.classifyShow = index;\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 跳转点击\r\n\t\t\t * @param {String} type 跳转类型\r\n\t\t\t */\r\n\t\t\tonSkip(type) {\r\n\t\t\t\tswitch (type) {\r\n\t\t\t\t\tcase 'mess':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/Message/Message'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'paycode':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/PaymentCode/PaymentCode'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'menu':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/SearchGoodsList/SearchGoodsList'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'inform':\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'flash':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/FlashSale/FlashSale'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'GoodChoice':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/GoodChoice/GoodChoice'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'goods':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/GoodsDetails/GoodsDetails',\r\n\t\t\t\t\t\t\tanimationType: 'zoom-fade-out',\r\n\t\t\t\t\t\t\tanimationDuration: 200\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n\t@import 'home.scss';\r\n</style>\n","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=style&index=0&id=92bb8f34&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=style&index=0&id=92bb8f34&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1675071447244\n var cssReload = require(\"/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} | ||
| 2 | \ No newline at end of file | 1 | \ No newline at end of file |
| 2 | +{"version":3,"sources":["uni-app:///main.js",null,"webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?5a75","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?e328","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?4ffe","uni-app:///pages/home/home.vue","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?8dc7","webpack:////Users/mr.wang/代码库/招聘小程序/Recruitment/pages/home/home.vue?771a"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","mixins","components","TabBar","customHead","data","BASE_URL","headtitle","mescroll","downOption","upOption","use","swiperList","id","type","url","slideNum","classifyShow","pageHeight","query","currentPage","pageSize","keyword","sidx","sort","tbrecruitList","SearchText","bannerIImg","onReady","uni","title","frontColor","backgroundColor","onLoad","res","onPageScroll","onReachBottom","console","methods","getDifferTime","startDate","getNowDate","month","day","formatDateTime","MM","d","h","m","s","Gettbrecruit","nvInputTap","nvInput","nvFormSubmit","content","nvAddressTap","back","delta","onBack","downCallback","upCallback","setTimeout","ScrollMenu","AllWork","Feedback","FindWord","MyCoupon","ConfirmOrder","JobsDetails","onClassify","onSkip","animationType","animationDuration"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,aAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAA6H;AAC7H;AACwD;AACL;AACsC;;;AAGzF;AACgN;AAChN,gBAAgB,iNAAU;AAC1B,EAAE,0EAAM;AACR,EAAE,2FAAM;AACR,EAAE,oGAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,+FAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA,aAAa,4KAEN;AACP,KAAK;AACL;AACA,CAAC;AACD;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;AACA;AACA,GAAG;AACH;AACA,MAAM;AACN;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACjDA;AAAA;AAAA;AAAA;AAAk0B,CAAgB,kyBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;ACuHt1B;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eACA;EACAC;EAAA;EACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MAAA;MACA;MACAC;MACA;MACAC;QACAC;MACA;MACAC;QACAC;QACAC;QACAC;MACA,GACA;QACAF;QACAC;QACAC;MACA,EACA;MACAC;MACAC;MACA;MACAC;MACAC;QACAC;QACAC;QACAC;QACAC;QACAC;MACA;MACAC;MACAC;MACAC;IACA;EACA;EACAC;IACAC;IAEAA;MACAC;IACA;IACAD;MACAE;MACAC;IACA;EAEA;EACAC;IAAA;IACA;IACA;MACA;QACAC;QACA;MACA;IACA;EACA;EACAC;IACA;IACA;MACA;IACA;MACA;IACA;EACA;EACAC;IACAC;EACA;EACAC;IACAC;MACAC;MACA;MACA;MACA;MACA;MACA;QACA;MACA;QACA;MACA;IACA;IACAC;MACA;MACA;MACA;MACA;MACAC;MACAC;MACA;MACA;IACA;IACAC;MAAA;MACA;QACA;MACA;QACA;QACA;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;QACAC;QACA;MACA;IACA;IACAC;MAAA;MACA;QACA;MACA;IACA;IACAC;MACAd;IACA;IACAe;MACAf;IACA;IACAgB;MACAhB;MACAR;QACAC;QACAwB;MACA;IACA;IACAC;MACAlB;MACA;MACAR;QACAC;QACAwB;MACA;IACA;IACA;IACAE;MACA3B;QACA4B;MACA;IACA;IACA;IACAC;MACA;IACA;IACA,qBACAC;MACA;IACA;IACA,WACAC;MAAA;MACAC;QACA;MACA;IACA;IACA;AACA;AACA;IACAC;MAAA;MACA;MACA;MACA3C;QACA;QACA;MACA;IACA;IACA;AACA;AACA;IACA4C;MACAlC;QACAd;MACA;IACA;IACAiD;MACAnC;QACAd;MACA;IACA;IACAkD;MACApC;QACAd;MACA;IACA;IACAmD;MACArC;QACAd;MACA;IACA;IACAoD;MACAtC;QACAd;MACA;IACA;IACAqD;MACAvC;QACAd;MACA;IACA;IACA;AACA;AACA;AACA;AACA;IACAsD;MACA;IACA;IACA;AACA;AACA;AACA;IACAC;MACA;QACA;UACAzC;YACAd;UACA;UACA;QACA;UACAc;YACAd;UACA;UACA;QACA;UACAc;YACAd;UACA;UACA;QACA;UACA;QACA;UACAc;YACAd;UACA;UACA;QACA;UACAc;YACAd;UACA;UACA;QACA;UACAc;YACAd;YACAwD;YACAC;UACA;UACA;MAAA;IAEA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC/XA;AAAA;AAAA;AAAA;AAAyjD,CAAgB,y7CAAG,EAAC,C;;;;;;;;;;;ACA7kD;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/home/home.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/home/home.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./home.vue?vue&type=template&id=92bb8f34&scoped=true&\"\nvar renderjs\nimport script from \"./home.vue?vue&type=script&lang=js&\"\nexport * from \"./home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./home.vue?vue&type=style&index=0&id=92bb8f34&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"92bb8f34\",\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/home/home.vue\"\nexport default component.exports","export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=template&id=92bb8f34&scoped=true&\"","var components\ntry {\n components = {\n TabBar: function () {\n return import(\n /* webpackChunkName: \"components/TabBar/TabBar\" */ \"@/components/TabBar/TabBar.vue\"\n )\n },\n }\n} catch (e) {\n if (\n e.message.indexOf(\"Cannot find module\") !== -1 &&\n e.message.indexOf(\".vue\") !== -1\n ) {\n console.error(e.message)\n console.error(\"1. 排查组件名称拼写是否正确\")\n console.error(\n \"2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n )\n console.error(\n \"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件\"\n )\n } else {\n throw e\n }\n}\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n var l0 = _vm.__map(_vm.tbrecruitList, function (item, __i0__) {\n var $orig = _vm.__get_orig(item)\n var m0 = _vm.getDifferTime(item.lastModifyTime)\n return {\n $orig: $orig,\n m0: m0,\n }\n })\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n l0: l0,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view class=\"page\">\r\n\t\t<customHead mode='searchNav' :title='headtitle'></customHead>\r\n\t\t<view class=\"main\">\r\n\t\t\t<!-- banner -->\r\n\t\t\t<view class=\"banner\">\r\n\t\t\t\t<swiper class=\"screen-swiper square-dot\" indicator-dots=\"true\" circular=\"true\" autoplay=\"true\"\r\n\t\t\t\t\tinterval=\"5000\" duration=\"500\">\r\n\t\t\t\t\t<swiper-item v-for=\"(item,index) in bannerIImg\" :key=\"index\">\r\n\t\t\t\t\t\t<image :src=\"BASE_URL+item.image[0].url\" mode=\"aspectFill\"></image>\r\n\t\t\t\t\t\t<!-- <video src=\"{{item.url}}\" autoplay loop muted show-play-btn=\"{{false}}\" controls=\"{{false}}\" objectFit=\"cover\" wx:if=\"{{item.type=='video'}}\"></video> -->\r\n\t\t\t\t\t</swiper-item>\r\n\t\t\t\t</swiper>\r\n\t\t\t</view>\r\n\t\t\t<!-- 限时抢购,好货精选 -->\r\n\t\t\t<view class=\"flash-good cf\" @click=\"FindWord\">\r\n\t\t\t\t<view class=\"flash-sale fl\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">我要找工作</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">轻松高薪</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home1-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"good-choice fl\" @click=\"Feedback\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">我要招工</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">人员可靠</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home2-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"good-choice1 fl\" @click=\"ConfirmOrder\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">人力资源外包</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">信息公开透明</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home3-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"good-choice2 fl\" @click=\"MyCoupon\">\r\n\t\t\t\t\t<view class=\"goods-list\">\r\n\t\t\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-title\">培训考证</view>\r\n\t\t\t\t\t\t\t\t<view class=\"list-small-title\">提升专业能力</view>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t\t<view class=\"list-img\">\r\n\t\t\t\t\t\t\t\t<image src=\"../../static/home4-icon.png\"></image>\r\n\t\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"search-box\">\r\n\t\t\t\t<view class=\"search\">\r\n\t\t\t\t\t<view class=\"iconfont icon-fadajing\"></view>\r\n\t\t\t\t\t<input type=\"text\" v-model=\"SearchText\" placeholder=\"热门搜索:成都、高薪\" />\r\n\t\t\t\t\t<view class=\"search-btn\" @click=\"AllWork\">搜索</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"titleall-box\">\r\n\t\t\t\t<view class=\"titleall-left\">\r\n\t\t\t\t\t<view class=\"titleall-left-line\"></view>职位列表\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"titleall-right\" @click=\"AllWork\">查看全部岗位<image src=\"../../static/right.png\"></image>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"title-screen\">\r\n\t\t\t\t<view class=\"title-screen-box\">发布时间<image src=\"../../static/down.png\"></image>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"record-list\">\r\n\t\t\t\t<view class=\"list\" @click=\"JobsDetails(item.id)\" v-for=\"item in tbrecruitList\">\r\n\t\t\t\t\t<view class=\"title-date\">\r\n\t\t\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t\t\t<text class=\"two-omit\">{{item.companyName}}-{{item.jop}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view class=\"date\">\r\n\t\t\t\t\t\t\t<text class=\"one-omit\">{{item.introduce}}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view>\r\n\t\t\t\t\t\t\t<view class=\"yellow-btn\">{{getDifferTime(item.lastModifyTime)}}</view>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t\t<view class=\"integral\">\r\n\t\t\t\t\t\t<text class=\"integral-btn\">{{item.jopName}}</text>\r\n\t\t\t\t\t\t<view class=\"integral-num\">{{item.pay}}</view>\r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\r\n\t\t\t</view>\r\n\r\n\t\t</view>\r\n\t\t<!-- tabbar -->\r\n\t\t<TabBar :tabBarShow=\"0\"></TabBar>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport BASE_URL from '@/common/config.js'\r\n\timport TabBar from '../../components/TabBar/TabBar.vue';\r\n\timport customHead from \"@/components/xy-customhead/xy-customhead.vue\";\r\n\t// 引入mescroll-mixins.js\r\n\timport MescrollMixin from \"@/components/mescroll-uni/mescroll-mixins.js\";\r\n\texport default {\r\n\t\tmixins: [MescrollMixin], // 使用mixin\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tcustomHead,\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tBASE_URL,\r\n\t\t\t\theadtitle: '铭钛招聘',\r\n\t\t\t\tmescroll: null, // mescroll实例对象 (此行可删,mixins已默认)\r\n\t\t\t\t// 下拉刷新的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tdownOption: {},\r\n\t\t\t\t// 上拉加载的配置(可选, 绝大部分情况无需配置)\r\n\t\t\t\tupOption: {\r\n\t\t\t\t\tuse: false\r\n\t\t\t\t},\r\n\t\t\t\tswiperList: [{\r\n\t\t\t\t\t\tid: 0,\r\n\t\t\t\t\t\ttype: 'image',\r\n\t\t\t\t\t\turl: '/static/img/banner_01.png'\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 1,\r\n\t\t\t\t\t\ttype: 'image',\r\n\t\t\t\t\t\turl: '/static/img/banner_02.png'\r\n\t\t\t\t\t},\r\n\t\t\t\t],\r\n\t\t\t\tslideNum: 0,\r\n\t\t\t\tclassifyShow: 0,\r\n\t\t\t\t// 页面高度\r\n\t\t\t\tpageHeight: 500,\r\n\t\t\t\tquery: {\r\n\t\t\t\t\tcurrentPage: 1,\r\n\t\t\t\t\tpageSize: 10,\r\n\t\t\t\t\tkeyword: \"\",\n\t\t\t\t\tsidx:\"lastModifyTime\",\n\t\t\t\t\tsort:\"desc\"\r\n\t\t\t\t},\r\n\t\t\t\ttbrecruitList: [],\r\n\t\t\t\tSearchText: \"\",\r\n\t\t\t\tbannerIImg: [],\r\n\t\t\t}\r\n\t\t},\r\n\t\tonReady() {\r\n\t\t\tuni.hideTabBar();\r\n\t\t\t// #ifdef MP\r\n\t\t\tuni.setNavigationBarTitle({\r\n\t\t\t\ttitle: '首页',\r\n\t\t\t})\r\n\t\t\tuni.setNavigationBarColor({\r\n\t\t\t\tfrontColor: '#ffffff',\r\n\t\t\t\tbackgroundColor: '#fe3b0f',\r\n\t\t\t})\r\n\t\t\t// #endif\r\n\t\t},\r\n\t\tonLoad() {\r\n\t\t\tthis.Gettbrecruit();\r\n\t\t\tthis.API.Gettbbanner().then(res => {\r\n\t\t\t\tthis.bannerIImg = res.data.list.map(res => {\r\n\t\t\t\t\tres.image = JSON.parse(res.image);\r\n\t\t\t\t\treturn res;\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\t\tonPageScroll(e) {\r\n\t\t\tlet scrollTop = e.scrollTop;\r\n\t\t\tif (scrollTop > 0) {\r\n\t\t\t\tthis.pageHeight = 210;\r\n\t\t\t} else {\r\n\t\t\t\tthis.pageHeight = 500;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonReachBottom() {\r\n\t\t\tconsole.log(12333);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tgetDifferTime(startDate) {\r\n\t\t\t\tstartDate = this.formatDateTime(startDate);\r\n\t\t\t\tlet startTime = new Date(Date.parse(startDate.replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet endTime = new Date(Date.parse(this.getNowDate().replace(/-/g, \"/\"))).getTime();\r\n\t\t\t\tlet dates = Math.abs((startTime - endTime)) / (1000 * 60 * 60 * 24);\r\n\t\t\t\tlet DayNumber = Math.ceil(dates);\r\n\t\t\t\tif (DayNumber <= 7) {\r\n\t\t\t\t\treturn DayNumber + \"天内发布\"\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn DayNumber + \"天前发布\"\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgetNowDate() {\r\n\t\t\t\tconst timeOne = new Date()\r\n\t\t\t\tconst year = timeOne.getFullYear()\r\n\t\t\t\tlet month = timeOne.getMonth() + 1\r\n\t\t\t\tlet day = timeOne.getDate()\r\n\t\t\t\tmonth = month < 10 ? '0' + month : month\r\n\t\t\t\tday = day < 10 ? '0' + day : day\r\n\t\t\t\tconst NOW_MONTHS_AGO = `${year}-${month}-${day}`\r\n\t\t\t\treturn NOW_MONTHS_AGO\r\n\t\t\t},\r\n\t\t\tformatDateTime(value) { // 时间戳转换日期格式方法\r\n\t\t\t\tif (value == null) {\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t} else {\r\n\t\t\t \tconst date = new Date(value)\r\n\t\t\t\t\tconst y = date.getFullYear() // 年\r\n\t\t\t\t\tlet MM = date.getMonth() + 1 // 月\r\n\t\t\t\t\tMM = MM < 10 ? ('0' + MM) : MM\r\n\t\t\t let d = date.getDate() // 日\r\n\t\t\t\t\td = d < 10 ? ('0' + d) : d\r\n\t\t\t let h = date.getHours() // 时\r\n\t\t\t\t\th = h < 10 ? ('0' + h) : h\r\n\t\t\t\t\tlet m = date.getMinutes() // 分\r\n\t\t\t\t\tm = m < 10 ? ('0' + m) : m\r\n\t\t\t let s = date.getSeconds() // 秒\r\n\t\t\t\t\ts = s < 10 ? ('0' + s) : s\r\n\t\t\t\t\treturn y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tGettbrecruit() {\r\n\t\t\t\tthis.API.Gettbrecruit(this.query).then(res => {\r\n\t\t\t\t\tthis.tbrecruitList = res.data.list;\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tnvInputTap(e) {\r\n\t\t\t\tconsole.log(e);\r\n\t\t\t},\r\n\t\t\tnvInput(e) {\r\n\t\t\t\tconsole.log(e.detail.value);\r\n\t\t\t},\r\n\t\t\tnvFormSubmit(e) {\r\n\t\t\t\tconsole.log(e.detail.value);\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: \"pyh-nv\",\r\n\t\t\t\t\tcontent: \"input提交:\" + JSON.stringify(e.detail.value)\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tnvAddressTap(e) {\r\n\t\t\t\tconsole.log(\"点击了地址\");\r\n\t\t\t\t// this.nvConfig.address.province = \"湖南省\"\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: \"pyh-nv\",\r\n\t\t\t\t\tcontent: \"点击了地址\"\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t// 回到上一页\r\n\t\t\tback: function() {\r\n\t\t\t\tuni.navigateBack({\r\n\t\t\t\t\tdelta: 1\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t// 左侧返回按钮调用\r\n\t\t\tonBack() {\r\n\t\t\t\tthis.$emit(\"onBack\")\r\n\t\t\t},\r\n\t\t\t/*下拉刷新的回调, 有三种处理方式:*/\r\n\t\t\tdownCallback() {\r\n\t\t\t\tthis.mescroll.endSuccess();\r\n\t\t\t},\r\n\t\t\t/*上拉加载的回调*/\r\n\t\t\tupCallback(page) {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tthis.mescroll.endByPage(10, 20);\r\n\t\t\t\t}, 2000)\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 菜单导航滚动\r\n\t\t\t */\r\n\t\t\tScrollMenu(e) {\r\n\t\t\t\tlet scrollLeft = e.target.scrollLeft;\r\n\t\t\t\tconst query = uni.createSelectorQuery().in(this);\r\n\t\t\t\tquery.select('.nav').boundingClientRect(data => {\r\n\t\t\t\t\tlet wid = e.target.scrollWidth - data.width - (data.left * 2 + 5);\r\n\t\t\t\t\tthis.slideNum = (scrollLeft / wid * 300) / 2;\r\n\t\t\t\t}).exec();\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 搜索点击\r\n\t\t\t */\r\n\t\t\tAllWork() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/AllWork/AllWork?keyword=' + this.SearchText\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tFeedback() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/Feedback/Feedback'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tFindWord() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/FindWord/FindWord'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tMyCoupon() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/MyCoupon/MyCoupon'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tConfirmOrder() {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/ConfirmOrder/ConfirmOrder'\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tJobsDetails(id) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/JobsDetails/JobsDetails?id=' + id\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 分类点击\r\n\t\t\t * @param {Object} item\r\n\t\t\t * @param {Number} index\r\n\t\t\t */\r\n\t\t\tonClassify(item, index) {\r\n\t\t\t\tthis.classifyShow = index;\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * 跳转点击\r\n\t\t\t * @param {String} type 跳转类型\r\n\t\t\t */\r\n\t\t\tonSkip(type) {\r\n\t\t\t\tswitch (type) {\r\n\t\t\t\t\tcase 'mess':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/Message/Message'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'paycode':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/PaymentCode/PaymentCode'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'menu':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/SearchGoodsList/SearchGoodsList'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'inform':\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'flash':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/FlashSale/FlashSale'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'GoodChoice':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/GoodChoice/GoodChoice'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'goods':\r\n\t\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\t\turl: '/pages/GoodsDetails/GoodsDetails',\r\n\t\t\t\t\t\t\tanimationType: 'zoom-fade-out',\r\n\t\t\t\t\t\t\tanimationDuration: 200\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n\t@import 'home.scss';\r\n</style>\n","import mod from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=style&index=0&id=92bb8f34&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./home.vue?vue&type=style&index=0&id=92bb8f34&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1675075179064\n var cssReload = require(\"/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} | ||
| 3 | \ No newline at end of file | 3 | \ No newline at end of file |
unpackage/dist/dev/mp-weixin/common/vendor.js
| @@ -11193,9 +11193,9 @@ var _default = (_GetTbpolicy$GetTbpol = { | @@ -11193,9 +11193,9 @@ var _default = (_GetTbpolicy$GetTbpol = { | ||
| 11193 | }, | 11193 | }, |
| 11194 | //获取招聘列表 | 11194 | //获取招聘列表 |
| 11195 | Gettbrecruit: function Gettbrecruit(data) { | 11195 | Gettbrecruit: function Gettbrecruit(data) { |
| 11196 | - return _request.default.get("/api/attract/tbrecruit?keyword=".concat(data.keyword, "¤tPage=").concat(data.currentPage, "&pageSize=").concat(data.pageSize)); | 11196 | + return _request.default.get("/api/attract/tbrecruit?keyword=".concat(data.keyword, "¤tPage=").concat(data.currentPage, "&pageSize=").concat(data.pageSize, "&sidx=").concat(data.sidx, "&sort=").concat(data.sort)); |
| 11197 | }, | 11197 | }, |
| 11198 | - //获取招聘列表 | 11198 | + //获取招聘详细 |
| 11199 | GettbrecruitById: function GettbrecruitById(id) { | 11199 | GettbrecruitById: function GettbrecruitById(id) { |
| 11200 | return _request.default.get("/api/attract/tbrecruit/".concat(id)); | 11200 | return _request.default.get("/api/attract/tbrecruit/".concat(id)); |
| 11201 | }, | 11201 | }, |
unpackage/dist/dev/mp-weixin/pages/AllWork/AllWork.js
| @@ -257,7 +257,9 @@ var _default = { | @@ -257,7 +257,9 @@ var _default = { | ||
| 257 | query: { | 257 | query: { |
| 258 | currentPage: 1, | 258 | currentPage: 1, |
| 259 | pageSize: 10, | 259 | pageSize: 10, |
| 260 | - keyword: "" | 260 | + keyword: "", |
| 261 | + sidx: "lastModifyTime", | ||
| 262 | + sort: "desc" | ||
| 261 | } | 263 | } |
| 262 | }; | 264 | }; |
| 263 | }, | 265 | }, |
unpackage/dist/dev/mp-weixin/pages/home/home.js
| @@ -346,7 +346,9 @@ var _default = { | @@ -346,7 +346,9 @@ var _default = { | ||
| 346 | query: { | 346 | query: { |
| 347 | currentPage: 1, | 347 | currentPage: 1, |
| 348 | pageSize: 10, | 348 | pageSize: 10, |
| 349 | - keyword: "" | 349 | + keyword: "", |
| 350 | + sidx: "lastModifyTime", | ||
| 351 | + sort: "desc" | ||
| 350 | }, | 352 | }, |
| 351 | tbrecruitList: [], | 353 | tbrecruitList: [], |
| 352 | SearchText: "", | 354 | SearchText: "", |