1 line
1019 KiB
Plaintext
1 line
1019 KiB
Plaintext
{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js?3223","webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js?df3c","webpack:///(webpack)/buildin/global.js?3698","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js?47a9","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js?34cf","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js?ed45","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js?7172","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js?6382","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js?6454","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js?dd3e","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js?7ca3","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js?d551","webpack:///./node_modules/@babel/runtime/helpers/typeof.js?3b2d","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js?e6db","webpack:///./node_modules/@babel/runtime/helpers/construct.js?931d","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js?7647","webpack:///./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js?011a","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js?af34","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js?a708","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js?b893","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js?9008","webpack:///./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js?d3b4","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js?67ad","webpack:///./node_modules/@babel/runtime/helpers/createClass.js?0bdb","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js?3240","uni-app:///src/utils/core.js","uni-app:///src/utils/util.js","uni-app:///src/config/config.js","uni-app:///src/utils/location/location.js","uni-app:///src/utils sync /^/.*/.js$","uni-app:///src/utils/foxui.js","uni-app:///src/utils/icons.js","uni-app:///src/utils/location/autoPredictor.js","uni-app:///src/utils/location/citydata.js","uni-app:///src/utils/location/location_utils.js","uni-app:///src/utils/location/commonMessageZhCn.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js?828b","uni-app:///uni_modules/uview-ui/index.js","uni-app:///uni_modules/uview-ui/libs/mixin/mixin.js","uni-app:///uni_modules/uview-ui/libs/mixin/mpMixin.js","uni-app:///uni_modules/uview-ui/libs/luch-request/index.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/Request.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/dispatchRequest.js","uni-app:///uni_modules/uview-ui/libs/luch-request/adapters/index.js","uni-app:///uni_modules/uview-ui/libs/luch-request/helpers/buildURL.js","uni-app:///uni_modules/uview-ui/libs/luch-request/utils.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/buildFullPath.js","uni-app:///uni_modules/uview-ui/libs/luch-request/helpers/isAbsoluteURL.js","uni-app:///uni_modules/uview-ui/libs/luch-request/helpers/combineURLs.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/settle.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/InterceptorManager.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/mergeConfig.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/defaults.js","uni-app:///uni_modules/uview-ui/libs/luch-request/utils/clone.js",null,"webpack:///./node_modules/base64-js/index.js?10ab","webpack:///./node_modules/ieee754/index.js?ba37","webpack:///./node_modules/isarray/index.js?b0e4","uni-app:///uni_modules/uview-ui/libs/util/route.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/@babel/runtime/regenerator/index.js?7eb4","webpack:///./node_modules/@babel/runtime/helpers/regeneratorRuntime.js?9fc1","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js?ee10","uni-app:///uni_modules/uview-ui/libs/function/colorGradient.js","uni-app:///uni_modules/uview-ui/libs/function/test.js","uni-app:///uni_modules/uview-ui/libs/function/debounce.js","uni-app:///uni_modules/uview-ui/libs/function/throttle.js","uni-app:///uni_modules/uview-ui/libs/function/index.js","uni-app:///uni_modules/uview-ui/libs/function/digit.js","webpack:///./node_modules/@babel/runtime/helpers/toArray.js?c70d","uni-app:///uni_modules/uview-ui/libs/config/config.js","uni-app:///uni_modules/uview-ui/libs/config/props.js","uni-app:///uni_modules/uview-ui/libs/config/props/actionSheet.js","uni-app:///uni_modules/uview-ui/libs/config/props/album.js","uni-app:///uni_modules/uview-ui/libs/config/props/alert.js","uni-app:///uni_modules/uview-ui/libs/config/props/avatar.js","uni-app:///uni_modules/uview-ui/libs/config/props/avatarGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/backtop.js","uni-app:///uni_modules/uview-ui/libs/config/props/badge.js","uni-app:///uni_modules/uview-ui/libs/config/props/button.js","uni-app:///uni_modules/uview-ui/libs/config/props/calendar.js","uni-app:///uni_modules/uview-ui/libs/config/props/carKeyboard.js","uni-app:///uni_modules/uview-ui/libs/config/props/cell.js","uni-app:///uni_modules/uview-ui/libs/config/props/cellGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/checkbox.js","uni-app:///uni_modules/uview-ui/libs/config/props/checkboxGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/circleProgress.js","uni-app:///uni_modules/uview-ui/libs/config/props/code.js","uni-app:///uni_modules/uview-ui/libs/config/props/codeInput.js","uni-app:///uni_modules/uview-ui/libs/config/props/col.js","uni-app:///uni_modules/uview-ui/libs/config/props/collapse.js","uni-app:///uni_modules/uview-ui/libs/config/props/collapseItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/columnNotice.js","uni-app:///uni_modules/uview-ui/libs/config/props/countDown.js","uni-app:///uni_modules/uview-ui/libs/config/props/countTo.js","uni-app:///uni_modules/uview-ui/libs/config/props/datetimePicker.js","uni-app:///uni_modules/uview-ui/libs/config/props/divider.js","uni-app:///uni_modules/uview-ui/libs/config/props/empty.js","uni-app:///uni_modules/uview-ui/libs/config/props/form.js","uni-app:///uni_modules/uview-ui/libs/config/props/formItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/gap.js","uni-app:///uni_modules/uview-ui/libs/config/props/grid.js","uni-app:///uni_modules/uview-ui/libs/config/props/gridItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/icon.js","uni-app:///uni_modules/uview-ui/libs/config/props/image.js","uni-app:///uni_modules/uview-ui/libs/config/props/indexAnchor.js","uni-app:///uni_modules/uview-ui/libs/config/props/indexList.js","uni-app:///uni_modules/uview-ui/libs/config/props/input.js","uni-app:///uni_modules/uview-ui/libs/config/props/keyboard.js","uni-app:///uni_modules/uview-ui/libs/config/props/line.js","uni-app:///uni_modules/uview-ui/libs/config/props/lineProgress.js","uni-app:///uni_modules/uview-ui/libs/config/props/link.js","uni-app:///uni_modules/uview-ui/libs/config/props/list.js","uni-app:///uni_modules/uview-ui/libs/config/props/listItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/loadingIcon.js","uni-app:///uni_modules/uview-ui/libs/config/props/loadingPage.js","uni-app:///uni_modules/uview-ui/libs/config/props/loadmore.js","uni-app:///uni_modules/uview-ui/libs/config/props/modal.js","uni-app:///uni_modules/uview-ui/libs/config/props/navbar.js","uni-app:///uni_modules/uview-ui/libs/config/color.js","uni-app:///uni_modules/uview-ui/libs/config/props/noNetwork.js","uni-app:///uni_modules/uview-ui/libs/config/props/noticeBar.js","uni-app:///uni_modules/uview-ui/libs/config/props/notify.js","uni-app:///uni_modules/uview-ui/libs/config/props/numberBox.js","uni-app:///uni_modules/uview-ui/libs/config/props/numberKeyboard.js","uni-app:///uni_modules/uview-ui/libs/config/props/overlay.js","uni-app:///uni_modules/uview-ui/libs/config/props/parse.js","uni-app:///uni_modules/uview-ui/libs/config/props/picker.js","uni-app:///uni_modules/uview-ui/libs/config/props/popup.js","uni-app:///uni_modules/uview-ui/libs/config/props/radio.js","uni-app:///uni_modules/uview-ui/libs/config/props/radioGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/rate.js","uni-app:///uni_modules/uview-ui/libs/config/props/readMore.js","uni-app:///uni_modules/uview-ui/libs/config/props/row.js","uni-app:///uni_modules/uview-ui/libs/config/props/rowNotice.js","uni-app:///uni_modules/uview-ui/libs/config/props/scrollList.js","uni-app:///uni_modules/uview-ui/libs/config/props/search.js","uni-app:///uni_modules/uview-ui/libs/config/props/section.js","uni-app:///uni_modules/uview-ui/libs/config/props/skeleton.js","uni-app:///uni_modules/uview-ui/libs/config/props/slider.js","uni-app:///uni_modules/uview-ui/libs/config/props/statusBar.js","uni-app:///uni_modules/uview-ui/libs/config/props/steps.js","uni-app:///uni_modules/uview-ui/libs/config/props/stepsItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/sticky.js","uni-app:///uni_modules/uview-ui/libs/config/props/subsection.js","uni-app:///uni_modules/uview-ui/libs/config/props/swipeAction.js","uni-app:///uni_modules/uview-ui/libs/config/props/swipeActionItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/swiper.js","uni-app:///uni_modules/uview-ui/libs/config/props/swipterIndicator.js","uni-app:///uni_modules/uview-ui/libs/config/props/switch.js","uni-app:///uni_modules/uview-ui/libs/config/props/tabbar.js","uni-app:///uni_modules/uview-ui/libs/config/props/tabbarItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/tabs.js","uni-app:///uni_modules/uview-ui/libs/config/props/tag.js","uni-app:///uni_modules/uview-ui/libs/config/props/text.js","uni-app:///uni_modules/uview-ui/libs/config/props/textarea.js","uni-app:///uni_modules/uview-ui/libs/config/props/toast.js","uni-app:///uni_modules/uview-ui/libs/config/props/toolbar.js","uni-app:///uni_modules/uview-ui/libs/config/props/tooltip.js","uni-app:///uni_modules/uview-ui/libs/config/props/transition.js","uni-app:///uni_modules/uview-ui/libs/config/props/upload.js","uni-app:///uni_modules/uview-ui/libs/config/zIndex.js","uni-app:///uni_modules/uview-ui/libs/function/platform.js","uni-app:///uni.promisify.adaptor.js","webpack:///C:/Users/0/Documents/HBuilderProjects/余乐兑-消费者/pages/order/offlinepay?d211","uni-app:///pages/order/offlinepay/index.js","uni-app:///pages/order/offlinepay/utils/rechargeDeductFn.js","uni-app:///pages/order/offlinepay/utils/moneySubFn.js","uni-app:///pages/order/offlinepay/utils/creditDeductFn.js","uni-app:///pages/order/offlinepay/utils/orderSubmitFn.js","webpack:///./node_modules/os-browserify/browser.js?800b","uni-app:///pages/order/offlinepay/utils/moneyChangeFn.js","uni-app:///pages/order/offlinepay/utils/getMerchFn.js","uni-app:///pages/order/offlinepay/utils/intFn.js","uni-app:///components/cwx-keyboard/cwx-keyboard.js"],"names":["objectKeys","singlePageDisableKey","target","globalThis","key","join","oldWx","launchOption","getLaunchOptionsSync","isWxKey","scene","includes","indexOf","initWx","newWx","realAtob","b64","b64re","atob","str","String","replace","test","Error","slice","length","bitmap","result","r1","r2","i","charAt","fromCharCode","b64DecodeUnicode","decodeURIComponent","split","map","c","charCodeAt","toString","getCurrentUserInfo","token","wx","getStorageSync","tokenArr","uid","role","permission","tokenExpired","userInfo","JSON","parse","error","message","exp","iat","uniIdMixin","Vue","prototype","uniIDHasRole","roleId","uniIDHasPermission","permissionId","uniIDTokenValid","Date","now","_toString","Object","hasOwnProperty","isFn","fn","isStr","isObject","obj","isPlainObject","call","hasOwn","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","_","toUpperCase","sortObject","sortObj","keys","sort","forEach","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","res","concat","Array","isArray","dedupeHooks","hooks","push","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","params","data","isPromise","then","queue","promise","Promise","resolve","callback","wrapperOptions","options","name","oldCallback","callbackInterceptor","wrapperReturnValue","returnValue","returnValueHooks","getApiInterceptorHooks","scopedInterceptor","invokeApi","api","invoke","promiseInterceptor","reject","SYNC_API_RE","CONTEXT_API_RE","CONTEXT_API_RE_EXC","ASYNC_API","CALLBACK_API_RE","isContextApi","isSyncApi","isCallbackApi","handlePromise","catch","err","shouldPromise","finally","constructor","value","reason","promisify","promiseApi","success","fail","complete","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","Number","Math","floor","LOCALE_ZH_HANS","LOCALE_ZH_HANT","LOCALE_EN","LOCALE_FR","LOCALE_ES","messages","locale","normalizeLocale","language","initI18nMessages","isEnableLocale","localeKeys","__uniConfig","locales","curMessages","userMessages","i18n","initVueI18n","t","i18nMixin","mixin","beforeCreate","unwatch","watchLocale","$forceUpdate","$once","methods","$$t","values","setLocale","getLocale","initAppLocale","appVm","state","observable","localeWatchers","$watchLocale","defineProperty","get","set","v","watch","include","parts","find","part","startsWith","trim","toLowerCase","lang","getLocale$1","getApp","app","allowDefault","$vm","$locale","setLocale$1","oldLocale","onLocaleChangeCallbacks","onLocaleChange","global","interceptors","baseApi","freeze","__proto__","findExistsPageIndex","url","pages","getCurrentPages","len","page","$page","fullPath","redirectTo","fromArgs","exists","delta","args","existsPageIndex","previewImage","currentIndex","parseInt","current","isNaN","urls","filter","item","indicator","loop","UUID_KEY","deviceId","useDeviceId","random","setStorage","addSafeAreaInsets","safeArea","safeAreaInsets","top","left","right","bottom","screenHeight","populateParameters","brand","model","system","theme","version","fontSizeSetting","SDKVersion","deviceOrientation","extraParam","osName","osVersion","hostVersion","deviceType","getGetDeviceType","deviceBrand","getDeviceBrand","_hostName","getHostName","_deviceOrientation","_devicePixelRatio","_SDKVersion","hostLanguage","parameters","appId","process","appName","appVersion","appVersionCode","appLanguage","getAppLanguage","uniCompileVersion","uniRuntimeVersion","uniPlatform","deviceModel","devicePixelRatio","toLocaleLowerCase","hostTheme","hostName","hostSDKVersion","hostFontSizeSetting","windowTop","windowBottom","osLanguage","undefined","osTheme","ua","hostPackageName","browserName","browserVersion","deviceTypeMaps","ipad","windows","mac","deviceTypeMapsKeys","_model","_m","defaultLanguage","_platform","environment","host","env","getSystemInfo","showActionSheet","alertText","title","getAppBaseInfo","getDeviceInfo","getWindowInfo","getAppAuthorizeSetting","locationReducedAccuracy","locationAccuracy","compressImage","compressedHeight","compressHeight","compressedWidth","compressWidth","protocols","todos","canIUses","CALLBACKS","processCallback","methodName","processReturnValue","processArgs","argsOption","keepFromArgs","toArgs","keyOption","console","warn","keepReturnValue","wrapper","protocol","arg1","arg2","apply","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","Emitter","getUniEmitter","ctx","$on","arguments","$off","$emit","eventApi","tryCatch","e","getApiCallbacks","apiCallbacks","param","cid","cidErrMsg","enabled","normalizePushMessage","invokePushCallback","type","invokeGetPushCidCallbacks","onPushMessageCallbacks","stopped","getPushCidCallbacks","getPushClientId","hasSuccess","hasFail","hasComplete","onPushMessage","offPushMessage","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","delete","initRefs","forComponents","handleLink","event","vueOptions","parent","markMPComponent","IS_MP","configurable","enumerable","OB","SKIP","isExtensible","WORKLET_RE","initWorkletMethods","mpMethods","vueMethods","matches","match","workletName","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","extend","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","_$vuePid","initData","context","VUE_APP_DEBUG","stringify","__lifecycle_hooks__","PROP_TYPES","Boolean","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","preventDefault","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","isInteger","substr","__get_value","vForItem","vForKey","processEventExtra","extra","__args__","extraObj","getObjByArray","arr","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","ret","arg","ONCE","CUSTOM","isMatchEventType","eventType","optType","getContextVm","$parent","$options","generic","handleEvent","eventOpts","eventOpt","eventsArray","isOnce","eventArray","handlerCtx","handler","path","is","once","eventChannels","getEventChannel","id","eventChannel","initEventChannel","getOpenerEventChannel","callHook","__id__","__eventChannel__","initScopedSlotsParams","center","parents","currentId","propsData","$hasSSP","slot","$getSSP","needAll","$setSSP","$initSSP","$callSSP","destroyed","parseBaseApp","store","$store","mpHost","$i18n","_i18n","appOptions","onLaunch","canIUse","globalData","_isMounted","parseApp","createApp","App","encodeReserveRE","encodeReserveReplacer","commaRE","encode","encodeURIComponent","stringifyQuery","encodeStr","val","val2","x","parseBaseComponent","vueComponentOptions","needVueOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","size","__l","__e","externalClasses","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","copyQuery","parsePage","createPage","createComponent","createSubpackageApp","onShow","onAppShow","onHide","onAppHide","createPlugin","canIUseApi","apiName","uni","Proxy","uni$1","_interopRequireDefault","__esModule","module","exports","arrayWithHoles","require","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","r","l","Symbol","iterator","n","u","a","f","o","next","done","arrayLikeToArray","_unsupportedIterableToArray","minLen","from","_arrayLikeToArray","arr2","_nonIterableRest","TypeError","toPropertyKey","_defineProperty","writable","_typeof","toPrimitive","setPrototypeOf","isNativeReflectConstruct","_construct","Reflect","construct","p","bind","_setPrototypeOf","_isNativeReflectConstruct","valueOf","arrayWithoutHoles","iterableToArray","nonIterableSpread","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","iter","_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","add","isString","hasI18nJson","jsonObj","walkJsonObj","isI18nStr","parseI18nJson","compileStr","compileI18nJsonStr","jsonStr","localeValues","unshift","compileJsonObj","compileValue","valueLocales","localValue","walk","resolveLocale","resolveLocaleChain","chain","pop","_classCallCheck","instance","Constructor","_defineProperties","descriptor","_createClass","protoProps","staticProps","getType","str2Obj","newStr","newOjb","newStr1","onShareAppMessage","showDesc","userid","pdata","pay","payinfo","expireTime","payHistoryData","diffTime","getTime","create_time","showModal","content","showCancel","setStorageSync","requestPayment","upload","_this","chooseImage","chosImgRes","uploadUrl","showToast","icon","mask","duration","resSize","tempFiles","maxMB","maxByte","hideToast","uploadFile","filePath","tempFilePaths","upRes","setTimeout","upResObj","code","msg","alert","core","config","initFriendTask","optionL","mid","tempMidData","getCache","merchid","setCache","getH5Login","openid_wx","mobile","request","s","synLoginRes","loadJS","script","document","createElement","readyState","onreadystatechange","onload","src","getElementsByTagName","appendChild","formatTime","getFullYear","getMonth","getDate","getHours","getMinutes","g","getSeconds","getFourCate","setting","category","appApiLog","payComHideLoading","successReturn","openid","midData","api_hostname","api_dir","timeout","errorDo","hideLoading","confirmText","confirm","storage","old","getQueryVariable","variable","window","location","href","vars","pair","loginByCode","forceUpdate","isclose","usermid","login","all_need_openid_fun","getUpWxUid","loginRefreshUserInfo","showLoading","userLoginRes","unionid","tranNumber","num","point","parseFloat","toFixed","numStr","decimal","substring","getCurrentSys","current_platform","suc","setUpCommision","log","numberFloor","abs","numberCeil","fix","reg","RegExp","floorStr","exec","floorNumber","floorStr2","orc","fileUrl","getH5Platform","getLocalFilePath","localFilePath","plus","io","convertAbsoluteFileSystem","pathToBase64","FileReader","xhr","XMLHttpRequest","open","responseType","status","fileReader","onerror","readAsDataURL","response","send","canvas","c2x","getContext","img","Image","width","height","drawImage","toDataURL","resolveLocalFileSystemURL","entry","getFileSystemManager","readFile","encoding","base64ToPath","base64","extName","array","Uint8Array","URL","webkitURL","createObjectURL","Blob","fileName","nativeObj","Bitmap","loadBase64Data","save","clear","USER_DATA_PATH","writeFile","mergeAccount","navigateBack","credit_give_money","white_page_list","secret","getLocation","that","succesPromise","latitude","longitude","speed","accuracy","setLocation","setLocation_Succss","cancel","lat","lng","getAddress2Gps","addressValue","encodeURI","min","max","action","toast","FoxUIToast","notify","FoxUINotify","style","voice","mute","home","home_red","cate","cate_red","cart","cart_red","people","people_red","shop","order","cartWhite","like","likeactive","likefill","footprint","notice","list","paying48","deliver48","box48","refund48","storeWhite","search","money","coupon","card","car48","cry220","group","labelGreen","labelRed","back","nopic","dingdan","tianjia","service2","my","isNotEmpty","utils","isChinese","getSlicedName","AutoPredictor","inputContent","tempList","searchList","resultList","showList","targetCity","CITY_LIST","city","getTargetCity","cityObj","slicedChineseName","slicedPinyinName","CITY_NOT_FOUND","LETTERS","HOT_CITY_LIST","cityCode","getLocationUrl","getCountyListUrl","getIndexUrl","safeGet","keyList","reduce","preValue","curKey","getCityListSortedByInitialLetter","letter","initial","cityInfo","sliceLen","onFail","commonMessage","pleaseSetTranspileDependencies","babelTest","$u","date","timeFormat","colorGradient","hexToRgb","rgbToHex","colorToRgba","http","Request","zIndex","debounce","throttle","mpMixin","color","install","timestamp","timeFrom","customStyle","customClass","linkType","getRect","$uGetRect","created","computed","deepMerge","bem","fixed","change","prefix","classes","openPage","urlKey","all","createSelectorQuery","in","boundingClientRect","rect","getParentData","parentName","children","parentData","preventEvent","onReachBottom","beforeDestroy","childrenList","child","clone","defaults","InterceptorManager","mergeConfig","dispatchRequest","fulfilled","rejected","shift","middleware","adapter","mergeKeys","config2","prop","isUndefined","buildURL","buildFullPath","baseURL","_config","header","settle","requestTask","otherConfig","optionalKeys","downloadFile","getTask","serializedParams","isURLSearchParams","isDate","toISOString","hashmarkIndex","URLSearchParams","isBoolean","assignValue","requestedURL","isAbsoluteURL","combineURLs","relativeURL","validateStatus","statusCode","handlers","use","eject","h","globalsConfig","custom","defaultToConfig2Keys","uploadKeys","defaultsKeys","dataType","_instanceof","nativeMap","Map","nativeSet","nativePromise","circular","depth","includeNonEnumerable","allParents","allChildren","useBuffer","Buffer","Infinity","_clone","proto","__isArray","__isRegExp","source","__getRegExpFlags","lastIndex","__isDate","isBuffer","copy","getPrototypeOf","keyChild","valueChild","entryChild","attrs","getOwnPropertyDescriptor","objProperty","ReferenceError","getOwnPropertySymbols","symbols","symbol","allPropertyNames","getOwnPropertyNames","propertyName","clonePrototype","__objToStr","re","flags","ignoreCase","multiline","Router","animationType","animationDuration","intercept","addRootPath","queryParams","mixinParam","routeIntercept","isNext","navigateTo","switchTab","reLaunch","runtime","_regeneratorRuntime","asyncIterator","toStringTag","define","wrap","Generator","Context","makeInvokeMethod","y","GeneratorFunction","GeneratorFunctionPrototype","d","defineIteratorMethods","_invoke","AsyncIterator","__await","callInvokeWithMethodAndArg","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","displayName","isGeneratorFunction","mark","awrap","async","reverse","prev","stop","rval","handle","finish","_catch","delegateYield","asyncGeneratorStep","gen","_next","_throw","info","_asyncToGenerator","self","startColor","endColor","step","startRGB","startR","startG","startB","endRGB","endR","endG","endB","sR","sG","sB","colorArr","hex","round","sColor","sColorNew","sColorChange","rgb","aColor","strHex","aNum","numHex","alpha","email","dateISO","string","digits","idCard","carNo","xreg","creg","amount","chinese","enOrNum","contains","range","rangeLength","landline","empty","jsonString","object","func","image","IMAGE_REGEXP","video","VIDEO_REGEXP","regExp","isEmpty","wait","immediate","clearTimeout","callNow","timer","flag","getPx","unit","sleep","os","sys","gab","guid","firstU","radix","chars","uuid","addStyle","styleArray","addUnit","deepClone","WeakMap","has","entries","merged","sourceValue","targetValue","randomArray","padStart","maxLength","fillString","fillLength","times","ceil","dateTime","formatStr","timeSource","beginIndex","tips","pos","isPrefix","arrayFormat","_result","_value","commaStr","type2icon","fill","iconName","priceFormat","decimals","decimalPoint","thousandsSeparator","isFinite","prec","sep","dec","getDuration","valueNum","padZero","formValidate","formItem","form","validateField","getProperty","firstObj","setProperty","inFn","_obj","k","getHistoryPage","setConfig","_boundaryCheckingState","strip","precision","toPrecision","digitLength","eSplit","float2Fixed","dLen","pow","checkBoundary","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","iteratorOperation","operation","num1","num2","others","nums","num1Changed","num2Changed","baseNum","leftValue","minus","divide","ratio","base","enableBoundaryChecking","_toArray","actionSheet","album","avatar","avatarGroup","backtop","badge","button","calendar","carKeyboard","cell","cellGroup","checkbox","checkboxGroup","circleProgress","codeInput","col","collapse","collapseItem","columnNotice","countDown","countTo","datetimePicker","divider","gap","grid","gridItem","indexAnchor","indexList","input","keyboard","line","lineProgress","link","listItem","loadingIcon","loadingPage","loadmore","modal","navbar","noNetwork","noticeBar","numberBox","numberKeyboard","overlay","picker","popup","radio","radioGroup","rate","readMore","row","rowNotice","scrollList","section","skeleton","slider","statusBar","steps","stepsItem","sticky","subsection","swipeAction","swipeActionItem","swiper","swipterIndicator","_switch","tabbar","tabbarItem","tabs","tag","textarea","toolbar","tooltip","transition","description","actions","cancelText","closeOnClickAction","safeAreaInsetBottom","openType","closeOnClickOverlay","keyName","singleSize","multipleSize","space","singleMode","multipleMode","maxCount","previewFullImage","rowCount","showMore","closable","showIcon","effect","fontSize","shape","bgColor","mpAvatar","randomBgColor","defaultUrl","colorIndex","extraValue","scrollTop","iconStyle","isDot","showZero","numberType","offset","inverted","absolute","hairline","plain","disabled","loading","loadingText","loadingMode","loadingSize","formType","appParameter","hoverStopPropagation","sessionFrom","sendMessageTitle","sendMessagePath","sendMessageImg","showMessageCard","dataName","throttleTime","hoverStartTime","hoverStayTime","iconColor","showTitle","showSubtitle","startText","endText","customList","minDate","maxDate","defaultDate","rowHeight","formatter","showLunar","showMark","confirmDisabledText","readonly","showConfirm","maxRange","rangePrompt","showRangePrompt","allowSameDay","monthNum","label","border","clickable","isLink","required","arrowDirection","rightIconStyle","rightIcon","titleStyle","activeColor","inactiveColor","iconSize","labelSize","labelColor","labelDisabled","placement","iconPlacement","borderBottom","percentage","seconds","changeText","keepRunning","uniqueKey","adjustPosition","maxlength","dot","focus","bold","disabledKeyboard","borderColor","disabledDot","span","justify","align","textAlign","accordion","disableTouch","time","autoStart","millisecond","startVal","endVal","autoplay","useEasing","separator","showToolbar","minHour","maxHour","minMinute","maxMinute","itemHeight","cancelColor","confirmColor","visibleItemCount","defaultIndex","dashed","textPosition","textSize","textColor","lineColor","marginTop","rules","errorType","labelPosition","labelWidth","labelAlign","labelStyle","leftIcon","leftIconStyle","marginBottom","hoverClass","customPrefix","labelPos","imgMode","radius","lazyLoad","showMenuByLongpress","errorIcon","showError","fade","webp","customNavHeight","disabledColor","clearable","password","placeholder","placeholderClass","placeholderStyle","showWordLimit","confirmType","confirmHold","holdKeyboard","autoBlur","disableDefaultPadding","cursor","cursorSpacing","selectionStart","selectionEnd","inputAlign","prefixIcon","prefixIconStyle","suffixIcon","suffixIconStyle","dotDisabled","showTips","autoChange","direction","margin","showText","underLine","mpTips","showScrollbar","lowerThreshold","upperThreshold","offsetAccuracy","enableFlex","pagingEnabled","scrollable","scrollIntoView","scrollWithAnimation","enableBackToTop","preLoadScreen","anchor","vertical","timingFunction","loadingColor","loadmoreText","nomoreText","showConfirmButton","showCancelButton","buttonReverse","zoom","asyncClose","negativeTop","confirmButtonShape","safeAreaInsetTop","leftText","rightText","titleWidth","leftIconSize","leftIconColor","mainColor","autoBack","primary","warning","contentColor","tipsColor","lightColor","integer","disabledInput","asyncChange","inputWidth","showMinus","showPlus","decimalLength","longPress","buttonSize","disableMinus","disablePlus","opacity","copyLink","errorImg","loadingImg","pauseVideo","previewImg","setTitle","showImgMenu","columns","immediateChange","closeable","overlayStyle","closeIconPos","overlayOpacity","count","gutter","minCount","allowHalf","activeIcon","inactiveIcon","touchable","showHeight","toggle","closeText","openText","textIndent","indicatorWidth","indicatorBarWidth","indicatorColor","indicatorActiveColor","indicatorStyle","clearabled","showAction","actionStyle","actionText","inputStyle","searchIconColor","searchIconSize","placeholderColor","searchIcon","animation","subTitle","subColor","showLine","arrow","animate","rows","rowsWidth","rowsHeight","titleHeight","avatarSize","avatarShape","blockSize","blockColor","showValue","blockStyle","desc","offsetTop","autoClose","threshold","indicatorInactiveColor","indicatorMode","currentItemId","interval","previousMargin","nextMargin","acceleration","displayMultipleItems","easingFunction","swiperIndicator","switch","activeValue","inactiveValue","badgeStyle","activeStyle","inactiveStyle","lineWidth","lineHeight","lineBgSize","itemStyle","closeColor","plainFill","block","lines","decoration","wordWrap","autoHeight","showConfirmBar","isTab","copyText","showCopy","buttons","accept","capture","compressed","camera","maxDuration","uploadIcon","uploadIconColor","useBeforeRead","imageMode","sizeType","multiple","deletable","maxSize","MAX_VALUE","fileList","uploadText","topTips","indexListSticky","requirejs","realprice","credit","money_sub","deductcredit","deductprice","needpay","deduct_recharge","deductprice_zs","deductcredit_zs","merch","mockInputFocusText","showKeyBoard","showRemarkInput","use_deductprice","hideRechargeDeduct","hideCreditDeduct","getOpenIDAlready","credit1","use_deduct_recharge","recharge","submit","min_deduct_credit_price","on_paying","credit1_hot_set","credit1_hot_rang","use_deductprice_hot","credit1_hot_set_jine","ismobile","quota","use_max_credit_money","cwxKeyboard","filters","limitDecimal","mockInputFocus","intFn","init","util","removeStorageSync","clearMoney","_handleClearKey","isNeedGo2OtherPage","queryParam","pageParam","needGo2MerCredit","needGo2MerGoods","table_id","needGo2MerDetails","cashierid","total","onMoneyInput","getList","merchData","hasMerchData2Next","credit_pay_rate","err_code","setNavigationBarTitle","merchname","min_offline_price","credit_give_hot_rang","randomNum","pt_title","activity_platform","credit_give_hot_set","pay_need_mobile","checkBindMobile","getUserRecharge","err_code_desc","tipsText","getUserCredit","userRecharge","balance","submitFun","orderSubmitFn","orderSubmit","checkCreditReBindMobile","useCreditCheckBox","noUseDeduct","creditDeductFn","modifyCreditDeduct","useCreditCheckBox_hot","useRechargeCheckBox","rechargeDeductFn","modifyRechargeDeduct","moneyChangeFn","changeEv","toggleKeyboard","showRemarkClick","showSpreadRemark","remark_spread","showMiniCreditdeductTips","useEcnyPay","e_cny_qrurl_psbc_tips","e_cny_qrurl_psbc","go2MerchIndex","getPhoneNumber","result_code","getPhoneNumber_hot","setInterval","checkMoneySub","is_use_recharge_deduct","allBa2Need","money4CreditAdd","creditaddNumber","credit_give","credit_give_rate","$set","moneySubFn","modifyMoneySub","sub_money_maxpercent","money_sub_credit","use_huodong_money","is_use_credit_deduct","user_credit_to_money","max_credit_money","credit_pay_proportion","checkMobileRes","isalipay","h5Pla","submitData","shopId","price","remark","bean","openId","orderSubRes","subRes","isAllUserCreditPay","rechargeMinIndex","rechargeArr","give_money","judge","recharge_money","emit","err_code_des","getMerchID","queryData","device_sn","merchRes","imei","optionsScen","q","getMerchFn","hideInputNumber","btnColor","Cdel","Time","touchstart","clearInterval","touchend","_handleKeyPress","_handleDecimalPoint","_handleDeleteKey","_handleConfirmKey","_handleNumberKey","S"],"mappings":"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AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA,sBAAsB,+BAA+B;AACrD,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,kDAAkD,iCAAiC,EAAE;AACrF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,cAAc;;AAE3C;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;;AAEvC;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,aAAoB;;AAErC;AACA;AACA;AACA,YAAY,aAAoB;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC,iBAAiB;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA,oCAAoC;AACpC;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA,iCAAiC;AACjC,uCAAuC,wBAAwB,EAAE;AACjE,0BAA0B;;AAE1B;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC,kBAAkB,YAAY;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,wCAAwC,EAAE;AAC1C;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,+BAA+B,oBAAoB,EAAE;AACrD;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B,SAAS,qBAAqB;;AAExD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA,GAAG;AACH,CAAC;;AAED;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,qIAAW;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,qIAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,qIAAW;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,qIAAW;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;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;;;;;;;;;;;;;;;;;;;;;;;;;;AC97LnB,IAAI+G,OAAO,GAAG,UAAU,IAAI,OAAOpG,MAAM,IAAI,QAAQ,YAAWA,MAAM,CAACC,QAAQ,IAAG,UAAS1mB,GAAG,EAAE;EAC/F,eAAcA,GAAG;AAClB,CAAC,GAAG,UAASA,GAAG,EAAE;EACjB,OAAOA,GAAG,IAAI,UAAU,IAAI,OAAOymB,MAAM,IAAIzmB,GAAG,CAACwD,WAAW,KAAKijB,MAAM,IAAIzmB,GAAG,KAAKymB,MAAM,CAACjpB,SAAS,GAAG,QAAQ,WACtGwC,GAAG;AACZ,CAAC;AACD6lB,MAAM,CAACC,OAAO,GAAG;EAChBgH,OAAO,EAAE,iBAAS7xB,GAAG,EAAE;IACtB,IAAI,QAAQ,IAAI,OAAOA,GAAG,EAAE,OAAOA,GAAG;IACtC,IAAIA,GAAG,CAACP,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAIO,GAAG,CAACP,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3D,IAAIqyB,MAAM,GAAG9xB,GAAG,CAACgB,KAAK,CAAC,GAAG,CAAC;MAC1B+wB,MAAM,GAAG,CAAC,CAAC;IACZD,MAAM,CAACttB,OAAO,CAAC,UAAAgE,KAAK,EAAI;MACvB,IAAIA,KAAK,CAAC/I,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;QAC5B,IAAIuyB,OAAO,GAAGxpB,KAAK,CAACxH,KAAK,CAAC,GAAG,CAAC;QAC9B+wB,MAAM,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAGA,OAAO,CAAC,CAAC,CAAC;MAChC;IACD,CAAC,CAAC;IACF,OAAOD,MAAM;EACd,CAAC;EACDE,iBAAiB,EAAE,2BAASrN,IAAI,EAAErQ,KAAK,EAAiB;IAAA,IAAf2d,QAAQ,uEAAG,EAAE;IACrD,IAAIC,MAAM,GAAG5H,GAAG,CAAC/oB,cAAc,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;IACjDojB,IAAI,GAAGA,IAAI,IAAI,oBAAoB;IACnC,OAAO;MACN,OAAO,EAAErQ,KAAK,GAAGA,KAAK,GAAG,KAAK;MAC9B,MAAM,EAAE2d,QAAQ,GAAGA,QAAQ,GAAG,EAAE;MAChC,MAAM,EAAEtN,IAAI,GAAG,MAAM,GAAGuN;IACzB,CAAC;EACF,CAAC;EACDC,KAAK,EAAE,eAASlnB,CAAC,EAAE;IAClB,OAAOA,CAAC,CAACsY,aAAa,CAAC5I,OAAO;EAC/B,CAAC;EACDzU,IAAI,EAAE,cAAS+E,CAAC,EAAE;IACjB,OAAOA,CAAC,CAACnM,MAAM,CAAC6b,OAAO;EACxB,CAAC;EACDyX,GAAG,EAAE,aAASC,OAAO,EAA+B;IAAA,IAA7B1pB,OAAO,uEAAG,IAAI;IAAA,IAAEC,IAAI,uEAAG,IAAI;IACjD;IACA,IAAI0pB,UAAU,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAC;IAC7B,IAAI,QAAQ,KAAK,KAAK,CAAC,KAAKD,OAAO,GAAG,WAAW,GAAGV,OAAO,CAACU,OAAO,CAAC,CAAC,EAAE;MACtE,IAAI,UAAU,IAAI,OAAO1pB,OAAO,EAAE;QACjC0pB,OAAO,CAAC1pB,OAAO,GAAGA,OAAO;MAC1B;MACA,IAAI,UAAU,IAAI,OAAOC,IAAI,EAAE;QAC9BypB,OAAO,CAACzpB,IAAI,GAAGA,IAAI;MACpB;MACA,IAAI2pB,cAAc,GAAGjI,GAAG,CAAC/oB,cAAc,CAAC,gBAAgB,CAAC;MACzD,IAAIgxB,cAAc,IAAIA,cAAc,CAACF,OAAO,IAAIvwB,IAAI,CAAC+d,SAAS,CAACwS,OAAO,CAAC,EAAE;QACxE,IAAIG,QAAQ,GAAG,IAAI5vB,IAAI,EAAE,CAAC6vB,OAAO,EAAE,GAAGF,cAAc,CAACG,WAAW;QAChEF,QAAQ,GAAGA,QAAQ,GAAG,IAAI;QAC1B,IAAIA,QAAQ,GAAGF,UAAU,EAAE;UAC1BhI,GAAG,CAACqI,SAAS,CAAC;YACbre,KAAK,EAAE,IAAI;YACXse,OAAO,EAAE,oBAAoB;YAC7BC,UAAU,EAAE;UACb,CAAC,CAAC;UACF;QACD;MACD,CAAC,MAAM;QACNvI,GAAG,CAACwI,cAAc,CAAC,gBAAgB,EAAE;UACpC,SAAS,EAAEhxB,IAAI,CAAC+d,SAAS,CAACwS,OAAO,CAAC;UAClC,aAAa,EAAE,IAAIzvB,IAAI,EAAE,CAAC6vB,OAAO;QAClC,CAAC,CAAC;MACH;MAEA,OAAOnI,GAAG,CAACyI,cAAc,CAACV,OAAO,CAAC;IAOnC;EACD,CAAC;EACDW,MAAM,EAAE,gBAASvsB,QAAQ,EAAE;IAC1B,IAAIwsB,KAAK,GAAG,IAAI;IAChB3I,GAAG,CAAC4I,WAAW,CAAC;MACfvqB,OAAO,EAAE,iBAASwqB,UAAU,EAAE;QAC7B,IAAIC,SAAS,GACZ,0EAA0E;QAC3E9I,GAAG,CAAC+I,SAAS,CAAC;UACb/e,KAAK,EAAE,SAAS;UAChBgf,IAAI,EAAE,SAAS;UACfC,IAAI,EAAE,KAAK;UACXC,QAAQ,EAAE,IAAI,GAAG;QAClB,CAAC,CAAC;QACF,IAAIC,OAAO,GAAGN,UAAU,CAACO,SAAS,CAAC,CAAC,CAAC,CAAC7K,IAAI;QAC1C,IAAI8K,KAAK,GAAG,CAAC;QACb,IAAIC,OAAO,GAAGD,KAAK,GAAG,IAAI,GAAG,IAAI;QACjC,IAAIF,OAAO,GAAGG,OAAO,EAAE;UACtBtJ,GAAG,CAACuJ,SAAS,EAAE;UACfvJ,GAAG,CAACqI,SAAS,CAAC;YACbE,UAAU,EAAE,KAAK;YACjBve,KAAK,EAAE,IAAI;YACXse,OAAO,EAAE,YAAY,GAAGe,KAAK,GAAG;UACjC,CAAC,CAAC;UACF;QACD;QACArJ,GAAG,CAACwJ,UAAU,CAAC;UACd7lB,GAAG,EAAEmlB,SAAS;UACdW,QAAQ,EAAEZ,UAAU,CAACa,aAAa,CAAC,CAAC,CAAC;UACrCptB,IAAI,EAAE,MAAM;UACZ+B,OAAO,EAAE,iBAASsrB,KAAK,EAAE;YACxBC,UAAU,CAAC,YAAW;cACrB5J,GAAG,CAACuJ,SAAS,EAAE;YAChB,CAAC,EAAE,GAAG,CAAC;YACP,IAAIM,QAAQ,GAAGryB,IAAI,CAACC,KAAK,CAACkyB,KAAK,CAAC/tB,IAAI,CAAC;YACrC,IAAI,CAAC,IAAIiuB,QAAQ,CAACC,IAAI,EAAE;cACvB9J,GAAG,CAACqI,SAAS,CAAC;gBACbre,KAAK,EAAE,IAAI;gBACXse,OAAO,EAAE,MAAM,GAAGqB,KAAK,CAACI;cACzB,CAAC,CAAC;YACH,CAAC,MAAM;cACN,IAAI,UAAU,IAAI,OAAO5tB,QAAQ,EAAE;gBAClCA,QAAQ,CAAC0tB,QAAQ,CAACjuB,IAAI,CAACib,IAAI,CAAC;cAC7B;YACD;UACD;QACD,CAAC,CAAC;MACH;IACD,CAAC,CAAC;EACH,CAAC;EACDmT,KAAK,EAAE,eAAS1B,OAAO,EAAE;IACxBtI,GAAG,CAACqI,SAAS,CAAC;MACbre,KAAK,EAAE,IAAI;MACXse,OAAO,EAAEA,OAAO;MAChBC,UAAU,EAAE;IACb,CAAC,CAAC;EACH;AACD,CAAC,C;;;;;;;;;;;;AChID,IAAM0B,IAAI,GAAGzJ,mBAAO,CAAC,mBAAW,CAAC;EAChC0J,MAAM,GAAG1J,mBAAO,CAAC,6BAAqB,CAAC;;AAExC;AACA,SAAS2J,cAAc,GAAG;EACzB,IAAIC,OAAO,GAAGpK,GAAG,CAAC/oB,cAAc,CAAC,kBAAkB,CAAC;EACpD,IAAI,OAAOmzB,OAAO,CAACjL,KAAK,IAAI,WAAW,IAAI,CAACiL,OAAO,CAACjL,KAAK,EAAE;IAC1D;EACD;EACA,IAAI9jB,MAAM,GAAG+uB,OAAO,CAACjL,KAAK;EAE1B,IAAI,OAAO9jB,MAAM,CAACrG,KAAK,IAAI,WAAW,IAAIqG,MAAM,CAACrG,KAAK,EAAE;IACvDqG,MAAM,GAAGA,MAAM,CAACrG,KAAK;EACtB;EACA,IAAI,OAAOqG,MAAM,IAAI,QAAQ,EAAE;IAC9BA,MAAM,GAAG7E,kBAAkB,CAAC6E,MAAM,CAAC;IACnCA,MAAM,GAAG4uB,IAAI,CAAC3C,OAAO,CAACjsB,MAAM,CAAC;EAC9B;EACA;EACA,IAAI,OAAOA,MAAM,CAACgvB,GAAG,IAAI,WAAW,IAAIhvB,MAAM,CAACgvB,GAAG,EAAE;IACnD,IAAIC,WAAW,GAAG1nB,MAAM,EAAE,CAAC2Z,UAAU,CAACgO,QAAQ,CAAC,SAAS,CAAC;IACzD,IAAI,OAAOD,WAAW,IAAI,WAAW,IAAIA,WAAW,EAAE;MACrDA,WAAW,CAAC,KAAK,CAAC,GAAGjvB,MAAM,CAACgvB,GAAG;IAChC,CAAC,MAAM;MACNC,WAAW,GAAG;QACbD,GAAG,EAAEhvB,MAAM,CAACgvB,GAAG;QACfG,OAAO,EAAE;MACV,CAAC;IACF;IACA5nB,MAAM,EAAE,CAAC2Z,UAAU,CAACkO,QAAQ,CAAC,SAAS,EAAEH,WAAW,CAAC;EACrD;EACA;AACD;AACA;AACA,SAASI,UAAU,CAACC,SAAS,EAAEC,MAAM,EAAE;EACtC,OAAO,IAAI3uB,OAAO,CAAC,UAASoC,OAAO,EAAEC,IAAI,EAAE;IAC1CsE,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;MAC3BC,CAAC,EAAE,6BAA6B;MAChCH,SAAS,EAAEA,SAAS;MACpBC,MAAM,EAAEA;IACT,CAAC,CAAC,CAAC9uB,IAAI,CAAC,UAAAivB,WAAW,EAAI;MACtB;MACA,IAAIA,WAAW,CAACnvB,IAAI,CAACA,IAAI,EAAE;QAC1ByC,OAAO,CAAC0sB,WAAW,CAACnvB,IAAI,CAACA,IAAI,CAAC;MAC/B,CAAC,MAAM;QACN0C,IAAI,CAACysB,WAAW,CAAC;MAClB;IACD,CAAC,CAAC;EACH,CAAC,CAAC;AACH;AAEA,SAASC,MAAM,CAACrnB,GAAG,EAAExH,QAAQ,EAAE;EAC9B,IAAI8uB,MAAM,GAAGC,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;IAC5CvyB,EAAE,GAAGuD,QAAQ,IAAI,YAAW,CAAC,CAAC;EAC/B8uB,MAAM,CAACjd,IAAI,GAAG,iBAAiB;EAC/B;EACA,IAAIid,MAAM,CAACG,UAAU,EAAE;IACtBH,MAAM,CAACI,kBAAkB,GAAG,YAAW;MACtC,IAAIJ,MAAM,CAACG,UAAU,IAAI,QAAQ,IAAIH,MAAM,CAACG,UAAU,IAAI,UAAU,EAAE;QACrEH,MAAM,CAACI,kBAAkB,GAAG,IAAI;QAChCzyB,EAAE,EAAE;MACL;IACD,CAAC;EACF,CAAC,MAAM;IACN;IACAqyB,MAAM,CAACK,MAAM,GAAG,YAAW;MAC1B1yB,EAAE,EAAE;IACL,CAAC;EACF;EACAqyB,MAAM,CAACM,GAAG,GAAG5nB,GAAG;EAChBunB,QAAQ,CAACM,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAACC,WAAW,CAACR,MAAM,CAAC;AAC7D;AAEA,SAASS,UAAU,CAACne,CAAC,EAAE;EACtB,IAAI4T,CAAC,GAAG5T,CAAC,CAACoe,WAAW,EAAE;IACtBpK,CAAC,GAAGhU,CAAC,CAACqe,QAAQ,EAAE,GAAG,CAAC;IACpB7K,CAAC,GAAGxT,CAAC,CAACse,OAAO,EAAE;IACfzK,CAAC,GAAG7T,CAAC,CAACue,QAAQ,EAAE;IAChB11B,CAAC,GAAGmX,CAAC,CAACwe,UAAU,EAAE;IAClBC,CAAC,GAAGze,CAAC,CAAC0e,UAAU,EAAE;EACnB,OAAO,CAAC9K,CAAC,EAAEI,CAAC,EAAER,CAAC,CAAC,CAACrqB,GAAG,CAACiK,CAAC,CAAC,CAAChM,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAACysB,CAAC,EAAEhrB,CAAC,EAAE41B,CAAC,CAAC,CAACt1B,GAAG,CAACiK,CAAC,CAAC,CAAChM,IAAI,CAAC,GAAG,CAAC;AACrE;AAEA,SAASu3B,WAAW,GAAG;EACtB,OAAO,IAAIjwB,OAAO,CAAC,UAAAoC,OAAO,EAAI;IAC7B,IAAI8tB,OAAO,GAAGnM,GAAG,CAAC/oB,cAAc,CAAC,SAAS,CAAC;IAC3C;IACA2L,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;MAC1BC,CAAC,EAAE;IACJ,CAAC,CAAC,CACDhvB,IAAI,CAAC,UAAAtB,GAAG,EAAI;MACZ,IAAI4xB,QAAQ,GAAG5xB,GAAG,CAACoB,IAAI,CAACA,IAAI;MAC5BuwB,OAAO,CAAC,cAAc,CAAC,GAAGC,QAAQ;MAClCpM,GAAG,CAACwI,cAAc,CAAC,SAAS,EAAE2D,OAAO,CAAC;IACvC,CAAC,CAAC;EACJ,CAAC,CAAC;AACH;AAEA,SAASE,SAAS,CAAC3e,KAAK,EAAE;EACzB,IAAI9R,IAAI,GAAG;IACVnG,GAAG,EAAE+B,IAAI,CAAC+d,SAAS,CAAC7H,KAAK;EAC1B,CAAC;EACDmd,OAAO,CAAC;IACPC,CAAC,EAAE,kBAAkB;IACrBlvB,IAAI,EAAEA;EACP,CAAC,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,SAASivB,OAAO,CAACnd,KAAK,EAA+C;EAAA,IAA7CvM,OAAO,uEAAG,MAAM;EAAA,IAAEmrB,iBAAiB,uEAAG,KAAK;EAClE,OAAO,IAAIrwB,OAAO,CAAC,UAACswB,aAAa,EAAK;IACrC,IAAI,CAAC7e,KAAK,EAAE;MACX;IACD;IACA,IAAInW,QAAQ,GAAGyoB,GAAG,CAAC/oB,cAAc,CAAC,UAAU,CAAC;IAC7C,IAAI,OAAOyW,KAAK,CAAC,QAAQ,CAAC,IAAI,WAAW,IAAI,CAACA,KAAK,CAAC,QAAQ,CAAC,EAAE;MAC9DA,KAAK,CAAC,QAAQ,CAAC,GAAGnW,QAAQ,CAACi1B,MAAM;IAClC;IACA9e,KAAK,CAAC,QAAQ,CAAC,GAAGnW,QAAQ,CAACmjB,EAAE;IAC7B,IAAI+R,OAAO,GAAG7pB,MAAM,EAAE,CAAC2Z,UAAU,CAACgO,QAAQ,CAAC,SAAS,CAAC;IACrD,IAAIkC,OAAO,CAACpC,GAAG,EAAE;MAChB3c,KAAK,CAAC,KAAK,CAAC,GAAG+e,OAAO,CAACpC,GAAG;IAC3B;IACArK,GAAG,CAAC6K,OAAO,CAAC;MACXrvB,MAAM,EAAE2F,OAAO,GAAGA,OAAO,GAAG,MAAM;MAClCwC,GAAG,EAAE,UAAU,GAAGumB,MAAM,CAACwC,YAAY,GAAGxC,MAAM,CAACyC,OAAO,GAAGjf,KAAK,CAAC,GAAG,CAAC;MACnE9R,IAAI,EAAE8R,KAAK;MACXkf,OAAO,EAAEhqB,MAAM,EAAE,CAAC2Z,UAAU,CAAC2N,MAAM,CAAC0C,OAAO;MAC3CvuB,OAAO,EAAE,iBAAS7D,GAAG,EAAE;QACtB,IAAIA,GAAG,IAAIA,GAAG,CAACoB,IAAI,IAAIpB,GAAG,CAACoB,IAAI,CAACsd,GAAG,IAAI1e,GAAG,CAACoB,IAAI,CAACsd,GAAG,IAAI,GAAG,EAAE;UAC3DqT,aAAa,CAAC/xB,GAAG,CAAC;QACnB,CAAC,MAAM;UACN+xB,aAAa,CAAC,KAAK,CAAC;UACpBM,OAAO,CAACnf,KAAK,EAAElT,GAAG,CAAC;QACpB;MACD,CAAC;MACD8D,IAAI,EAAE,cAAS5G,KAAK,EAAE;QACrB60B,aAAa,CAAC,KAAK,CAAC;QACpBM,OAAO,CAACnf,KAAK,EAAEhW,KAAK,CAAC;MACtB,CAAC;MACD6G,QAAQ,EAAE,oBAAW;QACpB,IAAI+tB,iBAAiB,EAAE;UACtBtM,GAAG,CAAC8M,WAAW,EAAE;QAClB;MACD;IACD,CAAC,CAAC;EACH,CAAC,CAAC;EAEF,SAASD,OAAO,CAACnf,KAAK,EAAEhW,KAAK,EAAE;IAC9B,IAAIkE,IAAI,GAAG,CAAC,CAAC;IACbA,IAAI,CAAC,OAAO,CAAC,GAAG8R,KAAK;IACrB9R,IAAI,CAAC,OAAO,CAAC,GAAGlE,KAAK;IACrB20B,SAAS,CAACzwB,IAAI,CAAC;IACf,IAAIwQ,MAAM,GAAG,eAAe;IAC5B,IAAI1U,KAAK,CAACkE,IAAI,CAACmuB,GAAG,EAAE;MACnB3d,MAAM,GAAG1U,KAAK,CAACkE,IAAI,CAACmuB,GAAG;IACxB;IACA/J,GAAG,CAACqI,SAAS,CAAC;MACbre,KAAK,EAAE,IAAI;MACXse,OAAO,EAAElc,MAAM;MACf2gB,WAAW,EAAE,IAAI;MACjB1uB,OAAO,EAAE,iBAAS7D,GAAG,EAAE;QACtB,IAAIA,GAAG,CAACwyB,OAAO,EAAE;UAChBnC,OAAO,CAACnd,KAAK,EAAEvM,OAAO,CAAC;QACxB;MACD;IACD,CAAC,CAAC;EACH;AACD;AAEA,SAASmE,UAAU,CAAC2nB,OAAO,EAAEv4B,GAAG,EAAEuJ,KAAK,EAAE;EACxC,OAAO,IAAIhC,OAAO,CAAC,UAASoC,QAAO,EAAE;IACpC,IAAI6uB,GAAG,GAAGlN,GAAG,CAAC/oB,cAAc,CAACg2B,OAAO,CAAC;IACrC,IAAI,OAAOC,GAAI,IAAI,WAAW,IAAIA,GAAG,KAAK,EAAE,EAAE;MAC7CA,GAAG,GAAG,CAAC,CAAC;IACT;IACAA,GAAG,CAACx4B,GAAG,CAAC,GAAGuJ,KAAK;IAChB+hB,GAAG,CAAC1a,UAAU,CAAC;MACd5Q,GAAG,EAAEu4B,OAAO;MACZrxB,IAAI,EAAEsxB,GAAG;MACT7uB,OAAO,EAAE,mBAAW;QACnBA,QAAO,CAAC,IAAI,CAAC;MACd;IACD,CAAC,CAAC;EACH,CAAC,CAAC;AACH;;AAEA;AACA,SAAS8uB,gBAAgB,CAACC,QAAQ,EAAEzpB,GAAG,EAAE;EACxC,IAAIwb,KAAK,GAAG,EAAE;EACd,IAAIxb,GAAG,EAAE;IACRwb,KAAK,GAAGxb,GAAG;EACZ,CAAC,MAAM;IACNwb,KAAK,GAAGkO,MAAM,CAACC,QAAQ,CAACC,IAAI,CAAC92B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC3C;EACA,IAAI,CAAC0oB,KAAK,EAAE;IACX,OAAO,KAAK;EACb;EACA,IAAIqO,IAAI,GAAGrO,KAAK,CAAC1oB,KAAK,CAAC,GAAG,CAAC;EAC3B,KAAK,IAAIL,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGo3B,IAAI,CAACz3B,MAAM,EAAEK,CAAC,EAAE,EAAE;IACrC,IAAIq3B,IAAI,GAAGD,IAAI,CAACp3B,CAAC,CAAC,CAACK,KAAK,CAAC,GAAG,CAAC;IAC7B,IAAIg3B,IAAI,CAAC,CAAC,CAAC,IAAIL,QAAQ,EAAE;MACxB,OAAOK,IAAI,CAAC,CAAC,CAAC;IACf;EACD;EACA,OAAQ,KAAK;AACd;;AAEA;AACA;AACA;AACA;AACA,SAASC,WAAW,GAAiD;EAAA,IAAhDC,WAAW,uEAAG,KAAK;EAAA,IAAErB,iBAAiB,uEAAG,KAAK;EAClE,OAAO,IAAIrwB,OAAO,CAAC,UAASoC,SAAO,EAAE;IAEpC;IACA,IAAIrH,EAAE,CAAClC,oBAAoB,EAAE,CAACE,KAAK,IAAI,IAAI,EAAE;MAC5CqJ,SAAO,CAAC;QACP3G,KAAK,EAAE,CAAC;QACR80B,MAAM,EAAE,8BAA8B;QACtCoB,OAAO,EAAE;MACV,CAAC,CAAC;MACF;IACD;IAEA,IAAIr2B,QAAQ,GAAGyoB,GAAG,CAAC/oB,cAAc,CAAC,UAAU,CAAC;IAC7C,IAAI,CAAC02B,WAAW,IAAIp2B,QAAQ,IAAI,OAAOA,QAAQ,CAACi1B,MAAO,IAAI,WAAW,IAAIj1B,QAAQ,CAACi1B,MAAM,EAAE;MAC1FnuB,SAAO,CAAC9G,QAAQ,CAAC;MACjB;MACAqL,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;QAC3BC,CAAC,EAAE,0BAA0B;QAC7B+C,OAAO,EAAEjrB,MAAM,EAAE,CAAC2Z,UAAU,CAACgO,QAAQ,CAAC,SAAS,CAAC,GAAG3nB,MAAM,EAAE,CAAC2Z,UAAU,CACpEgO,QAAQ,CAAC,SAAS,CAAC,CACnBF,GAAG,GAAG,EAAE;QACVmC,MAAM,EAAEj1B,QAAQ,CAACi1B;MAClB,CAAC,EAAE,IAAI,EAAEF,iBAAiB,CAAC,CAACxwB,IAAI,CAAC,UAAAgyB,KAAK,EAAI;QACzC,IAAIA,KAAK,CAAClyB,IAAI,CAACA,IAAI,IAAIkyB,KAAK,CAAClyB,IAAI,CAACA,IAAI,CAAC4wB,MAAM,EAAE;UAC9CxM,GAAG,CAAC1a,UAAU,CAAC;YACd5Q,GAAG,EAAE,UAAU;YACfkH,IAAI,EAAEkyB,KAAK,CAAClyB,IAAI,CAACA,IAAI;YACrByC,OAAO,qBAAG;cACT0vB,mBAAmB,EAAE;cACrB1vB,SAAO,CAACyvB,KAAK,CAAClyB,IAAI,CAACA,IAAI,CAAC;cACxBoyB,UAAU,EAAE;cACZ;YACD;UACD,CAAC,CAAC;QACH,CAAC,MAAM;UACNC,oBAAoB,EAAE;QACvB;MACD,CAAC,CAAC;IACH,CAAC,MAAM;MACNA,oBAAoB,EAAE;IACvB;IAEA,SAASA,oBAAoB,GAAG;MAC/BjO,GAAG,CAACkO,WAAW,CAAC;QACflkB,KAAK,EAAE;MACR,CAAC,CAAC;MAEFgW,GAAG,CAAC8N,KAAK,CAAC;QACTzvB,OAAO,EAAE,iBAASyvB,KAAK,EAAE;UACxB9N,GAAG,CAAC8M,WAAW,EAAE;UAEjBlqB,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;YAC3BC,CAAC,EAAE,6BAA6B;YAChC9rB,QAAQ,EAAE,WAAW;YACrB6uB,OAAO,EAAEjrB,MAAM,EAAE,CAAC2Z,UAAU,CAACgO,QAAQ,CAAC,SAAS,CAAC,GAAG3nB,MAAM,EAAE,CACzD2Z,UAAU,CACVgO,QAAQ,CAAC,SAAS,CAAC,CACnBF,GAAG,GAAG,EAAE;YACVP,IAAI,EAAEgE,KAAK,CAAChE;UACb,CAAC,CAAC,CAAChuB,IAAI,CAAC,UAAAgyB,KAAK,EAAI;YAChB,IAAIA,KAAK,CAAClyB,IAAI,CAACA,IAAI,IAAIkyB,KAAK,CAAClyB,IAAI,CAACA,IAAI,CAAC4wB,MAAM,EAAE;cAC9CxM,GAAG,CAAC1a,UAAU,CAAC;gBACd5Q,GAAG,EAAE,UAAU;gBACfkH,IAAI,EAAEkyB,KAAK,CAAClyB,IAAI,CAACA,IAAI;gBACrByC,OAAO,qBAAG;kBACT0vB,mBAAmB,EAAE;kBACrB1vB,SAAO,CAACyvB,KAAK,CAAClyB,IAAI,CAACA,IAAI,CAAC;kBACxB;gBACD;cACD,CAAC,CAAC;YACH;UACD,CAAC,CAAC;QA2BH;MACD,CAAC,CAAC;IA8BH;IAEA,SAASmyB,mBAAmB,GAAG;MAC9BnE,UAAU,CAAC,YAAW;QACrBO,cAAc,EAAE;MACjB,CAAC,EAAE,GAAG,CAAC;IACR;EACD,CAAC,CAAC;AACH;;AAEA;AACA,SAAS6D,UAAU,GAAG;EACrB,IAAIG,YAAY,GAAGnO,GAAG,CAAC/oB,cAAc,CAAC,UAAU,CAAC;;EAEjD;EACA,IAAI,OAAOk3B,YAAY,CAACC,OAAO,IAAI,WAAW,IAAI,CAACD,YAAY,CAACC,OAAO,EAAE;IACxEpO,GAAG,CAAC8N,KAAK,CAAC;MACTzvB,OAAO,EAAE,iBAASyvB,KAAK,EAAE;QACxBlrB,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;UAC3BC,CAAC,EAAE,2BAA2B;UAC9BhB,IAAI,EAAEgE,KAAK,CAAChE;QACb,CAAC,CAAC,CAAChuB,IAAI,CAAC,UAAAtB,GAAG,EAAI;UACd,IAAIA,GAAG,CAACoB,IAAI,CAACA,IAAI,IAAIpB,GAAG,CAACoB,IAAI,CAACA,IAAI,CAACwyB,OAAO,EAAE;YAC3CD,YAAY,GAAGnO,GAAG,CAAC/oB,cAAc,CAAC,UAAU,CAAC;YAC7Ck3B,YAAY,CAAC,SAAS,CAAC,GAAG3zB,GAAG,CAACoB,IAAI,CAACA,IAAI,CAACwyB,OAAO;YAC/CpO,GAAG,CAACwI,cAAc,CAAC,UAAU,EAAE2F,YAAY,CAAC;UAC7C;QACD,CAAC,CAAC;MACH;IACD,CAAC,CAAC;EACH;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASE,UAAU,CAACC,GAAG,EAAa;EAAA,IAAXC,KAAK,uEAAG,CAAC;EACjC,IAAID,GAAG,GAAG,CAAC,EAAE;IACZ,OAAOE,UAAU,CAACF,GAAG,CAAC,CAACG,OAAO,CAAC,CAAC,CAAC;EAClC;EACA,IAAIC,MAAM,GAAGhqB,QAAQ,CAAC4pB,GAAG,CAAC;EAC1BI,MAAM,GAAGA,MAAM,GAAG,EAAE;EACpB;EACA,IAAIA,MAAM,CAAC34B,MAAM,GAAG,CAAC,EAAE;IACtB,OAAO24B,MAAM;EACd;EACA;EAAA,KACK,IAAIA,MAAM,CAAC34B,MAAM,GAAG,CAAC,EAAE;IAC3B,IAAI44B,OAAO,GAAGD,MAAM,CAACE,SAAS,CAACF,MAAM,CAAC34B,MAAM,GAAG,CAAC,EAAE24B,MAAM,CAAC34B,MAAM,GAAG,CAAC,GAAGw4B,KAAK,CAAC;IAC5E,OAAOC,UAAU,CAAC9pB,QAAQ,CAAC4pB,GAAG,GAAG,SAAS,CAAC,GAAG,GAAG,GAAGK,OAAO,CAAC,GAAG,GAAG;EACnE;EACA;EAAA,KACK,IAAID,MAAM,CAAC34B,MAAM,GAAG,CAAC,EAAE;IAC3B,IAAI44B,QAAO,GAAGD,MAAM,CAACE,SAAS,CAACF,MAAM,CAAC34B,MAAM,GAAG,CAAC,EAAE24B,MAAM,CAAC34B,MAAM,GAAG,CAAC,GAAGw4B,KAAK,CAAC;IAC5E,OAAOC,UAAU,CAAC9pB,QAAQ,CAAC4pB,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,GAAGK,QAAO,CAAC,GAAG,GAAG;EAC/D;AACD;AACA;AACA,SAASE,aAAa,GAAG;EACxB,OAAO,IAAI5yB,OAAO,CAAC,UAASoC,OAAO,EAAE;IACpC,IAAIywB,gBAAgB,GAAG,EAAE;IAQzBA,gBAAgB,GAAG,WAAW;IAc9BxpB,UAAU,CAAC,SAAS,EAAE,kBAAkB,EAAEwpB,gBAAgB,CAAC,CAAChzB,IAAI,CAAC,UAAAizB,GAAG,EAAI;MACvE1wB,OAAO,CAACywB,gBAAgB,CAAC;IAC1B,CAAC,CAAC;EACH,CAAC,CAAC;AACH;;AAGA;AACA,SAASE,cAAc,CAAC3E,GAAG,EAAE;EAC5B7e,OAAO,CAACyjB,GAAG,CAAC5E,GAAG,CAAC;EAChB;EACA,IAAIA,GAAG,EAAE;IACR;IACAznB,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;MAC3BC,CAAC,EAAE,4BAA4B;MAC/BT,GAAG,EAAEA,GAAG;MACRzC,MAAM,EAAE5H,GAAG,CAAC/oB,cAAc,CAAC,UAAU,CAAC,CAACyjB;IACxC,CAAC,CAAC,CAAC5e,IAAI,CAAC,UAAAtB,GAAG,EAAI;MACdgR,OAAO,CAACyjB,GAAG,CAAC,SAAS,EAAEz0B,GAAG,CAAC;IAC5B,CAAC,CAAC;EACH;AACD;;AAGA;AACA,SAAS00B,WAAW,CAACZ,GAAG,EAAE;EACzB,IAAIA,GAAG,IAAI,CAAC,EAAE;IACb,OAAO,CAAC;EACT;EACA,IAAIA,GAAG,GAAG,CAAC,EAAE;IACZ,OAAOhvB,MAAM,YAAK4vB,WAAW,CAAC3vB,IAAI,CAAC4vB,GAAG,CAACb,GAAG,CAAC,CAAC,EAAG;EAChD;EACA,IAAI,CAAE,cAAc,CAAC14B,IAAI,CAAC04B,GAAG,CAAE,EAAE;IAAE;IAClC,OAAOhvB,MAAM,CAACgvB,GAAG,CAACz3B,QAAQ,EAAE,CAACwb,KAAK,CAAC,oBAAoB,CAAC,CAAC;EAC1D;EACA,OAAOic,GAAG;AACX;;AAEA;AACA,SAASc,UAAU,CAACd,GAAG,EAAEe,GAAG,EAAE;EAC7B,IAAIf,GAAG,IAAI,CAAC,EAAE;IACb,OAAO,CAAC;EACT;EACA;EACA,IAAIr4B,MAAM,GAAG,GAAG;EAChB,IAAIqJ,MAAM,CAACgvB,GAAG,CAAC,IAAIe,GAAG,GAAG,CAAC,EAAE;IAAE;IAC7BA,GAAG,GAAG,CAACA,GAAG,IAAI,CAAC;IACff,GAAG,GAAGA,GAAG,GAAG,EAAE;IACd,IAAI,GAAG,CAAC14B,IAAI,CAAC04B,GAAG,CAAC,EAAE;MAAE;MACpBr4B,MAAM,GAAGq4B,GAAG;IACb,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC14B,IAAI,CAAC04B,GAAG,CAAC,EAAE;MAAE;MAC7Br4B,MAAM,GAAGq4B,GAAG,cAAO5zB,KAAK,CAAC20B,GAAG,GAAG,CAAC,CAAC,CAAC16B,IAAI,CAAC,GAAG,CAAC,CAAE;IAC9C,CAAC,MAAM;MAAE;MACR25B,GAAG,GAAGA,GAAG,aAAM5zB,KAAK,CAAC20B,GAAG,GAAG,CAAC,CAAC,CAAC16B,IAAI,CAAC,GAAG,CAAC,CAAE;MACzC,IAAI26B,GAAG,GAAG,IAAIC,MAAM,0BAAmBF,GAAG,OAAI;MAC9C,IAAIG,QAAQ,GAAGF,GAAG,CAACG,IAAI,CAACnB,GAAG,CAAC,CAAC,CAAC,CAAC;MAC/B,IAAI,CAACkB,QAAQ,IAAI,CAAClB,GAAG,EAAE;QACtBr4B,MAAM,GAAGu5B,QAAQ;MAClB,CAAC,MAAM;QACN,IAAIE,WAAW,GAAG,CAACF,QAAQ,GAAG,aAAM90B,KAAK,CAAC20B,GAAG,CAAC,CAAC16B,IAAI,CAAC,GAAG,CAAC,MAAG;QAC3D,IAAI45B,KAAK,GAAG,IAAI,CAAC34B,IAAI,CAAC85B,WAAW,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG;QAClD,IAAIC,SAAS,GAAGD,WAAW,GAAGnB,KAAK,aAAM7zB,KAAK,CAAC20B,GAAG,GAAG,CAAC,CAAC,CAAC16B,IAAI,CAAC,GAAG,CAAC,CAAE;QACnEsB,MAAM,GAAGq5B,GAAG,CAACG,IAAI,CAACE,SAAS,CAAC,CAAC,CAAC,CAAC;MAChC;IACD;EACD;EACA,OAAO15B,MAAM;AACd;AAEA,SAAS25B,GAAG,CAAC5hB,IAAI,EAAE6hB,OAAO,EAAE;EAC3B,IAAI,CAACA,OAAO,IAAI,CAAC7hB,IAAI,EAAE;IACtB;EACD;EACAgS,GAAG,CAAC+I,SAAS,CAAC;IACbG,QAAQ,EAAE,IAAI,GAAG,EAAE;IACnBlf,KAAK,EAAE,KAAK;IACZgf,IAAI,EAAE;EACP,CAAC,CAAC;EACF,OAAO,IAAI/sB,OAAO,CAAC,UAAAoC,OAAO,EAAI;IAC7BwsB,OAAO,CAAC;MACPC,CAAC,EAAE,sBAAsB;MACzB+E,OAAO,EAAEA,OAAO;MAChB7hB,IAAI,EAAEA;IACP,CAAC,CAAC,CAAClS,IAAI,CAAC,UAAAtB,GAAG,EAAI;MACdwlB,GAAG,CAACuJ,SAAS,EAAE;MACflrB,OAAO,CAAC7D,GAAG,CAAC;IACb,CAAC,CAAC;EACH,CAAC,CAAC;AACH;;AAEA;AACA,SAASs1B,aAAa,GAAG;EASxB,OAAO,OAAO;AACf;AAEA,SAASC,gBAAgB,CAAC1V,IAAI,EAAE;EAC5B,IAAIA,IAAI,CAACnlB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAImlB,IAAI,CAACnlB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAImlB,IAAI,CAACnlB,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAImlB,IAAI,CAACnlB,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;IAClI,OAAOmlB,IAAI;EACf;EACA,IAAIA,IAAI,CAACnlB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;IAC/B,OAAOmlB,IAAI;EACf;EACA,IAAIA,IAAI,CAACnlB,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE;IAC5C,OAAOmlB,IAAI;EACf;EACA,IAAIA,IAAI,CAACnlB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;IACzB,IAAI86B,aAAa,GAAGC,IAAI,CAACC,EAAE,CAACC,yBAAyB,CAAC9V,IAAI,CAAC;IAC3D,IAAI2V,aAAa,KAAK3V,IAAI,EAAE;MACxB,OAAO2V,aAAa;IACxB,CAAC,MAAM;MACH3V,IAAI,GAAGA,IAAI,CAAClC,MAAM,CAAC,CAAC,CAAC;IACzB;EACJ;EACA,OAAO,OAAO,GAAGkC,IAAI;AACzB;AACA;AACA,SAAS+V,YAAY,CAAC/V,IAAI,EAAE;EACxB,OAAO,IAAIpe,OAAO,CAAC,UAASC,OAAO,EAAEgB,MAAM,EAAE;IACzC,IAAI,QAAOmwB,MAAM,yCAANA,MAAM,OAAK,QAAQ,IAAI,UAAU,IAAIA,MAAM,EAAE;MACpD,IAAI,OAAOgD,UAAU,KAAK,UAAU,EAAE;QAClC,IAAIC,GAAG,GAAG,IAAIC,cAAc,EAAE;QAC9BD,GAAG,CAACE,IAAI,CAAC,KAAK,EAAEnW,IAAI,EAAE,IAAI,CAAC;QAC3BiW,GAAG,CAACG,YAAY,GAAG,MAAM;QACzBH,GAAG,CAAChF,MAAM,GAAG,YAAW;UACpB,IAAI,IAAI,CAACoF,MAAM,KAAK,GAAG,EAAE;YACrB,IAAIC,UAAU,GAAG,IAAIN,UAAU,EAAE;YACjCM,UAAU,CAACrF,MAAM,GAAG,UAAS/d,CAAC,EAAE;cAC5BrR,OAAO,CAACqR,CAAC,CAAC/Y,MAAM,CAACyB,MAAM,CAAC;YAC5B,CAAC;YACD06B,UAAU,CAACC,OAAO,GAAG1zB,MAAM;YAC3ByzB,UAAU,CAACE,aAAa,CAAC,IAAI,CAACC,QAAQ,CAAC;UAC3C;QACJ,CAAC;QACDR,GAAG,CAACM,OAAO,GAAG1zB,MAAM;QACpBozB,GAAG,CAACS,IAAI,EAAE;QACV;MACJ;MACA,IAAIC,MAAM,GAAG9F,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;MAC7C,IAAI8F,GAAG,GAAGD,MAAM,CAACE,UAAU,CAAC,IAAI,CAAC;MACjC,IAAIC,GAAG,GAAG,IAAIC,KAAK;MACnBD,GAAG,CAAC7F,MAAM,GAAG,YAAW;QACpB0F,MAAM,CAACK,KAAK,GAAGF,GAAG,CAACE,KAAK;QACxBL,MAAM,CAACM,MAAM,GAAGH,GAAG,CAACG,MAAM;QAC1BL,GAAG,CAACM,SAAS,CAACJ,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACxBj1B,OAAO,CAAC80B,MAAM,CAACQ,SAAS,EAAE,CAAC;QAC3BR,MAAM,CAACM,MAAM,GAAGN,MAAM,CAACK,KAAK,GAAG,CAAC;MACpC,CAAC;MACDF,GAAG,CAACP,OAAO,GAAG1zB,MAAM;MACpBi0B,GAAG,CAAC5F,GAAG,GAAGlR,IAAI;MACd;IACJ;IACA,IAAI,QAAO4V,IAAI,yCAAJA,IAAI,OAAK,QAAQ,EAAE;MAC1BA,IAAI,CAACC,EAAE,CAACuB,yBAAyB,CAAC1B,gBAAgB,CAAC1V,IAAI,CAAC,EAAE,UAASqX,KAAK,EAAE;QACtEA,KAAK,CAAC7a,IAAI,CAAC,UAASA,IAAI,EAAE;UACtB,IAAI8Z,UAAU,GAAG,IAAIV,IAAI,CAACC,EAAE,CAACG,UAAU,EAAE;UACzCM,UAAU,CAACrF,MAAM,GAAG,UAAS1vB,IAAI,EAAE;YAC/BM,OAAO,CAACN,IAAI,CAACpH,MAAM,CAACyB,MAAM,CAAC;UAC/B,CAAC;UACD06B,UAAU,CAACC,OAAO,GAAG,UAASl5B,KAAK,EAAE;YACjCwF,MAAM,CAACxF,KAAK,CAAC;UACjB,CAAC;UACDi5B,UAAU,CAACE,aAAa,CAACha,IAAI,CAAC;QAClC,CAAC,EAAE,UAASnf,KAAK,EAAE;UACfwF,MAAM,CAACxF,KAAK,CAAC;QACjB,CAAC,CAAC;MACN,CAAC,EAAE,UAASA,KAAK,EAAE;QACfwF,MAAM,CAACxF,KAAK,CAAC;MACjB,CAAC,CAAC;MACF;IACJ;IACA,IAAI,QAAOV,EAAE,yCAAFA,EAAE,OAAK,QAAQ,IAAIA,EAAE,CAACslB,OAAO,CAAC,sBAAsB,CAAC,EAAE;MAC9DtlB,EAAE,CAAC26B,oBAAoB,EAAE,CAACC,QAAQ,CAAC;QAC/BnI,QAAQ,EAAEpP,IAAI;QACdwX,QAAQ,EAAE,QAAQ;QAClBxzB,OAAO,EAAE,iBAAS7D,GAAG,EAAE;UACnB0B,OAAO,CAAC,wBAAwB,GAAG1B,GAAG,CAACoB,IAAI,CAAC;QAChD,CAAC;QACD0C,IAAI,EAAE,cAAS5G,KAAK,EAAE;UAClBwF,MAAM,CAACxF,KAAK,CAAC;QACjB;MACJ,CAAC,CAAC;MACF;IACJ;IACAwF,MAAM,CAAC,IAAIrH,KAAK,CAAC,aAAa,CAAC,CAAC;EACpC,CAAC,CAAC;AACN;AACA;AACA,SAASi8B,YAAY,CAACC,MAAM,EAAEC,OAAO,EAAE;EACnC,OAAO,IAAI/1B,OAAO,CAAC,UAASC,OAAO,EAAEgB,MAAM,EAAE;IACzC,IAAI,QAAOmwB,MAAM,yCAANA,MAAM,OAAK,QAAQ,IAAI,UAAU,IAAIA,MAAM,EAAE;MACpD0E,MAAM,GAAGA,MAAM,CAACt7B,KAAK,CAAC,GAAG,CAAC;MAC1B,IAAIuX,IAAI,GAAG+jB,MAAM,CAAC,CAAC,CAAC,CAAC1f,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;MACxC,IAAI5c,GAAG,GAAGD,IAAI,CAACu8B,MAAM,CAAC,CAAC,CAAC,CAAC;MACzB,IAAI5Q,CAAC,GAAG1rB,GAAG,CAACM,MAAM;MAClB,IAAIk8B,KAAK,GAAG,IAAIC,UAAU,CAAC/Q,CAAC,CAAC;MAC7B,OAAOA,CAAC,EAAE,EAAE;QACR8Q,KAAK,CAAC9Q,CAAC,CAAC,GAAG1rB,GAAG,CAACmB,UAAU,CAACuqB,CAAC,CAAC;MAChC;MACA,OAAOjlB,OAAO,CAAC,CAACmxB,MAAM,CAAC8E,GAAG,IAAI9E,MAAM,CAAC+E,SAAS,EAAEC,eAAe,CAAC,IAAIC,IAAI,CAAC,CAACL,KAAK,CAAC,EAAE;QAAEjkB,IAAI,EAAEA;MAAK,CAAC,CAAC,CAAC,CAAC;IACvG;IACN,IAAIukB,QAAQ;IACZ,IAAI,CAACP,OAAO,EAAE;MACbA,OAAO,GAAGD,MAAM,CAAC1f,KAAK,CAAC,mBAAmB,CAAC;MAC3C,IAAI2f,OAAO,EAAE;QACTA,OAAO,GAAGA,OAAO,CAAC,CAAC,CAAC;MACxB,CAAC,MAAM;QACH90B,MAAM,CAAC,IAAIrH,KAAK,CAAC,cAAc,CAAC,CAAC;MACrC;MACA08B,QAAQ,GAAGj6B,IAAI,CAACC,GAAG,EAAE,GAAG,GAAG,GAAGy5B,OAAO;IACtC,CAAC,MAAM;MACNO,QAAQ,GAAGj6B,IAAI,CAACC,GAAG,EAAE,GAAGy5B,OAAO;IAChC;IACM,IAAI,QAAO/B,IAAI,yCAAJA,IAAI,OAAK,QAAQ,EAAE;MAC1B,IAAIj6B,MAAM,GAAG,IAAIi6B,IAAI,CAACuC,SAAS,CAACC,MAAM,CAAC,QAAQ,GAAGn6B,IAAI,CAACC,GAAG,EAAE,CAAC;MAC7DvC,MAAM,CAAC08B,cAAc,CAACX,MAAM,EAAE,YAAW;QACrC,IAAItI,QAAQ,GAAG,mBAAmB,GAAG8I,QAAQ;QAC7Cv8B,MAAM,CAAC28B,IAAI,CAAClJ,QAAQ,EAAE,CAAC,CAAC,EAAE,YAAW;UACjCzzB,MAAM,CAAC48B,KAAK,EAAE;UACd12B,OAAO,CAACutB,QAAQ,CAAC;QACrB,CAAC,EAAE,UAAS/xB,KAAK,EAAE;UACf1B,MAAM,CAAC48B,KAAK,EAAE;UACd11B,MAAM,CAACxF,KAAK,CAAC;QACjB,CAAC,CAAC;MACN,CAAC,EAAE,UAASA,KAAK,EAAE;QACf1B,MAAM,CAAC48B,KAAK,EAAE;QACd11B,MAAM,CAACxF,KAAK,CAAC;MACjB,CAAC,CAAC;MACF;IACJ;IACA,IAAI,QAAOV,EAAE,yCAAFA,EAAE,OAAK,QAAQ,IAAIA,EAAE,CAACslB,OAAO,CAAC,sBAAsB,CAAC,EAAE;MAC9D,IAAImN,QAAQ,GAAGzyB,EAAE,CAAC4S,GAAG,CAACipB,cAAc,GAAG,GAAG,GAAGN,QAAQ;MACrDv7B,EAAE,CAAC26B,oBAAoB,EAAE,CAACmB,SAAS,CAAC;QAChCrJ,QAAQ,EAAEA,QAAQ;QAClB7tB,IAAI,EAAEm2B,MAAM,CAACp8B,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;QAClDk8B,QAAQ,EAAE,QAAQ;QAClBxzB,OAAO,EAAE,mBAAW;UAChBnC,OAAO,CAACutB,QAAQ,CAAC;QACrB,CAAC;QACDnrB,IAAI,EAAE,cAAS5G,KAAK,EAAE;UAClBwF,MAAM,CAACxF,KAAK,CAAC;QACjB;MACJ,CAAC,CAAC;MACF;IACJ;IACAwF,MAAM,CAAC,IAAIrH,KAAK,CAAC,aAAa,CAAC,CAAC;EACpC,CAAC,CAAC;AACN;AAEAwqB,MAAM,CAACC,OAAO,GAAG;EAChBwP,aAAa,EAACA,aAAa;EAC3B3F,cAAc,EAAEA,cAAc;EAC9BO,UAAU,EAAEA,UAAU;EACtB;EACAqI,YAAY,EAAE,sBAASnI,MAAM,EAAE;IAC9B;IACA,IAAI,CAACA,MAAM,EAAE;MACZ;IACD;IACA5K,GAAG,CAACkO,WAAW,CAAC;MACflkB,KAAK,EAAE;IACR,CAAC,CAAC;IACFpH,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;MAC3BC,CAAC,EAAE,2BAA2B;MAC9BF,MAAM,EAAEA;IACT,CAAC,CAAC,CAAC9uB,IAAI,CAAC,UAAAivB,WAAW,EAAI;MACtB/K,GAAG,CAAC8M,WAAW,EAAE;MACjB;MACA,IAAI/B,WAAW,CAACnvB,IAAI,CAACA,IAAI,EAAE;QAC1BokB,GAAG,CAACqI,SAAS,CAAC;UACbre,KAAK,EAAE,IAAI;UACXse,OAAO,EAAE,sBAAsB;UAC/BC,UAAU,EAAE,KAAK;UACjBlqB,OAAO,EAAE,iBAAS7D,GAAG,EAAE;YACtB,IAAIA,GAAG,CAACwyB,OAAO,EAAE;cAChBhN,GAAG,CAACgT,YAAY,CAAC;gBAChB3uB,KAAK,EAAE;cACR,CAAC,CAAC;YACH;UACD;QACD,CAAC,CAAC;MACH,CAAC,MAAM;QACN2b,GAAG,CAACqI,SAAS,CAAC;UACbre,KAAK,EAAE,IAAI;UACXse,OAAO,EAAE;QACV,CAAC,CAAC;MACH;IACD,CAAC,CAAC;EACH,CAAC;EACD0C,MAAM,EAAEA,MAAM;EACd4E,GAAG,EAAEA,GAAG;EACRlE,UAAU,EAAEA,UAAU;EACtBQ,WAAW,EAAEA,WAAW;EACxBgD,WAAW,EAAEA,WAAW;EACxBE,UAAU,EAAEA,UAAU;EACtB/C,SAAS,EAAEA,SAAS;EACpBxB,OAAO,EAAEA,OAAO;EAChBvlB,UAAU,EAAEA,UAAU;EACtB6nB,gBAAgB,EAAEA,gBAAgB;EAClCO,WAAW,EAAEA,WAAW;EACxBW,UAAU,EAAEA,UAAU;EACtBQ,aAAa,EAAEA,aAAa;EAC5BG,cAAc,EAAEA;AACjB,CAAC,C;;;;;;;;;;;ACpuBD3O,MAAM,CAACC,OAAO,GAAG;EACf;EACA2S,iBAAiB,EAAC,IAAI;EACtB;EACArG,OAAO,EAAE,IAAI,GAAG,EAAE;EAClB;EACAsG,eAAe,EAAE,CACf,8BAA8B,CAC/B;EACDxG,YAAY,EAAC,mBAAmB;EAAC;EACjCC,OAAO,EAAC,0BAA0B;EAAC;EACnC;EACA;EACAj4B,GAAG,EAAE;AACP,CAAC,C;;;;;;;;;;ACbD,+CAAIy+B,MAAM,GAAG,qCAAqC;AAClD,SAASC,WAAW,CAACC,IAAI,EAAE;EACvB,OAAO,IAAIp3B,OAAO,CAAC,UAACq3B,aAAa,EAAK;IAClCtT,GAAG,CAACoT,WAAW,CAAC;MACZ/0B,OAAO,EAAE,iBAAU7D,GAAG,EAAE;QACpB,IAAI+4B,QAAQ,GAAG/4B,GAAG,CAAC+4B,QAAQ,CAAC,CAAC;QAC7B,IAAIC,SAAS,GAAGh5B,GAAG,CAACg5B,SAAS,CAAC,CAAC;QAC/B,IAAIC,KAAK,GAAGj5B,GAAG,CAACi5B,KAAK,CAAC,CAAC;QACvB,IAAIC,QAAQ,GAAGl5B,GAAG,CAACk5B,QAAQ,CAAC,CAAC;QAC7BC,WAAW,CAACn5B,GAAG,CAAC,CAACsB,IAAI,CAAC,UAAA83B,kBAAkB,EAAI;UACxCN,aAAa,CAACM,kBAAkB,CAAC;QACrC,CAAC,CAAC;MACN,CAAC;MACDC,MAAM,EAAE,gBAAUr5B,GAAG,EAAE;QACnB;MAAA;IAER,CAAC,CAAC;EACN,CAAC,CAAC;AACN;AAEA,SAASm5B,WAAW,CAACn5B,GAAG,EAAE;EACtB,OAAO,IAAIyB,OAAO,CAAC,UAAA23B,kBAAkB,EAAI;IACrChxB,MAAM,EAAE,CAAC2Z,UAAU,CAACkO,QAAQ,CACxB,OAAO,EACP;MACIqJ,GAAG,EAAEt5B,GAAG,CAAC+4B,QAAQ;MACjBQ,GAAG,EAAEv5B,GAAG,CAACg5B,SAAS;MAClBC,KAAK,EAAEj5B,GAAG,CAACi5B,KAAK;MAChBC,QAAQ,EAAEl5B,GAAG,CAACk5B;IAClB,CAAC,EACD,IAAI,CACP;IAED9wB,MAAM,EAAE,CAAC2Z,UAAU,CAACsO,OAAO,CAAC;MACxBC,CAAC,EAAE,0BAA0B;MAC7BnnB,GAAG,EAAE,0CAA0C,GAAG,WAAW,GAAGnJ,GAAG,CAAC+4B,QAAQ,GAAG,GAAG,GAAG/4B,GAAG,CAACg5B,SAAS,GAAG,OAAO,GAAGL;IACnH,CAAC,CAAC,CAACr3B,IAAI,CAAC,UAAA7F,MAAM,EAAI;MACd29B,kBAAkB,CAAC39B,MAAM,CAAC2F,IAAI,CAACA,IAAI,CAAC3F,MAAM,CAAC;IAC/C,CAAC,CAAC;EACN,CAAC,CAAC;AACN;AAEAoqB,MAAM,CAACC,OAAO,GAAG;EACb8S,WAAW,EAAEA,WAAW;EACxBY,cAAc,EAAE,wBAAUC,YAAY,EAAE;IACpC,OAAO,IAAIh4B,OAAO,CAAC,UAAUoC,OAAO,EAAEC,IAAI,EAAE;MACxC0hB,GAAG,CAAC6K,OAAO,CAAC;QACRlnB,GAAG,EAAE,kDAAkD,GAAGuwB,SAAS,CAACD,YAAY,CAAC,GAAG,0CAA0C;QAC9H11B,QAAQ,EAAE,kBAAU/D,GAAG,EAAE;UACrB,IAAI,OAAOA,GAAG,CAACoB,IAAI,CAAC3F,MAAM,CAACq3B,QAAQ,CAACyG,GAAG,IAAI,WAAW,IAC/Cv5B,GAAG,CAACoB,IAAI,CAAC3F,MAAM,CAACq3B,QAAQ,CAACyG,GAAG,EAAE;YACjC11B,OAAO,CAAC7D,GAAG,CAACoB,IAAI,CAAC3F,MAAM,CAAC;UAC5B,CAAC,MAAM;YACHqI,IAAI,CAAC9D,GAAG,CAACoB,IAAI,CAAC;UAClB;QACJ;MACJ,CAAC,CAAC;IACN,CAAC,CAAC;EACN;AACJ,CAAC,C;;;;;;;;;;;AC5DD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uB;;;;;;;;;;AC7BAykB,MAAM,CAACC,OAAO,CAAClhB,MAAM,GAAG,UAAUuB,CAAC,EAAE4M,CAAC,EAAE;EACtC,IAAIgU,CAAC,GAAGhU,CAAC,CAAC0L,aAAa,CAAC5I,OAAO;IAC3BgR,CAAC,GAAGE,CAAC,CAACtjB,KAAK;IACX6sB,CAAC,GAAGvJ,CAAC,CAAC7oB,cAAc,CAAC,KAAK,CAAC,GAAGgM,QAAQ,CAAC6c,CAAC,CAAC4S,GAAG,CAAC,GAAG,CAAC;IACjDhT,CAAC,GAAGI,CAAC,CAAC7oB,cAAc,CAAC,KAAK,CAAC,GAAGgM,QAAQ,CAAC6c,CAAC,CAAC6S,GAAG,CAAC,GAAG,GAAG;EACvD,OAAO,OAAO,KAAK7mB,CAAC,CAAC/Y,MAAM,CAAC6b,OAAO,CAACgkB,MAAM,GAAGhT,CAAC,GAAG,CAAC,KAAKA,CAAC,GAAGyJ,CAAC,IAAI,CAAC,IAAIA,CAAC,CAAC,GAAGzJ,CAAC,EAAE,IAAI,CAAC,IAAIyJ,CAAC,KAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAACwJ,KAAK,CAAC3zB,CAAC,EAAE,MAAM,GAAGmqB,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,MAAM,KAAKvd,CAAC,CAAC/Y,MAAM,CAAC6b,OAAO,CAACgkB,MAAM,KAAKhT,CAAC,GAAGF,CAAC,IAAI,CAAC,IAAIA,CAAC,GAAGE,CAAC,EAAE,GAAG,IAAI,CAACiT,KAAK,CAAC3zB,CAAC,EAAE,MAAM,GAAGwgB,CAAC,GAAG,GAAG,CAAC,CAAC,EAAEE,CAAC;AAC3O,CAAC,EAAEhB,MAAM,CAACC,OAAO,CAACgU,KAAK,GAAG,UAAU3zB,CAAC,EAAE4M,CAAC,EAAEgU,CAAC,EAAE;EAC3CA,CAAC,KAAKA,CAAC,GAAG,IAAI,CAAC,EAAE5gB,CAAC,CAACyW,OAAO,CAAC;IACzBmd,UAAU,EAAE;MACVnW,IAAI,EAAE,IAAI;MACViG,IAAI,EAAE9W;IACR;EACF,CAAC,CAAC;EACFqc,UAAU,CAAC,YAAY;IACrBjpB,CAAC,CAACyW,OAAO,CAAC;MACRmd,UAAU,EAAE;QACVnW,IAAI,EAAE;MACR;IACF,CAAC,CAAC;EACJ,CAAC,EAAEmD,CAAC,CAAC;AACP,CAAC,EAAElB,MAAM,CAACC,OAAO,CAACkU,MAAM,GAAG,UAAU7zB,CAAC,EAAE4M,CAAC,EAAEgU,CAAC,EAAEF,CAAC,EAAE;EAC/CA,CAAC,KAAKA,CAAC,GAAG,IAAI,CAAC,EAAEE,CAAC,KAAKA,CAAC,GAAG,SAAS,CAAC,EAAE5gB,CAAC,CAACyW,OAAO,CAAC;IAC/Cqd,WAAW,EAAE;MACXrW,IAAI,EAAE,IAAI;MACViG,IAAI,EAAE9W,CAAC;MACPmnB,KAAK,EAAEnT;IACT;EACF,CAAC,CAAC;EACFqI,UAAU,CAAC,YAAY;IACrBjpB,CAAC,CAACyW,OAAO,CAAC;MACRqd,WAAW,EAAE;QACXrW,IAAI,EAAE;MACR;IACF,CAAC,CAAC;EACJ,CAAC,EAAEiD,CAAC,CAAC;AACP,CAAC,C;;;;;;;;;;ACpCDhB,MAAM,CAACC,OAAO,GAAG;EACfqU,KAAK,EAAE,yEAAyE;EAChFC,IAAI,EAAE,iEAAiE;EACvEC,IAAI,EAAE,iEAAiE;EACvEC,QAAQ,EAAE,qEAAqE;EAC/EC,IAAI,EAAE,iEAAiE;EACvEC,QAAQ,EAAE,qEAAqE;EAC/EC,IAAI,EAAE,iEAAiE;EACvEC,QAAQ,EAAE,qEAAqE;EAC/EC,MAAM,EAAE,mEAAmE;EAC3EC,UAAU,EAAE,uEAAuE;EACnFC,IAAI,EAAE,iEAAiE;EACvEC,KAAK,EAAE,kEAAkE;EACzEC,SAAS,EAAE,uEAAuE;EAClFC,IAAI,EAAE,iEAAiE;EACvEC,UAAU,EAAE,qEAAqE;EACjFC,QAAQ,EAAE,sEAAsE;EAChFC,SAAS,EAAE,sEAAsE;EACjFC,MAAM,EAAE,mEAAmE;EAC3EC,IAAI,EAAE,iEAAiE;EACvEvI,QAAQ,EAAE,oEAAoE;EAC9EnB,OAAO,EAAE,0EAA0E;EACnF2J,QAAQ,EAAE,sEAAsE;EAChFC,SAAS,EAAE,uEAAuE;EAClFC,KAAK,EAAE,mEAAmE;EAC1EC,QAAQ,EAAE,sEAAsE;EAChFla,KAAK,EAAE,kEAAkE;EACzEma,UAAU,EAAE,wEAAwE;EACpFC,MAAM,EAAE,mEAAmE;EAC3EC,KAAK,EAAE,kEAAkE;EACzEC,MAAM,EAAE,mEAAmE;EAC3EC,IAAI,EAAE,iEAAiE;EACvEC,KAAK,EAAE,mEAAmE;EAC1EC,MAAM,EAAE,oEAAoE;EAC5EC,KAAK,EAAE,kEAAkE;EACzE7L,MAAM,EAAE,mEAAmE;EAC3E8L,UAAU,EAAE,mEAAmE;EAC/EC,QAAQ,EAAE,iEAAiE;EAC3EC,IAAI,EAAE,iEAAiE;EACvEC,KAAK,EAAE,6DAA6D;EACpEC,OAAO,EAAE,oEAAoE;EAC7EC,OAAO,EAAE,oEAAoE;EAC7ErqB,OAAO,EAAE,0EAA0E;EACnFsqB,QAAQ,EAAE,oEAAoE;EAC9EC,EAAE,EAAE;AACN,CAAC,C;;;;;;;;;;;;;;;;;;;;AC7CD;AACA;AACA,IACEC,UAAU,GAGRC,uBAAK,CAHPD,UAAU;EACVE,SAAS,GAEPD,uBAAK,CAFPC,SAAS;EACTC,aAAa,GACXF,uBAAK,CADPE,aAAa;AAEf;AACA;AACA;AACA;AACA;AAJA,IAMaC,aAAa;EACxB,uBAAYC,YAAY,EAAE;IAAA;IACxB,IAAI,CAACjP,OAAO,GAAGiP,YAAY,CAAC90B,WAAW,EAAE;EAC3C,CAAC,CAAC;EAAA;IAAA;IAAA,OAGF,6BAAoB;MAClB;MACA,IAAI+0B,QAAQ,GAAG,IAAI,CAACC,UAAU,CAAC,IAAI,CAACnP,OAAO,CAAC,CAAC,CAAC;;MAE9C,IAAIoP,UAAU,GAAG,IAAI,CAACC,QAAQ,CAACH,QAAQ,CAAC;MACxC,OAAOE,UAAU;IACnB;EAAC;IAAA;IAAA,OAED,oBAAWjiC,GAAG,EAAE;MAAA;MACd,IAAImiC,UAAU;MACd,OAAOC,mBAAS,CAAC/yB,MAAM,CAAC,UAAAgzB,IAAI,EAAI;QAC9BF,UAAU,GAAG,KAAI,CAACG,aAAa,CAACtiC,GAAG,EAAEqiC,IAAI,CAAC;QAC1C,OAAOF,UAAU,IAAIA,UAAU,IAAIniC,GAAG;MACxC,CAAC,CAAC;IACJ;EAAC;IAAA;IAAA,OAED,uBAAcA,GAAG,EAAEuiC,OAAO,EAAE;MAC1B,IAAIZ,SAAS,CAAC3hC,GAAG,CAAC,EAAE;QAClB,IAAMwiC,iBAAiB,GAAGZ,aAAa,CAACW,OAAO,EAAE,MAAM,EAAEviC,GAAG,CAACM,MAAM,CAAC;QACpE,OAAOkiC,iBAAiB;MAC1B,CAAC,MAAM;QACL,IAAMC,gBAAgB,GAAGb,aAAa,CAACW,OAAO,EAAE,OAAO,EAAEviC,GAAG,CAACM,MAAM,CAAC,CAAC0M,WAAW,EAAE;QAClF,OAAOy1B,gBAAgB;MACzB,CAAC,CAAC;MACF;IAEF;EAAC;IAAA;IAAA,OAED,kBAASjG,KAAK,EAAE;MACd,OAAOiF,UAAU,CAACjF,KAAK,CAAC,GAAGA,KAAK,CAACv7B,GAAG,CAAC,UAAAqO,IAAI;QAAA,OAAK;UAC5C+yB,IAAI,EAAE/yB,IAAI,CAAC+yB,IAAI;UACfhO,IAAI,EAAE/kB,IAAI,CAAC+kB;QACb,CAAC;MAAA,CAAC,CAAC,GAAGqO,wBAAc;IACtB;EAAC;EAAA;AAAA;AAAA,sC;;;;;;;;;;;;;;;;;ACpDH,IAAMC,OAAO,GAAC,CAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,CAAC;AAAC;AAAA,IAAMP,SAAS,GAAC,CAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAa,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,WAAW;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAK,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAK,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,WAAW;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,WAAW;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAc,CAAC,EAAC;EAAC,IAAI,EAAC,EAAE;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,QAAQ;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAc,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAe,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,EAAE;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,aAAa;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAa,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,UAAU;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAc,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAa,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,aAAa;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAc,CAAC,EAAC;EAAC,IAAI,EAAC,EAAE;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,EAAE;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAc,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,WAAW;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,OAAO;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAgB,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,YAAY;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,WAAW;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAe,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,UAAU;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,SAAS;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,UAAU;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAY,CAAC,EAAC;EAAC,IAAI,EAAC,GAAG;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAa,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,IAAI;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAM,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,MAAM;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAa,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAW,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAQ,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAO,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAS,CAAC,EAAC;EAAC,IAAI,EAAC,KAAK;EAAC,cAAc,EAAC,QAAQ;EAAC,MAAM,EAAC,KAAK;EAAC,MAAM,EAAC,QAAQ;EAAC,SAAS,EAAC,GAAG;EAAC,OAAO,EAAC;AAAU,CAAC,CAAC;AAAC;AAAA,IAAMQ,aAAa,GAAC,CAAC;EAACC,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,EAAC;EAACQ,QAAQ,EAAC,MAAM;EAACR,IAAI,EAAC;AAAK,CAAC,CAAC;AAAC;AAAA,IAAMK,cAAc,GAAC,CAAC;EAACL,IAAI,EAAC,OAAO;EAAChO,IAAI,EAAC;AAAK,CAAC,CAAC;AAAC,wC;;;;;;;;;;;;;;;;;;ACAt0hC;AACA;AAA0C;;AAE1C,IAAMyO,cAAc,GAAG,SAAjBA,cAAc,CAAIhF,QAAQ,EAAEC,SAAS;EAAA,kEAAyDD,QAAQ,cAAIC,SAAS,kBAAQtJ,eAAM,CAACx1B,GAAG;AAAA,CAAE;AAE7I,IAAM8jC,gBAAgB,GAAG,SAAnBA,gBAAgB,CAAG1O,IAAI;EAAA,wEAA8DA,IAAI,kBAAQI,eAAM,CAACx1B,GAAG;AAAA,CAAE;AAEnH,IAAM+jC,WAAW,GAAG,SAAdA,WAAW;EAAA,OAAS,gBAAgB;AAAA;AAC1C;AACA;AACA;AACA;AACA;AACA;;AAGA,IAAMC,OAAO,GAAG,SAAVA,OAAO,CAAIC,OAAO,EAAE5/B,GAAG;EAAA,OAAK4/B,OAAO,CAACC,MAAM,CAAC,UAACC,QAAQ,EAAEC,MAAM;IAAA,OAAKD,QAAQ,IAAIA,QAAQ,CAACC,MAAM,CAAC,GAAGD,QAAQ,CAACC,MAAM,CAAC,GAAG,IAAI;EAAA,GAAE//B,GAAG,CAAC;AAAA;AAEnI,IAAMm+B,UAAU,GAAG,SAAbA,UAAU,CAAGjF,KAAK;EAAA,OAAIv3B,KAAK,CAACC,OAAO,CAACs3B,KAAK,CAAC,IAAIA,KAAK,CAACl8B,MAAM,GAAG,CAAC;AAAA;AAEpE,IAAMqhC,SAAS,GAAG,SAAZA,SAAS,CAAG3hC,GAAG;EAAA,OAAI,oBAAoB,CAACG,IAAI,CAACH,GAAG,CAAC;AAAA,EAAC,CAAC;;AAGzD,IAAMsjC,gCAAgC,GAAG,SAAnCA,gCAAgC;EAAA,OAASX,iBAAO,CAAC1hC,GAAG,CAAC,UAAAsiC,MAAM;IAAA,OAAK;MACpEC,OAAO,EAAED,MAAM;MACfE,QAAQ,EAAErB,mBAAS,CAAC/yB,MAAM,CAAC,UAAAgzB,IAAI;QAAA,OAAIA,IAAI,CAACmB,OAAO,IAAID,MAAM;MAAA;IAC3D,CAAC;EAAA,CAAC,CAAC;AAAA;AAEH,IAAM3B,aAAa,GAAG,SAAhBA,aAAa,CAAIW,OAAO,EAAEtjC,GAAG,EAAEykC,QAAQ;EAAA,OAAKnB,OAAO,CAACtjC,GAAG,CAAC,IAAIsjC,OAAO,CAACtjC,GAAG,CAAC,CAACoB,KAAK,CAAC,CAAC,EAAEqjC,QAAQ,CAAC;AAAA;AAEjG,IAAMC,MAAM,GAAG,SAATA,MAAM,CAAGv7B,GAAG,EAAI;EACpB2N,OAAO,CAACyjB,GAAG,CAACpxB,GAAG,CAAC;AAClB,CAAC,CAAC,CAAC;AAAA,eAGY;EACb06B,cAAc,EAAdA,cAAc;EACdC,gBAAgB,EAAhBA,gBAAgB;EAChBC,WAAW,EAAXA,WAAW;EACXvO,MAAM,EAANA,eAAM;EACNwO,OAAO,EAAPA,OAAO;EACPxB,UAAU,EAAVA,UAAU;EACVE,SAAS,EAATA,SAAS;EACT2B,gCAAgC,EAAhCA,gCAAgC;EAChC1B,aAAa,EAAbA,aAAa;EACb+B,MAAM,EAANA;AACF,CAAC;AAAA,2B;;;;;;;;;;;;;;;;;AC9CM,IAAMC,aAAa,GAAG;EAC3B,kBAAkB,EAAE,KAAK;EACzB,uBAAuB,EAAE,QAAQ;EACjC,yBAAyB,EAAE,QAAQ;EACnC,oBAAoB,EAAE,UAAU;EAChC,sBAAsB,EAAE;AAC1B,CAAC;AAAC,sC;;;;;;;;;;;;;;;ACNF;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;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;AC/GA;AAEA;AAEA;AAGA;AAEA;AAGA;AAEA;AAEA;AAEA;AAGA;AAEA;AAEA;AAEA;AAEA;AAA+C;AAAA;AAnC/C;AACA,IAAMC,8BAA8B,GAAG,CAAC,CAAC;EAAEC,SAAS,GAAGD,8BAA8B,aAA9BA,8BAA8B,u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ACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,mDAAmD;AACxE;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;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,mBAAmB,UAAU;AAC7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,uCAAuC,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;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;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gDAAgD,EAAE;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,wBAAwB,QAAQ;AAChC;AACA,qBAAqB,eAAe;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;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;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,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;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;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uDAAuD,OAAO;AAC9D;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA,uDAAuD,OAAO;AAC9D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;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;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,YAAY;AAC7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;AC5vDY;;AAEZ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,UAAU;AACpD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACrJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,QAAQ,WAAW;;AAEnB;AACA;AACA;AACA,QAAQ,WAAW;;AAEnB;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA,QAAQ,WAAW;;AAEnB;AACA;AACA,QAAQ,UA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ACtB,WAAW,EAAE,SAAS;IACtB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,SAAS;IACzB,iBAAiB,EAAE,SAAS;IAC5B,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE;EACrB,CAAC;EACJ;EACA0P,IAAI,EAAE;AACP,CAAC;AAAA,2B;;;;;;;;;;;;;;;;;;;AC5BD;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;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;AACA;AACA;AACA;AAAmC;AAAA;AAEnC,IACI1P,KAAK,GACLnQ,eAAM,CADNmQ,KAAK;AACC,muCAGHsV,oBAAW,GACXC,cAAK,GACL5lB,cAAK,GACL6lB,eAAM,GACNC,oBAAW,GACXC,gBAAO,GACPC,cAAK,GACLC,eAAM,GACNC,iBAAQ,GACRC,oBAAW,GACXC,aAAI,GACJC,kBAAS,GACTC,iBAAQ,GACRC,sBAAa,GACbC,uBAAc,GACd1mB,aAAI,GACJ2mB,kBAAS,GACTC,YAAG,GACHC,iBAAQ,GACRC,qBAAY,GACZC,qBAAY,GACZC,kBAAS,GACTC,gBAAO,GACPC,uBAAc,GACdC,gBAAO,GACPnI,cAAK,GACLuE,aAAI,GACJD,iBAAQ,GACR8D,YAAG,GACHC,aAAI,GACJC,iBAAQ,GACRpoB,aAAI,GACJkgB,cAAK,GACLmI,oBAAW,GACXC,kBAAS,GACTC,cAAK,GACLC,iBAAQ,GACRC,aAAI,GACJC,qBAAY,GACZC,aAAI,GA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","file":"common/vendor.js","sourcesContent":["const objectKeys = [\r\n 'qy',\r\n 'env',\r\n 'error',\r\n 'version',\r\n 'lanDebug',\r\n 'cloud',\r\n 'serviceMarket',\r\n 'router',\r\n 'worklet',\r\n '__webpack_require_UNI_MP_PLUGIN__'\r\n]\r\nconst singlePageDisableKey = [\r\n 'lanDebug',\r\n 'router',\r\n 'worklet'\r\n]\r\nconst target = typeof globalThis !== 'undefined' ? globalThis : (function () {\r\n return this\r\n})()\r\n\r\nconst key = ['w', 'x'].join('')\r\nconst oldWx = target[key]\r\nconst launchOption = oldWx.getLaunchOptionsSync ? oldWx.getLaunchOptionsSync() : null\r\n\r\nfunction isWxKey (key) {\r\n if (launchOption && launchOption.scene === 1154 && singlePageDisableKey.includes(key)) {\r\n return false\r\n }\r\n return objectKeys.indexOf(key) > -1 || typeof oldWx[key] === 'function'\r\n}\r\n\r\nfunction initWx () {\r\n const newWx = {}\r\n for (const key in oldWx) {\r\n if (isWxKey(key)) {\r\n // TODO wrapper function\r\n newWx[key] = oldWx[key]\r\n }\r\n }\r\n return newWx\r\n}\r\ntarget[key] = initWx()\r\nexport default target[key]\r\n","import { initVueI18n } from '@dcloudio/uni-i18n';\r\nimport Vue from 'vue';\r\n\r\nlet realAtob;\r\n\r\nconst b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\r\nconst b64re = /^(?:[A-Za-z\\d+/]{4})*?(?:[A-Za-z\\d+/]{2}(?:==)?|[A-Za-z\\d+/]{3}=?)?$/;\r\n\r\nif (typeof atob !== 'function') {\r\n realAtob = function (str) {\r\n str = String(str).replace(/[\\t\\n\\f\\r ]+/g, '');\r\n if (!b64re.test(str)) { throw new Error(\"Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.\") }\r\n\r\n // Adding the padding if missing, for semplicity\r\n str += '=='.slice(2 - (str.length & 3));\r\n var bitmap; var result = ''; var r1; var r2; var i = 0;\r\n for (; i < str.length;) {\r\n bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 |\r\n (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));\r\n\r\n result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255)\r\n : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255)\r\n : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);\r\n }\r\n return result\r\n };\r\n} else {\r\n // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法\r\n realAtob = atob;\r\n}\r\n\r\nfunction b64DecodeUnicode (str) {\r\n return decodeURIComponent(realAtob(str).split('').map(function (c) {\r\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)\r\n }).join(''))\r\n}\r\n\r\nfunction getCurrentUserInfo () {\r\n const token = ( wx).getStorageSync('uni_id_token') || '';\r\n const tokenArr = token.split('.');\r\n if (!token || tokenArr.length !== 3) {\r\n return {\r\n uid: null,\r\n role: [],\r\n permission: [],\r\n tokenExpired: 0\r\n }\r\n }\r\n let userInfo;\r\n try {\r\n userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));\r\n } catch (error) {\r\n throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message)\r\n }\r\n userInfo.tokenExpired = userInfo.exp * 1000;\r\n delete userInfo.exp;\r\n delete userInfo.iat;\r\n return userInfo\r\n}\r\n\r\nfunction uniIdMixin (Vue) {\r\n Vue.prototype.uniIDHasRole = function (roleId) {\r\n const {\r\n role\r\n } = getCurrentUserInfo();\r\n return role.indexOf(roleId) > -1\r\n };\r\n Vue.prototype.uniIDHasPermission = function (permissionId) {\r\n const {\r\n permission\r\n } = getCurrentUserInfo();\r\n return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1\r\n };\r\n Vue.prototype.uniIDTokenValid = function () {\r\n const {\r\n tokenExpired\r\n } = getCurrentUserInfo();\r\n return tokenExpired > Date.now()\r\n };\r\n}\r\n\r\nconst _toString = Object.prototype.toString;\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\n\r\nfunction isFn (fn) {\r\n return typeof fn === 'function'\r\n}\r\n\r\nfunction isStr (str) {\r\n return typeof str === 'string'\r\n}\r\n\r\nfunction isObject (obj) {\r\n return obj !== null && typeof obj === 'object'\r\n}\r\n\r\nfunction isPlainObject (obj) {\r\n return _toString.call(obj) === '[object Object]'\r\n}\r\n\r\nfunction hasOwn (obj, key) {\r\n return hasOwnProperty.call(obj, key)\r\n}\r\n\r\nfunction noop () {}\r\n\r\n/**\r\n * Create a cached version of a pure function.\r\n */\r\nfunction cached (fn) {\r\n const cache = Object.create(null);\r\n return function cachedFn (str) {\r\n const hit = cache[str];\r\n return hit || (cache[str] = fn(str))\r\n }\r\n}\r\n\r\n/**\r\n * Camelize a hyphen-delimited string.\r\n */\r\nconst camelizeRE = /-(\\w)/g;\r\nconst camelize = cached((str) => {\r\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\r\n});\r\n\r\nfunction sortObject (obj) {\r\n const sortObj = {};\r\n if (isPlainObject(obj)) {\r\n Object.keys(obj).sort().forEach(key => {\r\n sortObj[key] = obj[key];\r\n });\r\n }\r\n return !Object.keys(sortObj) ? obj : sortObj\r\n}\r\n\r\nconst HOOKS = [\r\n 'invoke',\r\n 'success',\r\n 'fail',\r\n 'complete',\r\n 'returnValue'\r\n];\r\n\r\nconst globalInterceptors = {};\r\nconst scopedInterceptors = {};\r\n\r\nfunction mergeHook (parentVal, childVal) {\r\n const res = childVal\r\n ? parentVal\r\n ? parentVal.concat(childVal)\r\n : Array.isArray(childVal)\r\n ? childVal : [childVal]\r\n : parentVal;\r\n return res\r\n ? dedupeHooks(res)\r\n : res\r\n}\r\n\r\nfunction dedupeHooks (hooks) {\r\n const res = [];\r\n for (let i = 0; i < hooks.length; i++) {\r\n if (res.indexOf(hooks[i]) === -1) {\r\n res.push(hooks[i]);\r\n }\r\n }\r\n return res\r\n}\r\n\r\nfunction removeHook (hooks, hook) {\r\n const index = hooks.indexOf(hook);\r\n if (index !== -1) {\r\n hooks.splice(index, 1);\r\n }\r\n}\r\n\r\nfunction mergeInterceptorHook (interceptor, option) {\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction removeInterceptorHook (interceptor, option) {\r\n if (!interceptor || !option) {\r\n return\r\n }\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n removeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction addInterceptor (method, option) {\r\n if (typeof method === 'string' && isPlainObject(option)) {\r\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\r\n } else if (isPlainObject(method)) {\r\n mergeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction removeInterceptor (method, option) {\r\n if (typeof method === 'string') {\r\n if (isPlainObject(option)) {\r\n removeInterceptorHook(scopedInterceptors[method], option);\r\n } else {\r\n delete scopedInterceptors[method];\r\n }\r\n } else if (isPlainObject(method)) {\r\n removeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction wrapperHook (hook, params) {\r\n return function (data) {\r\n return hook(data, params) || data\r\n }\r\n}\r\n\r\nfunction isPromise (obj) {\r\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\r\n}\r\n\r\nfunction queue (hooks, data, params) {\r\n let promise = false;\r\n for (let i = 0; i < hooks.length; i++) {\r\n const hook = hooks[i];\r\n if (promise) {\r\n promise = Promise.resolve(wrapperHook(hook, params));\r\n } else {\r\n const res = hook(data, params);\r\n if (isPromise(res)) {\r\n promise = Promise.resolve(res);\r\n }\r\n if (res === false) {\r\n return {\r\n then () { }\r\n }\r\n }\r\n }\r\n }\r\n return promise || {\r\n then (callback) {\r\n return callback(data)\r\n }\r\n }\r\n}\r\n\r\nfunction wrapperOptions (interceptor, options = {}) {\r\n ['success', 'fail', 'complete'].forEach(name => {\r\n if (Array.isArray(interceptor[name])) {\r\n const oldCallback = options[name];\r\n options[name] = function callbackInterceptor (res) {\r\n queue(interceptor[name], res, options).then((res) => {\r\n /* eslint-disable no-mixed-operators */\r\n return isFn(oldCallback) && oldCallback(res) || res\r\n });\r\n };\r\n }\r\n });\r\n return options\r\n}\r\n\r\nfunction wrapperReturnValue (method, returnValue) {\r\n const returnValueHooks = [];\r\n if (Array.isArray(globalInterceptors.returnValue)) {\r\n returnValueHooks.push(...globalInterceptors.returnValue);\r\n }\r\n const interceptor = scopedInterceptors[method];\r\n if (interceptor && Array.isArray(interceptor.returnValue)) {\r\n returnValueHooks.push(...interceptor.returnValue);\r\n }\r\n returnValueHooks.forEach(hook => {\r\n returnValue = hook(returnValue) || returnValue;\r\n });\r\n return returnValue\r\n}\r\n\r\nfunction getApiInterceptorHooks (method) {\r\n const interceptor = Object.create(null);\r\n Object.keys(globalInterceptors).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = globalInterceptors[hook].slice();\r\n }\r\n });\r\n const scopedInterceptor = scopedInterceptors[method];\r\n if (scopedInterceptor) {\r\n Object.keys(scopedInterceptor).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\r\n }\r\n });\r\n }\r\n return interceptor\r\n}\r\n\r\nfunction invokeApi (method, api, options, ...params) {\r\n const interceptor = getApiInterceptorHooks(method);\r\n if (interceptor && Object.keys(interceptor).length) {\r\n if (Array.isArray(interceptor.invoke)) {\r\n const res = queue(interceptor.invoke, options);\r\n return res.then((options) => {\r\n // 重新访问 getApiInterceptorHooks, 允许 invoke 中再次调用 addInterceptor,removeInterceptor\r\n return api(\r\n wrapperOptions(getApiInterceptorHooks(method), options),\r\n ...params\r\n )\r\n })\r\n } else {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n }\r\n }\r\n return api(options, ...params)\r\n}\r\n\r\nconst promiseInterceptor = {\r\n returnValue (res) {\r\n if (!isPromise(res)) {\r\n return res\r\n }\r\n return new Promise((resolve, reject) => {\r\n res.then(res => {\r\n if (res[0]) {\r\n reject(res[0]);\r\n } else {\r\n resolve(res[1]);\r\n }\r\n });\r\n })\r\n }\r\n};\r\n\r\nconst SYNC_API_RE =\r\n /^\\$|Window$|WindowStyle$|sendHostEvent|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getLocale|setLocale|invokePushCallback|getWindowInfo|getDeviceInfo|getAppBaseInfo|getSystemSetting|getAppAuthorizeSetting|initUTS|requireUTS|registerUTS/;\r\n\r\nconst CONTEXT_API_RE = /^create|Manager$/;\r\n\r\n// Context例外情况\r\nconst CONTEXT_API_RE_EXC = ['createBLEConnection'];\r\n\r\n// 同步例外情况\r\nconst ASYNC_API = ['createBLEConnection', 'createPushMessage'];\r\n\r\nconst CALLBACK_API_RE = /^on|^off/;\r\n\r\nfunction isContextApi (name) {\r\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\r\n}\r\nfunction isSyncApi (name) {\r\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\r\n}\r\n\r\nfunction isCallbackApi (name) {\r\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\r\n}\r\n\r\nfunction handlePromise (promise) {\r\n return promise.then(data => {\r\n return [null, data]\r\n })\r\n .catch(err => [err])\r\n}\r\n\r\nfunction shouldPromise (name) {\r\n if (\r\n isContextApi(name) ||\r\n isSyncApi(name) ||\r\n isCallbackApi(name)\r\n ) {\r\n return false\r\n }\r\n return true\r\n}\r\n\r\n/* eslint-disable no-extend-native */\r\nif (!Promise.prototype.finally) {\r\n Promise.prototype.finally = function (callback) {\r\n const promise = this.constructor;\r\n return this.then(\r\n value => promise.resolve(callback()).then(() => value),\r\n reason => promise.resolve(callback()).then(() => {\r\n throw reason\r\n })\r\n )\r\n };\r\n}\r\n\r\nfunction promisify (name, api) {\r\n if (!shouldPromise(name) || !isFn(api)) {\r\n return api\r\n }\r\n return function promiseApi (options = {}, ...params) {\r\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\r\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\r\n }\r\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\r\n invokeApi(name, api, Object.assign({}, options, {\r\n success: resolve,\r\n fail: reject\r\n }), ...params);\r\n })))\r\n }\r\n}\r\n\r\nconst EPS = 1e-4;\r\nconst BASE_DEVICE_WIDTH = 750;\r\nlet isIOS = false;\r\nlet deviceWidth = 0;\r\nlet deviceDPR = 0;\r\n\r\nfunction checkDeviceWidth () {\r\n const {\r\n platform,\r\n pixelRatio,\r\n windowWidth\r\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\r\n\r\n deviceWidth = windowWidth;\r\n deviceDPR = pixelRatio;\r\n isIOS = platform === 'ios';\r\n}\r\n\r\nfunction upx2px (number, newDeviceWidth) {\r\n if (deviceWidth === 0) {\r\n checkDeviceWidth();\r\n }\r\n\r\n number = Number(number);\r\n if (number === 0) {\r\n return 0\r\n }\r\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\r\n if (result < 0) {\r\n result = -result;\r\n }\r\n result = Math.floor(result + EPS);\r\n if (result === 0) {\r\n if (deviceDPR === 1 || !isIOS) {\r\n result = 1;\r\n } else {\r\n result = 0.5;\r\n }\r\n }\r\n return number < 0 ? -result : result\r\n}\r\n\r\nconst LOCALE_ZH_HANS = 'zh-Hans';\r\nconst LOCALE_ZH_HANT = 'zh-Hant';\r\nconst LOCALE_EN = 'en';\r\nconst LOCALE_FR = 'fr';\r\nconst LOCALE_ES = 'es';\r\n\r\nconst messages = {};\r\n\r\nlet locale;\r\n\r\n{\r\n locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;\r\n}\r\n\r\nfunction initI18nMessages () {\r\n if (!isEnableLocale()) {\r\n return\r\n }\r\n const localeKeys = Object.keys(__uniConfig.locales);\r\n if (localeKeys.length) {\r\n localeKeys.forEach((locale) => {\r\n const curMessages = messages[locale];\r\n const userMessages = __uniConfig.locales[locale];\r\n if (curMessages) {\r\n Object.assign(curMessages, userMessages);\r\n } else {\r\n messages[locale] = userMessages;\r\n }\r\n });\r\n }\r\n}\r\n\r\ninitI18nMessages();\r\n\r\nconst i18n = initVueI18n(\r\n locale,\r\n {}\r\n);\r\nconst t = i18n.t;\r\nconst i18nMixin = (i18n.mixin = {\r\n beforeCreate () {\r\n const unwatch = i18n.i18n.watchLocale(() => {\r\n this.$forceUpdate();\r\n });\r\n this.$once('hook:beforeDestroy', function () {\r\n unwatch();\r\n });\r\n },\r\n methods: {\r\n $$t (key, values) {\r\n return t(key, values)\r\n }\r\n }\r\n});\r\nconst setLocale = i18n.setLocale;\r\nconst getLocale = i18n.getLocale;\r\n\r\nfunction initAppLocale (Vue, appVm, locale) {\r\n const state = Vue.observable({\r\n locale: locale || i18n.getLocale()\r\n });\r\n const localeWatchers = [];\r\n appVm.$watchLocale = fn => {\r\n localeWatchers.push(fn);\r\n };\r\n Object.defineProperty(appVm, '$locale', {\r\n get () {\r\n return state.locale\r\n },\r\n set (v) {\r\n state.locale = v;\r\n localeWatchers.forEach(watch => watch(v));\r\n }\r\n });\r\n}\r\n\r\nfunction isEnableLocale () {\r\n return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length\r\n}\r\n\r\nfunction include (str, parts) {\r\n return !!parts.find((part) => str.indexOf(part) !== -1)\r\n}\r\n\r\nfunction startsWith (str, parts) {\r\n return parts.find((part) => str.indexOf(part) === 0)\r\n}\r\n\r\nfunction normalizeLocale (locale, messages) {\r\n if (!locale) {\r\n return\r\n }\r\n locale = locale.trim().replace(/_/g, '-');\r\n if (messages && messages[locale]) {\r\n return locale\r\n }\r\n locale = locale.toLowerCase();\r\n if (locale === 'chinese') {\r\n // 支付宝\r\n return LOCALE_ZH_HANS\r\n }\r\n if (locale.indexOf('zh') === 0) {\r\n if (locale.indexOf('-hans') > -1) {\r\n return LOCALE_ZH_HANS\r\n }\r\n if (locale.indexOf('-hant') > -1) {\r\n return LOCALE_ZH_HANT\r\n }\r\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\r\n return LOCALE_ZH_HANT\r\n }\r\n return LOCALE_ZH_HANS\r\n }\r\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\r\n if (lang) {\r\n return lang\r\n }\r\n}\r\n// export function initI18n() {\r\n// const localeKeys = Object.keys(__uniConfig.locales || {})\r\n// if (localeKeys.length) {\r\n// localeKeys.forEach((locale) =>\r\n// i18n.add(locale, __uniConfig.locales[locale])\r\n// )\r\n// }\r\n// }\r\n\r\nfunction getLocale$1 () {\r\n // 优先使用 $locale\r\n if (isFn(getApp)) {\r\n const app = getApp({\r\n allowDefault: true\r\n });\r\n if (app && app.$vm) {\r\n return app.$vm.$locale\r\n }\r\n }\r\n return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN\r\n}\r\n\r\nfunction setLocale$1 (locale) {\r\n const app = isFn(getApp) ? getApp() : false;\r\n if (!app) {\r\n return false\r\n }\r\n const oldLocale = app.$vm.$locale;\r\n if (oldLocale !== locale) {\r\n app.$vm.$locale = locale;\r\n onLocaleChangeCallbacks.forEach((fn) => fn({\r\n locale\r\n }));\r\n return true\r\n }\r\n return false\r\n}\r\n\r\nconst onLocaleChangeCallbacks = [];\r\nfunction onLocaleChange (fn) {\r\n if (onLocaleChangeCallbacks.indexOf(fn) === -1) {\r\n onLocaleChangeCallbacks.push(fn);\r\n }\r\n}\r\n\r\nif (typeof global !== 'undefined') {\r\n global.getLocale = getLocale$1;\r\n}\r\n\r\nconst interceptors = {\r\n promiseInterceptor\r\n};\r\n\r\nvar baseApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n upx2px: upx2px,\r\n getLocale: getLocale$1,\r\n setLocale: setLocale$1,\r\n onLocaleChange: onLocaleChange,\r\n addInterceptor: addInterceptor,\r\n removeInterceptor: removeInterceptor,\r\n interceptors: interceptors\r\n});\r\n\r\nfunction findExistsPageIndex (url) {\r\n const pages = getCurrentPages();\r\n let len = pages.length;\r\n while (len--) {\r\n const page = pages[len];\r\n if (page.$page && page.$page.fullPath === url) {\r\n return len\r\n }\r\n }\r\n return -1\r\n}\r\n\r\nvar redirectTo = {\r\n name (fromArgs) {\r\n if (fromArgs.exists === 'back' && fromArgs.delta) {\r\n return 'navigateBack'\r\n }\r\n return 'redirectTo'\r\n },\r\n args (fromArgs) {\r\n if (fromArgs.exists === 'back' && fromArgs.url) {\r\n const existsPageIndex = findExistsPageIndex(fromArgs.url);\r\n if (existsPageIndex !== -1) {\r\n const delta = getCurrentPages().length - 1 - existsPageIndex;\r\n if (delta > 0) {\r\n fromArgs.delta = delta;\r\n }\r\n }\r\n }\r\n }\r\n};\r\n\r\nvar previewImage = {\r\n args (fromArgs) {\r\n let currentIndex = parseInt(fromArgs.current);\r\n if (isNaN(currentIndex)) {\r\n return\r\n }\r\n const urls = fromArgs.urls;\r\n if (!Array.isArray(urls)) {\r\n return\r\n }\r\n const len = urls.length;\r\n if (!len) {\r\n return\r\n }\r\n if (currentIndex < 0) {\r\n currentIndex = 0;\r\n } else if (currentIndex >= len) {\r\n currentIndex = len - 1;\r\n }\r\n if (currentIndex > 0) {\r\n fromArgs.current = urls[currentIndex];\r\n fromArgs.urls = urls.filter(\r\n (item, index) => index < currentIndex ? item !== urls[currentIndex] : true\r\n );\r\n } else {\r\n fromArgs.current = urls[0];\r\n }\r\n return {\r\n indicator: false,\r\n loop: false\r\n }\r\n }\r\n};\r\n\r\nconst UUID_KEY = '__DC_STAT_UUID';\r\nlet deviceId;\r\nfunction useDeviceId (result) {\r\n deviceId = deviceId || wx.getStorageSync(UUID_KEY);\r\n if (!deviceId) {\r\n deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);\r\n wx.setStorage({\r\n key: UUID_KEY,\r\n data: deviceId\r\n });\r\n }\r\n result.deviceId = deviceId;\r\n}\r\n\r\nfunction addSafeAreaInsets (result) {\r\n if (result.safeArea) {\r\n const safeArea = result.safeArea;\r\n result.safeAreaInsets = {\r\n top: safeArea.top,\r\n left: safeArea.left,\r\n right: result.windowWidth - safeArea.right,\r\n bottom: result.screenHeight - safeArea.bottom\r\n };\r\n }\r\n}\r\n\r\nfunction populateParameters (result) {\r\n const {\r\n brand = '', model = '', system = '',\r\n language = '', theme, version,\r\n platform, fontSizeSetting,\r\n SDKVersion, pixelRatio, deviceOrientation\r\n } = result;\r\n // const isQuickApp = \"mp-weixin\".indexOf('quickapp-webview') !== -1\r\n\r\n const extraParam = {};\r\n\r\n // osName osVersion\r\n let osName = '';\r\n let osVersion = '';\r\n {\r\n osName = system.split(' ')[0] || '';\r\n osVersion = system.split(' ')[1] || '';\r\n }\r\n let hostVersion = version;\r\n\r\n // deviceType\r\n const deviceType = getGetDeviceType(result, model);\r\n\r\n // deviceModel\r\n const deviceBrand = getDeviceBrand(brand);\r\n\r\n // hostName\r\n const _hostName = getHostName(result);\r\n\r\n // deviceOrientation\r\n let _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持\r\n\r\n // devicePixelRatio\r\n let _devicePixelRatio = pixelRatio;\r\n\r\n // SDKVersion\r\n let _SDKVersion = SDKVersion;\r\n\r\n // hostLanguage\r\n const hostLanguage = language.replace(/_/g, '-');\r\n\r\n // wx.getAccountInfoSync\r\n\r\n const parameters = {\r\n appId: process.env.UNI_APP_ID,\r\n appName: process.env.UNI_APP_NAME,\r\n appVersion: process.env.UNI_APP_VERSION_NAME,\r\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\r\n appLanguage: getAppLanguage(hostLanguage),\r\n uniCompileVersion: process.env.UNI_COMPILER_VERSION,\r\n uniRuntimeVersion: process.env.UNI_COMPILER_VERSION,\r\n uniPlatform: process.env.UNI_SUB_PLATFORM || process.env.UNI_PLATFORM,\r\n deviceBrand,\r\n deviceModel: model,\r\n deviceType,\r\n devicePixelRatio: _devicePixelRatio,\r\n deviceOrientation: _deviceOrientation,\r\n osName: osName.toLocaleLowerCase(),\r\n osVersion,\r\n hostTheme: theme,\r\n hostVersion,\r\n hostLanguage,\r\n hostName: _hostName,\r\n hostSDKVersion: _SDKVersion,\r\n hostFontSizeSetting: fontSizeSetting,\r\n windowTop: 0,\r\n windowBottom: 0,\r\n // TODO\r\n osLanguage: undefined,\r\n osTheme: undefined,\r\n ua: undefined,\r\n hostPackageName: undefined,\r\n browserName: undefined,\r\n browserVersion: undefined\r\n };\r\n\r\n Object.assign(result, parameters, extraParam);\r\n}\r\n\r\nfunction getGetDeviceType (result, model) {\r\n let deviceType = result.deviceType || 'phone';\r\n {\r\n const deviceTypeMaps = {\r\n ipad: 'pad',\r\n windows: 'pc',\r\n mac: 'pc'\r\n };\r\n const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);\r\n const _model = model.toLocaleLowerCase();\r\n for (let index = 0; index < deviceTypeMapsKeys.length; index++) {\r\n const _m = deviceTypeMapsKeys[index];\r\n if (_model.indexOf(_m) !== -1) {\r\n deviceType = deviceTypeMaps[_m];\r\n break\r\n }\r\n }\r\n }\r\n return deviceType\r\n}\r\n\r\nfunction getDeviceBrand (brand) {\r\n let deviceBrand = brand;\r\n if (deviceBrand) {\r\n deviceBrand = brand.toLocaleLowerCase();\r\n }\r\n return deviceBrand\r\n}\r\n\r\nfunction getAppLanguage (defaultLanguage) {\r\n return getLocale$1\r\n ? getLocale$1()\r\n : defaultLanguage\r\n}\r\n\r\nfunction getHostName (result) {\r\n const _platform = 'WeChat' ;\r\n let _hostName = result.hostName || _platform; // mp-jd\r\n {\r\n if (result.environment) {\r\n _hostName = result.environment;\r\n } else if (result.host && result.host.env) {\r\n _hostName = result.host.env;\r\n }\r\n }\r\n\r\n return _hostName\r\n}\r\n\r\nvar getSystemInfo = {\r\n returnValue: function (result) {\r\n useDeviceId(result);\r\n addSafeAreaInsets(result);\r\n populateParameters(result);\r\n }\r\n};\r\n\r\nvar showActionSheet = {\r\n args (fromArgs) {\r\n if (typeof fromArgs === 'object') {\r\n fromArgs.alertText = fromArgs.title;\r\n }\r\n }\r\n};\r\n\r\nvar getAppBaseInfo = {\r\n returnValue: function (result) {\r\n const { version, language, SDKVersion, theme } = result;\r\n\r\n const _hostName = getHostName(result);\r\n\r\n const hostLanguage = language.replace('_', '-');\r\n\r\n result = sortObject(Object.assign(result, {\r\n appId: process.env.UNI_APP_ID,\r\n appName: process.env.UNI_APP_NAME,\r\n appVersion: process.env.UNI_APP_VERSION_NAME,\r\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\r\n appLanguage: getAppLanguage(hostLanguage),\r\n hostVersion: version,\r\n hostLanguage,\r\n hostName: _hostName,\r\n hostSDKVersion: SDKVersion,\r\n hostTheme: theme\r\n }));\r\n }\r\n};\r\n\r\nvar getDeviceInfo = {\r\n returnValue: function (result) {\r\n const { brand, model } = result;\r\n const deviceType = getGetDeviceType(result, model);\r\n const deviceBrand = getDeviceBrand(brand);\r\n useDeviceId(result);\r\n\r\n result = sortObject(Object.assign(result, {\r\n deviceType,\r\n deviceBrand,\r\n deviceModel: model\r\n }));\r\n }\r\n};\r\n\r\nvar getWindowInfo = {\r\n returnValue: function (result) {\r\n addSafeAreaInsets(result);\r\n\r\n result = sortObject(Object.assign(result, {\r\n windowTop: 0,\r\n windowBottom: 0\r\n }));\r\n }\r\n};\r\n\r\nvar getAppAuthorizeSetting = {\r\n returnValue: function (result) {\r\n const { locationReducedAccuracy } = result;\r\n\r\n result.locationAccuracy = 'unsupported';\r\n if (locationReducedAccuracy === true) {\r\n result.locationAccuracy = 'reduced';\r\n } else if (locationReducedAccuracy === false) {\r\n result.locationAccuracy = 'full';\r\n }\r\n }\r\n};\r\n\r\n// import navigateTo from 'uni-helpers/navigate-to'\r\n\r\nconst compressImage = {\r\n args (fromArgs) {\r\n // https://developers.weixin.qq.com/community/develop/doc/000c08940c865011298e0a43256800?highLine=compressHeight\r\n if (fromArgs.compressedHeight && !fromArgs.compressHeight) {\r\n fromArgs.compressHeight = fromArgs.compressedHeight;\r\n }\r\n if (fromArgs.compressedWidth && !fromArgs.compressWidth) {\r\n fromArgs.compressWidth = fromArgs.compressedWidth;\r\n }\r\n }\r\n};\r\n\r\nconst protocols = {\r\n redirectTo,\r\n // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP\r\n previewImage,\r\n getSystemInfo,\r\n getSystemInfoSync: getSystemInfo,\r\n showActionSheet,\r\n getAppBaseInfo,\r\n getDeviceInfo,\r\n getWindowInfo,\r\n getAppAuthorizeSetting,\r\n compressImage\r\n};\r\nconst todos = [\r\n 'vibrate',\r\n 'preloadPage',\r\n 'unPreloadPage',\r\n 'loadSubPackage'\r\n];\r\nconst canIUses = [];\r\n\r\nconst CALLBACKS = ['success', 'fail', 'cancel', 'complete'];\r\n\r\nfunction processCallback (methodName, method, returnValue) {\r\n return function (res) {\r\n return method(processReturnValue(methodName, res, returnValue))\r\n }\r\n}\r\n\r\nfunction processArgs (methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {\r\n if (isPlainObject(fromArgs)) { // 一般 api 的参数解析\r\n const toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值\r\n if (isFn(argsOption)) {\r\n argsOption = argsOption(fromArgs, toArgs) || {};\r\n }\r\n for (const key in fromArgs) {\r\n if (hasOwn(argsOption, key)) {\r\n let keyOption = argsOption[key];\r\n if (isFn(keyOption)) {\r\n keyOption = keyOption(fromArgs[key], fromArgs, toArgs);\r\n }\r\n if (!keyOption) { // 不支持的参数\r\n console.warn(`The '${methodName}' method of platform '微信小程序' does not support option '${key}'`);\r\n } else if (isStr(keyOption)) { // 重写参数 key\r\n toArgs[keyOption] = fromArgs[key];\r\n } else if (isPlainObject(keyOption)) { // {name:newName,value:value}可重新指定参数 key:value\r\n toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;\r\n }\r\n } else if (CALLBACKS.indexOf(key) !== -1) {\r\n if (isFn(fromArgs[key])) {\r\n toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\r\n }\r\n } else {\r\n if (!keepFromArgs) {\r\n toArgs[key] = fromArgs[key];\r\n }\r\n }\r\n }\r\n return toArgs\r\n } else if (isFn(fromArgs)) {\r\n fromArgs = processCallback(methodName, fromArgs, returnValue);\r\n }\r\n return fromArgs\r\n}\r\n\r\nfunction processReturnValue (methodName, res, returnValue, keepReturnValue = false) {\r\n if (isFn(protocols.returnValue)) { // 处理通用 returnValue\r\n res = protocols.returnValue(methodName, res);\r\n }\r\n return processArgs(methodName, res, returnValue, {}, keepReturnValue)\r\n}\r\n\r\nfunction wrapper (methodName, method) {\r\n if (hasOwn(protocols, methodName)) {\r\n const protocol = protocols[methodName];\r\n if (!protocol) { // 暂不支持的 api\r\n return function () {\r\n console.error(`Platform '微信小程序' does not support '${methodName}'.`);\r\n }\r\n }\r\n return function (arg1, arg2) { // 目前 api 最多两个参数\r\n let options = protocol;\r\n if (isFn(protocol)) {\r\n options = protocol(arg1);\r\n }\r\n\r\n arg1 = processArgs(methodName, arg1, options.args, options.returnValue);\r\n\r\n const args = [arg1];\r\n if (typeof arg2 !== 'undefined') {\r\n args.push(arg2);\r\n }\r\n if (isFn(options.name)) {\r\n methodName = options.name(arg1);\r\n } else if (isStr(options.name)) {\r\n methodName = options.name;\r\n }\r\n const returnValue = wx[methodName].apply(wx, args);\r\n if (isSyncApi(methodName)) { // 同步 api\r\n return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName))\r\n }\r\n return returnValue\r\n }\r\n }\r\n return method\r\n}\r\n\r\nconst todoApis = Object.create(null);\r\n\r\nconst TODOS = [\r\n 'onTabBarMidButtonTap',\r\n 'subscribePush',\r\n 'unsubscribePush',\r\n 'onPush',\r\n 'offPush',\r\n 'share'\r\n];\r\n\r\nfunction createTodoApi (name) {\r\n return function todoApi ({\r\n fail,\r\n complete\r\n }) {\r\n const res = {\r\n errMsg: `${name}:fail method '${name}' not supported`\r\n };\r\n isFn(fail) && fail(res);\r\n isFn(complete) && complete(res);\r\n }\r\n}\r\n\r\nTODOS.forEach(function (name) {\r\n todoApis[name] = createTodoApi(name);\r\n});\r\n\r\nvar providers = {\r\n oauth: ['weixin'],\r\n share: ['weixin'],\r\n payment: ['wxpay'],\r\n push: ['weixin']\r\n};\r\n\r\nfunction getProvider ({\r\n service,\r\n success,\r\n fail,\r\n complete\r\n}) {\r\n let res = false;\r\n if (providers[service]) {\r\n res = {\r\n errMsg: 'getProvider:ok',\r\n service,\r\n provider: providers[service]\r\n };\r\n isFn(success) && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getProvider:fail service not found'\r\n };\r\n isFn(fail) && fail(res);\r\n }\r\n isFn(complete) && complete(res);\r\n}\r\n\r\nvar extraApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n getProvider: getProvider\r\n});\r\n\r\nconst getEmitter = (function () {\r\n let Emitter;\r\n return function getUniEmitter () {\r\n if (!Emitter) {\r\n Emitter = new Vue();\r\n }\r\n return Emitter\r\n }\r\n})();\r\n\r\nfunction apply (ctx, method, args) {\r\n return ctx[method].apply(ctx, args)\r\n}\r\n\r\nfunction $on () {\r\n return apply(getEmitter(), '$on', [...arguments])\r\n}\r\nfunction $off () {\r\n return apply(getEmitter(), '$off', [...arguments])\r\n}\r\nfunction $once () {\r\n return apply(getEmitter(), '$once', [...arguments])\r\n}\r\nfunction $emit () {\r\n return apply(getEmitter(), '$emit', [...arguments])\r\n}\r\n\r\nvar eventApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n $on: $on,\r\n $off: $off,\r\n $once: $once,\r\n $emit: $emit\r\n});\r\n\r\n/**\r\n * 框架内 try-catch\r\n */\r\n/**\r\n * 开发者 try-catch\r\n */\r\nfunction tryCatch (fn) {\r\n return function () {\r\n try {\r\n return fn.apply(fn, arguments)\r\n } catch (e) {\r\n // TODO\r\n console.error(e);\r\n }\r\n }\r\n}\r\n\r\nfunction getApiCallbacks (params) {\r\n const apiCallbacks = {};\r\n for (const name in params) {\r\n const param = params[name];\r\n if (isFn(param)) {\r\n apiCallbacks[name] = tryCatch(param);\r\n delete params[name];\r\n }\r\n }\r\n return apiCallbacks\r\n}\r\n\r\nlet cid;\r\nlet cidErrMsg;\r\nlet enabled;\r\n\r\nfunction normalizePushMessage (message) {\r\n try {\r\n return JSON.parse(message)\r\n } catch (e) {}\r\n return message\r\n}\r\n\r\nfunction invokePushCallback (\r\n args\r\n) {\r\n if (args.type === 'enabled') {\r\n enabled = true;\r\n } else if (args.type === 'clientId') {\r\n cid = args.cid;\r\n cidErrMsg = args.errMsg;\r\n invokeGetPushCidCallbacks(cid, args.errMsg);\r\n } else if (args.type === 'pushMsg') {\r\n const message = {\r\n type: 'receive',\r\n data: normalizePushMessage(args.message)\r\n };\r\n for (let i = 0; i < onPushMessageCallbacks.length; i++) {\r\n const callback = onPushMessageCallbacks[i];\r\n callback(message);\r\n // 该消息已被阻止\r\n if (message.stopped) {\r\n break\r\n }\r\n }\r\n } else if (args.type === 'click') {\r\n onPushMessageCallbacks.forEach((callback) => {\r\n callback({\r\n type: 'click',\r\n data: normalizePushMessage(args.message)\r\n });\r\n });\r\n }\r\n}\r\n\r\nconst getPushCidCallbacks = [];\r\n\r\nfunction invokeGetPushCidCallbacks (cid, errMsg) {\r\n getPushCidCallbacks.forEach((callback) => {\r\n callback(cid, errMsg);\r\n });\r\n getPushCidCallbacks.length = 0;\r\n}\r\n\r\nfunction getPushClientId (args) {\r\n if (!isPlainObject(args)) {\r\n args = {};\r\n }\r\n const {\r\n success,\r\n fail,\r\n complete\r\n } = getApiCallbacks(args);\r\n const hasSuccess = isFn(success);\r\n const hasFail = isFn(fail);\r\n const hasComplete = isFn(complete);\r\n\r\n Promise.resolve().then(() => {\r\n if (typeof enabled === 'undefined') {\r\n enabled = false;\r\n cid = '';\r\n cidErrMsg = 'uniPush is not enabled';\r\n }\r\n getPushCidCallbacks.push((cid, errMsg) => {\r\n let res;\r\n if (cid) {\r\n res = {\r\n errMsg: 'getPushClientId:ok',\r\n cid\r\n };\r\n hasSuccess && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')\r\n };\r\n hasFail && fail(res);\r\n }\r\n hasComplete && complete(res);\r\n });\r\n if (typeof cid !== 'undefined') {\r\n invokeGetPushCidCallbacks(cid, cidErrMsg);\r\n }\r\n });\r\n}\r\n\r\nconst onPushMessageCallbacks = [];\r\n// 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现\r\nconst onPushMessage = (fn) => {\r\n if (onPushMessageCallbacks.indexOf(fn) === -1) {\r\n onPushMessageCallbacks.push(fn);\r\n }\r\n};\r\n\r\nconst offPushMessage = (fn) => {\r\n if (!fn) {\r\n onPushMessageCallbacks.length = 0;\r\n } else {\r\n const index = onPushMessageCallbacks.indexOf(fn);\r\n if (index > -1) {\r\n onPushMessageCallbacks.splice(index, 1);\r\n }\r\n }\r\n};\r\n\r\nlet baseInfo = wx.getAppBaseInfo && wx.getAppBaseInfo();\r\nif (!baseInfo) {\r\n baseInfo = wx.getSystemInfoSync();\r\n}\r\nconst host = baseInfo ? baseInfo.host : null;\r\nconst shareVideoMessage =\r\n host && host.env === 'SAAASDK' ? wx.miniapp.shareVideoMessage : wx.shareVideoMessage;\r\n\r\nvar api = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n shareVideoMessage: shareVideoMessage,\r\n getPushClientId: getPushClientId,\r\n onPushMessage: onPushMessage,\r\n offPushMessage: offPushMessage,\r\n invokePushCallback: invokePushCallback\r\n});\r\n\r\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\r\n\r\nfunction findVmByVueId (vm, vuePid) {\r\n const $children = vm.$children;\r\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n const childVm = $children[i];\r\n if (childVm.$scope._$vueId === vuePid) {\r\n return childVm\r\n }\r\n }\r\n // 反向递归查找\r\n let parentVm;\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n parentVm = findVmByVueId($children[i], vuePid);\r\n if (parentVm) {\r\n return parentVm\r\n }\r\n }\r\n}\r\n\r\nfunction initBehavior (options) {\r\n return Behavior(options)\r\n}\r\n\r\nfunction isPage () {\r\n return !!this.route\r\n}\r\n\r\nfunction initRelation (detail) {\r\n this.triggerEvent('__l', detail);\r\n}\r\n\r\nfunction selectAllComponents (mpInstance, selector, $refs) {\r\n const components = mpInstance.selectAllComponents(selector) || [];\r\n components.forEach(component => {\r\n const ref = component.dataset.ref;\r\n $refs[ref] = component.$vm || toSkip(component);\r\n {\r\n if (component.dataset.vueGeneric === 'scoped') {\r\n component.selectAllComponents('.scoped-ref').forEach(scopedComponent => {\r\n selectAllComponents(scopedComponent, selector, $refs);\r\n });\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction syncRefs (refs, newRefs) {\r\n const oldKeys = new Set(...Object.keys(refs));\r\n const newKeys = Object.keys(newRefs);\r\n newKeys.forEach(key => {\r\n const oldValue = refs[key];\r\n const newValue = newRefs[key];\r\n if (Array.isArray(oldValue) && Array.isArray(newValue) && oldValue.length === newValue.length && newValue.every(value => oldValue.includes(value))) {\r\n return\r\n }\r\n refs[key] = newValue;\r\n oldKeys.delete(key);\r\n });\r\n oldKeys.forEach(key => {\r\n delete refs[key];\r\n });\r\n return refs\r\n}\r\n\r\nfunction initRefs (vm) {\r\n const mpInstance = vm.$scope;\r\n const refs = {};\r\n Object.defineProperty(vm, '$refs', {\r\n get () {\r\n const $refs = {};\r\n selectAllComponents(mpInstance, '.vue-ref', $refs);\r\n // TODO 暂不考虑 for 中的 scoped\r\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for') || [];\r\n forComponents.forEach(component => {\r\n const ref = component.dataset.ref;\r\n if (!$refs[ref]) {\r\n $refs[ref] = [];\r\n }\r\n $refs[ref].push(component.$vm || toSkip(component));\r\n });\r\n return syncRefs(refs, $refs)\r\n }\r\n });\r\n}\r\n\r\nfunction handleLink (event) {\r\n const {\r\n vuePid,\r\n vueOptions\r\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\r\n\r\n let parentVm;\r\n\r\n if (vuePid) {\r\n parentVm = findVmByVueId(this.$vm, vuePid);\r\n }\r\n\r\n if (!parentVm) {\r\n parentVm = this.$vm;\r\n }\r\n\r\n vueOptions.parent = parentVm;\r\n}\r\n\r\nfunction markMPComponent (component) {\r\n // 在 Vue 中标记为小程序组件\r\n const IS_MP = '__v_isMPComponent';\r\n Object.defineProperty(component, IS_MP, {\r\n configurable: true,\r\n enumerable: false,\r\n value: true\r\n });\r\n return component\r\n}\r\n\r\nfunction toSkip (obj) {\r\n const OB = '__ob__';\r\n const SKIP = '__v_skip';\r\n if (isObject(obj) && Object.isExtensible(obj)) {\r\n // 避免被 @vue/composition-api 观测\r\n Object.defineProperty(obj, OB, {\r\n configurable: true,\r\n enumerable: false,\r\n value: {\r\n [SKIP]: true\r\n }\r\n });\r\n }\r\n return obj\r\n}\r\n\r\nconst WORKLET_RE = /_(.*)_worklet_factory_/;\r\nfunction initWorkletMethods (mpMethods, vueMethods) {\r\n if (vueMethods) {\r\n Object.keys(vueMethods).forEach((name) => {\r\n const matches = name.match(WORKLET_RE);\r\n if (matches) {\r\n const workletName = matches[1];\r\n mpMethods[name] = vueMethods[name];\r\n mpMethods[workletName] = vueMethods[workletName];\r\n }\r\n });\r\n }\r\n}\r\n\r\nconst MPPage = Page;\r\nconst MPComponent = Component;\r\n\r\nconst customizeRE = /:/g;\r\n\r\nconst customize = cached((str) => {\r\n return camelize(str.replace(customizeRE, '-'))\r\n});\r\n\r\nfunction initTriggerEvent (mpInstance) {\r\n const oldTriggerEvent = mpInstance.triggerEvent;\r\n const newTriggerEvent = function (event, ...args) {\r\n // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件\r\n if (this.$vm || (this.dataset && this.dataset.comType)) {\r\n event = customize(event);\r\n } else {\r\n // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目\r\n const newEvent = customize(event);\r\n if (newEvent !== event) {\r\n oldTriggerEvent.apply(this, [newEvent, ...args]);\r\n }\r\n }\r\n return oldTriggerEvent.apply(this, [event, ...args])\r\n };\r\n try {\r\n // 京东小程序 triggerEvent 为只读\r\n mpInstance.triggerEvent = newTriggerEvent;\r\n } catch (error) {\r\n mpInstance._triggerEvent = newTriggerEvent;\r\n }\r\n}\r\n\r\nfunction initHook (name, options, isComponent) {\r\n const oldHook = options[name];\r\n options[name] = function (...args) {\r\n markMPComponent(this);\r\n initTriggerEvent(this);\r\n if (oldHook) {\r\n return oldHook.apply(this, args)\r\n }\r\n };\r\n}\r\nif (!MPPage.__$wrappered) {\r\n MPPage.__$wrappered = true;\r\n Page = function (options = {}) {\r\n initHook('onLoad', options);\r\n return MPPage(options)\r\n };\r\n Page.after = MPPage.after;\r\n\r\n Component = function (options = {}) {\r\n initHook('created', options);\r\n return MPComponent(options)\r\n };\r\n}\r\n\r\nconst PAGE_EVENT_HOOKS = [\r\n 'onPullDownRefresh',\r\n 'onReachBottom',\r\n 'onAddToFavorites',\r\n 'onShareTimeline',\r\n 'onShareAppMessage',\r\n 'onPageScroll',\r\n 'onResize',\r\n 'onTabItemTap'\r\n];\r\n\r\nfunction initMocks (vm, mocks) {\r\n const mpInstance = vm.$mp[vm.mpType];\r\n mocks.forEach(mock => {\r\n if (hasOwn(mpInstance, mock)) {\r\n vm[mock] = mpInstance[mock];\r\n }\r\n });\r\n}\r\n\r\nfunction hasHook (hook, vueOptions) {\r\n if (!vueOptions) {\r\n return true\r\n }\r\n\r\n if (Vue.options && Array.isArray(Vue.options[hook])) {\r\n return true\r\n }\r\n\r\n vueOptions = vueOptions.default || vueOptions;\r\n\r\n if (isFn(vueOptions)) {\r\n if (isFn(vueOptions.extendOptions[hook])) {\r\n return true\r\n }\r\n if (vueOptions.super &&\r\n vueOptions.super.options &&\r\n Array.isArray(vueOptions.super.options[hook])) {\r\n return true\r\n }\r\n return false\r\n }\r\n\r\n if (isFn(vueOptions[hook]) || Array.isArray(vueOptions[hook])) {\r\n return true\r\n }\r\n const mixins = vueOptions.mixins;\r\n if (Array.isArray(mixins)) {\r\n return !!mixins.find(mixin => hasHook(hook, mixin))\r\n }\r\n}\r\n\r\nfunction initHooks (mpOptions, hooks, vueOptions) {\r\n hooks.forEach(hook => {\r\n if (hasHook(hook, vueOptions)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n });\r\n}\r\n\r\nfunction initUnknownHooks (mpOptions, vueOptions, excludes = []) {\r\n findHooks(vueOptions).forEach((hook) => initHook$1(mpOptions, hook, excludes));\r\n}\r\n\r\nfunction findHooks (vueOptions, hooks = []) {\r\n if (vueOptions) {\r\n Object.keys(vueOptions).forEach((name) => {\r\n if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {\r\n hooks.push(name);\r\n }\r\n });\r\n }\r\n return hooks\r\n}\r\n\r\nfunction initHook$1 (mpOptions, hook, excludes) {\r\n if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n}\r\n\r\nfunction initVueComponent (Vue, vueOptions) {\r\n vueOptions = vueOptions.default || vueOptions;\r\n let VueComponent;\r\n if (isFn(vueOptions)) {\r\n VueComponent = vueOptions;\r\n } else {\r\n VueComponent = Vue.extend(vueOptions);\r\n }\r\n vueOptions = VueComponent.options;\r\n return [VueComponent, vueOptions]\r\n}\r\n\r\nfunction initSlots (vm, vueSlots) {\r\n if (Array.isArray(vueSlots) && vueSlots.length) {\r\n const $slots = Object.create(null);\r\n vueSlots.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n vm.$scopedSlots = vm.$slots = $slots;\r\n }\r\n}\r\n\r\nfunction initVueIds (vueIds, mpInstance) {\r\n vueIds = (vueIds || '').split(',');\r\n const len = vueIds.length;\r\n\r\n if (len === 1) {\r\n mpInstance._$vueId = vueIds[0];\r\n } else if (len === 2) {\r\n mpInstance._$vueId = vueIds[0];\r\n mpInstance._$vuePid = vueIds[1];\r\n }\r\n}\r\n\r\nfunction initData (vueOptions, context) {\r\n let data = vueOptions.data || {};\r\n const methods = vueOptions.methods || {};\r\n\r\n if (typeof data === 'function') {\r\n try {\r\n data = data.call(context); // 支持 Vue.prototype 上挂的数据\r\n } catch (e) {\r\n if (process.env.VUE_APP_DEBUG) {\r\n console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);\r\n }\r\n }\r\n } else {\r\n try {\r\n // 对 data 格式化\r\n data = JSON.parse(JSON.stringify(data));\r\n } catch (e) { }\r\n }\r\n\r\n if (!isPlainObject(data)) {\r\n data = {};\r\n }\r\n\r\n Object.keys(methods).forEach(methodName => {\r\n if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {\r\n data[methodName] = methods[methodName];\r\n }\r\n });\r\n\r\n return data\r\n}\r\n\r\nconst PROP_TYPES = [String, Number, Boolean, Object, Array, null];\r\n\r\nfunction createObserver (name) {\r\n return function observer (newVal, oldVal) {\r\n if (this.$vm) {\r\n this.$vm[name] = newVal; // 为了触发其他非 render watcher\r\n }\r\n }\r\n}\r\n\r\nfunction initBehaviors (vueOptions, initBehavior) {\r\n const vueBehaviors = vueOptions.behaviors;\r\n const vueExtends = vueOptions.extends;\r\n const vueMixins = vueOptions.mixins;\r\n\r\n let vueProps = vueOptions.props;\r\n\r\n if (!vueProps) {\r\n vueOptions.props = vueProps = [];\r\n }\r\n\r\n const behaviors = [];\r\n if (Array.isArray(vueBehaviors)) {\r\n vueBehaviors.forEach(behavior => {\r\n behaviors.push(behavior.replace('uni://', `${\"wx\"}://`));\r\n if (behavior === 'uni://form-field') {\r\n if (Array.isArray(vueProps)) {\r\n vueProps.push('name');\r\n vueProps.push('value');\r\n } else {\r\n vueProps.name = {\r\n type: String,\r\n default: ''\r\n };\r\n vueProps.value = {\r\n type: [String, Number, Boolean, Array, Object, Date],\r\n default: ''\r\n };\r\n }\r\n }\r\n });\r\n }\r\n if (isPlainObject(vueExtends) && vueExtends.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueExtends.props, true)\r\n })\r\n );\r\n }\r\n if (Array.isArray(vueMixins)) {\r\n vueMixins.forEach(vueMixin => {\r\n if (isPlainObject(vueMixin) && vueMixin.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueMixin.props, true)\r\n })\r\n );\r\n }\r\n });\r\n }\r\n return behaviors\r\n}\r\n\r\nfunction parsePropType (key, type, defaultValue, file) {\r\n // [String]=>String\r\n if (Array.isArray(type) && type.length === 1) {\r\n return type[0]\r\n }\r\n return type\r\n}\r\n\r\nfunction initProperties (props, isBehavior = false, file = '', options) {\r\n const properties = {};\r\n if (!isBehavior) {\r\n properties.vueId = {\r\n type: String,\r\n value: ''\r\n };\r\n {\r\n if ( options.virtualHost) {\r\n properties.virtualHostStyle = {\r\n type: null,\r\n value: ''\r\n };\r\n properties.virtualHostClass = {\r\n type: null,\r\n value: ''\r\n };\r\n }\r\n }\r\n // scopedSlotsCompiler auto\r\n properties.scopedSlotsCompiler = {\r\n type: String,\r\n value: ''\r\n };\r\n properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots\r\n type: null,\r\n value: [],\r\n observer: function (newVal, oldVal) {\r\n const $slots = Object.create(null);\r\n newVal.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n this.setData({\r\n $slots\r\n });\r\n }\r\n };\r\n }\r\n if (Array.isArray(props)) { // ['title']\r\n props.forEach(key => {\r\n properties[key] = {\r\n type: null,\r\n observer: createObserver(key)\r\n };\r\n });\r\n } else if (isPlainObject(props)) { // {title:{type:String,default:''},content:String}\r\n Object.keys(props).forEach(key => {\r\n const opts = props[key];\r\n if (isPlainObject(opts)) { // title:{type:String,default:''}\r\n let value = opts.default;\r\n if (isFn(value)) {\r\n value = value();\r\n }\r\n\r\n opts.type = parsePropType(key, opts.type);\r\n\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,\r\n value,\r\n observer: createObserver(key)\r\n };\r\n } else { // content:String\r\n const type = parsePropType(key, opts);\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(type) !== -1 ? type : null,\r\n observer: createObserver(key)\r\n };\r\n }\r\n });\r\n }\r\n return properties\r\n}\r\n\r\nfunction wrapper$1 (event) {\r\n // TODO 又得兼容 mpvue 的 mp 对象\r\n try {\r\n event.mp = JSON.parse(JSON.stringify(event));\r\n } catch (e) { }\r\n\r\n event.stopPropagation = noop;\r\n event.preventDefault = noop;\r\n\r\n event.target = event.target || {};\r\n\r\n if (!hasOwn(event, 'detail')) {\r\n event.detail = {};\r\n }\r\n\r\n if (hasOwn(event, 'markerId')) {\r\n event.detail = typeof event.detail === 'object' ? event.detail : {};\r\n event.detail.markerId = event.markerId;\r\n }\r\n\r\n if (isPlainObject(event.detail)) {\r\n event.target = Object.assign({}, event.target, event.detail);\r\n }\r\n\r\n return event\r\n}\r\n\r\nfunction getExtraValue (vm, dataPathsArray) {\r\n let context = vm;\r\n dataPathsArray.forEach(dataPathArray => {\r\n const dataPath = dataPathArray[0];\r\n const value = dataPathArray[2];\r\n if (dataPath || typeof value !== 'undefined') { // ['','',index,'disable']\r\n const propPath = dataPathArray[1];\r\n const valuePath = dataPathArray[3];\r\n\r\n let vFor;\r\n if (Number.isInteger(dataPath)) {\r\n vFor = dataPath;\r\n } else if (!dataPath) {\r\n vFor = context;\r\n } else if (typeof dataPath === 'string' && dataPath) {\r\n if (dataPath.indexOf('#s#') === 0) {\r\n vFor = dataPath.substr(3);\r\n } else {\r\n vFor = vm.__get_value(dataPath, context);\r\n }\r\n }\r\n\r\n if (Number.isInteger(vFor)) {\r\n context = value;\r\n } else if (!propPath) {\r\n context = vFor[value];\r\n } else {\r\n if (Array.isArray(vFor)) {\r\n context = vFor.find(vForItem => {\r\n return vm.__get_value(propPath, vForItem) === value\r\n });\r\n } else if (isPlainObject(vFor)) {\r\n context = Object.keys(vFor).find(vForKey => {\r\n return vm.__get_value(propPath, vFor[vForKey]) === value\r\n });\r\n } else {\r\n console.error('v-for 暂不支持循环数据:', vFor);\r\n }\r\n }\r\n\r\n if (valuePath) {\r\n context = vm.__get_value(valuePath, context);\r\n }\r\n }\r\n });\r\n return context\r\n}\r\n\r\nfunction processEventExtra (vm, extra, event, __args__) {\r\n const extraObj = {};\r\n\r\n if (Array.isArray(extra) && extra.length) {\r\n /**\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *'test'\r\n */\r\n extra.forEach((dataPath, index) => {\r\n if (typeof dataPath === 'string') {\r\n if (!dataPath) { // model,prop.sync\r\n extraObj['$' + index] = vm;\r\n } else {\r\n if (dataPath === '$event') { // $event\r\n extraObj['$' + index] = event;\r\n } else if (dataPath === 'arguments') {\r\n extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;\r\n } else if (dataPath.indexOf('$event.') === 0) { // $event.target.value\r\n extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);\r\n } else {\r\n extraObj['$' + index] = vm.__get_value(dataPath);\r\n }\r\n }\r\n } else {\r\n extraObj['$' + index] = getExtraValue(vm, dataPath);\r\n }\r\n });\r\n }\r\n\r\n return extraObj\r\n}\r\n\r\nfunction getObjByArray (arr) {\r\n const obj = {};\r\n for (let i = 1; i < arr.length; i++) {\r\n const element = arr[i];\r\n obj[element[0]] = element[1];\r\n }\r\n return obj\r\n}\r\n\r\nfunction processEventArgs (vm, event, args = [], extra = [], isCustom, methodName) {\r\n let isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象\r\n\r\n // fixed 用户直接触发 mpInstance.triggerEvent\r\n const __args__ = isPlainObject(event.detail)\r\n ? event.detail.__args__ || [event.detail]\r\n : [event.detail];\r\n\r\n if (isCustom) { // 自定义事件\r\n isCustomMPEvent = event.currentTarget &&\r\n event.currentTarget.dataset &&\r\n event.currentTarget.dataset.comType === 'wx';\r\n if (!args.length) { // 无参数,直接传入 event 或 detail 数组\r\n if (isCustomMPEvent) {\r\n return [event]\r\n }\r\n return __args__\r\n }\r\n }\r\n\r\n const extraObj = processEventExtra(vm, extra, event, __args__);\r\n\r\n const ret = [];\r\n args.forEach(arg => {\r\n if (arg === '$event') {\r\n if (methodName === '__set_model' && !isCustom) { // input v-model value\r\n ret.push(event.target.value);\r\n } else {\r\n if (isCustom && !isCustomMPEvent) {\r\n ret.push(__args__[0]);\r\n } else { // wxcomponent 组件或内置组件\r\n ret.push(event);\r\n }\r\n }\r\n } else {\r\n if (Array.isArray(arg) && arg[0] === 'o') {\r\n ret.push(getObjByArray(arg));\r\n } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {\r\n ret.push(extraObj[arg]);\r\n } else {\r\n ret.push(arg);\r\n }\r\n }\r\n });\r\n\r\n return ret\r\n}\r\n\r\nconst ONCE = '~';\r\nconst CUSTOM = '^';\r\n\r\nfunction isMatchEventType (eventType, optType) {\r\n return (eventType === optType) ||\r\n (\r\n optType === 'regionchange' &&\r\n (\r\n eventType === 'begin' ||\r\n eventType === 'end'\r\n )\r\n )\r\n}\r\n\r\nfunction getContextVm (vm) {\r\n let $parent = vm.$parent;\r\n // 父组件是 scoped slots 或者其他自定义组件时继续查找\r\n while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {\r\n $parent = $parent.$parent;\r\n }\r\n return $parent && $parent.$parent\r\n}\r\n\r\nfunction handleEvent (event) {\r\n event = wrapper$1(event);\r\n\r\n // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]\r\n const dataset = (event.currentTarget || event.target).dataset;\r\n if (!dataset) {\r\n return console.warn('事件信息不存在')\r\n }\r\n const eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰\r\n if (!eventOpts) {\r\n return console.warn('事件信息不存在')\r\n }\r\n\r\n // [['handle',[1,2,a]],['handle1',[1,2,a]]]\r\n const eventType = event.type;\r\n\r\n const ret = [];\r\n\r\n eventOpts.forEach(eventOpt => {\r\n let type = eventOpt[0];\r\n const eventsArray = eventOpt[1];\r\n\r\n const isCustom = type.charAt(0) === CUSTOM;\r\n type = isCustom ? type.slice(1) : type;\r\n const isOnce = type.charAt(0) === ONCE;\r\n type = isOnce ? type.slice(1) : type;\r\n\r\n if (eventsArray && isMatchEventType(eventType, type)) {\r\n eventsArray.forEach(eventArray => {\r\n const methodName = eventArray[0];\r\n if (methodName) {\r\n let handlerCtx = this.$vm;\r\n if (handlerCtx.$options.generic) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\r\n handlerCtx = getContextVm(handlerCtx) || handlerCtx;\r\n }\r\n if (methodName === '$emit') {\r\n handlerCtx.$emit.apply(handlerCtx,\r\n processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n ));\r\n return\r\n }\r\n const handler = handlerCtx[methodName];\r\n if (!isFn(handler)) {\r\n const type = this.$vm.mpType === 'page' ? 'Page' : 'Component';\r\n const path = this.route || this.is;\r\n throw new Error(`${type} \"${path}\" does not have a method \"${methodName}\"`)\r\n }\r\n if (isOnce) {\r\n if (handler.once) {\r\n return\r\n }\r\n handler.once = true;\r\n }\r\n let params = processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n );\r\n params = Array.isArray(params) ? params : [];\r\n // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据\r\n if (/=\\s*\\S+\\.eventParams\\s*\\|\\|\\s*\\S+\\[['\"]event-params['\"]\\]/.test(handler.toString())) {\r\n // eslint-disable-next-line no-sparse-arrays\r\n params = params.concat([, , , , , , , , , , event]);\r\n }\r\n ret.push(handler.apply(handlerCtx, params));\r\n }\r\n });\r\n }\r\n });\r\n\r\n if (\r\n eventType === 'input' &&\r\n ret.length === 1 &&\r\n typeof ret[0] !== 'undefined'\r\n ) {\r\n return ret[0]\r\n }\r\n}\r\n\r\nconst eventChannels = {};\r\n\r\nfunction getEventChannel (id) {\r\n const eventChannel = eventChannels[id];\r\n delete eventChannels[id];\r\n return eventChannel\r\n}\r\n\r\nconst hooks = [\r\n 'onShow',\r\n 'onHide',\r\n 'onError',\r\n 'onPageNotFound',\r\n 'onThemeChange',\r\n 'onUnhandledRejection'\r\n];\r\n\r\nfunction initEventChannel () {\r\n Vue.prototype.getOpenerEventChannel = function () {\r\n // 微信小程序使用自身getOpenerEventChannel\r\n {\r\n return this.$scope.getOpenerEventChannel()\r\n }\r\n };\r\n const callHook = Vue.prototype.__call_hook;\r\n Vue.prototype.__call_hook = function (hook, args) {\r\n if (hook === 'onLoad' && args && args.__id__) {\r\n this.__eventChannel__ = getEventChannel(args.__id__);\r\n delete args.__id__;\r\n }\r\n return callHook.call(this, hook, args)\r\n };\r\n}\r\n\r\nfunction initScopedSlotsParams () {\r\n const center = {};\r\n const parents = {};\r\n\r\n function currentId (fn) {\r\n const vueIds = this.$options.propsData.vueId;\r\n if (vueIds) {\r\n const vueId = vueIds.split(',')[0];\r\n fn(vueId);\r\n }\r\n }\r\n\r\n Vue.prototype.$hasSSP = function (vueId) {\r\n const slot = center[vueId];\r\n if (!slot) {\r\n parents[vueId] = this;\r\n this.$on('hook:destroyed', () => {\r\n delete parents[vueId];\r\n });\r\n }\r\n return slot\r\n };\r\n\r\n Vue.prototype.$getSSP = function (vueId, name, needAll) {\r\n const slot = center[vueId];\r\n if (slot) {\r\n const params = slot[name] || [];\r\n if (needAll) {\r\n return params\r\n }\r\n return params[0]\r\n }\r\n };\r\n\r\n Vue.prototype.$setSSP = function (name, value) {\r\n let index = 0;\r\n currentId.call(this, vueId => {\r\n const slot = center[vueId];\r\n const params = slot[name] = slot[name] || [];\r\n params.push(value);\r\n index = params.length - 1;\r\n });\r\n return index\r\n };\r\n\r\n Vue.prototype.$initSSP = function () {\r\n currentId.call(this, vueId => {\r\n center[vueId] = {};\r\n });\r\n };\r\n\r\n Vue.prototype.$callSSP = function () {\r\n currentId.call(this, vueId => {\r\n if (parents[vueId]) {\r\n parents[vueId].$forceUpdate();\r\n }\r\n });\r\n };\r\n\r\n Vue.mixin({\r\n destroyed () {\r\n const propsData = this.$options.propsData;\r\n const vueId = propsData && propsData.vueId;\r\n if (vueId) {\r\n delete center[vueId];\r\n delete parents[vueId];\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction parseBaseApp (vm, {\r\n mocks,\r\n initRefs\r\n}) {\r\n initEventChannel();\r\n {\r\n initScopedSlotsParams();\r\n }\r\n if (vm.$options.store) {\r\n Vue.prototype.$store = vm.$options.store;\r\n }\r\n uniIdMixin(Vue);\r\n\r\n Vue.prototype.mpHost = \"mp-weixin\";\r\n\r\n Vue.mixin({\r\n beforeCreate () {\r\n if (!this.$options.mpType) {\r\n return\r\n }\r\n\r\n this.mpType = this.$options.mpType;\r\n\r\n this.$mp = {\r\n data: {},\r\n [this.mpType]: this.$options.mpInstance\r\n };\r\n\r\n this.$scope = this.$options.mpInstance;\r\n\r\n delete this.$options.mpType;\r\n delete this.$options.mpInstance;\r\n if (\r\n ( this.mpType === 'page') &&\r\n typeof getApp === 'function'\r\n ) { // hack vue-i18n\r\n const app = getApp();\r\n if (app.$vm && app.$vm.$i18n) {\r\n this._i18n = app.$vm.$i18n;\r\n }\r\n }\r\n if (this.mpType !== 'app') {\r\n initRefs(this);\r\n initMocks(this, mocks);\r\n }\r\n }\r\n });\r\n\r\n const appOptions = {\r\n onLaunch (args) {\r\n if (this.$vm) { // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前\r\n return\r\n }\r\n {\r\n if (wx.canIUse && !wx.canIUse('nextTick')) { // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断\r\n console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');\r\n }\r\n }\r\n\r\n this.$vm = vm;\r\n\r\n this.$vm.$mp = {\r\n app: this\r\n };\r\n\r\n this.$vm.$scope = this;\r\n // vm 上也挂载 globalData\r\n this.$vm.globalData = this.globalData;\r\n\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted', args);\r\n\r\n this.$vm.__call_hook('onLaunch', args);\r\n }\r\n };\r\n\r\n // 兼容旧版本 globalData\r\n appOptions.globalData = vm.$options.globalData || {};\r\n // 将 methods 中的方法挂在 getApp() 中\r\n const methods = vm.$options.methods;\r\n if (methods) {\r\n Object.keys(methods).forEach(name => {\r\n appOptions[name] = methods[name];\r\n });\r\n }\r\n\r\n initAppLocale(Vue, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);\r\n\r\n initHooks(appOptions, hooks);\r\n initUnknownHooks(appOptions, vm.$options);\r\n\r\n return appOptions\r\n}\r\n\r\nfunction parseApp (vm) {\r\n return parseBaseApp(vm, {\r\n mocks,\r\n initRefs\r\n })\r\n}\r\n\r\nfunction createApp (vm) {\r\n App(parseApp(vm));\r\n return vm\r\n}\r\n\r\nconst encodeReserveRE = /[!'()*]/g;\r\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16);\r\nconst commaRE = /%2C/g;\r\n\r\n// fixed encodeURIComponent which is more conformant to RFC3986:\r\n// - escapes [!'()*]\r\n// - preserve commas\r\nconst encode = str => encodeURIComponent(str)\r\n .replace(encodeReserveRE, encodeReserveReplacer)\r\n .replace(commaRE, ',');\r\n\r\nfunction stringifyQuery (obj, encodeStr = encode) {\r\n const res = obj ? Object.keys(obj).map(key => {\r\n const val = obj[key];\r\n\r\n if (val === undefined) {\r\n return ''\r\n }\r\n\r\n if (val === null) {\r\n return encodeStr(key)\r\n }\r\n\r\n if (Array.isArray(val)) {\r\n const result = [];\r\n val.forEach(val2 => {\r\n if (val2 === undefined) {\r\n return\r\n }\r\n if (val2 === null) {\r\n result.push(encodeStr(key));\r\n } else {\r\n result.push(encodeStr(key) + '=' + encodeStr(val2));\r\n }\r\n });\r\n return result.join('&')\r\n }\r\n\r\n return encodeStr(key) + '=' + encodeStr(val)\r\n }).filter(x => x.length > 0).join('&') : null;\r\n return res ? `?${res}` : ''\r\n}\r\n\r\nfunction parseBaseComponent (vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n} = {}, needVueOptions) {\r\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\r\n\r\n const options = {\r\n multipleSlots: true,\r\n // styleIsolation: 'apply-shared',\r\n addGlobalClass: true,\r\n ...(vueOptions.options || {})\r\n };\r\n\r\n {\r\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\r\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\r\n Object.assign(options, vueOptions['mp-weixin'].options);\r\n }\r\n }\r\n\r\n const componentOptions = {\r\n options,\r\n data: initData(vueOptions, Vue.prototype),\r\n behaviors: initBehaviors(vueOptions, initBehavior),\r\n properties: initProperties(vueOptions.props, false, vueOptions.__file, options),\r\n lifetimes: {\r\n attached () {\r\n const properties = this.properties;\r\n\r\n const options = {\r\n mpType: isPage.call(this) ? 'page' : 'component',\r\n mpInstance: this,\r\n propsData: properties\r\n };\r\n\r\n initVueIds(properties.vueId, this);\r\n\r\n // 处理父子关系\r\n initRelation.call(this, {\r\n vuePid: this._$vuePid,\r\n vueOptions: options\r\n });\r\n\r\n // 初始化 vue 实例\r\n this.$vm = new VueComponent(options);\r\n\r\n // 处理$slots,$scopedSlots(暂不支持动态变化$slots)\r\n initSlots(this.$vm, properties.vueSlots);\r\n\r\n // 触发首次 setData\r\n this.$vm.$mount();\r\n },\r\n ready () {\r\n // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发\r\n // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800\r\n if (this.$vm) {\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted');\r\n this.$vm.__call_hook('onReady');\r\n }\r\n },\r\n detached () {\r\n this.$vm && this.$vm.$destroy();\r\n }\r\n },\r\n pageLifetimes: {\r\n show (args) {\r\n this.$vm && this.$vm.__call_hook('onPageShow', args);\r\n },\r\n hide () {\r\n this.$vm && this.$vm.__call_hook('onPageHide');\r\n },\r\n resize (size) {\r\n this.$vm && this.$vm.__call_hook('onPageResize', size);\r\n }\r\n },\r\n methods: {\r\n __l: handleLink,\r\n __e: handleEvent\r\n }\r\n };\r\n // externalClasses\r\n if (vueOptions.externalClasses) {\r\n componentOptions.externalClasses = vueOptions.externalClasses;\r\n }\r\n\r\n if (Array.isArray(vueOptions.wxsCallMethods)) {\r\n vueOptions.wxsCallMethods.forEach(callMethod => {\r\n componentOptions.methods[callMethod] = function (args) {\r\n return this.$vm[callMethod](args)\r\n };\r\n });\r\n }\r\n\r\n if (needVueOptions) {\r\n return [componentOptions, vueOptions, VueComponent]\r\n }\r\n if (isPage) {\r\n return componentOptions\r\n }\r\n return [componentOptions, VueComponent]\r\n}\r\n\r\nfunction parseComponent (vueComponentOptions, needVueOptions) {\r\n return parseBaseComponent(vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n }, needVueOptions)\r\n}\r\n\r\nconst hooks$1 = [\r\n 'onShow',\r\n 'onHide',\r\n 'onUnload'\r\n];\r\n\r\nhooks$1.push(...PAGE_EVENT_HOOKS);\r\n\r\nfunction parseBasePage (vuePageOptions) {\r\n const [pageOptions, vueOptions] = parseComponent(vuePageOptions, true);\r\n\r\n initHooks(pageOptions.methods, hooks$1, vueOptions);\r\n\r\n pageOptions.methods.onLoad = function (query) {\r\n this.options = query;\r\n const copyQuery = Object.assign({}, query);\r\n delete copyQuery.__id__;\r\n this.$page = {\r\n fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)\r\n };\r\n this.$vm.$mp.query = query; // 兼容 mpvue\r\n this.$vm.__call_hook('onLoad', query);\r\n };\r\n {\r\n initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);\r\n }\r\n {\r\n initWorkletMethods(pageOptions.methods, vueOptions.methods);\r\n }\r\n\r\n return pageOptions\r\n}\r\n\r\nfunction parsePage (vuePageOptions) {\r\n return parseBasePage(vuePageOptions)\r\n}\r\n\r\nfunction createPage (vuePageOptions) {\r\n {\r\n return Component(parsePage(vuePageOptions))\r\n }\r\n}\r\n\r\nfunction createComponent (vueOptions) {\r\n {\r\n return Component(parseComponent(vueOptions))\r\n }\r\n}\r\n\r\nfunction createSubpackageApp (vm) {\r\n const appOptions = parseApp(vm);\r\n const app = getApp({\r\n allowDefault: true\r\n });\r\n vm.$scope = app;\r\n const globalData = app.globalData;\r\n if (globalData) {\r\n Object.keys(appOptions.globalData).forEach(name => {\r\n if (!hasOwn(globalData, name)) {\r\n globalData[name] = appOptions.globalData[name];\r\n }\r\n });\r\n }\r\n Object.keys(appOptions).forEach(name => {\r\n if (!hasOwn(app, name)) {\r\n app[name] = appOptions[name];\r\n }\r\n });\r\n if (isFn(appOptions.onShow) && wx.onAppShow) {\r\n wx.onAppShow((...args) => {\r\n vm.__call_hook('onShow', args);\r\n });\r\n }\r\n if (isFn(appOptions.onHide) && wx.onAppHide) {\r\n wx.onAppHide((...args) => {\r\n vm.__call_hook('onHide', args);\r\n });\r\n }\r\n if (isFn(appOptions.onLaunch)) {\r\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\r\n vm.__call_hook('onLaunch', args);\r\n }\r\n return vm\r\n}\r\n\r\nfunction createPlugin (vm) {\r\n const appOptions = parseApp(vm);\r\n if (isFn(appOptions.onShow) && wx.onAppShow) {\r\n wx.onAppShow((...args) => {\r\n vm.__call_hook('onShow', args);\r\n });\r\n }\r\n if (isFn(appOptions.onHide) && wx.onAppHide) {\r\n wx.onAppHide((...args) => {\r\n vm.__call_hook('onHide', args);\r\n });\r\n }\r\n if (isFn(appOptions.onLaunch)) {\r\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\r\n vm.__call_hook('onLaunch', args);\r\n }\r\n return vm\r\n}\r\n\r\ntodos.forEach(todoApi => {\r\n protocols[todoApi] = false;\r\n});\r\n\r\ncanIUses.forEach(canIUseApi => {\r\n const apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name\r\n : canIUseApi;\r\n if (!wx.canIUse(apiName)) {\r\n protocols[canIUseApi] = false;\r\n }\r\n});\r\n\r\nlet uni = {};\r\n\r\nif (typeof Proxy !== 'undefined' && \"mp-weixin\" !== 'app-plus') {\r\n uni = new Proxy({}, {\r\n get (target, name) {\r\n if (hasOwn(target, name)) {\r\n return target[name]\r\n }\r\n if (baseApi[name]) {\r\n return baseApi[name]\r\n }\r\n if (api[name]) {\r\n return promisify(name, api[name])\r\n }\r\n {\r\n if (extraApi[name]) {\r\n return promisify(name, extraApi[name])\r\n }\r\n if (todoApis[name]) {\r\n return promisify(name, todoApis[name])\r\n }\r\n }\r\n if (eventApi[name]) {\r\n return eventApi[name]\r\n }\r\n return promisify(name, wrapper(name, wx[name]))\r\n },\r\n set (target, name, value) {\r\n target[name] = value;\r\n return true\r\n }\r\n });\r\n} else {\r\n Object.keys(baseApi).forEach(name => {\r\n uni[name] = baseApi[name];\r\n });\r\n\r\n {\r\n Object.keys(todoApis).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n Object.keys(extraApi).forEach(name => {\r\n uni[name] = promisify(name, extraApi[name]);\r\n });\r\n }\r\n\r\n Object.keys(eventApi).forEach(name => {\r\n uni[name] = eventApi[name];\r\n });\r\n\r\n Object.keys(api).forEach(name => {\r\n uni[name] = promisify(name, api[name]);\r\n });\r\n\r\n Object.keys(wx).forEach(name => {\r\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\r\n uni[name] = promisify(name, wrapper(name, wx[name]));\r\n }\r\n });\r\n}\r\n\r\nwx.createApp = createApp;\r\nwx.createPage = createPage;\r\nwx.createComponent = createComponent;\r\nwx.createSubpackageApp = createSubpackageApp;\r\nwx.createPlugin = createPlugin;\r\n\r\nvar uni$1 = uni;\r\n\r\nexport default uni$1;\r\nexport { createApp, createComponent, createPage, createPlugin, createSubpackageApp };\r\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","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;","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(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\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++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","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(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\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(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\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 try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (module.exports = _isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports)();\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;","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;","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 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 = Array.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 === '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 let locales = [LOCALE_EN, LOCALE_FR, LOCALE_ES];\n if (messages && Object.keys(messages).length > 0) {\n locales = Object.keys(messages);\n }\n const lang = startsWith(locale, locales);\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 (Array.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-2023 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)\r\nfunction extractPropertiesFromVNodeData(data, Ctor, res, context) {\r\n var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;\r\n if (isUndef(propOptions)) {\r\n return res\r\n }\n var externalClasses = Ctor.options.mpOptions.externalClasses || [];\r\n var attrs = data.attrs;\n var props = data.props;\r\n if (isDef(attrs) || isDef(props)) {\r\n for (var key in propOptions) {\r\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 }\r\n }\r\n }\r\n return res\r\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/* */\r\n\r\nfunction flushCallbacks$1(vm) {\r\n if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {\r\n if (process.env.VUE_APP_DEBUG) {\r\n var mpInstance = vm.$scope;\r\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +\r\n ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');\r\n }\r\n var copies = vm.__next_tick_callbacks.slice(0);\r\n vm.__next_tick_callbacks.length = 0;\r\n for (var i = 0; i < copies.length; i++) {\r\n copies[i]();\r\n }\r\n }\r\n}\r\n\r\nfunction hasRenderWatcher(vm) {\r\n return queue.find(function (watcher) { return vm._watcher === watcher; })\r\n}\r\n\r\nfunction nextTick$1(vm, cb) {\r\n //1.nextTick 之前 已 setData 且 setData 还未回调完成\r\n //2.nextTick 之前存在 render watcher\r\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 }\r\n return nextTick(cb, vm)\r\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 }\r\n var _resolve;\r\n if (!vm.__next_tick_callbacks) {\r\n vm.__next_tick_callbacks = [];\r\n }\r\n vm.__next_tick_callbacks.push(function () {\r\n if (cb) {\r\n try {\r\n cb.call(vm);\r\n } catch (e) {\r\n handleError(e, vm, 'nextTick');\r\n }\r\n } else if (_resolve) {\r\n _resolve(vm);\r\n }\r\n });\r\n // $flow-disable-line\r\n if (!cb && typeof Promise !== 'undefined') {\r\n return new Promise(function (resolve) {\r\n _resolve = resolve;\r\n })\r\n }\r\n}\n\n/* */\r\n\r\nfunction clearInstance(key, value) {\r\n // 简易去除 Vue 和小程序组件实例\r\n if (value) {\r\n if (value._isVue || value.__v_isMPComponent) {\r\n return {}\r\n }\r\n }\r\n return value\r\n}\r\n\r\nfunction cloneWithData(vm) {\r\n // 确保当前 vm 所有数据被同步\r\n var ret = Object.create(null);\r\n var dataKeys = [].concat(\r\n Object.keys(vm._data || {}),\r\n Object.keys(vm._computedWatchers || {}));\r\n\r\n dataKeys.reduce(function(ret, key) {\r\n ret[key] = vm[key];\r\n return ret\r\n }, ret);\r\n\r\n // vue-composition-api\r\n var compositionApiState = vm.__composition_api_state__ || vm.__secret_vfa_state__;\r\n var rawBindings = compositionApiState && compositionApiState.rawBindings;\r\n if (rawBindings) {\r\n Object.keys(rawBindings).forEach(function (key) {\r\n ret[key] = vm[key];\r\n });\r\n }\r\n\r\n //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据\r\n Object.assign(ret, vm.$mp.data || {});\r\n if (\r\n Array.isArray(vm.$options.behaviors) &&\r\n vm.$options.behaviors.indexOf('uni://form-field') !== -1\r\n ) { //form-field\r\n ret['name'] = vm.name;\r\n ret['value'] = vm.value;\r\n }\r\n\r\n return JSON.parse(JSON.stringify(ret, clearInstance))\r\n}\r\n\r\nvar patch = function(oldVnode, vnode) {\n var this$1 = this;\n\r\n if (vnode === null) { //destroy\r\n return\r\n }\r\n if (this.mpType === 'page' || this.mpType === 'component') {\r\n var mpInstance = this.$scope;\r\n var data = Object.create(null);\r\n try {\r\n data = cloneWithData(this);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n data.__webviewId__ = mpInstance.data.__webviewId__;\r\n var mpData = Object.create(null);\r\n Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据\r\n mpData[key] = mpInstance.data[key];\r\n });\r\n var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);\r\n if (Object.keys(diffData).length) {\r\n if (process.env.VUE_APP_DEBUG) {\r\n console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +\r\n ']差量更新',\r\n JSON.stringify(diffData));\r\n }\r\n this.__next_tick_pending = true;\r\n mpInstance.setData(diffData, function () {\r\n this$1.__next_tick_pending = false;\r\n flushCallbacks$1(this$1);\r\n });\r\n } else {\r\n flushCallbacks$1(this);\r\n }\r\n }\r\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/* */\r\n\r\nvar MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];\r\n\r\nfunction getTarget(obj, path) {\r\n var parts = path.split('.');\r\n var key = parts[0];\r\n if (key.indexOf('__$n') === 0) { //number index\r\n key = parseInt(key.replace('__$n', ''));\r\n }\r\n if (parts.length === 1) {\r\n return obj[key]\r\n }\r\n return getTarget(obj[key], parts.slice(1).join('.'))\r\n}\r\n\r\nfunction internalMixin(Vue) {\r\n\r\n Vue.config.errorHandler = function(err, vm, info) {\r\n Vue.util.warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\r\n console.error(err);\r\n /* eslint-disable no-undef */\r\n var app = typeof getApp === 'function' && getApp();\r\n if (app && app.onError) {\r\n app.onError(err);\r\n }\r\n };\r\n\r\n var oldEmit = Vue.prototype.$emit;\r\n\r\n Vue.prototype.$emit = function(event) {\r\n if (this.$scope && event) {\r\n var triggerEvent = this.$scope['_triggerEvent'] || this.$scope['triggerEvent'];\r\n if (triggerEvent) {\r\n try {\r\n triggerEvent.call(this.$scope, event, {\r\n __args__: toArray(arguments, 1)\r\n });\r\n } catch (error) {\r\n\r\n }\r\n }\r\n }\r\n return oldEmit.apply(this, arguments)\r\n };\r\n\r\n Vue.prototype.$nextTick = function(fn) {\r\n return nextTick$1(this, fn)\r\n };\r\n\r\n MP_METHODS.forEach(function (method) {\r\n Vue.prototype[method] = function(args) {\r\n if (this.$scope && this.$scope[method]) {\r\n return this.$scope[method](args)\r\n }\r\n // mp-alipay\r\n if (typeof my === 'undefined') {\r\n return\r\n }\r\n if (method === 'createSelectorQuery') {\r\n /* eslint-disable no-undef */\r\n return my.createSelectorQuery(args)\r\n } else if (method === 'createIntersectionObserver') {\r\n /* eslint-disable no-undef */\r\n return my.createIntersectionObserver(args)\r\n }\r\n // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent\r\n };\r\n });\r\n\r\n Vue.prototype.__init_provide = initProvide;\r\n\r\n Vue.prototype.__init_injections = initInjections;\r\n\r\n Vue.prototype.__call_hook = function(hook, args) {\r\n var vm = this;\r\n // #7573 disable dep collection when invoking lifecycle hooks\r\n pushTarget();\r\n var handlers = vm.$options[hook];\r\n var info = hook + \" hook\";\r\n var ret;\r\n if (handlers) {\r\n for (var i = 0, j = handlers.length; i < j; i++) {\r\n ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);\r\n }\r\n }\r\n if (vm._hasHookEvent) {\r\n vm.$emit('hook:' + hook, args);\r\n }\r\n popTarget();\r\n return ret\r\n };\r\n\r\n Vue.prototype.__set_model = function(target, key, value, modifiers) {\r\n if (Array.isArray(modifiers)) {\r\n if (modifiers.indexOf('trim') !== -1) {\r\n value = value.trim();\r\n }\r\n if (modifiers.indexOf('number') !== -1) {\r\n value = this._n(value);\r\n }\r\n }\r\n if (!target) {\r\n target = this;\r\n }\r\n // 解决动态属性添加\r\n Vue.set(target, key, value);\r\n };\r\n\r\n Vue.prototype.__set_sync = function(target, key, value) {\r\n if (!target) {\r\n target = this;\r\n }\r\n // 解决动态属性添加\r\n Vue.set(target, key, value);\r\n };\r\n\r\n Vue.prototype.__get_orig = function(item) {\r\n if (isPlainObject(item)) {\r\n return item['$orig'] || item\r\n }\r\n return item\r\n };\r\n\r\n Vue.prototype.__get_value = function(dataPath, target) {\r\n return getTarget(target || this, dataPath)\r\n };\r\n\r\n\r\n Vue.prototype.__get_class = function(dynamicClass, staticClass) {\r\n return renderClass(staticClass, dynamicClass)\r\n };\r\n\r\n Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {\r\n if (!dynamicStyle && !staticStyle) {\r\n return ''\r\n }\r\n var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);\r\n var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;\r\n return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + \":\" + (styleObj[name])); }).join(';')\r\n };\r\n\r\n Vue.prototype.__map = function(val, iteratee) {\r\n //TODO 暂不考虑 string\r\n var ret, i, l, keys, key;\r\n if (Array.isArray(val)) {\r\n ret = new Array(val.length);\r\n for (i = 0, l = val.length; i < l; i++) {\r\n ret[i] = iteratee(val[i], i);\r\n }\r\n return ret\r\n } else if (isObject(val)) {\r\n keys = Object.keys(val);\r\n ret = Object.create(null);\r\n for (i = 0, l = keys.length; i < l; i++) {\r\n key = keys[i];\r\n ret[key] = iteratee(val[key], key, i);\r\n }\r\n return ret\r\n } else if (typeof val === 'number') {\r\n ret = new Array(val);\r\n for (i = 0, l = val; i < l; i++) {\r\n // 第一个参数暂时仍和小程序一致\r\n ret[i] = iteratee(i, i);\r\n }\r\n return ret\r\n }\r\n return []\r\n };\r\n\r\n}\n\n/* */\r\n\r\nvar LIFECYCLE_HOOKS$1 = [\r\n //App\r\n 'onLaunch',\r\n 'onShow',\r\n 'onHide',\r\n 'onUniNViewMessage',\r\n 'onPageNotFound',\r\n 'onThemeChange',\r\n 'onError',\r\n 'onUnhandledRejection',\r\n //Page\r\n 'onInit',\r\n 'onLoad',\r\n // 'onShow',\r\n 'onReady',\r\n // 'onHide',\r\n 'onUnload',\r\n 'onPullDownRefresh',\r\n 'onReachBottom',\r\n 'onTabItemTap',\r\n 'onAddToFavorites',\r\n 'onShareTimeline',\r\n 'onShareAppMessage',\r\n 'onResize',\r\n 'onPageScroll',\r\n 'onNavigationBarButtonTap',\r\n 'onBackPress',\r\n 'onNavigationBarSearchInputChanged',\r\n 'onNavigationBarSearchInputConfirmed',\r\n 'onNavigationBarSearchInputClicked',\r\n 'onUploadDouyinVideo',\r\n 'onNFCReadMessage',\r\n //Component\r\n // 'onReady', // 兼容旧版本,应该移除该事件\r\n 'onPageShow',\r\n 'onPageHide',\r\n 'onPageResize'\r\n];\r\nfunction lifecycleMixin$1(Vue) {\r\n\r\n //fixed vue-class-component\r\n var oldExtend = Vue.extend;\r\n Vue.extend = function(extendOptions) {\r\n extendOptions = extendOptions || {};\r\n\r\n var methods = extendOptions.methods;\r\n if (methods) {\r\n Object.keys(methods).forEach(function (methodName) {\r\n if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {\r\n extendOptions[methodName] = methods[methodName];\r\n delete methods[methodName];\r\n }\r\n });\r\n }\r\n\r\n return oldExtend.call(this, extendOptions)\r\n };\r\n\r\n var strategies = Vue.config.optionMergeStrategies;\r\n var mergeHook = strategies.created;\r\n LIFECYCLE_HOOKS$1.forEach(function (hook) {\r\n strategies[hook] = mergeHook;\r\n });\r\n\r\n Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;\r\n}\n\n/* */\r\n\n// install platform patch function\r\nVue.prototype.__patch__ = patch;\r\n\r\n// public mount method\r\nVue.prototype.$mount = function(\r\n el ,\r\n hydrating \r\n) {\r\n return mountComponent$1(this, el, hydrating)\r\n};\r\n\r\nlifecycleMixin$1(Vue);\r\ninternalMixin(Vue);\n\n/* */\n\nexport default Vue;\n","var getType = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function(res) {\r\n\treturn typeof res;\r\n} : function(res) {\r\n\treturn res && \"function\" == typeof Symbol && res.constructor === Symbol && res !== Symbol.prototype ? \"symbol\" :\r\n\t\ttypeof res;\r\n}\r\nmodule.exports = {\r\n\tstr2Obj: function(str) {\r\n\t\tif (\"string\" != typeof str) return str\r\n\t\tif (str.indexOf(\"&\") < 0 && str.indexOf(\"=\") < 0) return {}\r\n\t\tlet newStr = str.split(\"&\"),\r\n\t\t\tnewOjb = {}\r\n\t\tnewStr.forEach(value => {\r\n\t\t\tif (value.indexOf(\"=\") > -1) {\r\n\t\t\t\tlet newStr1 = value.split(\"=\")\r\n\t\t\t\tnewOjb[newStr1[0]] = newStr1[1]\r\n\t\t\t}\r\n\t\t})\r\n\t\treturn newOjb\r\n\t},\r\n\tonShareAppMessage: function(path, title, showDesc = \"\") {\r\n\t\tlet userid = uni.getStorageSync('userInfo')['id']\r\n\t\tpath = path || \"/pages/index/index\"\r\n\t\treturn {\r\n\t\t\t'title': title ? title : \"余乐兑\",\r\n\t\t\t'desc': showDesc ? showDesc : '',\r\n\t\t\t'path': path + \"mid=\" + userid\r\n\t\t}\r\n\t},\r\n\tpdata: function(t) {\r\n\t\treturn t.currentTarget.dataset;\r\n\t},\r\n\tdata: function(t) {\r\n\t\treturn t.target.dataset;\r\n\t},\r\n\tpay: function(payinfo, success = null, fail = null) {\r\n\t\t// 支付订单有效时间,单位秒\r\n\t\tlet expireTime = 6 * 60 * 60 //六个小时\r\n\t\tif (\"object\" == (void 0 === payinfo ? \"undefined\" : getType(payinfo))) {\r\n\t\t\tif (\"function\" == typeof success) {\r\n\t\t\t\tpayinfo.success = success\r\n\t\t\t}\r\n\t\t\tif (\"function\" == typeof fail) {\r\n\t\t\t\tpayinfo.fail = fail\r\n\t\t\t}\r\n\t\t\tlet payHistoryData = uni.getStorageSync(\"payHistoryData\")\r\n\t\t\tif (payHistoryData && payHistoryData.payinfo == JSON.stringify(payinfo)) {\r\n\t\t\t\tlet diffTime = new Date().getTime() - payHistoryData.create_time\r\n\t\t\t\tdiffTime = diffTime / 1000\r\n\t\t\t\tif (diffTime > expireTime) {\r\n\t\t\t\t\tuni.showModal({\r\n\t\t\t\t\t\ttitle: \"提示\",\r\n\t\t\t\t\t\tcontent: \"订单有效时间为2分钟,请重新下单支付\",\r\n\t\t\t\t\t\tshowCancel: false\r\n\t\t\t\t\t})\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tuni.setStorageSync(\"payHistoryData\", {\r\n\t\t\t\t\t\"payinfo\": JSON.stringify(payinfo),\r\n\t\t\t\t\t\"create_time\": new Date().getTime()\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\treturn uni.requestPayment(payinfo)\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\t}\r\n\t},\r\n\tupload: function(callback) {\r\n\t\tvar _this = this\r\n\t\tuni.chooseImage({\r\n\t\t\tsuccess: function(chosImgRes) {\r\n\t\t\t\tlet uploadUrl =\r\n\t\t\t\t\t\"https://yld.angyakeji.com/apiv3/fileUploadAndDownload_FSCuANkzFs0/upload\"\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: \"正在上传...\",\r\n\t\t\t\t\ticon: \"loading\",\r\n\t\t\t\t\tmask: false,\r\n\t\t\t\t\tduration: 1000 * 20\r\n\t\t\t\t})\r\n\t\t\t\tlet resSize = chosImgRes.tempFiles[0].size\r\n\t\t\t\tlet maxMB = 4\r\n\t\t\t\tlet maxByte = maxMB * 1024 * 1024\r\n\t\t\t\tif (resSize > maxByte) {\r\n\t\t\t\t\tuni.hideToast()\r\n\t\t\t\t\tuni.showModal({\r\n\t\t\t\t\t\tshowCancel: false,\r\n\t\t\t\t\t\ttitle: \"提示\",\r\n\t\t\t\t\t\tcontent: \"上传图片大小不能超过\" + maxMB + \"MB\"\r\n\t\t\t\t\t})\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\tuni.uploadFile({\r\n\t\t\t\t\turl: uploadUrl,\r\n\t\t\t\t\tfilePath: chosImgRes.tempFilePaths[0],\r\n\t\t\t\t\tname: \"file\",\r\n\t\t\t\t\tsuccess: function(upRes) {\r\n\t\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t\tuni.hideToast()\r\n\t\t\t\t\t\t}, 666)\r\n\t\t\t\t\t\tvar upResObj = JSON.parse(upRes.data)\r\n\t\t\t\t\t\tif (0 != upResObj.code) {\r\n\t\t\t\t\t\t\tuni.showModal({\r\n\t\t\t\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\t\t\t\tcontent: '上传失败' + upRes.msg\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tif (\"function\" == typeof callback) {\r\n\t\t\t\t\t\t\t\tcallback(upResObj.data.file)\r\n\t\t\t\t\t\t\t}\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})\r\n\t},\r\n\talert: function(content) {\r\n\t\tuni.showModal({\r\n\t\t\ttitle: \"提示\",\r\n\t\t\tcontent: content,\r\n\t\t\tshowCancel: false,\r\n\t\t})\r\n\t},\r\n}\r\n","const core = require(\"./core.js\"),\r\n\tconfig = require(\"../config/config.js\")\r\n\r\n/** 处理邀请好友赠送积分入口 */\r\nfunction initFriendTask() {\r\n\tlet optionL = uni.getStorageSync(\"appLaunchOptions\");\r\n\tif (typeof optionL.query == \"undefined\" || !optionL.query) {\r\n\t\treturn;\r\n\t}\r\n\tlet option = optionL.query;\r\n\r\n\tif (typeof option.scene != \"undefined\" && option.scene) {\r\n\t\toption = option.scene;\r\n\t}\r\n\tif (typeof option == \"string\") {\r\n\t\toption = decodeURIComponent(option);\r\n\t\toption = core.str2Obj(option);\r\n\t}\r\n\t/** 推荐新好友机制 */\r\n\tif (typeof option.mid != \"undefined\" && option.mid) {\r\n\t\tlet tempMidData = getApp().globalData.getCache(\"usermid\");\r\n\t\tif (typeof tempMidData != \"undefined\" && tempMidData) {\r\n\t\t\ttempMidData[\"mid\"] = option.mid;\r\n\t\t} else {\r\n\t\t\ttempMidData = {\r\n\t\t\t\tmid: option.mid,\r\n\t\t\t\tmerchid: \"\",\r\n\t\t\t};\r\n\t\t}\r\n\t\tgetApp().globalData.setCache(\"usermid\", tempMidData)\r\n\t}\r\n\t/** end推荐新好友机制 */\r\n}\r\n// H5 login\r\nfunction getH5Login(openid_wx, mobile) {\r\n\treturn new Promise(function(success, fail) {\r\n\t\tgetApp().globalData.request({\r\n\t\t\ts: 'Member_LoginH5.getUserLogin',\r\n\t\t\topenid_wx: openid_wx,\r\n\t\t\tmobile: mobile,\r\n\t\t}).then(synLoginRes => {\r\n\t\t\t// 登录成功,保存用户userInfo\r\n\t\t\tif (synLoginRes.data.data) {\r\n\t\t\t\tsuccess(synLoginRes.data.data);\r\n\t\t\t} else {\r\n\t\t\t\tfail(synLoginRes);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n}\r\n\r\nfunction loadJS(url, callback) {\r\n\tvar script = document.createElement('script'),\r\n\t\tfn = callback || function() {};\r\n\tscript.type = 'text/javascript';\r\n\t//IE\r\n\tif (script.readyState) {\r\n\t\tscript.onreadystatechange = function() {\r\n\t\t\tif (script.readyState == 'loaded' || script.readyState == 'complete') {\r\n\t\t\t\tscript.onreadystatechange = null;\r\n\t\t\t\tfn();\r\n\t\t\t}\r\n\t\t};\r\n\t} else {\r\n\t\t//其他浏览器\r\n\t\tscript.onload = function() {\r\n\t\t\tfn();\r\n\t\t};\r\n\t}\r\n\tscript.src = url;\r\n\tdocument.getElementsByTagName('head')[0].appendChild(script);\r\n}\r\n\r\nfunction formatTime(e) {\r\n\tvar n = e.getFullYear(),\r\n\t\to = e.getMonth() + 1,\r\n\t\tr = e.getDate(),\r\n\t\tu = e.getHours(),\r\n\t\ti = e.getMinutes(),\r\n\t\tg = e.getSeconds();\r\n\treturn [n, o, r].map(t).join(\"/\") + \" \" + [u, i, g].map(t).join(\":\");\r\n}\r\n\r\nfunction getFourCate() {\r\n\treturn new Promise(success => {\r\n\t\tlet setting = uni.getStorageSync('setting');\r\n\t\t// 获取首页四个分类名字图片\r\n\t\tgetApp().globalData.request({\r\n\t\t\t\ts: \"Shop_Credit_CreditShop.getFourCate\"\r\n\t\t\t})\r\n\t\t\t.then(res => {\r\n\t\t\t\tlet category = res.data.data;\r\n\t\t\t\tsetting['fourCateList'] = category;\r\n\t\t\t\tuni.setStorageSync('setting', setting);\r\n\t\t\t});\r\n\t});\r\n}\r\n\r\nfunction appApiLog(param) {\r\n\tlet data = {\r\n\t\tstr: JSON.stringify(param)\r\n\t}\r\n\trequest({\r\n\t\ts: \"Sys_Index.applog\",\r\n\t\tdata: data,\r\n\t})\r\n}\r\n\r\n/**\r\n * 发起请求\r\n * @function 公共请求方式统一使用 uni.showLoading,由于是异步请求,hideLoading会全局关闭过往请求,为了防止被交叉关闭loading,特殊业务请用showToast\r\n */\r\nfunction request(param, methods = \"post\", payComHideLoading = false) {\r\n\treturn new Promise((successReturn) => {\r\n\t\tif (!param) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\tlet userInfo = uni.getStorageSync(\"userInfo\")\r\n\t\tif (typeof param[\"openid\"] == \"undefined\" && !param[\"openid\"]) {\r\n\t\t\tparam[\"openid\"] = userInfo.openid\r\n\t\t}\r\n\t\tparam[\"userid\"] = userInfo.id\r\n\t\tlet midData = getApp().globalData.getCache(\"usermid\")\r\n\t\tif (midData.mid) {\r\n\t\t\tparam[\"mid\"] = midData.mid\r\n\t\t}\r\n\t\tuni.request({\r\n\t\t\tmethod: methods ? methods : \"post\",\r\n\t\t\turl: \"https://\" + config.api_hostname + config.api_dir + param[\"s\"],\r\n\t\t\tdata: param,\r\n\t\t\ttimeout: getApp().globalData.config.timeout,\r\n\t\t\tsuccess: function(res) {\r\n\t\t\t\tif (res && res.data && res.data.ret && res.data.ret == 200) {\r\n\t\t\t\t\tsuccessReturn(res)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tsuccessReturn(false)\r\n\t\t\t\t\terrorDo(param, res)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfail: function(error) {\r\n\t\t\t\tsuccessReturn(false)\r\n\t\t\t\terrorDo(param, error)\r\n\t\t\t},\r\n\t\t\tcomplete: function() {\r\n\t\t\t\tif (payComHideLoading) {\r\n\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t});\r\n\t});\r\n\r\n\tfunction errorDo(param, error) {\r\n\t\tlet data = {};\r\n\t\tdata[\"param\"] = param;\r\n\t\tdata[\"error\"] = error;\r\n\t\tappApiLog(data)\r\n\t\tlet errMsg = \"网络开小差啦! 是否重试?\"\r\n\t\tif (error.data.msg) {\r\n\t\t\terrMsg = error.data.msg\r\n\t\t}\r\n\t\tuni.showModal({\r\n\t\t\ttitle: \"提示\",\r\n\t\t\tcontent: errMsg,\r\n\t\t\tconfirmText: \"重试\",\r\n\t\t\tsuccess: function(res) {\r\n\t\t\t\tif (res.confirm) {\r\n\t\t\t\t\trequest(param, methods)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t});\r\n\t}\r\n}\r\n\r\nfunction setStorage(storage, key, value) {\r\n\treturn new Promise(function(success) {\r\n\t\tlet old = uni.getStorageSync(storage);\r\n\t\tif (typeof(old) == 'undefined' || old === '') {\r\n\t\t\told = {};\r\n\t\t}\r\n\t\told[key] = value;\r\n\t\tuni.setStorage({\r\n\t\t\tkey: storage,\r\n\t\t\tdata: old,\r\n\t\t\tsuccess: function() {\r\n\t\t\t\tsuccess(true);\r\n\t\t\t},\r\n\t\t});\r\n\t});\r\n}\r\n\r\n// H5 获取页面地址\r\nfunction getQueryVariable(variable, url) {\r\n\tvar query = '';\r\n\tif (url) {\r\n\t\tquery = url;\r\n\t} else {\r\n\t\tquery = window.location.href.split('?')[1];\r\n\t}\r\n\tif (!query) {\r\n\t\treturn false;\r\n\t}\r\n\tvar vars = query.split(\"&\");\r\n\tfor (var i = 0; i < vars.length; i++) {\r\n\t\tvar pair = vars[i].split(\"=\");\r\n\t\tif (pair[0] == variable) {\r\n\t\t\treturn pair[1];\r\n\t\t}\r\n\t}\r\n\treturn (false);\r\n}\r\n\r\n/**\r\n * @param forceUpdate 强制重新uni.login登录更新缓存\r\n * @returns \r\n */\r\nfunction loginByCode(forceUpdate = false, payComHideLoading = false) {\r\n\treturn new Promise(function(success) {\r\n\r\n\t\t// 如果是朋友圈分享\r\n\t\tif (wx.getLaunchOptionsSync().scene == 1154) {\r\n\t\t\tsuccess({\r\n\t\t\t\terror: 0,\r\n\t\t\t\topenid: 'ovJcw5ao__ysZvNn5tnzKpFzGjoM',\r\n\t\t\t\tisclose: 0\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tlet userInfo = uni.getStorageSync('userInfo');\r\n\t\tif (!forceUpdate && userInfo && typeof(userInfo.openid) != 'undefined' && userInfo.openid) {\r\n\t\t\tsuccess(userInfo)\r\n\t\t\t// 已经调用过uni.login 直接获取用户信息\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Member_Index.getUserInfo',\r\n\t\t\t\tusermid: getApp().globalData.getCache(\"usermid\") ? getApp().globalData\r\n\t\t\t\t\t.getCache(\"usermid\")\r\n\t\t\t\t\t.mid : '',\r\n\t\t\t\topenid: userInfo.openid\r\n\t\t\t}, null, payComHideLoading).then(login => {\r\n\t\t\t\tif (login.data.data && login.data.data.openid) {\r\n\t\t\t\t\tuni.setStorage({\r\n\t\t\t\t\t\tkey: 'userInfo',\r\n\t\t\t\t\t\tdata: login.data.data,\r\n\t\t\t\t\t\tsuccess() {\r\n\t\t\t\t\t\t\tall_need_openid_fun()\r\n\t\t\t\t\t\t\tsuccess(login.data.data)\r\n\t\t\t\t\t\t\tgetUpWxUid()\r\n\t\t\t\t\t\t\treturn\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\tloginRefreshUserInfo()\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\tloginRefreshUserInfo()\r\n\t\t}\r\n\r\n\t\tfunction loginRefreshUserInfo() {\r\n\t\t\tuni.showLoading({\r\n\t\t\t\ttitle: \"登录中123...\"\r\n\t\t\t})\r\n\r\n\t\t\tuni.login({\r\n\t\t\t\tsuccess: function(login) {\r\n\t\t\t\t\tuni.hideLoading()\r\n\r\n\t\t\t\t\tgetApp().globalData.request({\r\n\t\t\t\t\t\ts: 'Member_LoginWx.getUserLogin',\r\n\t\t\t\t\t\tplatform: 'MP-WEIXIN',\r\n\t\t\t\t\t\tusermid: getApp().globalData.getCache(\"usermid\") ? getApp()\r\n\t\t\t\t\t\t\t.globalData\r\n\t\t\t\t\t\t\t.getCache(\"usermid\")\r\n\t\t\t\t\t\t\t.mid : '',\r\n\t\t\t\t\t\tcode: login.code\r\n\t\t\t\t\t}).then(login => {\r\n\t\t\t\t\t\tif (login.data.data && login.data.data.openid) {\r\n\t\t\t\t\t\t\tuni.setStorage({\r\n\t\t\t\t\t\t\t\tkey: 'userInfo',\r\n\t\t\t\t\t\t\t\tdata: login.data.data,\r\n\t\t\t\t\t\t\t\tsuccess() {\r\n\t\t\t\t\t\t\t\t\tall_need_openid_fun();\r\n\t\t\t\t\t\t\t\t\tsuccess(login.data.data)\r\n\t\t\t\t\t\t\t\t\treturn\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\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\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\t\t\t}\r\n\t\t\t})\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\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\t}\r\n\r\n\t\tfunction all_need_openid_fun() {\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tinitFriendTask();\r\n\t\t\t}, 300);\r\n\t\t}\r\n\t});\r\n}\r\n\r\n/** 微信获取/更新unionid */\r\nfunction getUpWxUid() {\r\n\tlet userLoginRes = uni.getStorageSync('userInfo')\r\n\r\n\t// 如果没有微信uid,获取更新\r\n\tif (typeof userLoginRes.unionid == \"undefined\" || !userLoginRes.unionid) {\r\n\t\tuni.login({\r\n\t\t\tsuccess: function(login) {\r\n\t\t\t\tgetApp().globalData.request({\r\n\t\t\t\t\ts: 'Member_LoginWx.getUnionid',\r\n\t\t\t\t\tcode: login.code\r\n\t\t\t\t}).then(res => {\r\n\t\t\t\t\tif (res.data.data && res.data.data.unionid) {\r\n\t\t\t\t\t\tuserLoginRes = uni.getStorageSync('userInfo')\r\n\t\t\t\t\t\tuserLoginRes[\"unionid\"] = res.data.data.unionid\r\n\t\t\t\t\t\tuni.setStorageSync(\"userInfo\", userLoginRes)\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n}\r\n\r\n/**\r\n * 数字转整数 如 100000 转为10万\r\n * @param {需要转化的数} num \r\n * @param {需要保留的小数位数} point \r\n */\r\nfunction tranNumber(num, point = 2) {\r\n\tif (num < 1) {\r\n\t\treturn parseFloat(num).toFixed(2);\r\n\t}\r\n\tlet numStr = parseInt(num);\r\n\tnumStr = numStr + '';\r\n\t// 十万以内直接返回 \r\n\tif (numStr.length < 6) {\r\n\t\treturn numStr;\r\n\t}\r\n\t//大于8位数是亿\r\n\telse if (numStr.length > 8) {\r\n\t\tlet decimal = numStr.substring(numStr.length - 8, numStr.length - 8 + point);\r\n\t\treturn parseFloat(parseInt(num / 100000000) + '.' + decimal) + '亿';\r\n\t}\r\n\t//大于6位数是十万 (以10W分割 10W以下全部显示)\r\n\telse if (numStr.length > 5) {\r\n\t\tlet decimal = numStr.substring(numStr.length - 4, numStr.length - 4 + point)\r\n\t\treturn parseFloat(parseInt(num / 10000) + '.' + decimal) + '万';\r\n\t}\r\n}\r\n//获取当前环境\r\nfunction getCurrentSys() {\r\n\treturn new Promise(function(success) {\r\n\t\tlet current_platform = '';\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\tcurrent_platform = \"MP-WEIXIN\";\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\tsetStorage('setting', 'current_platform', current_platform).then(suc => {\r\n\t\t\tsuccess(current_platform);\r\n\t\t});\r\n\t});\r\n}\r\n\r\n\r\n// 设置分销商上级\r\nfunction setUpCommision(mid) {\r\n\tconsole.log(mid)\r\n\t// 如果有分销\r\n\tif (mid) {\r\n\t\t// 设置agentid , 分销上级\r\n\t\tgetApp().globalData.request({\r\n\t\t\ts: 'Member_Member.setUpAgentID',\r\n\t\t\tmid: mid,\r\n\t\t\tuserid: uni.getStorageSync('userInfo').id\r\n\t\t}).then(res => {\r\n\t\t\tconsole.log(\"设置分销商上级\", res)\r\n\t\t});\r\n\t}\r\n}\r\n\r\n\r\n// 保留两位小数,向下取整\r\nfunction numberFloor(num) {\r\n\tif (num == 0) {\r\n\t\treturn 0\r\n\t}\r\n\tif (num < 0) {\r\n\t\treturn Number(`-${numberFloor(Math.abs(num))}`)\r\n\t}\r\n\tif (!(/(^[1-9]\\d*$)/.test(num))) { // 先判断是否为整数\r\n\t\treturn Number(num.toString().match(/^\\d+(?:\\.\\d{0,2})?/))\r\n\t}\r\n\treturn num\r\n}\r\n\r\n// 保留两位小数 向上取整\r\nfunction numberCeil(num, fix) {\r\n\tif (num == 0) {\r\n\t\treturn 0\r\n\t}\r\n\t// num为原数字,fix是保留的小数位数\r\n\tlet result = '0'\r\n\tif (Number(num) && fix > 0) { // 简单的做个判断\r\n\t\tfix = +fix || 2\r\n\t\tnum = num + ''\r\n\t\tif (/e/.test(num)) { // 如果是包含e字符的数字直接返回\r\n\t\t\tresult = num\r\n\t\t} else if (!/\\./.test(num)) { // 如果没有小数点\r\n\t\t\tresult = num + `.${Array(fix + 1).join('0')}`\r\n\t\t} else { // 如果有小数点\r\n\t\t\tnum = num + `${Array(fix + 1).join('0')}`\r\n\t\t\tlet reg = new RegExp(`-?\\\\d*\\\\.\\\\d{0,${fix}}`)\r\n\t\t\tlet floorStr = reg.exec(num)[0]\r\n\t\t\tif (+floorStr >= +num) {\r\n\t\t\t\tresult = floorStr\r\n\t\t\t} else {\r\n\t\t\t\tlet floorNumber = +floorStr + +`0.${Array(fix).join('0')}1`\r\n\t\t\t\tlet point = /\\./.test(floorNumber + '') ? '' : '.'\r\n\t\t\t\tlet floorStr2 = floorNumber + point + `${Array(fix + 1).join('0')}`\r\n\t\t\t\tresult = reg.exec(floorStr2)[0]\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn result\r\n}\r\n\r\nfunction orc(type, fileUrl) {\r\n\tif (!fileUrl || !type) {\r\n\t\treturn\r\n\t}\r\n\tuni.showToast({\r\n\t\tduration: 1000 * 15,\r\n\t\ttitle: '识别中',\r\n\t\ticon: \"loading\"\r\n\t})\r\n\treturn new Promise(success => {\r\n\t\trequest({\r\n\t\t\ts: \"App.Tools_OcrDo.Main\",\r\n\t\t\tfileUrl: fileUrl,\r\n\t\t\ttype: type\r\n\t\t}).then(res => {\r\n\t\t\tuni.hideToast()\r\n\t\t\tsuccess(res)\r\n\t\t})\r\n\t})\r\n}\r\n\r\n// 获取H5下 是什么平台\r\nfunction getH5Platform() {\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\treturn \"OTHER\"\r\n}\r\n\r\nfunction getLocalFilePath(path) {\r\n if (path.indexOf('_www') === 0 || path.indexOf('_doc') === 0 || path.indexOf('_documents') === 0 || path.indexOf('_downloads') === 0) {\r\n return path\r\n }\r\n if (path.indexOf('file://') === 0) {\r\n return path\r\n }\r\n if (path.indexOf('/storage/emulated/0/') === 0) {\r\n return path\r\n }\r\n if (path.indexOf('/') === 0) {\r\n var localFilePath = plus.io.convertAbsoluteFileSystem(path)\r\n if (localFilePath !== path) {\r\n return localFilePath\r\n } else {\r\n path = path.substr(1)\r\n }\r\n }\r\n return '_www/' + path\r\n}\r\n// 图片转base64\r\nfunction pathToBase64(path) {\r\n return new Promise(function(resolve, reject) {\r\n if (typeof window === 'object' && 'document' in window) {\r\n if (typeof FileReader === 'function') {\r\n var xhr = new XMLHttpRequest()\r\n xhr.open('GET', path, true)\r\n xhr.responseType = 'blob'\r\n xhr.onload = function() {\r\n if (this.status === 200) {\r\n let fileReader = new FileReader()\r\n fileReader.onload = function(e) {\r\n resolve(e.target.result)\r\n }\r\n fileReader.onerror = reject\r\n fileReader.readAsDataURL(this.response)\r\n }\r\n }\r\n xhr.onerror = reject\r\n xhr.send()\r\n return\r\n }\r\n var canvas = document.createElement('canvas')\r\n var c2x = canvas.getContext('2d')\r\n var img = new Image\r\n img.onload = function() {\r\n canvas.width = img.width\r\n canvas.height = img.height\r\n c2x.drawImage(img, 0, 0)\r\n resolve(canvas.toDataURL())\r\n canvas.height = canvas.width = 0\r\n }\r\n img.onerror = reject\r\n img.src = path\r\n return\r\n }\r\n if (typeof plus === 'object') {\r\n plus.io.resolveLocalFileSystemURL(getLocalFilePath(path), function(entry) {\r\n entry.file(function(file) {\r\n var fileReader = new plus.io.FileReader()\r\n fileReader.onload = function(data) {\r\n resolve(data.target.result)\r\n }\r\n fileReader.onerror = function(error) {\r\n reject(error)\r\n }\r\n fileReader.readAsDataURL(file)\r\n }, function(error) {\r\n reject(error)\r\n })\r\n }, function(error) {\r\n reject(error)\r\n })\r\n return\r\n }\r\n if (typeof wx === 'object' && wx.canIUse('getFileSystemManager')) {\r\n wx.getFileSystemManager().readFile({\r\n filePath: path,\r\n encoding: 'base64',\r\n success: function(res) {\r\n resolve('data:image/png;base64,' + res.data)\r\n },\r\n fail: function(error) {\r\n reject(error)\r\n }\r\n })\r\n return\r\n }\r\n reject(new Error('not support'))\r\n })\r\n}\r\n// base64转图片\r\nfunction base64ToPath(base64, extName) {\r\n return new Promise(function(resolve, reject) {\r\n if (typeof window === 'object' && 'document' in window) {\r\n base64 = base64.split(',')\r\n var type = base64[0].match(/:(.*?);/)[1]\r\n var str = atob(base64[1])\r\n var n = str.length\r\n var array = new Uint8Array(n)\r\n while (n--) {\r\n array[n] = str.charCodeAt(n)\r\n }\r\n return resolve((window.URL || window.webkitURL).createObjectURL(new Blob([array], { type: type })))\r\n }\r\n\t\tvar fileName;\r\n\t\tif (!extName) {\r\n\t\t\textName = base64.match(/data\\:\\S+\\/(\\S+);/)\r\n\t\t\tif (extName) {\r\n\t\t\t extName = extName[1]\r\n\t\t\t} else {\r\n\t\t\t reject(new Error('base64 error'))\r\n\t\t\t}\r\n\t\t\tfileName = Date.now() + '.' + extName;\r\n\t\t} else {\r\n\t\t\tfileName = Date.now() + extName;\r\n\t\t}\r\n if (typeof plus === 'object') {\r\n var bitmap = new plus.nativeObj.Bitmap('bitmap' + Date.now())\r\n bitmap.loadBase64Data(base64, function() {\r\n var filePath = '_doc/uniapp_temp/' + fileName\r\n bitmap.save(filePath, {}, function() {\r\n bitmap.clear()\r\n resolve(filePath)\r\n }, function(error) {\r\n bitmap.clear()\r\n reject(error)\r\n })\r\n }, function(error) {\r\n bitmap.clear()\r\n reject(error)\r\n })\r\n return\r\n }\r\n if (typeof wx === 'object' && wx.canIUse('getFileSystemManager')) {\r\n var filePath = wx.env.USER_DATA_PATH + '/' + fileName\r\n wx.getFileSystemManager().writeFile({\r\n filePath: filePath,\r\n data: base64.replace(/^data:\\S+\\/\\S+;base64,/, ''),\r\n encoding: 'base64',\r\n success: function() {\r\n resolve(filePath)\r\n },\r\n fail: function(error) {\r\n reject(error)\r\n }\r\n })\r\n return\r\n }\r\n reject(new Error('not support'))\r\n })\r\n}\r\n\r\nmodule.exports = {\r\n\tgetH5Platform:getH5Platform,\r\n\tinitFriendTask: initFriendTask,\r\n\tgetH5Login: getH5Login,\r\n\t// 根据手机号合并账号\r\n\tmergeAccount: function(mobile) {\r\n\t\t// 如果用户手机号不为空,尝试合并账号\r\n\t\tif (!mobile) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tuni.showLoading({\r\n\t\t\ttitle: '合并账号中'\r\n\t\t})\r\n\t\tgetApp().globalData.request({\r\n\t\t\ts: 'Member_MergeAccount.phone',\r\n\t\t\tmobile: mobile\r\n\t\t}).then(synLoginRes => {\r\n\t\t\tuni.hideLoading()\r\n\t\t\t// 登录成功,保存用户userInfo\r\n\t\t\tif (synLoginRes.data.data) {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '合并其他平台账号成功!是否返回上一页面?',\r\n\t\t\t\t\tshowCancel: false,\r\n\t\t\t\t\tsuccess: function(res) {\r\n\t\t\t\t\t\tif (res.confirm) {\r\n\t\t\t\t\t\t\tuni.navigateBack({\r\n\t\t\t\t\t\t\t\tdelta: 1\r\n\t\t\t\t\t\t\t})\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} else {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '网络异常,编号1623124890'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t},\r\n\tloadJS: loadJS,\r\n\torc: orc,\r\n\tformatTime: formatTime,\r\n\tgetFourCate: getFourCate,\r\n\tnumberFloor: numberFloor,\r\n\tnumberCeil: numberCeil,\r\n\tappApiLog: appApiLog,\r\n\trequest: request,\r\n\tsetStorage: setStorage,\r\n\tgetQueryVariable: getQueryVariable,\r\n\tloginByCode: loginByCode,\r\n\ttranNumber: tranNumber,\r\n\tgetCurrentSys: getCurrentSys,\r\n\tsetUpCommision: setUpCommision\r\n}\r\n","module.exports = {\n // 金豆赠送时价值 弃用\n credit_give_money:0.90,\n // 统一超时\n timeout: 1000 * 50,\n // 无需登陆 过滤白名单\n white_page_list: [\n 'pages/order/offlinepay/index'\n ],\n api_hostname:\"yld.angyakeji.com\",//api域名\n api_dir:\"/www/public/index.php?s=\",//api目录 线上\n // api_dir:\"/api/test/v2/www/public/index.php?s=\",//api目录 测试\n //应写入腾讯地图的key\n key: \"CBSBZ-QTZH3-KLQ3F-YWBAX-VXTB2-5KF3R\",\n};","\r\nvar secret = 'CBSBZ-QTZH3-KLQ3F-YWBAX-VXTB2-5KF3R';\r\nfunction getLocation(that) {\r\n return new Promise((succesPromise) => {\r\n uni.getLocation({\r\n success: function (res) {\r\n var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90\r\n var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。\r\n var speed = res.speed; // 速度,以米/每秒计\r\n var accuracy = res.accuracy; // 位置精度\r\n setLocation(res).then(setLocation_Succss => {\r\n succesPromise(setLocation_Succss);\r\n });\r\n },\r\n cancel: function (res) {\r\n // alert(ju_jue_tip);\r\n },\r\n })\r\n })\r\n}\r\n\r\nfunction setLocation(res) {\r\n return new Promise(setLocation_Succss => {\r\n getApp().globalData.setCache(\r\n \"mypos\",\r\n {\r\n lat: res.latitude,\r\n lng: res.longitude,\r\n speed: res.speed,\r\n accuracy: res.accuracy,\r\n },\r\n 7200\r\n );\r\n\r\n getApp().globalData.request({\r\n s: 'Tools_Location_Index.url',\r\n url: 'https://apis.map.qq.com/ws/geocoder/v1/?' + 'location=' + res.latitude + ',' + res.longitude + '&key=' + secret,\r\n }).then(result => {\r\n setLocation_Succss(result.data.data.result);\r\n });\r\n });\r\n}\r\n\r\nmodule.exports = {\r\n getLocation: getLocation,\r\n getAddress2Gps: function (addressValue) {\r\n return new Promise(function (success, fail) {\r\n uni.request({\r\n url: 'https://apis.map.qq.com/ws/geocoder/v1/?address=' + encodeURI(addressValue) + '&key=CBSBZ-QTZH3-KLQ3F-YWBAX-VXTB2-5KF3R',\r\n complete: function (res) {\r\n if (typeof res.data.result.location.lng != 'undefined'\r\n && res.data.result.location.lng) {\r\n success(res.data.result)\r\n } else {\r\n fail(res.data)\r\n }\r\n }\r\n })\r\n })\r\n }\r\n}","var map = {\n\t\"./core.js\": 30,\n\t\"./foxui.js\": 35,\n\t\"./icons.js\": 36,\n\t\"./location/autoPredictor.js\": 37,\n\t\"./location/citydata.js\": 38,\n\t\"./location/commonMessageZhCn.js\": 40,\n\t\"./location/location.js\": 33,\n\t\"./location/location_utils.js\": 39,\n\t\"./util.js\": 31\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 34;","\nmodule.exports.number = function (t, e) {\n var o = e.currentTarget.dataset,\n a = o.value,\n s = o.hasOwnProperty(\"min\") ? parseInt(o.min) : 1,\n n = o.hasOwnProperty(\"max\") ? parseInt(o.max) : 999;\n return \"minus\" === e.target.dataset.action ? a > 1 && (a > s || 0 == s) ? a-- : (0 == s && (s = 1), this.toast(t, \"最少购买\" + s + \"件\")) : \"plus\" === e.target.dataset.action && (a < n || 0 == n ? a++ : this.toast(t, \"最多购买\" + n + \"件\")), a;\n}, module.exports.toast = function (t, e, o) {\n o || (o = 1500), t.setData({\n FoxUIToast: {\n show: true,\n text: e\n }\n });\n setTimeout(function () {\n t.setData({\n FoxUIToast: {\n show: false\n }\n });\n }, o);\n}, module.exports.notify = function (t, e, o, a) {\n a || (a = 1500), o || (o = \"default\"), t.setData({\n FoxUINotify: {\n show: true,\n text: e,\n style: o\n }\n });\n setTimeout(function () {\n t.setData({\n FoxUINotify: {\n show: false\n }\n });\n }, a)\n}","module.exports = {\n voice: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/systemprompt.png\",\n mute: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/mute.png\",\n home: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/home.png\",\n home_red: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-red/home.png\",\n cate: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/cate.png\",\n cate_red: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-red/cate.png\",\n cart: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/cart.png\",\n cart_red: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-red/cart.png\",\n people: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/people.png\",\n people_red: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-red/people.png\",\n shop: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/shop.png\",\n order: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/order.png\",\n cartWhite: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-white/cart.png\",\n like: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/like.png\",\n likeactive: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-red/like.png\",\n likefill: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/like_fill.png\",\n footprint: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/footprint.png\",\n notice: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/notice.png\",\n list: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/list.png\",\n location: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/dingwei.png\",\n setting: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-white/setting.png\",\n paying48: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/paying-48.png\",\n deliver48: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/deliver-48.png\",\n box48: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/box-48.png\",\n refund48: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/refund-48.png\",\n store: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/store.png\",\n storeWhite: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-white/store.png\",\n search: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/search.png\",\n money: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/money.png\",\n coupon: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/coupon.png\",\n card: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/card.png\",\n car48: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/car-48.png\",\n cry220: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/car-220.png\",\n group: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/group.png\",\n mobile: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/mobile.png\",\n labelGreen: \"http://yuledui.oss-accelerate.aliyuncs.com/images/label-green.png\",\n labelRed: \"http://yuledui.oss-accelerate.aliyuncs.com/images/label-red.png\",\n back: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/back.png\",\n nopic: \"http://yuledui.oss-accelerate.aliyuncs.com/images/nopic.png\",\n dingdan: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/dingdan.png\",\n tianjia: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/tianjia.png\",\n service: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon-white/service.png\",\n service2: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/service.png\",\n my: \"http://yuledui.oss-accelerate.aliyuncs.com/images/icon/my.png\"\n};","import { CITY_LIST, CITY_NOT_FOUND } from './citydata';\nimport utils from \"./location_utils.js\";\nconst {\n isNotEmpty,\n isChinese,\n getSlicedName\n} = utils;\n/*\n* AutoPredictor 实例一定有两个对外的接口:\n* 1. 接收 输入框输入的值\n* 2. 返回 最终匹配到的数组\n*/\n\nexport class AutoPredictor {\n constructor(inputContent) {\n this.content = inputContent.toLowerCase();\n } // 输入框自动联想搜索\n\n\n associativeSearch() {\n // search\n let tempList = this.searchList(this.content); // get final list to show\n\n let resultList = this.showList(tempList);\n return resultList;\n }\n\n searchList(str) {\n let targetCity;\n return CITY_LIST.filter(city => {\n targetCity = this.getTargetCity(str, city);\n return targetCity && targetCity == str;\n });\n }\n\n getTargetCity(str, cityObj) {\n if (isChinese(str)) {\n const slicedChineseName = getSlicedName(cityObj, 'city', str.length);\n return slicedChineseName;\n } else {\n const slicedPinyinName = getSlicedName(cityObj, 'short', str.length).toLowerCase();\n return slicedPinyinName;\n } // 在城市数据中,添加简拼到“shorter”属性,就可以实现简拼搜索\n // getSlicedName(cityObj, 'shorter', str.length).toLowerCase()\n\n }\n\n showList(array) {\n return isNotEmpty(array) ? array.map(item => ({\n city: item.city,\n code: item.code\n })) : CITY_NOT_FOUND;\n }\n\n}","const LETTERS=[\"A\",\"B\",\"C\",\"D\",\"E\",\"F\",\"G\",\"H\",\"J\",\"K\",\"L\",\"M\",\"N\",\"P\",\"Q\",\"R\",\"S\",\"T\",\"W\",\"X\",\"Y\",\"Z\"];const CITY_LIST=[{\"id\":\"35\",\"provincecode\":\"150000\",\"city\":\"阿拉善盟\",\"code\":\"152900\",\"initial\":\"A\",\"short\":\"Alashanmeng\"},{\"id\":\"38\",\"provincecode\":\"210000\",\"city\":\"鞍山市\",\"code\":\"210300\",\"initial\":\"A\",\"short\":\"Anshan\"},{\"id\":\"105\",\"provincecode\":\"340000\",\"city\":\"安庆市\",\"code\":\"340800\",\"initial\":\"A\",\"short\":\"Anqing\"},{\"id\":\"156\",\"provincecode\":\"410000\",\"city\":\"安阳市\",\"code\":\"410500\",\"initial\":\"A\",\"short\":\"Anyang\"},{\"id\":\"256\",\"provincecode\":\"510000\",\"city\":\"阿坝藏族羌族自治州\",\"code\":\"513200\",\"initial\":\"A\",\"short\":\"Aba\"},{\"id\":\"262\",\"provincecode\":\"520000\",\"city\":\"安顺市\",\"code\":\"520400\",\"initial\":\"A\",\"short\":\"Anshun\"},{\"id\":\"289\",\"provincecode\":\"540000\",\"city\":\"阿里地区\",\"code\":\"542500\",\"initial\":\"A\",\"short\":\"Ali\"},{\"id\":\"299\",\"provincecode\":\"610000\",\"city\":\"安康市\",\"code\":\"610900\",\"initial\":\"A\",\"short\":\"Ankang\"},{\"id\":\"335\",\"provincecode\":\"650000\",\"city\":\"阿克苏地区\",\"code\":\"652900\",\"initial\":\"A\",\"short\":\"Akesu\"},{\"id\":\"341\",\"provincecode\":\"650000\",\"city\":\"阿勒泰地区\",\"code\":\"654300\",\"initial\":\"A\",\"short\":\"Aletai\"},{\"id\":\"1\",\"provincecode\":\"110000\",\"city\":\"北京市\",\"code\":\"110000\",\"initial\":\"B\",\"short\":\"Beijing\"},{\"id\":\"7\",\"provincecode\":\"130000\",\"city\":\"保定市\",\"code\":\"130600\",\"initial\":\"B\",\"short\":\"Baoding\"},{\"id\":\"25\",\"provincecode\":\"150000\",\"city\":\"包头市\",\"code\":\"150200\",\"initial\":\"B\",\"short\":\"Baotou\"},{\"id\":\"31\",\"provincecode\":\"150000\",\"city\":\"巴彦淖尔市\",\"code\":\"150800\",\"initial\":\"B\",\"short\":\"Bayannaoer\"},{\"id\":\"40\",\"provincecode\":\"210000\",\"city\":\"本溪市\",\"code\":\"210500\",\"initial\":\"B\",\"short\":\"Benxi\"},{\"id\":\"55\",\"provincecode\":\"220000\",\"city\":\"白山市\",\"code\":\"220600\",\"initial\":\"B\",\"short\":\"Baishan\"},{\"id\":\"57\",\"provincecode\":\"220000\",\"city\":\"白城市\",\"code\":\"220800\",\"initial\":\"B\",\"short\":\"Baicheng\"},{\"id\":\"100\",\"provincecode\":\"340000\",\"city\":\"蚌埠市\",\"code\":\"340300\",\"initial\":\"B\",\"short\":\"Bangbu\"},{\"id\":\"150\",\"provincecode\":\"370000\",\"city\":\"滨州市\",\"code\":\"371600\",\"initial\":\"B\",\"short\":\"Binzhou\"},{\"id\":\"222\",\"provincecode\":\"450000\",\"city\":\"北海市\",\"code\":\"450500\",\"initial\":\"B\",\"short\":\"Beihai\"},{\"id\":\"227\",\"provincecode\":\"450000\",\"city\":\"百色市\",\"code\":\"451000\",\"initial\":\"B\",\"short\":\"Baise\"},{\"id\":\"254\",\"provincecode\":\"510000\",\"city\":\"巴中市\",\"code\":\"511900\",\"initial\":\"B\",\"short\":\"Bazhong\"},{\"id\":\"265\",\"provincecode\":\"520000\",\"city\":\"毕节地区\",\"code\":\"522400\",\"initial\":\"B\",\"short\":\"Bijie\"},{\"id\":\"271\",\"provincecode\":\"530000\",\"city\":\"保山市\",\"code\":\"530500\",\"initial\":\"B\",\"short\":\"Baoshan\"},{\"id\":\"293\",\"provincecode\":\"610000\",\"city\":\"宝鸡市\",\"code\":\"610300\",\"initial\":\"B\",\"short\":\"Baoji\"},{\"id\":\"304\",\"provincecode\":\"620000\",\"city\":\"白银市\",\"code\":\"620400\",\"initial\":\"B\",\"short\":\"Baiyin\"},{\"id\":\"333\",\"provincecode\":\"650000\",\"city\":\"博尔塔拉蒙古自治州\",\"code\":\"652700\",\"initial\":\"B\",\"short\":\"Boertala\"},{\"id\":\"334\",\"provincecode\":\"650000\",\"city\":\"巴音郭楞蒙古自治州\",\"code\":\"652800\",\"initial\":\"B\",\"short\":\"Bayinguoleng\"},{\"id\":\"\",\"provincecode\":\"500000\",\"city\":\"重庆市\",\"code\":\"500000\",\"initial\":\"C\",\"short\":\"Chongqing\"},{\"id\":\"9\",\"provincecode\":\"130000\",\"city\":\"承德市\",\"code\":\"130800\",\"initial\":\"C\",\"short\":\"Chengde\"},{\"id\":\"10\",\"provincecode\":\"130000\",\"city\":\"沧州市\",\"code\":\"130900\",\"initial\":\"C\",\"short\":\"Cangzhou\"},{\"id\":\"16\",\"provincecode\":\"140000\",\"city\":\"长治市\",\"code\":\"140400\",\"initial\":\"C\",\"short\":\"Changzhi\"},{\"id\":\"27\",\"provincecode\":\"150000\",\"city\":\"赤峰市\",\"code\":\"150400\",\"initial\":\"C\",\"short\":\"Chifeng\"},{\"id\":\"48\",\"provincecode\":\"210000\",\"city\":\"朝阳市\",\"code\":\"211300\",\"initial\":\"C\",\"short\":\"Chaoyang\"},{\"id\":\"50\",\"provincecode\":\"220000\",\"city\":\"长春市\",\"code\":\"220100\",\"initial\":\"C\",\"short\":\"Changchun\"},{\"id\":\"77\",\"provincecode\":\"320000\",\"city\":\"常州市\",\"code\":\"320400\",\"initial\":\"C\",\"short\":\"Changzhou\"},{\"id\":\"107\",\"provincecode\":\"340000\",\"city\":\"滁州市\",\"code\":\"341100\",\"initial\":\"C\",\"short\":\"Chuzhou\"},{\"id\":\"110\",\"provincecode\":\"340000\",\"city\":\"巢湖市\",\"code\":\"341400\",\"initial\":\"C\",\"short\":\"Chaohu\"},{\"id\":\"113\",\"provincecode\":\"340000\",\"city\":\"池州市\",\"code\":\"341700\",\"initial\":\"C\",\"short\":\"Chizhou\"},{\"id\":\"183\",\"provincecode\":\"430000\",\"city\":\"长沙市\",\"code\":\"430100\",\"initial\":\"C\",\"short\":\"Changsha\"},{\"id\":\"189\",\"provincecode\":\"430000\",\"city\":\"常德市\",\"code\":\"430700\",\"initial\":\"C\",\"short\":\"Changde\"},{\"id\":\"192\",\"provincecode\":\"430000\",\"city\":\"郴州市\",\"code\":\"431000\",\"initial\":\"C\",\"short\":\"Chenzhou\"},{\"id\":\"215\",\"provincecode\":\"440000\",\"city\":\"潮州市\",\"code\":\"445100\",\"initial\":\"C\",\"short\":\"Chaozhou\"},{\"id\":\"231\",\"provincecode\":\"450000\",\"city\":\"崇左市\",\"code\":\"451400\",\"initial\":\"C\",\"short\":\"Chongzuo\"},{\"id\":\"238\",\"provincecode\":\"510000\",\"city\":\"成都市\",\"code\":\"510100\",\"initial\":\"C\",\"short\":\"Chengdu\"},{\"id\":\"276\",\"provincecode\":\"530000\",\"city\":\"楚雄彝族自治州\",\"code\":\"532300\",\"initial\":\"C\",\"short\":\"Chuxiong\"},{\"id\":\"285\",\"provincecode\":\"540000\",\"city\":\"昌都地区\",\"code\":\"542100\",\"initial\":\"C\",\"short\":\"Changdu\"},{\"id\":\"332\",\"provincecode\":\"650000\",\"city\":\"昌吉回族自治州\",\"code\":\"652300\",\"initial\":\"C\",\"short\":\"Changji\"},{\"id\":\"14\",\"provincecode\":\"140000\",\"city\":\"大同市\",\"code\":\"140200\",\"initial\":\"D\",\"short\":\"Datong\"},{\"id\":\"37\",\"provincecode\":\"210000\",\"city\":\"大连市\",\"code\":\"210200\",\"initial\":\"D\",\"short\":\"Dalian\"},{\"id\":\"41\",\"provincecode\":\"210000\",\"city\":\"丹东市\",\"code\":\"210600\",\"initial\":\"D\",\"short\":\"Dandong\"},{\"id\":\"64\",\"provincecode\":\"230000\",\"city\":\"大庆市\",\"code\":\"230600\",\"initial\":\"D\",\"short\":\"Daqing\"},{\"id\":\"71\",\"provincecode\":\"230000\",\"city\":\"大兴安岭地区\",\"code\":\"232700\",\"initial\":\"D\",\"short\":\"Daxinganling\"},{\"id\":\"139\",\"provincecode\":\"370000\",\"city\":\"东营市\",\"code\":\"370500\",\"initial\":\"D\",\"short\":\"Dongying\"},{\"id\":\"148\",\"provincecode\":\"370000\",\"city\":\"德州市\",\"code\":\"371400\",\"initial\":\"D\",\"short\":\"Dezhou\"},{\"id\":\"213\",\"provincecode\":\"440000\",\"city\":\"东莞市\",\"code\":\"441900\",\"initial\":\"D\",\"short\":\"Dongguan\"},{\"id\":\"242\",\"provincecode\":\"510000\",\"city\":\"德阳市\",\"code\":\"510600\",\"initial\":\"D\",\"short\":\"Deyang\"},{\"id\":\"252\",\"provincecode\":\"510000\",\"city\":\"达州市\",\"code\":\"511700\",\"initial\":\"D\",\"short\":\"Dazhou\"},{\"id\":\"280\",\"provincecode\":\"530000\",\"city\":\"大理白族自治州\",\"code\":\"532900\",\"initial\":\"D\",\"short\":\"Dali\"},{\"id\":\"281\",\"provincecode\":\"530000\",\"city\":\"德宏傣族景颇族自治州\",\"code\":\"533100\",\"initial\":\"D\",\"short\":\"Dehong\"},{\"id\":\"283\",\"provincecode\":\"530000\",\"city\":\"迪庆藏族自治州\",\"code\":\"533400\",\"initial\":\"D\",\"short\":\"Diqing\"},{\"id\":\"311\",\"provincecode\":\"620000\",\"city\":\"定西市\",\"code\":\"621100\",\"initial\":\"D\",\"short\":\"Dingxi\"},{\"id\":\"29\",\"provincecode\":\"150000\",\"city\":\"鄂尔多斯市\",\"code\":\"150600\",\"initial\":\"E\",\"short\":\"Eerduosi\"},{\"id\":\"174\",\"provincecode\":\"420000\",\"city\":\"鄂州市\",\"code\":\"420700\",\"initial\":\"E\",\"short\":\"Ezhou\"},{\"id\":\"181\",\"provincecode\":\"420000\",\"city\":\"恩施土家族苗族自治州\",\"code\":\"422800\",\"initial\":\"E\",\"short\":\"Enshi\"},{\"id\":\"39\",\"provincecode\":\"210000\",\"city\":\"抚顺市\",\"code\":\"210400\",\"initial\":\"F\",\"short\":\"Fushun\"},{\"id\":\"44\",\"provincecode\":\"210000\",\"city\":\"阜新市\",\"code\":\"210900\",\"initial\":\"F\",\"short\":\"Fuxin\"},{\"id\":\"108\",\"provincecode\":\"340000\",\"city\":\"阜阳市\",\"code\":\"341200\",\"initial\":\"F\",\"short\":\"Fuyang\"},{\"id\":\"115\",\"provincecode\":\"350000\",\"city\":\"福州市\",\"code\":\"350100\",\"initial\":\"F\",\"short\":\"Fuzhou\"},{\"id\":\"133\",\"provincecode\":\"360000\",\"city\":\"抚州市\",\"code\":\"361000\",\"initial\":\"F\",\"short\":\"Fuzhou\"},{\"id\":\"202\",\"provincecode\":\"440000\",\"city\":\"佛山市\",\"code\":\"440600\",\"initial\":\"F\",\"short\":\"Foshan\"},{\"id\":\"223\",\"provincecode\":\"450000\",\"city\":\"防城港市\",\"code\":\"450600\",\"initial\":\"F\",\"short\":\"Fangchenggang\"},{\"id\":\"130\",\"provincecode\":\"360000\",\"city\":\"赣州市\",\"code\":\"360700\",\"initial\":\"G\",\"short\":\"Ganzhou\"},{\"id\":\"197\",\"provincecode\":\"440000\",\"city\":\"广州市\",\"code\":\"440100\",\"initial\":\"G\",\"short\":\"Guangzhou\"},{\"id\":\"220\",\"provincecode\":\"450000\",\"city\":\"桂林市\",\"code\":\"450300\",\"initial\":\"G\",\"short\":\"Guilin\"},{\"id\":\"225\",\"provincecode\":\"450000\",\"city\":\"贵港市\",\"code\":\"450800\",\"initial\":\"G\",\"short\":\"Guigang\"},{\"id\":\"244\",\"provincecode\":\"510000\",\"city\":\"广元市\",\"code\":\"510800\",\"initial\":\"G\",\"short\":\"Guangyuan\"},{\"id\":\"251\",\"provincecode\":\"510000\",\"city\":\"广安市\",\"code\":\"511600\",\"initial\":\"G\",\"short\":\"Guangan\"},{\"id\":\"257\",\"provincecode\":\"510000\",\"city\":\"甘孜藏族自治州\",\"code\":\"513300\",\"initial\":\"G\",\"short\":\"Ganzi\"},{\"id\":\"259\",\"provincecode\":\"520000\",\"city\":\"贵阳市\",\"code\":\"520100\",\"initial\":\"G\",\"short\":\"Guiyang\"},{\"id\":\"314\",\"provincecode\":\"620000\",\"city\":\"甘南藏族自治州\",\"code\":\"623000\",\"initial\":\"G\",\"short\":\"Gannan\"},{\"id\":\"320\",\"provincecode\":\"630000\",\"city\":\"果洛藏族自治州\",\"code\":\"632600\",\"initial\":\"G\",\"short\":\"Guoluo\"},{\"id\":\"326\",\"provincecode\":\"640000\",\"city\":\"固原市\",\"code\":\"640400\",\"initial\":\"G\",\"short\":\"Guyuan\"},{\"id\":\"5\",\"provincecode\":\"130000\",\"city\":\"邯郸市\",\"code\":\"130400\",\"initial\":\"H\",\"short\":\"Handan\"},{\"id\":\"12\",\"provincecode\":\"130000\",\"city\":\"衡水市\",\"code\":\"131100\",\"initial\":\"H\",\"short\":\"Hengshui\"},{\"id\":\"\",\"provincecode\":\"370000\",\"city\":\"菏泽市\",\"code\":\"371700\",\"initial\":\"H\",\"short\":\"Heze\"},{\"id\":\"24\",\"provincecode\":\"150000\",\"city\":\"呼和浩特市\",\"code\":\"150100\",\"initial\":\"H\",\"short\":\"Huhehaote\"},{\"id\":\"30\",\"provincecode\":\"150000\",\"city\":\"呼伦贝尔市\",\"code\":\"150700\",\"initial\":\"H\",\"short\":\"Hulunbeier\"},{\"id\":\"49\",\"provincecode\":\"210000\",\"city\":\"葫芦岛市\",\"code\":\"211400\",\"initial\":\"H\",\"short\":\"Huludao\"},{\"id\":\"59\",\"provincecode\":\"230000\",\"city\":\"哈尔滨市\",\"code\":\"230100\",\"initial\":\"H\",\"short\":\"Haerbin\"},{\"id\":\"62\",\"provincecode\":\"230000\",\"city\":\"鹤岗市\",\"code\":\"230400\",\"initial\":\"H\",\"short\":\"Hegang\"},{\"id\":\"69\",\"provincecode\":\"230000\",\"city\":\"黑河市\",\"code\":\"231100\",\"initial\":\"H\",\"short\":\"Heihe\"},{\"id\":\"81\",\"provincecode\":\"320000\",\"city\":\"淮安市\",\"code\":\"320800\",\"initial\":\"H\",\"short\":\"Huaian\"},{\"id\":\"87\",\"provincecode\":\"330000\",\"city\":\"杭州市\",\"code\":\"330100\",\"initial\":\"H\",\"short\":\"Hangzhou\"},{\"id\":\"91\",\"provincecode\":\"330000\",\"city\":\"湖州市\",\"code\":\"330500\",\"initial\":\"H\",\"short\":\"Huzhou\"},{\"id\":\"98\",\"provincecode\":\"340000\",\"city\":\"合肥市\",\"code\":\"340100\",\"initial\":\"H\",\"short\":\"Hefei\"},{\"id\":\"101\",\"provincecode\":\"340000\",\"city\":\"淮南市\",\"code\":\"340400\",\"initial\":\"H\",\"short\":\"Huainan\"},{\"id\":\"103\",\"provincecode\":\"340000\",\"city\":\"淮北市\",\"code\":\"340600\",\"initial\":\"H\",\"short\":\"Huaibei\"},{\"id\":\"106\",\"provincecode\":\"340000\",\"city\":\"黄山市\",\"code\":\"341000\",\"initial\":\"H\",\"short\":\"Huangshan\"},{\"id\":\"112\",\"provincecode\":\"340000\",\"city\":\"亳州市\",\"code\":\"341600\",\"initial\":\"H\",\"short\":\"Bozhou\"},{\"id\":\"157\",\"provincecode\":\"410000\",\"city\":\"鹤壁市\",\"code\":\"410600\",\"initial\":\"H\",\"short\":\"Hebi\"},{\"id\":\"170\",\"provincecode\":\"420000\",\"city\":\"黄石市\",\"code\":\"420200\",\"initial\":\"H\",\"short\":\"Huangshi\"},{\"id\":\"178\",\"provincecode\":\"420000\",\"city\":\"黄冈市\",\"code\":\"421100\",\"initial\":\"H\",\"short\":\"Huanggang\"},{\"id\":\"186\",\"provincecode\":\"430000\",\"city\":\"衡阳市\",\"code\":\"430400\",\"initial\":\"H\",\"short\":\"Hengyang\"},{\"id\":\"194\",\"provincecode\":\"430000\",\"city\":\"怀化市\",\"code\":\"431200\",\"initial\":\"H\",\"short\":\"Huaihua\"},{\"id\":\"207\",\"provincecode\":\"440000\",\"city\":\"惠州市\",\"code\":\"441300\",\"initial\":\"H\",\"short\":\"Huizhou\"},{\"id\":\"210\",\"provincecode\":\"440000\",\"city\":\"河源市\",\"code\":\"441600\",\"initial\":\"H\",\"short\":\"Heyuan\"},{\"id\":\"228\",\"provincecode\":\"450000\",\"city\":\"贺州市\",\"code\":\"451100\",\"initial\":\"H\",\"short\":\"Hezhou\"},{\"id\":\"229\",\"provincecode\":\"450000\",\"city\":\"河池市\",\"code\":\"451200\",\"initial\":\"H\",\"short\":\"Hechi\"},{\"id\":\"232\",\"provincecode\":\"460000\",\"city\":\"海口市\",\"code\":\"460100\",\"initial\":\"H\",\"short\":\"Haikou\"},{\"id\":\"277\",\"provincecode\":\"530000\",\"city\":\"红河哈尼族彝族自治州\",\"code\":\"532500\",\"initial\":\"H\",\"short\":\"Honghe\"},{\"id\":\"297\",\"provincecode\":\"610000\",\"city\":\"汉中市\",\"code\":\"610700\",\"initial\":\"H\",\"short\":\"Hanzhong\"},{\"id\":\"316\",\"provincecode\":\"630000\",\"city\":\"海东地区\",\"code\":\"632100\",\"initial\":\"H\",\"short\":\"Haidong\"},{\"id\":\"317\",\"provincecode\":\"630000\",\"city\":\"海北藏族自治州\",\"code\":\"632200\",\"initial\":\"H\",\"short\":\"Haibei\"},{\"id\":\"318\",\"provincecode\":\"630000\",\"city\":\"黄南藏族自治州\",\"code\":\"632300\",\"initial\":\"H\",\"short\":\"Huangnan\"},{\"id\":\"319\",\"provincecode\":\"630000\",\"city\":\"海南藏族自治州\",\"code\":\"632500\",\"initial\":\"H\",\"short\":\"Hainan\"},{\"id\":\"322\",\"provincecode\":\"630000\",\"city\":\"海西蒙古族藏族自治州\",\"code\":\"632800\",\"initial\":\"H\",\"short\":\"Haixi\"},{\"id\":\"331\",\"provincecode\":\"650000\",\"city\":\"哈密地区\",\"code\":\"652200\",\"initial\":\"H\",\"short\":\"Hami\"},{\"id\":\"338\",\"provincecode\":\"650000\",\"city\":\"和田地区\",\"code\":\"653200\",\"initial\":\"H\",\"short\":\"Hetiandi\"},{\"id\":\"17\",\"provincecode\":\"140000\",\"city\":\"晋城市\",\"code\":\"140500\",\"initial\":\"J\",\"short\":\"Jincheng\"},{\"id\":\"19\",\"provincecode\":\"140000\",\"city\":\"晋中市\",\"code\":\"140700\",\"initial\":\"J\",\"short\":\"Jinzhong\"},{\"id\":\"42\",\"provincecode\":\"210000\",\"city\":\"锦州市\",\"code\":\"210700\",\"initial\":\"J\",\"short\":\"Jinzhou\"},{\"id\":\"51\",\"provincecode\":\"220000\",\"city\":\"吉林市\",\"code\":\"220200\",\"initial\":\"J\",\"short\":\"Jilin\"},{\"id\":\"61\",\"provincecode\":\"230000\",\"city\":\"鸡西市\",\"code\":\"230300\",\"initial\":\"J\",\"short\":\"Jixi\"},{\"id\":\"66\",\"provincecode\":\"230000\",\"city\":\"佳木斯市\",\"code\":\"230800\",\"initial\":\"J\",\"short\":\"Jiamusi\"},{\"id\":\"90\",\"provincecode\":\"330000\",\"city\":\"嘉兴市\",\"code\":\"330400\",\"initial\":\"J\",\"short\":\"Jiaxing\"},{\"id\":\"93\",\"provincecode\":\"330000\",\"city\":\"金华市\",\"code\":\"330700\",\"initial\":\"J\",\"short\":\"Jinhua\"},{\"id\":\"125\",\"provincecode\":\"360000\",\"city\":\"景德镇市\",\"code\":\"360200\",\"initial\":\"J\",\"short\":\"Jingdezhen\"},{\"id\":\"127\",\"provincecode\":\"360000\",\"city\":\"九江市\",\"code\":\"360400\",\"initial\":\"J\",\"short\":\"Jiujiang\"},{\"id\":\"131\",\"provincecode\":\"360000\",\"city\":\"吉安市\",\"code\":\"360800\",\"initial\":\"J\",\"short\":\"Jian\"},{\"id\":\"135\",\"provincecode\":\"370000\",\"city\":\"济南市\",\"code\":\"370100\",\"initial\":\"J\",\"short\":\"Jinan\"},{\"id\":\"142\",\"provincecode\":\"370000\",\"city\":\"济宁市\",\"code\":\"370800\",\"initial\":\"J\",\"short\":\"Jining\"},{\"id\":\"159\",\"provincecode\":\"410000\",\"city\":\"焦作市\",\"code\":\"410800\",\"initial\":\"J\",\"short\":\"Jiaozuo\"},{\"id\":\"175\",\"provincecode\":\"420000\",\"city\":\"荆门市\",\"code\":\"420800\",\"initial\":\"J\",\"short\":\"Jingmen\"},{\"id\":\"177\",\"provincecode\":\"420000\",\"city\":\"荆州市\",\"code\":\"421000\",\"initial\":\"J\",\"short\":\"Jingzhou\"},{\"id\":\"203\",\"provincecode\":\"440000\",\"city\":\"江门市\",\"code\":\"440700\",\"initial\":\"J\",\"short\":\"Jiangmen\"},{\"id\":\"216\",\"provincecode\":\"440000\",\"city\":\"揭阳市\",\"code\":\"445200\",\"initial\":\"J\",\"short\":\"Jieyang\"},{\"id\":\"302\",\"provincecode\":\"620000\",\"city\":\"嘉峪关市\",\"code\":\"620200\",\"initial\":\"J\",\"short\":\"Jiayuguan\"},{\"id\":\"303\",\"provincecode\":\"620000\",\"city\":\"金昌市\",\"code\":\"620300\",\"initial\":\"J\",\"short\":\"Jinchang\"},{\"id\":\"309\",\"provincecode\":\"620000\",\"city\":\"酒泉市\",\"code\":\"620900\",\"initial\":\"J\",\"short\":\"Jiuquan\"},{\"id\":\"153\",\"provincecode\":\"410000\",\"city\":\"开封市\",\"code\":\"410200\",\"initial\":\"K\",\"short\":\"Kaifeng\"},{\"id\":\"268\",\"provincecode\":\"530000\",\"city\":\"昆明市\",\"code\":\"530100\",\"initial\":\"K\",\"short\":\"Kunming\"},{\"id\":\"329\",\"provincecode\":\"650000\",\"city\":\"克拉玛依市\",\"code\":\"650200\",\"initial\":\"K\",\"short\":\"Kelamayi\"},{\"id\":\"336\",\"provincecode\":\"650000\",\"city\":\"克孜勒苏柯尔克孜自治州\",\"code\":\"653000\",\"initial\":\"K\",\"short\":\"Kezile\"},{\"id\":\"337\",\"provincecode\":\"650000\",\"city\":\"喀什地区\",\"code\":\"653100\",\"initial\":\"K\",\"short\":\"Kashidi\"},{\"id\":\"11\",\"provincecode\":\"130000\",\"city\":\"廊坊市\",\"code\":\"131000\",\"initial\":\"L\",\"short\":\"Langfang\"},{\"id\":\"22\",\"provincecode\":\"140000\",\"city\":\"临汾市\",\"code\":\"141000\",\"initial\":\"L\",\"short\":\"Linfen\"},{\"id\":\"23\",\"provincecode\":\"140000\",\"city\":\"吕梁市\",\"code\":\"141100\",\"initial\":\"L\",\"short\":\"Lvliang\"},{\"id\":\"45\",\"provincecode\":\"210000\",\"city\":\"辽阳市\",\"code\":\"211000\",\"initial\":\"L\",\"short\":\"Liaoyang\"},{\"id\":\"53\",\"provincecode\":\"220000\",\"city\":\"辽源市\",\"code\":\"220400\",\"initial\":\"L\",\"short\":\"Liaoyuan\"},{\"id\":\"80\",\"provincecode\":\"320000\",\"city\":\"连云港市\",\"code\":\"320700\",\"initial\":\"L\",\"short\":\"Lianyungang\"},{\"id\":\"97\",\"provincecode\":\"330000\",\"city\":\"丽水市\",\"code\":\"331100\",\"initial\":\"L\",\"short\":\"Lishui\"},{\"id\":\"111\",\"provincecode\":\"340000\",\"city\":\"六安市\",\"code\":\"341500\",\"initial\":\"L\",\"short\":\"Liuan\"},{\"id\":\"122\",\"provincecode\":\"350000\",\"city\":\"龙岩市\",\"code\":\"350800\",\"initial\":\"L\",\"short\":\"Longyan\"},{\"id\":\"146\",\"provincecode\":\"370000\",\"city\":\"莱芜市\",\"code\":\"371200\",\"initial\":\"L\",\"short\":\"Laiwu\"},{\"id\":\"147\",\"provincecode\":\"370000\",\"city\":\"临沂市\",\"code\":\"371300\",\"initial\":\"L\",\"short\":\"Linyi\"},{\"id\":\"149\",\"provincecode\":\"370000\",\"city\":\"聊城市\",\"code\":\"371500\",\"initial\":\"L\",\"short\":\"Liaocheng\"},{\"id\":\"154\",\"provincecode\":\"410000\",\"city\":\"洛阳市\",\"code\":\"410300\",\"initial\":\"L\",\"short\":\"Luoyang\"},{\"id\":\"162\",\"provincecode\":\"410000\",\"city\":\"漯河市\",\"code\":\"411100\",\"initial\":\"L\",\"short\":\"Luohe\"},{\"id\":\"195\",\"provincecode\":\"430000\",\"city\":\"娄底市\",\"code\":\"431300\",\"initial\":\"L\",\"short\":\"Loudi\"},{\"id\":\"219\",\"provincecode\":\"450000\",\"city\":\"柳州市\",\"code\":\"450200\",\"initial\":\"L\",\"short\":\"Liuzhou\"},{\"id\":\"230\",\"provincecode\":\"450000\",\"city\":\"来宾市\",\"code\":\"451300\",\"initial\":\"L\",\"short\":\"Laibin\"},{\"id\":\"241\",\"provincecode\":\"510000\",\"city\":\"泸州市\",\"code\":\"510500\",\"initial\":\"L\",\"short\":\"Luzhou\"},{\"id\":\"247\",\"provincecode\":\"510000\",\"city\":\"乐山市\",\"code\":\"511100\",\"initial\":\"L\",\"short\":\"Leshan\"},{\"id\":\"258\",\"provincecode\":\"510000\",\"city\":\"凉山彝族自治州\",\"code\":\"513400\",\"initial\":\"L\",\"short\":\"Liangshan\"},{\"id\":\"260\",\"provincecode\":\"520000\",\"city\":\"六盘水市\",\"code\":\"520200\",\"initial\":\"L\",\"short\":\"Liupanshui\"},{\"id\":\"273\",\"provincecode\":\"530000\",\"city\":\"丽江市\",\"code\":\"530700\",\"initial\":\"L\",\"short\":\"Lijiang\"},{\"id\":\"275\",\"provincecode\":\"530000\",\"city\":\"临沧市\",\"code\":\"530900\",\"initial\":\"L\",\"short\":\"Lincang\"},{\"id\":\"284\",\"provincecode\":\"540000\",\"city\":\"拉萨市\",\"code\":\"540100\",\"initial\":\"L\",\"short\":\"Lasa\"},{\"id\":\"290\",\"provincecode\":\"540000\",\"city\":\"林芝地区\",\"code\":\"542600\",\"initial\":\"L\",\"short\":\"Linzhi\"},{\"id\":\"301\",\"provincecode\":\"620000\",\"city\":\"兰州市\",\"code\":\"620100\",\"initial\":\"L\",\"short\":\"Lanzhou\"},{\"id\":\"312\",\"provincecode\":\"620000\",\"city\":\"陇南市\",\"code\":\"621200\",\"initial\":\"L\",\"short\":\"Longnan\"},{\"id\":\"313\",\"provincecode\":\"620000\",\"city\":\"临夏回族自治州\",\"code\":\"622900\",\"initial\":\"L\",\"short\":\"Linxia\"},{\"id\":\"68\",\"provincecode\":\"230000\",\"city\":\"牡丹江市\",\"code\":\"231000\",\"initial\":\"M\",\"short\":\"Mudanjiang\"},{\"id\":\"102\",\"provincecode\":\"340000\",\"city\":\"马鞍山市\",\"code\":\"340500\",\"initial\":\"M\",\"short\":\"Maanshan\"},{\"id\":\"205\",\"provincecode\":\"440000\",\"city\":\"茂名市\",\"code\":\"440900\",\"initial\":\"M\",\"short\":\"Maoming\"},{\"id\":\"208\",\"provincecode\":\"440000\",\"city\":\"梅州市\",\"code\":\"441400\",\"initial\":\"M\",\"short\":\"Meizhou\"},{\"id\":\"243\",\"provincecode\":\"510000\",\"city\":\"绵阳市\",\"code\":\"510700\",\"initial\":\"M\",\"short\":\"Mianyang\"},{\"id\":\"249\",\"provincecode\":\"510000\",\"city\":\"眉山市\",\"code\":\"511400\",\"initial\":\"M\",\"short\":\"Meishan\"},{\"id\":\"74\",\"provincecode\":\"320000\",\"city\":\"南京市\",\"code\":\"320100\",\"initial\":\"N\",\"short\":\"Nanjing\"},{\"id\":\"79\",\"provincecode\":\"320000\",\"city\":\"南通市\",\"code\":\"320600\",\"initial\":\"N\",\"short\":\"Nantong\"},{\"id\":\"88\",\"provincecode\":\"330000\",\"city\":\"宁波市\",\"code\":\"330200\",\"initial\":\"N\",\"short\":\"Ningbo\"},{\"id\":\"121\",\"provincecode\":\"350000\",\"city\":\"南平市\",\"code\":\"350700\",\"initial\":\"N\",\"short\":\"Nanping\"},{\"id\":\"123\",\"provincecode\":\"350000\",\"city\":\"宁德市\",\"code\":\"350900\",\"initial\":\"N\",\"short\":\"Ningde\"},{\"id\":\"124\",\"provincecode\":\"360000\",\"city\":\"南昌市\",\"code\":\"360100\",\"initial\":\"N\",\"short\":\"Nanchang\"},{\"id\":\"164\",\"provincecode\":\"410000\",\"city\":\"南阳市\",\"code\":\"411300\",\"initial\":\"N\",\"short\":\"Nanyang\"},{\"id\":\"218\",\"provincecode\":\"450000\",\"city\":\"南宁市\",\"code\":\"450100\",\"initial\":\"N\",\"short\":\"Nanning\"},{\"id\":\"246\",\"provincecode\":\"510000\",\"city\":\"内江市\",\"code\":\"511000\",\"initial\":\"N\",\"short\":\"Neijiang\"},{\"id\":\"248\",\"provincecode\":\"510000\",\"city\":\"南充市\",\"code\":\"511300\",\"initial\":\"N\",\"short\":\"Nanchong\"},{\"id\":\"282\",\"provincecode\":\"530000\",\"city\":\"怒江傈僳族自治州\",\"code\":\"533300\",\"initial\":\"N\",\"short\":\"Nujiang\"},{\"id\":\"288\",\"provincecode\":\"540000\",\"city\":\"那曲地区\",\"code\":\"542400\",\"initial\":\"N\",\"short\":\"Naqu\"},{\"id\":\"46\",\"provincecode\":\"210000\",\"city\":\"盘锦市\",\"code\":\"211100\",\"initial\":\"P\",\"short\":\"Panjin\"},{\"id\":\"117\",\"provincecode\":\"350000\",\"city\":\"莆田市\",\"code\":\"350300\",\"initial\":\"P\",\"short\":\"Putian\"},{\"id\":\"126\",\"provincecode\":\"360000\",\"city\":\"萍乡市\",\"code\":\"360300\",\"initial\":\"P\",\"short\":\"Pingxiang\"},{\"id\":\"155\",\"provincecode\":\"410000\",\"city\":\"平顶山市\",\"code\":\"410400\",\"initial\":\"P\",\"short\":\"Pingdingshan\"},{\"id\":\"160\",\"provincecode\":\"410000\",\"city\":\"濮阳市\",\"code\":\"410900\",\"initial\":\"P\",\"short\":\"Puyang\"},{\"id\":\"240\",\"provincecode\":\"510000\",\"city\":\"攀枝花市\",\"code\":\"510400\",\"initial\":\"P\",\"short\":\"Panzhihua\"},{\"id\":\"308\",\"provincecode\":\"620000\",\"city\":\"平凉市\",\"code\":\"620800\",\"initial\":\"P\",\"short\":\"Pingliang\"},{\"id\":\"4\",\"provincecode\":\"130000\",\"city\":\"秦皇岛市\",\"code\":\"130300\",\"initial\":\"Q\",\"short\":\"Qinhuangdao\"},{\"id\":\"60\",\"provincecode\":\"230000\",\"city\":\"齐齐哈尔市\",\"code\":\"230200\",\"initial\":\"Q\",\"short\":\"Qiqihaer\"},{\"id\":\"67\",\"provincecode\":\"230000\",\"city\":\"七台河市\",\"code\":\"230900\",\"initial\":\"Q\",\"short\":\"Qitaihe\"},{\"id\":\"94\",\"provincecode\":\"330000\",\"city\":\"衢州市\",\"code\":\"330800\",\"initial\":\"Q\",\"short\":\"Quzhou\"},{\"id\":\"119\",\"provincecode\":\"350000\",\"city\":\"泉州市\",\"code\":\"350500\",\"initial\":\"Q\",\"short\":\"Quanzhou\"},{\"id\":\"136\",\"provincecode\":\"370000\",\"city\":\"青岛市\",\"code\":\"370200\",\"initial\":\"Q\",\"short\":\"Qingdao\"},{\"id\":\"212\",\"provincecode\":\"440000\",\"city\":\"清远市\",\"code\":\"441800\",\"initial\":\"Q\",\"short\":\"Qingyuan\"},{\"id\":\"224\",\"provincecode\":\"450000\",\"city\":\"钦州市\",\"code\":\"450700\",\"initial\":\"Q\",\"short\":\"Qinzhou\"},{\"id\":\"264\",\"provincecode\":\"520000\",\"city\":\"黔西南布依族苗族自治州\",\"code\":\"522300\",\"initial\":\"Q\",\"short\":\"Qianxinan\"},{\"id\":\"266\",\"provincecode\":\"520000\",\"city\":\"黔东南苗族侗族自治州\",\"code\":\"522600\",\"initial\":\"Q\",\"short\":\"Qiandong\"},{\"id\":\"267\",\"provincecode\":\"520000\",\"city\":\"黔南布依族苗族自治州\",\"code\":\"522700\",\"initial\":\"Q\",\"short\":\"Qiannan\"},{\"id\":\"269\",\"provincecode\":\"530000\",\"city\":\"曲靖市\",\"code\":\"530300\",\"initial\":\"Q\",\"short\":\"Qujing\"},{\"id\":\"310\",\"provincecode\":\"620000\",\"city\":\"庆阳市\",\"code\":\"621000\",\"initial\":\"Q\",\"short\":\"Qingyang\"},{\"id\":\"145\",\"provincecode\":\"370000\",\"city\":\"日照市\",\"code\":\"371100\",\"initial\":\"R\",\"short\":\"Rizhao\"},{\"id\":\"287\",\"provincecode\":\"540000\",\"city\":\"日喀则地区\",\"code\":\"542300\",\"initial\":\"R\",\"short\":\"Rikaze\"},{\"id\":\"2\",\"provincecode\":\"130000\",\"city\":\"石家庄市\",\"code\":\"130100\",\"initial\":\"S\",\"short\":\"Shijiazhuang\"},{\"id\":\"\",\"provincecode\":\"310000\",\"city\":\"上海市\",\"code\":\"310000\",\"initial\":\"S\",\"short\":\"Shanghai\"},{\"id\":\"18\",\"provincecode\":\"140000\",\"city\":\"朔州市\",\"code\":\"140600\",\"initial\":\"S\",\"short\":\"Shuozhou\"},{\"id\":\"36\",\"provincecode\":\"210000\",\"city\":\"沈阳市\",\"code\":\"210100\",\"initial\":\"S\",\"short\":\"Shenyang\"},{\"id\":\"\",\"provincecode\":\"530000\",\"city\":\"普洱市\",\"code\":\"530800\",\"initial\":\"P\",\"short\":\"Puer\"},{\"id\":\"52\",\"provincecode\":\"220000\",\"city\":\"四平市\",\"code\":\"220300\",\"initial\":\"S\",\"short\":\"Siping\"},{\"id\":\"56\",\"provincecode\":\"220000\",\"city\":\"松原市\",\"code\":\"220700\",\"initial\":\"S\",\"short\":\"Songyuan\"},{\"id\":\"63\",\"provincecode\":\"230000\",\"city\":\"双鸭山市\",\"code\":\"230500\",\"initial\":\"S\",\"short\":\"Shuangyashan\"},{\"id\":\"70\",\"provincecode\":\"230000\",\"city\":\"绥化市\",\"code\":\"231200\",\"initial\":\"S\",\"short\":\"Suihua\"},{\"id\":\"78\",\"provincecode\":\"320000\",\"city\":\"苏州市\",\"code\":\"320500\",\"initial\":\"S\",\"short\":\"Suzhou\"},{\"id\":\"86\",\"provincecode\":\"320000\",\"city\":\"宿迁市\",\"code\":\"321300\",\"initial\":\"S\",\"short\":\"Suqian\"},{\"id\":\"92\",\"provincecode\":\"330000\",\"city\":\"绍兴市\",\"code\":\"330600\",\"initial\":\"S\",\"short\":\"Shaoxing\"},{\"id\":\"109\",\"provincecode\":\"340000\",\"city\":\"宿州市\",\"code\":\"341300\",\"initial\":\"S\",\"short\":\"Suzhou\"},{\"id\":\"118\",\"provincecode\":\"350000\",\"city\":\"三明市\",\"code\":\"350400\",\"initial\":\"S\",\"short\":\"Sanming\"},{\"id\":\"134\",\"provincecode\":\"360000\",\"city\":\"上饶市\",\"code\":\"361100\",\"initial\":\"S\",\"short\":\"Shangrao\"},{\"id\":\"163\",\"provincecode\":\"410000\",\"city\":\"三门峡市\",\"code\":\"411200\",\"initial\":\"S\",\"short\":\"Sanmenxia\"},{\"id\":\"165\",\"provincecode\":\"410000\",\"city\":\"商丘市\",\"code\":\"411400\",\"initial\":\"S\",\"short\":\"Shangqiu\"},{\"id\":\"171\",\"provincecode\":\"420000\",\"city\":\"十堰市\",\"code\":\"420300\",\"initial\":\"S\",\"short\":\"Shiyan\"},{\"id\":\"180\",\"provincecode\":\"420000\",\"city\":\"随州市\",\"code\":\"421300\",\"initial\":\"S\",\"short\":\"Suizhou\"},{\"id\":\"187\",\"provincecode\":\"430000\",\"city\":\"邵阳市\",\"code\":\"430500\",\"initial\":\"S\",\"short\":\"Shaoyang\"},{\"id\":\"198\",\"provincecode\":\"440000\",\"city\":\"韶关市\",\"code\":\"440200\",\"initial\":\"S\",\"short\":\"Shaoguan\"},{\"id\":\"199\",\"provincecode\":\"440000\",\"city\":\"深圳市\",\"code\":\"440300\",\"initial\":\"S\",\"short\":\"Shenzhen\"},{\"id\":\"201\",\"provincecode\":\"440000\",\"city\":\"汕头市\",\"code\":\"440500\",\"initial\":\"S\",\"short\":\"Shantou\"},{\"id\":\"209\",\"provincecode\":\"440000\",\"city\":\"汕尾市\",\"code\":\"441500\",\"initial\":\"S\",\"short\":\"Shanwei\"},{\"id\":\"233\",\"provincecode\":\"460000\",\"city\":\"三亚市\",\"code\":\"460200\",\"initial\":\"S\",\"short\":\"Sanya\"},{\"id\":\"245\",\"provincecode\":\"510000\",\"city\":\"遂宁市\",\"code\":\"510900\",\"initial\":\"S\",\"short\":\"Suining\"},{\"id\":\"286\",\"provincecode\":\"540000\",\"city\":\"山南地区\",\"code\":\"542200\",\"initial\":\"S\",\"short\":\"Shannan\"},{\"id\":\"300\",\"provincecode\":\"610000\",\"city\":\"商洛市\",\"code\":\"611000\",\"initial\":\"S\",\"short\":\"Shangluo\"},{\"id\":\"324\",\"provincecode\":\"640000\",\"city\":\"石嘴山市\",\"code\":\"640200\",\"initial\":\"S\",\"short\":\"Shizuishan\"},{\"id\":\"3\",\"provincecode\":\"130000\",\"city\":\"唐山市\",\"code\":\"130200\",\"initial\":\"T\",\"short\":\"Tangshan\"},{\"id\":\"13\",\"provincecode\":\"140000\",\"city\":\"太原市\",\"code\":\"140100\",\"initial\":\"T\",\"short\":\"Taiyuan\"},{\"id\":\"28\",\"provincecode\":\"150000\",\"city\":\"通辽市\",\"code\":\"150500\",\"initial\":\"T\",\"short\":\"Tongliao\"},{\"id\":\"47\",\"provincecode\":\"210000\",\"city\":\"铁岭市\",\"code\":\"211200\",\"initial\":\"T\",\"short\":\"Tieling\"},{\"id\":\"54\",\"provincecode\":\"220000\",\"city\":\"通化市\",\"code\":\"220500\",\"initial\":\"T\",\"short\":\"Tonghua\"},{\"id\":\"85\",\"provincecode\":\"320000\",\"city\":\"泰州市\",\"code\":\"321200\",\"initial\":\"T\",\"short\":\"Taizhou\"},{\"id\":\"96\",\"provincecode\":\"330000\",\"city\":\"台州市\",\"code\":\"331000\",\"initial\":\"T\",\"short\":\"Taizhou\"},{\"id\":\"104\",\"provincecode\":\"340000\",\"city\":\"铜陵市\",\"code\":\"340700\",\"initial\":\"T\",\"short\":\"Tongling\"},{\"id\":\"143\",\"provincecode\":\"370000\",\"city\":\"泰安市\",\"code\":\"370900\",\"initial\":\"T\",\"short\":\"Taian\"},{\"id\":\"263\",\"provincecode\":\"520000\",\"city\":\"铜仁地区\",\"code\":\"522200\",\"initial\":\"T\",\"short\":\"Tongren\"},{\"id\":\"292\",\"provincecode\":\"610000\",\"city\":\"铜川市\",\"code\":\"610200\",\"initial\":\"T\",\"short\":\"Tongchuan\"},{\"id\":\"305\",\"provincecode\":\"620000\",\"city\":\"天水市\",\"code\":\"620500\",\"initial\":\"T\",\"short\":\"Tianshui\"},{\"id\":\"330\",\"provincecode\":\"650000\",\"city\":\"吐鲁番地区\",\"code\":\"652100\",\"initial\":\"T\",\"short\":\"Tulufan\"},{\"id\":\"340\",\"provincecode\":\"650000\",\"city\":\"塔城地区\",\"code\":\"654200\",\"initial\":\"T\",\"short\":\"Tachengdi\"},{\"id\":\"343\",\"provincecode\":\"120000\",\"city\":\"天津市\",\"code\":\"120000\",\"initial\":\"T\",\"short\":\"Tianjin\"},{\"id\":\"26\",\"provincecode\":\"150000\",\"city\":\"乌海市\",\"code\":\"150300\",\"initial\":\"W\",\"short\":\"Wuhai\"},{\"id\":\"32\",\"provincecode\":\"150000\",\"city\":\"乌兰察布市\",\"code\":\"150900\",\"initial\":\"W\",\"short\":\"Wulanchabu\"},{\"id\":\"75\",\"provincecode\":\"320000\",\"city\":\"无锡市\",\"code\":\"320200\",\"initial\":\"W\",\"short\":\"Wuxi\"},{\"id\":\"89\",\"provincecode\":\"330000\",\"city\":\"温州市\",\"code\":\"330300\",\"initial\":\"W\",\"short\":\"Wenzhou\"},{\"id\":\"99\",\"provincecode\":\"340000\",\"city\":\"芜湖市\",\"code\":\"340200\",\"initial\":\"W\",\"short\":\"Wuhu\"},{\"id\":\"141\",\"provincecode\":\"370000\",\"city\":\"潍坊市\",\"code\":\"370700\",\"initial\":\"W\",\"short\":\"Weifang\"},{\"id\":\"144\",\"provincecode\":\"370000\",\"city\":\"威海市\",\"code\":\"371000\",\"initial\":\"W\",\"short\":\"Weihai\"},{\"id\":\"169\",\"provincecode\":\"420000\",\"city\":\"武汉市\",\"code\":\"420100\",\"initial\":\"W\",\"short\":\"Wuhan\"},{\"id\":\"221\",\"provincecode\":\"450000\",\"city\":\"梧州市\",\"code\":\"450400\",\"initial\":\"W\",\"short\":\"Wuzhou\"},{\"id\":\"278\",\"provincecode\":\"530000\",\"city\":\"文山壮族苗族自治州\",\"code\":\"532600\",\"initial\":\"W\",\"short\":\"Wenshan\"},{\"id\":\"295\",\"provincecode\":\"610000\",\"city\":\"渭南市\",\"code\":\"610500\",\"initial\":\"W\",\"short\":\"Weinan\"},{\"id\":\"306\",\"provincecode\":\"620000\",\"city\":\"武威市\",\"code\":\"620600\",\"initial\":\"W\",\"short\":\"Wuwei\"},{\"id\":\"325\",\"provincecode\":\"640000\",\"city\":\"吴忠市\",\"code\":\"640300\",\"initial\":\"W\",\"short\":\"Wuzhong\"},{\"id\":\"328\",\"provincecode\":\"650000\",\"city\":\"乌鲁木齐市\",\"code\":\"650100\",\"initial\":\"W\",\"short\":\"Wulumuqi\"},{\"id\":\"6\",\"provincecode\":\"130000\",\"city\":\"邢台市\",\"code\":\"130500\",\"initial\":\"X\",\"short\":\"Xingtai\"},{\"id\":\"21\",\"provincecode\":\"140000\",\"city\":\"忻州市\",\"code\":\"140900\",\"initial\":\"X\",\"short\":\"Xinzhou\"},{\"id\":\"33\",\"provincecode\":\"150000\",\"city\":\"兴安盟\",\"code\":\"152200\",\"initial\":\"X\",\"short\":\"Xinganmeng\"},{\"id\":\"34\",\"provincecode\":\"150000\",\"city\":\"锡林郭勒盟\",\"code\":\"152500\",\"initial\":\"X\",\"short\":\"Xilinguolemeng\"},{\"id\":\"76\",\"provincecode\":\"320000\",\"city\":\"徐州市\",\"code\":\"320300\",\"initial\":\"X\",\"short\":\"Xuzhou\"},{\"id\":\"114\",\"provincecode\":\"340000\",\"city\":\"宣城市\",\"code\":\"341800\",\"initial\":\"X\",\"short\":\"Xuancheng\"},{\"id\":\"116\",\"provincecode\":\"350000\",\"city\":\"厦门市\",\"code\":\"350200\",\"initial\":\"X\",\"short\":\"Xiamen\"},{\"id\":\"128\",\"provincecode\":\"360000\",\"city\":\"新余市\",\"code\":\"360500\",\"initial\":\"X\",\"short\":\"Xinyu\"},{\"id\":\"158\",\"provincecode\":\"410000\",\"city\":\"新乡市\",\"code\":\"410700\",\"initial\":\"X\",\"short\":\"Xinxiang\"},{\"id\":\"161\",\"provincecode\":\"410000\",\"city\":\"许昌市\",\"code\":\"411000\",\"initial\":\"X\",\"short\":\"Xuchang\"},{\"id\":\"166\",\"provincecode\":\"410000\",\"city\":\"信阳市\",\"code\":\"411500\",\"initial\":\"X\",\"short\":\"Xinyang\"},{\"id\":\"173\",\"provincecode\":\"420000\",\"city\":\"襄樊市\",\"code\":\"420600\",\"initial\":\"X\",\"short\":\"Xiangfan\"},{\"id\":\"176\",\"provincecode\":\"420000\",\"city\":\"孝感市\",\"code\":\"420900\",\"initial\":\"X\",\"short\":\"Xiaogan\"},{\"id\":\"179\",\"provincecode\":\"420000\",\"city\":\"咸宁市\",\"code\":\"421200\",\"initial\":\"X\",\"short\":\"Xianning\"},{\"id\":\"185\",\"provincecode\":\"430000\",\"city\":\"湘潭市\",\"code\":\"430300\",\"initial\":\"X\",\"short\":\"Xiangtan\"},{\"id\":\"196\",\"provincecode\":\"430000\",\"city\":\"湘西土家族苗族自治州\",\"code\":\"433100\",\"initial\":\"X\",\"short\":\"Xiangxi\"},{\"id\":\"279\",\"provincecode\":\"530000\",\"city\":\"西双版纳傣族自治州\",\"code\":\"532800\",\"initial\":\"X\",\"short\":\"Xishuangbanna\"},{\"id\":\"291\",\"provincecode\":\"610000\",\"city\":\"西安市\",\"code\":\"610100\",\"initial\":\"X\",\"short\":\"Xian\"},{\"id\":\"294\",\"provincecode\":\"610000\",\"city\":\"咸阳市\",\"code\":\"610400\",\"initial\":\"X\",\"short\":\"Xianyang\"},{\"id\":\"315\",\"provincecode\":\"630000\",\"city\":\"西宁市\",\"code\":\"630100\",\"initial\":\"X\",\"short\":\"Xining\"},{\"id\":\"15\",\"provincecode\":\"140000\",\"city\":\"阳泉市\",\"code\":\"140300\",\"initial\":\"Y\",\"short\":\"Yangquan\"},{\"id\":\"20\",\"provincecode\":\"140000\",\"city\":\"运城市\",\"code\":\"140800\",\"initial\":\"Y\",\"short\":\"Yuncheng\"},{\"id\":\"43\",\"provincecode\":\"210000\",\"city\":\"营口市\",\"code\":\"210800\",\"initial\":\"Y\",\"short\":\"Yingkou\"},{\"id\":\"58\",\"provincecode\":\"220000\",\"city\":\"延边朝鲜族自治州\",\"code\":\"222400\",\"initial\":\"Y\",\"short\":\"Yanbian\"},{\"id\":\"65\",\"provincecode\":\"230000\",\"city\":\"伊春市\",\"code\":\"230700\",\"initial\":\"Y\",\"short\":\"Yichun\"},{\"id\":\"82\",\"provincecode\":\"320000\",\"city\":\"盐城市\",\"code\":\"320900\",\"initial\":\"Y\",\"short\":\"Yancheng\"},{\"id\":\"83\",\"provincecode\":\"320000\",\"city\":\"扬州市\",\"code\":\"321000\",\"initial\":\"Y\",\"short\":\"Yangzhou\"},{\"id\":\"129\",\"provincecode\":\"360000\",\"city\":\"鹰潭市\",\"code\":\"360600\",\"initial\":\"Y\",\"short\":\"Yingtan\"},{\"id\":\"132\",\"provincecode\":\"360000\",\"city\":\"宜春市\",\"code\":\"360900\",\"initial\":\"Y\",\"short\":\"Yichun\"},{\"id\":\"140\",\"provincecode\":\"370000\",\"city\":\"烟台市\",\"code\":\"370600\",\"initial\":\"Y\",\"short\":\"Yantai\"},{\"id\":\"172\",\"provincecode\":\"420000\",\"city\":\"宜昌市\",\"code\":\"420500\",\"initial\":\"Y\",\"short\":\"Yichang\"},{\"id\":\"188\",\"provincecode\":\"430000\",\"city\":\"岳阳市\",\"code\":\"430600\",\"initial\":\"Y\",\"short\":\"Yueyang\"},{\"id\":\"191\",\"provincecode\":\"430000\",\"city\":\"益阳市\",\"code\":\"430900\",\"initial\":\"Y\",\"short\":\"Yiyang\"},{\"id\":\"193\",\"provincecode\":\"430000\",\"city\":\"永州市\",\"code\":\"431100\",\"initial\":\"Y\",\"short\":\"Yongzhou\"},{\"id\":\"211\",\"provincecode\":\"440000\",\"city\":\"阳江市\",\"code\":\"441700\",\"initial\":\"Y\",\"short\":\"Yangjiang\"},{\"id\":\"217\",\"provincecode\":\"440000\",\"city\":\"云浮市\",\"code\":\"445300\",\"initial\":\"Y\",\"short\":\"Yunfu\"},{\"id\":\"226\",\"provincecode\":\"450000\",\"city\":\"玉林市\",\"code\":\"450900\",\"initial\":\"Y\",\"short\":\"Yulin\"},{\"id\":\"250\",\"provincecode\":\"510000\",\"city\":\"宜宾市\",\"code\":\"511500\",\"initial\":\"Y\",\"short\":\"Yibin\"},{\"id\":\"253\",\"provincecode\":\"510000\",\"city\":\"雅安市\",\"code\":\"511800\",\"initial\":\"Y\",\"short\":\"Yaan\"},{\"id\":\"270\",\"provincecode\":\"530000\",\"city\":\"玉溪市\",\"code\":\"530400\",\"initial\":\"Y\",\"short\":\"Yuxi\"},{\"id\":\"296\",\"provincecode\":\"610000\",\"city\":\"延安市\",\"code\":\"610600\",\"initial\":\"Y\",\"short\":\"Yanan\"},{\"id\":\"298\",\"provincecode\":\"610000\",\"city\":\"榆林市\",\"code\":\"610800\",\"initial\":\"Y\",\"short\":\"Yulin\"},{\"id\":\"321\",\"provincecode\":\"630000\",\"city\":\"玉树藏族自治州\",\"code\":\"632700\",\"initial\":\"Y\",\"short\":\"Yushu\"},{\"id\":\"323\",\"provincecode\":\"640000\",\"city\":\"银川市\",\"code\":\"640100\",\"initial\":\"Y\",\"short\":\"Yinchuan\"},{\"id\":\"339\",\"provincecode\":\"650000\",\"city\":\"伊犁哈萨克自治州\",\"code\":\"654000\",\"initial\":\"Y\",\"short\":\"Yilihasake\"},{\"id\":\"8\",\"provincecode\":\"130000\",\"city\":\"张家口市\",\"code\":\"130700\",\"initial\":\"Z\",\"short\":\"Zhangjiakou\"},{\"id\":\"84\",\"provincecode\":\"320000\",\"city\":\"镇江市\",\"code\":\"321100\",\"initial\":\"Z\",\"short\":\"Zhenjiang\"},{\"id\":\"95\",\"provincecode\":\"330000\",\"city\":\"舟山市\",\"code\":\"330900\",\"initial\":\"Z\",\"short\":\"Zhoushan\"},{\"id\":\"120\",\"provincecode\":\"350000\",\"city\":\"漳州市\",\"code\":\"350600\",\"initial\":\"Z\",\"short\":\"Zhangzhou\"},{\"id\":\"137\",\"provincecode\":\"370000\",\"city\":\"淄博市\",\"code\":\"370300\",\"initial\":\"Z\",\"short\":\"Zibo\"},{\"id\":\"138\",\"provincecode\":\"370000\",\"city\":\"枣庄市\",\"code\":\"370400\",\"initial\":\"Z\",\"short\":\"Zaozhuang\"},{\"id\":\"152\",\"provincecode\":\"410000\",\"city\":\"郑州市\",\"code\":\"410100\",\"initial\":\"Z\",\"short\":\"Zhengzhou\"},{\"id\":\"167\",\"provincecode\":\"410000\",\"city\":\"周口市\",\"code\":\"411600\",\"initial\":\"Z\",\"short\":\"Zhoukou\"},{\"id\":\"168\",\"provincecode\":\"410000\",\"city\":\"驻马店市\",\"code\":\"411700\",\"initial\":\"Z\",\"short\":\"Zhumadian\"},{\"id\":\"184\",\"provincecode\":\"430000\",\"city\":\"株洲市\",\"code\":\"430200\",\"initial\":\"Z\",\"short\":\"Zhuzhou\"},{\"id\":\"190\",\"provincecode\":\"430000\",\"city\":\"张家界市\",\"code\":\"430800\",\"initial\":\"Z\",\"short\":\"Zhangjiajie\"},{\"id\":\"200\",\"provincecode\":\"440000\",\"city\":\"珠海市\",\"code\":\"440400\",\"initial\":\"Z\",\"short\":\"Zhuhai\"},{\"id\":\"204\",\"provincecode\":\"440000\",\"city\":\"湛江市\",\"code\":\"440800\",\"initial\":\"Z\",\"short\":\"Zhanjiang\"},{\"id\":\"206\",\"provincecode\":\"440000\",\"city\":\"肇庆市\",\"code\":\"441200\",\"initial\":\"Z\",\"short\":\"Zhaoqing\"},{\"id\":\"214\",\"provincecode\":\"440000\",\"city\":\"中山市\",\"code\":\"442000\",\"initial\":\"Z\",\"short\":\"Zhongshan\"},{\"id\":\"239\",\"provincecode\":\"510000\",\"city\":\"自贡市\",\"code\":\"510300\",\"initial\":\"Z\",\"short\":\"Zigong\"},{\"id\":\"255\",\"provincecode\":\"510000\",\"city\":\"资阳市\",\"code\":\"512000\",\"initial\":\"Z\",\"short\":\"Ziyang\"},{\"id\":\"261\",\"provincecode\":\"520000\",\"city\":\"遵义市\",\"code\":\"520300\",\"initial\":\"Z\",\"short\":\"Zunyi\"},{\"id\":\"272\",\"provincecode\":\"530000\",\"city\":\"昭通市\",\"code\":\"530600\",\"initial\":\"Z\",\"short\":\"Zhaotong\"},{\"id\":\"307\",\"provincecode\":\"620000\",\"city\":\"张掖市\",\"code\":\"620700\",\"initial\":\"Z\",\"short\":\"Zhangye\"},{\"id\":\"327\",\"provincecode\":\"640000\",\"city\":\"中卫市\",\"code\":\"640500\",\"initial\":\"Z\",\"short\":\"Zhongwei\"}];const HOT_CITY_LIST=[{cityCode:110000,city:'北京市'},{cityCode:310000,city:'上海市'},{cityCode:440100,city:'广州市'},{cityCode:440300,city:'深圳市'},{cityCode:330100,city:'杭州市'},{cityCode:320100,city:'南京市'},{cityCode:420100,city:'武汉市'},{cityCode:120000,city:'天津市'},{cityCode:610100,city:'西安市'}];const CITY_NOT_FOUND=[{city:'无匹配城市',code:\"000\"}];export{LETTERS,CITY_LIST,HOT_CITY_LIST,CITY_NOT_FOUND};","import { LETTERS, CITY_LIST } from './citydata';\r\nimport config from \"../../config/config\"; // API\r\n\r\nconst getLocationUrl = (latitude, longitude) => `https://apis.map.qq.com/ws/geocoder/v1/?location=${latitude},${longitude}&key=${config.key}`;\r\n\r\nconst getCountyListUrl = code => `https://apis.map.qq.com/ws/district/v1/getchildren?&id=${code}&key=${config.key}`;\r\n\r\nconst getIndexUrl = () => '../index/index';\r\n/**\r\n * 安全地在深层嵌套对象中取值\r\n * get deeply nested data from an object safely, return null if not found\r\n * @param {Array} keyList an Array of keys\r\n * @param {Object} obj \r\n */\r\n\r\n\r\nconst safeGet = (keyList, obj) => keyList.reduce((preValue, curKey) => preValue && preValue[curKey] ? preValue[curKey] : null, obj);\r\n\r\nconst isNotEmpty = array => Array.isArray(array) && array.length > 0;\r\n\r\nconst isChinese = str => /^[\\u4e00-\\u9fa5]+$/.test(str); // 城市名按首字母分组\r\n\r\n\r\nconst getCityListSortedByInitialLetter = () => LETTERS.map(letter => ({\r\n initial: letter,\r\n cityInfo: CITY_LIST.filter(city => city.initial == letter)\r\n}));\r\n\r\nconst getSlicedName = (cityObj, key, sliceLen) => cityObj[key] && cityObj[key].slice(0, sliceLen);\r\n\r\nconst onFail = err => {\r\n console.log(err);\r\n}; // add your logic here e.g. show a toast\r\n\r\n\r\nexport default {\r\n getLocationUrl,\r\n getCountyListUrl,\r\n getIndexUrl,\r\n config,\r\n safeGet,\r\n isNotEmpty,\r\n isChinese,\r\n getCityListSortedByInitialLetter,\r\n getSlicedName,\r\n onFail\r\n};","export const commonMessage = {\n 'location.getting': '定位中',\n 'location.city.getting': '正在定位城市',\n 'location.county.getting': '正在获取区县',\n 'location.city.fail': '定位失败,请重试',\n 'location.county.fail': '请求区县失败,请重试'\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 if(typeof renderjs.beforeCreate === 'function'){\n\t\t\trenderjs.beforeCreate = [renderjs.beforeCreate]\n\t\t}\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","// 看到此报错,是因为没有配置vue.config.js的【transpileDependencies】,详见:https://www.uviewui.com/components/npmSetting.html#_5-cli模式额外配置\nconst pleaseSetTranspileDependencies = {}, babelTest = pleaseSetTranspileDependencies?.test\n\n\n\n// 引入全局mixin\nimport mixin from './libs/mixin/mixin.js'\n// 小程序特有的mixin\nimport mpMixin from './libs/mixin/mpMixin.js'\n// 全局挂载引入http相关请求拦截插件\nimport Request from './libs/luch-request'\n\n// 路由封装\nimport route from './libs/util/route.js'\n// 颜色渐变相关,colorGradient-颜色渐变,hexToRgb-十六进制颜色转rgb颜色,rgbToHex-rgb转十六进制\nimport colorGradient from './libs/function/colorGradient.js'\n\n// 规则检验\nimport test from './libs/function/test.js'\n// 防抖方法\nimport debounce from './libs/function/debounce.js'\n// 节流方法\nimport throttle from './libs/function/throttle.js'\n// 公共文件写入的方法\nimport index from './libs/function/index.js'\n\n// 配置信息\nimport config from './libs/config/config.js'\n// props配置信息\nimport props from './libs/config/props.js'\n// 各个需要fixed的地方的z-index配置文件\nimport zIndex from './libs/config/zIndex.js'\n// 关于颜色的配置,特殊场景使用\nimport color from './libs/config/color.js'\n// 平台\nimport platform from './libs/function/platform'\n\nconst $u = {\n route,\n date: index.timeFormat, // 另名date\n colorGradient: colorGradient.colorGradient,\n hexToRgb: colorGradient.hexToRgb,\n rgbToHex: colorGradient.rgbToHex,\n colorToRgba: colorGradient.colorToRgba,\n test,\n type: ['primary', 'success', 'error', 'warning', 'info'],\n http: new Request(),\n config, // uView配置信息相关,比如版本号\n zIndex,\n debounce,\n throttle,\n mixin,\n mpMixin,\n props,\n ...index,\n color,\n platform\n}\n\n// $u挂载到uni对象上\nuni.$u = $u\n\nconst install = (Vue) => {\n // 时间格式化,同时两个名称,date和timeFormat\n Vue.filter('timeFormat', (timestamp, format) => uni.$u.timeFormat(timestamp, format))\n Vue.filter('date', (timestamp, format) => uni.$u.timeFormat(timestamp, format))\n // 将多久以前的方法,注入到全局过滤器\n Vue.filter('timeFrom', (timestamp, format) => uni.$u.timeFrom(timestamp, format))\n // 同时挂载到uni和Vue.prototype中\n\n // 只有vue,挂载到Vue.prototype才有意义,因为nvue中全局Vue.prototype和Vue.mixin是无效的\n Vue.prototype.$u = $u\n Vue.mixin(mixin)\n\n}\n\nexport default {\n install\n}\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","export default {\n\n // 将自定义节点设置成虚拟的,更加接近Vue组件的表现,能更好的使用flex属性\n options: {\n virtualHost: true\n }\n\n}\n","import Request from './core/Request'\r\n\r\nexport default Request\r\n","/**\r\n * @Class Request\r\n * @description luch-request http请求插件\r\n * @version 3.0.7\r\n * @Author lu-ch\r\n * @Date 2021-09-04\r\n * @Email webwork.s@qq.com\r\n * 文档: https://www.quanzhan.co/luch-request/\r\n * github: https://github.com/lei-mu/luch-request\r\n * DCloud: http://ext.dcloud.net.cn/plugin?id=392\r\n * HBuilderX: beat-3.0.4 alpha-3.0.4\r\n */\r\n\r\nimport dispatchRequest from './dispatchRequest'\r\nimport InterceptorManager from './InterceptorManager'\r\nimport mergeConfig from './mergeConfig'\r\nimport defaults from './defaults'\r\nimport { isPlainObject } from '../utils'\r\nimport clone from '../utils/clone'\r\n\r\nexport default class Request {\r\n /**\r\n * @param {Object} arg - 全局配置\r\n * @param {String} arg.baseURL - 全局根路径\r\n * @param {Object} arg.header - 全局header\r\n * @param {String} arg.method = [GET|POST|PUT|DELETE|CONNECT|HEAD|OPTIONS|TRACE] - 全局默认请求方式\r\n * @param {String} arg.dataType = [json] - 全局默认的dataType\r\n * @param {String} arg.responseType = [text|arraybuffer] - 全局默认的responseType。支付宝小程序不支持\r\n * @param {Object} arg.custom - 全局默认的自定义参数\r\n * @param {Number} arg.timeout - 全局默认的超时时间,单位 ms。默认60000。H5(HBuilderX 2.9.9+)、APP(HBuilderX 2.9.9+)、微信小程序(2.10.0)、支付宝小程序\r\n * @param {Boolean} arg.sslVerify - 全局默认的是否验证 ssl 证书。默认true.仅App安卓端支持(HBuilderX 2.3.3+)\r\n * @param {Boolean} arg.withCredentials - 全局默认的跨域请求时是否携带凭证(cookies)。默认false。仅H5支持(HBuilderX 2.6.15+)\r\n * @param {Boolean} arg.firstIpv4 - 全DNS解析时优先使用ipv4。默认false。仅 App-Android 支持 (HBuilderX 2.8.0+)\r\n * @param {Function(statusCode):Boolean} arg.validateStatus - 全局默认的自定义验证器。默认statusCode >= 200 && statusCode < 300\r\n */\r\n constructor(arg = {}) {\r\n if (!isPlainObject(arg)) {\r\n arg = {}\r\n console.warn('设置全局参数必须接收一个Object')\r\n }\r\n this.config = clone({ ...defaults, ...arg })\r\n this.interceptors = {\r\n request: new InterceptorManager(),\r\n response: new InterceptorManager()\r\n }\r\n }\r\n\r\n /**\r\n * @Function\r\n * @param {Request~setConfigCallback} f - 设置全局默认配置\r\n */\r\n setConfig(f) {\r\n this.config = f(this.config)\r\n }\r\n\r\n middleware(config) {\r\n config = mergeConfig(this.config, config)\r\n const chain = [dispatchRequest, undefined]\r\n let promise = Promise.resolve(config)\r\n\r\n this.interceptors.request.forEach((interceptor) => {\r\n chain.unshift(interceptor.fulfilled, interceptor.rejected)\r\n })\r\n\r\n this.interceptors.response.forEach((interceptor) => {\r\n chain.push(interceptor.fulfilled, interceptor.rejected)\r\n })\r\n\r\n while (chain.length) {\r\n promise = promise.then(chain.shift(), chain.shift())\r\n }\r\n\r\n return promise\r\n }\r\n\r\n /**\r\n * @Function\r\n * @param {Object} config - 请求配置项\r\n * @prop {String} options.url - 请求路径\r\n * @prop {Object} options.data - 请求参数\r\n * @prop {Object} [options.responseType = config.responseType] [text|arraybuffer] - 响应的数据类型\r\n * @prop {Object} [options.dataType = config.dataType] - 如果设为 json,会尝试对返回的数据做一次 JSON.parse\r\n * @prop {Object} [options.header = config.header] - 请求header\r\n * @prop {Object} [options.method = config.method] - 请求方法\r\n * @returns {Promise<unknown>}\r\n */\r\n request(config = {}) {\r\n return this.middleware(config)\r\n }\r\n\r\n get(url, options = {}) {\r\n return this.middleware({\r\n url,\r\n method: 'GET',\r\n ...options\r\n })\r\n }\r\n\r\n post(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'POST',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n put(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'PUT',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n delete(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'DELETE',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n connect(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'CONNECT',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n head(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'HEAD',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n options(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'OPTIONS',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n trace(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'TRACE',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n upload(url, config = {}) {\r\n config.url = url\r\n config.method = 'UPLOAD'\r\n return this.middleware(config)\r\n }\r\n\r\n download(url, config = {}) {\r\n config.url = url\r\n config.method = 'DOWNLOAD'\r\n return this.middleware(config)\r\n }\r\n}\r\n\r\n/**\r\n * setConfig回调\r\n * @return {Object} - 返回操作后的config\r\n * @callback Request~setConfigCallback\r\n * @param {Object} config - 全局默认config\r\n */\r\n","import adapter from '../adapters/index'\r\n\r\nexport default (config) => adapter(config)\r\n","import buildURL from '../helpers/buildURL'\r\nimport buildFullPath from '../core/buildFullPath'\r\nimport settle from '../core/settle'\r\nimport { isUndefined } from '../utils'\r\n\r\n/**\r\n * 返回可选值存在的配置\r\n * @param {Array} keys - 可选值数组\r\n * @param {Object} config2 - 配置\r\n * @return {{}} - 存在的配置项\r\n */\r\nconst mergeKeys = (keys, config2) => {\r\n const config = {}\r\n keys.forEach((prop) => {\r\n if (!isUndefined(config2[prop])) {\r\n config[prop] = config2[prop]\r\n }\r\n })\r\n return config\r\n}\r\nexport default (config) => new Promise((resolve, reject) => {\r\n const fullPath = buildURL(buildFullPath(config.baseURL, config.url), config.params)\r\n const _config = {\r\n url: fullPath,\r\n header: config.header,\r\n complete: (response) => {\r\n config.fullPath = fullPath\r\n response.config = config\r\n try {\r\n // 对可能字符串不是json 的情况容错\r\n if (typeof response.data === 'string') {\r\n response.data = JSON.parse(response.data)\r\n }\r\n // eslint-disable-next-line no-empty\r\n } catch (e) {\r\n }\r\n settle(resolve, reject, response)\r\n }\r\n }\r\n let requestTask\r\n if (config.method === 'UPLOAD') {\r\n delete _config.header['content-type']\r\n delete _config.header['Content-Type']\r\n const otherConfig = {\r\n\r\n\r\n\r\n filePath: config.filePath,\r\n name: config.name\r\n }\r\n const optionalKeys = [\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n 'formData'\r\n ]\r\n requestTask = uni.uploadFile({ ..._config, ...otherConfig, ...mergeKeys(optionalKeys, config) })\r\n } else if (config.method === 'DOWNLOAD') {\r\n\r\n\r\n\r\n\r\n\r\n requestTask = uni.downloadFile(_config)\r\n } else {\r\n const optionalKeys = [\r\n 'data',\r\n 'method',\r\n\r\n 'timeout',\r\n\r\n 'dataType',\r\n\r\n 'responseType',\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n ]\r\n requestTask = uni.request({ ..._config, ...mergeKeys(optionalKeys, config) })\r\n }\r\n if (config.getTask) {\r\n config.getTask(requestTask, config)\r\n }\r\n})\r\n","'use strict'\r\n\r\nimport * as utils from '../utils'\r\n\r\nfunction encode(val) {\r\n return encodeURIComponent(val)\r\n .replace(/%40/gi, '@')\r\n .replace(/%3A/gi, ':')\r\n .replace(/%24/g, '$')\r\n .replace(/%2C/gi, ',')\r\n .replace(/%20/g, '+')\r\n .replace(/%5B/gi, '[')\r\n .replace(/%5D/gi, ']')\r\n}\r\n\r\n/**\r\n * Build a URL by appending params to the end\r\n *\r\n * @param {string} url The base of the url (e.g., http://www.google.com)\r\n * @param {object} [params] The params to be appended\r\n * @returns {string} The formatted url\r\n */\r\nexport default function buildURL(url, params) {\r\n /* eslint no-param-reassign:0 */\r\n if (!params) {\r\n return url\r\n }\r\n\r\n let serializedParams\r\n if (utils.isURLSearchParams(params)) {\r\n serializedParams = params.toString()\r\n } else {\r\n const parts = []\r\n\r\n utils.forEach(params, (val, key) => {\r\n if (val === null || typeof val === 'undefined') {\r\n return\r\n }\r\n\r\n if (utils.isArray(val)) {\r\n key = `${key}[]`\r\n } else {\r\n val = [val]\r\n }\r\n\r\n utils.forEach(val, (v) => {\r\n if (utils.isDate(v)) {\r\n v = v.toISOString()\r\n } else if (utils.isObject(v)) {\r\n v = JSON.stringify(v)\r\n }\r\n parts.push(`${encode(key)}=${encode(v)}`)\r\n })\r\n })\r\n\r\n serializedParams = parts.join('&')\r\n }\r\n\r\n if (serializedParams) {\r\n const hashmarkIndex = url.indexOf('#')\r\n if (hashmarkIndex !== -1) {\r\n url = url.slice(0, hashmarkIndex)\r\n }\r\n\r\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams\r\n }\r\n\r\n return url\r\n}\r\n","'use strict'\r\n\r\n// utils is a library of generic helper functions non-specific to axios\r\n\r\nconst { toString } = Object.prototype\r\n\r\n/**\r\n * Determine if a value is an Array\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is an Array, otherwise false\r\n */\r\nexport function isArray(val) {\r\n return toString.call(val) === '[object Array]'\r\n}\r\n\r\n/**\r\n * Determine if a value is an Object\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is an Object, otherwise false\r\n */\r\nexport function isObject(val) {\r\n return val !== null && typeof val === 'object'\r\n}\r\n\r\n/**\r\n * Determine if a value is a Date\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is a Date, otherwise false\r\n */\r\nexport function isDate(val) {\r\n return toString.call(val) === '[object Date]'\r\n}\r\n\r\n/**\r\n * Determine if a value is a URLSearchParams object\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\r\n */\r\nexport function isURLSearchParams(val) {\r\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams\r\n}\r\n\r\n/**\r\n * Iterate over an Array or an Object invoking a function for each item.\r\n *\r\n * If `obj` is an Array callback will be called passing\r\n * the value, index, and complete array for each item.\r\n *\r\n * If 'obj' is an Object callback will be called passing\r\n * the value, key, and complete object for each property.\r\n *\r\n * @param {Object|Array} obj The object to iterate\r\n * @param {Function} fn The callback to invoke for each item\r\n */\r\nexport function forEach(obj, fn) {\r\n // Don't bother if no value provided\r\n if (obj === null || typeof obj === 'undefined') {\r\n return\r\n }\r\n\r\n // Force an array if not already something iterable\r\n if (typeof obj !== 'object') {\r\n /* eslint no-param-reassign:0 */\r\n obj = [obj]\r\n }\r\n\r\n if (isArray(obj)) {\r\n // Iterate over array values\r\n for (let i = 0, l = obj.length; i < l; i++) {\r\n fn.call(null, obj[i], i, obj)\r\n }\r\n } else {\r\n // Iterate over object keys\r\n for (const key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n fn.call(null, obj[key], key, obj)\r\n }\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 是否为boolean 值\r\n * @param val\r\n * @returns {boolean}\r\n */\r\nexport function isBoolean(val) {\r\n return typeof val === 'boolean'\r\n}\r\n\r\n/**\r\n * 是否为真正的对象{} new Object\r\n * @param {any} obj - 检测的对象\r\n * @returns {boolean}\r\n */\r\nexport function isPlainObject(obj) {\r\n return Object.prototype.toString.call(obj) === '[object Object]'\r\n}\r\n\r\n/**\r\n * Function equal to merge with the difference being that no reference\r\n * to original objects is kept.\r\n *\r\n * @see merge\r\n * @param {Object} obj1 Object to merge\r\n * @returns {Object} Result of all merge properties\r\n */\r\nexport function deepMerge(/* obj1, obj2, obj3, ... */) {\r\n const result = {}\r\n function assignValue(val, key) {\r\n if (typeof result[key] === 'object' && typeof val === 'object') {\r\n result[key] = deepMerge(result[key], val)\r\n } else if (typeof val === 'object') {\r\n result[key] = deepMerge({}, val)\r\n } else {\r\n result[key] = val\r\n }\r\n }\r\n for (let i = 0, l = arguments.length; i < l; i++) {\r\n forEach(arguments[i], assignValue)\r\n }\r\n return result\r\n}\r\n\r\nexport function isUndefined(val) {\r\n return typeof val === 'undefined'\r\n}\r\n","'use strict'\r\n\r\nimport isAbsoluteURL from '../helpers/isAbsoluteURL'\r\nimport combineURLs from '../helpers/combineURLs'\r\n\r\n/**\r\n * Creates a new URL by combining the baseURL with the requestedURL,\r\n * only when the requestedURL is not already an absolute URL.\r\n * If the requestURL is absolute, this function returns the requestedURL untouched.\r\n *\r\n * @param {string} baseURL The base URL\r\n * @param {string} requestedURL Absolute or relative URL to combine\r\n * @returns {string} The combined full path\r\n */\r\nexport default function buildFullPath(baseURL, requestedURL) {\r\n if (baseURL && !isAbsoluteURL(requestedURL)) {\r\n return combineURLs(baseURL, requestedURL)\r\n }\r\n return requestedURL\r\n}\r\n","'use strict'\r\n\r\n/**\r\n * Determines whether the specified URL is absolute\r\n *\r\n * @param {string} url The URL to test\r\n * @returns {boolean} True if the specified URL is absolute, otherwise false\r\n */\r\nexport default function isAbsoluteURL(url) {\r\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\r\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\r\n // by any combination of letters, digits, plus, period, or hyphen.\r\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url)\r\n}\r\n","'use strict'\r\n\r\n/**\r\n * Creates a new URL by combining the specified URLs\r\n *\r\n * @param {string} baseURL The base URL\r\n * @param {string} relativeURL The relative URL\r\n * @returns {string} The combined URL\r\n */\r\nexport default function combineURLs(baseURL, relativeURL) {\r\n return relativeURL\r\n ? `${baseURL.replace(/\\/+$/, '')}/${relativeURL.replace(/^\\/+/, '')}`\r\n : baseURL\r\n}\r\n","/**\r\n * Resolve or reject a Promise based on response status.\r\n *\r\n * @param {Function} resolve A function that resolves the promise.\r\n * @param {Function} reject A function that rejects the promise.\r\n * @param {object} response The response.\r\n */\r\nexport default function settle(resolve, reject, response) {\r\n const { validateStatus } = response.config\r\n const status = response.statusCode\r\n if (status && (!validateStatus || validateStatus(status))) {\r\n resolve(response)\r\n } else {\r\n reject(response)\r\n }\r\n}\r\n","'use strict'\r\n\r\nfunction InterceptorManager() {\r\n this.handlers = []\r\n}\r\n\r\n/**\r\n * Add a new interceptor to the stack\r\n *\r\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\r\n * @param {Function} rejected The function to handle `reject` for a `Promise`\r\n *\r\n * @return {Number} An ID used to remove interceptor later\r\n */\r\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\r\n this.handlers.push({\r\n fulfilled,\r\n rejected\r\n })\r\n return this.handlers.length - 1\r\n}\r\n\r\n/**\r\n * Remove an interceptor from the stack\r\n *\r\n * @param {Number} id The ID that was returned by `use`\r\n */\r\nInterceptorManager.prototype.eject = function eject(id) {\r\n if (this.handlers[id]) {\r\n this.handlers[id] = null\r\n }\r\n}\r\n\r\n/**\r\n * Iterate over all the registered interceptors\r\n *\r\n * This method is particularly useful for skipping over any\r\n * interceptors that may have become `null` calling `eject`.\r\n *\r\n * @param {Function} fn The function to call for each interceptor\r\n */\r\nInterceptorManager.prototype.forEach = function forEach(fn) {\r\n this.handlers.forEach((h) => {\r\n if (h !== null) {\r\n fn(h)\r\n }\r\n })\r\n}\r\n\r\nexport default InterceptorManager\r\n","import { deepMerge, isUndefined } from '../utils'\r\n\r\n/**\r\n * 合并局部配置优先的配置,如果局部有该配置项则用局部,如果全局有该配置项则用全局\r\n * @param {Array} keys - 配置项\r\n * @param {Object} globalsConfig - 当前的全局配置\r\n * @param {Object} config2 - 局部配置\r\n * @return {{}}\r\n */\r\nconst mergeKeys = (keys, globalsConfig, config2) => {\r\n const config = {}\r\n keys.forEach((prop) => {\r\n if (!isUndefined(config2[prop])) {\r\n config[prop] = config2[prop]\r\n } else if (!isUndefined(globalsConfig[prop])) {\r\n config[prop] = globalsConfig[prop]\r\n }\r\n })\r\n return config\r\n}\r\n/**\r\n *\r\n * @param globalsConfig - 当前实例的全局配置\r\n * @param config2 - 当前的局部配置\r\n * @return - 合并后的配置\r\n */\r\nexport default (globalsConfig, config2 = {}) => {\r\n const method = config2.method || globalsConfig.method || 'GET'\r\n let config = {\r\n baseURL: globalsConfig.baseURL || '',\r\n method,\r\n url: config2.url || '',\r\n params: config2.params || {},\r\n custom: { ...(globalsConfig.custom || {}), ...(config2.custom || {}) },\r\n header: deepMerge(globalsConfig.header || {}, config2.header || {})\r\n }\r\n const defaultToConfig2Keys = ['getTask', 'validateStatus']\r\n config = { ...config, ...mergeKeys(defaultToConfig2Keys, globalsConfig, config2) }\r\n\r\n // eslint-disable-next-line no-empty\r\n if (method === 'DOWNLOAD') {\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n } else if (method === 'UPLOAD') {\r\n delete config.header['content-type']\r\n delete config.header['Content-Type']\r\n const uploadKeys = [\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n 'filePath',\r\n 'name',\r\n\r\n\r\n\r\n 'formData'\r\n ]\r\n uploadKeys.forEach((prop) => {\r\n if (!isUndefined(config2[prop])) {\r\n config[prop] = config2[prop]\r\n }\r\n })\r\n\r\n\r\n\r\n\r\n\r\n } else {\r\n const defaultsKeys = [\r\n 'data',\r\n\r\n 'timeout',\r\n\r\n 'dataType',\r\n\r\n 'responseType',\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n ]\r\n config = { ...config, ...mergeKeys(defaultsKeys, globalsConfig, config2) }\r\n }\r\n\r\n return config\r\n}\r\n","/**\r\n * 默认的全局配置\r\n */\r\n\r\nexport default {\r\n baseURL: '',\r\n header: {},\r\n method: 'GET',\r\n dataType: 'json',\r\n\r\n responseType: 'text',\r\n\r\n custom: {},\r\n\r\n timeout: 60000,\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n validateStatus: function validateStatus(status) {\r\n return status >= 200 && status < 300\r\n }\r\n}\r\n","/* eslint-disable */\r\nvar clone = (function() {\r\n 'use strict';\r\n\r\n function _instanceof(obj, type) {\r\n return type != null && obj instanceof type;\r\n }\r\n\r\n var nativeMap;\r\n try {\r\n nativeMap = Map;\r\n } catch(_) {\r\n // maybe a reference error because no `Map`. Give it a dummy value that no\r\n // value will ever be an instanceof.\r\n nativeMap = function() {};\r\n }\r\n\r\n var nativeSet;\r\n try {\r\n nativeSet = Set;\r\n } catch(_) {\r\n nativeSet = function() {};\r\n }\r\n\r\n var nativePromise;\r\n try {\r\n nativePromise = Promise;\r\n } catch(_) {\r\n nativePromise = function() {};\r\n }\r\n\r\n /**\r\n * Clones (copies) an Object using deep copying.\r\n *\r\n * This function supports circular references by default, but if you are certain\r\n * there are no circular references in your object, you can save some CPU time\r\n * by calling clone(obj, false).\r\n *\r\n * Caution: if `circular` is false and `parent` contains circular references,\r\n * your program may enter an infinite loop and crash.\r\n *\r\n * @param `parent` - the object to be cloned\r\n * @param `circular` - set to true if the object to be cloned may contain\r\n * circular references. (optional - true by default)\r\n * @param `depth` - set to a number if the object is only to be cloned to\r\n * a particular depth. (optional - defaults to Infinity)\r\n * @param `prototype` - sets the prototype to be used when cloning an object.\r\n * (optional - defaults to parent prototype).\r\n * @param `includeNonEnumerable` - set to true if the non-enumerable properties\r\n * should be cloned as well. Non-enumerable properties on the prototype\r\n * chain will be ignored. (optional - false by default)\r\n */\r\n function clone(parent, circular, depth, prototype, includeNonEnumerable) {\r\n if (typeof circular === 'object') {\r\n depth = circular.depth;\r\n prototype = circular.prototype;\r\n includeNonEnumerable = circular.includeNonEnumerable;\r\n circular = circular.circular;\r\n }\r\n // maintain two arrays for circular references, where corresponding parents\r\n // and children have the same index\r\n var allParents = [];\r\n var allChildren = [];\r\n\r\n var useBuffer = typeof Buffer != 'undefined';\r\n\r\n if (typeof circular == 'undefined')\r\n circular = true;\r\n\r\n if (typeof depth == 'undefined')\r\n depth = Infinity;\r\n\r\n // recurse this function so we don't reset allParents and allChildren\r\n function _clone(parent, depth) {\r\n // cloning null always returns null\r\n if (parent === null)\r\n return null;\r\n\r\n if (depth === 0)\r\n return parent;\r\n\r\n var child;\r\n var proto;\r\n if (typeof parent != 'object') {\r\n return parent;\r\n }\r\n\r\n if (_instanceof(parent, nativeMap)) {\r\n child = new nativeMap();\r\n } else if (_instanceof(parent, nativeSet)) {\r\n child = new nativeSet();\r\n } else if (_instanceof(parent, nativePromise)) {\r\n child = new nativePromise(function (resolve, reject) {\r\n parent.then(function(value) {\r\n resolve(_clone(value, depth - 1));\r\n }, function(err) {\r\n reject(_clone(err, depth - 1));\r\n });\r\n });\r\n } else if (clone.__isArray(parent)) {\r\n child = [];\r\n } else if (clone.__isRegExp(parent)) {\r\n child = new RegExp(parent.source, __getRegExpFlags(parent));\r\n if (parent.lastIndex) child.lastIndex = parent.lastIndex;\r\n } else if (clone.__isDate(parent)) {\r\n child = new Date(parent.getTime());\r\n } else if (useBuffer && Buffer.isBuffer(parent)) {\r\n if (Buffer.from) {\r\n // Node.js >= 5.10.0\r\n child = Buffer.from(parent);\r\n } else {\r\n // Older Node.js versions\r\n child = new Buffer(parent.length);\r\n parent.copy(child);\r\n }\r\n return child;\r\n } else if (_instanceof(parent, Error)) {\r\n child = Object.create(parent);\r\n } else {\r\n if (typeof prototype == 'undefined') {\r\n proto = Object.getPrototypeOf(parent);\r\n child = Object.create(proto);\r\n }\r\n else {\r\n child = Object.create(prototype);\r\n proto = prototype;\r\n }\r\n }\r\n\r\n if (circular) {\r\n var index = allParents.indexOf(parent);\r\n\r\n if (index != -1) {\r\n return allChildren[index];\r\n }\r\n allParents.push(parent);\r\n allChildren.push(child);\r\n }\r\n\r\n if (_instanceof(parent, nativeMap)) {\r\n parent.forEach(function(value, key) {\r\n var keyChild = _clone(key, depth - 1);\r\n var valueChild = _clone(value, depth - 1);\r\n child.set(keyChild, valueChild);\r\n });\r\n }\r\n if (_instanceof(parent, nativeSet)) {\r\n parent.forEach(function(value) {\r\n var entryChild = _clone(value, depth - 1);\r\n child.add(entryChild);\r\n });\r\n }\r\n\r\n for (var i in parent) {\r\n var attrs = Object.getOwnPropertyDescriptor(parent, i);\r\n if (attrs) {\r\n child[i] = _clone(parent[i], depth - 1);\r\n }\r\n\r\n try {\r\n var objProperty = Object.getOwnPropertyDescriptor(parent, i);\r\n if (objProperty.set === 'undefined') {\r\n // no setter defined. Skip cloning this property\r\n continue;\r\n }\r\n child[i] = _clone(parent[i], depth - 1);\r\n } catch(e){\r\n if (e instanceof TypeError) {\r\n // when in strict mode, TypeError will be thrown if child[i] property only has a getter\r\n // we can't do anything about this, other than inform the user that this property cannot be set.\r\n continue\r\n } else if (e instanceof ReferenceError) {\r\n //this may happen in non strict mode\r\n continue\r\n }\r\n }\r\n\r\n }\r\n\r\n if (Object.getOwnPropertySymbols) {\r\n var symbols = Object.getOwnPropertySymbols(parent);\r\n for (var i = 0; i < symbols.length; i++) {\r\n // Don't need to worry about cloning a symbol because it is a primitive,\r\n // like a number or string.\r\n var symbol = symbols[i];\r\n var descriptor = Object.getOwnPropertyDescriptor(parent, symbol);\r\n if (descriptor && !descriptor.enumerable && !includeNonEnumerable) {\r\n continue;\r\n }\r\n child[symbol] = _clone(parent[symbol], depth - 1);\r\n Object.defineProperty(child, symbol, descriptor);\r\n }\r\n }\r\n\r\n if (includeNonEnumerable) {\r\n var allPropertyNames = Object.getOwnPropertyNames(parent);\r\n for (var i = 0; i < allPropertyNames.length; i++) {\r\n var propertyName = allPropertyNames[i];\r\n var descriptor = Object.getOwnPropertyDescriptor(parent, propertyName);\r\n if (descriptor && descriptor.enumerable) {\r\n continue;\r\n }\r\n child[propertyName] = _clone(parent[propertyName], depth - 1);\r\n Object.defineProperty(child, propertyName, descriptor);\r\n }\r\n }\r\n\r\n return child;\r\n }\r\n\r\n return _clone(parent, depth);\r\n }\r\n\r\n /**\r\n * Simple flat clone using prototype, accepts only objects, usefull for property\r\n * override on FLAT configuration object (no nested props).\r\n *\r\n * USE WITH CAUTION! This may not behave as you wish if you do not know how this\r\n * works.\r\n */\r\n clone.clonePrototype = function clonePrototype(parent) {\r\n if (parent === null)\r\n return null;\r\n\r\n var c = function () {};\r\n c.prototype = parent;\r\n return new c();\r\n };\r\n\r\n// private utility functions\r\n\r\n function __objToStr(o) {\r\n return Object.prototype.toString.call(o);\r\n }\r\n clone.__objToStr = __objToStr;\r\n\r\n function __isDate(o) {\r\n return typeof o === 'object' && __objToStr(o) === '[object Date]';\r\n }\r\n clone.__isDate = __isDate;\r\n\r\n function __isArray(o) {\r\n return typeof o === 'object' && __objToStr(o) === '[object Array]';\r\n }\r\n clone.__isArray = __isArray;\r\n\r\n function __isRegExp(o) {\r\n return typeof o === 'object' && __objToStr(o) === '[object RegExp]';\r\n }\r\n clone.__isRegExp = __isRegExp;\r\n\r\n function __getRegExpFlags(re) {\r\n var flags = '';\r\n if (re.global) flags += 'g';\r\n if (re.ignoreCase) flags += 'i';\r\n if (re.multiline) flags += 'm';\r\n return flags;\r\n }\r\n clone.__getRegExpFlags = __getRegExpFlags;\r\n\r\n return clone;\r\n})();\r\n\r\nexport default clone\r\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <http://feross.org>\n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return '<Buffer ' + str + '>'\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n","/**\r\n * 路由跳转方法,该方法相对于直接使用uni.xxx的好处是使用更加简单快捷\r\n * 并且带有路由拦截功能\r\n */\r\n\r\nclass Router {\r\n\tconstructor() {\r\n\t\t// 原始属性定义\r\n\t\tthis.config = {\r\n\t\t\ttype: 'navigateTo',\r\n\t\t\turl: '',\r\n\t\t\tdelta: 1, // navigateBack页面后退时,回退的层数\r\n\t\t\tparams: {}, // 传递的参数\r\n\t\t\tanimationType: 'pop-in', // 窗口动画,只在APP有效\r\n\t\t\tanimationDuration: 300, // 窗口动画持续时间,单位毫秒,只在APP有效\r\n\t\t\tintercept: false // 是否需要拦截\r\n\t\t}\r\n\t\t// 因为route方法是需要对外赋值给另外的对象使用,同时route内部有使用this,会导致route失去上下文\r\n\t\t// 这里在构造函数中进行this绑定\r\n\t\tthis.route = this.route.bind(this)\r\n\t}\r\n\r\n\t// 判断url前面是否有\"/\",如果没有则加上,否则无法跳转\r\n\taddRootPath(url) {\r\n\t\treturn url[0] === '/' ? url : `/${url}`\r\n\t}\r\n\r\n\t// 整合路由参数\r\n\tmixinParam(url, params) {\r\n\t\turl = url && this.addRootPath(url)\r\n\r\n\t\t// 使用正则匹配,主要依据是判断是否有\"/\",\"?\",\"=\"等,如“/page/index/index?name=mary\"\r\n\t\t// 如果有url中有get参数,转换后无需带上\"?\"\r\n\t\tlet query = ''\r\n\t\tif (/.*\\/.*\\?.*=.*/.test(url)) {\r\n\t\t\t// object对象转为get类型的参数\r\n\t\t\tquery = uni.$u.queryParams(params, false)\r\n\t\t\t// 因为已有get参数,所以后面拼接的参数需要带上\"&\"隔开\r\n\t\t\treturn url += `&${query}`\r\n\t\t}\r\n\t\t// 直接拼接参数,因为此处url中没有后面的query参数,也就没有\"?/&\"之类的符号\r\n\t\tquery = uni.$u.queryParams(params)\r\n\t\treturn url += query\r\n\t}\r\n\r\n\t// 对外的方法名称\r\n\tasync route(options = {}, params = {}) {\r\n\t\t// 合并用户的配置和内部的默认配置\r\n\t\tlet mergeConfig = {}\r\n\r\n\t\tif (typeof options === 'string') {\r\n\t\t\t// 如果options为字符串,则为route(url, params)的形式\r\n\t\t\tmergeConfig.url = this.mixinParam(options, params)\r\n\t\t\tmergeConfig.type = 'navigateTo'\r\n\t\t} else {\r\n\t\t\tmergeConfig = uni.$u.deepMerge(this.config, options)\r\n\t\t\t// 否则正常使用mergeConfig中的url和params进行拼接\r\n\t\t\tmergeConfig.url = this.mixinParam(options.url, options.params)\r\n\t\t}\r\n\r\n\t\t// 如果本次跳转的路径和本页面路径一致,不执行跳转,防止用户快速点击跳转按钮,造成多次跳转同一个页面的问题\r\n\t\tif (mergeConfig.url === uni.$u.page()) return\r\n\r\n\t\tif (params.intercept) {\r\n\t\t\tthis.config.intercept = params.intercept\r\n\t\t}\r\n\t\t// params参数也带给拦截器\r\n\t\tmergeConfig.params = params\r\n\t\t// 合并内外部参数\r\n\t\tmergeConfig = uni.$u.deepMerge(this.config, mergeConfig)\r\n\t\t// 判断用户是否定义了拦截器\r\n\t\tif (typeof uni.$u.routeIntercept === 'function') {\r\n\t\t\t// 定一个promise,根据用户执行resolve(true)或者resolve(false)来决定是否进行路由跳转\r\n\t\t\tconst isNext = await new Promise((resolve, reject) => {\r\n\t\t\t\tuni.$u.routeIntercept(mergeConfig, resolve)\r\n\t\t\t})\r\n\t\t\t// 如果isNext为true,则执行路由跳转\r\n\t\t\tisNext && this.openPage(mergeConfig)\r\n\t\t} else {\r\n\t\t\tthis.openPage(mergeConfig)\r\n\t\t}\r\n\t}\r\n\r\n\t// 执行路由跳转\r\n\topenPage(config) {\r\n\t\t// 解构参数\r\n\t\tconst {\r\n\t\t\turl,\r\n\t\t\ttype,\r\n\t\t\tdelta,\r\n\t\t\tanimationType,\r\n\t\t\tanimationDuration\r\n\t\t} = config\r\n\t\tif (config.type == 'navigateTo' || config.type == 'to') {\r\n\t\t\tuni.navigateTo({\r\n\t\t\t\turl,\r\n\t\t\t\tanimationType,\r\n\t\t\t\tanimationDuration\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (config.type == 'redirectTo' || config.type == 'redirect') {\r\n\t\t\tuni.redirectTo({\r\n\t\t\t\turl\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (config.type == 'switchTab' || config.type == 'tab') {\r\n\t\t\tuni.switchTab({\r\n\t\t\t\turl\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (config.type == 'reLaunch' || config.type == 'launch') {\r\n\t\t\tuni.reLaunch({\r\n\t\t\t\turl\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (config.type == 'navigateBack' || config.type == 'back') {\r\n\t\t\tuni.navigateBack({\r\n\t\t\t\tdelta\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport default (new Router()).route\r\n","// TODO(Babel 8): Remove this file.\n\nvar runtime = require('@babel/runtime/helpers/regeneratorRuntime')()\nmodule.exports = runtime\n","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\r\n * 求两个颜色之间的渐变值\r\n * @param {string} startColor 开始的颜色\r\n * @param {string} endColor 结束的颜色\r\n * @param {number} step 颜色等分的份额\r\n * */\r\nfunction colorGradient(startColor = 'rgb(0, 0, 0)', endColor = 'rgb(255, 255, 255)', step = 10) {\r\n const startRGB = hexToRgb(startColor, false) // 转换为rgb数组模式\r\n const startR = startRGB[0]\r\n const startG = startRGB[1]\r\n const startB = startRGB[2]\r\n\r\n const endRGB = hexToRgb(endColor, false)\r\n const endR = endRGB[0]\r\n const endG = endRGB[1]\r\n const endB = endRGB[2]\r\n\r\n const sR = (endR - startR) / step // 总差值\r\n const sG = (endG - startG) / step\r\n const sB = (endB - startB) / step\r\n const colorArr = []\r\n for (let i = 0; i < step; i++) {\r\n // 计算每一步的hex值\r\n let hex = rgbToHex(`rgb(${Math.round((sR * i + startR))},${Math.round((sG * i + startG))},${Math.round((sB\r\n\t\t\t* i + startB))})`)\r\n // 确保第一个颜色值为startColor的值\r\n if (i === 0) hex = rgbToHex(startColor)\r\n // 确保最后一个颜色值为endColor的值\r\n if (i === step - 1) hex = rgbToHex(endColor)\r\n colorArr.push(hex)\r\n }\r\n return colorArr\r\n}\r\n\r\n// 将hex表示方式转换为rgb表示方式(这里返回rgb数组模式)\r\nfunction hexToRgb(sColor, str = true) {\r\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/\r\n sColor = String(sColor).toLowerCase()\r\n if (sColor && reg.test(sColor)) {\r\n if (sColor.length === 4) {\r\n let sColorNew = '#'\r\n for (let i = 1; i < 4; i += 1) {\r\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1))\r\n }\r\n sColor = sColorNew\r\n }\r\n // 处理六位的颜色值\r\n const sColorChange = []\r\n for (let i = 1; i < 7; i += 2) {\r\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`))\r\n }\r\n if (!str) {\r\n return sColorChange\r\n }\r\n return `rgb(${sColorChange[0]},${sColorChange[1]},${sColorChange[2]})`\r\n } if (/^(rgb|RGB)/.test(sColor)) {\r\n const arr = sColor.replace(/(?:\\(|\\)|rgb|RGB)*/g, '').split(',')\r\n return arr.map((val) => Number(val))\r\n }\r\n return sColor\r\n}\r\n\r\n// 将rgb表示方式转换为hex表示方式\r\nfunction rgbToHex(rgb) {\r\n const _this = rgb\r\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/\r\n if (/^(rgb|RGB)/.test(_this)) {\r\n const aColor = _this.replace(/(?:\\(|\\)|rgb|RGB)*/g, '').split(',')\r\n let strHex = '#'\r\n for (let i = 0; i < aColor.length; i++) {\r\n let hex = Number(aColor[i]).toString(16)\r\n hex = String(hex).length == 1 ? `${0}${hex}` : hex // 保证每个rgb的值为2位\r\n if (hex === '0') {\r\n hex += hex\r\n }\r\n strHex += hex\r\n }\r\n if (strHex.length !== 7) {\r\n strHex = _this\r\n }\r\n return strHex\r\n } if (reg.test(_this)) {\r\n const aNum = _this.replace(/#/, '').split('')\r\n if (aNum.length === 6) {\r\n return _this\r\n } if (aNum.length === 3) {\r\n let numHex = '#'\r\n for (let i = 0; i < aNum.length; i += 1) {\r\n numHex += (aNum[i] + aNum[i])\r\n }\r\n return numHex\r\n }\r\n } else {\r\n return _this\r\n }\r\n}\r\n\r\n/**\r\n* JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串\r\n* sHex为传入的十六进制的色值\r\n* alpha为rgba的透明度\r\n*/\r\nfunction colorToRgba(color, alpha) {\r\n color = rgbToHex(color)\r\n // 十六进制颜色值的正则表达式\r\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/\r\n /* 16进制颜色转为RGB格式 */\r\n let sColor = String(color).toLowerCase()\r\n if (sColor && reg.test(sColor)) {\r\n if (sColor.length === 4) {\r\n let sColorNew = '#'\r\n for (let i = 1; i < 4; i += 1) {\r\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1))\r\n }\r\n sColor = sColorNew\r\n }\r\n // 处理六位的颜色值\r\n const sColorChange = []\r\n for (let i = 1; i < 7; i += 2) {\r\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`))\r\n }\r\n // return sColorChange.join(',')\r\n return `rgba(${sColorChange.join(',')},${alpha})`\r\n }\r\n\r\n return sColor\r\n}\r\n\r\nexport default {\r\n colorGradient,\r\n hexToRgb,\r\n rgbToHex,\r\n colorToRgba\r\n}\r\n","/**\r\n * 验证电子邮箱格式\r\n */\r\nfunction email(value) {\r\n return /^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证手机格式\r\n */\r\nfunction mobile(value) {\r\n return /^1([3589]\\d|4[5-9]|6[1-2,4-7]|7[0-8])\\d{8}$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证URL格式\r\n */\r\nfunction url(value) {\r\n return /^((https|http|ftp|rtsp|mms):\\/\\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\\/?)|(\\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\\/?)$/\r\n .test(value)\r\n}\r\n\r\n/**\r\n * 验证日期格式\r\n */\r\nfunction date(value) {\r\n if (!value) return false\r\n // 判断是否数值或者字符串数值(意味着为时间戳),转为数值,否则new Date无法识别字符串时间戳\r\n if (number(value)) value = +value\r\n return !/Invalid|NaN/.test(new Date(value).toString())\r\n}\r\n\r\n/**\r\n * 验证ISO类型的日期格式\r\n */\r\nfunction dateISO(value) {\r\n return /^\\d{4}[\\/\\-](0?[1-9]|1[012])[\\/\\-](0?[1-9]|[12][0-9]|3[01])$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证十进制数字\r\n */\r\nfunction number(value) {\r\n return /^[\\+-]?(\\d+\\.?\\d*|\\.\\d+|\\d\\.\\d+e\\+\\d+)$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证字符串\r\n */\r\nfunction string(value) {\r\n return typeof value === 'string'\r\n}\r\n\r\n/**\r\n * 验证整数\r\n */\r\nfunction digits(value) {\r\n return /^\\d+$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证身份证号码\r\n */\r\nfunction idCard(value) {\r\n return /^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$/.test(\r\n value\r\n )\r\n}\r\n\r\n/**\r\n * 是否车牌号\r\n */\r\nfunction carNo(value) {\r\n // 新能源车牌\r\n const xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/\r\n // 旧车牌\r\n const creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/\r\n if (value.length === 7) {\r\n return creg.test(value)\r\n } if (value.length === 8) {\r\n return xreg.test(value)\r\n }\r\n return false\r\n}\r\n\r\n/**\r\n * 金额,只允许2位小数\r\n */\r\nfunction amount(value) {\r\n // 金额,只允许保留两位小数\r\n return /^[1-9]\\d*(,\\d{3})*(\\.\\d{1,2})?$|^0\\.\\d{1,2}$/.test(value)\r\n}\r\n\r\n/**\r\n * 中文\r\n */\r\nfunction chinese(value) {\r\n const reg = /^[\\u4e00-\\u9fa5]+$/gi\r\n return reg.test(value)\r\n}\r\n\r\n/**\r\n * 只能输入字母\r\n */\r\nfunction letter(value) {\r\n return /^[a-zA-Z]*$/.test(value)\r\n}\r\n\r\n/**\r\n * 只能是字母或者数字\r\n */\r\nfunction enOrNum(value) {\r\n // 英文或者数字\r\n const reg = /^[0-9a-zA-Z]*$/g\r\n return reg.test(value)\r\n}\r\n\r\n/**\r\n * 验证是否包含某个值\r\n */\r\nfunction contains(value, param) {\r\n return value.indexOf(param) >= 0\r\n}\r\n\r\n/**\r\n * 验证一个值范围[min, max]\r\n */\r\nfunction range(value, param) {\r\n return value >= param[0] && value <= param[1]\r\n}\r\n\r\n/**\r\n * 验证一个长度范围[min, max]\r\n */\r\nfunction rangeLength(value, param) {\r\n return value.length >= param[0] && value.length <= param[1]\r\n}\r\n\r\n/**\r\n * 是否固定电话\r\n */\r\nfunction landline(value) {\r\n const reg = /^\\d{3,4}-\\d{7,8}(-\\d{3,4})?$/\r\n return reg.test(value)\r\n}\r\n\r\n/**\r\n * 判断是否为空\r\n */\r\nfunction empty(value) {\r\n switch (typeof value) {\r\n case 'undefined':\r\n return true\r\n case 'string':\r\n if (value.replace(/(^[ \\t\\n\\r]*)|([ \\t\\n\\r]*$)/g, '').length == 0) return true\r\n break\r\n case 'boolean':\r\n if (!value) return true\r\n break\r\n case 'number':\r\n if (value === 0 || isNaN(value)) return true\r\n break\r\n case 'object':\r\n if (value === null || value.length === 0) return true\r\n for (const i in value) {\r\n return false\r\n }\r\n return true\r\n }\r\n return false\r\n}\r\n\r\n/**\r\n * 是否json字符串\r\n */\r\nfunction jsonString(value) {\r\n if (typeof value === 'string') {\r\n try {\r\n const obj = JSON.parse(value)\r\n if (typeof obj === 'object' && obj) {\r\n return true\r\n }\r\n return false\r\n } catch (e) {\r\n return false\r\n }\r\n }\r\n return false\r\n}\r\n\r\n/**\r\n * 是否数组\r\n */\r\nfunction array(value) {\r\n if (typeof Array.isArray === 'function') {\r\n return Array.isArray(value)\r\n }\r\n return Object.prototype.toString.call(value) === '[object Array]'\r\n}\r\n\r\n/**\r\n * 是否对象\r\n */\r\nfunction object(value) {\r\n return Object.prototype.toString.call(value) === '[object Object]'\r\n}\r\n\r\n/**\r\n * 是否短信验证码\r\n */\r\nfunction code(value, len = 6) {\r\n return new RegExp(`^\\\\d{${len}}$`).test(value)\r\n}\r\n\r\n/**\r\n * 是否函数方法\r\n * @param {Object} value\r\n */\r\nfunction func(value) {\r\n return typeof value === 'function'\r\n}\r\n\r\n/**\r\n * 是否promise对象\r\n * @param {Object} value\r\n */\r\nfunction promise(value) {\r\n return object(value) && func(value.then) && func(value.catch)\r\n}\r\n\r\n/** 是否图片格式\r\n * @param {Object} value\r\n */\r\nfunction image(value) {\r\n const newValue = value.split('?')[0]\r\n const IMAGE_REGEXP = /\\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i\r\n return IMAGE_REGEXP.test(newValue)\r\n}\r\n\r\n/**\r\n * 是否视频格式\r\n * @param {Object} value\r\n */\r\nfunction video(value) {\r\n const VIDEO_REGEXP = /\\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i\r\n return VIDEO_REGEXP.test(value)\r\n}\r\n\r\n/**\r\n * 是否为正则对象\r\n * @param {Object}\r\n * @return {Boolean}\r\n */\r\nfunction regExp(o) {\r\n return o && Object.prototype.toString.call(o) === '[object RegExp]'\r\n}\r\n\r\nexport default {\r\n email,\r\n mobile,\r\n url,\r\n date,\r\n dateISO,\r\n number,\r\n digits,\r\n idCard,\r\n carNo,\r\n amount,\r\n chinese,\r\n letter,\r\n enOrNum,\r\n contains,\r\n range,\r\n rangeLength,\r\n empty,\r\n isEmpty: empty,\r\n jsonString,\r\n landline,\r\n object,\r\n array,\r\n code,\r\n func,\r\n promise,\r\n video,\r\n image,\r\n regExp,\r\n string\r\n}\r\n","let timeout = null\r\n\r\n/**\r\n * 防抖原理:一定时间内,只有最后一次操作,再过wait毫秒后才执行函数\r\n *\r\n * @param {Function} func 要执行的回调函数\r\n * @param {Number} wait 延时的时间\r\n * @param {Boolean} immediate 是否立即执行\r\n * @return null\r\n */\r\nfunction debounce(func, wait = 500, immediate = false) {\r\n // 清除定时器\r\n if (timeout !== null) clearTimeout(timeout)\r\n // 立即执行,此类情况一般用不到\r\n if (immediate) {\r\n const callNow = !timeout\r\n timeout = setTimeout(() => {\r\n timeout = null\r\n }, wait)\r\n if (callNow) typeof func === 'function' && func()\r\n } else {\r\n // 设置定时器,当最后一次操作后,timeout不会再被清除,所以在延时wait毫秒后执行func回调方法\r\n timeout = setTimeout(() => {\r\n typeof func === 'function' && func()\r\n }, wait)\r\n }\r\n}\r\n\r\nexport default debounce\r\n","let timer; let\r\n flag\r\n/**\r\n * 节流原理:在一定时间内,只能触发一次\r\n *\r\n * @param {Function} func 要执行的回调函数\r\n * @param {Number} wait 延时的时间\r\n * @param {Boolean} immediate 是否立即执行\r\n * @return null\r\n */\r\nfunction throttle(func, wait = 500, immediate = true) {\r\n if (immediate) {\r\n if (!flag) {\r\n flag = true\r\n // 如果是立即执行,则在wait毫秒内开始时执行\r\n typeof func === 'function' && func()\r\n timer = setTimeout(() => {\r\n flag = false\r\n }, wait)\r\n }\r\n } else if (!flag) {\r\n flag = true\r\n // 如果是非立即执行,则在wait毫秒内的结束处执行\r\n timer = setTimeout(() => {\r\n flag = false\r\n typeof func === 'function' && func()\r\n }, wait)\r\n }\r\n}\r\nexport default throttle\r\n","import test from './test.js'\nimport { round } from './digit.js'\n/**\n * @description 如果value小于min,取min;如果value大于max,取max\n * @param {number} min\n * @param {number} max\n * @param {number} value\n */\nfunction range(min = 0, max = 0, value = 0) {\n\treturn Math.max(min, Math.min(max, Number(value)))\n}\n\n/**\n * @description 用于获取用户传递值的px值 如果用户传递了\"xxpx\"或者\"xxrpx\",取出其数值部分,如果是\"xxxrpx\"还需要用过uni.upx2px进行转换\n * @param {number|string} value 用户传递值的px值\n * @param {boolean} unit\n * @returns {number|string}\n */\nfunction getPx(value, unit = false) {\n\tif (test.number(value)) {\n\t\treturn unit ? `${value}px` : Number(value)\n\t}\n\t// 如果带有rpx,先取出其数值部分,再转为px值\n\tif (/(rpx|upx)$/.test(value)) {\n\t\treturn unit ? `${uni.upx2px(parseInt(value))}px` : Number(uni.upx2px(parseInt(value)))\n\t}\n\treturn unit ? `${parseInt(value)}px` : parseInt(value)\n}\n\n/**\n * @description 进行延时,以达到可以简写代码的目的 比如: await uni.$u.sleep(20)将会阻塞20ms\n * @param {number} value 堵塞时间 单位ms 毫秒\n * @returns {Promise} 返回promise\n */\nfunction sleep(value = 30) {\n\treturn new Promise((resolve) => {\n\t\tsetTimeout(() => {\n\t\t\tresolve()\n\t\t}, value)\n\t})\n}\n/**\n * @description 运行期判断平台\n * @returns {string} 返回所在平台(小写)\n * @link 运行期判断平台 https://uniapp.dcloud.io/frame?id=判断平台\n */\nfunction os() {\n\treturn uni.getSystemInfoSync().platform.toLowerCase()\n}\n/**\n * @description 获取系统信息同步接口\n * @link 获取系统信息同步接口 https://uniapp.dcloud.io/api/system/info?id=getsysteminfosync\n */\nfunction sys() {\n\treturn uni.getSystemInfoSync()\n}\n\n/**\n * @description 取一个区间数\n * @param {Number} min 最小值\n * @param {Number} max 最大值\n */\nfunction random(min, max) {\n\tif (min >= 0 && max > 0 && max >= min) {\n\t\tconst gab = max - min + 1\n\t\treturn Math.floor(Math.random() * gab + min)\n\t}\n\treturn 0\n}\n\n/**\n * @param {Number} len uuid的长度\n * @param {Boolean} firstU 将返回的首字母置为\"u\"\n * @param {Nubmer} radix 生成uuid的基数(意味着返回的字符串都是这个基数),2-二进制,8-八进制,10-十进制,16-十六进制\n */\nfunction guid(len = 32, firstU = true, radix = null) {\n\tconst chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')\n\tconst uuid = []\n\tradix = radix || chars.length\n\n\tif (len) {\n\t\t// 如果指定uuid长度,只是取随机的字符,0|x为位运算,能去掉x的小数位,返回整数位\n\t\tfor (let i = 0; i < len; i++) uuid[i] = chars[0 | Math.random() * radix]\n\t} else {\n\t\tlet r\n\t\t// rfc4122标准要求返回的uuid中,某些位为固定的字符\n\t\tuuid[8] = uuid[13] = uuid[18] = uuid[23] = '-'\n\t\tuuid[14] = '4'\n\n\t\tfor (let i = 0; i < 36; i++) {\n\t\t\tif (!uuid[i]) {\n\t\t\t\tr = 0 | Math.random() * 16\n\t\t\t\tuuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r]\n\t\t\t}\n\t\t}\n\t}\n\t// 移除第一个字符,并用u替代,因为第一个字符为数值时,该guuid不能用作id或者class\n\tif (firstU) {\n\t\tuuid.shift()\n\t\treturn `u${uuid.join('')}`\n\t}\n\treturn uuid.join('')\n}\n\n/**\n* @description 获取父组件的参数,因为支付宝小程序不支持provide/inject的写法\n this.$parent在非H5中,可以准确获取到父组件,但是在H5中,需要多次this.$parent.$parent.xxx\n 这里默认值等于undefined有它的含义,因为最顶层元素(组件)的$parent就是undefined,意味着不传name\n 值(默认为undefined),就是查找最顶层的$parent\n* @param {string|undefined} name 父组件的参数名\n*/\nfunction $parent(name = undefined) {\n\tlet parent = this.$parent\n\t// 通过while历遍,这里主要是为了H5需要多层解析的问题\n\twhile (parent) {\n\t\t// 父组件\n\t\tif (parent.$options && parent.$options.name !== name) {\n\t\t\t// 如果组件的name不相等,继续上一级寻找\n\t\t\tparent = parent.$parent\n\t\t} else {\n\t\t\treturn parent\n\t\t}\n\t}\n\treturn false\n}\n\n/**\n * @description 样式转换\n * 对象转字符串,或者字符串转对象\n * @param {object | string} customStyle 需要转换的目标\n * @param {String} target 转换的目的,object-转为对象,string-转为字符串\n * @returns {object|string}\n */\nfunction addStyle(customStyle, target = 'object') {\n\t// 字符串转字符串,对象转对象情形,直接返回\n\tif (test.empty(customStyle) || typeof(customStyle) === 'object' && target === 'object' || target === 'string' &&\n\t\ttypeof(customStyle) === 'string') {\n\t\treturn customStyle\n\t}\n\t// 字符串转对象\n\tif (target === 'object') {\n\t\t// 去除字符串样式中的两端空格(中间的空格不能去掉,比如padding: 20px 0如果去掉了就错了),空格是无用的\n\t\tcustomStyle = trim(customStyle)\n\t\t// 根据\";\"将字符串转为数组形式\n\t\tconst styleArray = customStyle.split(';')\n\t\tconst style = {}\n\t\t// 历遍数组,拼接成对象\n\t\tfor (let i = 0; i < styleArray.length; i++) {\n\t\t\t// 'font-size:20px;color:red;',如此最后字符串有\";\"的话,会导致styleArray最后一个元素为空字符串,这里需要过滤\n\t\t\tif (styleArray[i]) {\n\t\t\t\tconst item = styleArray[i].split(':')\n\t\t\t\tstyle[trim(item[0])] = trim(item[1])\n\t\t\t}\n\t\t}\n\t\treturn style\n\t}\n\t// 这里为对象转字符串形式\n\tlet string = ''\n\tfor (const i in customStyle) {\n\t\t// 驼峰转为中划线的形式,否则css内联样式,无法识别驼峰样式属性名\n\t\tconst key = i.replace(/([A-Z])/g, '-$1').toLowerCase()\n\t\tstring += `${key}:${customStyle[i]};`\n\t}\n\t// 去除两端空格\n\treturn trim(string)\n}\n\n/**\n * @description 添加单位,如果有rpx,upx,%,px等单位结尾或者值为auto,直接返回,否则加上px单位结尾\n * @param {string|number} value 需要添加单位的值\n * @param {string} unit 添加的单位名 比如px\n */\nfunction addUnit(value = 'auto', unit = uni?.$u?.config?.unit ?? 'px') {\n\tvalue = String(value)\n\t// 用uView内置验证规则中的number判断是否为数值\n\treturn test.number(value) ? `${value}${unit}` : value\n}\n\n/**\n * @description 深度克隆\n * @param {object} obj 需要深度克隆的对象\n * @param cache 缓存\n * @returns {*} 克隆后的对象或者原值(不是对象)\n */\nfunction deepClone(obj, cache = new WeakMap()) {\n\tif (obj === null || typeof obj !== 'object') return obj;\n\tif (cache.has(obj)) return cache.get(obj);\n\tlet clone;\n\tif (obj instanceof Date) {\n\t\tclone = new Date(obj.getTime());\n\t} else if (obj instanceof RegExp) {\n\t\tclone = new RegExp(obj);\n\t} else if (obj instanceof Map) {\n\t\tclone = new Map(Array.from(obj, ([key, value]) => [key, deepClone(value, cache)]));\n\t} else if (obj instanceof Set) {\n\t\tclone = new Set(Array.from(obj, value => deepClone(value, cache)));\n\t} else if (Array.isArray(obj)) {\n\t\tclone = obj.map(value => deepClone(value, cache));\n\t} else if (Object.prototype.toString.call(obj) === '[object Object]') {\n\t\tclone = Object.create(Object.getPrototypeOf(obj));\n\t\tcache.set(obj, clone);\n\t\tfor (const [key, value] of Object.entries(obj)) {\n\t\t\tclone[key] = deepClone(value, cache);\n\t\t}\n\t} else {\n\t\tclone = Object.assign({}, obj);\n\t}\n\tcache.set(obj, clone);\n\treturn clone;\n}\n\n/**\n * @description JS对象深度合并\n * @param {object} target 需要拷贝的对象\n * @param {object} source 拷贝的来源对象\n * @returns {object|boolean} 深度合并后的对象或者false(入参有不是对象)\n */\nfunction deepMerge(target = {}, source = {}) {\n\ttarget = deepClone(target)\n\tif (typeof target !== 'object' || target === null || typeof source !== 'object' || source === null) return target;\n\tconst merged = Array.isArray(target) ? target.slice() : Object.assign({}, target);\n\tfor (const prop in source) {\n\t\tif (!source.hasOwnProperty(prop)) continue;\n\t\tconst sourceValue = source[prop];\n\t\tconst targetValue = merged[prop];\n\t\tif (sourceValue instanceof Date) {\n\t\t\tmerged[prop] = new Date(sourceValue);\n\t\t} else if (sourceValue instanceof RegExp) {\n\t\t\tmerged[prop] = new RegExp(sourceValue);\n\t\t} else if (sourceValue instanceof Map) {\n\t\t\tmerged[prop] = new Map(sourceValue);\n\t\t} else if (sourceValue instanceof Set) {\n\t\t\tmerged[prop] = new Set(sourceValue);\n\t\t} else if (typeof sourceValue === 'object' && sourceValue !== null) {\n\t\t\tmerged[prop] = deepMerge(targetValue, sourceValue);\n\t\t} else {\n\t\t\tmerged[prop] = sourceValue;\n\t\t}\n\t}\n\treturn merged;\n}\n\n/**\n * @description error提示\n * @param {*} err 错误内容\n */\nfunction error(err) {\n\t// 开发环境才提示,生产环境不会提示\n\tif (process.env.NODE_ENV === 'development') {\n\t\tconsole.error(`uView提示:${err}`)\n\t}\n}\n\n/**\n * @description 打乱数组\n * @param {array} array 需要打乱的数组\n * @returns {array} 打乱后的数组\n */\nfunction randomArray(array = []) {\n\t// 原理是sort排序,Math.random()产生0<= x < 1之间的数,会导致x-0.05大于或者小于0\n\treturn array.sort(() => Math.random() - 0.5)\n}\n\n// padStart 的 polyfill,因为某些机型或情况,还无法支持es7的padStart,比如电脑版的微信小程序\n// 所以这里做一个兼容polyfill的兼容处理\nif (!String.prototype.padStart) {\n\t// 为了方便表示这里 fillString 用了ES6 的默认参数,不影响理解\n\tString.prototype.padStart = function(maxLength, fillString = ' ') {\n\t\tif (Object.prototype.toString.call(fillString) !== '[object String]') {\n\t\t\tthrow new TypeError(\n\t\t\t\t'fillString must be String'\n\t\t\t)\n\t\t}\n\t\tconst str = this\n\t\t// 返回 String(str) 这里是为了使返回的值是字符串字面量,在控制台中更符合直觉\n\t\tif (str.length >= maxLength) return String(str)\n\n\t\tconst fillLength = maxLength - str.length\n\t\tlet times = Math.ceil(fillLength / fillString.length)\n\t\twhile (times >>= 1) {\n\t\t\tfillString += fillString\n\t\t\tif (times === 1) {\n\t\t\t\tfillString += fillString\n\t\t\t}\n\t\t}\n\t\treturn fillString.slice(0, fillLength) + str\n\t}\n}\n\n/**\n * @description 格式化时间\n * @param {String|Number} dateTime 需要格式化的时间戳\n * @param {String} fmt 格式化规则 yyyy:mm:dd|yyyy:mm|yyyy年mm月dd日|yyyy年mm月dd日 hh时MM分等,可自定义组合 默认yyyy-mm-dd\n * @returns {string} 返回格式化后的字符串\n */\n function timeFormat(dateTime = null, formatStr = 'yyyy-mm-dd') {\n let date\n\t// 若传入时间为假值,则取当前时间\n if (!dateTime) {\n date = new Date()\n }\n // 若为unix秒时间戳,则转为毫秒时间戳(逻辑有点奇怪,但不敢改,以保证历史兼容)\n else if (/^\\d{10}$/.test(dateTime?.toString().trim())) {\n date = new Date(dateTime * 1000)\n }\n // 若用户传入字符串格式时间戳,new Date无法解析,需做兼容\n else if (typeof dateTime === 'string' && /^\\d+$/.test(dateTime.trim())) {\n date = new Date(Number(dateTime))\n }\n\t// 处理平台性差异,在Safari/Webkit中,new Date仅支持/作为分割符的字符串时间\n\t// 处理 '2022-07-10 01:02:03',跳过 '2022-07-10T01:02:03'\n\telse if (typeof dateTime === 'string' && dateTime.includes('-') && !dateTime.includes('T')) {\n\t\tdate = new Date(dateTime.replace(/-/g, '/'))\n\t}\n\t// 其他都认为符合 RFC 2822 规范\n\telse {\n\t\tdate = new Date(dateTime)\n\t}\n\n\tconst timeSource = {\n\t\t'y': date.getFullYear().toString(), // 年\n\t\t'm': (date.getMonth() + 1).toString().padStart(2, '0'), // 月\n\t\t'd': date.getDate().toString().padStart(2, '0'), // 日\n\t\t'h': date.getHours().toString().padStart(2, '0'), // 时\n\t\t'M': date.getMinutes().toString().padStart(2, '0'), // 分\n\t\t's': date.getSeconds().toString().padStart(2, '0') // 秒\n\t\t// 有其他格式化字符需求可以继续添加,必须转化成字符串\n\t}\n\n for (const key in timeSource) {\n const [ret] = new RegExp(`${key}+`).exec(formatStr) || []\n if (ret) {\n // 年可能只需展示两位\n const beginIndex = key === 'y' && ret.length === 2 ? 2 : 0\n formatStr = formatStr.replace(ret, timeSource[key].slice(beginIndex))\n }\n }\n\n return formatStr\n}\n\n/**\n * @description 时间戳转为多久之前\n * @param {String|Number} timestamp 时间戳\n * @param {String|Boolean} format\n * 格式化规则如果为时间格式字符串,超出一定时间范围,返回固定的时间格式;\n * 如果为布尔值false,无论什么时间,都返回多久以前的格式\n * @returns {string} 转化后的内容\n */\nfunction timeFrom(timestamp = null, format = 'yyyy-mm-dd') {\n\tif (timestamp == null) timestamp = Number(new Date())\n\ttimestamp = parseInt(timestamp)\n\t// 判断用户输入的时间戳是秒还是毫秒,一般前端js获取的时间戳是毫秒(13位),后端传过来的为秒(10位)\n\tif (timestamp.toString().length == 10) timestamp *= 1000\n\tlet timer = (new Date()).getTime() - timestamp\n\ttimer = parseInt(timer / 1000)\n\t// 如果小于5分钟,则返回\"刚刚\",其他以此类推\n\tlet tips = ''\n\tswitch (true) {\n\t\tcase timer < 300:\n\t\t\ttips = '刚刚'\n\t\t\tbreak\n\t\tcase timer >= 300 && timer < 3600:\n\t\t\ttips = `${parseInt(timer / 60)}分钟前`\n\t\t\tbreak\n\t\tcase timer >= 3600 && timer < 86400:\n\t\t\ttips = `${parseInt(timer / 3600)}小时前`\n\t\t\tbreak\n\t\tcase timer >= 86400 && timer < 2592000:\n\t\t\ttips = `${parseInt(timer / 86400)}天前`\n\t\t\tbreak\n\t\tdefault:\n\t\t\t// 如果format为false,则无论什么时间戳,都显示xx之前\n\t\t\tif (format === false) {\n\t\t\t\tif (timer >= 2592000 && timer < 365 * 86400) {\n\t\t\t\t\ttips = `${parseInt(timer / (86400 * 30))}个月前`\n\t\t\t\t} else {\n\t\t\t\t\ttips = `${parseInt(timer / (86400 * 365))}年前`\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttips = timeFormat(timestamp, format)\n\t\t\t}\n\t}\n\treturn tips\n}\n\n/**\n * @description 去除空格\n * @param String str 需要去除空格的字符串\n * @param String pos both(左右)|left|right|all 默认both\n */\nfunction trim(str, pos = 'both') {\n\tstr = String(str)\n\tif (pos == 'both') {\n\t\treturn str.replace(/^\\s+|\\s+$/g, '')\n\t}\n\tif (pos == 'left') {\n\t\treturn str.replace(/^\\s*/, '')\n\t}\n\tif (pos == 'right') {\n\t\treturn str.replace(/(\\s*$)/g, '')\n\t}\n\tif (pos == 'all') {\n\t\treturn str.replace(/\\s+/g, '')\n\t}\n\treturn str\n}\n\n/**\n * @description 对象转url参数\n * @param {object} data,对象\n * @param {Boolean} isPrefix,是否自动加上\"?\"\n * @param {string} arrayFormat 规则 indices|brackets|repeat|comma\n */\nfunction queryParams(data = {}, isPrefix = true, arrayFormat = 'brackets') {\n\tconst prefix = isPrefix ? '?' : ''\n\tconst _result = []\n\tif (['indices', 'brackets', 'repeat', 'comma'].indexOf(arrayFormat) == -1) arrayFormat = 'brackets'\n\tfor (const key in data) {\n\t\tconst value = data[key]\n\t\t// 去掉为空的参数\n\t\tif (['', undefined, null].indexOf(value) >= 0) {\n\t\t\tcontinue\n\t\t}\n\t\t// 如果值为数组,另行处理\n\t\tif (value.constructor === Array) {\n\t\t\t// e.g. {ids: [1, 2, 3]}\n\t\t\tswitch (arrayFormat) {\n\t\t\t\tcase 'indices':\n\t\t\t\t\t// 结果: ids[0]=1&ids[1]=2&ids[2]=3\n\t\t\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\t\t\t_result.push(`${key}[${i}]=${value[i]}`)\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t\tcase 'brackets':\n\t\t\t\t\t// 结果: ids[]=1&ids[]=2&ids[]=3\n\t\t\t\t\tvalue.forEach((_value) => {\n\t\t\t\t\t\t_result.push(`${key}[]=${_value}`)\n\t\t\t\t\t})\n\t\t\t\t\tbreak\n\t\t\t\tcase 'repeat':\n\t\t\t\t\t// 结果: ids=1&ids=2&ids=3\n\t\t\t\t\tvalue.forEach((_value) => {\n\t\t\t\t\t\t_result.push(`${key}=${_value}`)\n\t\t\t\t\t})\n\t\t\t\t\tbreak\n\t\t\t\tcase 'comma':\n\t\t\t\t\t// 结果: ids=1,2,3\n\t\t\t\t\tlet commaStr = ''\n\t\t\t\t\tvalue.forEach((_value) => {\n\t\t\t\t\t\tcommaStr += (commaStr ? ',' : '') + _value\n\t\t\t\t\t})\n\t\t\t\t\t_result.push(`${key}=${commaStr}`)\n\t\t\t\t\tbreak\n\t\t\t\tdefault:\n\t\t\t\t\tvalue.forEach((_value) => {\n\t\t\t\t\t\t_result.push(`${key}[]=${_value}`)\n\t\t\t\t\t})\n\t\t\t}\n\t\t} else {\n\t\t\t_result.push(`${key}=${value}`)\n\t\t}\n\t}\n\treturn _result.length ? prefix + _result.join('&') : ''\n}\n\n/**\n * 显示消息提示框\n * @param {String} title 提示的内容,长度与 icon 取值有关。\n * @param {Number} duration 提示的延迟时间,单位毫秒,默认:2000\n */\nfunction toast(title, duration = 2000) {\n\tuni.showToast({\n\t\ttitle: String(title),\n\t\ticon: 'none',\n\t\tduration\n\t})\n}\n\n/**\n * @description 根据主题type值,获取对应的图标\n * @param {String} type 主题名称,primary|info|error|warning|success\n * @param {boolean} fill 是否使用fill填充实体的图标\n */\nfunction type2icon(type = 'success', fill = false) {\n\t// 如果非预置值,默认为success\n\tif (['primary', 'info', 'error', 'warning', 'success'].indexOf(type) == -1) type = 'success'\n\tlet iconName = ''\n\t// 目前(2019-12-12),info和primary使用同一个图标\n\tswitch (type) {\n\t\tcase 'primary':\n\t\t\ticonName = 'info-circle'\n\t\t\tbreak\n\t\tcase 'info':\n\t\t\ticonName = 'info-circle'\n\t\t\tbreak\n\t\tcase 'error':\n\t\t\ticonName = 'close-circle'\n\t\t\tbreak\n\t\tcase 'warning':\n\t\t\ticonName = 'error-circle'\n\t\t\tbreak\n\t\tcase 'success':\n\t\t\ticonName = 'checkmark-circle'\n\t\t\tbreak\n\t\tdefault:\n\t\t\ticonName = 'checkmark-circle'\n\t}\n\t// 是否是实体类型,加上-fill,在icon组件库中,实体的类名是后面加-fill的\n\tif (fill) iconName += '-fill'\n\treturn iconName\n}\n\n/**\n * @description 数字格式化\n * @param {number|string} number 要格式化的数字\n * @param {number} decimals 保留几位小数\n * @param {string} decimalPoint 小数点符号\n * @param {string} thousandsSeparator 千分位符号\n * @returns {string} 格式化后的数字\n */\nfunction priceFormat(number, decimals = 0, decimalPoint = '.', thousandsSeparator = ',') {\n\tnumber = (`${number}`).replace(/[^0-9+-Ee.]/g, '')\n\tconst n = !isFinite(+number) ? 0 : +number\n\tconst prec = !isFinite(+decimals) ? 0 : Math.abs(decimals)\n\tconst sep = (typeof thousandsSeparator === 'undefined') ? ',' : thousandsSeparator\n\tconst dec = (typeof decimalPoint === 'undefined') ? '.' : decimalPoint\n\tlet s = ''\n\n\ts = (prec ? round(n, prec) + '' : `${Math.round(n)}`).split('.')\n\tconst re = /(-?\\d+)(\\d{3})/\n\twhile (re.test(s[0])) {\n\t\ts[0] = s[0].replace(re, `$1${sep}$2`)\n\t}\n\n\tif ((s[1] || '').length < prec) {\n\t\ts[1] = s[1] || ''\n\t\ts[1] += new Array(prec - s[1].length + 1).join('0')\n\t}\n\treturn s.join(dec)\n}\n\n/**\n * @description 获取duration值\n * 如果带有ms或者s直接返回,如果大于一定值,认为是ms单位,小于一定值,认为是s单位\n * 比如以30位阈值,那么300大于30,可以理解为用户想要的是300ms,而不是想花300s去执行一个动画\n * @param {String|number} value 比如: \"1s\"|\"100ms\"|1|100\n * @param {boolean} unit 提示: 如果是false 默认返回number\n * @return {string|number}\n */\nfunction getDuration(value, unit = true) {\n\tconst valueNum = parseInt(value)\n\tif (unit) {\n\t\tif (/s$/.test(value)) return value\n\t\treturn value > 30 ? `${value}ms` : `${value}s`\n\t}\n\tif (/ms$/.test(value)) return valueNum\n\tif (/s$/.test(value)) return valueNum > 30 ? valueNum : valueNum * 1000\n\treturn valueNum\n}\n\n/**\n * @description 日期的月或日补零操作\n * @param {String} value 需要补零的值\n */\nfunction padZero(value) {\n\treturn `00${value}`.slice(-2)\n}\n\n/**\n * @description 在u-form的子组件内容发生变化,或者失去焦点时,尝试通知u-form执行校验方法\n * @param {*} instance\n * @param {*} event\n */\nfunction formValidate(instance, event) {\n\tconst formItem = uni.$u.$parent.call(instance, 'u-form-item')\n\tconst form = uni.$u.$parent.call(instance, 'u-form')\n\t// 如果发生变化的input或者textarea等,其父组件中有u-form-item或者u-form等,就执行form的validate方法\n\t// 同时将form-item的pros传递给form,让其进行精确对象验证\n\tif (formItem && form) {\n\t\tform.validateField(formItem.prop, () => {}, event)\n\t}\n}\n\n/**\n * @description 获取某个对象下的属性,用于通过类似'a.b.c'的形式去获取一个对象的的属性的形式\n * @param {object} obj 对象\n * @param {string} key 需要获取的属性字段\n * @returns {*}\n */\nfunction getProperty(obj, key) {\n\tif (!obj) {\n\t\treturn\n\t}\n\tif (typeof key !== 'string' || key === '') {\n\t\treturn ''\n\t}\n\tif (key.indexOf('.') !== -1) {\n\t\tconst keys = key.split('.')\n\t\tlet firstObj = obj[keys[0]] || {}\n\n\t\tfor (let i = 1; i < keys.length; i++) {\n\t\t\tif (firstObj) {\n\t\t\t\tfirstObj = firstObj[keys[i]]\n\t\t\t}\n\t\t}\n\t\treturn firstObj\n\t}\n\treturn obj[key]\n}\n\n/**\n * @description 设置对象的属性值,如果'a.b.c'的形式进行设置\n * @param {object} obj 对象\n * @param {string} key 需要设置的属性\n * @param {string} value 设置的值\n */\nfunction setProperty(obj, key, value) {\n\tif (!obj) {\n\t\treturn\n\t}\n\t// 递归赋值\n\tconst inFn = function(_obj, keys, v) {\n\t\t// 最后一个属性key\n\t\tif (keys.length === 1) {\n\t\t\t_obj[keys[0]] = v\n\t\t\treturn\n\t\t}\n\t\t// 0~length-1个key\n\t\twhile (keys.length > 1) {\n\t\t\tconst k = keys[0]\n\t\t\tif (!_obj[k] || (typeof _obj[k] !== 'object')) {\n\t\t\t\t_obj[k] = {}\n\t\t\t}\n\t\t\tconst key = keys.shift()\n\t\t\t// 自调用判断是否存在属性,不存在则自动创建对象\n\t\t\tinFn(_obj[k], keys, v)\n\t\t}\n\t}\n\n\tif (typeof key !== 'string' || key === '') {\n\n\t} else if (key.indexOf('.') !== -1) { // 支持多层级赋值操作\n\t\tconst keys = key.split('.')\n\t\tinFn(obj, keys, value)\n\t} else {\n\t\tobj[key] = value\n\t}\n}\n\n/**\n * @description 获取当前页面路径\n */\nfunction page() {\n\tconst pages = getCurrentPages()\n\t// 某些特殊情况下(比如页面进行redirectTo时的一些时机),pages可能为空数组\n\treturn `/${pages[pages.length - 1]?.route ?? ''}`\n}\n\n/**\n * @description 获取当前路由栈实例数组\n */\nfunction pages() {\n\tconst pages = getCurrentPages()\n\treturn pages\n}\n\n/**\n * 获取页面历史栈指定层实例\n * @param back {number} [0] - 0或者负数,表示获取历史栈的哪一层,0表示获取当前页面实例,-1 表示获取上一个页面实例。默认0。\n */\nfunction getHistoryPage(back = 0) {\n\tconst pages = getCurrentPages()\n\tconst len = pages.length\n\treturn pages[len - 1 + back]\n}\n\n/**\n * @description 修改uView内置属性值\n * @param {object} props 修改内置props属性\n * @param {object} config 修改内置config属性\n * @param {object} color 修改内置color属性\n * @param {object} zIndex 修改内置zIndex属性\n */\nfunction setConfig({\n\tprops = {},\n\tconfig = {},\n\tcolor = {},\n\tzIndex = {}\n}) {\n\tconst {\n\t\tdeepMerge,\n\t} = uni.$u\n\tuni.$u.config = deepMerge(uni.$u.config, config)\n\tuni.$u.props = deepMerge(uni.$u.props, props)\n\tuni.$u.color = deepMerge(uni.$u.color, color)\n\tuni.$u.zIndex = deepMerge(uni.$u.zIndex, zIndex)\n}\n\nexport default {\n\trange,\n\tgetPx,\n\tsleep,\n\tos,\n\tsys,\n\trandom,\n\tguid,\n\t$parent,\n\taddStyle,\n\taddUnit,\n\tdeepClone,\n\tdeepMerge,\n\terror,\n\trandomArray,\n\ttimeFormat,\n\ttimeFrom,\n\ttrim,\n\tqueryParams,\n\ttoast,\n\ttype2icon,\n\tpriceFormat,\n\tgetDuration,\n\tpadZero,\n\tformValidate,\n\tgetProperty,\n\tsetProperty,\n\tpage,\n\tpages,\n\tgetHistoryPage,\n\tsetConfig\n}\n","let _boundaryCheckingState = true; // 是否进行越界检查的全局开关\n\n/**\n * 把错误的数据转正\n * @private\n * @example strip(0.09999999999999998)=0.1\n */\nfunction strip(num, precision = 15) {\n return +parseFloat(Number(num).toPrecision(precision));\n}\n\n/**\n * Return digits length of a number\n * @private\n * @param {*number} num Input number\n */\nfunction digitLength(num) {\n // Get digit length of e\n const eSplit = num.toString().split(/[eE]/);\n const len = (eSplit[0].split('.')[1] || '').length - +(eSplit[1] || 0);\n return len > 0 ? len : 0;\n}\n\n/**\n * 把小数转成整数,如果是小数则放大成整数\n * @private\n * @param {*number} num 输入数\n */\nfunction float2Fixed(num) {\n if (num.toString().indexOf('e') === -1) {\n return Number(num.toString().replace('.', ''));\n }\n const dLen = digitLength(num);\n return dLen > 0 ? strip(Number(num) * Math.pow(10, dLen)) : Number(num);\n}\n\n/**\n * 检测数字是否越界,如果越界给出提示\n * @private\n * @param {*number} num 输入数\n */\nfunction checkBoundary(num) {\n if (_boundaryCheckingState) {\n if (num > Number.MAX_SAFE_INTEGER || num < Number.MIN_SAFE_INTEGER) {\n console.warn(`${num} 超出了精度限制,结果可能不正确`);\n }\n }\n}\n\n/**\n * 把递归操作扁平迭代化\n * @param {number[]} arr 要操作的数字数组\n * @param {function} operation 迭代操作\n * @private\n */\nfunction iteratorOperation(arr, operation) {\n const [num1, num2, ...others] = arr;\n let res = operation(num1, num2);\n\n others.forEach((num) => {\n res = operation(res, num);\n });\n\n return res;\n}\n\n/**\n * 高精度乘法\n * @export\n */\nexport function times(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, times);\n }\n\n const [num1, num2] = nums;\n const num1Changed = float2Fixed(num1);\n const num2Changed = float2Fixed(num2);\n const baseNum = digitLength(num1) + digitLength(num2);\n const leftValue = num1Changed * num2Changed;\n\n checkBoundary(leftValue);\n\n return leftValue / Math.pow(10, baseNum);\n}\n\n/**\n * 高精度加法\n * @export\n */\nexport function plus(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, plus);\n }\n\n const [num1, num2] = nums;\n // 取最大的小数位\n const baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));\n // 把小数都转为整数然后再计算\n return (times(num1, baseNum) + times(num2, baseNum)) / baseNum;\n}\n\n/**\n * 高精度减法\n * @export\n */\nexport function minus(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, minus);\n }\n\n const [num1, num2] = nums;\n const baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));\n return (times(num1, baseNum) - times(num2, baseNum)) / baseNum;\n}\n\n/**\n * 高精度除法\n * @export\n */\nexport function divide(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, divide);\n }\n\n const [num1, num2] = nums;\n const num1Changed = float2Fixed(num1);\n const num2Changed = float2Fixed(num2);\n checkBoundary(num1Changed);\n checkBoundary(num2Changed);\n // 重要,这里必须用strip进行修正\n return times(num1Changed / num2Changed, strip(Math.pow(10, digitLength(num2) - digitLength(num1))));\n}\n\n/**\n * 四舍五入\n * @export\n */\nexport function round(num, ratio) {\n const base = Math.pow(10, ratio);\n let result = divide(Math.round(Math.abs(times(num, base))), base);\n if (num < 0 && result !== 0) {\n result = times(result, -1);\n }\n // 位数不足则补0\n return result;\n}\n\n/**\n * 是否进行边界检查,默认开启\n * @param flag 标记开关,true 为开启,false 为关闭,默认为 true\n * @export\n */\nexport function enableBoundaryChecking(flag = true) {\n _boundaryCheckingState = flag;\n}\n\n\nexport default {\n times,\n plus,\n minus,\n divide,\n round,\n enableBoundaryChecking,\n};\n\n","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}\nmodule.exports = _toArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// 此版本发布于2024-03-17\nconst version = '2.0.37'\n\n// 开发环境才提示,生产环境不会提示\nif (process.env.NODE_ENV === 'development') {\n\tconsole.log(`\\n %c uView V${version} %c https://uviewui.com/ \\n\\n`, 'color: #ffffff; background: #3c9cff; padding:5px 0; border-radius: 5px;');\n}\n\nexport default {\n v: version,\n version,\n // 主题名称\n type: [\n 'primary',\n 'success',\n 'info',\n 'error',\n 'warning'\n ],\n // 颜色部分,本来可以通过scss的:export导出供js使用,但是奈何nvue不支持\n color: {\n 'u-primary': '#2979ff',\n 'u-warning': '#ff9900',\n 'u-success': '#19be6b',\n 'u-error': '#fa3534',\n 'u-info': '#909399',\n 'u-main-color': '#303133',\n 'u-content-color': '#606266',\n 'u-tips-color': '#909399',\n 'u-light-color': '#c0c4cc'\n },\n\t// 默认单位,可以通过配置为rpx,那么在用于传入组件大小参数为数值时,就默认为rpx\n\tunit: 'px'\n}\n","/**\r\n * 此文件的作用为统一配置所有组件的props参数\r\n * 借此用户可以全局覆盖组件的props默认值\r\n * 无需在每个引入组件的页面中都配置一次\r\n */\r\nimport config from './config'\r\n\r\nimport actionSheet from './props/actionSheet.js'\r\nimport album from './props/album.js'\r\nimport alert from './props/alert.js'\r\nimport avatar from './props/avatar'\r\nimport avatarGroup from './props/avatarGroup'\r\nimport backtop from './props/backtop'\r\nimport badge from './props/badge'\r\nimport button from './props/button'\r\nimport calendar from './props/calendar'\r\nimport carKeyboard from './props/carKeyboard'\r\nimport cell from './props/cell'\r\nimport cellGroup from './props/cellGroup'\r\nimport checkbox from './props/checkbox'\r\nimport checkboxGroup from './props/checkboxGroup'\r\nimport circleProgress from './props/circleProgress'\r\nimport code from './props/code'\r\nimport codeInput from './props/codeInput'\r\nimport col from './props/col'\r\nimport collapse from './props/collapse'\r\nimport collapseItem from './props/collapseItem'\r\nimport columnNotice from './props/columnNotice'\r\nimport countDown from './props/countDown'\r\nimport countTo from './props/countTo'\r\nimport datetimePicker from './props/datetimePicker'\r\nimport divider from './props/divider'\r\nimport empty from './props/empty'\r\nimport form from './props/form'\r\nimport formItem from './props/formItem'\r\nimport gap from './props/gap'\r\nimport grid from './props/grid'\r\nimport gridItem from './props/gridItem'\r\nimport icon from './props/icon'\r\nimport image from './props/image'\r\nimport indexAnchor from './props/indexAnchor'\r\nimport indexList from './props/indexList'\r\nimport input from './props/input'\r\nimport keyboard from './props/keyboard'\r\nimport line from './props/line'\r\nimport lineProgress from './props/lineProgress'\r\nimport link from './props/link'\r\nimport list from './props/list'\r\nimport listItem from './props/listItem'\r\nimport loadingIcon from './props/loadingIcon'\r\nimport loadingPage from './props/loadingPage'\r\nimport loadmore from './props/loadmore'\r\nimport modal from './props/modal'\r\nimport navbar from './props/navbar'\r\nimport noNetwork from './props/noNetwork'\r\nimport noticeBar from './props/noticeBar'\r\nimport notify from './props/notify'\r\nimport numberBox from './props/numberBox'\r\nimport numberKeyboard from './props/numberKeyboard'\r\nimport overlay from './props/overlay'\r\nimport parse from './props/parse'\r\nimport picker from './props/picker'\r\nimport popup from './props/popup'\r\nimport radio from './props/radio'\r\nimport radioGroup from './props/radioGroup'\r\nimport rate from './props/rate'\r\nimport readMore from './props/readMore'\r\nimport row from './props/row'\r\nimport rowNotice from './props/rowNotice'\r\nimport scrollList from './props/scrollList'\r\nimport search from './props/search'\r\nimport section from './props/section'\r\nimport skeleton from './props/skeleton'\r\nimport slider from './props/slider'\r\nimport statusBar from './props/statusBar'\r\nimport steps from './props/steps'\r\nimport stepsItem from './props/stepsItem'\r\nimport sticky from './props/sticky'\r\nimport subsection from './props/subsection'\r\nimport swipeAction from './props/swipeAction'\r\nimport swipeActionItem from './props/swipeActionItem'\r\nimport swiper from './props/swiper'\r\nimport swipterIndicator from './props/swipterIndicator'\r\nimport _switch from './props/switch'\r\nimport tabbar from './props/tabbar'\r\nimport tabbarItem from './props/tabbarItem'\r\nimport tabs from './props/tabs'\r\nimport tag from './props/tag'\r\nimport text from './props/text'\r\nimport textarea from './props/textarea'\r\nimport toast from './props/toast'\r\nimport toolbar from './props/toolbar'\r\nimport tooltip from './props/tooltip'\r\nimport transition from './props/transition'\r\nimport upload from './props/upload'\r\n\r\nconst {\r\n color\r\n} = config\r\n\r\nexport default {\r\n ...actionSheet,\r\n ...album,\r\n ...alert,\r\n ...avatar,\r\n ...avatarGroup,\r\n ...backtop,\r\n ...badge,\r\n ...button,\r\n ...calendar,\r\n ...carKeyboard,\r\n ...cell,\r\n ...cellGroup,\r\n ...checkbox,\r\n ...checkboxGroup,\r\n ...circleProgress,\r\n ...code,\r\n ...codeInput,\r\n ...col,\r\n ...collapse,\r\n ...collapseItem,\r\n ...columnNotice,\r\n ...countDown,\r\n ...countTo,\r\n ...datetimePicker,\r\n ...divider,\r\n ...empty,\r\n ...form,\r\n ...formItem,\r\n ...gap,\r\n ...grid,\r\n ...gridItem,\r\n ...icon,\r\n ...image,\r\n ...indexAnchor,\r\n ...indexList,\r\n ...input,\r\n ...keyboard,\r\n ...line,\r\n ...lineProgress,\r\n ...link,\r\n ...list,\r\n ...listItem,\r\n ...loadingIcon,\r\n ...loadingPage,\r\n ...loadmore,\r\n ...modal,\r\n ...navbar,\r\n ...noNetwork,\r\n ...noticeBar,\r\n ...notify,\r\n ...numberBox,\r\n ...numberKeyboard,\r\n ...overlay,\r\n ...parse,\r\n ...picker,\r\n ...popup,\r\n ...radio,\r\n ...radioGroup,\r\n ...rate,\r\n ...readMore,\r\n ...row,\r\n ...rowNotice,\r\n ...scrollList,\r\n ...search,\r\n ...section,\r\n ...skeleton,\r\n ...slider,\r\n ...statusBar,\r\n ...steps,\r\n ...stepsItem,\r\n ...sticky,\r\n ...subsection,\r\n ...swipeAction,\r\n ...swipeActionItem,\r\n ...swiper,\r\n ...swipterIndicator,\r\n ..._switch,\r\n ...tabbar,\r\n ...tabbarItem,\r\n ...tabs,\r\n ...tag,\r\n ...text,\r\n ...textarea,\r\n ...toast,\r\n ...toolbar,\r\n ...tooltip,\r\n ...transition,\r\n ...upload\r\n}\r\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:44:35\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/actionSheet.js\n */\nexport default {\n // action-sheet组件\n actionSheet: {\n show: false,\n title: '',\n description: '',\n actions: () => [],\n index: '',\n cancelText: '',\n closeOnClickAction: true,\n safeAreaInsetBottom: true,\n openType: '',\n closeOnClickOverlay: true,\n round: 0\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:47:24\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/album.js\n */\nexport default {\n // album 组件\n album: {\n urls: () => [],\n keyName: '',\n singleSize: 180,\n multipleSize: 70,\n space: 6,\n singleMode: 'scaleToFill',\n multipleMode: 'aspectFill',\n maxCount: 9,\n previewFullImage: true,\n rowCount: 3,\n showMore: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:48:53\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/alert.js\n */\nexport default {\n // alert警告组件\n alert: {\n title: '',\n type: 'warning',\n description: '',\n closable: false,\n showIcon: false,\n effect: 'light',\n center: false,\n fontSize: 14\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:49:22\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/avatar.js\n */\nexport default {\n // avatar 组件\n avatar: {\n src: '',\n shape: 'circle',\n size: 40,\n mode: 'scaleToFill',\n text: '',\n bgColor: '#c0c4cc',\n color: '#ffffff',\n fontSize: 18,\n icon: '',\n mpAvatar: false,\n randomBgColor: false,\n defaultUrl: '',\n colorIndex: '',\n name: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:49:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/avatarGroup.js\n */\nexport default {\n // avatarGroup 组件\n avatarGroup: {\n urls: () => [],\n maxCount: 5,\n shape: 'circle',\n mode: 'scaleToFill',\n showMore: true,\n size: 40,\n keyName: '',\n gap: 0.5,\n\t\textraValue: 0\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:50:18\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/backtop.js\n */\nexport default {\n // backtop组件\n backtop: {\n mode: 'circle',\n icon: 'arrow-upward',\n text: '',\n duration: 100,\n scrollTop: 0,\n top: 400,\n bottom: 100,\n right: 20,\n zIndex: 9,\n iconStyle: () => ({\n color: '#909399',\n fontSize: '19px'\n })\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-23 19:51:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/badge.js\n */\nexport default {\n // 徽标数组件\n badge: {\n isDot: false,\n value: '',\n show: true,\n max: 999,\n type: 'error',\n showZero: false,\n bgColor: null,\n color: null,\n shape: 'circle',\n numberType: 'overflow',\n offset: () => [],\n inverted: false,\n absolute: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:51:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/button.js\n */\nexport default {\n // button组件\n button: {\n hairline: false,\n type: 'info',\n size: 'normal',\n shape: 'square',\n plain: false,\n disabled: false,\n loading: false,\n loadingText: '',\n loadingMode: 'spinner',\n loadingSize: 15,\n openType: '',\n formType: '',\n appParameter: '',\n hoverStopPropagation: true,\n lang: 'en',\n sessionFrom: '',\n sendMessageTitle: '',\n sendMessagePath: '',\n sendMessageImg: '',\n showMessageCard: false,\n dataName: '',\n throttleTime: 0,\n hoverStartTime: 0,\n hoverStayTime: 200,\n text: '',\n icon: '',\n iconColor: '',\n color: ''\n }\n}\n","/*\r\n * @Author : LQ\r\n * @Description :\r\n * @version : 1.0\r\n * @Date : 2021-08-20 16:44:21\r\n * @LastAuthor : LQ\r\n * @lastTime : 2021-08-20 16:52:43\r\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/calendar.js\r\n */\r\nexport default {\r\n // calendar 组件\r\n calendar: {\r\n title: '日期选择',\r\n showTitle: true,\r\n showSubtitle: true,\r\n mode: 'single',\r\n startText: '开始',\r\n endText: '结束',\r\n customList: () => [],\r\n color: '#3c9cff',\r\n minDate: 0,\r\n maxDate: 0,\r\n defaultDate: null,\r\n maxCount: Number.MAX_SAFE_INTEGER, // Infinity\r\n rowHeight: 56,\r\n formatter: null,\r\n showLunar: false,\r\n showMark: true,\r\n confirmText: '确定',\r\n confirmDisabledText: '确定',\r\n show: false,\r\n closeOnClickOverlay: false,\r\n readonly: false,\r\n showConfirm: true,\r\n maxRange: Number.MAX_SAFE_INTEGER, // Infinity\r\n rangePrompt: '',\r\n showRangePrompt: true,\r\n allowSameDay: false,\r\n\t\tround: 0,\r\n\t\tmonthNum: 3\r\n }\r\n}\r\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:53:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/carKeyboard.js\n */\nexport default {\n // 车牌号键盘\n carKeyboard: {\n random: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-23 20:53:09\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/cell.js\n */\nexport default {\n\t// cell组件的props\n\tcell: {\n\t\tcustomClass: '',\n\t\ttitle: '',\n\t\tlabel: '',\n\t\tvalue: '',\n\t\ticon: '',\n\t\tdisabled: false,\n\t\tborder: true,\n\t\tcenter: false,\n\t\turl: '',\n\t\tlinkType: 'navigateTo',\n\t\tclickable: false,\n\t\tisLink: false,\n\t\trequired: false,\n\t\tarrowDirection: '',\n\t\ticonStyle: {},\n\t\trightIconStyle: {},\n\t\trightIcon: 'arrow-right',\n\t\ttitleStyle: {},\n\t\tsize: '',\n\t\tstop: true,\n\t\tname: ''\n\t}\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:54:16\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/cellGroup.js\n */\nexport default {\n // cell-group组件的props\n cellGroup: {\n title: '',\n border: true,\n customStyle: {}\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-23 21:06:59\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/checkbox.js\n */\nexport default {\n // checkbox组件\n checkbox: {\n name: '',\n shape: '',\n size: '',\n checkbox: false,\n disabled: '',\n activeColor: '',\n inactiveColor: '',\n iconSize: '',\n iconColor: '',\n label: '',\n labelSize: '',\n labelColor: '',\n labelDisabled: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:54:47\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/checkboxGroup.js\n */\nexport default {\n // checkbox-group组件\n checkboxGroup: {\n name: '',\n value: () => [],\n shape: 'square',\n disabled: false,\n activeColor: '#2979ff',\n inactiveColor: '#c8c9cc',\n size: 18,\n placement: 'row',\n labelSize: 14,\n labelColor: '#303133',\n labelDisabled: false,\n iconColor: '#ffffff',\n iconSize: 12,\n iconPlacement: 'left',\n borderBottom: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:02\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/circleProgress.js\n */\nexport default {\n // circleProgress 组件\n circleProgress: {\n percentage: 30\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/code.js\n */\n\nexport default {\n // code 组件\n code: {\n seconds: 60,\n startText: '获取验证码',\n changeText: 'X秒重新获取',\n endText: '重新获取',\n keepRunning: false,\n uniqueKey: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/codeInput.js\n */\nexport default {\n // codeInput 组件\n codeInput: {\n\t\tadjustPosition: true,\n maxlength: 6,\n dot: false,\n mode: 'box',\n hairline: false,\n space: 10,\n value: '',\n focus: false,\n bold: false,\n color: '#606266',\n fontSize: 18,\n size: 35,\n disabledKeyboard: false,\n borderColor: '#c9cacc',\n\t\tdisabledDot: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:12\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/col.js\n */\nexport default {\n // col 组件\n col: {\n span: 12,\n offset: 0,\n justify: 'start',\n align: 'stretch',\n textAlign: 'left'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:30\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapse.js\n */\nexport default {\n // collapse 组件\n collapse: {\n value: null,\n accordion: false,\n border: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:42\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapseItem.js\n */\nexport default {\n // collapseItem 组件\n collapseItem: {\n title: '',\n value: '',\n label: '',\n disabled: false,\n isLink: true,\n clickable: true,\n border: true,\n align: 'left',\n name: '',\n icon: '',\n duration: 300\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:16\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/columnNotice.js\n */\nexport default {\n // columnNotice 组件\n columnNotice: {\n text: '',\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n fontSize: 14,\n speed: 80,\n step: false,\n duration: 1500,\n disableTouch: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:11:29\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/countDown.js\n */\nexport default {\n // u-count-down 计时器组件\n countDown: {\n time: 0,\n format: 'HH:mm:ss',\n autoStart: true,\n millisecond: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/countTo.js\n */\nexport default {\n // countTo 组件\n countTo: {\n startVal: 0,\n endVal: 0,\n duration: 2000,\n autoplay: true,\n decimals: 0,\n useEasing: true,\n decimal: '.',\n color: '#606266',\n fontSize: 22,\n bold: false,\n separator: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:48\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/datetimePicker.js\n */\nexport default {\n // datetimePicker 组件\n datetimePicker: {\n show: false,\n showToolbar: true,\n value: '',\n title: '',\n mode: 'datetime',\n maxDate: new Date(new Date().getFullYear() + 10, 0, 1).getTime(),\n minDate: new Date(new Date().getFullYear() - 10, 0, 1).getTime(),\n minHour: 0,\n maxHour: 23,\n minMinute: 0,\n maxMinute: 59,\n filter: null,\n formatter: null,\n loading: false,\n itemHeight: 44,\n cancelText: '取消',\n confirmText: '确认',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n visibleItemCount: 5,\n closeOnClickOverlay: false,\n defaultIndex: () => []\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:58:03\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/divider.js\n */\nexport default {\n // divider组件\n divider: {\n dashed: false,\n hairline: true,\n dot: false,\n textPosition: 'center',\n text: '',\n textSize: 14,\n textColor: '#909399',\n lineColor: '#dcdfe6'\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/empty.js\n */\nexport default {\n // empty组件\n empty: {\n icon: '',\n text: '',\n textColor: '#c0c4cc',\n textSize: 14,\n iconColor: '#c0c4cc',\n iconSize: 90,\n mode: 'data',\n width: 160,\n height: 160,\n show: true,\n marginTop: 0\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/form.js\n */\nexport default {\n // form 组件\n form: {\n model: () => ({}),\n rules: () => ({}),\n errorType: 'message',\n borderBottom: true,\n labelPosition: 'left',\n labelWidth: 45,\n labelAlign: 'left',\n labelStyle: () => ({})\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:04:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/formItem.js\n */\nexport default {\n // formItem 组件\n formItem: {\n label: '',\n prop: '',\n borderBottom: '',\n labelPosition: '',\n labelWidth: '',\n rightIcon: '',\n leftIcon: '',\n required: false,\n leftIconStyle: '',\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:25\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/gap.js\n */\nexport default {\n // gap组件\n gap: {\n bgColor: 'transparent',\n height: 20,\n marginTop: 0,\n marginBottom: 0,\n customStyle: {}\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:57\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/grid.js\n */\nexport default {\n // grid组件\n grid: {\n col: 3,\n border: false,\n align: 'left'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/gridItem.js\n */\nexport default {\n // grid-item组件\n gridItem: {\n name: null,\n bgColor: 'transparent'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 18:00:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/icon.js\n */\nimport config from '../config'\n\nconst {\n color\n} = config\nexport default {\n // icon组件\n icon: {\n name: '',\n color: color['u-content-color'],\n size: '16px',\n bold: false,\n index: '',\n hoverClass: '',\n customPrefix: 'uicon',\n label: '',\n labelPos: 'right',\n labelSize: '15px',\n labelColor: color['u-content-color'],\n space: '3px',\n imgMode: '',\n width: '',\n height: '',\n top: 0,\n stop: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:51\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/image.js\n */\nexport default {\n // image组件\n image: {\n src: '',\n mode: 'aspectFill',\n width: '300',\n height: '225',\n shape: 'square',\n radius: 0,\n lazyLoad: true,\n showMenuByLongpress: true,\n loadingIcon: 'photo',\n errorIcon: 'error-circle',\n showLoading: true,\n showError: true,\n fade: true,\n webp: false,\n duration: 500,\n bgColor: '#f3f4f6'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:15\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexAnchor.js\n */\nexport default {\n // indexAnchor 组件\n indexAnchor: {\n text: '',\n color: '#606266',\n size: 14,\n bgColor: '#dedede',\n height: 32\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:35\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexList.js\n */\nexport default {\n // indexList 组件\n indexList: {\n inactiveColor: '#606266',\n activeColor: '#5677fc',\n indexList: () => [],\n sticky: true,\n customNavHeight: 0\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/input.js\n */\nexport default {\n\t// index 组件\n\tinput: {\n\t\tvalue: '',\n\t\ttype: 'text',\n\t\tfixed: false,\n\t\tdisabled: false,\n\t\tdisabledColor: '#f5f7fa',\n\t\tclearable: false,\n\t\tpassword: false,\n\t\tmaxlength: -1,\n\t\tplaceholder: null,\n\t\tplaceholderClass: 'input-placeholder',\n\t\tplaceholderStyle: 'color: #c0c4cc',\n\t\tshowWordLimit: false,\n\t\tconfirmType: 'done',\n\t\tconfirmHold: false,\n\t\tholdKeyboard: false,\n\t\tfocus: false,\n\t\tautoBlur: false,\n\t\tdisableDefaultPadding: false,\n\t\tcursor: -1,\n\t\tcursorSpacing: 30,\n\t\tselectionStart: -1,\n\t\tselectionEnd: -1,\n\t\tadjustPosition: true,\n\t\tinputAlign: 'left',\n\t\tfontSize: '15px',\n\t\tcolor: '#303133',\n\t\tprefixIcon: '',\n\t\tprefixIconStyle: '',\n\t\tsuffixIcon: '',\n\t\tsuffixIconStyle: '',\n\t\tborder: 'surround',\n\t\treadonly: false,\n\t\tshape: 'square',\n\t\tformatter: null\n\t}\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/keyboard.js\n */\nexport default {\n // 键盘组件\n keyboard: {\n mode: 'number',\n dotDisabled: false,\n tooltip: true,\n showTips: true,\n tips: '',\n showCancel: true,\n showConfirm: true,\n random: false,\n safeAreaInsetBottom: true,\n closeOnClickOverlay: true,\n show: false,\n overlay: true,\n zIndex: 10075,\n cancelText: '取消',\n confirmText: '确定',\n autoChange: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:04:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/line.js\n */\nexport default {\n // line组件\n line: {\n color: '#d6d7d9',\n length: '100%',\n direction: 'row',\n hairline: true,\n margin: 0,\n dashed: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:14:11\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/lineProgress.js\n */\nexport default {\n // lineProgress 组件\n lineProgress: {\n activeColor: '#19be6b',\n inactiveColor: '#ececec',\n percentage: 0,\n showText: true,\n height: 12\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:45:36\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/link.js\n */\nimport config from '../config'\n\nconst {\n color\n} = config\nexport default {\n // link超链接组件props参数\n link: {\n color: color['u-primary'],\n fontSize: 15,\n underLine: false,\n href: '',\n mpTips: '链接已复制,请在浏览器打开',\n lineColor: '',\n text: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:14:53\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/list.js\n */\nexport default {\n // list 组件\n list: {\n showScrollbar: false,\n lowerThreshold: 50,\n upperThreshold: 0,\n scrollTop: 0,\n offsetAccuracy: 10,\n enableFlex: false,\n pagingEnabled: false,\n scrollable: true,\n scrollIntoView: '',\n scrollWithAnimation: false,\n enableBackToTop: false,\n height: 0,\n width: 0,\n preLoadScreen: 1\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:40\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/listItem.js\n */\nexport default {\n // listItem 组件\n listItem: {\n anchor: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:45:47\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingIcon.js\n */\nimport config from '../config'\n\nconst {\n color\n} = config\nexport default {\n // loading-icon加载中图标组件\n loadingIcon: {\n show: true,\n color: color['u-tips-color'],\n textColor: color['u-tips-color'],\n vertical: false,\n mode: 'spinner',\n size: 24,\n textSize: 15,\n text: '',\n timingFunction: 'ease-in-out',\n duration: 1200,\n inactiveColor: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:00:23\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingPage.js\n */\nexport default {\n // loading-page组件\n loadingPage: {\n loadingText: '正在加载',\n image: '',\n loadingMode: 'circle',\n loading: false,\n bgColor: '#ffffff',\n color: '#C8C8C8',\n fontSize: 19,\n iconSize: 28,\n loadingColor: '#C8C8C8'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:26\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadmore.js\n */\nexport default {\n // loadmore 组件\n loadmore: {\n status: 'loadmore',\n bgColor: 'transparent',\n icon: true,\n fontSize: 14,\n\t\ticonSize: 17,\n color: '#606266',\n loadingIcon: 'spinner',\n loadmoreText: '加载更多',\n loadingText: '正在加载...',\n nomoreText: '没有更多了',\n isDot: false,\n iconColor: '#b7b7b7',\n marginTop: 10,\n marginBottom: 10,\n height: 'auto',\n line: false,\n\t\tlineColor: '#E6E8EB',\n\t\tdashed: false,\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:59\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/modal.js\n */\nexport default {\n // modal 组件\n modal: {\n show: false,\n title: '',\n content: '',\n confirmText: '确认',\n cancelText: '取消',\n showConfirmButton: true,\n showCancelButton: false,\n confirmColor: '#2979ff',\n cancelColor: '#606266',\n buttonReverse: false,\n zoom: true,\n asyncClose: false,\n closeOnClickOverlay: false,\n negativeTop: 0,\n width: '650rpx',\n confirmButtonShape: '',\n\t\tduration:400,\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:16:18\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/navbar.js\n */\nimport color from '../color'\nexport default {\n // navbar 组件\n navbar: {\n safeAreaInsetTop: true,\n placeholder: false,\n fixed: true,\n border: false,\n leftIcon: 'arrow-left',\n leftText: '',\n rightText: '',\n rightIcon: '',\n title: '',\n bgColor: '#ffffff',\n titleWidth: '400rpx',\n height: '44px',\n\t\tleftIconSize: 20,\n\t\tleftIconColor: color.mainColor,\n\t\tautoBack: false,\n\t\ttitleStyle: ''\n }\n\n}\n","// 为了让用户能够自定义主题,会逐步弃用此文件,各颜色通过css提供\r\n// 为了给某些特殊场景使用和向后兼容,无需删除此文件(2020-06-20)\r\nconst color = {\r\n primary: '#3c9cff',\r\n info: '#909399',\r\n default: '#909399',\r\n warning: '#f9ae3d',\r\n error: '#f56c6c',\r\n success: '#5ac725',\r\n mainColor: '#303133',\r\n contentColor: '#606266',\r\n tipsColor: '#909399',\r\n lightColor: '#c0c4cc',\r\n borderColor: '#e4e7ed'\r\n}\r\n\r\nexport default color\r\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:16:39\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/noNetwork.js\n */\nexport default {\n // noNetwork\n noNetwork: {\n tips: '哎呀,网络信号丢失',\n zIndex: '',\n image: 'data:image/png;base64,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'\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:17:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/noticeBar.js\n */\nexport default {\n // noticeBar\n noticeBar: {\n text: () => [],\n direction: 'row',\n step: false,\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n speed: 80,\n fontSize: 14,\n duration: 2000,\n disableTouch: true,\n url: '',\n linkType: 'navigateTo'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:10:21\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/notify.js\n */\nexport default {\n // notify组件\n notify: {\n top: 0,\n type: 'primary',\n color: '#ffffff',\n bgColor: '',\n message: '',\n duration: 3000,\n fontSize: 15,\n safeAreaInsetTop: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:11:46\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberBox.js\n */\nexport default {\n // 步进器组件\n numberBox: {\n name: '',\n value: 0,\n min: 1,\n max: Number.MAX_SAFE_INTEGER,\n step: 1,\n integer: false,\n disabled: false,\n disabledInput: false,\n asyncChange: false,\n inputWidth: 35,\n showMinus: true,\n showPlus: true,\n decimalLength: null,\n longPress: true,\n color: '#323233',\n buttonSize: 30,\n bgColor: '#EBECEE',\n cursorSpacing: 100,\n disableMinus: false,\n disablePlus: false,\n iconStyle: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:08:05\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberKeyboard.js\n */\nexport default {\n // 数字键盘\n numberKeyboard: {\n mode: 'number',\n dotDisabled: false,\n random: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/overlay.js\n */\nexport default {\n // overlay组件\n overlay: {\n show: false,\n zIndex: 10070,\n duration: 300,\n opacity: 0.5\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:17:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/parse.js\n */\nexport default {\n // parse\n parse: {\n copyLink: true,\n errorImg: '',\n lazyLoad: false,\n loadingImg: '',\n pauseVideo: true,\n previewImg: true,\n setTitle: true,\n showImgMenu: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/picker.js\n */\nexport default {\n // picker\n picker: {\n show: false,\n showToolbar: true,\n title: '',\n columns: () => [],\n loading: false,\n itemHeight: 44,\n cancelText: '取消',\n confirmText: '确定',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n visibleItemCount: 5,\n keyName: 'text',\n closeOnClickOverlay: false,\n defaultIndex: () => [],\n\t\timmediateChange: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/popup.js\n */\nexport default {\n // popup组件\n popup: {\n show: false,\n overlay: true,\n mode: 'bottom',\n duration: 300,\n closeable: false,\n overlayStyle: () => {},\n closeOnClickOverlay: true,\n zIndex: 10075,\n safeAreaInsetBottom: true,\n safeAreaInsetTop: false,\n closeIconPos: 'top-right',\n round: 0,\n zoom: true,\n bgColor: '',\n overlayOpacity: 0.5\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:02:34\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/radio.js\n */\nexport default {\n // radio组件\n radio: {\n name: '',\n shape: '',\n disabled: '',\n labelDisabled: '',\n activeColor: '',\n inactiveColor: '',\n iconSize: '',\n labelSize: '',\n label: '',\n labelColor: '',\n size: '',\n iconColor: '',\n placement: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:12\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/radioGroup.js\n */\nexport default {\n // radio-group组件\n radioGroup: {\n value: '',\n disabled: false,\n shape: 'circle',\n activeColor: '#2979ff',\n inactiveColor: '#c8c9cc',\n name: '',\n size: 18,\n placement: 'row',\n label: '',\n labelColor: '#303133',\n labelSize: 14,\n labelDisabled: false,\n iconColor: '#ffffff',\n iconSize: 12,\n borderBottom: false,\n iconPlacement: 'left'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:09\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/rate.js\n */\nexport default {\n // rate组件\n rate: {\n value: 1,\n count: 5,\n disabled: false,\n size: 18,\n inactiveColor: '#b2b2b2',\n activeColor: '#FA3534',\n gutter: 4,\n minCount: 1,\n allowHalf: false,\n activeIcon: 'star-fill',\n inactiveIcon: 'star',\n touchable: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:41\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/readMore.js\n */\nexport default {\n // readMore\n readMore: {\n showHeight: 400,\n toggle: false,\n closeText: '展开阅读全文',\n openText: '收起',\n color: '#2979ff',\n fontSize: 14,\n textIndent: '2em',\n name: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/row.js\n */\nexport default {\n // row\n row: {\n gutter: 0,\n justify: 'start',\n align: 'center'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/rowNotice.js\n */\nexport default {\n // rowNotice\n rowNotice: {\n text: '',\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n fontSize: 14,\n speed: 80\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:28\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/scrollList.js\n */\nexport default {\n // scrollList\n scrollList: {\n indicatorWidth: 50,\n indicatorBarWidth: 20,\n indicator: true,\n indicatorColor: '#f2f2f2',\n indicatorActiveColor: '#3c9cff',\n indicatorStyle: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:45\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/search.js\n */\nexport default {\n // search\n search: {\n shape: 'round',\n bgColor: '#f2f2f2',\n placeholder: '请输入关键字',\n clearabled: true,\n focus: false,\n showAction: true,\n actionStyle: () => ({}),\n actionText: '搜索',\n inputAlign: 'left',\n inputStyle: () => ({}),\n disabled: false,\n borderColor: 'transparent',\n searchIconColor: '#909399',\n searchIconSize: 22,\n color: '#606266',\n placeholderColor: '#909399',\n searchIcon: 'search',\n margin: '0',\n animation: false,\n value: '',\n maxlength: '-1',\n height: 32,\n label: null\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/section.js\n */\nexport default {\n // u-section组件\n section: {\n title: '',\n subTitle: '更多',\n right: true,\n fontSize: 15,\n bold: true,\n color: '#303133',\n subColor: '#909399',\n showLine: true,\n lineColor: '',\n arrow: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:20:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/skeleton.js\n */\nexport default {\n // skeleton\n skeleton: {\n loading: true,\n animate: true,\n rows: 0,\n rowsWidth: '100%',\n rowsHeight: 18,\n title: true,\n titleWidth: '50%',\n titleHeight: 18,\n avatar: false,\n avatarSize: 32,\n avatarShape: 'circle'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:08:25\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/slider.js\n */\nexport default {\n // slider组件\n slider: {\n value: 0,\n blockSize: 18,\n min: 0,\n max: 100,\n step: 1,\n activeColor: '#2979ff',\n inactiveColor: '#c0c4cc',\n blockColor: '#ffffff',\n showValue: false,\n\t\tdisabled:false,\n blockStyle: () => {}\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:20:39\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/statusBar.js\n */\nexport default {\n // statusBar\n statusBar: {\n bgColor: 'transparent'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:37\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/steps.js\n */\nexport default {\n // steps组件\n steps: {\n direction: 'row',\n current: 0,\n activeColor: '#3c9cff',\n inactiveColor: '#969799',\n activeIcon: '',\n inactiveIcon: '',\n dot: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/stepsItem.js\n */\nexport default {\n // steps-item组件\n stepsItem: {\n title: '',\n desc: '',\n iconSize: 17,\n error: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:30\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/sticky.js\n */\nexport default {\n // sticky组件\n sticky: {\n offsetTop: 0,\n customNavHeight: 0,\n disabled: false,\n bgColor: 'transparent',\n zIndex: '',\n index: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/subsection.js\n */\nexport default {\n // subsection组件\n subsection: {\n list: [],\n current: 0,\n activeColor: '#3c9cff',\n inactiveColor: '#303133',\n mode: 'button',\n fontSize: 12,\n bold: true,\n bgColor: '#eeeeef',\n\t\tkeyName: 'name'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:00:42\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeAction.js\n */\nexport default {\n // swipe-action组件\n swipeAction: {\n autoClose: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeActionItem.js\n */\nexport default {\n // swipeActionItem 组件\n swipeActionItem: {\n show: false,\n name: '',\n disabled: false,\n threshold: 20,\n autoClose: true,\n options: [],\n duration: 300\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:21:38\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiper.js\n */\nexport default {\n // swiper 组件\n swiper: {\n list: () => [],\n indicator: false,\n indicatorActiveColor: '#FFFFFF',\n indicatorInactiveColor: 'rgba(255, 255, 255, 0.35)',\n indicatorStyle: '',\n indicatorMode: 'line',\n autoplay: true,\n current: 0,\n currentItemId: '',\n interval: 3000,\n duration: 300,\n circular: false,\n previousMargin: 0,\n nextMargin: 0,\n acceleration: false,\n displayMultipleItems: 1,\n easingFunction: 'default',\n keyName: 'url',\n imgMode: 'aspectFill',\n height: 130,\n bgColor: '#f3f4f6',\n radius: 4,\n loading: false,\n showTitle: false\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:07\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiperIndicator.js\n */\nexport default {\n // swiperIndicator 组件\n swiperIndicator: {\n length: 0,\n current: 0,\n indicatorActiveColor: '',\n indicatorInactiveColor: '',\n\t\tindicatorMode: 'line'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:24\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/switch.js\n */\nexport default {\n // switch\n switch: {\n loading: false,\n disabled: false,\n size: 25,\n activeColor: '#2979ff',\n inactiveColor: '#ffffff',\n value: false,\n activeValue: true,\n inactiveValue: false,\n asyncChange: false,\n space: 0\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:40\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbar.js\n */\nexport default {\n // tabbar\n tabbar: {\n value: null,\n safeAreaInsetBottom: true,\n border: true,\n zIndex: 1,\n activeColor: '#1989fa',\n inactiveColor: '#7d7e80',\n fixed: true,\n placeholder: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbarItem.js\n */\nexport default {\n //\n tabbarItem: {\n name: null,\n icon: '',\n badge: null,\n dot: false,\n text: '',\n badgeStyle: 'top: 6px;right:2px;'\n }\n}\n","/*\r\n * @Author : LQ\r\n * @Description :\r\n * @version : 1.0\r\n * @Date : 2021-08-20 16:44:21\r\n * @LastAuthor : LQ\r\n * @lastTime : 2021-08-20 17:23:14\r\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabs.js\r\n */\r\nexport default {\r\n //\r\n tabs: {\r\n duration: 300,\r\n list: () => [],\r\n lineColor: '#3c9cff',\r\n activeStyle: () => ({\r\n color: '#303133'\r\n }),\r\n inactiveStyle: () => ({\r\n color: '#606266'\r\n }),\r\n lineWidth: 20,\r\n lineHeight: 3,\r\n lineBgSize: 'cover',\r\n itemStyle: () => ({\r\n height: '44px'\r\n }),\r\n scrollable: true,\r\n\t\tcurrent: 0,\r\n\t\tkeyName: 'name'\r\n }\r\n}\r\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:23:37\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tag.js\n */\nexport default {\n // tag 组件\n tag: {\n type: 'primary',\n disabled: false,\n size: 'medium',\n shape: 'square',\n text: '',\n bgColor: '',\n color: '',\n borderColor: '',\n closeColor: '#C6C7CB',\n name: '',\n plainFill: false,\n plain: false,\n closable: false,\n show: true,\n icon: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:23:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/text.js\n */\nexport default {\n // text 组件\n text: {\n type: '',\n show: true,\n text: '',\n prefixIcon: '',\n suffixIcon: '',\n mode: '',\n href: '',\n format: '',\n call: false,\n openType: '',\n bold: false,\n block: false,\n lines: '',\n color: '#303133',\n size: 15,\n iconStyle: () => ({\n fontSize: '15px'\n }),\n decoration: 'none',\n margin: 0,\n lineHeight: '',\n align: 'left',\n wordWrap: 'normal'\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:24:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/textarea.js\n */\nexport default {\n\t// textarea 组件\n\ttextarea: {\n\t\tvalue: '',\n\t\tplaceholder: '',\n\t\tplaceholderClass: 'textarea-placeholder',\n\t\tplaceholderStyle: 'color: #c0c4cc',\n\t\theight: 70,\n\t\tconfirmType: 'done',\n\t\tdisabled: false,\n\t\tcount: false,\n\t\tfocus: false,\n\t\tautoHeight: false,\n\t\tfixed: false,\n\t\tcursorSpacing: 0,\n\t\tcursor: '',\n\t\tshowConfirmBar: true,\n\t\tselectionStart: -1,\n\t\tselectionEnd: -1,\n\t\tadjustPosition: true,\n\t\tdisableDefaultPadding: false,\n\t\tholdKeyboard: false,\n\t\tmaxlength: 140,\n\t\tborder: 'surround',\n\t\tformatter: null\n\t}\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:07\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/toast.js\n */\nexport default {\n // toast组件\n toast: {\n zIndex: 10090,\n loading: false,\n text: '',\n icon: '',\n type: '',\n loadingMode: '',\n show: '',\n overlay: false,\n position: 'center',\n params: () => {},\n duration: 2000,\n isTab: false,\n url: '',\n callback: null,\n back: false\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:24:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/toolbar.js\n */\nexport default {\n // toolbar 组件\n toolbar: {\n show: true,\n cancelText: '取消',\n confirmText: '确认',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n title: ''\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:25:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tooltip.js\n */\nexport default {\n // tooltip 组件\n tooltip: {\n text: '',\n copyText: '',\n size: 14,\n color: '#606266',\n bgColor: 'transparent',\n direction: 'top',\n zIndex: 10071,\n showCopy: true,\n buttons: () => [],\n overlay: true,\n showToast: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:59:00\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/transition.js\n */\nexport default {\n // transition动画组件的props\n transition: {\n show: false,\n mode: 'fade',\n duration: '300',\n timingFunction: 'ease-out'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:09:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/upload.js\n */\nexport default {\n\t// upload组件\n\tupload: {\n\t\taccept: 'image',\n\t\tcapture: () => ['album', 'camera'],\n\t\tcompressed: true,\n\t\tcamera: 'back',\n\t\tmaxDuration: 60,\n\t\tuploadIcon: 'camera-fill',\n\t\tuploadIconColor: '#D3D4D6',\n\t\tuseBeforeRead: false,\n\t\tpreviewFullImage: true,\n\t\tmaxCount: 52,\n\t\tdisabled: false,\n\t\timageMode: 'aspectFill',\n\t\tname: '',\n\t\tsizeType: () => ['original', 'compressed'],\n\t\tmultiple: false,\n\t\tdeletable: true,\n\t\tmaxSize: Number.MAX_VALUE,\n\t\tfileList: () => [],\n\t\tuploadText: '',\n\t\twidth: 80,\n\t\theight: 80,\n\t\tpreviewImage: true\n\t}\n}\n","// uniapp在H5中各API的z-index值如下:\r\n/**\r\n * actionsheet: 999\r\n * modal: 999\r\n * navigate: 998\r\n * tabbar: 998\r\n * toast: 999\r\n */\r\n\r\nexport default {\r\n toast: 10090,\r\n noNetwork: 10080,\r\n // popup包含popup,actionsheet,keyboard,picker的值\r\n popup: 10075,\r\n mask: 10070,\r\n navbar: 980,\r\n topTips: 975,\r\n sticky: 970,\r\n indexListSticky: 965\r\n}\r\n","/**\n * 注意:\n * 此部分内容,在vue-cli模式下,需要在vue.config.js加入如下内容才有效:\n * module.exports = {\n * transpileDependencies: ['uview-v2']\n * }\n */\n\nlet platform = 'none'\n\n\n\n\n\n\nplatform = 'vue2'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nplatform = 'weixin'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nplatform = 'mp'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport default platform\n","uni.addInterceptor({\n returnValue (res) {\n if (!(!!res && (typeof res === \"object\" || typeof res === \"function\") && typeof res.then === \"function\")) {\n return res;\n }\n return new Promise((resolve, reject) => {\n res.then((res) => {\n if (!res) return resolve(res) \n return res[0] ? reject(res[0]) : resolve(res[1])\n });\n });\n },\n});","import mod from \"-!../../../../../../Downloads/HBuilderX.4.29.2024093009/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../Downloads/HBuilderX.4.29.2024093009/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../Downloads/HBuilderX.4.29.2024093009/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./index.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../Downloads/HBuilderX.4.29.2024093009/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../Downloads/HBuilderX.4.29.2024093009/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../Downloads/HBuilderX.4.29.2024093009/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./index.js?vue&type=script&lang=js&\"","var core = getApp().globalData.requirejs(\"core\"),\r\n\tthat\r\nimport cwxKeyboard from '@/components/cwx-keyboard/cwx-keyboard'\r\nimport rechargeDeductFn from './utils/rechargeDeductFn'\r\nimport creditDeductFn from './utils/creditDeductFn'\r\nimport orderSubmitFn from './utils/orderSubmitFn'\r\nimport moneyChangeFn from './utils/moneyChangeFn'\r\nimport getMerchFn from './utils/getMerchFn'\r\nimport intFn from './utils/intFn'\r\n\r\nexport default {\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tlist: {\r\n\t\t\t\trealprice: 0.00,\r\n\t\t\t\tcredit: 0.00,\r\n\t\t\t\tmoney_sub: 0.00,\r\n\t\t\t\tdeductcredit: 0.00,\r\n\t\t\t\tdeductprice: 0.00,\r\n\t\t\t\tneedpay: 0.00,\r\n\t\t\t\tdeduct_recharge: 0.00,\r\n\t\t\t\tdeductprice_zs:0.00,\r\n\t\t\t\tdeductcredit_zs:0.00\r\n\t\t\t\t\r\n\t\t\t},\r\n\t\t\tmerch: {},\r\n\t\t\tmockInputFocusText: ' ',\r\n\t\t\tshowKeyBoard: true,\r\n\t\t\tshowRemarkInput: false,\r\n\t\t\tmerchid: 0,\r\n\t\t\tuse_deductprice: false,\r\n\t\t\thideRechargeDeduct: false,\r\n\t\t\thideCreditDeduct: false,\r\n\t\t\t// 是否已经获取公众号openid\r\n\t\t\tgetOpenIDAlready: '',\r\n\t\t\tcredit1: \"\",\r\n\t\t\t// 储值卡\r\n\t\t\tuse_deduct_recharge: false,\r\n\t\t\trecharge: 0,\r\n\t\t\tsubmit: \"\", //提交状态\r\n\t\t\tmin_deduct_credit_price: 0.02,\r\n\t\t\ton_paying: false,\r\n\t\t\toption: {},\r\n\t\t\t//活动赠送金豆\r\n\t\t\tcredit1_hot_set:0,\r\n\t\t\tcredit1_hot_rang:0,\r\n\t\t\tuse_deductprice_hot: false,\r\n\t\t\t//活动金额范围 大于20才行\r\n\t\t\tcredit1_hot_set_jine:0,\r\n\t\t\t//授权登录字段\r\n\t\t\topenid:'',\r\n\t\t\tismobile:false,\r\n\t\t\t//限额\r\n\t\t\tquota:2000,\r\n\t\t\t//可抵扣最大金额\r\n\t\t\tuse_max_credit_money:0\r\n\t\t}\r\n\t},\r\n\tcomponents: {\r\n\t\tcwxKeyboard\r\n\t},\r\n\tprops: {},\r\n\tfilters: {\r\n\t limitDecimal(val) {\r\n\t return parseFloat(val).toFixed(2);\r\n\t },\r\n\t},\r\n\tonLoad: function (t) {\r\n\t\tthat = this\r\n\t\tthis.option = t\r\n\t\t// uni.showLoading({\r\n\t\t// \ttitle: '加载中'\r\n\t\t// });\r\n\t\tmockInputFocus()\r\n\t\tintFn.init(that)\r\n\t\t//加载用户openid\r\n\t\tgetApp().globalData.util.loginByCode(null, false).then(userInfo => {\r\n\t\t\t\r\n\t\t\tif(userInfo.mobile==null||userInfo.mobile==''){\r\n\t\t\t\tthat.setData({\r\n\t\t\t\t\tismobile:true\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tthat.setData({\r\n\t\t\t\topenid:userInfo.openid\r\n\t\t\t})\r\n\t\t})\r\n\t},\r\n\tonShow: function () {\r\n\r\n\t},\r\n\tonHide: function () {\r\n\t\tthat.submit = false;\r\n\t\tthat.list = {};\r\n\t\tthat.use_deductprice = false;\r\n\t\tuni.removeStorageSync('qr_scan_data');\r\n\t\tthis.$refs.clearMoney._handleClearKey();\r\n\t},\r\n\tmethods: {\r\n\t\t/**\r\n\t\t * 检测是否需要跳转其他页面\r\n\t\t * **/\r\n\t\tisNeedGo2OtherPage: function (queryParam) {\r\n\t\t\tlet page = false\r\n\t\t\tif (!queryParam) {\r\n\t\t\t\tqueryParam = that.option\r\n\t\t\t} else {\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t\tlet pageParam = '?id=' + queryParam.merchid\r\n\t\t\tif (queryParam.needGo2MerCredit) {\r\n\t\t\t\tpage = 'merch/index_credit'\r\n\t\t\t} else if (queryParam.needGo2MerGoods || queryParam.table_id) {\r\n\t\t\t\tpage = 'merch/index'\r\n\t\t\t} else if (queryParam.needGo2MerDetails) {\r\n\t\t\t\tpage = 'merch/intro'\r\n\t\t\t} else if (typeof queryParam.cashierid != \"undefined\" && queryParam.cashierid != \"\" && queryParam\r\n\t\t\t\t.total >= 0.01) {\r\n\t\t\t\tthat.onMoneyInput(queryParam.total)\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t\t//如果是扫码点餐\r\n\t\t\tif (queryParam.table_id) {\r\n\t\t\t\tpageParam += '&table_id=' + queryParam.table_id\r\n\t\t\t}\r\n\t\t\tif (page) {\r\n\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\turl: '/pages/' + page + pageParam\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// 创建线下支付订单\r\n\t\tgetList: function (merchid) {\r\n\t\t\tif (!merchid) {\r\n\t\t\t\tuni.hideLoading()\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '网络开小差啦,重新扫码试试吧!1623124886'\r\n\t\t\t\t})\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Merch_Index.GetMerchData4OfflinePay',\r\n\t\t\t\tid: merchid\r\n\t\t\t}).then(function (merchData) {\r\n\t\t\t\tthat.hasMerchData2Next(merchData)\r\n\t\t\t});\r\n\t\t},\r\n\t\t// 获取到商家数据后 进行下一步操作\r\n\t\thasMerchData2Next: function (merchData) {\r\n\t\t\tuni.hideLoading()\r\n\t\t\tlet merch = (merchData.data.data)\r\n\t\t\t//默认金豆最大抵扣 \r\n\t\t\tthat.use_max_credit_money=parseFloat(that.credit1*merch.credit_pay_rate).toFixed(2);\r\n\t\t\t//金豆兑换比例\r\n\r\n\t\t\tif (!merch) {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '网络开小差啦,重新扫码试试吧!1623930867'\r\n\t\t\t\t})\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (0 == merch.err_code) {\r\n\t\t\t\t// 获得当前商家设置信息\r\n\t\t\t\tuni.setStorage({\r\n\t\t\t\t\tkey: 'cur_offline_merch_data',\r\n\t\t\t\t\tdata: merch\r\n\t\t\t\t});\r\n\t\t\t\tthat.quota=merch.quota;\r\n\t\t\t\tuni.setNavigationBarTitle({\r\n\t\t\t\t\ttitle: '向' + merch.merchname + '付款'\r\n\t\t\t\t})\r\n\t\t\t\tthat.min_deduct_credit_price = parseFloat(merch.min_offline_price) + 0.01\r\n\t\t\t\tthat.min_deduct_credit_price = getApp().globalData.util.numberFloor(that.min_deduct_credit_price)\r\n\t\t\t\t// 生成随机数\r\n\t\t\t\tconst str = merch.credit_give_hot_rang;\r\n\t\t\t\tconst [min, max] = str.split(',');\r\n\t\t\t\tconst randomNum = Math.floor(Math.random() * (max - min + 1)) + parseInt(min);\r\n\t\t\t\t\r\n\t\t\t\tlet pt_title=[\"余乐兑平台\"];\r\n\t\t\t\tif(merch.activity_platform){\r\n\t\t\t\t\tpt_title = JSON.parse(merch.activity_platform);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tconst index = Math.floor(Math.random() * pt_title.length);\r\n\t\t\t\t\r\n\t\t\t\tthat.setData({\r\n\t\t\t\t\tmerch: merch,\r\n\t\t\t\t\tmerchid: merch.id,\r\n\t\t\t\t\tcredit1_hot_set: merch.credit_give_hot_set,\r\n\t\t\t\t\tcredit1_hot_rang: randomNum,\r\n\t\t\t\t\tactivity_platform:pt_title[index]\r\n\t\t\t\t})\r\n\r\n\t\t\t\tif (merch.pay_need_mobile) {\r\n\t\t\t\t\tgetApp().globalData.checkBindMobile()\r\n\t\t\t\t}\r\n\t\t\t\t// 获取储值卡余额\r\n\t\t\t\tthat.getUserRecharge()\r\n\t\t\t\t// 获取二步动作, 跳转等\r\n\t\t\t\tthat.isNeedGo2OtherPage()\r\n\t\t\t} else if (merch && typeof merch.err_code_desc != undefined && merch.err_code_desc) {\r\n\t\t\t\tlet tipsText = ''\r\n\t\t\t\tif (merch && merch.err_code_desc) {\r\n\t\t\t\t\ttipsText += merch.err_code_desc\r\n\t\t\t\t}\r\n\t\t\t\tuni.hideLoading();\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: tipsText,\r\n\t\t\t\t\tshowCancel: false\r\n\t\t\t\t})\r\n\t\t\t} else {\r\n\t\t\t\tlet tipsText = '网络开小差啦,重新扫码试试吧!1623124887';\r\n\t\t\t\tif (merch && merch.err_code_desc) {\r\n\t\t\t\t\ttipsText += merch.err_code_desc;\r\n\t\t\t\t}\r\n\t\t\t\tuni.hideLoading()\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: tipsText\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// 获取储值卡和金豆余额\r\n\t\tgetUserCredit: function () {\r\n\t\t\tgetApp().globalData.util.loginByCode(null, false).then(userInfo => {\r\n\t\t\t\tthat.setData({\r\n\t\t\t\t\tcredit1: userInfo.credit1\r\n\t\t\t\t})\r\n\t\t\t})\r\n\t\t},\r\n\r\n\t\t// 获取用户储值卡余额\r\n\t\tgetUserRecharge: function () {\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Member_Recharge.getUserRechargeBan',\r\n\t\t\t\tuserid: uni.getStorageSync('userInfo').id,\r\n\t\t\t\tmerchid: that.merchid\r\n\t\t\t}).then(userRecharge => {\r\n\t\t\t\tthat.recharge = userRecharge.data.data.balance\r\n\t\t\t})\r\n\t\t},\r\n\t\t//点击付款\r\n\t\tsubmitFun: function () {\r\n\t\t\tif(!this.use_deductprice_hot){\r\n\t\t\t\tthat.setData({\r\n\t\t\t\t\tactivity_platform:''\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tconsole.log(\"---------------------\")\r\n\t\t\torderSubmitFn.orderSubmit(that)\r\n\t\t},\r\n\t\t/** 检查是否使用了金豆/储值卡抵扣,如果使用了,必须绑定手机号 */\r\n\t\tcheckCreditReBindMobile(list) {\r\n\t\t\tif (list.deductcredit > 0 || list.deduct_recharge > 0) {\r\n\t\t\t\treturn true\r\n\t\t\t}\r\n\t\t\treturn false\r\n\t\t},\r\n\t\t// 是否使用金豆抵扣\r\n\t\tuseCreditCheckBox: function (e) {\r\n\t\t\tthat.getUserCredit()\r\n\t\t\tlet noUseDeduct = false; // 不使用金豆抵扣\r\n\t\t\tif (e.detail.value.length) {\r\n\t\t\t\tnoUseDeduct = true\r\n\t\t\t}\r\n\t\t\tthis.use_deductprice = noUseDeduct;\r\n\t\t\tcreditDeductFn.modifyCreditDeduct(that)\r\n\t\t},\r\n\t\t// 是否使用赠送金豆活动抵扣\r\n\t\tuseCreditCheckBox_hot: function (e) {\r\n\t\t\tlet noUseDeduct = false; // 不使用金豆抵扣\r\n\t\t\tif (e.detail.value[0]=='1') {\r\n\t\t\t\tnoUseDeduct = true\r\n\t\t\t}\r\n\t\t\tthis.use_deductprice_hot = noUseDeduct;\r\n\t\t\tcreditDeductFn.modifyCreditDeduct(that)\r\n\t\t},\r\n\r\n\t\t// 是否使用储值卡\r\n\t\tuseRechargeCheckBox: function (e) {\r\n\t\t\tthat.getUserRecharge();\r\n\t\t\tlet noUseDeduct = false; // 不使用储值卡抵扣\r\n\t\t\tif (e.detail.value.length) {\r\n\t\t\t\tnoUseDeduct = true\r\n\t\t\t}\r\n\t\t\tthis.use_deduct_recharge = noUseDeduct\r\n\t\t\trechargeDeductFn.modifyRechargeDeduct(that, true)\r\n\t\t},\r\n\r\n\t\tonMoneyInput(e) {\r\n\t\t\t//用于判断活动大于20元 回头改下\r\n\t\t\tthis.credit1_hot_set_jine=e\r\n\t\t\tmoneyChangeFn.changeEv(e, that)\r\n\t\t},\r\n\t\ttoggleKeyboard() {\r\n\t\t\t\r\n\t\t\tthis.showKeyBoard = !this.showKeyBoard\r\n\t\t},\r\n\r\n\t\tshowRemarkClick() {\r\n\t\t\tthis.showRemarkInput = true\r\n\t\t},\r\n\r\n\t\t// 显示推广人备注信息\r\n\t\tshowSpreadRemark() {\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Merch_Index.GetMerchData4OfflinePay',\r\n\t\t\t\tid: that.merch.id\r\n\t\t\t}).then(res => {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tshowCancel: false,\r\n\t\t\t\t\tcontent: '推广人备注:' + res.data.data.remark_spread\r\n\t\t\t\t})\r\n\t\t\t})\r\n\t\t},\r\n\r\n\t\t// 显示最小现金支付金额提示\r\n\t\tshowMiniCreditdeductTips() {\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Merch_Index.CreditCannotFullDeductTips',\r\n\t\t\t\tid: that.merch.id\r\n\t\t\t}).then(res => {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: \"提示\",\r\n\t\t\t\t\tshowCancel: false,\r\n\t\t\t\t\tcontent: res.data.data\r\n\t\t\t\t})\r\n\t\t\t})\r\n\t\t},\r\n\t\t// 使用数字人民币支付\r\n\t\tuseEcnyPay() {\r\n\t\t\tuni.showModal({\r\n\t\t\t\ttitle: \"提示\",\r\n\t\t\t\tcontent: that.merch.e_cny_qrurl_psbc_tips,\r\n\t\t\t\tshowCancel: false\r\n\t\t\t})\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Merch_Ecny.ShowDeviceEcnyQrCode',\r\n\t\t\t\tmerchid: that.merch.id,\r\n\t\t\t\te_cny_qrurl_psbc: that.merch.e_cny_qrurl_psbc\r\n\t\t\t})\r\n\t\t},\r\n\t\t// 跳转到商家店铺页面\r\n\t\tgo2MerchIndex(merchid) {\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t\t\tuni.navigateTo({\r\n\t\t\t\turl: '/pages/merch/index/index?id=' + merchid\r\n\t\t\t})\r\n\r\n\t\t},\r\n\t\t//微信获取手机号\r\n\t\tgetPhoneNumber(e){\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Member_User.getPhone',\r\n\t\t\t\tcode: e.detail.code,\r\n\t\t\t\topenid: that.openid,\r\n\t\t\t\tplatform: 'MP-WEIXIN'\r\n\t\t\t}).then(function (res) {\r\n\t\t\t\tif(res.data.data.result_code==\"SUCCESS\"){\r\n\t\t\t\t\tthat.ismobile=false; //手机按钮隐藏\r\n\t\t\t\t\tthat.use_deductprice=true; //复选框勾选\r\n\t\t\t\t\tcreditDeductFn.modifyCreditDeduct(that)\r\n\t\t\t\t}\r\n\t\t\t\telse{\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\t\t\t\treturn false;\r\n\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\treturn false;\r\n\t\t},\r\n\t\t//微信获取手机号-平台赠送活动选项\r\n\t\tgetPhoneNumber_hot(e){\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Member_User.getPhone',\r\n\t\t\t\tcode: e.detail.code,\r\n\t\t\t\topenid: that.openid,\r\n\t\t\t\tplatform: 'MP-WEIXIN'\r\n\t\t\t}).then(function (res) {\r\n\t\t\t\tif(res.data.data.result_code==\"SUCCESS\"){\r\n\t\t\t\t\tthat.ismobile=false; //手机按钮隐藏\r\n\t\t\t\t\tthat.use_deductprice_hot=true; //复选框勾选\r\n\t\t\t\t\tcreditDeductFn.modifyCreditDeduct(that)\r\n\t\t\t\t}\r\n\t\t\t\telse{\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\t\t\t\treturn false;\r\n\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\treturn false;\r\n\t\t},\r\n\t} // / methods\r\n};\r\n\r\n// 模拟光标\r\nfunction mockInputFocus() {\r\n\t\r\n\tsetInterval(function () {\r\n\t\tif (that.mockInputFocusText == '0.1') {\r\n\t\t\tthat.mockInputFocusText = '0.5'\r\n\t\t} else {\r\n\t\t\tthat.mockInputFocusText = '0.1'\r\n\t\t}\r\n\t}, 1000)\r\n}\r\n","import moneySubFn from './moneySubFn'\r\nfunction modifyRechargeDeduct(that,checkMoneySub = false) {\r\n\tthat.list.is_use_recharge_deduct = that.use_deduct_recharge ? 'yes' : 'no';\r\n\t\t// 是否使用储值卡抵扣 // 储值和金豆抵扣满足一个即可\r\n\t\tif (that.use_deduct_recharge && that.recharge >= 0.01) {\r\n\t\t\t// 剩余要付款金额\r\n\t\t\tlet allBa2Need = parseFloat(that.list.realprice - that.list.money_sub)\r\n\t\t\t// 储值余额>付款金额\r\n\t\t\tif (getApp().globalData.util.numberFloor(that.recharge) >= allBa2Need) {\r\n\t\t\t\tthat.list.deduct_recharge = allBa2Need;\r\n\t\t\t\tif (that.list.deductprice <= 0) {\r\n\t\t\t\t\t// 隐藏储值抵扣,因已经全额金豆抵扣\r\n\t\t\t\t\tthat.hideCreditDeduct = true;\r\n\t\t\t\t\tthat.list.deductprice = 0;\r\n\t\t\t\t}\r\n\t\t\t} else { // 储值余额<付款金额 直接一次性用完储值余额\r\n\t\t\t\tthat.recharge = getApp().globalData.util.numberFloor(that.recharge)\r\n\t\t\t\tthat.list.deduct_recharge = that.recharge;\r\n\t\t\t}\r\n\t\t\tthat.list.deduct_recharge = getApp().globalData.util.numberFloor(that.list.deduct_recharge)\r\n\t\t\tthat.list.needpay = that.list.realprice - that.list.deduct_recharge\r\n\t\t\tif (parseInt(that.list.needpay) != that.list.needpay && that.list.needpay != 0) {\r\n\t\t\t\tthat.list.needpay = parseFloat(that.list.needpay * 100).toFixed(0) / 100;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthat.list.deduct_recharge = 0\r\n\t\t\tthat.hideCreditDeduct = false\r\n\t\t\tthat.list.needpay = that.list.realprice\r\n\t\t}\r\n\t\tthat.list.needpay = parseFloat(that.list.needpay)\r\n\t\tif (that.list.money_sub > 0) {\r\n\t\t\tthat.list.needpay -= that.list.money_sub\r\n\t\t}\r\n\t\tif (that.list.deductprice > 0) {\r\n\t\t\tthat.list.needpay -= that.list.deductprice\r\n\t\t}\r\n\t\tthat.list.needpay = parseFloat(that.list.needpay).toFixed(2)\r\n\t\tif (checkMoneySub) {\r\n\t\t\t// 使用了储值抵扣的话,储值抵扣部分不赠送金豆和随机立减\r\n\t\t\tlet money4CreditAdd = that.list.realprice // 送金豆的钱 \r\n\t\t\tmoney4CreditAdd = money4CreditAdd - that.list.deduct_recharge\r\n\t\t\t// 赠送金豆个数\r\n\t\t\tlet creditaddNumber = money4CreditAdd * that.merch.credit_give / that.merch.credit_give_rate\r\n\t\t\tif (creditaddNumber >= 0.01) {\r\n\t\t\t\tthat.$set(that.list, 'credit', getApp().globalData.util.numberFloor(creditaddNumber))\r\n\t\t\t} else {\r\n\t\t\t\tthat.$set(that.list, 'credit', 0)\r\n\t\t\t}\r\n\t\t\tmoneySubFn.modifyMoneySub(that)\r\n\t\t\tmodifyRechargeDeduct(that)\r\n\t\t}\r\n\t\tthat.$forceUpdate()\r\n}\r\nmodule.exports= {\r\n\t/**\r\n\t * 处理储值抵扣方法\r\n\t * @param {*} e \r\n\t */\r\n\tmodifyRechargeDeduct: modifyRechargeDeduct,\t\r\n}","\r\nmodule.exports = {\r\n\tmodifyMoneySub: function(that) {//处理随机立减\r\n\t\t// 获得随机立减\r\n\t\tif (that.list.credit >= 0.1) {\r\n\t\t\tlet min = 0.01;\r\n\t\t\tlet max = that.list.credit * that.merch.sub_money_maxpercent;\r\n\t\t\tlet money_sub_credit = Math.random() * (max - min) + min\r\n\t\t\tmoney_sub_credit = money_sub_credit * that.merch.credit_pay_rate\r\n\t\t\tthat.list.money_sub = getApp().globalData.util.numberFloor(money_sub_credit)\r\n\t\t} else {\r\n\t\t\tthat.list.money_sub = 0;\r\n\t\t}\r\n\t\tthat.list.credit = that.list.credit - (that.list.money_sub / that.merch.credit_give_rate)\r\n\t\tthat.list.credit = getApp().globalData.util.numberFloor(that.list.credit)\r\n\t}\r\n}\r\n","const core = getApp().globalData.requirejs(\"core\")\r\nmodule.exports = {\r\n\t/**\r\n\t * 处理金豆抵扣方法\r\n\t * @param {*} e \r\n\t */\r\n\tmodifyCreditDeduct: function(that) {\r\n\t\tlet use_huodong_money=0 //平台赠送活动金额\r\n\t\tlet list = that.list\r\n\t\tlist.is_use_credit_deduct = this.use_deductprice ? 'yes' : 'no'\r\n\t\t// 剩余要付款金额\r\n\t\tlet allBa2Need = parseFloat(list.realprice - that.list.money_sub - list.deduct_recharge)\r\n\t\tallBa2Need = getApp().globalData.util.numberFloor(allBa2Need)\r\n\t\t// 储值和金豆抵扣满足一个即可\r\n\t\tif (that.use_deductprice) {\r\n\t\t\tlet credit1 = that.credit1\r\n\t\t\tif (credit1 <= 0) { //金豆为0\r\n\t\t\t\tlist.deductprice = 0;\r\n\t\t\t\tlist.needpay = list.realprice;\r\n\t\t\t} else {\r\n\t\t\t\t//计算客户金豆余额折算现金\r\n\t\t\t\tlet user_credit_to_money=getApp().globalData.util.numberFloor(credit1 * that.merch.credit_pay_rate);\r\n\t\t\t\t//计算金豆最大支付金额比例\r\n\t\t\t\tlet max_credit_money=that.merch.credit_pay_proportion*list.realprice;\r\n\t\t\t\t//客户金豆金额>最大抵扣金豆金额\r\n\t\t\t\tif(user_credit_to_money>max_credit_money){\r\n\t\t\t\t\t//金豆抵扣金额\r\n\t\t\t\t\tlist.deductprice=max_credit_money;\r\n\t\t\t\t\t//金豆抵扣个数=赠送金豆个数+个人抵扣\r\n\t\t\t\t\tlist.deductcredit=max_credit_money/that.merch.credit_pay_rate;\r\n\t\t\t\t\t//真实付款\r\n\t\t\t\t\tlist.needpay = list.realprice - list.deductprice;\r\n\t\t\t\t}\r\n\t\t\t\telse{ //金豆不足最大金豆支付比例\r\n\t\t\t\t\tlist.needpay = list.realprice - user_credit_to_money;\r\n\t\t\t\t\tlist.deductprice=user_credit_to_money;\r\n\t\t\t\t}\r\n\t\t\t\t//更新金豆最大抵扣金额\r\n\t\t\t\tthat.use_max_credit_money=list.deductprice;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthat.hideRechargeDeduct = false\r\n\t\t\tlist.deductcredit = 0\r\n\t\t\tlist.deductprice = 0\r\n\t\t\tlist.needpay = list.realprice\r\n\t\t}\r\n\r\n\t\t//赠送金豆活动\r\n\t\tif(that.credit1_hot_set>0){\r\n\t\t\tif(that.use_deductprice_hot){\r\n\t\t\t\t//使用活动金额\r\n\t\t\t\tuse_huodong_money=that.credit1_hot_rang * that.merch.credit_pay_rate\r\n\t\t\t\tlist.deductprice_zs = that.credit1_hot_rang* that.merch.credit_pay_rate\r\n\t\t\t\tlist.deductcredit_zs = that.credit1_hot_rang\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t//不使用活动金额\r\n\t\t\t\tuse_huodong_money=0\r\n\t\t\t\tlist.deductprice_zs = 0\r\n\t\t\t\tlist.deductcredit_zs = 0\r\n\t\t\t}\r\n\t\t\r\n\t\t}\r\n\t\t\r\n\t\t//真实付款-随机立减-储值卡\r\n\t\tlist.needpay = parseFloat(list.needpay) - parseFloat(that.list.money_sub) - parseFloat(that.list\r\n\t\t\t.deduct_recharge)-use_huodong_money\r\n\t\tlist.needpay = parseFloat(list.needpay).toFixed(2)\r\n\t\tlist.needpay = list.needpay > 0 ? list.needpay : 0\r\n\t\tthat.list = list\r\n\t\tthat.submit = false\r\n\t\tthat.$forceUpdate()\r\n\t},\r\n\r\n}\r\n","const {\r\n\ttype\r\n} = require(\"os\");\r\n\r\nconst core = getApp().globalData.requirejs(\"core\")\r\nmodule.exports = {\r\n\torderSubmit: function(that) {\r\n\t\tif (that.submit) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif (that.checkCreditReBindMobile(that.list)) {\r\n\r\n\t\t\tlet checkMobileRes = getApp().globalData.checkBindMobile(true, \"为了您的账号安全,需要绑定手机号后,才能使用抵扣功能\")\r\n\t\t\tif (!checkMobileRes) {\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t\tlet userInfo = uni.getStorageSync(\"userInfo\")\r\n\t\tthat.list.realprice = parseFloat(that.list.realprice)\r\n\t\t//未输入\r\n\t\tif (!that.list.realprice || that.list.realprice == 0) {\r\n\t\t\tuni.showToast({\r\n\t\t\t\ttitle: \"请输入正确的数值\",\r\n\t\t\t\ticon: \"none\",\r\n\t\t\t\tduration: 1000,\r\n\t\t\t});\r\n\t\t\treturn false\r\n\t\t}\r\n\t\t// 支付金额不能小于多少元\r\n\t\tif (parseFloat(that.list.realprice) < parseFloat(that.min_deduct_credit_price) || that.list.realprice ==\r\n\t\t\t0) {\r\n\t\t\tif (userInfo.openid != \"ovJcw5ao__ysZvNn5tnzKpFzGjoM\" && userInfo.openid !=\r\n\t\t\t\t\"2088402217442862\" && userInfo.openid != \"2088442092209671\") {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '最小支付金额为' + that.min_deduct_credit_price + '元!',\r\n\t\t\t\t\tshowCancel: false\r\n\t\t\t\t})\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t}\r\n\t\t//支付金额不能超过2000元\r\n\t\tif (parseFloat(that.list.realprice) > that.quota) {\r\n\t\t\tuni.showModal({\r\n\t\t\t\ttitle: '提示',\r\n\t\t\t\tcontent: '最大支付金额为' + that.quota + '元!',\r\n\t\t\t\tshowCancel: false\r\n\t\t\t})\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// 获取储值卡和金豆余额\r\n\t\tthat.getUserCredit()\r\n\t\tlet isalipay = 'no'\r\n\r\n\r\n\r\n\t\tlet h5Pla = getApp().globalData.util.getH5Platform()\r\n\t\tif (h5Pla == \"H5-ALIPAY\") {\r\n\t\t\tisalipay = 'yes'\r\n\t\t}\r\n\t\t// //金豆赠送功能\r\n\t\t// if(that.list.deductcredit_zs>0){\r\n\t\t// \tif(that.list.deductcredit>0){\r\n\t\t// \t\tthat.list.deductcredit=that.list.deductcredit+that.list.deductcredit_zs;\r\n\t\t// \t\tthat.list.deductprice=that.list.deductprice+that.list.deductprice_zs;\r\n\t\t// \t}\r\n\t\t// \telse{\r\n\t\t// \t\tthat.list.deductcredit=that.list.deductcredit_zs;\r\n\t\t// \t\tthat.list.deductprice=that.list.deductprice_zs;\r\n\t\t// \t}\r\n\t\t// }\r\n\t\tlet submitData = {\r\n\t\t\t// // 订单金额\r\n\t\t\t// realprice: that.list.realprice,\r\n\t\t\t// remark: that.list.remark ? that.list.remark : '',\r\n\t\t\t// // 需要支付金额\r\n\t\t\t// needpay: that.list.needpay,\r\n\r\n\t\t\t// // 抵扣金豆数量\r\n\t\t\t// deductcredit: that.list.deductcredit,\r\n\t\t\t// // 抵扣金额\r\n\t\t\t// deductprice: that.list.deductprice,\r\n\t\t\t// // 抵扣赠送金豆数量\r\n\t\t\t// deductcredit_zs: that.list.deductcredit_zs,\r\n\t\t\t// // 抵扣赠送金豆金额\r\n\t\t\t// deductprice_zs: that.list.deductprice_zs,\r\n\t\t\t// // 支付环境\r\n\t\t\t// isalipay: isalipay,\r\n\t\t\t// // 是否使用金豆\r\n\t\t\t// is_use_credit_deduct: that.list.is_use_credit_deduct,\r\n\t\t\t// // 是否使用储值卡\r\n\t\t\t// is_use_recharge_deduct: that.list.is_use_recharge_deduct,\r\n\t\t\t// deduct_recharge: that.list.deduct_recharge,\r\n\t\t\t// // 随机立减\r\n\t\t\t// money_sub: that.list.money_sub,\r\n\t\t\t// merchid: that.merchid,\r\n\t\t\t// submit: true,\r\n\t\t\t// cashierid: 0,\r\n\t\t\t// remarkplatform:that.activity_platform?that.activity_platform:'',\r\n\t\t\t// s: 'App.Order_Offline.submit',\r\n\t\t\tshopId: shopId, //商户ID\r\n\t\t\tprice: that.list.realprice, //商品原价\r\n\t\t\tamount: that.list.remark ? that.list.remark : '', //支付价格\r\n\t\t\tbean: that.list.needpay, //抵扣金豆\r\n\t\t\topenId: openId, //微信OpenId\r\n\t\t\tmobile: mobile //支付用户手机号\r\n\t\t}\r\n\t\tif (that.option && typeof that.option.cashierid != \"undefined\" && that.option.cashierid != \"\" && that\r\n\t\t\t.option.total > 0) {\r\n\t\t\tsubmitData.cashierid = that.option.cashierid\r\n\t\t}\r\n\t\tthat.submit = true\r\n\t\tuni.showLoading({\r\n\t\t\ttitle: '支付中...',\r\n\t\t\tmask: true\r\n\t\t})\r\n\t\tgetApp().globalData.request(submitData).then(orderSubRes => {\r\n\t\t\tuni.hideLoading()\r\n\t\t\tlet subRes = orderSubRes.data.data\r\n\t\t\tif (\"SUCCESS\" == subRes.result_code) {\r\n\t\t\t\t// 判断是否全部金豆抵扣\r\n\t\t\t\tlet isAllUserCreditPay = false\r\n\t\t\t\tif (subRes.data.price == subRes.data.deductprice) {\r\n\t\t\t\t\tisAllUserCreditPay = true\r\n\t\t\t\t}\r\n\t\t\t\t// 是否包含有效充值区间\r\n\t\t\t\tlet rechargeMinIndex = -1\r\n\t\t\t\t/** 删掉赠送金额为空或0 的区间 */\r\n\t\t\t\tif (typeof(that.merch.rechargeArr) != 'undefined' && that.merch\r\n\t\t\t\t\t.rechargeArr.length) {\r\n\t\t\t\t\tfor (let i = 0; i < that.merch.rechargeArr.length; i++) {\r\n\t\t\t\t\t\tif (that.merch.rechargeArr[i].give_money <= 0) {\r\n\t\t\t\t\t\t\tcontinue\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tlet judge = (parseFloat(that.merch.rechargeArr[i].recharge_money) >\r\n\t\t\t\t\t\t\tparseFloat(that.list.realprice))\r\n\t\t\t\t\t\tif (judge) {\r\n\t\t\t\t\t\t\trechargeMinIndex = i\r\n\t\t\t\t\t\t\tbreak\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\t// 如果商家开启了储值系统\r\n\t\t\t\tif (that.merch['open_recharge'] && !isAllUserCreditPay &&\r\n\t\t\t\t\t!that.use_deduct_recharge && rechargeMinIndex > -1) {\r\n\t\t\t\t\t// 去储值页面\r\n\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\turl: \"/pages/order_sub/recharge_card/index?nothing=1\",\r\n\t\t\t\t\t\tsuccess: function(res) {\r\n\t\t\t\t\t\t\t// 通过eventChannel向被打开页面传送数据\r\n\t\t\t\t\t\t\tres.eventChannel.emit('acceptDataFromOfflinePay', {\r\n\t\t\t\t\t\t\t\torder: subRes.data\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\turl: \"/pages/order_sub/pay/index?nothing=1\",\r\n\t\t\t\t\t\tsuccess: function(res) {\r\n\t\t\t\t\t\t\t// 通过eventChannel向被打开页面传送数据\r\n\t\t\t\t\t\t\tres.eventChannel.emit('acceptDataFromOfflinePay', {\r\n\t\t\t\t\t\t\t\torder: subRes.data\r\n\t\t\t\t\t\t\t})\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} else {\r\n\t\t\t\tcore.alert(subRes.err_code_des)\r\n\t\t\t\tthat.submit = false\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}","exports.endianness = function () { return 'LE' };\n\nexports.hostname = function () {\n if (typeof location !== 'undefined') {\n return location.hostname\n }\n else return '';\n};\n\nexports.loadavg = function () { return [] };\n\nexports.uptime = function () { return 0 };\n\nexports.freemem = function () {\n return Number.MAX_VALUE;\n};\n\nexports.totalmem = function () {\n return Number.MAX_VALUE;\n};\n\nexports.cpus = function () { return [] };\n\nexports.type = function () { return 'Browser' };\n\nexports.release = function () {\n if (typeof navigator !== 'undefined') {\n return navigator.appVersion;\n }\n return '';\n};\n\nexports.networkInterfaces\n= exports.getNetworkInterfaces\n= function () { return {} };\n\nexports.arch = function () { return 'javascript' };\n\nexports.platform = function () { return 'browser' };\n\nexports.tmpdir = exports.tmpDir = function () {\n return '/tmp';\n};\n\nexports.EOL = '\\n';\n\nexports.homedir = function () {\n\treturn '/'\n};\n","import moneySubFn from './moneySubFn'\r\nimport rechargeDeductFn from './rechargeDeductFn'\r\nimport creditDeductFn from './creditDeductFn'\r\nmodule.exports = {\r\n\tchangeEv: function(e, that) {\r\n\t\tif(e>that.quota){\r\n\t\t\tuni.showToast({\r\n\t\t\t\ttitle:'最大支付金额为'+that.quota+'元!',\r\n\t\t\t\ticon:'none'\r\n\t\t\t})\r\n\t\t}\r\n\t\tif(e>999999){\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\tif (typeof e === 'number' && !isNaN(e)) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\tif (typeof(e) == 'undefined' || e == undefined || e == 'undefined' || e < 0) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\t// 如果是收银台付款,金额不能修改\r\n\t\tif (that.option.cashierid && that.option.total > 0) {\r\n\t\t\tthat.$set(that.list, 'realprice', that.option.total)\r\n\t\t} else {\r\n\t\t\tthat.$set(that.list, 'realprice', e)\r\n\t\t}\r\n\t\t// 更改金额后,取消储值卡/金豆抵扣的勾选\r\n\t\tthat.use_deduct_recharge = false\r\n\t\tthat.use_deductprice = false\r\n\t\tthat.use_deductprice_hot = false\r\n\r\n\t\tthat.use_max_credit_money=parseFloat(e*that.merch.credit_pay_proportion).toFixed(2);\r\n\t\t\r\n\t\t//计算\r\n\t\tif (that.credit1 > 0) {\r\n\t\t\t//计算客户金豆余额折算现金\r\n\t\t\tlet user_credit_to_money=getApp().globalData.util.numberFloor(that.credit1 * that.merch.credit_pay_rate);\r\n\t\t\t//计算金豆最大支付金额比例\r\n\t\t\tlet max_credit_money=that.merch.credit_pay_proportion*e;\r\n\t\t\t//客户金豆金额>最大抵扣金豆金额\r\n\t\t\tif(user_credit_to_money>max_credit_money){\r\n\t\t\t\t//金豆抵扣金额\r\n\t\t\t\tthat.use_max_credit_money=max_credit_money;\r\n\t\t\t}\r\n\t\t\telse{ //金豆不足最大金豆支付比例\r\n\t\t\t\tthat.use_max_credit_money=user_credit_to_money;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t}\r\n\t\t\r\n\t\t// 送金豆的钱\r\n\t\tlet money4CreditAdd = that.list.realprice\r\n\t\tif (that.deduct_recharge >= 0.01) {\r\n\t\t\tmoney4CreditAdd = money4CreditAdd - that.deduct_recharge\r\n\t\t}\r\n\t\t// 赠送金豆个数\r\n\t\tlet creditaddNumber = money4CreditAdd * that.merch.credit_give / that.merch.credit_give_rate\r\n\t\tif (creditaddNumber >= 0.01) {\r\n\t\t\tthat.$set(that.list, 'credit', getApp().globalData.util.numberFloor(creditaddNumber))\r\n\t\t}\r\n\t\telse{\r\n\t\t\tthat.$set(that.list, 'credit', 0.00)\r\n\t\t}\r\n\t\tthat.hideCreditDeduct = false\r\n\t\tthat.hideRechargeDeduct = false\r\n\t\tif (parseFloat(that.list.realprice) > 0 && e<that.quota) {\r\n\t\t\tmoneySubFn.modifyMoneySub(that)\r\n\t\t\tcreditDeductFn.modifyCreditDeduct(that)\r\n\t\t\trechargeDeductFn.modifyRechargeDeduct(that)\r\n\t\t}\r\n\t\t\r\n\t\tthat.$forceUpdate()\r\n\t},\r\n}\r\n","\r\nconst core = getApp().globalData.requirejs(\"core\")\r\nmodule.exports={\t\r\n\t// 处理页面传参,获取商户ID\r\n\tgetMerchID: function(that,queryData) {\r\n\t\t// 固定通用收款码\r\n\t\tif (queryData && typeof(queryData.device_sn) != 'undefined' && queryData.device_sn) {\r\n\t\t\tgetApp().globalData.request({\r\n\t\t\t\ts: 'Merch_Index.SoundDevice4MerchOffline',\r\n\t\t\t\tdevice_sn: queryData.device_sn\r\n\t\t\t}).then(function(merchData) {\r\n\t\t\t\tlet merchRes = merchData.data.data\r\n\t\t\t\tif (merchRes.result_code == \"SUCCESS\") {\r\n\t\t\t\t\t// 如果是已经开通商户的二维码,直接进入付款\r\n\t\t\t\t\tthat.hasMerchData2Next(merchData)\r\n\t\t\t\t\t// 商家金豆分润处理\r\n\t\t\t\t\tqueryData.mid = merchRes.mid\r\n\t\t\t\t\tgetApp().globalData.setCache(\"usermid\", queryData, 7200)\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// 如果是没开通商户的二维码直接进入到商户入驻\r\n\t\t\t\t\tif (typeof(merchRes.imei) != undefined && merchRes.imei) {\r\n\t\t\t\t\t\tuni.reLaunch({\r\n\t\t\t\t\t\t\turl: '/pages/merch/apply/apply?imei=' + merchRes.imei\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tuni.showModal({\r\n\t\t\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\t\t\tcontent: merchRes.err_code_desc\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} else {\r\n\t\t\t// 老式二维码\r\n\t\t\tif (!queryData || !queryData.merchid) {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '网络开小差啦,重新扫码试试吧!1623124885'\r\n\t\t\t\t})\r\n\t\t\t\treturn\r\n\t\t\t} else {\r\n\t\t\t\tthat.merchid = queryData.merchid\r\n\t\t\t\tthat.getList(queryData.merchid)\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (queryData && typeof(queryData.mid) != 'undefined' && queryData.mid) {\r\n\t\t\tgetApp().globalData.setCache(\"usermid\", queryData, 7200)\r\n\t\t}\r\n\t},\r\n}","const core = getApp().globalData.requirejs(\"core\")\r\nimport getMerchFn from './getMerchFn'\r\nmodule.exports = {\r\n\tinit: function(that) {\r\n\t\tgetApp().globalData.util.loginByCode().then(loginByCode => {\r\n\t\t\tif (!that.merch) {\r\n\t\t\t\tuni.showLoading({\r\n\t\t\t\t\ttitle: '拼命加载中...'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tthat.credit1 = loginByCode.credit1\r\n\t\t\tlet optionsScen = that.option;\r\n\r\n\t\t\tlet scene = ';'\r\n\t\t\tif (typeof optionsScen != 'undefined' && typeof optionsScen.q != 'undefined' && optionsScen\r\n\t\t\t\t.q) {\r\n\t\t\t\tlet url = decodeURIComponent(optionsScen.q);\r\n\t\t\t\tscene = getApp().globalData.util.getQueryVariable('scene', url);\r\n\t\t\t\tscene = core.str2Obj(decodeURIComponent(scene));\r\n\t\t\t} else if (optionsScen && typeof(optionsScen.scene) != \"undefined\" && optionsScen.scene) {\r\n\t\t\t\tscene = core.str2Obj(decodeURIComponent(optionsScen.scene));\r\n\t\t\t} else {\r\n\t\t\t\tuni.showModal({\r\n\t\t\t\t\ttitle: '提示',\r\n\t\t\t\t\tcontent: '不小心崩溃了,重新扫码试试吧',\r\n\t\t\t\t\tsuccess: function() {\r\n\t\t\t\t\t\tuni.navigateBack({\r\n\t\t\t\t\t\t\tdelta: 2\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\tthat.option = scene\r\n\t\t\tgetMerchFn.getMerchID(that, scene)\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\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\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})\r\n\t}\r\n}\r\n","let money = '';\r\nexport default {\r\n\tname: \"keyBoard\",\r\n\tprops: {\r\n\t\ttitle: {\r\n\t\t\tdefault: \"确认\",\r\n\t\t\ttype: String,\r\n\t\t},\r\n\t\thideInputNumber: {\r\n\t\t\tdefault: false,\r\n\t\t\ttype: Boolean,\r\n\t\t},\r\n\t\tbtnColor: {\r\n\t\t\tdefault: \"green\",\r\n\t\t},\r\n\t},\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmoney: \"\",\r\n\t\t\tCdel: \"\",\r\n\t\t\tTime: \"\",\r\n\t\t};\r\n\t},\r\n\r\n\twatch: {\r\n\t\tmoney(val) {\r\n\t\t\tthis.$emit(\"update:money\", val)\r\n\t\t},\r\n\t},\r\n\r\n\tmethods: {\r\n\t\ttouchstart() {\r\n\t\t\tthis.Time = setInterval(() => {\r\n\t\t\t\tif (money == \"\") {\r\n\t\t\t\t\tclearInterval();\r\n\t\t\t\t}\r\n\t\t\t\tmoney = money.substring(0, money.length - 1);\r\n\t\t\t}, 200);\r\n\t\t},\r\n\t\ttouchend() {\r\n\t\t\tclearInterval(this.Time);\r\n\t\t},\r\n\t\t//处理按键\r\n\t\t_handleKeyPress(e) {\r\n\t\t\tlet num = 0\r\n\r\n\r\n\r\n\r\n\r\n\t\t\tnum = e.target.dataset.num;\r\n\r\n\t\t\t//不同按键处理逻辑\r\n\t\t\t// -1 代表无效按键,直接返回\r\n\t\t\tif (num == -1) return false;\r\n\t\t\tswitch (String(num)) {\r\n\t\t\t\t//小数点\r\n\t\t\t\tcase \".\":\r\n\t\t\t\t\tthis._handleDecimalPoint();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t//删除键\r\n\t\t\t\tcase \"D\":\r\n\t\t\t\t\tthis._handleDeleteKey();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t//清空键\r\n\t\t\t\tcase \"C\":\r\n\t\t\t\t\tthis._handleClearKey();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t//确认键\r\n\t\t\t\tcase \"S\":\r\n\t\t\t\t\tthis._handleConfirmKey(num);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tthis._handleNumberKey(num);\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tif (String(num) != \"S\") {\r\n\t\t\t\tthis.$emit(\"oninputBind\", money); //提交参数\r\n\t\t\t}\r\n\t\t},\r\n\t\t//处理小数点函数\r\n\t\t_handleDecimalPoint() {\r\n\t\t\t//如果包含小数点,直接返回\r\n\t\t\tif (money.indexOf(\".\") > -1) return false;\r\n\t\t\t//如果小数点是第一位,补0\r\n\t\t\tif (!money.length) money = \"0.\";\r\n\t\t\t//如果不是,添加一个小数点\r\n\t\t\telse money = money + \".\";\r\n\t\t},\r\n\t\t//处理删除键\r\n\t\t_handleDeleteKey() {\r\n\t\t\tlet S = money;\r\n\t\t\t//如果没有输入,直接返回\r\n\t\t\tif (!S.length) return false;\r\n\t\t\t//否则删除最后一个\r\n\t\t\tmoney = S.substring(0, S.length - 1);\r\n\t\t},\r\n\r\n\t\t//处理清空键\r\n\t\t_handleClearKey() {\r\n\t\t\tmoney = \"\";\r\n\t\t},\r\n\r\n\t\t//处理数字\r\n\t\t_handleNumberKey(num) {\r\n\t\t\tif (money && money.length == 6) {\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: '最多6位数字',\r\n\t\t\t\t\ticon: 'none'\r\n\t\t\t\t});\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (num == undefined || num == 'undefined' || num < 0) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tlet S = money;\r\n\t\t\t//如果有小数点且小数点位数不小于2\r\n\t\t\tif (S.indexOf(\".\") > -1 && S.substring(S.indexOf(\".\") + 1).length < 2)\r\n\t\t\t\tmoney = S + num;\r\n\t\t\t//没有小数点\r\n\t\t\tif (!(S.indexOf(\".\") > -1)) {\r\n\t\t\t\t//如果第一位是0,只能输入小数点\r\n\t\t\t\tif (num == 0 && S.length == 0) money = \"0.\";\r\n\t\t\t\telse {\r\n\t\t\t\t\tif (S.length && Number(S.charAt(0)) === 0) return;\r\n\t\t\t\t\tmoney = S + num;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t//提交正确的金额\r\n\t\t_handleConfirmKey(S) {\r\n\t\t\t//未输入\r\n\t\t\tif (!S.length || S == 0) {\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: \"请输入正确的数值\",\r\n\t\t\t\t\ticon: \"none\",\r\n\t\t\t\t\tduration: 1000,\r\n\t\t\t\t});\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\t//将 8. 这种转换成 8.00\r\n\t\t\tif (S.indexOf(\".\") > -1 && S.indexOf(\".\") == S.length - 1)\r\n\t\t\t\tS = Number(S.substring(0, S.length - 1)).toFixed(2);\r\n\t\t\t//保留两位\r\n\t\t\tS = Number(S).toFixed(2);\r\n\t\t\t//提交参数\r\n\t\t\tthis.$emit(\"confirmEvent\", S);\r\n\t\t},\r\n\t},\r\n}\r\n"],"sourceRoot":""} |