Commit a2408fc3f7c6a304e2d8d3e1764203fd73472b84

Authored by BigBoss
1 parent 55e8938704
Exists in master

init

Showing 50 changed files with 10182 additions and 0 deletions   Show diff stats
... ... @@ -0,0 +1,17 @@
  1 +<script>
  2 + export default {
  3 + onLaunch: function() {
  4 + console.log('App Launch')
  5 + },
  6 + onShow: function() {
  7 + console.log('App Show')
  8 + },
  9 + onHide: function() {
  10 + console.log('App Hide')
  11 + }
  12 + }
  13 +</script>
  14 +
  15 +<style>
  16 + /*每个页面公共css */
  17 +</style>
... ...
... ... @@ -0,0 +1,11 @@
  1 +import Vue from 'vue'
  2 +import App from './App'
  3 +
  4 +Vue.config.productionTip = false
  5 +
  6 +App.mpType = 'app'
  7 +
  8 +const app = new Vue({
  9 + ...App
  10 +})
  11 +app.$mount()
... ...
... ... @@ -0,0 +1,75 @@
  1 +{
  2 + "name" : "gulu-vue",
  3 + "appid" : "",
  4 + "description" : "",
  5 + "versionName" : "1.0.0",
  6 + "versionCode" : "100",
  7 + "transformPx" : false,
  8 + /* 5+App特有相关 */
  9 + "app-plus" : {
  10 + "usingComponents" : true,
  11 + "nvueCompiler" : "uni-app",
  12 + "compilerVersion" : 3,
  13 + "splashscreen" : {
  14 + "alwaysShowBeforeRender" : true,
  15 + "waiting" : true,
  16 + "autoclose" : true,
  17 + "delay" : 0
  18 + },
  19 + /* 模块配置 */
  20 + "modules" : {},
  21 + /* 应用发布信息 */
  22 + "distribute" : {
  23 + /* android打包配置 */
  24 + "android" : {
  25 + "permissions" : [
  26 + "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
  27 + "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
  28 + "<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>",
  29 + "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
  30 + "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
  31 + "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
  32 + "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
  33 + "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>",
  34 + "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
  35 + "<uses-permission android:name=\"android.permission.CAMERA\"/>",
  36 + "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
  37 + "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
  38 + "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
  39 + "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
  40 + "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
  41 + "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
  42 + "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
  43 + "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
  44 + "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
  45 + "<uses-feature android:name=\"android.hardware.camera\"/>",
  46 + "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
  47 + "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
  48 + ]
  49 + },
  50 + /* ios打包配置 */
  51 + "ios" : {},
  52 + /* SDK配置 */
  53 + "sdkConfigs" : {}
  54 + }
  55 + },
  56 + /* 快应用特有相关 */
  57 + "quickapp" : {},
  58 + /* 小程序特有相关 */
  59 + "mp-weixin" : {
  60 + "appid" : "",
  61 + "setting" : {
  62 + "urlCheck" : false
  63 + },
  64 + "usingComponents" : true
  65 + },
  66 + "mp-alipay" : {
  67 + "usingComponents" : true
  68 + },
  69 + "mp-baidu" : {
  70 + "usingComponents" : true
  71 + },
  72 + "mp-toutiao" : {
  73 + "usingComponents" : true
  74 + }
  75 +}
... ...
... ... @@ -0,0 +1,53 @@
  1 +{
  2 + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
  3 + {
  4 + "path": "pages/index/index",
  5 + "style": {
  6 + "navigationBarTitleText": "商城一览"
  7 + }
  8 + },
  9 + {
  10 + "path": "pages/cart/cart",
  11 + "style": {
  12 + "navigationBarTitleText": "购物车"
  13 + }
  14 + },
  15 + {
  16 + "path": "pages/user/user",
  17 + "style": {
  18 + "navigationBarTitleText": "我的"
  19 + }
  20 + }
  21 + ],
  22 + "globalStyle": {
  23 + "navigationBarTextStyle": "black",
  24 + "navigationBarTitleText": "uni-app",
  25 + "navigationBarBackgroundColor": "#F8F8F8",
  26 + "backgroundColor": "#F8F8F8"
  27 + },
  28 + "tabBar": {
  29 + "color": "#C0C4CC",
  30 + "selectedColor": "#fa436a",
  31 + "borderStyle": "black",
  32 + "backgroundColor": "#ffffff",
  33 + "list": [{
  34 + "pagePath": "pages/index/index",
  35 + "iconPath": "static/tab-home.png",
  36 + "selectedIconPath": "static/tab-home-current.png",
  37 + "text": "首页"
  38 + },
  39 + {
  40 + "pagePath": "pages/cart/cart",
  41 + "iconPath": "static/tab-cart.png",
  42 + "selectedIconPath": "static/tab-cart-current.png",
  43 + "text": "购物车"
  44 + },
  45 + {
  46 + "pagePath": "pages/user/user",
  47 + "iconPath": "static/tab-my.png",
  48 + "selectedIconPath": "static/tab-my-current.png",
  49 + "text": "我的"
  50 + }
  51 + ]
  52 + }
  53 +}
... ...
pages/cart/cart.vue
... ... @@ -0,0 +1,52 @@
  1 +<template>
  2 + <view class="content">
  3 + <image class="logo" src="/static/logo.png"></image>
  4 + <view class="text-area">
  5 + <text class="title">{{title}}</text>
  6 + </view>
  7 + </view>
  8 +</template>
  9 +
  10 +<script>
  11 + export default {
  12 + data() {
  13 + return {
  14 + title: 'Hello'
  15 + }
  16 + },
  17 + onLoad() {
  18 +
  19 + },
  20 + methods: {
  21 +
  22 + }
  23 + }
  24 +</script>
  25 +
  26 +<style>
  27 + .content {
  28 + display: flex;
  29 + flex-direction: column;
  30 + align-items: center;
  31 + justify-content: center;
  32 + }
  33 +
  34 + .logo {
  35 + height: 200rpx;
  36 + width: 200rpx;
  37 + margin-top: 200rpx;
  38 + margin-left: auto;
  39 + margin-right: auto;
  40 + margin-bottom: 50rpx;
  41 + }
  42 +
  43 + .text-area {
  44 + display: flex;
  45 + justify-content: center;
  46 + }
  47 +
  48 + .title {
  49 + font-size: 36rpx;
  50 + color: #8f8f94;
  51 + }
  52 +</style>
... ...
pages/index/index.vue
... ... @@ -0,0 +1,56 @@
  1 +<template>
  2 + <view class="content">
  3 + <view class="searchBar">
  4 + <icon class="searchIcon" type="search" size="21"></icon>
  5 + <input class="searchIpt" placeholder="请输入搜索内容" confirm-type="search"/>
  6 + </view>
  7 + <view class="screenBar"></view>
  8 + <view class=""></view>
  9 + </view>
  10 +</template>
  11 +
  12 +<script>
  13 + export default {
  14 + data() {
  15 + return {
  16 + title: 'Hello'
  17 + }
  18 + },
  19 + onLoad() {
  20 +
  21 + },
  22 + methods: {
  23 +
  24 + }
  25 + }
  26 +</script>
  27 +
  28 +<style>
  29 + .content {
  30 + display: flex;
  31 + flex-direction: column;
  32 + align-items: center;
  33 + justify-content: center;
  34 + }
  35 +
  36 + .searchBar {
  37 + width: calc(100% - 16rpx * 2);
  38 + display: flex;
  39 + justify-content: center;
  40 + align-items: center;
  41 + box-sizing: border-box;
  42 + margin: 16rpx 16rpx;
  43 + padding: 0rpx 16rpx;
  44 + background-color: #F8F8F8;
  45 + }
  46 +
  47 + .searchIpt {
  48 + height: 64rpx;
  49 + width: 100%;
  50 + padding: 16rpx;
  51 + font-size: 28rpx;
  52 + box-sizing: border-box;
  53 + }
  54 +
  55 +
  56 +</style>
... ...
pages/user/user.vue
... ... @@ -0,0 +1,52 @@
  1 +<template>
  2 + <view class="content">
  3 + <image class="logo" src="/static/logo.png"></image>
  4 + <view class="text-area">
  5 + <text class="title">{{title}}</text>
  6 + </view>
  7 + </view>
  8 +</template>
  9 +
  10 +<script>
  11 + export default {
  12 + data() {
  13 + return {
  14 + title: 'Hello'
  15 + }
  16 + },
  17 + onLoad() {
  18 +
  19 + },
  20 + methods: {
  21 +
  22 + }
  23 + }
  24 +</script>
  25 +
  26 +<style>
  27 + .content {
  28 + display: flex;
  29 + flex-direction: column;
  30 + align-items: center;
  31 + justify-content: center;
  32 + }
  33 +
  34 + .logo {
  35 + height: 200rpx;
  36 + width: 200rpx;
  37 + margin-top: 200rpx;
  38 + margin-left: auto;
  39 + margin-right: auto;
  40 + margin-bottom: 50rpx;
  41 + }
  42 +
  43 + .text-area {
  44 + display: flex;
  45 + justify-content: center;
  46 + }
  47 +
  48 + .title {
  49 + font-size: 36rpx;
  50 + color: #8f8f94;
  51 + }
  52 +</style>
... ...

3.93 KB

static/tab-cart-current.png

2.89 KB

static/tab-cart.png

2.85 KB

static/tab-home-current.png

3.97 KB

static/tab-home.png

3.87 KB

static/tab-my-current.png

1.31 KB

static/tab-my.png

2.89 KB

... ... @@ -0,0 +1,76 @@
  1 +/**
  2 + * 这里是uni-app内置的常用样式变量
  3 + *
  4 + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
  5 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
  6 + *
  7 + */
  8 +
  9 +/**
  10 + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
  11 + *
  12 + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
  13 + */
  14 +
  15 +/* 颜色变量 */
  16 +
  17 +/* 行为相关颜色 */
  18 +$uni-color-primary: #007aff;
  19 +$uni-color-success: #4cd964;
  20 +$uni-color-warning: #f0ad4e;
  21 +$uni-color-error: #dd524d;
  22 +
  23 +/* 文字基本颜色 */
  24 +$uni-text-color:#333;//基本色
  25 +$uni-text-color-inverse:#fff;//反色
  26 +$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息
  27 +$uni-text-color-placeholder: #808080;
  28 +$uni-text-color-disable:#c0c0c0;
  29 +
  30 +/* 背景颜色 */
  31 +$uni-bg-color:#ffffff;
  32 +$uni-bg-color-grey:#f8f8f8;
  33 +$uni-bg-color-hover:#f1f1f1;//点击状态颜色
  34 +$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色
  35 +
  36 +/* 边框颜色 */
  37 +$uni-border-color:#c8c7cc;
  38 +
  39 +/* 尺寸变量 */
  40 +
  41 +/* 文字尺寸 */
  42 +$uni-font-size-sm:24rpx;
  43 +$uni-font-size-base:28rpx;
  44 +$uni-font-size-lg:32rpx;
  45 +
  46 +/* 图片尺寸 */
  47 +$uni-img-size-sm:40rpx;
  48 +$uni-img-size-base:52rpx;
  49 +$uni-img-size-lg:80rpx;
  50 +
  51 +/* Border Radius */
  52 +$uni-border-radius-sm: 4rpx;
  53 +$uni-border-radius-base: 6rpx;
  54 +$uni-border-radius-lg: 12rpx;
  55 +$uni-border-radius-circle: 50%;
  56 +
  57 +/* 水平间距 */
  58 +$uni-spacing-row-sm: 10px;
  59 +$uni-spacing-row-base: 20rpx;
  60 +$uni-spacing-row-lg: 30rpx;
  61 +
  62 +/* 垂直间距 */
  63 +$uni-spacing-col-sm: 8rpx;
  64 +$uni-spacing-col-base: 16rpx;
  65 +$uni-spacing-col-lg: 24rpx;
  66 +
  67 +/* 透明度 */
  68 +$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
  69 +
  70 +/* 文章场景相关 */
  71 +$uni-color-title: #2C405A; // 文章标题颜色
  72 +$uni-font-size-title:40rpx;
  73 +$uni-color-subtitle: #555555; // 二级标题颜色
  74 +$uni-font-size-subtitle:36rpx;
  75 +$uni-color-paragraph: #3F536E; // 文章段落颜色
  76 +$uni-font-size-paragraph:30rpx;
0 77 \ No newline at end of file
... ...
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
... ... @@ -0,0 +1 @@
  1 +{"version":3,"sources":["webpack:///C:/Users/Administrator/Desktop/gulu-vue/main.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?888e","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?3262","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?9752","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?593a"],"names":["Vue","config","productionTip","App","mpType","app","$mount","onLaunch","console","log","onShow","onHide"],"mappings":";;;;;;;;;iDAAA,wCAAmB,iDAA4B;AAC/C,uE;;AAEAA,aAAIC,MAAJ,CAAWC,aAAX,GAA2B,KAA3B;;AAEAC,aAAIC,MAAJ,GAAa,KAAb;;AAEA,IAAMC,GAAG,GAAG,IAAIL,YAAJ;AACLG,YADK,EAAZ;;AAGA,UAAAE,GAAG,EAACC,MAAJ,G;;;;;;;;;;;;;;;;;;;;ACVA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACuD;AACL;AACa;;;AAG/D;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,yEAAM;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACe,gF;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAA6lB,CAAgB,unBAAG,EAAC,C;;;;;;;;;;;;ACClmB;AACdC,UAAQ,EAAE,oBAAW;AACpBC,WAAO,CAACC,GAAR,CAAY,YAAZ;AACA,GAHa;AAIdC,QAAM,EAAE,kBAAW;AAClBF,WAAO,CAACC,GAAR,CAAY,UAAZ;AACA,GANa;AAOdE,QAAM,EAAE,kBAAW;AAClBH,WAAO,CAACC,GAAR,CAAY,UAAZ;AACA,GATa,E;;;;;;;;;;;ACDf;AAAA;AAAA;AAAA;AAA+2B,CAAgB,g3BAAG,EAAC,C;;;;;;;;;;ACAn4B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"common/main.js","sourcesContent":["import 'uni-pages';import '@dcloudio/uni-stat';import Vue from 'vue'\r\nimport App from './App'\r\n\r\nVue.config.productionTip = false\r\n\r\nApp.mpType = 'app'\r\n\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()","var render, staticRenderFns, recyclableRender, components\nvar renderjs\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\runtime\\\\componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"C:/Users/Administrator/Desktop/gulu-vue/App.vue\"\nexport default component.exports","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=script&lang=js&\"","\nexport default {\n\tonLaunch: function() {\n\t\tconsole.log('App Launch')\n\t},\n\tonShow: function() {\n\t\tconsole.log('App Show')\n\t},\n\tonHide: function() {\n\t\tconsole.log('App Hide')\n\t}\n}\n","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1587797864420\n var cssReload = require(\"D:/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""}
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
... ... @@ -0,0 +1 @@
  1 +{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";QAAA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,QAAQ,oBAAoB;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA,iBAAiB,4BAA4B;QAC7C;QACA;QACA,kBAAkB,2BAA2B;QAC7C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA;QACA;QACA;QACA,gBAAgB,uBAAuB;QACvC;;;QAGA;QACA","file":"common/runtime.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"common/runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = global[\"webpackJsonp\"] = global[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
... ... @@ -0,0 +1 @@
  1 +{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/@dcloudio/uni-stat/dist/index.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages.json","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js"],"names":["_toString","Object","prototype","toString","hasOwnProperty","isFn","fn","isStr","str","isPlainObject","obj","call","hasOwn","key","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","replace","_","c","toUpperCase","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","res","concat","Array","isArray","dedupeHooks","hooks","i","length","indexOf","push","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","keys","forEach","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","data","isPromise","then","queue","promise","Promise","resolve","callback","wrapperOptions","options","name","oldCallback","callbackInterceptor","wrapperReturnValue","returnValue","returnValueHooks","getApiInterceptorHooks","slice","scopedInterceptor","invokeApi","api","params","invoke","promiseInterceptor","catch","SYNC_API_RE","CONTEXT_API_RE","CONTEXT_API_RE_EXC","ASYNC_API","CALLBACK_API_RE","isContextApi","test","isSyncApi","isCallbackApi","handlePromise","err","shouldPromise","finally","constructor","value","reason","promisify","promiseApi","success","fail","complete","reject","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","wx","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","Number","result","Math","floor","interceptors","baseApi","freeze","__proto__","previewImage","args","fromArgs","currentIndex","parseInt","current","isNaN","urls","len","filter","item","indicator","loop","addSafeAreaInsets","safeArea","safeAreaInsets","top","left","right","bottom","windowHeight","protocols","getSystemInfo","todos","canIUses","CALLBACKS","processCallback","methodName","processReturnValue","processArgs","argsOption","keepFromArgs","toArgs","keyOption","console","warn","keepReturnValue","wrapper","protocol","error","arg1","arg2","apply","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","getUniEmitter","Emitter","Vue","ctx","$on","arguments","$off","$once","$emit","eventApi","MPPage","Page","MPComponent","Component","customizeRE","customize","initTriggerEvent","mpInstance","canIUse","oldTriggerEvent","triggerEvent","event","initHook","oldHook","PAGE_EVENT_HOOKS","initMocks","vm","mocks","$mp","mpType","mock","hasHook","vueOptions","default","extendOptions","super","mixins","find","mixin","initHooks","mpOptions","$vm","__call_hook","initVueComponent","VueComponent","extend","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","split","_$vueId","_$vuePid","initData","context","methods","e","process","VUE_APP_DEBUG","JSON","parse","stringify","__lifecycle_hooks__","PROP_TYPES","String","Boolean","createObserver","observer","newVal","oldVal","initBehaviors","initBehavior","vueBehaviors","behaviors","vueExtends","extends","vueMixins","vueProps","props","behavior","type","Date","properties","initProperties","vueMixin","parsePropType","defaultValue","file","isBehavior","vueId","setData","opts","wrapper$1","mp","stopPropagation","preventDefault","target","detail","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","__get_value","isInteger","vForItem","vForKey","processEventExtra","extra","extraObj","getObjByArray","arr","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","dataset","comType","__args__","ret","arg","ONCE","CUSTOM","isMatchEventType","eventType","optType","handleEvent","eventOpts","eventOpt","eventsArray","charAt","isOnce","eventArray","handlerCtx","$options","generic","$parent","handler","Error","once","parseBaseApp","initRefs","store","$store","mpHost","beforeCreate","$scope","appOptions","onLaunch","app","globalData","_isMounted","findVmByVueId","vuePid","$children","childVm","parentVm","Behavior","isPage","route","initRelation","defineProperty","get","$refs","components","selectAllComponents","component","ref","forComponents","handleLink","parent","parseApp","createApp","App","parseBaseComponent","vueComponentOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","propsData","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","size","__l","__e","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","parsePage","createPage","createComponent","canIUseApi","apiName","uni","Proxy","set","uni$1","STAT_VERSION","version","STAT_URL","STAT_H5_URL","PAGE_PVER_TIME","APP_PVER_TIME","OPERATING_TIME","UUID_KEY","UUID_VALUE","getUuid","uuid","getPlatformName","plus","runtime","getDCloudId","getStorageSync","now","random","setStorageSync","getSgin","statData","sortArr","sort","sgin","sginStr","sign","substr","getSplicing","getTime","platformList","getPackName","packName","getAccountInfoSync","miniProgram","appId","getVersion","getChannel","platformName","channel","getScene","scene","getLaunchOptionsSync","First__Visit__Time__KEY","Last__Visit__Time__KEY","getFirstVisitTime","timeStorge","time","removeStorageSync","getLastVisitTime","PAGE_RESIDENCE_TIME","First_Page_residence_time","Last_Page_residence_time","setPageResidenceTime","getPageResidenceTime","TOTAL__VISIT__COUNT","getTotalVisitCount","count","GetEncodeURIComponentOptions","prop","encodeURIComponent","Set__First__Time","Set__Last__Time","getFirstTime","getLastTime","getResidenceTime","residenceTime","overtime","getRoute","pages","getCurrentPages","page","_self","is","getPageRoute","self","_query","getPageTypes","calibration","eventName","PagesJson","require","statConfig","resultOptions","Util","_retry","_platform","_navigationBarTitle","config","report","lt","_operatingTime","_reportingRequestData","__prevent_triggering","__licationHide","__licationShow","_lastPageRoute","ut","mpn","ak","appid","usv","v","ch","cn","pn","ct","t","tt","p","brand","md","model","sv","system","mpsdk","SDKVersion","mpv","lang","language","pr","ww","wh","sw","screenWidth","sh","screenHeight","path","sc","_sendReportRequest","_sendHideRequest","urlref","urlref_ts","routepath","titleNView","titleText","navigationBarTitleText","_sendPageRequest","url","_sendEventRequest","fvts","lvts","tvc","getProperty","getNetworkInfo","opt","request","e_n","e_v","getNetworkType","net","networkType","getLocation","wgtinfo","geocode","address","country","province","city","lat","latitude","lng","longitude","title","ttn","ttpj","ttc","requestData","uniStatData","firstArr","contentArr","lastArr","rd","elm","newData","optionsData","requests","imageRequest","setTimeout","_sendRequest","image","Image","src","Stat","instance","addInterceptorInit","interceptLogin","interceptShare","interceptRequestPayment","_login","_share","_payment","_pageShow","_applicationShow","_pageHide","_applicationHide","em","info","emVal","message","stack","stat","getInstance","isHide","lifecycle","onReady","load","onShareAppMessage","oldShareAppMessage","onShow","onHide","onUnload","onError","main"],"mappings":"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ACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA,sBAAsB,+BAA+B;AACrD,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,kDAAkD,iCAAiC,EAAE;AACrF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,cAAc;;AAE3C;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;;AAEvC;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,aAAoB;;AAErC;AACA;AACA;AACA,YAAY,aAAoB;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC,iBAAiB;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA,oCAAoC;AACpC;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA,iCAAiC;AACjC,uCAAuC,wBAAwB,EAAE;AACjE,0BAA0B;;AAE1B;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA,GAAG;AACH;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;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B,SAAS,qBAAqB;;AAExD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA,GAAG;AACH,CAAC;;AAED;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;;AAEA,iBAAiB,iBAAiB;AAClC;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,uBAAuB;AACzD,iCAAiC,sBAAsB;AACvD;AACA,kBAAkB;AAClB,MAAM,IAAqC;AAC3C;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,aAAoB;AACtC;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,OAAO,UAAU,IAAqC;AACtD;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,mBAAmB,mBAAmB;AACtC,+BAA+B;AAC/B;AACA,GAAG;AACH;AACA;AACA;AACA,kBAAkB,YAAY;AAC9B,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA,oCAAoC;AACpC;AACA,qCAAqC;AACrC;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAEQ;AACZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,6CAA6C,SAAS;AACtD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,6CAA6C,qCAAqC,EAAE;AACpF;;AAEA;AACA;AACA;;AAEA,oCAAoC,yCAAyC,EAAE;AAC/E;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA;AACA,4BAA4B;AAC5B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sDAAsD,EAAE;AACtF;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;;AAEA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yBAAyB;AAC1C,GAAG;AACH;AACA;AACA,iBAAiB,+BAA+B;AAChD;AACA;;AAEA;AACA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,uBAAuB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,mBAAmB;AACxC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,qBAAqB;AAClC;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO,MAAM,EAEN;AACP,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,iBAAiB;AACpC;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,UAAU,IAAqC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,OAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA,sBAAsB,mBAAmB;AACzC;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC,uCAAuC;AACvC;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB,sCAAsC;AACtC;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,OAAO;AACzC;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,4CAA4C,eAAe;AAC3D,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,kDAAkD;AAClD,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA,KAAK,UAAU,KAAqC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,qCAAqC,gEAAgE;AACrG;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,4BAA4B,+BAA+B;AAC3D,4BAA4B,+BAA+B;AAC3D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C,kDAAkD;AAClD;AACA;AACA,mCAAmC;AACnC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sEAAsE;;AAEtE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,uFAAuF;AAC5F;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C;AAC1C,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG,+BAA+B;AAClC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,oBAAoB;AACxC,sBAAsB,4BAA4B;AAClD;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,mBAAmB;AACnB,yBAAyB;AACzB;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,6CAA6C;AAC9E;AACA;AACA,6CAA6C,4CAA4C;;AAEzF;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,GAAG,MAAM,EAGN;AACH;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,KAAK,2CAA2C,8BAA8B,EAAE;;AAEhF;AACA,wCAAwC,OAAO;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;;AAEL;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,KAAqC;AACrD;AACA,oBAAoB,SAAI;AACxB;AACA;AACA,WAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uCAAuC,OAAO;AAC9C;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;;AAE1B,kBAAkB;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,IAAqC;AAC3C;AACA;AACA;;AAEA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0BAA0B;AACpD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,oBAAoB,EAAE;;AAEpD;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,oBAAoB;AACpB;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA,oBAAoB,KAAqC;AACzD;AACA,MAAM,SAAE;AACR;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C,qBAAqB,+BAA+B;AACpD;AACA;AACA,GAAG;AACH,yBAAyB;AACzB;AACA,sBAAsB,iCAAiC;AACvD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,UAAU,IAAqC;AACpD;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,8BAA8B;AAC9B,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA,sCAAsC;AACtC,8C;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,eAAe;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA;AACA;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC;;AAEjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,YAAY,KAAqC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;;;AAIA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA,0CAA0C,2BAA2B,EAAE;AACvE,KAAK;AACL;AACA,0CAA0C,4BAA4B,EAAE;AACxE,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,+BAA+B,eAAe;AAC9C,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA,6BAA6B;AAC7B;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,iBAAiB;AACjB;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,gFAAW;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,gFAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,gFAAW;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,0CAA0C;;AAE1C;AACA;AACA;AACA,GAAG;AACH;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,gFAAW;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;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;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;;AAEA;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,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;;;;;;sGCh3BW,EAAC,SAAQ,EAAC,qBAAoB,EAAC,0BAAyB,MAA1B,EAArB,EAAuD,mBAAkB,EAAC,0BAAyB,KAA1B,EAAzE,EAA0G,mBAAkB,EAAC,0BAAyB,IAA1B,EAA5H,EAAT,EAAsK,eAAc,EAAC,0BAAyB,OAA1B,EAAkC,0BAAyB,SAA3D,EAAqE,gCAA+B,SAApG,EAA8G,mBAAkB,SAAhI,EAApL,E;;;;;;;;;;;sGAAA,EAAC,SAAQ,EAAT,E;;;;;;;;;;;;;;;;ACAf;AAAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA","file":"common/vendor.js","sourcesContent":["import Vue from 'vue';\r\n\r\nconst _toString = Object.prototype.toString;\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\n\r\nfunction isFn (fn) {\r\n return typeof fn === 'function'\r\n}\r\n\r\nfunction isStr (str) {\r\n return typeof str === 'string'\r\n}\r\n\r\nfunction isPlainObject (obj) {\r\n return _toString.call(obj) === '[object Object]'\r\n}\r\n\r\nfunction hasOwn (obj, key) {\r\n return hasOwnProperty.call(obj, key)\r\n}\r\n\r\nfunction noop () {}\r\n\r\n/**\r\n * Create a cached version of a pure function.\r\n */\r\nfunction cached (fn) {\r\n const cache = Object.create(null);\r\n return function cachedFn (str) {\r\n const hit = cache[str];\r\n return hit || (cache[str] = fn(str))\r\n }\r\n}\r\n\r\n/**\r\n * Camelize a hyphen-delimited string.\r\n */\r\nconst camelizeRE = /-(\\w)/g;\r\nconst camelize = cached((str) => {\r\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\r\n});\r\n\r\nconst HOOKS = [\r\n 'invoke',\r\n 'success',\r\n 'fail',\r\n 'complete',\r\n 'returnValue'\r\n];\r\n\r\nconst globalInterceptors = {};\r\nconst scopedInterceptors = {};\r\n\r\nfunction mergeHook (parentVal, childVal) {\r\n const res = childVal\r\n ? parentVal\r\n ? parentVal.concat(childVal)\r\n : Array.isArray(childVal)\r\n ? childVal : [childVal]\r\n : parentVal;\r\n return res\r\n ? dedupeHooks(res)\r\n : res\r\n}\r\n\r\nfunction dedupeHooks (hooks) {\r\n const res = [];\r\n for (let i = 0; i < hooks.length; i++) {\r\n if (res.indexOf(hooks[i]) === -1) {\r\n res.push(hooks[i]);\r\n }\r\n }\r\n return res\r\n}\r\n\r\nfunction removeHook (hooks, hook) {\r\n const index = hooks.indexOf(hook);\r\n if (index !== -1) {\r\n hooks.splice(index, 1);\r\n }\r\n}\r\n\r\nfunction mergeInterceptorHook (interceptor, option) {\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction removeInterceptorHook (interceptor, option) {\r\n if (!interceptor || !option) {\r\n return\r\n }\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n removeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction addInterceptor (method, option) {\r\n if (typeof method === 'string' && isPlainObject(option)) {\r\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\r\n } else if (isPlainObject(method)) {\r\n mergeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction removeInterceptor (method, option) {\r\n if (typeof method === 'string') {\r\n if (isPlainObject(option)) {\r\n removeInterceptorHook(scopedInterceptors[method], option);\r\n } else {\r\n delete scopedInterceptors[method];\r\n }\r\n } else if (isPlainObject(method)) {\r\n removeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction wrapperHook (hook) {\r\n return function (data) {\r\n return hook(data) || data\r\n }\r\n}\r\n\r\nfunction isPromise (obj) {\r\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\r\n}\r\n\r\nfunction queue (hooks, data) {\r\n let promise = false;\r\n for (let i = 0; i < hooks.length; i++) {\r\n const hook = hooks[i];\r\n if (promise) {\r\n promise = Promise.then(wrapperHook(hook));\r\n } else {\r\n const res = hook(data);\r\n if (isPromise(res)) {\r\n promise = Promise.resolve(res);\r\n }\r\n if (res === false) {\r\n return {\r\n then () {}\r\n }\r\n }\r\n }\r\n }\r\n return promise || {\r\n then (callback) {\r\n return callback(data)\r\n }\r\n }\r\n}\r\n\r\nfunction wrapperOptions (interceptor, options = {}) {\r\n ['success', 'fail', 'complete'].forEach(name => {\r\n if (Array.isArray(interceptor[name])) {\r\n const oldCallback = options[name];\r\n options[name] = function callbackInterceptor (res) {\r\n queue(interceptor[name], res).then((res) => {\r\n /* eslint-disable no-mixed-operators */\r\n return isFn(oldCallback) && oldCallback(res) || res\r\n });\r\n };\r\n }\r\n });\r\n return options\r\n}\r\n\r\nfunction wrapperReturnValue (method, returnValue) {\r\n const returnValueHooks = [];\r\n if (Array.isArray(globalInterceptors.returnValue)) {\r\n returnValueHooks.push(...globalInterceptors.returnValue);\r\n }\r\n const interceptor = scopedInterceptors[method];\r\n if (interceptor && Array.isArray(interceptor.returnValue)) {\r\n returnValueHooks.push(...interceptor.returnValue);\r\n }\r\n returnValueHooks.forEach(hook => {\r\n returnValue = hook(returnValue) || returnValue;\r\n });\r\n return returnValue\r\n}\r\n\r\nfunction getApiInterceptorHooks (method) {\r\n const interceptor = Object.create(null);\r\n Object.keys(globalInterceptors).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = globalInterceptors[hook].slice();\r\n }\r\n });\r\n const scopedInterceptor = scopedInterceptors[method];\r\n if (scopedInterceptor) {\r\n Object.keys(scopedInterceptor).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\r\n }\r\n });\r\n }\r\n return interceptor\r\n}\r\n\r\nfunction invokeApi (method, api, options, ...params) {\r\n const interceptor = getApiInterceptorHooks(method);\r\n if (interceptor && Object.keys(interceptor).length) {\r\n if (Array.isArray(interceptor.invoke)) {\r\n const res = queue(interceptor.invoke, options);\r\n return res.then((options) => {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n })\r\n } else {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n }\r\n }\r\n return api(options, ...params)\r\n}\r\n\r\nconst promiseInterceptor = {\r\n returnValue (res) {\r\n if (!isPromise(res)) {\r\n return res\r\n }\r\n return res.then(res => {\r\n return res[1]\r\n }).catch(res => {\r\n return res[0]\r\n })\r\n }\r\n};\r\n\r\nconst SYNC_API_RE =\r\n /^\\$|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;\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'];\r\n\r\nconst CALLBACK_API_RE = /^on|^off/;\r\n\r\nfunction isContextApi (name) {\r\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\r\n}\r\nfunction isSyncApi (name) {\r\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\r\n}\r\n\r\nfunction isCallbackApi (name) {\r\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\r\n}\r\n\r\nfunction handlePromise (promise) {\r\n return promise.then(data => {\r\n return [null, data]\r\n })\r\n .catch(err => [err])\r\n}\r\n\r\nfunction shouldPromise (name) {\r\n if (\r\n isContextApi(name) ||\r\n isSyncApi(name) ||\r\n isCallbackApi(name)\r\n ) {\r\n return false\r\n }\r\n return true\r\n}\r\n\r\n/* eslint-disable no-extend-native */\r\nif (!Promise.prototype.finally) {\r\n Promise.prototype.finally = function (callback) {\r\n const promise = this.constructor;\r\n return this.then(\r\n value => promise.resolve(callback()).then(() => value),\r\n reason => promise.resolve(callback()).then(() => {\r\n throw reason\r\n })\r\n )\r\n };\r\n}\r\n\r\nfunction promisify (name, api) {\r\n if (!shouldPromise(name)) {\r\n return api\r\n }\r\n return function promiseApi (options = {}, ...params) {\r\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\r\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\r\n }\r\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\r\n invokeApi(name, api, Object.assign({}, options, {\r\n success: resolve,\r\n fail: reject\r\n }), ...params);\r\n })))\r\n }\r\n}\r\n\r\nconst EPS = 1e-4;\r\nconst BASE_DEVICE_WIDTH = 750;\r\nlet isIOS = false;\r\nlet deviceWidth = 0;\r\nlet deviceDPR = 0;\r\n\r\nfunction checkDeviceWidth () {\r\n const {\r\n platform,\r\n pixelRatio,\r\n windowWidth\r\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\r\n\r\n deviceWidth = windowWidth;\r\n deviceDPR = pixelRatio;\r\n isIOS = platform === 'ios';\r\n}\r\n\r\nfunction upx2px (number, newDeviceWidth) {\r\n if (deviceWidth === 0) {\r\n checkDeviceWidth();\r\n }\r\n\r\n number = Number(number);\r\n if (number === 0) {\r\n return 0\r\n }\r\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\r\n if (result < 0) {\r\n result = -result;\r\n }\r\n result = Math.floor(result + EPS);\r\n if (result === 0) {\r\n if (deviceDPR === 1 || !isIOS) {\r\n return 1\r\n } else {\r\n return 0.5\r\n }\r\n }\r\n return number < 0 ? -result : result\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 addInterceptor: addInterceptor,\r\n removeInterceptor: removeInterceptor,\r\n interceptors: interceptors\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\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.windowHeight - safeArea.bottom\r\n };\r\n }\r\n}\r\nconst protocols = {\r\n previewImage,\r\n getSystemInfo: {\r\n returnValue: addSafeAreaInsets\r\n },\r\n getSystemInfoSync: {\r\n returnValue: addSafeAreaInsets\r\n }\r\n};\r\nconst todos = [\r\n 'vibrate'\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(`微信小程序 ${methodName}暂不支持${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 toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\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(`微信小程序 暂不支持${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 const returnValue = wx[options.name || 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:暂不支持 ${name} 方法`\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 + ']不存在'\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 if (typeof getUniEmitter === 'function') {\r\n /* eslint-disable no-undef */\r\n return getUniEmitter\r\n }\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\nvar api = /*#__PURE__*/Object.freeze({\r\n __proto__: null\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 {\r\n if (!wx.canIUse('nextTick')) {\r\n return\r\n }\r\n }\r\n const oldTriggerEvent = mpInstance.triggerEvent;\r\n mpInstance.triggerEvent = function (event, ...args) {\r\n return oldTriggerEvent.apply(mpInstance, [customize(event), ...args])\r\n };\r\n}\r\n\r\nfunction initHook (name, options) {\r\n const oldHook = options[name];\r\n if (!oldHook) {\r\n options[name] = function () {\r\n initTriggerEvent(this);\r\n };\r\n } else {\r\n options[name] = function (...args) {\r\n initTriggerEvent(this);\r\n return oldHook.apply(this, args)\r\n };\r\n }\r\n}\r\n\r\nPage = function (options = {}) {\r\n initHook('onLoad', options);\r\n return MPPage(options)\r\n};\r\n\r\nComponent = function (options = {}) {\r\n initHook('created', options);\r\n return MPComponent(options)\r\n};\r\n\r\nconst PAGE_EVENT_HOOKS = [\r\n 'onPullDownRefresh',\r\n 'onReachBottom',\r\n 'onShareAppMessage',\r\n 'onPageScroll',\r\n 'onResize',\r\n 'onTabItemTap'\r\n];\r\n\r\nfunction initMocks (vm, mocks) {\r\n const mpInstance = vm.$mp[vm.mpType];\r\n mocks.forEach(mock => {\r\n if (hasOwn(mpInstance, mock)) {\r\n vm[mock] = mpInstance[mock];\r\n }\r\n });\r\n}\r\n\r\nfunction hasHook (hook, vueOptions) {\r\n if (!vueOptions) {\r\n return true\r\n }\r\n\r\n if (Vue.options && Array.isArray(Vue.options[hook])) {\r\n return true\r\n }\r\n\r\n vueOptions = vueOptions.default || vueOptions;\r\n\r\n if (isFn(vueOptions)) {\r\n if (isFn(vueOptions.extendOptions[hook])) {\r\n return true\r\n }\r\n if (vueOptions.super &&\r\n vueOptions.super.options &&\r\n Array.isArray(vueOptions.super.options[hook])) {\r\n return true\r\n }\r\n return false\r\n }\r\n\r\n if (isFn(vueOptions[hook])) {\r\n return true\r\n }\r\n const mixins = vueOptions.mixins;\r\n if (Array.isArray(mixins)) {\r\n return !!mixins.find(mixin => hasHook(hook, mixin))\r\n }\r\n}\r\n\r\nfunction initHooks (mpOptions, hooks, vueOptions) {\r\n hooks.forEach(hook => {\r\n if (hasHook(hook, vueOptions)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n });\r\n}\r\n\r\nfunction initVueComponent (Vue, vueOptions) {\r\n vueOptions = vueOptions.default || vueOptions;\r\n let VueComponent;\r\n if (isFn(vueOptions)) {\r\n VueComponent = vueOptions;\r\n vueOptions = VueComponent.extendOptions;\r\n } else {\r\n VueComponent = Vue.extend(vueOptions);\r\n }\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 = '') {\r\n const properties = {};\r\n if (!isBehavior) {\r\n properties.vueId = {\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') || !event.detail) {\r\n event.detail = {};\r\n }\r\n\r\n if (!('markerId' in event.detail) && 'markerId' in event) {\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 const vFor = dataPath ? vm.__get_value(dataPath, context) : context;\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) {\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.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 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 event.detail.__args__ || event.detail\r\n }\r\n }\r\n\r\n const extraObj = processEventExtra(vm, extra, event);\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(event.detail.__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 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 (\r\n handlerCtx.$options.generic &&\r\n handlerCtx.$parent &&\r\n handlerCtx.$parent.$parent\r\n ) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\r\n handlerCtx = handlerCtx.$parent.$parent;\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 throw new Error(` _vm.${methodName} is not a function`)\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 ret.push(handler.apply(handlerCtx, 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 }\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 hooks = [\r\n 'onShow',\r\n 'onHide',\r\n 'onError',\r\n 'onPageNotFound'\r\n];\r\n\r\nfunction parseBaseApp (vm, {\r\n mocks,\r\n initRefs\r\n}) {\r\n if (vm.$options.store) {\r\n Vue.prototype.$store = vm.$options.store;\r\n }\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\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('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 initHooks(appOptions, hooks);\r\n\r\n return appOptions\r\n}\r\n\r\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\r\n\r\nfunction findVmByVueId (vm, vuePid) {\r\n const $children = vm.$children;\r\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n const childVm = $children[i];\r\n if (childVm.$scope._$vueId === vuePid) {\r\n return childVm\r\n }\r\n }\r\n // 反向递归查找\r\n let parentVm;\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n parentVm = findVmByVueId($children[i], vuePid);\r\n if (parentVm) {\r\n return parentVm\r\n }\r\n }\r\n}\r\n\r\nfunction initBehavior (options) {\r\n return Behavior(options)\r\n}\r\n\r\nfunction isPage () {\r\n return !!this.route\r\n}\r\n\r\nfunction initRelation (detail) {\r\n this.triggerEvent('__l', detail);\r\n}\r\n\r\nfunction initRefs (vm) {\r\n const mpInstance = vm.$scope;\r\n Object.defineProperty(vm, '$refs', {\r\n get () {\r\n const $refs = {};\r\n const components = mpInstance.selectAllComponents('.vue-ref');\r\n components.forEach(component => {\r\n const ref = component.dataset.ref;\r\n $refs[ref] = component.$vm || component;\r\n });\r\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');\r\n forComponents.forEach(component => {\r\n const ref = component.dataset.ref;\r\n if (!$refs[ref]) {\r\n $refs[ref] = [];\r\n }\r\n $refs[ref].push(component.$vm || component);\r\n });\r\n return $refs\r\n }\r\n });\r\n}\r\n\r\nfunction handleLink (event) {\r\n const {\r\n vuePid,\r\n vueOptions\r\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\r\n\r\n let parentVm;\r\n\r\n if (vuePid) {\r\n parentVm = findVmByVueId(this.$vm, vuePid);\r\n }\r\n\r\n if (!parentVm) {\r\n parentVm = this.$vm;\r\n }\r\n\r\n vueOptions.parent = parentVm;\r\n}\r\n\r\nfunction parseApp (vm) {\r\n return parseBaseApp(vm, {\r\n mocks,\r\n initRefs\r\n })\r\n}\r\n\r\nfunction createApp (vm) {\r\n App(parseApp(vm));\r\n return vm\r\n}\r\n\r\nfunction parseBaseComponent (vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n} = {}) {\r\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\r\n\r\n const options = {\r\n multipleSlots: true,\r\n addGlobalClass: true,\r\n ...(vueOptions.options || {})\r\n };\r\n\r\n {\r\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\r\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\r\n Object.assign(options, vueOptions['mp-weixin'].options);\r\n }\r\n }\r\n\r\n const componentOptions = {\r\n options,\r\n data: initData(vueOptions, Vue.prototype),\r\n behaviors: initBehaviors(vueOptions, initBehavior),\r\n properties: initProperties(vueOptions.props, false, vueOptions.__file),\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\r\n if (Array.isArray(vueOptions.wxsCallMethods)) {\r\n vueOptions.wxsCallMethods.forEach(callMethod => {\r\n componentOptions.methods[callMethod] = function (args) {\r\n return this.$vm[callMethod](args)\r\n };\r\n });\r\n }\r\n\r\n if (isPage) {\r\n return componentOptions\r\n }\r\n return [componentOptions, VueComponent]\r\n}\r\n\r\nfunction parseComponent (vueComponentOptions) {\r\n return parseBaseComponent(vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nconst hooks$1 = [\r\n 'onShow',\r\n 'onHide',\r\n 'onUnload'\r\n];\r\n\r\nhooks$1.push(...PAGE_EVENT_HOOKS);\r\n\r\nfunction parseBasePage (vuePageOptions, {\r\n isPage,\r\n initRelation\r\n}) {\r\n const pageOptions = parseComponent(vuePageOptions);\r\n\r\n initHooks(pageOptions.methods, hooks$1, vuePageOptions);\r\n\r\n pageOptions.methods.onLoad = function (args) {\r\n this.$vm.$mp.query = args; // 兼容 mpvue\r\n this.$vm.__call_hook('onLoad', args);\r\n };\r\n\r\n return pageOptions\r\n}\r\n\r\nfunction parsePage (vuePageOptions) {\r\n return parseBasePage(vuePageOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nfunction createPage (vuePageOptions) {\r\n {\r\n return Component(parsePage(vuePageOptions))\r\n }\r\n}\r\n\r\nfunction createComponent (vueOptions) {\r\n {\r\n return Component(parseComponent(vueOptions))\r\n }\r\n}\r\n\r\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 (target[name]) {\r\n return target[name]\r\n }\r\n if (baseApi[name]) {\r\n return baseApi[name]\r\n }\r\n if (api[name]) {\r\n return promisify(name, api[name])\r\n }\r\n {\r\n if (extraApi[name]) {\r\n return promisify(name, extraApi[name])\r\n }\r\n if (todoApis[name]) {\r\n return promisify(name, todoApis[name])\r\n }\r\n }\r\n if (eventApi[name]) {\r\n return eventApi[name]\r\n }\r\n if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {\r\n return\r\n }\r\n return promisify(name, wrapper(name, wx[name]))\r\n },\r\n set (target, name, value) {\r\n target[name] = value;\r\n return true\r\n }\r\n });\r\n} else {\r\n Object.keys(baseApi).forEach(name => {\r\n uni[name] = baseApi[name];\r\n });\r\n\r\n {\r\n Object.keys(todoApis).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n Object.keys(extraApi).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n }\r\n\r\n Object.keys(eventApi).forEach(name => {\r\n uni[name] = eventApi[name];\r\n });\r\n\r\n Object.keys(api).forEach(name => {\r\n uni[name] = promisify(name, api[name]);\r\n });\r\n\r\n Object.keys(wx).forEach(name => {\r\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\r\n uni[name] = promisify(name, wrapper(name, wx[name]));\r\n }\r\n });\r\n}\r\n\r\nwx.createApp = createApp;\r\nwx.createPage = createPage;\r\nwx.createComponent = createComponent;\r\n\r\nvar uni$1 = uni;\r\n\r\nexport default uni$1;\r\nexport { createApp, createComponent, createPage };\r\n","/*!\n * Vue.js v2.6.11\n * (c) 2014-2020 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 {\n if(vm.$scope && vm.$scope.is){\n return vm.$scope.is\n }\n }\n if (vm.$root === vm) {\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) {\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 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 // fixed by xxxxxx (nvue vuex)\n /* eslint-disable no-undef */\n if(typeof SharedObject !== 'undefined'){\n this.id = SharedObject.uid++;\n } else {\n this.id = uid++;\n }\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 = typeof SharedObject !== 'undefined' ? SharedObject : {};\nDep.SharedObject.target = null;\nDep.SharedObject.targetStack = [];\n\nfunction pushTarget (target) {\n Dep.SharedObject.targetStack.push(target);\n Dep.SharedObject.target = target;\n}\n\nfunction popTarget () {\n Dep.SharedObject.targetStack.pop();\n Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑\n if(value.push !== value.__proto__.push){\n copyAugment(value, arrayMethods, arrayKeys);\n } else {\n protoAugment(value, arrayMethods);\n }\n }\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.SharedObject.target) { // fixed by xxxxxx\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\n/* */\n\n// fixed by xxxxxx (mp properties)\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'){//百度 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]';\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 _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]) {\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 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 //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))\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) {\n console.error(err);\n /* eslint-disable no-undef */\r\n var app = 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 this.$scope['triggerEvent'](event, {\r\n __args__: toArray(arguments, 1)\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 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 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,number\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 }\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',\n 'onError',\r\n //Page\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 'onShareAppMessage',\n 'onResize',\r\n 'onPageScroll',\r\n 'onNavigationBarButtonTap',\r\n 'onBackPress',\r\n 'onNavigationBarSearchInputChanged',\r\n 'onNavigationBarSearchInputConfirmed',\r\n 'onNavigationBarSearchInputClicked',\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 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","import { version } from '../package.json';\r\n\r\nconst STAT_VERSION = version;\r\nconst STAT_URL = 'https://tongji.dcloud.io/uni/stat';\r\nconst STAT_H5_URL = 'https://tongji.dcloud.io/uni/stat.gif'; \r\nconst PAGE_PVER_TIME = 1800;\r\nconst APP_PVER_TIME = 300;\r\nconst OPERATING_TIME = 10;\r\n\r\nconst UUID_KEY = '__DC_STAT_UUID';\r\nconst UUID_VALUE = '__DC_UUID_VALUE';\r\n\r\nfunction getUuid() {\r\n let uuid = '';\r\n if (getPlatformName() === 'n') {\r\n try {\r\n uuid = plus.runtime.getDCloudId();\r\n } catch (e) {\r\n uuid = '';\r\n }\r\n return uuid\r\n }\r\n\r\n try {\r\n uuid = uni.getStorageSync(UUID_KEY);\r\n } catch (e) {\r\n uuid = UUID_VALUE;\r\n }\r\n\r\n if (!uuid) {\r\n uuid = Date.now() + '' + Math.floor(Math.random() * 1e7);\r\n try {\r\n uni.setStorageSync(UUID_KEY, uuid);\r\n } catch (e) {\r\n uni.setStorageSync(UUID_KEY, UUID_VALUE);\r\n }\r\n }\r\n return uuid;\r\n}\r\n\r\nconst getSgin = (statData) => {\r\n let arr = Object.keys(statData);\r\n let sortArr = arr.sort();\r\n let sgin = {};\r\n let sginStr = '';\r\n for (var i in sortArr) {\r\n sgin[sortArr[i]] = statData[sortArr[i]];\r\n sginStr += sortArr[i] + '=' + statData[sortArr[i]] + '&';\r\n }\r\n // const options = sginStr.substr(0, sginStr.length - 1)\r\n // sginStr = sginStr.substr(0, sginStr.length - 1) + '&key=' + STAT_KEY;\r\n // const si = crypto.createHash('md5').update(sginStr).digest('hex');\r\n return {\r\n sign: '',\r\n options: sginStr.substr(0, sginStr.length - 1)\r\n };\r\n};\r\n\r\nconst getSplicing = (data) => {\r\n let str = '';\r\n for (var i in data) {\r\n str += i + '=' + data[i] + '&';\r\n }\r\n return str.substr(0, str.length - 1)\r\n};\r\n\r\nconst getTime = () => {\r\n return parseInt(new Date().getTime() / 1000);\r\n};\r\n\r\nconst getPlatformName = () => {\r\n const platformList = {\r\n 'app-plus': 'n',\r\n 'h5': 'h5',\r\n 'mp-weixin': 'wx',\r\n 'mp-alipay': 'ali',\r\n 'mp-baidu': 'bd',\r\n 'mp-toutiao': 'tt',\r\n 'mp-qq': 'qq'\r\n };\r\n return platformList[process.env.VUE_APP_PLATFORM];\r\n};\r\n\r\nconst getPackName = () => {\r\n let packName = '';\r\n if (getPlatformName() === 'wx' || getPlatformName() === 'qq') {\r\n // 兼容微信小程序低版本基础库\r\n if(uni.canIUse('getAccountInfoSync')){\r\n packName = uni.getAccountInfoSync().miniProgram.appId || '';\r\n }\r\n }\r\n return packName\r\n};\r\n\r\nconst getVersion = () => {\r\n return getPlatformName() === 'n' ? plus.runtime.version : '';\r\n};\r\n\r\nconst getChannel = () => {\r\n const platformName = getPlatformName();\r\n let channel = '';\r\n if (platformName === 'n') {\r\n channel = plus.runtime.channel;\r\n }\r\n return channel;\r\n};\r\n\r\nconst getScene = (options) => {\r\n const platformName = getPlatformName();\r\n let scene = '';\r\n if (options) {\r\n return options;\r\n }\r\n if (platformName === 'wx') {\r\n scene = uni.getLaunchOptionsSync().scene;\r\n }\r\n return scene;\r\n};\r\nconst First__Visit__Time__KEY = 'First__Visit__Time';\r\nconst Last__Visit__Time__KEY = 'Last__Visit__Time';\r\n\r\nconst getFirstVisitTime = () => {\r\n const timeStorge = uni.getStorageSync(First__Visit__Time__KEY);\r\n let time = 0;\r\n if (timeStorge) {\r\n time = timeStorge;\r\n } else {\r\n time = getTime();\r\n uni.setStorageSync(First__Visit__Time__KEY, time);\r\n uni.removeStorageSync(Last__Visit__Time__KEY);\r\n }\r\n return time;\r\n};\r\n\r\nconst getLastVisitTime = () => {\r\n const timeStorge = uni.getStorageSync(Last__Visit__Time__KEY);\r\n let time = 0;\r\n if (timeStorge) {\r\n time = timeStorge;\r\n } else {\r\n time = '';\r\n }\r\n uni.setStorageSync(Last__Visit__Time__KEY, getTime());\r\n return time;\r\n};\r\n\r\n\r\nconst PAGE_RESIDENCE_TIME = '__page__residence__time';\r\nlet First_Page_residence_time = 0;\r\nlet Last_Page_residence_time = 0;\r\n\r\n\r\nconst setPageResidenceTime = () => {\r\n First_Page_residence_time = getTime();\r\n if (getPlatformName() === 'n') {\r\n uni.setStorageSync(PAGE_RESIDENCE_TIME, getTime());\r\n }\r\n return First_Page_residence_time\r\n};\r\n\r\nconst getPageResidenceTime = () => {\r\n Last_Page_residence_time = getTime();\r\n if (getPlatformName() === 'n') {\r\n First_Page_residence_time = uni.getStorageSync(PAGE_RESIDENCE_TIME);\r\n }\r\n return Last_Page_residence_time - First_Page_residence_time\r\n};\r\nconst TOTAL__VISIT__COUNT = 'Total__Visit__Count';\r\nconst getTotalVisitCount = () => {\r\n const timeStorge = uni.getStorageSync(TOTAL__VISIT__COUNT);\r\n let count = 1;\r\n if (timeStorge) {\r\n count = timeStorge;\r\n count++;\r\n }\r\n uni.setStorageSync(TOTAL__VISIT__COUNT, count);\r\n return count;\r\n};\r\n\r\nconst GetEncodeURIComponentOptions = (statData) => {\r\n let data = {};\r\n for (let prop in statData) {\r\n data[prop] = encodeURIComponent(statData[prop]);\r\n }\r\n return data;\r\n};\r\n\r\nlet Set__First__Time = 0;\r\nlet Set__Last__Time = 0;\r\n\r\nconst getFirstTime = () => {\r\n let time = new Date().getTime();\r\n Set__First__Time = time;\r\n Set__Last__Time = 0;\r\n return time;\r\n};\r\n\r\n\r\nconst getLastTime = () => {\r\n let time = new Date().getTime();\r\n Set__Last__Time = time;\r\n return time;\r\n};\r\n\r\n\r\nconst getResidenceTime = (type) => {\r\n let residenceTime = 0;\r\n if (Set__First__Time !== 0) {\r\n residenceTime = Set__Last__Time - Set__First__Time;\r\n }\r\n\r\n residenceTime = parseInt(residenceTime / 1000);\r\n residenceTime = residenceTime < 1 ? 1 : residenceTime;\r\n if (type === 'app') {\r\n let overtime = residenceTime > APP_PVER_TIME ? true : false;\r\n return {\r\n residenceTime,\r\n overtime\r\n };\r\n }\r\n if (type === 'page') {\r\n let overtime = residenceTime > PAGE_PVER_TIME ? true : false;\r\n return {\r\n residenceTime,\r\n overtime\r\n };\r\n }\r\n\r\n return {\r\n residenceTime\r\n };\r\n\r\n};\r\n\r\nconst getRoute = () => {\r\n var pages = getCurrentPages();\r\n var page = pages[pages.length - 1];\r\n let _self = page.$vm;\r\n\r\n if (getPlatformName() === 'bd') {\r\n return _self.$mp && _self.$mp.page.is;\r\n } else {\r\n return (_self.$scope && _self.$scope.route) || (_self.$mp && _self.$mp.page.route);\r\n }\r\n};\r\n\r\nconst getPageRoute = (self) => {\r\n var pages = getCurrentPages();\r\n var page = pages[pages.length - 1];\r\n let _self = page.$vm;\r\n let query = self._query;\r\n let str = query && JSON.stringify(query) !== '{}' ? '?' + JSON.stringify(query) : '';\r\n // clear\r\n self._query = '';\r\n if (getPlatformName() === 'bd') {\r\n return _self.$mp && _self.$mp.page.is + str;\r\n } else {\r\n return (_self.$scope && _self.$scope.route + str )|| (_self.$mp && _self.$mp.page.route + str);\r\n }\r\n};\r\n\r\nconst getPageTypes = (self) => {\r\n if (self.mpType === 'page' || (self.$mp && self.$mp.mpType === 'page') || self.$options.mpType === 'page') {\r\n return true;\r\n }\r\n return false;\r\n};\r\n\r\nconst calibration = (eventName, options) => {\r\n // login 、 share 、pay_success 、pay_fail 、register 、title\r\n if(!eventName){\r\n console.error(`uni.report 缺少 [eventName] 参数`);\r\n return true\r\n }\r\n if (typeof eventName !== 'string') {\r\n console.error(`uni.report [eventName] 参数类型错误,只能为 String 类型`);\r\n return true\r\n }\r\n if (eventName.length > 255) {\r\n console.error(`uni.report [eventName] 参数长度不能大于 255`);\r\n return true\r\n }\r\n\r\n if (typeof options !== 'string' && typeof options !== 'object') {\r\n console.error(`uni.report [options] 参数类型错误,只能为 String 或 Object 类型`);\r\n return true\r\n }\r\n\r\n if (typeof options === 'string' && options.length > 255) {\r\n console.error(`uni.report [options] 参数长度不能大于 255`);\r\n return true\r\n }\r\n\r\n if (eventName === 'title' && typeof options !== 'string') {\r\n console.error('uni.report [eventName] 参数为 title 时,[options] 参数只能为 String 类型');\r\n return true\r\n }\r\n};\r\n\r\nconst PagesJson = require('uni-pages?{\"type\":\"style\"}').default;\r\nconst statConfig = require('uni-stat-config').default || require('uni-stat-config');\r\n\r\nconst resultOptions = uni.getSystemInfoSync();\r\n\r\nclass Util {\r\n constructor() {\r\n this.self = '';\r\n this._retry = 0;\r\n this._platform = '';\r\n this._query = {};\r\n this._navigationBarTitle = {\r\n config: '',\r\n page: '',\r\n report: '',\r\n lt: ''\r\n };\r\n this._operatingTime = 0;\r\n this._reportingRequestData = {\r\n '1': [],\r\n '11': []\r\n };\r\n this.__prevent_triggering = false;\r\n\r\n this.__licationHide = false;\r\n this.__licationShow = false;\r\n this._lastPageRoute = '';\r\n this.statData = {\r\n uuid: getUuid(),\r\n ut: getPlatformName(),\r\n mpn: getPackName(),\r\n ak: statConfig.appid,\r\n usv: STAT_VERSION,\r\n v: getVersion(),\r\n ch: getChannel(),\r\n cn: '',\r\n pn: '',\r\n ct: '',\r\n t: getTime(),\r\n tt: '',\r\n p: resultOptions.platform === 'android' ? 'a' : 'i',\r\n brand: resultOptions.brand || '',\r\n md: resultOptions.model,\r\n sv: resultOptions.system.replace(/(Android|iOS)\\s/, ''),\r\n mpsdk: resultOptions.SDKVersion || '',\r\n mpv: resultOptions.version || '',\r\n lang: resultOptions.language,\r\n pr: resultOptions.pixelRatio,\r\n ww: resultOptions.windowWidth,\r\n wh: resultOptions.windowHeight,\r\n sw: resultOptions.screenWidth,\r\n sh: resultOptions.screenHeight\r\n };\r\n\r\n }\r\n\r\n _applicationShow() {\r\n if (this.__licationHide) {\r\n getLastTime();\r\n const time = getResidenceTime('app');\r\n if (time.overtime) {\r\n let options = {\r\n path: this._lastPageRoute,\r\n scene: this.statData.sc\r\n };\r\n this._sendReportRequest(options);\r\n }\r\n this.__licationHide = false;\r\n }\r\n }\r\n\r\n _applicationHide(self, type) {\r\n\r\n this.__licationHide = true;\r\n getLastTime();\r\n const time = getResidenceTime();\r\n getFirstTime();\r\n const route = getPageRoute(this);\r\n this._sendHideRequest({\r\n urlref: route,\r\n urlref_ts: time.residenceTime\r\n }, type);\r\n }\r\n\r\n _pageShow() {\r\n const route = getPageRoute(this);\r\n const routepath = getRoute();\r\n this._navigationBarTitle.config = PagesJson &&\r\n PagesJson.pages[routepath] &&\r\n PagesJson.pages[routepath].titleNView &&\r\n PagesJson.pages[routepath].titleNView.titleText ||\r\n PagesJson &&\r\n PagesJson.pages[routepath] &&\r\n PagesJson.pages[routepath].navigationBarTitleText || '';\r\n\r\n if (this.__licationShow) {\r\n getFirstTime();\r\n this.__licationShow = false;\r\n // console.log('这是 onLauch 之后执行的第一次 pageShow ,为下次记录时间做准备');\r\n this._lastPageRoute = route;\r\n return;\r\n }\r\n\r\n getLastTime();\r\n this._lastPageRoute = route;\r\n const time = getResidenceTime('page');\r\n if (time.overtime) {\r\n let options = {\r\n path: this._lastPageRoute,\r\n scene: this.statData.sc\r\n };\r\n this._sendReportRequest(options);\r\n }\r\n getFirstTime();\r\n }\r\n\r\n _pageHide() {\r\n if (!this.__licationHide) {\r\n getLastTime();\r\n const time = getResidenceTime('page');\r\n this._sendPageRequest({\r\n url: this._lastPageRoute,\r\n urlref: this._lastPageRoute,\r\n urlref_ts: time.residenceTime\r\n });\r\n this._navigationBarTitle = {\r\n config: '',\r\n page: '',\r\n report: '',\r\n lt: ''\r\n };\r\n return;\r\n }\r\n }\r\n\r\n _login() {\r\n this._sendEventRequest({\r\n key: 'login'\r\n }, 0);\r\n }\r\n\r\n _share() {\r\n this._sendEventRequest({\r\n key: 'share'\r\n }, 0);\r\n }\r\n _payment(key) {\r\n this._sendEventRequest({\r\n key\r\n }, 0);\r\n }\r\n _sendReportRequest(options) {\r\n\r\n this._navigationBarTitle.lt = '1';\r\n let query = options.query && JSON.stringify(options.query) !== '{}' ? '?' + JSON.stringify(options.query) : '';\r\n this.statData.lt = '1';\r\n this.statData.url = (options.path + query) || '';\r\n this.statData.t = getTime();\r\n this.statData.sc = getScene(options.scene);\r\n this.statData.fvts = getFirstVisitTime();\r\n this.statData.lvts = getLastVisitTime();\r\n this.statData.tvc = getTotalVisitCount();\r\n if (getPlatformName() === 'n') {\r\n this.getProperty();\r\n } else {\r\n this.getNetworkInfo();\r\n }\r\n }\r\n\r\n _sendPageRequest(opt) {\r\n let {\r\n url,\r\n urlref,\r\n urlref_ts\r\n } = opt;\r\n this._navigationBarTitle.lt = '11';\r\n let options = {\r\n ak: this.statData.ak,\r\n uuid: this.statData.uuid,\r\n lt: '11',\r\n ut: this.statData.ut,\r\n url,\r\n tt: this.statData.tt,\r\n urlref,\r\n urlref_ts,\r\n ch: this.statData.ch,\r\n usv: this.statData.usv,\r\n t: getTime(),\r\n p: this.statData.p\r\n };\r\n this.request(options);\r\n }\r\n\r\n _sendHideRequest(opt, type) {\r\n let {\r\n urlref,\r\n urlref_ts\r\n } = opt;\r\n let options = {\r\n ak: this.statData.ak,\r\n uuid: this.statData.uuid,\r\n lt: '3',\r\n ut: this.statData.ut,\r\n urlref,\r\n urlref_ts,\r\n ch: this.statData.ch,\r\n usv: this.statData.usv,\r\n t: getTime(),\r\n p: this.statData.p\r\n };\r\n this.request(options, type);\r\n }\r\n _sendEventRequest({\r\n key = '',\r\n value = \"\"\r\n } = {}) {\r\n const route = this._lastPageRoute;\r\n let options = {\r\n ak: this.statData.ak,\r\n uuid: this.statData.uuid,\r\n lt: '21',\r\n ut: this.statData.ut,\r\n url: route,\r\n ch: this.statData.ch,\r\n e_n: key,\r\n e_v: typeof(value) === 'object' ? JSON.stringify(value) : value.toString(),\r\n usv: this.statData.usv,\r\n t: getTime(),\r\n p: this.statData.p\r\n };\r\n this.request(options);\r\n }\r\n\r\n getNetworkInfo() {\r\n uni.getNetworkType({\r\n success: (result) => {\r\n this.statData.net = result.networkType;\r\n this.getLocation();\r\n }\r\n });\r\n }\r\n\r\n getProperty() {\r\n plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => {\r\n this.statData.v = wgtinfo.version || '';\r\n this.getNetworkInfo();\r\n });\r\n }\r\n\r\n getLocation() {\r\n if (statConfig.getLocation) {\r\n uni.getLocation({\r\n type: 'wgs84',\r\n geocode: true,\r\n success: (result) => {\r\n if (result.address) {\r\n this.statData.cn = result.address.country;\r\n this.statData.pn = result.address.province;\r\n this.statData.ct = result.address.city;\r\n }\r\n\r\n this.statData.lat = result.latitude;\r\n this.statData.lng = result.longitude;\r\n this.request(this.statData);\r\n }\r\n });\r\n } else {\r\n this.statData.lat = 0;\r\n this.statData.lng = 0;\r\n this.request(this.statData);\r\n }\r\n }\r\n\r\n request(data, type) {\r\n let time = getTime();\r\n const title = this._navigationBarTitle;\r\n data.ttn = title.page;\r\n data.ttpj = title.config;\r\n data.ttc = title.report;\r\n\r\n let requestData = this._reportingRequestData;\r\n if (getPlatformName() === 'n') {\r\n requestData = uni.getStorageSync('__UNI__STAT__DATA') || {};\r\n }\r\n if (!requestData[data.lt]) {\r\n requestData[data.lt] = [];\r\n }\r\n requestData[data.lt].push(data);\r\n\r\n if (getPlatformName() === 'n') {\r\n uni.setStorageSync('__UNI__STAT__DATA', requestData);\r\n }\r\n if (getPageResidenceTime() < OPERATING_TIME && !type) {\r\n return\r\n }\r\n let uniStatData = this._reportingRequestData;\r\n if (getPlatformName() === 'n') {\r\n uniStatData = uni.getStorageSync('__UNI__STAT__DATA');\r\n }\r\n // 时间超过,重新获取时间戳\r\n setPageResidenceTime();\r\n let firstArr = [];\r\n let contentArr = [];\r\n let lastArr = [];\r\n\r\n for (let i in uniStatData) {\r\n const rd = uniStatData[i];\r\n rd.forEach((elm) => {\r\n const newData = getSplicing(elm);\r\n if (i === 0) {\r\n firstArr.push(newData);\r\n } else if (i === 3) {\r\n lastArr.push(newData);\r\n } else {\r\n contentArr.push(newData);\r\n }\r\n });\r\n }\r\n\r\n firstArr.push(...contentArr, ...lastArr);\r\n let optionsData = {\r\n usv: STAT_VERSION, //统计 SDK 版本号\r\n t: time, //发送请求时的时间戮\r\n requests: JSON.stringify(firstArr),\r\n };\r\n\r\n this._reportingRequestData = {};\r\n if (getPlatformName() === 'n') {\r\n uni.removeStorageSync('__UNI__STAT__DATA');\r\n }\r\n\r\n if (data.ut === 'h5') {\r\n this.imageRequest(optionsData);\r\n return\r\n }\r\n\r\n if (getPlatformName() === 'n' && this.statData.p === 'a') {\r\n setTimeout(() => {\r\n this._sendRequest(optionsData);\r\n }, 200);\r\n return\r\n }\r\n this._sendRequest(optionsData);\r\n }\r\n _sendRequest(optionsData) {\r\n uni.request({\r\n url: STAT_URL,\r\n method: 'POST',\r\n // header: {\r\n // 'content-type': 'application/json' // 默认值\r\n // },\r\n data: optionsData,\r\n success: () => {\r\n // if (process.env.NODE_ENV === 'development') {\r\n // console.log('stat request success');\r\n // }\r\n },\r\n fail: (e) => {\r\n if (++this._retry < 3) {\r\n setTimeout(() => {\r\n this._sendRequest(optionsData);\r\n }, 1000);\r\n }\r\n }\r\n });\r\n }\r\n /**\r\n * h5 请求\r\n */\r\n imageRequest(data) {\r\n let image = new Image();\r\n let options = getSgin(GetEncodeURIComponentOptions(data)).options;\r\n image.src = STAT_H5_URL + '?' + options;\r\n }\r\n\r\n sendEvent(key, value) {\r\n // 校验 type 参数\r\n if (calibration(key, value)) return\r\n\r\n if (key === 'title') {\r\n this._navigationBarTitle.report = value;\r\n return\r\n }\r\n this._sendEventRequest({\r\n key,\r\n value: typeof(value) === 'object' ? JSON.stringify(value) : value\r\n }, 1);\r\n }\r\n}\r\n\r\n\r\nclass Stat extends Util {\r\n static getInstance() {\r\n if (!this.instance) {\r\n this.instance = new Stat();\r\n }\r\n return this.instance;\r\n }\r\n constructor() {\r\n super();\r\n this.instance = null;\r\n // 注册拦截器\r\n if (typeof uni.addInterceptor === 'function' && process.env.NODE_ENV !== 'development') {\r\n this.addInterceptorInit();\r\n this.interceptLogin();\r\n this.interceptShare(true);\r\n this.interceptRequestPayment();\r\n }\r\n }\r\n\r\n addInterceptorInit() {\r\n let self = this;\r\n uni.addInterceptor('setNavigationBarTitle', {\r\n invoke(args) {\r\n self._navigationBarTitle.page = args.title;\r\n }\r\n });\r\n }\r\n\r\n interceptLogin() {\r\n let self = this;\r\n uni.addInterceptor('login', {\r\n complete() {\r\n self._login();\r\n }\r\n });\r\n }\r\n\r\n interceptShare(type) {\r\n let self = this;\r\n if (!type) {\r\n self._share();\r\n return\r\n }\r\n uni.addInterceptor('share', {\r\n success() {\r\n self._share();\r\n },\r\n fail() {\r\n self._share();\r\n }\r\n });\r\n }\r\n\r\n interceptRequestPayment() {\r\n let self = this;\r\n uni.addInterceptor('requestPayment', {\r\n success() {\r\n self._payment('pay_success');\r\n },\r\n fail() {\r\n self._payment('pay_fail');\r\n }\r\n });\r\n }\r\n\r\n report(options, self) {\r\n this.self = self;\r\n // if (process.env.NODE_ENV === 'development') {\r\n // console.log('report init');\r\n // }\r\n setPageResidenceTime();\r\n this.__licationShow = true;\r\n this._sendReportRequest(options, true);\r\n }\r\n\r\n load(options, self) {\r\n if (!self.$scope && !self.$mp) {\r\n const page = getCurrentPages();\r\n self.$scope = page[page.length - 1];\r\n }\r\n this.self = self;\r\n this._query = options;\r\n }\r\n\r\n show(self) {\r\n this.self = self;\r\n if (getPageTypes(self)) {\r\n this._pageShow(self);\r\n } else {\r\n this._applicationShow(self);\r\n }\r\n }\r\n\r\n ready(self) {\r\n // this.self = self;\r\n // if (getPageTypes(self)) {\r\n // this._pageShow(self);\r\n // }\r\n }\r\n hide(self) {\r\n this.self = self;\r\n if (getPageTypes(self)) {\r\n this._pageHide(self);\r\n } else {\r\n this._applicationHide(self, true);\r\n }\r\n }\r\n error(em) {\r\n if (this._platform === 'devtools') {\r\n if (process.env.NODE_ENV === 'development') {\r\n console.info('当前运行环境为开发者工具,不上报数据。');\r\n }\r\n // return;\r\n }\r\n let emVal = '';\r\n if (!em.message) {\r\n emVal = JSON.stringify(em);\r\n } else {\r\n emVal = em.stack;\r\n }\r\n let options = {\r\n ak: this.statData.ak,\r\n uuid: this.statData.uuid,\r\n lt: '31',\r\n ut: this.statData.ut,\r\n ch: this.statData.ch,\r\n mpsdk: this.statData.mpsdk,\r\n mpv: this.statData.mpv,\r\n v: this.statData.v,\r\n em: emVal,\r\n usv: this.statData.usv,\r\n t: getTime(),\r\n p: this.statData.p\r\n };\r\n this.request(options);\r\n }\r\n}\r\n\r\nconst stat = Stat.getInstance();\r\nlet isHide = false;\r\nconst lifecycle = {\r\n onLaunch(options) {\r\n stat.report(options, this);\r\n },\r\n onReady() {\r\n stat.ready(this);\r\n },\r\n onLoad(options) {\r\n stat.load(options, this);\r\n // 重写分享,获取分享上报事件\r\n if (this.$scope && this.$scope.onShareAppMessage) {\r\n let oldShareAppMessage = this.$scope.onShareAppMessage;\r\n this.$scope.onShareAppMessage = function(options) {\r\n stat.interceptShare(false);\r\n return oldShareAppMessage.call(this, options)\r\n };\r\n }\r\n },\r\n onShow() {\r\n isHide = false;\r\n stat.show(this);\r\n },\r\n onHide() {\r\n isHide = true;\r\n stat.hide(this);\r\n },\r\n onUnload() {\r\n if (isHide) {\r\n isHide = false;\r\n return\r\n }\r\n stat.hide(this);\r\n },\r\n onError(e) {\r\n stat.error(e);\r\n }\r\n};\r\n\r\nfunction main() {\r\n if (process.env.NODE_ENV === 'development') {\r\n uni.report = function(type, options) {};\r\n }else{\r\n const Vue = require('vue');\r\n (Vue.default || Vue).mixin(lifecycle);\r\n uni.report = function(type, options) {\r\n stat.sendEvent(type, options);\r\n };\r\n }\r\n}\r\n\r\nmain();\r\n","export default {\"appid\":\"\"}","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode, /* vue-cli only */\n components, // fixed by xxxxxx auto components\n renderjs // fixed by xxxxxx renderjs\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // fixed by xxxxxx auto components\n if (components) {\n if (!options.components) {\n options.components = {}\n }\n var hasOwn = Object.prototype.hasOwnProperty\n for (var name in components) {\n if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {\n options.components[name] = components[name]\n }\n }\n }\n // fixed by xxxxxx renderjs\n if (renderjs) {\n (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {\n this[renderjs.__module] = this\n });\n (options.mixins || (options.mixins = [])).push(renderjs)\n }\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n"],"sourceRoot":""}
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/.sourcemap/mp-weixin/pages/cart/cart.js.map
... ... @@ -0,0 +1 @@
  1 +{"version":3,"sources":["webpack:///C:/Users/Administrator/Desktop/gulu-vue/main.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?f7b9","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?b2d1","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?13ac","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?fa41","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?0969","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?8f1f"],"names":["createPage","Page","data","title","onLoad","methods"],"mappings":";;;;;;;;;;kDAAA,wCAAmB;AACnB;AACA,yF;AACAA,UAAU,CAACC,aAAD,CAAV,C;;;;;;;;;;;;;ACHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAiH;AACjH;AACwD;AACL;AACa;;;AAGhE;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,0EAAM;AACR,EAAE,+EAAM;AACR,EAAE,wFAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,mFAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACRA;AAAA;AAAA;AAAA;AAA8lB,CAAgB,wnBAAG,EAAC,C;;;;;;;;;;;;wFCAlnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACdC,MADc,kBACP;AACN,WAAO;AACNC,WAAK,EAAE,OADD,EAAP;;AAGA,GALa;AAMdC,QANc,oBAML;;AAER,GARa;AASdC,SAAO,EAAE,EATK,E;;;;;;;;;;;;ACVf;AAAA;AAAA;AAAA;AAAg3B,CAAgB,i3BAAG,EAAC,C;;;;;;;;;;;ACAp4B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/cart/cart.js","sourcesContent":["import 'uni-pages';import '@dcloudio/uni-stat';\nimport Vue from 'vue'\nimport Page from './pages/cart/cart.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./cart.vue?vue&type=template&id=2e8f6dbb&\"\nvar renderjs\nimport script from \"./cart.vue?vue&type=script&lang=js&\"\nexport * from \"./cart.vue?vue&type=script&lang=js&\"\nimport style0 from \"./cart.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\runtime\\\\componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue\"\nexport default component.exports","export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\templateLoader.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--16-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\template.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-uni-app-loader\\\\page-meta.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./cart.vue?vue&type=template&id=2e8f6dbb&\"","var components\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./cart.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./cart.vue?vue&type=script&lang=js&\"","//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\ttitle: 'Hello'\n\t\t}\n\t},\n\tonLoad() {\n\n\t},\n\tmethods: {\n\n\t}\n}\n","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./cart.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./cart.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1587797864423\n var cssReload = require(\"D:/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""}
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
... ... @@ -0,0 +1 @@
  1 +{"version":3,"sources":["webpack:///C:/Users/Administrator/Desktop/gulu-vue/main.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?d486","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?527c","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?fc76","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?bfc3","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?9173","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?e11c"],"names":["createPage","Page","data","title","onLoad","methods"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;kDAAA,wCAAmB;AACnB;AACA,4F;AACAA,UAAU,CAACC,cAAD,CAAV,C;;;;;;;;;;;;ACHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkH;AAClH;AACyD;AACL;AACa;;;AAGjE;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,2EAAM;AACR,EAAE,gFAAM;AACR,EAAE,yFAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,oFAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACRA;AAAA;AAAA;AAAA;AAA+lB,CAAgB,ynBAAG,EAAC,C;;;;;;;;;;;wFCAnnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACdC,MADc,kBACP;AACN,WAAO;AACNC,WAAK,EAAE,OADD,EAAP;;AAGA,GALa;AAMdC,QANc,oBAML;;AAER,GARa;AASdC,SAAO,EAAE,EATK,E;;;;;;;;;;;ACZf;AAAA;AAAA;AAAA;AAAi3B,CAAgB,k3BAAG,EAAC,C;;;;;;;;;;ACAr4B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/index/index.js","sourcesContent":["import 'uni-pages';import '@dcloudio/uni-stat';\nimport Vue from 'vue'\nimport Page from './pages/index/index.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./index.vue?vue&type=template&id=74c52b3e&\"\nvar renderjs\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\runtime\\\\componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue\"\nexport default component.exports","export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\templateLoader.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--16-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\template.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-uni-app-loader\\\\page-meta.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./index.vue?vue&type=template&id=74c52b3e&\"","var components\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./index.vue?vue&type=script&lang=js&\"","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\ttitle: 'Hello'\n\t\t}\n\t},\n\tonLoad() {\n\n\t},\n\tmethods: {\n\n\t}\n}\n","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./index.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./index.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1587797864412\n var cssReload = require(\"D:/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""}
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/user.js.map
... ... @@ -0,0 +1 @@
  1 +{"version":3,"sources":["webpack:///C:/Users/Administrator/Desktop/gulu-vue/main.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?effd","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?94bd","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?36f8","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?b440","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?97d3","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?17b1"],"names":["createPage","Page","data","title","onLoad","methods"],"mappings":";;;;;;;;;;kDAAA,wCAAmB;AACnB;AACA,yF;AACAA,UAAU,CAACC,aAAD,CAAV,C;;;;;;;;;;;;;ACHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAiH;AACjH;AACwD;AACL;AACa;;;AAGhE;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,0EAAM;AACR,EAAE,+EAAM;AACR,EAAE,wFAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,mFAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACRA;AAAA;AAAA;AAAA;AAA8lB,CAAgB,wnBAAG,EAAC,C;;;;;;;;;;;;wFCAlnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACdC,MADc,kBACP;AACN,WAAO;AACNC,WAAK,EAAE,OADD,EAAP;;AAGA,GALa;AAMdC,QANc,oBAML;;AAER,GARa;AASdC,SAAO,EAAE,EATK,E;;;;;;;;;;;;ACVf;AAAA;AAAA;AAAA;AAAg3B,CAAgB,i3BAAG,EAAC,C;;;;;;;;;;;ACAp4B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/user/user.js","sourcesContent":["import 'uni-pages';import '@dcloudio/uni-stat';\nimport Vue from 'vue'\nimport Page from './pages/user/user.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./user.vue?vue&type=template&id=14649eca&\"\nvar renderjs\nimport script from \"./user.vue?vue&type=script&lang=js&\"\nexport * from \"./user.vue?vue&type=script&lang=js&\"\nimport style0 from \"./user.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\runtime\\\\componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue\"\nexport default component.exports","export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\templateLoader.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--16-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\template.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-uni-app-loader\\\\page-meta.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./user.vue?vue&type=template&id=14649eca&\"","var components\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./user.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./user.vue?vue&type=script&lang=js&\"","//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\ttitle: 'Hello'\n\t\t}\n\t},\n\tonLoad() {\n\n\t},\n\tmethods: {\n\n\t}\n}\n","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./user.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./user.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1587797864426\n var cssReload = require(\"D:/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""}
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/app.js
... ... @@ -0,0 +1,4 @@
  1 +
  2 +require('./common/runtime.js')
  3 +require('./common/vendor.js')
  4 +require('./common/main.js')
0 5 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/app.json
... ... @@ -0,0 +1,42 @@
  1 +{
  2 + "pages": [
  3 + "pages/index/index",
  4 + "pages/cart/cart",
  5 + "pages/user/user"
  6 + ],
  7 + "subPackages": [],
  8 + "window": {
  9 + "navigationBarTextStyle": "black",
  10 + "navigationBarTitleText": "uni-app",
  11 + "navigationBarBackgroundColor": "#F8F8F8",
  12 + "backgroundColor": "#F8F8F8"
  13 + },
  14 + "tabBar": {
  15 + "color": "#C0C4CC",
  16 + "selectedColor": "#fa436a",
  17 + "borderStyle": "black",
  18 + "backgroundColor": "#ffffff",
  19 + "list": [
  20 + {
  21 + "pagePath": "pages/index/index",
  22 + "iconPath": "static/tab-home.png",
  23 + "selectedIconPath": "static/tab-home-current.png",
  24 + "text": "首页"
  25 + },
  26 + {
  27 + "pagePath": "pages/cart/cart",
  28 + "iconPath": "static/tab-cart.png",
  29 + "selectedIconPath": "static/tab-cart-current.png",
  30 + "text": "购物车"
  31 + },
  32 + {
  33 + "pagePath": "pages/user/user",
  34 + "iconPath": "static/tab-my.png",
  35 + "selectedIconPath": "static/tab-my-current.png",
  36 + "text": "我的"
  37 + }
  38 + ]
  39 + },
  40 + "usingComponents": {},
  41 + "sitemapLocation": "sitemap7.json"
  42 +}
0 43 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/app.wxss
... ... @@ -0,0 +1 @@
  1 +@import './common/main.wxss';
... ...
unpackage/dist/dev/mp-weixin/common/main.js
... ... @@ -0,0 +1,135 @@
  1 +(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/main"],[
  2 +/* 0 */
  3 +/*!*******************************************************!*\
  4 + !*** C:/Users/Administrator/Desktop/gulu-vue/main.js ***!
  5 + \*******************************************************/
  6 +/*! no static exports found */
  7 +/***/ (function(module, exports, __webpack_require__) {
  8 +
  9 +"use strict";
  10 +/* WEBPACK VAR INJECTION */(function(createApp) {__webpack_require__(/*! uni-pages */ 4);__webpack_require__(/*! @dcloudio/uni-stat */ 5);var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));
  11 +var _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 9));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function ownKeys(object, enumerableOnly) {var keys = Object.keys(object);if (Object.getOwnPropertySymbols) {var symbols = Object.getOwnPropertySymbols(object);if (enumerableOnly) symbols = symbols.filter(function (sym) {return Object.getOwnPropertyDescriptor(object, sym).enumerable;});keys.push.apply(keys, symbols);}return keys;}function _objectSpread(target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i] != null ? arguments[i] : {};if (i % 2) {ownKeys(Object(source), true).forEach(function (key) {_defineProperty(target, key, source[key]);});} else if (Object.getOwnPropertyDescriptors) {Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));} else {ownKeys(Object(source)).forEach(function (key) {Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));});}}return target;}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}
  12 +
  13 +_vue.default.config.productionTip = false;
  14 +
  15 +_App.default.mpType = 'app';
  16 +
  17 +var app = new _vue.default(_objectSpread({},
  18 +_App.default));
  19 +
  20 +createApp(app).$mount();
  21 +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["createApp"]))
  22 +
  23 +/***/ }),
  24 +/* 1 */,
  25 +/* 2 */,
  26 +/* 3 */,
  27 +/* 4 */,
  28 +/* 5 */,
  29 +/* 6 */,
  30 +/* 7 */,
  31 +/* 8 */,
  32 +/* 9 */
  33 +/*!*******************************************************!*\
  34 + !*** C:/Users/Administrator/Desktop/gulu-vue/App.vue ***!
  35 + \*******************************************************/
  36 +/*! no static exports found */
  37 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  38 +
  39 +"use strict";
  40 +__webpack_require__.r(__webpack_exports__);
  41 +/* harmony import */ var _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./App.vue?vue&type=script&lang=js& */ 10);
  42 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  43 +/* harmony import */ var _App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./App.vue?vue&type=style&index=0&lang=css& */ 12);
  44 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 14);
  45 +var render, staticRenderFns, recyclableRender, components
  46 +var renderjs
  47 +
  48 +
  49 +
  50 +
  51 +
  52 +/* normalize component */
  53 +
  54 +var component = Object(_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
  55 + _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"],
  56 + render,
  57 + staticRenderFns,
  58 + false,
  59 + null,
  60 + null,
  61 + null,
  62 + false,
  63 + components,
  64 + renderjs
  65 +)
  66 +
  67 +component.options.__file = "C:/Users/Administrator/Desktop/gulu-vue/App.vue"
  68 +/* harmony default export */ __webpack_exports__["default"] = (component.exports);
  69 +
  70 +/***/ }),
  71 +/* 10 */
  72 +/*!********************************************************************************!*\
  73 + !*** C:/Users/Administrator/Desktop/gulu-vue/App.vue?vue&type=script&lang=js& ***!
  74 + \********************************************************************************/
  75 +/*! no static exports found */
  76 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  77 +
  78 +"use strict";
  79 +__webpack_require__.r(__webpack_exports__);
  80 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=script&lang=js& */ 11);
  81 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  82 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  83 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  84 +
  85 +/***/ }),
  86 +/* 11 */
  87 +/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  88 + !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/App.vue?vue&type=script&lang=js& ***!
  89 + \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  90 +/*! no static exports found */
  91 +/***/ (function(module, exports, __webpack_require__) {
  92 +
  93 +"use strict";
  94 +Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default =
  95 +{
  96 + onLaunch: function onLaunch() {
  97 + console.log('App Launch');
  98 + },
  99 + onShow: function onShow() {
  100 + console.log('App Show');
  101 + },
  102 + onHide: function onHide() {
  103 + console.log('App Hide');
  104 + } };exports.default = _default;
  105 +
  106 +/***/ }),
  107 +/* 12 */
  108 +/*!****************************************************************************************!*\
  109 + !*** C:/Users/Administrator/Desktop/gulu-vue/App.vue?vue&type=style&index=0&lang=css& ***!
  110 + \****************************************************************************************/
  111 +/*! no static exports found */
  112 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  113 +
  114 +"use strict";
  115 +__webpack_require__.r(__webpack_exports__);
  116 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=css& */ 13);
  117 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  118 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  119 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
  120 +
  121 +/***/ }),
  122 +/* 13 */
  123 +/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  124 + !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/App.vue?vue&type=style&index=0&lang=css& ***!
  125 + \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  126 +/*! no static exports found */
  127 +/***/ (function(module, exports, __webpack_require__) {
  128 +
  129 +// extracted by mini-css-extract-plugin
  130 + if(false) { var cssReload; }
  131 +
  132 +
  133 +/***/ })
  134 +],[[0,"common/runtime","common/vendor"]]]);
  135 +//# sourceMappingURL=../../.sourcemap/mp-weixin/common/main.js.map
0 136 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/common/main.wxss
... ... @@ -0,0 +1,17 @@
  1 +
  2 +
  3 +
  4 +
  5 +
  6 +
  7 +
  8 +
  9 +
  10 +
  11 +
  12 +
  13 +
  14 +
  15 +
  16 +/*每个页面公共css */
  17 +
... ...
unpackage/dist/dev/mp-weixin/common/runtime.js
... ... @@ -0,0 +1,157 @@
  1 +
  2 + !function(){try{var a=Function("return this")();a&&!a.Math&&(Object.assign(a,{isFinite:isFinite,Array:Array,Date:Date,Error:Error,Function:Function,Math:Math,Object:Object,RegExp:RegExp,String:String,TypeError:TypeError,setTimeout:setTimeout,clearTimeout:clearTimeout,setInterval:setInterval,clearInterval:clearInterval}),"undefined"!=typeof Reflect&&(a.Reflect=Reflect))}catch(a){}}();
  3 + /******/ (function(modules) { // webpackBootstrap
  4 +/******/ // install a JSONP callback for chunk loading
  5 +/******/ function webpackJsonpCallback(data) {
  6 +/******/ var chunkIds = data[0];
  7 +/******/ var moreModules = data[1];
  8 +/******/ var executeModules = data[2];
  9 +/******/
  10 +/******/ // add "moreModules" to the modules object,
  11 +/******/ // then flag all "chunkIds" as loaded and fire callback
  12 +/******/ var moduleId, chunkId, i = 0, resolves = [];
  13 +/******/ for(;i < chunkIds.length; i++) {
  14 +/******/ chunkId = chunkIds[i];
  15 +/******/ if(installedChunks[chunkId]) {
  16 +/******/ resolves.push(installedChunks[chunkId][0]);
  17 +/******/ }
  18 +/******/ installedChunks[chunkId] = 0;
  19 +/******/ }
  20 +/******/ for(moduleId in moreModules) {
  21 +/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
  22 +/******/ modules[moduleId] = moreModules[moduleId];
  23 +/******/ }
  24 +/******/ }
  25 +/******/ if(parentJsonpFunction) parentJsonpFunction(data);
  26 +/******/
  27 +/******/ while(resolves.length) {
  28 +/******/ resolves.shift()();
  29 +/******/ }
  30 +/******/
  31 +/******/ // add entry modules from loaded chunk to deferred list
  32 +/******/ deferredModules.push.apply(deferredModules, executeModules || []);
  33 +/******/
  34 +/******/ // run deferred modules when all chunks ready
  35 +/******/ return checkDeferredModules();
  36 +/******/ };
  37 +/******/ function checkDeferredModules() {
  38 +/******/ var result;
  39 +/******/ for(var i = 0; i < deferredModules.length; i++) {
  40 +/******/ var deferredModule = deferredModules[i];
  41 +/******/ var fulfilled = true;
  42 +/******/ for(var j = 1; j < deferredModule.length; j++) {
  43 +/******/ var depId = deferredModule[j];
  44 +/******/ if(installedChunks[depId] !== 0) fulfilled = false;
  45 +/******/ }
  46 +/******/ if(fulfilled) {
  47 +/******/ deferredModules.splice(i--, 1);
  48 +/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
  49 +/******/ }
  50 +/******/ }
  51 +/******/ return result;
  52 +/******/ }
  53 +/******/
  54 +/******/ // The module cache
  55 +/******/ var installedModules = {};
  56 +/******/
  57 +/******/ // object to store loaded and loading chunks
  58 +/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
  59 +/******/ // Promise = chunk loading, 0 = chunk loaded
  60 +/******/ var installedChunks = {
  61 +/******/ "common/runtime": 0
  62 +/******/ };
  63 +/******/
  64 +/******/ var deferredModules = [];
  65 +/******/
  66 +/******/ // The require function
  67 +/******/ function __webpack_require__(moduleId) {
  68 +/******/
  69 +/******/ // Check if module is in cache
  70 +/******/ if(installedModules[moduleId]) {
  71 +/******/ return installedModules[moduleId].exports;
  72 +/******/ }
  73 +/******/ // Create a new module (and put it into the cache)
  74 +/******/ var module = installedModules[moduleId] = {
  75 +/******/ i: moduleId,
  76 +/******/ l: false,
  77 +/******/ exports: {}
  78 +/******/ };
  79 +/******/
  80 +/******/ // Execute the module function
  81 +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
  82 +/******/
  83 +/******/ // Flag the module as loaded
  84 +/******/ module.l = true;
  85 +/******/
  86 +/******/ // Return the exports of the module
  87 +/******/ return module.exports;
  88 +/******/ }
  89 +/******/
  90 +/******/
  91 +/******/ // expose the modules object (__webpack_modules__)
  92 +/******/ __webpack_require__.m = modules;
  93 +/******/
  94 +/******/ // expose the module cache
  95 +/******/ __webpack_require__.c = installedModules;
  96 +/******/
  97 +/******/ // define getter function for harmony exports
  98 +/******/ __webpack_require__.d = function(exports, name, getter) {
  99 +/******/ if(!__webpack_require__.o(exports, name)) {
  100 +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
  101 +/******/ }
  102 +/******/ };
  103 +/******/
  104 +/******/ // define __esModule on exports
  105 +/******/ __webpack_require__.r = function(exports) {
  106 +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
  107 +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
  108 +/******/ }
  109 +/******/ Object.defineProperty(exports, '__esModule', { value: true });
  110 +/******/ };
  111 +/******/
  112 +/******/ // create a fake namespace object
  113 +/******/ // mode & 1: value is a module id, require it
  114 +/******/ // mode & 2: merge all properties of value into the ns
  115 +/******/ // mode & 4: return value when already ns object
  116 +/******/ // mode & 8|1: behave like require
  117 +/******/ __webpack_require__.t = function(value, mode) {
  118 +/******/ if(mode & 1) value = __webpack_require__(value);
  119 +/******/ if(mode & 8) return value;
  120 +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
  121 +/******/ var ns = Object.create(null);
  122 +/******/ __webpack_require__.r(ns);
  123 +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
  124 +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
  125 +/******/ return ns;
  126 +/******/ };
  127 +/******/
  128 +/******/ // getDefaultExport function for compatibility with non-harmony modules
  129 +/******/ __webpack_require__.n = function(module) {
  130 +/******/ var getter = module && module.__esModule ?
  131 +/******/ function getDefault() { return module['default']; } :
  132 +/******/ function getModuleExports() { return module; };
  133 +/******/ __webpack_require__.d(getter, 'a', getter);
  134 +/******/ return getter;
  135 +/******/ };
  136 +/******/
  137 +/******/ // Object.prototype.hasOwnProperty.call
  138 +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
  139 +/******/
  140 +/******/ // __webpack_public_path__
  141 +/******/ __webpack_require__.p = "/";
  142 +/******/
  143 +/******/ var jsonpArray = global["webpackJsonp"] = global["webpackJsonp"] || [];
  144 +/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
  145 +/******/ jsonpArray.push = webpackJsonpCallback;
  146 +/******/ jsonpArray = jsonpArray.slice();
  147 +/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
  148 +/******/ var parentJsonpFunction = oldJsonpFunction;
  149 +/******/
  150 +/******/
  151 +/******/ // run deferred modules from other chunks
  152 +/******/ checkDeferredModules();
  153 +/******/ })
  154 +/************************************************************************/
  155 +/******/ ([]);
  156 +//# sourceMappingURL=../../.sourcemap/mp-weixin/common/runtime.js.map
  157 +
0 158 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/common/vendor.js
Changes suppressed. Click to show
... ... @@ -0,0 +1,8682 @@
  1 +(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/vendor"],[
  2 +/* 0 */,
  3 +/* 1 */
  4 +/*!************************************************************!*\
  5 + !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js ***!
  6 + \************************************************************/
  7 +/*! no static exports found */
  8 +/***/ (function(module, exports, __webpack_require__) {
  9 +
  10 +"use strict";
  11 +Object.defineProperty(exports, "__esModule", { value: true });exports.createApp = createApp;exports.createComponent = createComponent;exports.createPage = createPage;exports.default = void 0;var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function ownKeys(object, enumerableOnly) {var keys = Object.keys(object);if (Object.getOwnPropertySymbols) {var symbols = Object.getOwnPropertySymbols(object);if (enumerableOnly) symbols = symbols.filter(function (sym) {return Object.getOwnPropertyDescriptor(object, sym).enumerable;});keys.push.apply(keys, symbols);}return keys;}function _objectSpread(target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i] != null ? arguments[i] : {};if (i % 2) {ownKeys(Object(source), true).forEach(function (key) {_defineProperty(target, key, source[key]);});} else if (Object.getOwnPropertyDescriptors) {Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));} else {ownKeys(Object(source)).forEach(function (key) {Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));});}}return target;}function _slicedToArray(arr, i) {return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();}function _nonIterableRest() {throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArrayLimit(arr, i) {if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"] != null) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}function _arrayWithHoles(arr) {if (Array.isArray(arr)) return arr;}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _toConsumableArray(arr) {return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();}function _nonIterableSpread() {throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o, minLen) {if (!o) return;if (typeof o === "string") return _arrayLikeToArray(o, minLen);var n = Object.prototype.toString.call(o).slice(8, -1);if (n === "Object" && o.constructor) n = o.constructor.name;if (n === "Map" || n === "Set") return Array.from(n);if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);}function _iterableToArray(iter) {if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);}function _arrayWithoutHoles(arr) {if (Array.isArray(arr)) return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr, len) {if (len == null || len > arr.length) len = arr.length;for (var i = 0, arr2 = new Array(len); i < len; i++) {arr2[i] = arr[i];}return arr2;}
  12 +
  13 +var _toString = Object.prototype.toString;
  14 +var hasOwnProperty = Object.prototype.hasOwnProperty;
  15 +
  16 +function isFn(fn) {
  17 + return typeof fn === 'function';
  18 +}
  19 +
  20 +function isStr(str) {
  21 + return typeof str === 'string';
  22 +}
  23 +
  24 +function isPlainObject(obj) {
  25 + return _toString.call(obj) === '[object Object]';
  26 +}
  27 +
  28 +function hasOwn(obj, key) {
  29 + return hasOwnProperty.call(obj, key);
  30 +}
  31 +
  32 +function noop() {}
  33 +
  34 +/**
  35 + * Create a cached version of a pure function.
  36 + */
  37 +function cached(fn) {
  38 + var cache = Object.create(null);
  39 + return function cachedFn(str) {
  40 + var hit = cache[str];
  41 + return hit || (cache[str] = fn(str));
  42 + };
  43 +}
  44 +
  45 +/**
  46 + * Camelize a hyphen-delimited string.
  47 + */
  48 +var camelizeRE = /-(\w)/g;
  49 +var camelize = cached(function (str) {
  50 + return str.replace(camelizeRE, function (_, c) {return c ? c.toUpperCase() : '';});
  51 +});
  52 +
  53 +var HOOKS = [
  54 +'invoke',
  55 +'success',
  56 +'fail',
  57 +'complete',
  58 +'returnValue'];
  59 +
  60 +
  61 +var globalInterceptors = {};
  62 +var scopedInterceptors = {};
  63 +
  64 +function mergeHook(parentVal, childVal) {
  65 + var res = childVal ?
  66 + parentVal ?
  67 + parentVal.concat(childVal) :
  68 + Array.isArray(childVal) ?
  69 + childVal : [childVal] :
  70 + parentVal;
  71 + return res ?
  72 + dedupeHooks(res) :
  73 + res;
  74 +}
  75 +
  76 +function dedupeHooks(hooks) {
  77 + var res = [];
  78 + for (var i = 0; i < hooks.length; i++) {
  79 + if (res.indexOf(hooks[i]) === -1) {
  80 + res.push(hooks[i]);
  81 + }
  82 + }
  83 + return res;
  84 +}
  85 +
  86 +function removeHook(hooks, hook) {
  87 + var index = hooks.indexOf(hook);
  88 + if (index !== -1) {
  89 + hooks.splice(index, 1);
  90 + }
  91 +}
  92 +
  93 +function mergeInterceptorHook(interceptor, option) {
  94 + Object.keys(option).forEach(function (hook) {
  95 + if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
  96 + interceptor[hook] = mergeHook(interceptor[hook], option[hook]);
  97 + }
  98 + });
  99 +}
  100 +
  101 +function removeInterceptorHook(interceptor, option) {
  102 + if (!interceptor || !option) {
  103 + return;
  104 + }
  105 + Object.keys(option).forEach(function (hook) {
  106 + if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
  107 + removeHook(interceptor[hook], option[hook]);
  108 + }
  109 + });
  110 +}
  111 +
  112 +function addInterceptor(method, option) {
  113 + if (typeof method === 'string' && isPlainObject(option)) {
  114 + mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);
  115 + } else if (isPlainObject(method)) {
  116 + mergeInterceptorHook(globalInterceptors, method);
  117 + }
  118 +}
  119 +
  120 +function removeInterceptor(method, option) {
  121 + if (typeof method === 'string') {
  122 + if (isPlainObject(option)) {
  123 + removeInterceptorHook(scopedInterceptors[method], option);
  124 + } else {
  125 + delete scopedInterceptors[method];
  126 + }
  127 + } else if (isPlainObject(method)) {
  128 + removeInterceptorHook(globalInterceptors, method);
  129 + }
  130 +}
  131 +
  132 +function wrapperHook(hook) {
  133 + return function (data) {
  134 + return hook(data) || data;
  135 + };
  136 +}
  137 +
  138 +function isPromise(obj) {
  139 + return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
  140 +}
  141 +
  142 +function queue(hooks, data) {
  143 + var promise = false;
  144 + for (var i = 0; i < hooks.length; i++) {
  145 + var hook = hooks[i];
  146 + if (promise) {
  147 + promise = Promise.then(wrapperHook(hook));
  148 + } else {
  149 + var res = hook(data);
  150 + if (isPromise(res)) {
  151 + promise = Promise.resolve(res);
  152 + }
  153 + if (res === false) {
  154 + return {
  155 + then: function then() {} };
  156 +
  157 + }
  158 + }
  159 + }
  160 + return promise || {
  161 + then: function then(callback) {
  162 + return callback(data);
  163 + } };
  164 +
  165 +}
  166 +
  167 +function wrapperOptions(interceptor) {var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  168 + ['success', 'fail', 'complete'].forEach(function (name) {
  169 + if (Array.isArray(interceptor[name])) {
  170 + var oldCallback = options[name];
  171 + options[name] = function callbackInterceptor(res) {
  172 + queue(interceptor[name], res).then(function (res) {
  173 + /* eslint-disable no-mixed-operators */
  174 + return isFn(oldCallback) && oldCallback(res) || res;
  175 + });
  176 + };
  177 + }
  178 + });
  179 + return options;
  180 +}
  181 +
  182 +function wrapperReturnValue(method, returnValue) {
  183 + var returnValueHooks = [];
  184 + if (Array.isArray(globalInterceptors.returnValue)) {
  185 + returnValueHooks.push.apply(returnValueHooks, _toConsumableArray(globalInterceptors.returnValue));
  186 + }
  187 + var interceptor = scopedInterceptors[method];
  188 + if (interceptor && Array.isArray(interceptor.returnValue)) {
  189 + returnValueHooks.push.apply(returnValueHooks, _toConsumableArray(interceptor.returnValue));
  190 + }
  191 + returnValueHooks.forEach(function (hook) {
  192 + returnValue = hook(returnValue) || returnValue;
  193 + });
  194 + return returnValue;
  195 +}
  196 +
  197 +function getApiInterceptorHooks(method) {
  198 + var interceptor = Object.create(null);
  199 + Object.keys(globalInterceptors).forEach(function (hook) {
  200 + if (hook !== 'returnValue') {
  201 + interceptor[hook] = globalInterceptors[hook].slice();
  202 + }
  203 + });
  204 + var scopedInterceptor = scopedInterceptors[method];
  205 + if (scopedInterceptor) {
  206 + Object.keys(scopedInterceptor).forEach(function (hook) {
  207 + if (hook !== 'returnValue') {
  208 + interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);
  209 + }
  210 + });
  211 + }
  212 + return interceptor;
  213 +}
  214 +
  215 +function invokeApi(method, api, options) {for (var _len = arguments.length, params = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {params[_key - 3] = arguments[_key];}
  216 + var interceptor = getApiInterceptorHooks(method);
  217 + if (interceptor && Object.keys(interceptor).length) {
  218 + if (Array.isArray(interceptor.invoke)) {
  219 + var res = queue(interceptor.invoke, options);
  220 + return res.then(function (options) {
  221 + return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
  222 + });
  223 + } else {
  224 + return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
  225 + }
  226 + }
  227 + return api.apply(void 0, [options].concat(params));
  228 +}
  229 +
  230 +var promiseInterceptor = {
  231 + returnValue: function returnValue(res) {
  232 + if (!isPromise(res)) {
  233 + return res;
  234 + }
  235 + return res.then(function (res) {
  236 + return res[1];
  237 + }).catch(function (res) {
  238 + return res[0];
  239 + });
  240 + } };
  241 +
  242 +
  243 +var SYNC_API_RE =
  244 +/^\$|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
  245 +
  246 +var CONTEXT_API_RE = /^create|Manager$/;
  247 +
  248 +// Context例外情况
  249 +var CONTEXT_API_RE_EXC = ['createBLEConnection'];
  250 +
  251 +// 同步例外情况
  252 +var ASYNC_API = ['createBLEConnection'];
  253 +
  254 +var CALLBACK_API_RE = /^on|^off/;
  255 +
  256 +function isContextApi(name) {
  257 + return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1;
  258 +}
  259 +function isSyncApi(name) {
  260 + return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;
  261 +}
  262 +
  263 +function isCallbackApi(name) {
  264 + return CALLBACK_API_RE.test(name) && name !== 'onPush';
  265 +}
  266 +
  267 +function handlePromise(promise) {
  268 + return promise.then(function (data) {
  269 + return [null, data];
  270 + }).
  271 + catch(function (err) {return [err];});
  272 +}
  273 +
  274 +function shouldPromise(name) {
  275 + if (
  276 + isContextApi(name) ||
  277 + isSyncApi(name) ||
  278 + isCallbackApi(name))
  279 + {
  280 + return false;
  281 + }
  282 + return true;
  283 +}
  284 +
  285 +/* eslint-disable no-extend-native */
  286 +if (!Promise.prototype.finally) {
  287 + Promise.prototype.finally = function (callback) {
  288 + var promise = this.constructor;
  289 + return this.then(
  290 + function (value) {return promise.resolve(callback()).then(function () {return value;});},
  291 + function (reason) {return promise.resolve(callback()).then(function () {
  292 + throw reason;
  293 + });});
  294 +
  295 + };
  296 +}
  297 +
  298 +function promisify(name, api) {
  299 + if (!shouldPromise(name)) {
  300 + return api;
  301 + }
  302 + return function promiseApi() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {params[_key2 - 1] = arguments[_key2];}
  303 + if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {
  304 + return wrapperReturnValue(name, invokeApi.apply(void 0, [name, api, options].concat(params)));
  305 + }
  306 + return wrapperReturnValue(name, handlePromise(new Promise(function (resolve, reject) {
  307 + invokeApi.apply(void 0, [name, api, Object.assign({}, options, {
  308 + success: resolve,
  309 + fail: reject })].concat(
  310 + params));
  311 + })));
  312 + };
  313 +}
  314 +
  315 +var EPS = 1e-4;
  316 +var BASE_DEVICE_WIDTH = 750;
  317 +var isIOS = false;
  318 +var deviceWidth = 0;
  319 +var deviceDPR = 0;
  320 +
  321 +function checkDeviceWidth() {var _wx$getSystemInfoSync =
  322 +
  323 +
  324 +
  325 +
  326 + wx.getSystemInfoSync(),platform = _wx$getSystemInfoSync.platform,pixelRatio = _wx$getSystemInfoSync.pixelRatio,windowWidth = _wx$getSystemInfoSync.windowWidth; // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni
  327 +
  328 + deviceWidth = windowWidth;
  329 + deviceDPR = pixelRatio;
  330 + isIOS = platform === 'ios';
  331 +}
  332 +
  333 +function upx2px(number, newDeviceWidth) {
  334 + if (deviceWidth === 0) {
  335 + checkDeviceWidth();
  336 + }
  337 +
  338 + number = Number(number);
  339 + if (number === 0) {
  340 + return 0;
  341 + }
  342 + var result = number / BASE_DEVICE_WIDTH * (newDeviceWidth || deviceWidth);
  343 + if (result < 0) {
  344 + result = -result;
  345 + }
  346 + result = Math.floor(result + EPS);
  347 + if (result === 0) {
  348 + if (deviceDPR === 1 || !isIOS) {
  349 + return 1;
  350 + } else {
  351 + return 0.5;
  352 + }
  353 + }
  354 + return number < 0 ? -result : result;
  355 +}
  356 +
  357 +var interceptors = {
  358 + promiseInterceptor: promiseInterceptor };
  359 +
  360 +
  361 +var baseApi = /*#__PURE__*/Object.freeze({
  362 + __proto__: null,
  363 + upx2px: upx2px,
  364 + addInterceptor: addInterceptor,
  365 + removeInterceptor: removeInterceptor,
  366 + interceptors: interceptors });
  367 +
  368 +
  369 +var previewImage = {
  370 + args: function args(fromArgs) {
  371 + var currentIndex = parseInt(fromArgs.current);
  372 + if (isNaN(currentIndex)) {
  373 + return;
  374 + }
  375 + var urls = fromArgs.urls;
  376 + if (!Array.isArray(urls)) {
  377 + return;
  378 + }
  379 + var len = urls.length;
  380 + if (!len) {
  381 + return;
  382 + }
  383 + if (currentIndex < 0) {
  384 + currentIndex = 0;
  385 + } else if (currentIndex >= len) {
  386 + currentIndex = len - 1;
  387 + }
  388 + if (currentIndex > 0) {
  389 + fromArgs.current = urls[currentIndex];
  390 + fromArgs.urls = urls.filter(
  391 + function (item, index) {return index < currentIndex ? item !== urls[currentIndex] : true;});
  392 +
  393 + } else {
  394 + fromArgs.current = urls[0];
  395 + }
  396 + return {
  397 + indicator: false,
  398 + loop: false };
  399 +
  400 + } };
  401 +
  402 +
  403 +function addSafeAreaInsets(result) {
  404 + if (result.safeArea) {
  405 + var safeArea = result.safeArea;
  406 + result.safeAreaInsets = {
  407 + top: safeArea.top,
  408 + left: safeArea.left,
  409 + right: result.windowWidth - safeArea.right,
  410 + bottom: result.windowHeight - safeArea.bottom };
  411 +
  412 + }
  413 +}
  414 +var protocols = {
  415 + previewImage: previewImage,
  416 + getSystemInfo: {
  417 + returnValue: addSafeAreaInsets },
  418 +
  419 + getSystemInfoSync: {
  420 + returnValue: addSafeAreaInsets } };
  421 +
  422 +
  423 +var todos = [
  424 +'vibrate'];
  425 +
  426 +var canIUses = [];
  427 +
  428 +var CALLBACKS = ['success', 'fail', 'cancel', 'complete'];
  429 +
  430 +function processCallback(methodName, method, returnValue) {
  431 + return function (res) {
  432 + return method(processReturnValue(methodName, res, returnValue));
  433 + };
  434 +}
  435 +
  436 +function processArgs(methodName, fromArgs) {var argsOption = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};var returnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};var keepFromArgs = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
  437 + if (isPlainObject(fromArgs)) {// 一般 api 的参数解析
  438 + var toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值
  439 + if (isFn(argsOption)) {
  440 + argsOption = argsOption(fromArgs, toArgs) || {};
  441 + }
  442 + for (var key in fromArgs) {
  443 + if (hasOwn(argsOption, key)) {
  444 + var keyOption = argsOption[key];
  445 + if (isFn(keyOption)) {
  446 + keyOption = keyOption(fromArgs[key], fromArgs, toArgs);
  447 + }
  448 + if (!keyOption) {// 不支持的参数
  449 + console.warn("\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F ".concat(methodName, "\u6682\u4E0D\u652F\u6301").concat(key));
  450 + } else if (isStr(keyOption)) {// 重写参数 key
  451 + toArgs[keyOption] = fromArgs[key];
  452 + } else if (isPlainObject(keyOption)) {// {name:newName,value:value}可重新指定参数 key:value
  453 + toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;
  454 + }
  455 + } else if (CALLBACKS.indexOf(key) !== -1) {
  456 + toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);
  457 + } else {
  458 + if (!keepFromArgs) {
  459 + toArgs[key] = fromArgs[key];
  460 + }
  461 + }
  462 + }
  463 + return toArgs;
  464 + } else if (isFn(fromArgs)) {
  465 + fromArgs = processCallback(methodName, fromArgs, returnValue);
  466 + }
  467 + return fromArgs;
  468 +}
  469 +
  470 +function processReturnValue(methodName, res, returnValue) {var keepReturnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
  471 + if (isFn(protocols.returnValue)) {// 处理通用 returnValue
  472 + res = protocols.returnValue(methodName, res);
  473 + }
  474 + return processArgs(methodName, res, returnValue, {}, keepReturnValue);
  475 +}
  476 +
  477 +function wrapper(methodName, method) {
  478 + if (hasOwn(protocols, methodName)) {
  479 + var protocol = protocols[methodName];
  480 + if (!protocol) {// 暂不支持的 api
  481 + return function () {
  482 + console.error("\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F \u6682\u4E0D\u652F\u6301".concat(methodName));
  483 + };
  484 + }
  485 + return function (arg1, arg2) {// 目前 api 最多两个参数
  486 + var options = protocol;
  487 + if (isFn(protocol)) {
  488 + options = protocol(arg1);
  489 + }
  490 +
  491 + arg1 = processArgs(methodName, arg1, options.args, options.returnValue);
  492 +
  493 + var args = [arg1];
  494 + if (typeof arg2 !== 'undefined') {
  495 + args.push(arg2);
  496 + }
  497 + var returnValue = wx[options.name || methodName].apply(wx, args);
  498 + if (isSyncApi(methodName)) {// 同步 api
  499 + return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));
  500 + }
  501 + return returnValue;
  502 + };
  503 + }
  504 + return method;
  505 +}
  506 +
  507 +var todoApis = Object.create(null);
  508 +
  509 +var TODOS = [
  510 +'onTabBarMidButtonTap',
  511 +'subscribePush',
  512 +'unsubscribePush',
  513 +'onPush',
  514 +'offPush',
  515 +'share'];
  516 +
  517 +
  518 +function createTodoApi(name) {
  519 + return function todoApi(_ref)
  520 +
  521 +
  522 + {var fail = _ref.fail,complete = _ref.complete;
  523 + var res = {
  524 + errMsg: "".concat(name, ":fail:\u6682\u4E0D\u652F\u6301 ").concat(name, " \u65B9\u6CD5") };
  525 +
  526 + isFn(fail) && fail(res);
  527 + isFn(complete) && complete(res);
  528 + };
  529 +}
  530 +
  531 +TODOS.forEach(function (name) {
  532 + todoApis[name] = createTodoApi(name);
  533 +});
  534 +
  535 +var providers = {
  536 + oauth: ['weixin'],
  537 + share: ['weixin'],
  538 + payment: ['wxpay'],
  539 + push: ['weixin'] };
  540 +
  541 +
  542 +function getProvider(_ref2)
  543 +
  544 +
  545 +
  546 +
  547 +{var service = _ref2.service,success = _ref2.success,fail = _ref2.fail,complete = _ref2.complete;
  548 + var res = false;
  549 + if (providers[service]) {
  550 + res = {
  551 + errMsg: 'getProvider:ok',
  552 + service: service,
  553 + provider: providers[service] };
  554 +
  555 + isFn(success) && success(res);
  556 + } else {
  557 + res = {
  558 + errMsg: 'getProvider:fail:服务[' + service + ']不存在' };
  559 +
  560 + isFn(fail) && fail(res);
  561 + }
  562 + isFn(complete) && complete(res);
  563 +}
  564 +
  565 +var extraApi = /*#__PURE__*/Object.freeze({
  566 + __proto__: null,
  567 + getProvider: getProvider });
  568 +
  569 +
  570 +var getEmitter = function () {
  571 + if (typeof getUniEmitter === 'function') {
  572 + /* eslint-disable no-undef */
  573 + return getUniEmitter;
  574 + }
  575 + var Emitter;
  576 + return function getUniEmitter() {
  577 + if (!Emitter) {
  578 + Emitter = new _vue.default();
  579 + }
  580 + return Emitter;
  581 + };
  582 +}();
  583 +
  584 +function apply(ctx, method, args) {
  585 + return ctx[method].apply(ctx, args);
  586 +}
  587 +
  588 +function $on() {
  589 + return apply(getEmitter(), '$on', Array.prototype.slice.call(arguments));
  590 +}
  591 +function $off() {
  592 + return apply(getEmitter(), '$off', Array.prototype.slice.call(arguments));
  593 +}
  594 +function $once() {
  595 + return apply(getEmitter(), '$once', Array.prototype.slice.call(arguments));
  596 +}
  597 +function $emit() {
  598 + return apply(getEmitter(), '$emit', Array.prototype.slice.call(arguments));
  599 +}
  600 +
  601 +var eventApi = /*#__PURE__*/Object.freeze({
  602 + __proto__: null,
  603 + $on: $on,
  604 + $off: $off,
  605 + $once: $once,
  606 + $emit: $emit });
  607 +
  608 +
  609 +var api = /*#__PURE__*/Object.freeze({
  610 + __proto__: null });
  611 +
  612 +
  613 +var MPPage = Page;
  614 +var MPComponent = Component;
  615 +
  616 +var customizeRE = /:/g;
  617 +
  618 +var customize = cached(function (str) {
  619 + return camelize(str.replace(customizeRE, '-'));
  620 +});
  621 +
  622 +function initTriggerEvent(mpInstance) {
  623 + {
  624 + if (!wx.canIUse('nextTick')) {
  625 + return;
  626 + }
  627 + }
  628 + var oldTriggerEvent = mpInstance.triggerEvent;
  629 + mpInstance.triggerEvent = function (event) {for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {args[_key3 - 1] = arguments[_key3];}
  630 + return oldTriggerEvent.apply(mpInstance, [customize(event)].concat(args));
  631 + };
  632 +}
  633 +
  634 +function initHook(name, options) {
  635 + var oldHook = options[name];
  636 + if (!oldHook) {
  637 + options[name] = function () {
  638 + initTriggerEvent(this);
  639 + };
  640 + } else {
  641 + options[name] = function () {
  642 + initTriggerEvent(this);for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {args[_key4] = arguments[_key4];}
  643 + return oldHook.apply(this, args);
  644 + };
  645 + }
  646 +}
  647 +
  648 +Page = function Page() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  649 + initHook('onLoad', options);
  650 + return MPPage(options);
  651 +};
  652 +
  653 +Component = function Component() {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  654 + initHook('created', options);
  655 + return MPComponent(options);
  656 +};
  657 +
  658 +var PAGE_EVENT_HOOKS = [
  659 +'onPullDownRefresh',
  660 +'onReachBottom',
  661 +'onShareAppMessage',
  662 +'onPageScroll',
  663 +'onResize',
  664 +'onTabItemTap'];
  665 +
  666 +
  667 +function initMocks(vm, mocks) {
  668 + var mpInstance = vm.$mp[vm.mpType];
  669 + mocks.forEach(function (mock) {
  670 + if (hasOwn(mpInstance, mock)) {
  671 + vm[mock] = mpInstance[mock];
  672 + }
  673 + });
  674 +}
  675 +
  676 +function hasHook(hook, vueOptions) {
  677 + if (!vueOptions) {
  678 + return true;
  679 + }
  680 +
  681 + if (_vue.default.options && Array.isArray(_vue.default.options[hook])) {
  682 + return true;
  683 + }
  684 +
  685 + vueOptions = vueOptions.default || vueOptions;
  686 +
  687 + if (isFn(vueOptions)) {
  688 + if (isFn(vueOptions.extendOptions[hook])) {
  689 + return true;
  690 + }
  691 + if (vueOptions.super &&
  692 + vueOptions.super.options &&
  693 + Array.isArray(vueOptions.super.options[hook])) {
  694 + return true;
  695 + }
  696 + return false;
  697 + }
  698 +
  699 + if (isFn(vueOptions[hook])) {
  700 + return true;
  701 + }
  702 + var mixins = vueOptions.mixins;
  703 + if (Array.isArray(mixins)) {
  704 + return !!mixins.find(function (mixin) {return hasHook(hook, mixin);});
  705 + }
  706 +}
  707 +
  708 +function initHooks(mpOptions, hooks, vueOptions) {
  709 + hooks.forEach(function (hook) {
  710 + if (hasHook(hook, vueOptions)) {
  711 + mpOptions[hook] = function (args) {
  712 + return this.$vm && this.$vm.__call_hook(hook, args);
  713 + };
  714 + }
  715 + });
  716 +}
  717 +
  718 +function initVueComponent(Vue, vueOptions) {
  719 + vueOptions = vueOptions.default || vueOptions;
  720 + var VueComponent;
  721 + if (isFn(vueOptions)) {
  722 + VueComponent = vueOptions;
  723 + vueOptions = VueComponent.extendOptions;
  724 + } else {
  725 + VueComponent = Vue.extend(vueOptions);
  726 + }
  727 + return [VueComponent, vueOptions];
  728 +}
  729 +
  730 +function initSlots(vm, vueSlots) {
  731 + if (Array.isArray(vueSlots) && vueSlots.length) {
  732 + var $slots = Object.create(null);
  733 + vueSlots.forEach(function (slotName) {
  734 + $slots[slotName] = true;
  735 + });
  736 + vm.$scopedSlots = vm.$slots = $slots;
  737 + }
  738 +}
  739 +
  740 +function initVueIds(vueIds, mpInstance) {
  741 + vueIds = (vueIds || '').split(',');
  742 + var len = vueIds.length;
  743 +
  744 + if (len === 1) {
  745 + mpInstance._$vueId = vueIds[0];
  746 + } else if (len === 2) {
  747 + mpInstance._$vueId = vueIds[0];
  748 + mpInstance._$vuePid = vueIds[1];
  749 + }
  750 +}
  751 +
  752 +function initData(vueOptions, context) {
  753 + var data = vueOptions.data || {};
  754 + var methods = vueOptions.methods || {};
  755 +
  756 + if (typeof data === 'function') {
  757 + try {
  758 + data = data.call(context); // 支持 Vue.prototype 上挂的数据
  759 + } catch (e) {
  760 + if (Object({"VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
  761 + console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);
  762 + }
  763 + }
  764 + } else {
  765 + try {
  766 + // 对 data 格式化
  767 + data = JSON.parse(JSON.stringify(data));
  768 + } catch (e) {}
  769 + }
  770 +
  771 + if (!isPlainObject(data)) {
  772 + data = {};
  773 + }
  774 +
  775 + Object.keys(methods).forEach(function (methodName) {
  776 + if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {
  777 + data[methodName] = methods[methodName];
  778 + }
  779 + });
  780 +
  781 + return data;
  782 +}
  783 +
  784 +var PROP_TYPES = [String, Number, Boolean, Object, Array, null];
  785 +
  786 +function createObserver(name) {
  787 + return function observer(newVal, oldVal) {
  788 + if (this.$vm) {
  789 + this.$vm[name] = newVal; // 为了触发其他非 render watcher
  790 + }
  791 + };
  792 +}
  793 +
  794 +function initBehaviors(vueOptions, initBehavior) {
  795 + var vueBehaviors = vueOptions.behaviors;
  796 + var vueExtends = vueOptions.extends;
  797 + var vueMixins = vueOptions.mixins;
  798 +
  799 + var vueProps = vueOptions.props;
  800 +
  801 + if (!vueProps) {
  802 + vueOptions.props = vueProps = [];
  803 + }
  804 +
  805 + var behaviors = [];
  806 + if (Array.isArray(vueBehaviors)) {
  807 + vueBehaviors.forEach(function (behavior) {
  808 + behaviors.push(behavior.replace('uni://', "wx".concat("://")));
  809 + if (behavior === 'uni://form-field') {
  810 + if (Array.isArray(vueProps)) {
  811 + vueProps.push('name');
  812 + vueProps.push('value');
  813 + } else {
  814 + vueProps.name = {
  815 + type: String,
  816 + default: '' };
  817 +
  818 + vueProps.value = {
  819 + type: [String, Number, Boolean, Array, Object, Date],
  820 + default: '' };
  821 +
  822 + }
  823 + }
  824 + });
  825 + }
  826 + if (isPlainObject(vueExtends) && vueExtends.props) {
  827 + behaviors.push(
  828 + initBehavior({
  829 + properties: initProperties(vueExtends.props, true) }));
  830 +
  831 +
  832 + }
  833 + if (Array.isArray(vueMixins)) {
  834 + vueMixins.forEach(function (vueMixin) {
  835 + if (isPlainObject(vueMixin) && vueMixin.props) {
  836 + behaviors.push(
  837 + initBehavior({
  838 + properties: initProperties(vueMixin.props, true) }));
  839 +
  840 +
  841 + }
  842 + });
  843 + }
  844 + return behaviors;
  845 +}
  846 +
  847 +function parsePropType(key, type, defaultValue, file) {
  848 + // [String]=>String
  849 + if (Array.isArray(type) && type.length === 1) {
  850 + return type[0];
  851 + }
  852 + return type;
  853 +}
  854 +
  855 +function initProperties(props) {var isBehavior = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;var file = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
  856 + var properties = {};
  857 + if (!isBehavior) {
  858 + properties.vueId = {
  859 + type: String,
  860 + value: '' };
  861 +
  862 + properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots
  863 + type: null,
  864 + value: [],
  865 + observer: function observer(newVal, oldVal) {
  866 + var $slots = Object.create(null);
  867 + newVal.forEach(function (slotName) {
  868 + $slots[slotName] = true;
  869 + });
  870 + this.setData({
  871 + $slots: $slots });
  872 +
  873 + } };
  874 +
  875 + }
  876 + if (Array.isArray(props)) {// ['title']
  877 + props.forEach(function (key) {
  878 + properties[key] = {
  879 + type: null,
  880 + observer: createObserver(key) };
  881 +
  882 + });
  883 + } else if (isPlainObject(props)) {// {title:{type:String,default:''},content:String}
  884 + Object.keys(props).forEach(function (key) {
  885 + var opts = props[key];
  886 + if (isPlainObject(opts)) {// title:{type:String,default:''}
  887 + var value = opts.default;
  888 + if (isFn(value)) {
  889 + value = value();
  890 + }
  891 +
  892 + opts.type = parsePropType(key, opts.type);
  893 +
  894 + properties[key] = {
  895 + type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,
  896 + value: value,
  897 + observer: createObserver(key) };
  898 +
  899 + } else {// content:String
  900 + var type = parsePropType(key, opts);
  901 + properties[key] = {
  902 + type: PROP_TYPES.indexOf(type) !== -1 ? type : null,
  903 + observer: createObserver(key) };
  904 +
  905 + }
  906 + });
  907 + }
  908 + return properties;
  909 +}
  910 +
  911 +function wrapper$1(event) {
  912 + // TODO 又得兼容 mpvue 的 mp 对象
  913 + try {
  914 + event.mp = JSON.parse(JSON.stringify(event));
  915 + } catch (e) {}
  916 +
  917 + event.stopPropagation = noop;
  918 + event.preventDefault = noop;
  919 +
  920 + event.target = event.target || {};
  921 +
  922 + if (!hasOwn(event, 'detail') || !event.detail) {
  923 + event.detail = {};
  924 + }
  925 +
  926 + if (!('markerId' in event.detail) && 'markerId' in event) {
  927 + event.detail.markerId = event.markerId;
  928 + }
  929 +
  930 + if (isPlainObject(event.detail)) {
  931 + event.target = Object.assign({}, event.target, event.detail);
  932 + }
  933 +
  934 + return event;
  935 +}
  936 +
  937 +function getExtraValue(vm, dataPathsArray) {
  938 + var context = vm;
  939 + dataPathsArray.forEach(function (dataPathArray) {
  940 + var dataPath = dataPathArray[0];
  941 + var value = dataPathArray[2];
  942 + if (dataPath || typeof value !== 'undefined') {// ['','',index,'disable']
  943 + var propPath = dataPathArray[1];
  944 + var valuePath = dataPathArray[3];
  945 +
  946 + var vFor = dataPath ? vm.__get_value(dataPath, context) : context;
  947 +
  948 + if (Number.isInteger(vFor)) {
  949 + context = value;
  950 + } else if (!propPath) {
  951 + context = vFor[value];
  952 + } else {
  953 + if (Array.isArray(vFor)) {
  954 + context = vFor.find(function (vForItem) {
  955 + return vm.__get_value(propPath, vForItem) === value;
  956 + });
  957 + } else if (isPlainObject(vFor)) {
  958 + context = Object.keys(vFor).find(function (vForKey) {
  959 + return vm.__get_value(propPath, vFor[vForKey]) === value;
  960 + });
  961 + } else {
  962 + console.error('v-for 暂不支持循环数据:', vFor);
  963 + }
  964 + }
  965 +
  966 + if (valuePath) {
  967 + context = vm.__get_value(valuePath, context);
  968 + }
  969 + }
  970 + });
  971 + return context;
  972 +}
  973 +
  974 +function processEventExtra(vm, extra, event) {
  975 + var extraObj = {};
  976 +
  977 + if (Array.isArray(extra) && extra.length) {
  978 + /**
  979 + *[
  980 + * ['data.items', 'data.id', item.data.id],
  981 + * ['metas', 'id', meta.id]
  982 + *],
  983 + *[
  984 + * ['data.items', 'data.id', item.data.id],
  985 + * ['metas', 'id', meta.id]
  986 + *],
  987 + *'test'
  988 + */
  989 + extra.forEach(function (dataPath, index) {
  990 + if (typeof dataPath === 'string') {
  991 + if (!dataPath) {// model,prop.sync
  992 + extraObj['$' + index] = vm;
  993 + } else {
  994 + if (dataPath === '$event') {// $event
  995 + extraObj['$' + index] = event;
  996 + } else if (dataPath.indexOf('$event.') === 0) {// $event.target.value
  997 + extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);
  998 + } else {
  999 + extraObj['$' + index] = vm.__get_value(dataPath);
  1000 + }
  1001 + }
  1002 + } else {
  1003 + extraObj['$' + index] = getExtraValue(vm, dataPath);
  1004 + }
  1005 + });
  1006 + }
  1007 +
  1008 + return extraObj;
  1009 +}
  1010 +
  1011 +function getObjByArray(arr) {
  1012 + var obj = {};
  1013 + for (var i = 1; i < arr.length; i++) {
  1014 + var element = arr[i];
  1015 + obj[element[0]] = element[1];
  1016 + }
  1017 + return obj;
  1018 +}
  1019 +
  1020 +function processEventArgs(vm, event) {var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];var extra = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];var isCustom = arguments.length > 4 ? arguments[4] : undefined;var methodName = arguments.length > 5 ? arguments[5] : undefined;
  1021 + var isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象
  1022 + if (isCustom) {// 自定义事件
  1023 + isCustomMPEvent = event.currentTarget &&
  1024 + event.currentTarget.dataset &&
  1025 + event.currentTarget.dataset.comType === 'wx';
  1026 + if (!args.length) {// 无参数,直接传入 event 或 detail 数组
  1027 + if (isCustomMPEvent) {
  1028 + return [event];
  1029 + }
  1030 + return event.detail.__args__ || event.detail;
  1031 + }
  1032 + }
  1033 +
  1034 + var extraObj = processEventExtra(vm, extra, event);
  1035 +
  1036 + var ret = [];
  1037 + args.forEach(function (arg) {
  1038 + if (arg === '$event') {
  1039 + if (methodName === '__set_model' && !isCustom) {// input v-model value
  1040 + ret.push(event.target.value);
  1041 + } else {
  1042 + if (isCustom && !isCustomMPEvent) {
  1043 + ret.push(event.detail.__args__[0]);
  1044 + } else {// wxcomponent 组件或内置组件
  1045 + ret.push(event);
  1046 + }
  1047 + }
  1048 + } else {
  1049 + if (Array.isArray(arg) && arg[0] === 'o') {
  1050 + ret.push(getObjByArray(arg));
  1051 + } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {
  1052 + ret.push(extraObj[arg]);
  1053 + } else {
  1054 + ret.push(arg);
  1055 + }
  1056 + }
  1057 + });
  1058 +
  1059 + return ret;
  1060 +}
  1061 +
  1062 +var ONCE = '~';
  1063 +var CUSTOM = '^';
  1064 +
  1065 +function isMatchEventType(eventType, optType) {
  1066 + return eventType === optType ||
  1067 +
  1068 + optType === 'regionchange' && (
  1069 +
  1070 + eventType === 'begin' ||
  1071 + eventType === 'end');
  1072 +
  1073 +
  1074 +}
  1075 +
  1076 +function handleEvent(event) {var _this = this;
  1077 + event = wrapper$1(event);
  1078 +
  1079 + // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]
  1080 + var dataset = (event.currentTarget || event.target).dataset;
  1081 + if (!dataset) {
  1082 + return console.warn('事件信息不存在');
  1083 + }
  1084 + var eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰
  1085 + if (!eventOpts) {
  1086 + return console.warn('事件信息不存在');
  1087 + }
  1088 +
  1089 + // [['handle',[1,2,a]],['handle1',[1,2,a]]]
  1090 + var eventType = event.type;
  1091 +
  1092 + var ret = [];
  1093 +
  1094 + eventOpts.forEach(function (eventOpt) {
  1095 + var type = eventOpt[0];
  1096 + var eventsArray = eventOpt[1];
  1097 +
  1098 + var isCustom = type.charAt(0) === CUSTOM;
  1099 + type = isCustom ? type.slice(1) : type;
  1100 + var isOnce = type.charAt(0) === ONCE;
  1101 + type = isOnce ? type.slice(1) : type;
  1102 +
  1103 + if (eventsArray && isMatchEventType(eventType, type)) {
  1104 + eventsArray.forEach(function (eventArray) {
  1105 + var methodName = eventArray[0];
  1106 + if (methodName) {
  1107 + var handlerCtx = _this.$vm;
  1108 + if (
  1109 + handlerCtx.$options.generic &&
  1110 + handlerCtx.$parent &&
  1111 + handlerCtx.$parent.$parent)
  1112 + {// mp-weixin,mp-toutiao 抽象节点模拟 scoped slots
  1113 + handlerCtx = handlerCtx.$parent.$parent;
  1114 + }
  1115 + if (methodName === '$emit') {
  1116 + handlerCtx.$emit.apply(handlerCtx,
  1117 + processEventArgs(
  1118 + _this.$vm,
  1119 + event,
  1120 + eventArray[1],
  1121 + eventArray[2],
  1122 + isCustom,
  1123 + methodName));
  1124 +
  1125 + return;
  1126 + }
  1127 + var handler = handlerCtx[methodName];
  1128 + if (!isFn(handler)) {
  1129 + throw new Error(" _vm.".concat(methodName, " is not a function"));
  1130 + }
  1131 + if (isOnce) {
  1132 + if (handler.once) {
  1133 + return;
  1134 + }
  1135 + handler.once = true;
  1136 + }
  1137 + ret.push(handler.apply(handlerCtx, processEventArgs(
  1138 + _this.$vm,
  1139 + event,
  1140 + eventArray[1],
  1141 + eventArray[2],
  1142 + isCustom,
  1143 + methodName)));
  1144 +
  1145 + }
  1146 + });
  1147 + }
  1148 + });
  1149 +
  1150 + if (
  1151 + eventType === 'input' &&
  1152 + ret.length === 1 &&
  1153 + typeof ret[0] !== 'undefined')
  1154 + {
  1155 + return ret[0];
  1156 + }
  1157 +}
  1158 +
  1159 +var hooks = [
  1160 +'onShow',
  1161 +'onHide',
  1162 +'onError',
  1163 +'onPageNotFound'];
  1164 +
  1165 +
  1166 +function parseBaseApp(vm, _ref3)
  1167 +
  1168 +
  1169 +{var mocks = _ref3.mocks,initRefs = _ref3.initRefs;
  1170 + if (vm.$options.store) {
  1171 + _vue.default.prototype.$store = vm.$options.store;
  1172 + }
  1173 +
  1174 + _vue.default.prototype.mpHost = "mp-weixin";
  1175 +
  1176 + _vue.default.mixin({
  1177 + beforeCreate: function beforeCreate() {
  1178 + if (!this.$options.mpType) {
  1179 + return;
  1180 + }
  1181 +
  1182 + this.mpType = this.$options.mpType;
  1183 +
  1184 + this.$mp = _defineProperty({
  1185 + data: {} },
  1186 + this.mpType, this.$options.mpInstance);
  1187 +
  1188 +
  1189 + this.$scope = this.$options.mpInstance;
  1190 +
  1191 + delete this.$options.mpType;
  1192 + delete this.$options.mpInstance;
  1193 +
  1194 + if (this.mpType !== 'app') {
  1195 + initRefs(this);
  1196 + initMocks(this, mocks);
  1197 + }
  1198 + } });
  1199 +
  1200 +
  1201 + var appOptions = {
  1202 + onLaunch: function onLaunch(args) {
  1203 + if (this.$vm) {// 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前
  1204 + return;
  1205 + }
  1206 + {
  1207 + if (!wx.canIUse('nextTick')) {// 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断
  1208 + console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');
  1209 + }
  1210 + }
  1211 +
  1212 + this.$vm = vm;
  1213 +
  1214 + this.$vm.$mp = {
  1215 + app: this };
  1216 +
  1217 +
  1218 + this.$vm.$scope = this;
  1219 + // vm 上也挂载 globalData
  1220 + this.$vm.globalData = this.globalData;
  1221 +
  1222 + this.$vm._isMounted = true;
  1223 + this.$vm.__call_hook('mounted', args);
  1224 +
  1225 + this.$vm.__call_hook('onLaunch', args);
  1226 + } };
  1227 +
  1228 +
  1229 + // 兼容旧版本 globalData
  1230 + appOptions.globalData = vm.$options.globalData || {};
  1231 + // 将 methods 中的方法挂在 getApp() 中
  1232 + var methods = vm.$options.methods;
  1233 + if (methods) {
  1234 + Object.keys(methods).forEach(function (name) {
  1235 + appOptions[name] = methods[name];
  1236 + });
  1237 + }
  1238 +
  1239 + initHooks(appOptions, hooks);
  1240 +
  1241 + return appOptions;
  1242 +}
  1243 +
  1244 +var mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];
  1245 +
  1246 +function findVmByVueId(vm, vuePid) {
  1247 + var $children = vm.$children;
  1248 + // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)
  1249 + for (var i = $children.length - 1; i >= 0; i--) {
  1250 + var childVm = $children[i];
  1251 + if (childVm.$scope._$vueId === vuePid) {
  1252 + return childVm;
  1253 + }
  1254 + }
  1255 + // 反向递归查找
  1256 + var parentVm;
  1257 + for (var _i = $children.length - 1; _i >= 0; _i--) {
  1258 + parentVm = findVmByVueId($children[_i], vuePid);
  1259 + if (parentVm) {
  1260 + return parentVm;
  1261 + }
  1262 + }
  1263 +}
  1264 +
  1265 +function initBehavior(options) {
  1266 + return Behavior(options);
  1267 +}
  1268 +
  1269 +function isPage() {
  1270 + return !!this.route;
  1271 +}
  1272 +
  1273 +function initRelation(detail) {
  1274 + this.triggerEvent('__l', detail);
  1275 +}
  1276 +
  1277 +function initRefs(vm) {
  1278 + var mpInstance = vm.$scope;
  1279 + Object.defineProperty(vm, '$refs', {
  1280 + get: function get() {
  1281 + var $refs = {};
  1282 + var components = mpInstance.selectAllComponents('.vue-ref');
  1283 + components.forEach(function (component) {
  1284 + var ref = component.dataset.ref;
  1285 + $refs[ref] = component.$vm || component;
  1286 + });
  1287 + var forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');
  1288 + forComponents.forEach(function (component) {
  1289 + var ref = component.dataset.ref;
  1290 + if (!$refs[ref]) {
  1291 + $refs[ref] = [];
  1292 + }
  1293 + $refs[ref].push(component.$vm || component);
  1294 + });
  1295 + return $refs;
  1296 + } });
  1297 +
  1298 +}
  1299 +
  1300 +function handleLink(event) {var _ref4 =
  1301 +
  1302 +
  1303 +
  1304 + event.detail || event.value,vuePid = _ref4.vuePid,vueOptions = _ref4.vueOptions; // detail 是微信,value 是百度(dipatch)
  1305 +
  1306 + var parentVm;
  1307 +
  1308 + if (vuePid) {
  1309 + parentVm = findVmByVueId(this.$vm, vuePid);
  1310 + }
  1311 +
  1312 + if (!parentVm) {
  1313 + parentVm = this.$vm;
  1314 + }
  1315 +
  1316 + vueOptions.parent = parentVm;
  1317 +}
  1318 +
  1319 +function parseApp(vm) {
  1320 + return parseBaseApp(vm, {
  1321 + mocks: mocks,
  1322 + initRefs: initRefs });
  1323 +
  1324 +}
  1325 +
  1326 +function createApp(vm) {
  1327 + App(parseApp(vm));
  1328 + return vm;
  1329 +}
  1330 +
  1331 +function parseBaseComponent(vueComponentOptions)
  1332 +
  1333 +
  1334 +{var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},isPage = _ref5.isPage,initRelation = _ref5.initRelation;var _initVueComponent =
  1335 + initVueComponent(_vue.default, vueComponentOptions),_initVueComponent2 = _slicedToArray(_initVueComponent, 2),VueComponent = _initVueComponent2[0],vueOptions = _initVueComponent2[1];
  1336 +
  1337 + var options = _objectSpread({
  1338 + multipleSlots: true,
  1339 + addGlobalClass: true },
  1340 + vueOptions.options || {});
  1341 +
  1342 +
  1343 + {
  1344 + // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项
  1345 + if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {
  1346 + Object.assign(options, vueOptions['mp-weixin'].options);
  1347 + }
  1348 + }
  1349 +
  1350 + var componentOptions = {
  1351 + options: options,
  1352 + data: initData(vueOptions, _vue.default.prototype),
  1353 + behaviors: initBehaviors(vueOptions, initBehavior),
  1354 + properties: initProperties(vueOptions.props, false, vueOptions.__file),
  1355 + lifetimes: {
  1356 + attached: function attached() {
  1357 + var properties = this.properties;
  1358 +
  1359 + var options = {
  1360 + mpType: isPage.call(this) ? 'page' : 'component',
  1361 + mpInstance: this,
  1362 + propsData: properties };
  1363 +
  1364 +
  1365 + initVueIds(properties.vueId, this);
  1366 +
  1367 + // 处理父子关系
  1368 + initRelation.call(this, {
  1369 + vuePid: this._$vuePid,
  1370 + vueOptions: options });
  1371 +
  1372 +
  1373 + // 初始化 vue 实例
  1374 + this.$vm = new VueComponent(options);
  1375 +
  1376 + // 处理$slots,$scopedSlots(暂不支持动态变化$slots)
  1377 + initSlots(this.$vm, properties.vueSlots);
  1378 +
  1379 + // 触发首次 setData
  1380 + this.$vm.$mount();
  1381 + },
  1382 + ready: function ready() {
  1383 + // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发
  1384 + // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800
  1385 + if (this.$vm) {
  1386 + this.$vm._isMounted = true;
  1387 + this.$vm.__call_hook('mounted');
  1388 + this.$vm.__call_hook('onReady');
  1389 + }
  1390 + },
  1391 + detached: function detached() {
  1392 + this.$vm && this.$vm.$destroy();
  1393 + } },
  1394 +
  1395 + pageLifetimes: {
  1396 + show: function show(args) {
  1397 + this.$vm && this.$vm.__call_hook('onPageShow', args);
  1398 + },
  1399 + hide: function hide() {
  1400 + this.$vm && this.$vm.__call_hook('onPageHide');
  1401 + },
  1402 + resize: function resize(size) {
  1403 + this.$vm && this.$vm.__call_hook('onPageResize', size);
  1404 + } },
  1405 +
  1406 + methods: {
  1407 + __l: handleLink,
  1408 + __e: handleEvent } };
  1409 +
  1410 +
  1411 +
  1412 + if (Array.isArray(vueOptions.wxsCallMethods)) {
  1413 + vueOptions.wxsCallMethods.forEach(function (callMethod) {
  1414 + componentOptions.methods[callMethod] = function (args) {
  1415 + return this.$vm[callMethod](args);
  1416 + };
  1417 + });
  1418 + }
  1419 +
  1420 + if (isPage) {
  1421 + return componentOptions;
  1422 + }
  1423 + return [componentOptions, VueComponent];
  1424 +}
  1425 +
  1426 +function parseComponent(vueComponentOptions) {
  1427 + return parseBaseComponent(vueComponentOptions, {
  1428 + isPage: isPage,
  1429 + initRelation: initRelation });
  1430 +
  1431 +}
  1432 +
  1433 +var hooks$1 = [
  1434 +'onShow',
  1435 +'onHide',
  1436 +'onUnload'];
  1437 +
  1438 +
  1439 +hooks$1.push.apply(hooks$1, PAGE_EVENT_HOOKS);
  1440 +
  1441 +function parseBasePage(vuePageOptions, _ref6)
  1442 +
  1443 +
  1444 +{var isPage = _ref6.isPage,initRelation = _ref6.initRelation;
  1445 + var pageOptions = parseComponent(vuePageOptions);
  1446 +
  1447 + initHooks(pageOptions.methods, hooks$1, vuePageOptions);
  1448 +
  1449 + pageOptions.methods.onLoad = function (args) {
  1450 + this.$vm.$mp.query = args; // 兼容 mpvue
  1451 + this.$vm.__call_hook('onLoad', args);
  1452 + };
  1453 +
  1454 + return pageOptions;
  1455 +}
  1456 +
  1457 +function parsePage(vuePageOptions) {
  1458 + return parseBasePage(vuePageOptions, {
  1459 + isPage: isPage,
  1460 + initRelation: initRelation });
  1461 +
  1462 +}
  1463 +
  1464 +function createPage(vuePageOptions) {
  1465 + {
  1466 + return Component(parsePage(vuePageOptions));
  1467 + }
  1468 +}
  1469 +
  1470 +function createComponent(vueOptions) {
  1471 + {
  1472 + return Component(parseComponent(vueOptions));
  1473 + }
  1474 +}
  1475 +
  1476 +todos.forEach(function (todoApi) {
  1477 + protocols[todoApi] = false;
  1478 +});
  1479 +
  1480 +canIUses.forEach(function (canIUseApi) {
  1481 + var apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name :
  1482 + canIUseApi;
  1483 + if (!wx.canIUse(apiName)) {
  1484 + protocols[canIUseApi] = false;
  1485 + }
  1486 +});
  1487 +
  1488 +var uni = {};
  1489 +
  1490 +if (typeof Proxy !== 'undefined' && "mp-weixin" !== 'app-plus') {
  1491 + uni = new Proxy({}, {
  1492 + get: function get(target, name) {
  1493 + if (target[name]) {
  1494 + return target[name];
  1495 + }
  1496 + if (baseApi[name]) {
  1497 + return baseApi[name];
  1498 + }
  1499 + if (api[name]) {
  1500 + return promisify(name, api[name]);
  1501 + }
  1502 + {
  1503 + if (extraApi[name]) {
  1504 + return promisify(name, extraApi[name]);
  1505 + }
  1506 + if (todoApis[name]) {
  1507 + return promisify(name, todoApis[name]);
  1508 + }
  1509 + }
  1510 + if (eventApi[name]) {
  1511 + return eventApi[name];
  1512 + }
  1513 + if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {
  1514 + return;
  1515 + }
  1516 + return promisify(name, wrapper(name, wx[name]));
  1517 + },
  1518 + set: function set(target, name, value) {
  1519 + target[name] = value;
  1520 + return true;
  1521 + } });
  1522 +
  1523 +} else {
  1524 + Object.keys(baseApi).forEach(function (name) {
  1525 + uni[name] = baseApi[name];
  1526 + });
  1527 +
  1528 + {
  1529 + Object.keys(todoApis).forEach(function (name) {
  1530 + uni[name] = promisify(name, todoApis[name]);
  1531 + });
  1532 + Object.keys(extraApi).forEach(function (name) {
  1533 + uni[name] = promisify(name, todoApis[name]);
  1534 + });
  1535 + }
  1536 +
  1537 + Object.keys(eventApi).forEach(function (name) {
  1538 + uni[name] = eventApi[name];
  1539 + });
  1540 +
  1541 + Object.keys(api).forEach(function (name) {
  1542 + uni[name] = promisify(name, api[name]);
  1543 + });
  1544 +
  1545 + Object.keys(wx).forEach(function (name) {
  1546 + if (hasOwn(wx, name) || hasOwn(protocols, name)) {
  1547 + uni[name] = promisify(name, wrapper(name, wx[name]));
  1548 + }
  1549 + });
  1550 +}
  1551 +
  1552 +wx.createApp = createApp;
  1553 +wx.createPage = createPage;
  1554 +wx.createComponent = createComponent;
  1555 +
  1556 +var uni$1 = uni;var _default =
  1557 +
  1558 +uni$1;exports.default = _default;
  1559 +
  1560 +/***/ }),
  1561 +/* 2 */
  1562 +/*!******************************************************************************************!*\
  1563 + !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js ***!
  1564 + \******************************************************************************************/
  1565 +/*! exports provided: default */
  1566 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  1567 +
  1568 +"use strict";
  1569 +__webpack_require__.r(__webpack_exports__);
  1570 +/* WEBPACK VAR INJECTION */(function(global) {/*!
  1571 + * Vue.js v2.6.11
  1572 + * (c) 2014-2020 Evan You
  1573 + * Released under the MIT License.
  1574 + */
  1575 +/* */
  1576 +
  1577 +var emptyObject = Object.freeze({});
  1578 +
  1579 +// These helpers produce better VM code in JS engines due to their
  1580 +// explicitness and function inlining.
  1581 +function isUndef (v) {
  1582 + return v === undefined || v === null
  1583 +}
  1584 +
  1585 +function isDef (v) {
  1586 + return v !== undefined && v !== null
  1587 +}
  1588 +
  1589 +function isTrue (v) {
  1590 + return v === true
  1591 +}
  1592 +
  1593 +function isFalse (v) {
  1594 + return v === false
  1595 +}
  1596 +
  1597 +/**
  1598 + * Check if value is primitive.
  1599 + */
  1600 +function isPrimitive (value) {
  1601 + return (
  1602 + typeof value === 'string' ||
  1603 + typeof value === 'number' ||
  1604 + // $flow-disable-line
  1605 + typeof value === 'symbol' ||
  1606 + typeof value === 'boolean'
  1607 + )
  1608 +}
  1609 +
  1610 +/**
  1611 + * Quick object check - this is primarily used to tell
  1612 + * Objects from primitive values when we know the value
  1613 + * is a JSON-compliant type.
  1614 + */
  1615 +function isObject (obj) {
  1616 + return obj !== null && typeof obj === 'object'
  1617 +}
  1618 +
  1619 +/**
  1620 + * Get the raw type string of a value, e.g., [object Object].
  1621 + */
  1622 +var _toString = Object.prototype.toString;
  1623 +
  1624 +function toRawType (value) {
  1625 + return _toString.call(value).slice(8, -1)
  1626 +}
  1627 +
  1628 +/**
  1629 + * Strict object type check. Only returns true
  1630 + * for plain JavaScript objects.
  1631 + */
  1632 +function isPlainObject (obj) {
  1633 + return _toString.call(obj) === '[object Object]'
  1634 +}
  1635 +
  1636 +function isRegExp (v) {
  1637 + return _toString.call(v) === '[object RegExp]'
  1638 +}
  1639 +
  1640 +/**
  1641 + * Check if val is a valid array index.
  1642 + */
  1643 +function isValidArrayIndex (val) {
  1644 + var n = parseFloat(String(val));
  1645 + return n >= 0 && Math.floor(n) === n && isFinite(val)
  1646 +}
  1647 +
  1648 +function isPromise (val) {
  1649 + return (
  1650 + isDef(val) &&
  1651 + typeof val.then === 'function' &&
  1652 + typeof val.catch === 'function'
  1653 + )
  1654 +}
  1655 +
  1656 +/**
  1657 + * Convert a value to a string that is actually rendered.
  1658 + */
  1659 +function toString (val) {
  1660 + return val == null
  1661 + ? ''
  1662 + : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)
  1663 + ? JSON.stringify(val, null, 2)
  1664 + : String(val)
  1665 +}
  1666 +
  1667 +/**
  1668 + * Convert an input value to a number for persistence.
  1669 + * If the conversion fails, return original string.
  1670 + */
  1671 +function toNumber (val) {
  1672 + var n = parseFloat(val);
  1673 + return isNaN(n) ? val : n
  1674 +}
  1675 +
  1676 +/**
  1677 + * Make a map and return a function for checking if a key
  1678 + * is in that map.
  1679 + */
  1680 +function makeMap (
  1681 + str,
  1682 + expectsLowerCase
  1683 +) {
  1684 + var map = Object.create(null);
  1685 + var list = str.split(',');
  1686 + for (var i = 0; i < list.length; i++) {
  1687 + map[list[i]] = true;
  1688 + }
  1689 + return expectsLowerCase
  1690 + ? function (val) { return map[val.toLowerCase()]; }
  1691 + : function (val) { return map[val]; }
  1692 +}
  1693 +
  1694 +/**
  1695 + * Check if a tag is a built-in tag.
  1696 + */
  1697 +var isBuiltInTag = makeMap('slot,component', true);
  1698 +
  1699 +/**
  1700 + * Check if an attribute is a reserved attribute.
  1701 + */
  1702 +var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');
  1703 +
  1704 +/**
  1705 + * Remove an item from an array.
  1706 + */
  1707 +function remove (arr, item) {
  1708 + if (arr.length) {
  1709 + var index = arr.indexOf(item);
  1710 + if (index > -1) {
  1711 + return arr.splice(index, 1)
  1712 + }
  1713 + }
  1714 +}
  1715 +
  1716 +/**
  1717 + * Check whether an object has the property.
  1718 + */
  1719 +var hasOwnProperty = Object.prototype.hasOwnProperty;
  1720 +function hasOwn (obj, key) {
  1721 + return hasOwnProperty.call(obj, key)
  1722 +}
  1723 +
  1724 +/**
  1725 + * Create a cached version of a pure function.
  1726 + */
  1727 +function cached (fn) {
  1728 + var cache = Object.create(null);
  1729 + return (function cachedFn (str) {
  1730 + var hit = cache[str];
  1731 + return hit || (cache[str] = fn(str))
  1732 + })
  1733 +}
  1734 +
  1735 +/**
  1736 + * Camelize a hyphen-delimited string.
  1737 + */
  1738 +var camelizeRE = /-(\w)/g;
  1739 +var camelize = cached(function (str) {
  1740 + return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
  1741 +});
  1742 +
  1743 +/**
  1744 + * Capitalize a string.
  1745 + */
  1746 +var capitalize = cached(function (str) {
  1747 + return str.charAt(0).toUpperCase() + str.slice(1)
  1748 +});
  1749 +
  1750 +/**
  1751 + * Hyphenate a camelCase string.
  1752 + */
  1753 +var hyphenateRE = /\B([A-Z])/g;
  1754 +var hyphenate = cached(function (str) {
  1755 + return str.replace(hyphenateRE, '-$1').toLowerCase()
  1756 +});
  1757 +
  1758 +/**
  1759 + * Simple bind polyfill for environments that do not support it,
  1760 + * e.g., PhantomJS 1.x. Technically, we don't need this anymore
  1761 + * since native bind is now performant enough in most browsers.
  1762 + * But removing it would mean breaking code that was able to run in
  1763 + * PhantomJS 1.x, so this must be kept for backward compatibility.
  1764 + */
  1765 +
  1766 +/* istanbul ignore next */
  1767 +function polyfillBind (fn, ctx) {
  1768 + function boundFn (a) {
  1769 + var l = arguments.length;
  1770 + return l
  1771 + ? l > 1
  1772 + ? fn.apply(ctx, arguments)
  1773 + : fn.call(ctx, a)
  1774 + : fn.call(ctx)
  1775 + }
  1776 +
  1777 + boundFn._length = fn.length;
  1778 + return boundFn
  1779 +}
  1780 +
  1781 +function nativeBind (fn, ctx) {
  1782 + return fn.bind(ctx)
  1783 +}
  1784 +
  1785 +var bind = Function.prototype.bind
  1786 + ? nativeBind
  1787 + : polyfillBind;
  1788 +
  1789 +/**
  1790 + * Convert an Array-like object to a real Array.
  1791 + */
  1792 +function toArray (list, start) {
  1793 + start = start || 0;
  1794 + var i = list.length - start;
  1795 + var ret = new Array(i);
  1796 + while (i--) {
  1797 + ret[i] = list[i + start];
  1798 + }
  1799 + return ret
  1800 +}
  1801 +
  1802 +/**
  1803 + * Mix properties into target object.
  1804 + */
  1805 +function extend (to, _from) {
  1806 + for (var key in _from) {
  1807 + to[key] = _from[key];
  1808 + }
  1809 + return to
  1810 +}
  1811 +
  1812 +/**
  1813 + * Merge an Array of Objects into a single Object.
  1814 + */
  1815 +function toObject (arr) {
  1816 + var res = {};
  1817 + for (var i = 0; i < arr.length; i++) {
  1818 + if (arr[i]) {
  1819 + extend(res, arr[i]);
  1820 + }
  1821 + }
  1822 + return res
  1823 +}
  1824 +
  1825 +/* eslint-disable no-unused-vars */
  1826 +
  1827 +/**
  1828 + * Perform no operation.
  1829 + * Stubbing args to make Flow happy without leaving useless transpiled code
  1830 + * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).
  1831 + */
  1832 +function noop (a, b, c) {}
  1833 +
  1834 +/**
  1835 + * Always return false.
  1836 + */
  1837 +var no = function (a, b, c) { return false; };
  1838 +
  1839 +/* eslint-enable no-unused-vars */
  1840 +
  1841 +/**
  1842 + * Return the same value.
  1843 + */
  1844 +var identity = function (_) { return _; };
  1845 +
  1846 +/**
  1847 + * Check if two values are loosely equal - that is,
  1848 + * if they are plain objects, do they have the same shape?
  1849 + */
  1850 +function looseEqual (a, b) {
  1851 + if (a === b) { return true }
  1852 + var isObjectA = isObject(a);
  1853 + var isObjectB = isObject(b);
  1854 + if (isObjectA && isObjectB) {
  1855 + try {
  1856 + var isArrayA = Array.isArray(a);
  1857 + var isArrayB = Array.isArray(b);
  1858 + if (isArrayA && isArrayB) {
  1859 + return a.length === b.length && a.every(function (e, i) {
  1860 + return looseEqual(e, b[i])
  1861 + })
  1862 + } else if (a instanceof Date && b instanceof Date) {
  1863 + return a.getTime() === b.getTime()
  1864 + } else if (!isArrayA && !isArrayB) {
  1865 + var keysA = Object.keys(a);
  1866 + var keysB = Object.keys(b);
  1867 + return keysA.length === keysB.length && keysA.every(function (key) {
  1868 + return looseEqual(a[key], b[key])
  1869 + })
  1870 + } else {
  1871 + /* istanbul ignore next */
  1872 + return false
  1873 + }
  1874 + } catch (e) {
  1875 + /* istanbul ignore next */
  1876 + return false
  1877 + }
  1878 + } else if (!isObjectA && !isObjectB) {
  1879 + return String(a) === String(b)
  1880 + } else {
  1881 + return false
  1882 + }
  1883 +}
  1884 +
  1885 +/**
  1886 + * Return the first index at which a loosely equal value can be
  1887 + * found in the array (if value is a plain object, the array must
  1888 + * contain an object of the same shape), or -1 if it is not present.
  1889 + */
  1890 +function looseIndexOf (arr, val) {
  1891 + for (var i = 0; i < arr.length; i++) {
  1892 + if (looseEqual(arr[i], val)) { return i }
  1893 + }
  1894 + return -1
  1895 +}
  1896 +
  1897 +/**
  1898 + * Ensure a function is called only once.
  1899 + */
  1900 +function once (fn) {
  1901 + var called = false;
  1902 + return function () {
  1903 + if (!called) {
  1904 + called = true;
  1905 + fn.apply(this, arguments);
  1906 + }
  1907 + }
  1908 +}
  1909 +
  1910 +var ASSET_TYPES = [
  1911 + 'component',
  1912 + 'directive',
  1913 + 'filter'
  1914 +];
  1915 +
  1916 +var LIFECYCLE_HOOKS = [
  1917 + 'beforeCreate',
  1918 + 'created',
  1919 + 'beforeMount',
  1920 + 'mounted',
  1921 + 'beforeUpdate',
  1922 + 'updated',
  1923 + 'beforeDestroy',
  1924 + 'destroyed',
  1925 + 'activated',
  1926 + 'deactivated',
  1927 + 'errorCaptured',
  1928 + 'serverPrefetch'
  1929 +];
  1930 +
  1931 +/* */
  1932 +
  1933 +
  1934 +
  1935 +var config = ({
  1936 + /**
  1937 + * Option merge strategies (used in core/util/options)
  1938 + */
  1939 + // $flow-disable-line
  1940 + optionMergeStrategies: Object.create(null),
  1941 +
  1942 + /**
  1943 + * Whether to suppress warnings.
  1944 + */
  1945 + silent: false,
  1946 +
  1947 + /**
  1948 + * Show production mode tip message on boot?
  1949 + */
  1950 + productionTip: "development" !== 'production',
  1951 +
  1952 + /**
  1953 + * Whether to enable devtools
  1954 + */
  1955 + devtools: "development" !== 'production',
  1956 +
  1957 + /**
  1958 + * Whether to record perf
  1959 + */
  1960 + performance: false,
  1961 +
  1962 + /**
  1963 + * Error handler for watcher errors
  1964 + */
  1965 + errorHandler: null,
  1966 +
  1967 + /**
  1968 + * Warn handler for watcher warns
  1969 + */
  1970 + warnHandler: null,
  1971 +
  1972 + /**
  1973 + * Ignore certain custom elements
  1974 + */
  1975 + ignoredElements: [],
  1976 +
  1977 + /**
  1978 + * Custom user key aliases for v-on
  1979 + */
  1980 + // $flow-disable-line
  1981 + keyCodes: Object.create(null),
  1982 +
  1983 + /**
  1984 + * Check if a tag is reserved so that it cannot be registered as a
  1985 + * component. This is platform-dependent and may be overwritten.
  1986 + */
  1987 + isReservedTag: no,
  1988 +
  1989 + /**
  1990 + * Check if an attribute is reserved so that it cannot be used as a component
  1991 + * prop. This is platform-dependent and may be overwritten.
  1992 + */
  1993 + isReservedAttr: no,
  1994 +
  1995 + /**
  1996 + * Check if a tag is an unknown element.
  1997 + * Platform-dependent.
  1998 + */
  1999 + isUnknownElement: no,
  2000 +
  2001 + /**
  2002 + * Get the namespace of an element
  2003 + */
  2004 + getTagNamespace: noop,
  2005 +
  2006 + /**
  2007 + * Parse the real tag name for the specific platform.
  2008 + */
  2009 + parsePlatformTagName: identity,
  2010 +
  2011 + /**
  2012 + * Check if an attribute must be bound using property, e.g. value
  2013 + * Platform-dependent.
  2014 + */
  2015 + mustUseProp: no,
  2016 +
  2017 + /**
  2018 + * Perform updates asynchronously. Intended to be used by Vue Test Utils
  2019 + * This will significantly reduce performance if set to false.
  2020 + */
  2021 + async: true,
  2022 +
  2023 + /**
  2024 + * Exposed for legacy reasons
  2025 + */
  2026 + _lifecycleHooks: LIFECYCLE_HOOKS
  2027 +});
  2028 +
  2029 +/* */
  2030 +
  2031 +/**
  2032 + * unicode letters used for parsing html tags, component names and property paths.
  2033 + * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
  2034 + * skipping \u10000-\uEFFFF due to it freezing up PhantomJS
  2035 + */
  2036 +var unicodeRegExp = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;
  2037 +
  2038 +/**
  2039 + * Check if a string starts with $ or _
  2040 + */
  2041 +function isReserved (str) {
  2042 + var c = (str + '').charCodeAt(0);
  2043 + return c === 0x24 || c === 0x5F
  2044 +}
  2045 +
  2046 +/**
  2047 + * Define a property.
  2048 + */
  2049 +function def (obj, key, val, enumerable) {
  2050 + Object.defineProperty(obj, key, {
  2051 + value: val,
  2052 + enumerable: !!enumerable,
  2053 + writable: true,
  2054 + configurable: true
  2055 + });
  2056 +}
  2057 +
  2058 +/**
  2059 + * Parse simple path.
  2060 + */
  2061 +var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
  2062 +function parsePath (path) {
  2063 + if (bailRE.test(path)) {
  2064 + return
  2065 + }
  2066 + var segments = path.split('.');
  2067 + return function (obj) {
  2068 + for (var i = 0; i < segments.length; i++) {
  2069 + if (!obj) { return }
  2070 + obj = obj[segments[i]];
  2071 + }
  2072 + return obj
  2073 + }
  2074 +}
  2075 +
  2076 +/* */
  2077 +
  2078 +// can we use __proto__?
  2079 +var hasProto = '__proto__' in {};
  2080 +
  2081 +// Browser environment sniffing
  2082 +var inBrowser = typeof window !== 'undefined';
  2083 +var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
  2084 +var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
  2085 +var UA = inBrowser && window.navigator.userAgent.toLowerCase();
  2086 +var isIE = UA && /msie|trident/.test(UA);
  2087 +var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
  2088 +var isEdge = UA && UA.indexOf('edge/') > 0;
  2089 +var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
  2090 +var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
  2091 +var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
  2092 +var isPhantomJS = UA && /phantomjs/.test(UA);
  2093 +var isFF = UA && UA.match(/firefox\/(\d+)/);
  2094 +
  2095 +// Firefox has a "watch" function on Object.prototype...
  2096 +var nativeWatch = ({}).watch;
  2097 +if (inBrowser) {
  2098 + try {
  2099 + var opts = {};
  2100 + Object.defineProperty(opts, 'passive', ({
  2101 + get: function get () {
  2102 + }
  2103 + })); // https://github.com/facebook/flow/issues/285
  2104 + window.addEventListener('test-passive', null, opts);
  2105 + } catch (e) {}
  2106 +}
  2107 +
  2108 +// this needs to be lazy-evaled because vue may be required before
  2109 +// vue-server-renderer can set VUE_ENV
  2110 +var _isServer;
  2111 +var isServerRendering = function () {
  2112 + if (_isServer === undefined) {
  2113 + /* istanbul ignore if */
  2114 + if (!inBrowser && !inWeex && typeof global !== 'undefined') {
  2115 + // detect presence of vue-server-renderer and avoid
  2116 + // Webpack shimming the process
  2117 + _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';
  2118 + } else {
  2119 + _isServer = false;
  2120 + }
  2121 + }
  2122 + return _isServer
  2123 +};
  2124 +
  2125 +// detect devtools
  2126 +var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;
  2127 +
  2128 +/* istanbul ignore next */
  2129 +function isNative (Ctor) {
  2130 + return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
  2131 +}
  2132 +
  2133 +var hasSymbol =
  2134 + typeof Symbol !== 'undefined' && isNative(Symbol) &&
  2135 + typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
  2136 +
  2137 +var _Set;
  2138 +/* istanbul ignore if */ // $flow-disable-line
  2139 +if (typeof Set !== 'undefined' && isNative(Set)) {
  2140 + // use native Set when available.
  2141 + _Set = Set;
  2142 +} else {
  2143 + // a non-standard Set polyfill that only works with primitive keys.
  2144 + _Set = /*@__PURE__*/(function () {
  2145 + function Set () {
  2146 + this.set = Object.create(null);
  2147 + }
  2148 + Set.prototype.has = function has (key) {
  2149 + return this.set[key] === true
  2150 + };
  2151 + Set.prototype.add = function add (key) {
  2152 + this.set[key] = true;
  2153 + };
  2154 + Set.prototype.clear = function clear () {
  2155 + this.set = Object.create(null);
  2156 + };
  2157 +
  2158 + return Set;
  2159 + }());
  2160 +}
  2161 +
  2162 +/* */
  2163 +
  2164 +var warn = noop;
  2165 +var tip = noop;
  2166 +var generateComponentTrace = (noop); // work around flow check
  2167 +var formatComponentName = (noop);
  2168 +
  2169 +if (true) {
  2170 + var hasConsole = typeof console !== 'undefined';
  2171 + var classifyRE = /(?:^|[-_])(\w)/g;
  2172 + var classify = function (str) { return str
  2173 + .replace(classifyRE, function (c) { return c.toUpperCase(); })
  2174 + .replace(/[-_]/g, ''); };
  2175 +
  2176 + warn = function (msg, vm) {
  2177 + var trace = vm ? generateComponentTrace(vm) : '';
  2178 +
  2179 + if (config.warnHandler) {
  2180 + config.warnHandler.call(null, msg, vm, trace);
  2181 + } else if (hasConsole && (!config.silent)) {
  2182 + console.error(("[Vue warn]: " + msg + trace));
  2183 + }
  2184 + };
  2185 +
  2186 + tip = function (msg, vm) {
  2187 + if (hasConsole && (!config.silent)) {
  2188 + console.warn("[Vue tip]: " + msg + (
  2189 + vm ? generateComponentTrace(vm) : ''
  2190 + ));
  2191 + }
  2192 + };
  2193 +
  2194 + formatComponentName = function (vm, includeFile) {
  2195 + {
  2196 + if(vm.$scope && vm.$scope.is){
  2197 + return vm.$scope.is
  2198 + }
  2199 + }
  2200 + if (vm.$root === vm) {
  2201 + return '<Root>'
  2202 + }
  2203 + var options = typeof vm === 'function' && vm.cid != null
  2204 + ? vm.options
  2205 + : vm._isVue
  2206 + ? vm.$options || vm.constructor.options
  2207 + : vm;
  2208 + var name = options.name || options._componentTag;
  2209 + var file = options.__file;
  2210 + if (!name && file) {
  2211 + var match = file.match(/([^/\\]+)\.vue$/);
  2212 + name = match && match[1];
  2213 + }
  2214 +
  2215 + return (
  2216 + (name ? ("<" + (classify(name)) + ">") : "<Anonymous>") +
  2217 + (file && includeFile !== false ? (" at " + file) : '')
  2218 + )
  2219 + };
  2220 +
  2221 + var repeat = function (str, n) {
  2222 + var res = '';
  2223 + while (n) {
  2224 + if (n % 2 === 1) { res += str; }
  2225 + if (n > 1) { str += str; }
  2226 + n >>= 1;
  2227 + }
  2228 + return res
  2229 + };
  2230 +
  2231 + generateComponentTrace = function (vm) {
  2232 + if (vm._isVue && vm.$parent) {
  2233 + var tree = [];
  2234 + var currentRecursiveSequence = 0;
  2235 + while (vm) {
  2236 + if (tree.length > 0) {
  2237 + var last = tree[tree.length - 1];
  2238 + if (last.constructor === vm.constructor) {
  2239 + currentRecursiveSequence++;
  2240 + vm = vm.$parent;
  2241 + continue
  2242 + } else if (currentRecursiveSequence > 0) {
  2243 + tree[tree.length - 1] = [last, currentRecursiveSequence];
  2244 + currentRecursiveSequence = 0;
  2245 + }
  2246 + }
  2247 + tree.push(vm);
  2248 + vm = vm.$parent;
  2249 + }
  2250 + return '\n\nfound in\n\n' + tree
  2251 + .map(function (vm, i) { return ("" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)
  2252 + ? ((formatComponentName(vm[0])) + "... (" + (vm[1]) + " recursive calls)")
  2253 + : formatComponentName(vm))); })
  2254 + .join('\n')
  2255 + } else {
  2256 + return ("\n\n(found in " + (formatComponentName(vm)) + ")")
  2257 + }
  2258 + };
  2259 +}
  2260 +
  2261 +/* */
  2262 +
  2263 +var uid = 0;
  2264 +
  2265 +/**
  2266 + * A dep is an observable that can have multiple
  2267 + * directives subscribing to it.
  2268 + */
  2269 +var Dep = function Dep () {
  2270 + // fixed by xxxxxx (nvue vuex)
  2271 + /* eslint-disable no-undef */
  2272 + if(typeof SharedObject !== 'undefined'){
  2273 + this.id = SharedObject.uid++;
  2274 + } else {
  2275 + this.id = uid++;
  2276 + }
  2277 + this.subs = [];
  2278 +};
  2279 +
  2280 +Dep.prototype.addSub = function addSub (sub) {
  2281 + this.subs.push(sub);
  2282 +};
  2283 +
  2284 +Dep.prototype.removeSub = function removeSub (sub) {
  2285 + remove(this.subs, sub);
  2286 +};
  2287 +
  2288 +Dep.prototype.depend = function depend () {
  2289 + if (Dep.SharedObject.target) {
  2290 + Dep.SharedObject.target.addDep(this);
  2291 + }
  2292 +};
  2293 +
  2294 +Dep.prototype.notify = function notify () {
  2295 + // stabilize the subscriber list first
  2296 + var subs = this.subs.slice();
  2297 + if ( true && !config.async) {
  2298 + // subs aren't sorted in scheduler if not running async
  2299 + // we need to sort them now to make sure they fire in correct
  2300 + // order
  2301 + subs.sort(function (a, b) { return a.id - b.id; });
  2302 + }
  2303 + for (var i = 0, l = subs.length; i < l; i++) {
  2304 + subs[i].update();
  2305 + }
  2306 +};
  2307 +
  2308 +// The current target watcher being evaluated.
  2309 +// This is globally unique because only one watcher
  2310 +// can be evaluated at a time.
  2311 +// fixed by xxxxxx (nvue shared vuex)
  2312 +/* eslint-disable no-undef */
  2313 +Dep.SharedObject = typeof SharedObject !== 'undefined' ? SharedObject : {};
  2314 +Dep.SharedObject.target = null;
  2315 +Dep.SharedObject.targetStack = [];
  2316 +
  2317 +function pushTarget (target) {
  2318 + Dep.SharedObject.targetStack.push(target);
  2319 + Dep.SharedObject.target = target;
  2320 +}
  2321 +
  2322 +function popTarget () {
  2323 + Dep.SharedObject.targetStack.pop();
  2324 + Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];
  2325 +}
  2326 +
  2327 +/* */
  2328 +
  2329 +var VNode = function VNode (
  2330 + tag,
  2331 + data,
  2332 + children,
  2333 + text,
  2334 + elm,
  2335 + context,
  2336 + componentOptions,
  2337 + asyncFactory
  2338 +) {
  2339 + this.tag = tag;
  2340 + this.data = data;
  2341 + this.children = children;
  2342 + this.text = text;
  2343 + this.elm = elm;
  2344 + this.ns = undefined;
  2345 + this.context = context;
  2346 + this.fnContext = undefined;
  2347 + this.fnOptions = undefined;
  2348 + this.fnScopeId = undefined;
  2349 + this.key = data && data.key;
  2350 + this.componentOptions = componentOptions;
  2351 + this.componentInstance = undefined;
  2352 + this.parent = undefined;
  2353 + this.raw = false;
  2354 + this.isStatic = false;
  2355 + this.isRootInsert = true;
  2356 + this.isComment = false;
  2357 + this.isCloned = false;
  2358 + this.isOnce = false;
  2359 + this.asyncFactory = asyncFactory;
  2360 + this.asyncMeta = undefined;
  2361 + this.isAsyncPlaceholder = false;
  2362 +};
  2363 +
  2364 +var prototypeAccessors = { child: { configurable: true } };
  2365 +
  2366 +// DEPRECATED: alias for componentInstance for backwards compat.
  2367 +/* istanbul ignore next */
  2368 +prototypeAccessors.child.get = function () {
  2369 + return this.componentInstance
  2370 +};
  2371 +
  2372 +Object.defineProperties( VNode.prototype, prototypeAccessors );
  2373 +
  2374 +var createEmptyVNode = function (text) {
  2375 + if ( text === void 0 ) text = '';
  2376 +
  2377 + var node = new VNode();
  2378 + node.text = text;
  2379 + node.isComment = true;
  2380 + return node
  2381 +};
  2382 +
  2383 +function createTextVNode (val) {
  2384 + return new VNode(undefined, undefined, undefined, String(val))
  2385 +}
  2386 +
  2387 +// optimized shallow clone
  2388 +// used for static nodes and slot nodes because they may be reused across
  2389 +// multiple renders, cloning them avoids errors when DOM manipulations rely
  2390 +// on their elm reference.
  2391 +function cloneVNode (vnode) {
  2392 + var cloned = new VNode(
  2393 + vnode.tag,
  2394 + vnode.data,
  2395 + // #7975
  2396 + // clone children array to avoid mutating original in case of cloning
  2397 + // a child.
  2398 + vnode.children && vnode.children.slice(),
  2399 + vnode.text,
  2400 + vnode.elm,
  2401 + vnode.context,
  2402 + vnode.componentOptions,
  2403 + vnode.asyncFactory
  2404 + );
  2405 + cloned.ns = vnode.ns;
  2406 + cloned.isStatic = vnode.isStatic;
  2407 + cloned.key = vnode.key;
  2408 + cloned.isComment = vnode.isComment;
  2409 + cloned.fnContext = vnode.fnContext;
  2410 + cloned.fnOptions = vnode.fnOptions;
  2411 + cloned.fnScopeId = vnode.fnScopeId;
  2412 + cloned.asyncMeta = vnode.asyncMeta;
  2413 + cloned.isCloned = true;
  2414 + return cloned
  2415 +}
  2416 +
  2417 +/*
  2418 + * not type checking this file because flow doesn't play well with
  2419 + * dynamically accessing methods on Array prototype
  2420 + */
  2421 +
  2422 +var arrayProto = Array.prototype;
  2423 +var arrayMethods = Object.create(arrayProto);
  2424 +
  2425 +var methodsToPatch = [
  2426 + 'push',
  2427 + 'pop',
  2428 + 'shift',
  2429 + 'unshift',
  2430 + 'splice',
  2431 + 'sort',
  2432 + 'reverse'
  2433 +];
  2434 +
  2435 +/**
  2436 + * Intercept mutating methods and emit events
  2437 + */
  2438 +methodsToPatch.forEach(function (method) {
  2439 + // cache original method
  2440 + var original = arrayProto[method];
  2441 + def(arrayMethods, method, function mutator () {
  2442 + var args = [], len = arguments.length;
  2443 + while ( len-- ) args[ len ] = arguments[ len ];
  2444 +
  2445 + var result = original.apply(this, args);
  2446 + var ob = this.__ob__;
  2447 + var inserted;
  2448 + switch (method) {
  2449 + case 'push':
  2450 + case 'unshift':
  2451 + inserted = args;
  2452 + break
  2453 + case 'splice':
  2454 + inserted = args.slice(2);
  2455 + break
  2456 + }
  2457 + if (inserted) { ob.observeArray(inserted); }
  2458 + // notify change
  2459 + ob.dep.notify();
  2460 + return result
  2461 + });
  2462 +});
  2463 +
  2464 +/* */
  2465 +
  2466 +var arrayKeys = Object.getOwnPropertyNames(arrayMethods);
  2467 +
  2468 +/**
  2469 + * In some cases we may want to disable observation inside a component's
  2470 + * update computation.
  2471 + */
  2472 +var shouldObserve = true;
  2473 +
  2474 +function toggleObserving (value) {
  2475 + shouldObserve = value;
  2476 +}
  2477 +
  2478 +/**
  2479 + * Observer class that is attached to each observed
  2480 + * object. Once attached, the observer converts the target
  2481 + * object's property keys into getter/setters that
  2482 + * collect dependencies and dispatch updates.
  2483 + */
  2484 +var Observer = function Observer (value) {
  2485 + this.value = value;
  2486 + this.dep = new Dep();
  2487 + this.vmCount = 0;
  2488 + def(value, '__ob__', this);
  2489 + if (Array.isArray(value)) {
  2490 + if (hasProto) {
  2491 + {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑
  2492 + if(value.push !== value.__proto__.push){
  2493 + copyAugment(value, arrayMethods, arrayKeys);
  2494 + } else {
  2495 + protoAugment(value, arrayMethods);
  2496 + }
  2497 + }
  2498 + } else {
  2499 + copyAugment(value, arrayMethods, arrayKeys);
  2500 + }
  2501 + this.observeArray(value);
  2502 + } else {
  2503 + this.walk(value);
  2504 + }
  2505 +};
  2506 +
  2507 +/**
  2508 + * Walk through all properties and convert them into
  2509 + * getter/setters. This method should only be called when
  2510 + * value type is Object.
  2511 + */
  2512 +Observer.prototype.walk = function walk (obj) {
  2513 + var keys = Object.keys(obj);
  2514 + for (var i = 0; i < keys.length; i++) {
  2515 + defineReactive$$1(obj, keys[i]);
  2516 + }
  2517 +};
  2518 +
  2519 +/**
  2520 + * Observe a list of Array items.
  2521 + */
  2522 +Observer.prototype.observeArray = function observeArray (items) {
  2523 + for (var i = 0, l = items.length; i < l; i++) {
  2524 + observe(items[i]);
  2525 + }
  2526 +};
  2527 +
  2528 +// helpers
  2529 +
  2530 +/**
  2531 + * Augment a target Object or Array by intercepting
  2532 + * the prototype chain using __proto__
  2533 + */
  2534 +function protoAugment (target, src) {
  2535 + /* eslint-disable no-proto */
  2536 + target.__proto__ = src;
  2537 + /* eslint-enable no-proto */
  2538 +}
  2539 +
  2540 +/**
  2541 + * Augment a target Object or Array by defining
  2542 + * hidden properties.
  2543 + */
  2544 +/* istanbul ignore next */
  2545 +function copyAugment (target, src, keys) {
  2546 + for (var i = 0, l = keys.length; i < l; i++) {
  2547 + var key = keys[i];
  2548 + def(target, key, src[key]);
  2549 + }
  2550 +}
  2551 +
  2552 +/**
  2553 + * Attempt to create an observer instance for a value,
  2554 + * returns the new observer if successfully observed,
  2555 + * or the existing observer if the value already has one.
  2556 + */
  2557 +function observe (value, asRootData) {
  2558 + if (!isObject(value) || value instanceof VNode) {
  2559 + return
  2560 + }
  2561 + var ob;
  2562 + if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
  2563 + ob = value.__ob__;
  2564 + } else if (
  2565 + shouldObserve &&
  2566 + !isServerRendering() &&
  2567 + (Array.isArray(value) || isPlainObject(value)) &&
  2568 + Object.isExtensible(value) &&
  2569 + !value._isVue
  2570 + ) {
  2571 + ob = new Observer(value);
  2572 + }
  2573 + if (asRootData && ob) {
  2574 + ob.vmCount++;
  2575 + }
  2576 + return ob
  2577 +}
  2578 +
  2579 +/**
  2580 + * Define a reactive property on an Object.
  2581 + */
  2582 +function defineReactive$$1 (
  2583 + obj,
  2584 + key,
  2585 + val,
  2586 + customSetter,
  2587 + shallow
  2588 +) {
  2589 + var dep = new Dep();
  2590 +
  2591 + var property = Object.getOwnPropertyDescriptor(obj, key);
  2592 + if (property && property.configurable === false) {
  2593 + return
  2594 + }
  2595 +
  2596 + // cater for pre-defined getter/setters
  2597 + var getter = property && property.get;
  2598 + var setter = property && property.set;
  2599 + if ((!getter || setter) && arguments.length === 2) {
  2600 + val = obj[key];
  2601 + }
  2602 +
  2603 + var childOb = !shallow && observe(val);
  2604 + Object.defineProperty(obj, key, {
  2605 + enumerable: true,
  2606 + configurable: true,
  2607 + get: function reactiveGetter () {
  2608 + var value = getter ? getter.call(obj) : val;
  2609 + if (Dep.SharedObject.target) { // fixed by xxxxxx
  2610 + dep.depend();
  2611 + if (childOb) {
  2612 + childOb.dep.depend();
  2613 + if (Array.isArray(value)) {
  2614 + dependArray(value);
  2615 + }
  2616 + }
  2617 + }
  2618 + return value
  2619 + },
  2620 + set: function reactiveSetter (newVal) {
  2621 + var value = getter ? getter.call(obj) : val;
  2622 + /* eslint-disable no-self-compare */
  2623 + if (newVal === value || (newVal !== newVal && value !== value)) {
  2624 + return
  2625 + }
  2626 + /* eslint-enable no-self-compare */
  2627 + if ( true && customSetter) {
  2628 + customSetter();
  2629 + }
  2630 + // #7981: for accessor properties without setter
  2631 + if (getter && !setter) { return }
  2632 + if (setter) {
  2633 + setter.call(obj, newVal);
  2634 + } else {
  2635 + val = newVal;
  2636 + }
  2637 + childOb = !shallow && observe(newVal);
  2638 + dep.notify();
  2639 + }
  2640 + });
  2641 +}
  2642 +
  2643 +/**
  2644 + * Set a property on an object. Adds the new property and
  2645 + * triggers change notification if the property doesn't
  2646 + * already exist.
  2647 + */
  2648 +function set (target, key, val) {
  2649 + if ( true &&
  2650 + (isUndef(target) || isPrimitive(target))
  2651 + ) {
  2652 + warn(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
  2653 + }
  2654 + if (Array.isArray(target) && isValidArrayIndex(key)) {
  2655 + target.length = Math.max(target.length, key);
  2656 + target.splice(key, 1, val);
  2657 + return val
  2658 + }
  2659 + if (key in target && !(key in Object.prototype)) {
  2660 + target[key] = val;
  2661 + return val
  2662 + }
  2663 + var ob = (target).__ob__;
  2664 + if (target._isVue || (ob && ob.vmCount)) {
  2665 + true && warn(
  2666 + 'Avoid adding reactive properties to a Vue instance or its root $data ' +
  2667 + 'at runtime - declare it upfront in the data option.'
  2668 + );
  2669 + return val
  2670 + }
  2671 + if (!ob) {
  2672 + target[key] = val;
  2673 + return val
  2674 + }
  2675 + defineReactive$$1(ob.value, key, val);
  2676 + ob.dep.notify();
  2677 + return val
  2678 +}
  2679 +
  2680 +/**
  2681 + * Delete a property and trigger change if necessary.
  2682 + */
  2683 +function del (target, key) {
  2684 + if ( true &&
  2685 + (isUndef(target) || isPrimitive(target))
  2686 + ) {
  2687 + warn(("Cannot delete reactive property on undefined, null, or primitive value: " + ((target))));
  2688 + }
  2689 + if (Array.isArray(target) && isValidArrayIndex(key)) {
  2690 + target.splice(key, 1);
  2691 + return
  2692 + }
  2693 + var ob = (target).__ob__;
  2694 + if (target._isVue || (ob && ob.vmCount)) {
  2695 + true && warn(
  2696 + 'Avoid deleting properties on a Vue instance or its root $data ' +
  2697 + '- just set it to null.'
  2698 + );
  2699 + return
  2700 + }
  2701 + if (!hasOwn(target, key)) {
  2702 + return
  2703 + }
  2704 + delete target[key];
  2705 + if (!ob) {
  2706 + return
  2707 + }
  2708 + ob.dep.notify();
  2709 +}
  2710 +
  2711 +/**
  2712 + * Collect dependencies on array elements when the array is touched, since
  2713 + * we cannot intercept array element access like property getters.
  2714 + */
  2715 +function dependArray (value) {
  2716 + for (var e = (void 0), i = 0, l = value.length; i < l; i++) {
  2717 + e = value[i];
  2718 + e && e.__ob__ && e.__ob__.dep.depend();
  2719 + if (Array.isArray(e)) {
  2720 + dependArray(e);
  2721 + }
  2722 + }
  2723 +}
  2724 +
  2725 +/* */
  2726 +
  2727 +/**
  2728 + * Option overwriting strategies are functions that handle
  2729 + * how to merge a parent option value and a child option
  2730 + * value into the final value.
  2731 + */
  2732 +var strats = config.optionMergeStrategies;
  2733 +
  2734 +/**
  2735 + * Options with restrictions
  2736 + */
  2737 +if (true) {
  2738 + strats.el = strats.propsData = function (parent, child, vm, key) {
  2739 + if (!vm) {
  2740 + warn(
  2741 + "option \"" + key + "\" can only be used during instance " +
  2742 + 'creation with the `new` keyword.'
  2743 + );
  2744 + }
  2745 + return defaultStrat(parent, child)
  2746 + };
  2747 +}
  2748 +
  2749 +/**
  2750 + * Helper that recursively merges two data objects together.
  2751 + */
  2752 +function mergeData (to, from) {
  2753 + if (!from) { return to }
  2754 + var key, toVal, fromVal;
  2755 +
  2756 + var keys = hasSymbol
  2757 + ? Reflect.ownKeys(from)
  2758 + : Object.keys(from);
  2759 +
  2760 + for (var i = 0; i < keys.length; i++) {
  2761 + key = keys[i];
  2762 + // in case the object is already observed...
  2763 + if (key === '__ob__') { continue }
  2764 + toVal = to[key];
  2765 + fromVal = from[key];
  2766 + if (!hasOwn(to, key)) {
  2767 + set(to, key, fromVal);
  2768 + } else if (
  2769 + toVal !== fromVal &&
  2770 + isPlainObject(toVal) &&
  2771 + isPlainObject(fromVal)
  2772 + ) {
  2773 + mergeData(toVal, fromVal);
  2774 + }
  2775 + }
  2776 + return to
  2777 +}
  2778 +
  2779 +/**
  2780 + * Data
  2781 + */
  2782 +function mergeDataOrFn (
  2783 + parentVal,
  2784 + childVal,
  2785 + vm
  2786 +) {
  2787 + if (!vm) {
  2788 + // in a Vue.extend merge, both should be functions
  2789 + if (!childVal) {
  2790 + return parentVal
  2791 + }
  2792 + if (!parentVal) {
  2793 + return childVal
  2794 + }
  2795 + // when parentVal & childVal are both present,
  2796 + // we need to return a function that returns the
  2797 + // merged result of both functions... no need to
  2798 + // check if parentVal is a function here because
  2799 + // it has to be a function to pass previous merges.
  2800 + return function mergedDataFn () {
  2801 + return mergeData(
  2802 + typeof childVal === 'function' ? childVal.call(this, this) : childVal,
  2803 + typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal
  2804 + )
  2805 + }
  2806 + } else {
  2807 + return function mergedInstanceDataFn () {
  2808 + // instance merge
  2809 + var instanceData = typeof childVal === 'function'
  2810 + ? childVal.call(vm, vm)
  2811 + : childVal;
  2812 + var defaultData = typeof parentVal === 'function'
  2813 + ? parentVal.call(vm, vm)
  2814 + : parentVal;
  2815 + if (instanceData) {
  2816 + return mergeData(instanceData, defaultData)
  2817 + } else {
  2818 + return defaultData
  2819 + }
  2820 + }
  2821 + }
  2822 +}
  2823 +
  2824 +strats.data = function (
  2825 + parentVal,
  2826 + childVal,
  2827 + vm
  2828 +) {
  2829 + if (!vm) {
  2830 + if (childVal && typeof childVal !== 'function') {
  2831 + true && warn(
  2832 + 'The "data" option should be a function ' +
  2833 + 'that returns a per-instance value in component ' +
  2834 + 'definitions.',
  2835 + vm
  2836 + );
  2837 +
  2838 + return parentVal
  2839 + }
  2840 + return mergeDataOrFn(parentVal, childVal)
  2841 + }
  2842 +
  2843 + return mergeDataOrFn(parentVal, childVal, vm)
  2844 +};
  2845 +
  2846 +/**
  2847 + * Hooks and props are merged as arrays.
  2848 + */
  2849 +function mergeHook (
  2850 + parentVal,
  2851 + childVal
  2852 +) {
  2853 + var res = childVal
  2854 + ? parentVal
  2855 + ? parentVal.concat(childVal)
  2856 + : Array.isArray(childVal)
  2857 + ? childVal
  2858 + : [childVal]
  2859 + : parentVal;
  2860 + return res
  2861 + ? dedupeHooks(res)
  2862 + : res
  2863 +}
  2864 +
  2865 +function dedupeHooks (hooks) {
  2866 + var res = [];
  2867 + for (var i = 0; i < hooks.length; i++) {
  2868 + if (res.indexOf(hooks[i]) === -1) {
  2869 + res.push(hooks[i]);
  2870 + }
  2871 + }
  2872 + return res
  2873 +}
  2874 +
  2875 +LIFECYCLE_HOOKS.forEach(function (hook) {
  2876 + strats[hook] = mergeHook;
  2877 +});
  2878 +
  2879 +/**
  2880 + * Assets
  2881 + *
  2882 + * When a vm is present (instance creation), we need to do
  2883 + * a three-way merge between constructor options, instance
  2884 + * options and parent options.
  2885 + */
  2886 +function mergeAssets (
  2887 + parentVal,
  2888 + childVal,
  2889 + vm,
  2890 + key
  2891 +) {
  2892 + var res = Object.create(parentVal || null);
  2893 + if (childVal) {
  2894 + true && assertObjectType(key, childVal, vm);
  2895 + return extend(res, childVal)
  2896 + } else {
  2897 + return res
  2898 + }
  2899 +}
  2900 +
  2901 +ASSET_TYPES.forEach(function (type) {
  2902 + strats[type + 's'] = mergeAssets;
  2903 +});
  2904 +
  2905 +/**
  2906 + * Watchers.
  2907 + *
  2908 + * Watchers hashes should not overwrite one
  2909 + * another, so we merge them as arrays.
  2910 + */
  2911 +strats.watch = function (
  2912 + parentVal,
  2913 + childVal,
  2914 + vm,
  2915 + key
  2916 +) {
  2917 + // work around Firefox's Object.prototype.watch...
  2918 + if (parentVal === nativeWatch) { parentVal = undefined; }
  2919 + if (childVal === nativeWatch) { childVal = undefined; }
  2920 + /* istanbul ignore if */
  2921 + if (!childVal) { return Object.create(parentVal || null) }
  2922 + if (true) {
  2923 + assertObjectType(key, childVal, vm);
  2924 + }
  2925 + if (!parentVal) { return childVal }
  2926 + var ret = {};
  2927 + extend(ret, parentVal);
  2928 + for (var key$1 in childVal) {
  2929 + var parent = ret[key$1];
  2930 + var child = childVal[key$1];
  2931 + if (parent && !Array.isArray(parent)) {
  2932 + parent = [parent];
  2933 + }
  2934 + ret[key$1] = parent
  2935 + ? parent.concat(child)
  2936 + : Array.isArray(child) ? child : [child];
  2937 + }
  2938 + return ret
  2939 +};
  2940 +
  2941 +/**
  2942 + * Other object hashes.
  2943 + */
  2944 +strats.props =
  2945 +strats.methods =
  2946 +strats.inject =
  2947 +strats.computed = function (
  2948 + parentVal,
  2949 + childVal,
  2950 + vm,
  2951 + key
  2952 +) {
  2953 + if (childVal && "development" !== 'production') {
  2954 + assertObjectType(key, childVal, vm);
  2955 + }
  2956 + if (!parentVal) { return childVal }
  2957 + var ret = Object.create(null);
  2958 + extend(ret, parentVal);
  2959 + if (childVal) { extend(ret, childVal); }
  2960 + return ret
  2961 +};
  2962 +strats.provide = mergeDataOrFn;
  2963 +
  2964 +/**
  2965 + * Default strategy.
  2966 + */
  2967 +var defaultStrat = function (parentVal, childVal) {
  2968 + return childVal === undefined
  2969 + ? parentVal
  2970 + : childVal
  2971 +};
  2972 +
  2973 +/**
  2974 + * Validate component names
  2975 + */
  2976 +function checkComponents (options) {
  2977 + for (var key in options.components) {
  2978 + validateComponentName(key);
  2979 + }
  2980 +}
  2981 +
  2982 +function validateComponentName (name) {
  2983 + if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
  2984 + warn(
  2985 + 'Invalid component name: "' + name + '". Component names ' +
  2986 + 'should conform to valid custom element name in html5 specification.'
  2987 + );
  2988 + }
  2989 + if (isBuiltInTag(name) || config.isReservedTag(name)) {
  2990 + warn(
  2991 + 'Do not use built-in or reserved HTML elements as component ' +
  2992 + 'id: ' + name
  2993 + );
  2994 + }
  2995 +}
  2996 +
  2997 +/**
  2998 + * Ensure all props option syntax are normalized into the
  2999 + * Object-based format.
  3000 + */
  3001 +function normalizeProps (options, vm) {
  3002 + var props = options.props;
  3003 + if (!props) { return }
  3004 + var res = {};
  3005 + var i, val, name;
  3006 + if (Array.isArray(props)) {
  3007 + i = props.length;
  3008 + while (i--) {
  3009 + val = props[i];
  3010 + if (typeof val === 'string') {
  3011 + name = camelize(val);
  3012 + res[name] = { type: null };
  3013 + } else if (true) {
  3014 + warn('props must be strings when using array syntax.');
  3015 + }
  3016 + }
  3017 + } else if (isPlainObject(props)) {
  3018 + for (var key in props) {
  3019 + val = props[key];
  3020 + name = camelize(key);
  3021 + res[name] = isPlainObject(val)
  3022 + ? val
  3023 + : { type: val };
  3024 + }
  3025 + } else if (true) {
  3026 + warn(
  3027 + "Invalid value for option \"props\": expected an Array or an Object, " +
  3028 + "but got " + (toRawType(props)) + ".",
  3029 + vm
  3030 + );
  3031 + }
  3032 + options.props = res;
  3033 +}
  3034 +
  3035 +/**
  3036 + * Normalize all injections into Object-based format
  3037 + */
  3038 +function normalizeInject (options, vm) {
  3039 + var inject = options.inject;
  3040 + if (!inject) { return }
  3041 + var normalized = options.inject = {};
  3042 + if (Array.isArray(inject)) {
  3043 + for (var i = 0; i < inject.length; i++) {
  3044 + normalized[inject[i]] = { from: inject[i] };
  3045 + }
  3046 + } else if (isPlainObject(inject)) {
  3047 + for (var key in inject) {
  3048 + var val = inject[key];
  3049 + normalized[key] = isPlainObject(val)
  3050 + ? extend({ from: key }, val)
  3051 + : { from: val };
  3052 + }
  3053 + } else if (true) {
  3054 + warn(
  3055 + "Invalid value for option \"inject\": expected an Array or an Object, " +
  3056 + "but got " + (toRawType(inject)) + ".",
  3057 + vm
  3058 + );
  3059 + }
  3060 +}
  3061 +
  3062 +/**
  3063 + * Normalize raw function directives into object format.
  3064 + */
  3065 +function normalizeDirectives (options) {
  3066 + var dirs = options.directives;
  3067 + if (dirs) {
  3068 + for (var key in dirs) {
  3069 + var def$$1 = dirs[key];
  3070 + if (typeof def$$1 === 'function') {
  3071 + dirs[key] = { bind: def$$1, update: def$$1 };
  3072 + }
  3073 + }
  3074 + }
  3075 +}
  3076 +
  3077 +function assertObjectType (name, value, vm) {
  3078 + if (!isPlainObject(value)) {
  3079 + warn(
  3080 + "Invalid value for option \"" + name + "\": expected an Object, " +
  3081 + "but got " + (toRawType(value)) + ".",
  3082 + vm
  3083 + );
  3084 + }
  3085 +}
  3086 +
  3087 +/**
  3088 + * Merge two option objects into a new one.
  3089 + * Core utility used in both instantiation and inheritance.
  3090 + */
  3091 +function mergeOptions (
  3092 + parent,
  3093 + child,
  3094 + vm
  3095 +) {
  3096 + if (true) {
  3097 + checkComponents(child);
  3098 + }
  3099 +
  3100 + if (typeof child === 'function') {
  3101 + child = child.options;
  3102 + }
  3103 +
  3104 + normalizeProps(child, vm);
  3105 + normalizeInject(child, vm);
  3106 + normalizeDirectives(child);
  3107 +
  3108 + // Apply extends and mixins on the child options,
  3109 + // but only if it is a raw options object that isn't
  3110 + // the result of another mergeOptions call.
  3111 + // Only merged options has the _base property.
  3112 + if (!child._base) {
  3113 + if (child.extends) {
  3114 + parent = mergeOptions(parent, child.extends, vm);
  3115 + }
  3116 + if (child.mixins) {
  3117 + for (var i = 0, l = child.mixins.length; i < l; i++) {
  3118 + parent = mergeOptions(parent, child.mixins[i], vm);
  3119 + }
  3120 + }
  3121 + }
  3122 +
  3123 + var options = {};
  3124 + var key;
  3125 + for (key in parent) {
  3126 + mergeField(key);
  3127 + }
  3128 + for (key in child) {
  3129 + if (!hasOwn(parent, key)) {
  3130 + mergeField(key);
  3131 + }
  3132 + }
  3133 + function mergeField (key) {
  3134 + var strat = strats[key] || defaultStrat;
  3135 + options[key] = strat(parent[key], child[key], vm, key);
  3136 + }
  3137 + return options
  3138 +}
  3139 +
  3140 +/**
  3141 + * Resolve an asset.
  3142 + * This function is used because child instances need access
  3143 + * to assets defined in its ancestor chain.
  3144 + */
  3145 +function resolveAsset (
  3146 + options,
  3147 + type,
  3148 + id,
  3149 + warnMissing
  3150 +) {
  3151 + /* istanbul ignore if */
  3152 + if (typeof id !== 'string') {
  3153 + return
  3154 + }
  3155 + var assets = options[type];
  3156 + // check local registration variations first
  3157 + if (hasOwn(assets, id)) { return assets[id] }
  3158 + var camelizedId = camelize(id);
  3159 + if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }
  3160 + var PascalCaseId = capitalize(camelizedId);
  3161 + if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }
  3162 + // fallback to prototype chain
  3163 + var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];
  3164 + if ( true && warnMissing && !res) {
  3165 + warn(
  3166 + 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,
  3167 + options
  3168 + );
  3169 + }
  3170 + return res
  3171 +}
  3172 +
  3173 +/* */
  3174 +
  3175 +
  3176 +
  3177 +function validateProp (
  3178 + key,
  3179 + propOptions,
  3180 + propsData,
  3181 + vm
  3182 +) {
  3183 + var prop = propOptions[key];
  3184 + var absent = !hasOwn(propsData, key);
  3185 + var value = propsData[key];
  3186 + // boolean casting
  3187 + var booleanIndex = getTypeIndex(Boolean, prop.type);
  3188 + if (booleanIndex > -1) {
  3189 + if (absent && !hasOwn(prop, 'default')) {
  3190 + value = false;
  3191 + } else if (value === '' || value === hyphenate(key)) {
  3192 + // only cast empty string / same name to boolean if
  3193 + // boolean has higher priority
  3194 + var stringIndex = getTypeIndex(String, prop.type);
  3195 + if (stringIndex < 0 || booleanIndex < stringIndex) {
  3196 + value = true;
  3197 + }
  3198 + }
  3199 + }
  3200 + // check default value
  3201 + if (value === undefined) {
  3202 + value = getPropDefaultValue(vm, prop, key);
  3203 + // since the default value is a fresh copy,
  3204 + // make sure to observe it.
  3205 + var prevShouldObserve = shouldObserve;
  3206 + toggleObserving(true);
  3207 + observe(value);
  3208 + toggleObserving(prevShouldObserve);
  3209 + }
  3210 + if (
  3211 + true
  3212 + ) {
  3213 + assertProp(prop, key, value, vm, absent);
  3214 + }
  3215 + return value
  3216 +}
  3217 +
  3218 +/**
  3219 + * Get the default value of a prop.
  3220 + */
  3221 +function getPropDefaultValue (vm, prop, key) {
  3222 + // no default, return undefined
  3223 + if (!hasOwn(prop, 'default')) {
  3224 + return undefined
  3225 + }
  3226 + var def = prop.default;
  3227 + // warn against non-factory defaults for Object & Array
  3228 + if ( true && isObject(def)) {
  3229 + warn(
  3230 + 'Invalid default value for prop "' + key + '": ' +
  3231 + 'Props with type Object/Array must use a factory function ' +
  3232 + 'to return the default value.',
  3233 + vm
  3234 + );
  3235 + }
  3236 + // the raw prop value was also undefined from previous render,
  3237 + // return previous default value to avoid unnecessary watcher trigger
  3238 + if (vm && vm.$options.propsData &&
  3239 + vm.$options.propsData[key] === undefined &&
  3240 + vm._props[key] !== undefined
  3241 + ) {
  3242 + return vm._props[key]
  3243 + }
  3244 + // call factory function for non-Function types
  3245 + // a value is Function if its prototype is function even across different execution context
  3246 + return typeof def === 'function' && getType(prop.type) !== 'Function'
  3247 + ? def.call(vm)
  3248 + : def
  3249 +}
  3250 +
  3251 +/**
  3252 + * Assert whether a prop is valid.
  3253 + */
  3254 +function assertProp (
  3255 + prop,
  3256 + name,
  3257 + value,
  3258 + vm,
  3259 + absent
  3260 +) {
  3261 + if (prop.required && absent) {
  3262 + warn(
  3263 + 'Missing required prop: "' + name + '"',
  3264 + vm
  3265 + );
  3266 + return
  3267 + }
  3268 + if (value == null && !prop.required) {
  3269 + return
  3270 + }
  3271 + var type = prop.type;
  3272 + var valid = !type || type === true;
  3273 + var expectedTypes = [];
  3274 + if (type) {
  3275 + if (!Array.isArray(type)) {
  3276 + type = [type];
  3277 + }
  3278 + for (var i = 0; i < type.length && !valid; i++) {
  3279 + var assertedType = assertType(value, type[i]);
  3280 + expectedTypes.push(assertedType.expectedType || '');
  3281 + valid = assertedType.valid;
  3282 + }
  3283 + }
  3284 +
  3285 + if (!valid) {
  3286 + warn(
  3287 + getInvalidTypeMessage(name, value, expectedTypes),
  3288 + vm
  3289 + );
  3290 + return
  3291 + }
  3292 + var validator = prop.validator;
  3293 + if (validator) {
  3294 + if (!validator(value)) {
  3295 + warn(
  3296 + 'Invalid prop: custom validator check failed for prop "' + name + '".',
  3297 + vm
  3298 + );
  3299 + }
  3300 + }
  3301 +}
  3302 +
  3303 +var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;
  3304 +
  3305 +function assertType (value, type) {
  3306 + var valid;
  3307 + var expectedType = getType(type);
  3308 + if (simpleCheckRE.test(expectedType)) {
  3309 + var t = typeof value;
  3310 + valid = t === expectedType.toLowerCase();
  3311 + // for primitive wrapper objects
  3312 + if (!valid && t === 'object') {
  3313 + valid = value instanceof type;
  3314 + }
  3315 + } else if (expectedType === 'Object') {
  3316 + valid = isPlainObject(value);
  3317 + } else if (expectedType === 'Array') {
  3318 + valid = Array.isArray(value);
  3319 + } else {
  3320 + valid = value instanceof type;
  3321 + }
  3322 + return {
  3323 + valid: valid,
  3324 + expectedType: expectedType
  3325 + }
  3326 +}
  3327 +
  3328 +/**
  3329 + * Use function string name to check built-in types,
  3330 + * because a simple equality check will fail when running
  3331 + * across different vms / iframes.
  3332 + */
  3333 +function getType (fn) {
  3334 + var match = fn && fn.toString().match(/^\s*function (\w+)/);
  3335 + return match ? match[1] : ''
  3336 +}
  3337 +
  3338 +function isSameType (a, b) {
  3339 + return getType(a) === getType(b)
  3340 +}
  3341 +
  3342 +function getTypeIndex (type, expectedTypes) {
  3343 + if (!Array.isArray(expectedTypes)) {
  3344 + return isSameType(expectedTypes, type) ? 0 : -1
  3345 + }
  3346 + for (var i = 0, len = expectedTypes.length; i < len; i++) {
  3347 + if (isSameType(expectedTypes[i], type)) {
  3348 + return i
  3349 + }
  3350 + }
  3351 + return -1
  3352 +}
  3353 +
  3354 +function getInvalidTypeMessage (name, value, expectedTypes) {
  3355 + var message = "Invalid prop: type check failed for prop \"" + name + "\"." +
  3356 + " Expected " + (expectedTypes.map(capitalize).join(', '));
  3357 + var expectedType = expectedTypes[0];
  3358 + var receivedType = toRawType(value);
  3359 + var expectedValue = styleValue(value, expectedType);
  3360 + var receivedValue = styleValue(value, receivedType);
  3361 + // check if we need to specify expected value
  3362 + if (expectedTypes.length === 1 &&
  3363 + isExplicable(expectedType) &&
  3364 + !isBoolean(expectedType, receivedType)) {
  3365 + message += " with value " + expectedValue;
  3366 + }
  3367 + message += ", got " + receivedType + " ";
  3368 + // check if we need to specify received value
  3369 + if (isExplicable(receivedType)) {
  3370 + message += "with value " + receivedValue + ".";
  3371 + }
  3372 + return message
  3373 +}
  3374 +
  3375 +function styleValue (value, type) {
  3376 + if (type === 'String') {
  3377 + return ("\"" + value + "\"")
  3378 + } else if (type === 'Number') {
  3379 + return ("" + (Number(value)))
  3380 + } else {
  3381 + return ("" + value)
  3382 + }
  3383 +}
  3384 +
  3385 +function isExplicable (value) {
  3386 + var explicitTypes = ['string', 'number', 'boolean'];
  3387 + return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })
  3388 +}
  3389 +
  3390 +function isBoolean () {
  3391 + var args = [], len = arguments.length;
  3392 + while ( len-- ) args[ len ] = arguments[ len ];
  3393 +
  3394 + return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })
  3395 +}
  3396 +
  3397 +/* */
  3398 +
  3399 +function handleError (err, vm, info) {
  3400 + // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
  3401 + // See: https://github.com/vuejs/vuex/issues/1505
  3402 + pushTarget();
  3403 + try {
  3404 + if (vm) {
  3405 + var cur = vm;
  3406 + while ((cur = cur.$parent)) {
  3407 + var hooks = cur.$options.errorCaptured;
  3408 + if (hooks) {
  3409 + for (var i = 0; i < hooks.length; i++) {
  3410 + try {
  3411 + var capture = hooks[i].call(cur, err, vm, info) === false;
  3412 + if (capture) { return }
  3413 + } catch (e) {
  3414 + globalHandleError(e, cur, 'errorCaptured hook');
  3415 + }
  3416 + }
  3417 + }
  3418 + }
  3419 + }
  3420 + globalHandleError(err, vm, info);
  3421 + } finally {
  3422 + popTarget();
  3423 + }
  3424 +}
  3425 +
  3426 +function invokeWithErrorHandling (
  3427 + handler,
  3428 + context,
  3429 + args,
  3430 + vm,
  3431 + info
  3432 +) {
  3433 + var res;
  3434 + try {
  3435 + res = args ? handler.apply(context, args) : handler.call(context);
  3436 + if (res && !res._isVue && isPromise(res) && !res._handled) {
  3437 + res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
  3438 + // issue #9511
  3439 + // avoid catch triggering multiple times when nested calls
  3440 + res._handled = true;
  3441 + }
  3442 + } catch (e) {
  3443 + handleError(e, vm, info);
  3444 + }
  3445 + return res
  3446 +}
  3447 +
  3448 +function globalHandleError (err, vm, info) {
  3449 + if (config.errorHandler) {
  3450 + try {
  3451 + return config.errorHandler.call(null, err, vm, info)
  3452 + } catch (e) {
  3453 + // if the user intentionally throws the original error in the handler,
  3454 + // do not log it twice
  3455 + if (e !== err) {
  3456 + logError(e, null, 'config.errorHandler');
  3457 + }
  3458 + }
  3459 + }
  3460 + logError(err, vm, info);
  3461 +}
  3462 +
  3463 +function logError (err, vm, info) {
  3464 + if (true) {
  3465 + warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
  3466 + }
  3467 + /* istanbul ignore else */
  3468 + if ((inBrowser || inWeex) && typeof console !== 'undefined') {
  3469 + console.error(err);
  3470 + } else {
  3471 + throw err
  3472 + }
  3473 +}
  3474 +
  3475 +/* */
  3476 +
  3477 +var callbacks = [];
  3478 +var pending = false;
  3479 +
  3480 +function flushCallbacks () {
  3481 + pending = false;
  3482 + var copies = callbacks.slice(0);
  3483 + callbacks.length = 0;
  3484 + for (var i = 0; i < copies.length; i++) {
  3485 + copies[i]();
  3486 + }
  3487 +}
  3488 +
  3489 +// Here we have async deferring wrappers using microtasks.
  3490 +// In 2.5 we used (macro) tasks (in combination with microtasks).
  3491 +// However, it has subtle problems when state is changed right before repaint
  3492 +// (e.g. #6813, out-in transitions).
  3493 +// Also, using (macro) tasks in event handler would cause some weird behaviors
  3494 +// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).
  3495 +// So we now use microtasks everywhere, again.
  3496 +// A major drawback of this tradeoff is that there are some scenarios
  3497 +// where microtasks have too high a priority and fire in between supposedly
  3498 +// sequential events (e.g. #4521, #6690, which have workarounds)
  3499 +// or even between bubbling of the same event (#6566).
  3500 +var timerFunc;
  3501 +
  3502 +// The nextTick behavior leverages the microtask queue, which can be accessed
  3503 +// via either native Promise.then or MutationObserver.
  3504 +// MutationObserver has wider support, however it is seriously bugged in
  3505 +// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
  3506 +// completely stops working after triggering a few times... so, if native
  3507 +// Promise is available, we will use it:
  3508 +/* istanbul ignore next, $flow-disable-line */
  3509 +if (typeof Promise !== 'undefined' && isNative(Promise)) {
  3510 + var p = Promise.resolve();
  3511 + timerFunc = function () {
  3512 + p.then(flushCallbacks);
  3513 + // In problematic UIWebViews, Promise.then doesn't completely break, but
  3514 + // it can get stuck in a weird state where callbacks are pushed into the
  3515 + // microtask queue but the queue isn't being flushed, until the browser
  3516 + // needs to do some other work, e.g. handle a timer. Therefore we can
  3517 + // "force" the microtask queue to be flushed by adding an empty timer.
  3518 + if (isIOS) { setTimeout(noop); }
  3519 + };
  3520 +} else if (!isIE && typeof MutationObserver !== 'undefined' && (
  3521 + isNative(MutationObserver) ||
  3522 + // PhantomJS and iOS 7.x
  3523 + MutationObserver.toString() === '[object MutationObserverConstructor]'
  3524 +)) {
  3525 + // Use MutationObserver where native Promise is not available,
  3526 + // e.g. PhantomJS, iOS7, Android 4.4
  3527 + // (#6466 MutationObserver is unreliable in IE11)
  3528 + var counter = 1;
  3529 + var observer = new MutationObserver(flushCallbacks);
  3530 + var textNode = document.createTextNode(String(counter));
  3531 + observer.observe(textNode, {
  3532 + characterData: true
  3533 + });
  3534 + timerFunc = function () {
  3535 + counter = (counter + 1) % 2;
  3536 + textNode.data = String(counter);
  3537 + };
  3538 +} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
  3539 + // Fallback to setImmediate.
  3540 + // Technically it leverages the (macro) task queue,
  3541 + // but it is still a better choice than setTimeout.
  3542 + timerFunc = function () {
  3543 + setImmediate(flushCallbacks);
  3544 + };
  3545 +} else {
  3546 + // Fallback to setTimeout.
  3547 + timerFunc = function () {
  3548 + setTimeout(flushCallbacks, 0);
  3549 + };
  3550 +}
  3551 +
  3552 +function nextTick (cb, ctx) {
  3553 + var _resolve;
  3554 + callbacks.push(function () {
  3555 + if (cb) {
  3556 + try {
  3557 + cb.call(ctx);
  3558 + } catch (e) {
  3559 + handleError(e, ctx, 'nextTick');
  3560 + }
  3561 + } else if (_resolve) {
  3562 + _resolve(ctx);
  3563 + }
  3564 + });
  3565 + if (!pending) {
  3566 + pending = true;
  3567 + timerFunc();
  3568 + }
  3569 + // $flow-disable-line
  3570 + if (!cb && typeof Promise !== 'undefined') {
  3571 + return new Promise(function (resolve) {
  3572 + _resolve = resolve;
  3573 + })
  3574 + }
  3575 +}
  3576 +
  3577 +/* */
  3578 +
  3579 +/* not type checking this file because flow doesn't play well with Proxy */
  3580 +
  3581 +var initProxy;
  3582 +
  3583 +if (true) {
  3584 + var allowedGlobals = makeMap(
  3585 + 'Infinity,undefined,NaN,isFinite,isNaN,' +
  3586 + 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +
  3587 + 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +
  3588 + 'require' // for Webpack/Browserify
  3589 + );
  3590 +
  3591 + var warnNonPresent = function (target, key) {
  3592 + warn(
  3593 + "Property or method \"" + key + "\" is not defined on the instance but " +
  3594 + 'referenced during render. Make sure that this property is reactive, ' +
  3595 + 'either in the data option, or for class-based components, by ' +
  3596 + 'initializing the property. ' +
  3597 + 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
  3598 + target
  3599 + );
  3600 + };
  3601 +
  3602 + var warnReservedPrefix = function (target, key) {
  3603 + warn(
  3604 + "Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
  3605 + 'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
  3606 + 'prevent conflicts with Vue internals. ' +
  3607 + 'See: https://vuejs.org/v2/api/#data',
  3608 + target
  3609 + );
  3610 + };
  3611 +
  3612 + var hasProxy =
  3613 + typeof Proxy !== 'undefined' && isNative(Proxy);
  3614 +
  3615 + if (hasProxy) {
  3616 + var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');
  3617 + config.keyCodes = new Proxy(config.keyCodes, {
  3618 + set: function set (target, key, value) {
  3619 + if (isBuiltInModifier(key)) {
  3620 + warn(("Avoid overwriting built-in modifier in config.keyCodes: ." + key));
  3621 + return false
  3622 + } else {
  3623 + target[key] = value;
  3624 + return true
  3625 + }
  3626 + }
  3627 + });
  3628 + }
  3629 +
  3630 + var hasHandler = {
  3631 + has: function has (target, key) {
  3632 + var has = key in target;
  3633 + var isAllowed = allowedGlobals(key) ||
  3634 + (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));
  3635 + if (!has && !isAllowed) {
  3636 + if (key in target.$data) { warnReservedPrefix(target, key); }
  3637 + else { warnNonPresent(target, key); }
  3638 + }
  3639 + return has || !isAllowed
  3640 + }
  3641 + };
  3642 +
  3643 + var getHandler = {
  3644 + get: function get (target, key) {
  3645 + if (typeof key === 'string' && !(key in target)) {
  3646 + if (key in target.$data) { warnReservedPrefix(target, key); }
  3647 + else { warnNonPresent(target, key); }
  3648 + }
  3649 + return target[key]
  3650 + }
  3651 + };
  3652 +
  3653 + initProxy = function initProxy (vm) {
  3654 + if (hasProxy) {
  3655 + // determine which proxy handler to use
  3656 + var options = vm.$options;
  3657 + var handlers = options.render && options.render._withStripped
  3658 + ? getHandler
  3659 + : hasHandler;
  3660 + vm._renderProxy = new Proxy(vm, handlers);
  3661 + } else {
  3662 + vm._renderProxy = vm;
  3663 + }
  3664 + };
  3665 +}
  3666 +
  3667 +/* */
  3668 +
  3669 +var seenObjects = new _Set();
  3670 +
  3671 +/**
  3672 + * Recursively traverse an object to evoke all converted
  3673 + * getters, so that every nested property inside the object
  3674 + * is collected as a "deep" dependency.
  3675 + */
  3676 +function traverse (val) {
  3677 + _traverse(val, seenObjects);
  3678 + seenObjects.clear();
  3679 +}
  3680 +
  3681 +function _traverse (val, seen) {
  3682 + var i, keys;
  3683 + var isA = Array.isArray(val);
  3684 + if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {
  3685 + return
  3686 + }
  3687 + if (val.__ob__) {
  3688 + var depId = val.__ob__.dep.id;
  3689 + if (seen.has(depId)) {
  3690 + return
  3691 + }
  3692 + seen.add(depId);
  3693 + }
  3694 + if (isA) {
  3695 + i = val.length;
  3696 + while (i--) { _traverse(val[i], seen); }
  3697 + } else {
  3698 + keys = Object.keys(val);
  3699 + i = keys.length;
  3700 + while (i--) { _traverse(val[keys[i]], seen); }
  3701 + }
  3702 +}
  3703 +
  3704 +var mark;
  3705 +var measure;
  3706 +
  3707 +if (true) {
  3708 + var perf = inBrowser && window.performance;
  3709 + /* istanbul ignore if */
  3710 + if (
  3711 + perf &&
  3712 + perf.mark &&
  3713 + perf.measure &&
  3714 + perf.clearMarks &&
  3715 + perf.clearMeasures
  3716 + ) {
  3717 + mark = function (tag) { return perf.mark(tag); };
  3718 + measure = function (name, startTag, endTag) {
  3719 + perf.measure(name, startTag, endTag);
  3720 + perf.clearMarks(startTag);
  3721 + perf.clearMarks(endTag);
  3722 + // perf.clearMeasures(name)
  3723 + };
  3724 + }
  3725 +}
  3726 +
  3727 +/* */
  3728 +
  3729 +var normalizeEvent = cached(function (name) {
  3730 + var passive = name.charAt(0) === '&';
  3731 + name = passive ? name.slice(1) : name;
  3732 + var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first
  3733 + name = once$$1 ? name.slice(1) : name;
  3734 + var capture = name.charAt(0) === '!';
  3735 + name = capture ? name.slice(1) : name;
  3736 + return {
  3737 + name: name,
  3738 + once: once$$1,
  3739 + capture: capture,
  3740 + passive: passive
  3741 + }
  3742 +});
  3743 +
  3744 +function createFnInvoker (fns, vm) {
  3745 + function invoker () {
  3746 + var arguments$1 = arguments;
  3747 +
  3748 + var fns = invoker.fns;
  3749 + if (Array.isArray(fns)) {
  3750 + var cloned = fns.slice();
  3751 + for (var i = 0; i < cloned.length; i++) {
  3752 + invokeWithErrorHandling(cloned[i], null, arguments$1, vm, "v-on handler");
  3753 + }
  3754 + } else {
  3755 + // return handler return value for single handlers
  3756 + return invokeWithErrorHandling(fns, null, arguments, vm, "v-on handler")
  3757 + }
  3758 + }
  3759 + invoker.fns = fns;
  3760 + return invoker
  3761 +}
  3762 +
  3763 +function updateListeners (
  3764 + on,
  3765 + oldOn,
  3766 + add,
  3767 + remove$$1,
  3768 + createOnceHandler,
  3769 + vm
  3770 +) {
  3771 + var name, def$$1, cur, old, event;
  3772 + for (name in on) {
  3773 + def$$1 = cur = on[name];
  3774 + old = oldOn[name];
  3775 + event = normalizeEvent(name);
  3776 + if (isUndef(cur)) {
  3777 + true && warn(
  3778 + "Invalid handler for event \"" + (event.name) + "\": got " + String(cur),
  3779 + vm
  3780 + );
  3781 + } else if (isUndef(old)) {
  3782 + if (isUndef(cur.fns)) {
  3783 + cur = on[name] = createFnInvoker(cur, vm);
  3784 + }
  3785 + if (isTrue(event.once)) {
  3786 + cur = on[name] = createOnceHandler(event.name, cur, event.capture);
  3787 + }
  3788 + add(event.name, cur, event.capture, event.passive, event.params);
  3789 + } else if (cur !== old) {
  3790 + old.fns = cur;
  3791 + on[name] = old;
  3792 + }
  3793 + }
  3794 + for (name in oldOn) {
  3795 + if (isUndef(on[name])) {
  3796 + event = normalizeEvent(name);
  3797 + remove$$1(event.name, oldOn[name], event.capture);
  3798 + }
  3799 + }
  3800 +}
  3801 +
  3802 +/* */
  3803 +
  3804 +/* */
  3805 +
  3806 +// fixed by xxxxxx (mp properties)
  3807 +function extractPropertiesFromVNodeData(data, Ctor, res, context) {
  3808 + var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;
  3809 + if (isUndef(propOptions)) {
  3810 + return res
  3811 + }
  3812 + var externalClasses = Ctor.options.mpOptions.externalClasses || [];
  3813 + var attrs = data.attrs;
  3814 + var props = data.props;
  3815 + if (isDef(attrs) || isDef(props)) {
  3816 + for (var key in propOptions) {
  3817 + var altKey = hyphenate(key);
  3818 + var result = checkProp(res, props, key, altKey, true) ||
  3819 + checkProp(res, attrs, key, altKey, false);
  3820 + // externalClass
  3821 + if (
  3822 + result &&
  3823 + res[key] &&
  3824 + externalClasses.indexOf(altKey) !== -1 &&
  3825 + context[camelize(res[key])]
  3826 + ) {
  3827 + // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)
  3828 + res[key] = context[camelize(res[key])];
  3829 + }
  3830 + }
  3831 + }
  3832 + return res
  3833 +}
  3834 +
  3835 +function extractPropsFromVNodeData (
  3836 + data,
  3837 + Ctor,
  3838 + tag,
  3839 + context// fixed by xxxxxx
  3840 +) {
  3841 + // we are only extracting raw values here.
  3842 + // validation and default values are handled in the child
  3843 + // component itself.
  3844 + var propOptions = Ctor.options.props;
  3845 + if (isUndef(propOptions)) {
  3846 + // fixed by xxxxxx
  3847 + return extractPropertiesFromVNodeData(data, Ctor, {}, context)
  3848 + }
  3849 + var res = {};
  3850 + var attrs = data.attrs;
  3851 + var props = data.props;
  3852 + if (isDef(attrs) || isDef(props)) {
  3853 + for (var key in propOptions) {
  3854 + var altKey = hyphenate(key);
  3855 + if (true) {
  3856 + var keyInLowerCase = key.toLowerCase();
  3857 + if (
  3858 + key !== keyInLowerCase &&
  3859 + attrs && hasOwn(attrs, keyInLowerCase)
  3860 + ) {
  3861 + tip(
  3862 + "Prop \"" + keyInLowerCase + "\" is passed to component " +
  3863 + (formatComponentName(tag || Ctor)) + ", but the declared prop name is" +
  3864 + " \"" + key + "\". " +
  3865 + "Note that HTML attributes are case-insensitive and camelCased " +
  3866 + "props need to use their kebab-case equivalents when using in-DOM " +
  3867 + "templates. You should probably use \"" + altKey + "\" instead of \"" + key + "\"."
  3868 + );
  3869 + }
  3870 + }
  3871 + checkProp(res, props, key, altKey, true) ||
  3872 + checkProp(res, attrs, key, altKey, false);
  3873 + }
  3874 + }
  3875 + // fixed by xxxxxx
  3876 + return extractPropertiesFromVNodeData(data, Ctor, res, context)
  3877 +}
  3878 +
  3879 +function checkProp (
  3880 + res,
  3881 + hash,
  3882 + key,
  3883 + altKey,
  3884 + preserve
  3885 +) {
  3886 + if (isDef(hash)) {
  3887 + if (hasOwn(hash, key)) {
  3888 + res[key] = hash[key];
  3889 + if (!preserve) {
  3890 + delete hash[key];
  3891 + }
  3892 + return true
  3893 + } else if (hasOwn(hash, altKey)) {
  3894 + res[key] = hash[altKey];
  3895 + if (!preserve) {
  3896 + delete hash[altKey];
  3897 + }
  3898 + return true
  3899 + }
  3900 + }
  3901 + return false
  3902 +}
  3903 +
  3904 +/* */
  3905 +
  3906 +// The template compiler attempts to minimize the need for normalization by
  3907 +// statically analyzing the template at compile time.
  3908 +//
  3909 +// For plain HTML markup, normalization can be completely skipped because the
  3910 +// generated render function is guaranteed to return Array<VNode>. There are
  3911 +// two cases where extra normalization is needed:
  3912 +
  3913 +// 1. When the children contains components - because a functional component
  3914 +// may return an Array instead of a single root. In this case, just a simple
  3915 +// normalization is needed - if any child is an Array, we flatten the whole
  3916 +// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep
  3917 +// because functional components already normalize their own children.
  3918 +function simpleNormalizeChildren (children) {
  3919 + for (var i = 0; i < children.length; i++) {
  3920 + if (Array.isArray(children[i])) {
  3921 + return Array.prototype.concat.apply([], children)
  3922 + }
  3923 + }
  3924 + return children
  3925 +}
  3926 +
  3927 +// 2. When the children contains constructs that always generated nested Arrays,
  3928 +// e.g. <template>, <slot>, v-for, or when the children is provided by user
  3929 +// with hand-written render functions / JSX. In such cases a full normalization
  3930 +// is needed to cater to all possible types of children values.
  3931 +function normalizeChildren (children) {
  3932 + return isPrimitive(children)
  3933 + ? [createTextVNode(children)]
  3934 + : Array.isArray(children)
  3935 + ? normalizeArrayChildren(children)
  3936 + : undefined
  3937 +}
  3938 +
  3939 +function isTextNode (node) {
  3940 + return isDef(node) && isDef(node.text) && isFalse(node.isComment)
  3941 +}
  3942 +
  3943 +function normalizeArrayChildren (children, nestedIndex) {
  3944 + var res = [];
  3945 + var i, c, lastIndex, last;
  3946 + for (i = 0; i < children.length; i++) {
  3947 + c = children[i];
  3948 + if (isUndef(c) || typeof c === 'boolean') { continue }
  3949 + lastIndex = res.length - 1;
  3950 + last = res[lastIndex];
  3951 + // nested
  3952 + if (Array.isArray(c)) {
  3953 + if (c.length > 0) {
  3954 + c = normalizeArrayChildren(c, ((nestedIndex || '') + "_" + i));
  3955 + // merge adjacent text nodes
  3956 + if (isTextNode(c[0]) && isTextNode(last)) {
  3957 + res[lastIndex] = createTextVNode(last.text + (c[0]).text);
  3958 + c.shift();
  3959 + }
  3960 + res.push.apply(res, c);
  3961 + }
  3962 + } else if (isPrimitive(c)) {
  3963 + if (isTextNode(last)) {
  3964 + // merge adjacent text nodes
  3965 + // this is necessary for SSR hydration because text nodes are
  3966 + // essentially merged when rendered to HTML strings
  3967 + res[lastIndex] = createTextVNode(last.text + c);
  3968 + } else if (c !== '') {
  3969 + // convert primitive to vnode
  3970 + res.push(createTextVNode(c));
  3971 + }
  3972 + } else {
  3973 + if (isTextNode(c) && isTextNode(last)) {
  3974 + // merge adjacent text nodes
  3975 + res[lastIndex] = createTextVNode(last.text + c.text);
  3976 + } else {
  3977 + // default key for nested array children (likely generated by v-for)
  3978 + if (isTrue(children._isVList) &&
  3979 + isDef(c.tag) &&
  3980 + isUndef(c.key) &&
  3981 + isDef(nestedIndex)) {
  3982 + c.key = "__vlist" + nestedIndex + "_" + i + "__";
  3983 + }
  3984 + res.push(c);
  3985 + }
  3986 + }
  3987 + }
  3988 + return res
  3989 +}
  3990 +
  3991 +/* */
  3992 +
  3993 +function initProvide (vm) {
  3994 + var provide = vm.$options.provide;
  3995 + if (provide) {
  3996 + vm._provided = typeof provide === 'function'
  3997 + ? provide.call(vm)
  3998 + : provide;
  3999 + }
  4000 +}
  4001 +
  4002 +function initInjections (vm) {
  4003 + var result = resolveInject(vm.$options.inject, vm);
  4004 + if (result) {
  4005 + toggleObserving(false);
  4006 + Object.keys(result).forEach(function (key) {
  4007 + /* istanbul ignore else */
  4008 + if (true) {
  4009 + defineReactive$$1(vm, key, result[key], function () {
  4010 + warn(
  4011 + "Avoid mutating an injected value directly since the changes will be " +
  4012 + "overwritten whenever the provided component re-renders. " +
  4013 + "injection being mutated: \"" + key + "\"",
  4014 + vm
  4015 + );
  4016 + });
  4017 + } else {}
  4018 + });
  4019 + toggleObserving(true);
  4020 + }
  4021 +}
  4022 +
  4023 +function resolveInject (inject, vm) {
  4024 + if (inject) {
  4025 + // inject is :any because flow is not smart enough to figure out cached
  4026 + var result = Object.create(null);
  4027 + var keys = hasSymbol
  4028 + ? Reflect.ownKeys(inject)
  4029 + : Object.keys(inject);
  4030 +
  4031 + for (var i = 0; i < keys.length; i++) {
  4032 + var key = keys[i];
  4033 + // #6574 in case the inject object is observed...
  4034 + if (key === '__ob__') { continue }
  4035 + var provideKey = inject[key].from;
  4036 + var source = vm;
  4037 + while (source) {
  4038 + if (source._provided && hasOwn(source._provided, provideKey)) {
  4039 + result[key] = source._provided[provideKey];
  4040 + break
  4041 + }
  4042 + source = source.$parent;
  4043 + }
  4044 + if (!source) {
  4045 + if ('default' in inject[key]) {
  4046 + var provideDefault = inject[key].default;
  4047 + result[key] = typeof provideDefault === 'function'
  4048 + ? provideDefault.call(vm)
  4049 + : provideDefault;
  4050 + } else if (true) {
  4051 + warn(("Injection \"" + key + "\" not found"), vm);
  4052 + }
  4053 + }
  4054 + }
  4055 + return result
  4056 + }
  4057 +}
  4058 +
  4059 +/* */
  4060 +
  4061 +
  4062 +
  4063 +/**
  4064 + * Runtime helper for resolving raw children VNodes into a slot object.
  4065 + */
  4066 +function resolveSlots (
  4067 + children,
  4068 + context
  4069 +) {
  4070 + if (!children || !children.length) {
  4071 + return {}
  4072 + }
  4073 + var slots = {};
  4074 + for (var i = 0, l = children.length; i < l; i++) {
  4075 + var child = children[i];
  4076 + var data = child.data;
  4077 + // remove slot attribute if the node is resolved as a Vue slot node
  4078 + if (data && data.attrs && data.attrs.slot) {
  4079 + delete data.attrs.slot;
  4080 + }
  4081 + // named slots should only be respected if the vnode was rendered in the
  4082 + // same context.
  4083 + if ((child.context === context || child.fnContext === context) &&
  4084 + data && data.slot != null
  4085 + ) {
  4086 + var name = data.slot;
  4087 + var slot = (slots[name] || (slots[name] = []));
  4088 + if (child.tag === 'template') {
  4089 + slot.push.apply(slot, child.children || []);
  4090 + } else {
  4091 + slot.push(child);
  4092 + }
  4093 + } else {
  4094 + // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page
  4095 + if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){
  4096 + (slots['page'] || (slots['page'] = [])).push(child);
  4097 + }else{
  4098 + (slots.default || (slots.default = [])).push(child);
  4099 + }
  4100 + }
  4101 + }
  4102 + // ignore slots that contains only whitespace
  4103 + for (var name$1 in slots) {
  4104 + if (slots[name$1].every(isWhitespace)) {
  4105 + delete slots[name$1];
  4106 + }
  4107 + }
  4108 + return slots
  4109 +}
  4110 +
  4111 +function isWhitespace (node) {
  4112 + return (node.isComment && !node.asyncFactory) || node.text === ' '
  4113 +}
  4114 +
  4115 +/* */
  4116 +
  4117 +function normalizeScopedSlots (
  4118 + slots,
  4119 + normalSlots,
  4120 + prevSlots
  4121 +) {
  4122 + var res;
  4123 + var hasNormalSlots = Object.keys(normalSlots).length > 0;
  4124 + var isStable = slots ? !!slots.$stable : !hasNormalSlots;
  4125 + var key = slots && slots.$key;
  4126 + if (!slots) {
  4127 + res = {};
  4128 + } else if (slots._normalized) {
  4129 + // fast path 1: child component re-render only, parent did not change
  4130 + return slots._normalized
  4131 + } else if (
  4132 + isStable &&
  4133 + prevSlots &&
  4134 + prevSlots !== emptyObject &&
  4135 + key === prevSlots.$key &&
  4136 + !hasNormalSlots &&
  4137 + !prevSlots.$hasNormal
  4138 + ) {
  4139 + // fast path 2: stable scoped slots w/ no normal slots to proxy,
  4140 + // only need to normalize once
  4141 + return prevSlots
  4142 + } else {
  4143 + res = {};
  4144 + for (var key$1 in slots) {
  4145 + if (slots[key$1] && key$1[0] !== '$') {
  4146 + res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
  4147 + }
  4148 + }
  4149 + }
  4150 + // expose normal slots on scopedSlots
  4151 + for (var key$2 in normalSlots) {
  4152 + if (!(key$2 in res)) {
  4153 + res[key$2] = proxyNormalSlot(normalSlots, key$2);
  4154 + }
  4155 + }
  4156 + // avoriaz seems to mock a non-extensible $scopedSlots object
  4157 + // and when that is passed down this would cause an error
  4158 + if (slots && Object.isExtensible(slots)) {
  4159 + (slots)._normalized = res;
  4160 + }
  4161 + def(res, '$stable', isStable);
  4162 + def(res, '$key', key);
  4163 + def(res, '$hasNormal', hasNormalSlots);
  4164 + return res
  4165 +}
  4166 +
  4167 +function normalizeScopedSlot(normalSlots, key, fn) {
  4168 + var normalized = function () {
  4169 + var res = arguments.length ? fn.apply(null, arguments) : fn({});
  4170 + res = res && typeof res === 'object' && !Array.isArray(res)
  4171 + ? [res] // single vnode
  4172 + : normalizeChildren(res);
  4173 + return res && (
  4174 + res.length === 0 ||
  4175 + (res.length === 1 && res[0].isComment) // #9658
  4176 + ) ? undefined
  4177 + : res
  4178 + };
  4179 + // this is a slot using the new v-slot syntax without scope. although it is
  4180 + // compiled as a scoped slot, render fn users would expect it to be present
  4181 + // on this.$slots because the usage is semantically a normal slot.
  4182 + if (fn.proxy) {
  4183 + Object.defineProperty(normalSlots, key, {
  4184 + get: normalized,
  4185 + enumerable: true,
  4186 + configurable: true
  4187 + });
  4188 + }
  4189 + return normalized
  4190 +}
  4191 +
  4192 +function proxyNormalSlot(slots, key) {
  4193 + return function () { return slots[key]; }
  4194 +}
  4195 +
  4196 +/* */
  4197 +
  4198 +/**
  4199 + * Runtime helper for rendering v-for lists.
  4200 + */
  4201 +function renderList (
  4202 + val,
  4203 + render
  4204 +) {
  4205 + var ret, i, l, keys, key;
  4206 + if (Array.isArray(val) || typeof val === 'string') {
  4207 + ret = new Array(val.length);
  4208 + for (i = 0, l = val.length; i < l; i++) {
  4209 + ret[i] = render(val[i], i, i, i); // fixed by xxxxxx
  4210 + }
  4211 + } else if (typeof val === 'number') {
  4212 + ret = new Array(val);
  4213 + for (i = 0; i < val; i++) {
  4214 + ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx
  4215 + }
  4216 + } else if (isObject(val)) {
  4217 + if (hasSymbol && val[Symbol.iterator]) {
  4218 + ret = [];
  4219 + var iterator = val[Symbol.iterator]();
  4220 + var result = iterator.next();
  4221 + while (!result.done) {
  4222 + ret.push(render(result.value, ret.length, i++, i)); // fixed by xxxxxx
  4223 + result = iterator.next();
  4224 + }
  4225 + } else {
  4226 + keys = Object.keys(val);
  4227 + ret = new Array(keys.length);
  4228 + for (i = 0, l = keys.length; i < l; i++) {
  4229 + key = keys[i];
  4230 + ret[i] = render(val[key], key, i, i); // fixed by xxxxxx
  4231 + }
  4232 + }
  4233 + }
  4234 + if (!isDef(ret)) {
  4235 + ret = [];
  4236 + }
  4237 + (ret)._isVList = true;
  4238 + return ret
  4239 +}
  4240 +
  4241 +/* */
  4242 +
  4243 +/**
  4244 + * Runtime helper for rendering <slot>
  4245 + */
  4246 +function renderSlot (
  4247 + name,
  4248 + fallback,
  4249 + props,
  4250 + bindObject
  4251 +) {
  4252 + var scopedSlotFn = this.$scopedSlots[name];
  4253 + var nodes;
  4254 + if (scopedSlotFn) { // scoped slot
  4255 + props = props || {};
  4256 + if (bindObject) {
  4257 + if ( true && !isObject(bindObject)) {
  4258 + warn(
  4259 + 'slot v-bind without argument expects an Object',
  4260 + this
  4261 + );
  4262 + }
  4263 + props = extend(extend({}, bindObject), props);
  4264 + }
  4265 + // fixed by xxxxxx app-plus scopedSlot
  4266 + nodes = scopedSlotFn(props, this, props._i) || fallback;
  4267 + } else {
  4268 + nodes = this.$slots[name] || fallback;
  4269 + }
  4270 +
  4271 + var target = props && props.slot;
  4272 + if (target) {
  4273 + return this.$createElement('template', { slot: target }, nodes)
  4274 + } else {
  4275 + return nodes
  4276 + }
  4277 +}
  4278 +
  4279 +/* */
  4280 +
  4281 +/**
  4282 + * Runtime helper for resolving filters
  4283 + */
  4284 +function resolveFilter (id) {
  4285 + return resolveAsset(this.$options, 'filters', id, true) || identity
  4286 +}
  4287 +
  4288 +/* */
  4289 +
  4290 +function isKeyNotMatch (expect, actual) {
  4291 + if (Array.isArray(expect)) {
  4292 + return expect.indexOf(actual) === -1
  4293 + } else {
  4294 + return expect !== actual
  4295 + }
  4296 +}
  4297 +
  4298 +/**
  4299 + * Runtime helper for checking keyCodes from config.
  4300 + * exposed as Vue.prototype._k
  4301 + * passing in eventKeyName as last argument separately for backwards compat
  4302 + */
  4303 +function checkKeyCodes (
  4304 + eventKeyCode,
  4305 + key,
  4306 + builtInKeyCode,
  4307 + eventKeyName,
  4308 + builtInKeyName
  4309 +) {
  4310 + var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;
  4311 + if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {
  4312 + return isKeyNotMatch(builtInKeyName, eventKeyName)
  4313 + } else if (mappedKeyCode) {
  4314 + return isKeyNotMatch(mappedKeyCode, eventKeyCode)
  4315 + } else if (eventKeyName) {
  4316 + return hyphenate(eventKeyName) !== key
  4317 + }
  4318 +}
  4319 +
  4320 +/* */
  4321 +
  4322 +/**
  4323 + * Runtime helper for merging v-bind="object" into a VNode's data.
  4324 + */
  4325 +function bindObjectProps (
  4326 + data,
  4327 + tag,
  4328 + value,
  4329 + asProp,
  4330 + isSync
  4331 +) {
  4332 + if (value) {
  4333 + if (!isObject(value)) {
  4334 + true && warn(
  4335 + 'v-bind without argument expects an Object or Array value',
  4336 + this
  4337 + );
  4338 + } else {
  4339 + if (Array.isArray(value)) {
  4340 + value = toObject(value);
  4341 + }
  4342 + var hash;
  4343 + var loop = function ( key ) {
  4344 + if (
  4345 + key === 'class' ||
  4346 + key === 'style' ||
  4347 + isReservedAttribute(key)
  4348 + ) {
  4349 + hash = data;
  4350 + } else {
  4351 + var type = data.attrs && data.attrs.type;
  4352 + hash = asProp || config.mustUseProp(tag, type, key)
  4353 + ? data.domProps || (data.domProps = {})
  4354 + : data.attrs || (data.attrs = {});
  4355 + }
  4356 + var camelizedKey = camelize(key);
  4357 + var hyphenatedKey = hyphenate(key);
  4358 + if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
  4359 + hash[key] = value[key];
  4360 +
  4361 + if (isSync) {
  4362 + var on = data.on || (data.on = {});
  4363 + on[("update:" + key)] = function ($event) {
  4364 + value[key] = $event;
  4365 + };
  4366 + }
  4367 + }
  4368 + };
  4369 +
  4370 + for (var key in value) loop( key );
  4371 + }
  4372 + }
  4373 + return data
  4374 +}
  4375 +
  4376 +/* */
  4377 +
  4378 +/**
  4379 + * Runtime helper for rendering static trees.
  4380 + */
  4381 +function renderStatic (
  4382 + index,
  4383 + isInFor
  4384 +) {
  4385 + var cached = this._staticTrees || (this._staticTrees = []);
  4386 + var tree = cached[index];
  4387 + // if has already-rendered static tree and not inside v-for,
  4388 + // we can reuse the same tree.
  4389 + if (tree && !isInFor) {
  4390 + return tree
  4391 + }
  4392 + // otherwise, render a fresh tree.
  4393 + tree = cached[index] = this.$options.staticRenderFns[index].call(
  4394 + this._renderProxy,
  4395 + null,
  4396 + this // for render fns generated for functional component templates
  4397 + );
  4398 + markStatic(tree, ("__static__" + index), false);
  4399 + return tree
  4400 +}
  4401 +
  4402 +/**
  4403 + * Runtime helper for v-once.
  4404 + * Effectively it means marking the node as static with a unique key.
  4405 + */
  4406 +function markOnce (
  4407 + tree,
  4408 + index,
  4409 + key
  4410 +) {
  4411 + markStatic(tree, ("__once__" + index + (key ? ("_" + key) : "")), true);
  4412 + return tree
  4413 +}
  4414 +
  4415 +function markStatic (
  4416 + tree,
  4417 + key,
  4418 + isOnce
  4419 +) {
  4420 + if (Array.isArray(tree)) {
  4421 + for (var i = 0; i < tree.length; i++) {
  4422 + if (tree[i] && typeof tree[i] !== 'string') {
  4423 + markStaticNode(tree[i], (key + "_" + i), isOnce);
  4424 + }
  4425 + }
  4426 + } else {
  4427 + markStaticNode(tree, key, isOnce);
  4428 + }
  4429 +}
  4430 +
  4431 +function markStaticNode (node, key, isOnce) {
  4432 + node.isStatic = true;
  4433 + node.key = key;
  4434 + node.isOnce = isOnce;
  4435 +}
  4436 +
  4437 +/* */
  4438 +
  4439 +function bindObjectListeners (data, value) {
  4440 + if (value) {
  4441 + if (!isPlainObject(value)) {
  4442 + true && warn(
  4443 + 'v-on without argument expects an Object value',
  4444 + this
  4445 + );
  4446 + } else {
  4447 + var on = data.on = data.on ? extend({}, data.on) : {};
  4448 + for (var key in value) {
  4449 + var existing = on[key];
  4450 + var ours = value[key];
  4451 + on[key] = existing ? [].concat(existing, ours) : ours;
  4452 + }
  4453 + }
  4454 + }
  4455 + return data
  4456 +}
  4457 +
  4458 +/* */
  4459 +
  4460 +function resolveScopedSlots (
  4461 + fns, // see flow/vnode
  4462 + res,
  4463 + // the following are added in 2.6
  4464 + hasDynamicKeys,
  4465 + contentHashKey
  4466 +) {
  4467 + res = res || { $stable: !hasDynamicKeys };
  4468 + for (var i = 0; i < fns.length; i++) {
  4469 + var slot = fns[i];
  4470 + if (Array.isArray(slot)) {
  4471 + resolveScopedSlots(slot, res, hasDynamicKeys);
  4472 + } else if (slot) {
  4473 + // marker for reverse proxying v-slot without scope on this.$slots
  4474 + if (slot.proxy) {
  4475 + slot.fn.proxy = true;
  4476 + }
  4477 + res[slot.key] = slot.fn;
  4478 + }
  4479 + }
  4480 + if (contentHashKey) {
  4481 + (res).$key = contentHashKey;
  4482 + }
  4483 + return res
  4484 +}
  4485 +
  4486 +/* */
  4487 +
  4488 +function bindDynamicKeys (baseObj, values) {
  4489 + for (var i = 0; i < values.length; i += 2) {
  4490 + var key = values[i];
  4491 + if (typeof key === 'string' && key) {
  4492 + baseObj[values[i]] = values[i + 1];
  4493 + } else if ( true && key !== '' && key !== null) {
  4494 + // null is a special value for explicitly removing a binding
  4495 + warn(
  4496 + ("Invalid value for dynamic directive argument (expected string or null): " + key),
  4497 + this
  4498 + );
  4499 + }
  4500 + }
  4501 + return baseObj
  4502 +}
  4503 +
  4504 +// helper to dynamically append modifier runtime markers to event names.
  4505 +// ensure only append when value is already string, otherwise it will be cast
  4506 +// to string and cause the type check to miss.
  4507 +function prependModifier (value, symbol) {
  4508 + return typeof value === 'string' ? symbol + value : value
  4509 +}
  4510 +
  4511 +/* */
  4512 +
  4513 +function installRenderHelpers (target) {
  4514 + target._o = markOnce;
  4515 + target._n = toNumber;
  4516 + target._s = toString;
  4517 + target._l = renderList;
  4518 + target._t = renderSlot;
  4519 + target._q = looseEqual;
  4520 + target._i = looseIndexOf;
  4521 + target._m = renderStatic;
  4522 + target._f = resolveFilter;
  4523 + target._k = checkKeyCodes;
  4524 + target._b = bindObjectProps;
  4525 + target._v = createTextVNode;
  4526 + target._e = createEmptyVNode;
  4527 + target._u = resolveScopedSlots;
  4528 + target._g = bindObjectListeners;
  4529 + target._d = bindDynamicKeys;
  4530 + target._p = prependModifier;
  4531 +}
  4532 +
  4533 +/* */
  4534 +
  4535 +function FunctionalRenderContext (
  4536 + data,
  4537 + props,
  4538 + children,
  4539 + parent,
  4540 + Ctor
  4541 +) {
  4542 + var this$1 = this;
  4543 +
  4544 + var options = Ctor.options;
  4545 + // ensure the createElement function in functional components
  4546 + // gets a unique context - this is necessary for correct named slot check
  4547 + var contextVm;
  4548 + if (hasOwn(parent, '_uid')) {
  4549 + contextVm = Object.create(parent);
  4550 + // $flow-disable-line
  4551 + contextVm._original = parent;
  4552 + } else {
  4553 + // the context vm passed in is a functional context as well.
  4554 + // in this case we want to make sure we are able to get a hold to the
  4555 + // real context instance.
  4556 + contextVm = parent;
  4557 + // $flow-disable-line
  4558 + parent = parent._original;
  4559 + }
  4560 + var isCompiled = isTrue(options._compiled);
  4561 + var needNormalization = !isCompiled;
  4562 +
  4563 + this.data = data;
  4564 + this.props = props;
  4565 + this.children = children;
  4566 + this.parent = parent;
  4567 + this.listeners = data.on || emptyObject;
  4568 + this.injections = resolveInject(options.inject, parent);
  4569 + this.slots = function () {
  4570 + if (!this$1.$slots) {
  4571 + normalizeScopedSlots(
  4572 + data.scopedSlots,
  4573 + this$1.$slots = resolveSlots(children, parent)
  4574 + );
  4575 + }
  4576 + return this$1.$slots
  4577 + };
  4578 +
  4579 + Object.defineProperty(this, 'scopedSlots', ({
  4580 + enumerable: true,
  4581 + get: function get () {
  4582 + return normalizeScopedSlots(data.scopedSlots, this.slots())
  4583 + }
  4584 + }));
  4585 +
  4586 + // support for compiled functional template
  4587 + if (isCompiled) {
  4588 + // exposing $options for renderStatic()
  4589 + this.$options = options;
  4590 + // pre-resolve slots for renderSlot()
  4591 + this.$slots = this.slots();
  4592 + this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);
  4593 + }
  4594 +
  4595 + if (options._scopeId) {
  4596 + this._c = function (a, b, c, d) {
  4597 + var vnode = createElement(contextVm, a, b, c, d, needNormalization);
  4598 + if (vnode && !Array.isArray(vnode)) {
  4599 + vnode.fnScopeId = options._scopeId;
  4600 + vnode.fnContext = parent;
  4601 + }
  4602 + return vnode
  4603 + };
  4604 + } else {
  4605 + this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };
  4606 + }
  4607 +}
  4608 +
  4609 +installRenderHelpers(FunctionalRenderContext.prototype);
  4610 +
  4611 +function createFunctionalComponent (
  4612 + Ctor,
  4613 + propsData,
  4614 + data,
  4615 + contextVm,
  4616 + children
  4617 +) {
  4618 + var options = Ctor.options;
  4619 + var props = {};
  4620 + var propOptions = options.props;
  4621 + if (isDef(propOptions)) {
  4622 + for (var key in propOptions) {
  4623 + props[key] = validateProp(key, propOptions, propsData || emptyObject);
  4624 + }
  4625 + } else {
  4626 + if (isDef(data.attrs)) { mergeProps(props, data.attrs); }
  4627 + if (isDef(data.props)) { mergeProps(props, data.props); }
  4628 + }
  4629 +
  4630 + var renderContext = new FunctionalRenderContext(
  4631 + data,
  4632 + props,
  4633 + children,
  4634 + contextVm,
  4635 + Ctor
  4636 + );
  4637 +
  4638 + var vnode = options.render.call(null, renderContext._c, renderContext);
  4639 +
  4640 + if (vnode instanceof VNode) {
  4641 + return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
  4642 + } else if (Array.isArray(vnode)) {
  4643 + var vnodes = normalizeChildren(vnode) || [];
  4644 + var res = new Array(vnodes.length);
  4645 + for (var i = 0; i < vnodes.length; i++) {
  4646 + res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);
  4647 + }
  4648 + return res
  4649 + }
  4650 +}
  4651 +
  4652 +function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
  4653 + // #7817 clone node before setting fnContext, otherwise if the node is reused
  4654 + // (e.g. it was from a cached normal slot) the fnContext causes named slots
  4655 + // that should not be matched to match.
  4656 + var clone = cloneVNode(vnode);
  4657 + clone.fnContext = contextVm;
  4658 + clone.fnOptions = options;
  4659 + if (true) {
  4660 + (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;
  4661 + }
  4662 + if (data.slot) {
  4663 + (clone.data || (clone.data = {})).slot = data.slot;
  4664 + }
  4665 + return clone
  4666 +}
  4667 +
  4668 +function mergeProps (to, from) {
  4669 + for (var key in from) {
  4670 + to[camelize(key)] = from[key];
  4671 + }
  4672 +}
  4673 +
  4674 +/* */
  4675 +
  4676 +/* */
  4677 +
  4678 +/* */
  4679 +
  4680 +/* */
  4681 +
  4682 +// inline hooks to be invoked on component VNodes during patch
  4683 +var componentVNodeHooks = {
  4684 + init: function init (vnode, hydrating) {
  4685 + if (
  4686 + vnode.componentInstance &&
  4687 + !vnode.componentInstance._isDestroyed &&
  4688 + vnode.data.keepAlive
  4689 + ) {
  4690 + // kept-alive components, treat as a patch
  4691 + var mountedNode = vnode; // work around flow
  4692 + componentVNodeHooks.prepatch(mountedNode, mountedNode);
  4693 + } else {
  4694 + var child = vnode.componentInstance = createComponentInstanceForVnode(
  4695 + vnode,
  4696 + activeInstance
  4697 + );
  4698 + child.$mount(hydrating ? vnode.elm : undefined, hydrating);
  4699 + }
  4700 + },
  4701 +
  4702 + prepatch: function prepatch (oldVnode, vnode) {
  4703 + var options = vnode.componentOptions;
  4704 + var child = vnode.componentInstance = oldVnode.componentInstance;
  4705 + updateChildComponent(
  4706 + child,
  4707 + options.propsData, // updated props
  4708 + options.listeners, // updated listeners
  4709 + vnode, // new parent vnode
  4710 + options.children // new children
  4711 + );
  4712 + },
  4713 +
  4714 + insert: function insert (vnode) {
  4715 + var context = vnode.context;
  4716 + var componentInstance = vnode.componentInstance;
  4717 + if (!componentInstance._isMounted) {
  4718 + callHook(componentInstance, 'onServiceCreated');
  4719 + callHook(componentInstance, 'onServiceAttached');
  4720 + componentInstance._isMounted = true;
  4721 + callHook(componentInstance, 'mounted');
  4722 + }
  4723 + if (vnode.data.keepAlive) {
  4724 + if (context._isMounted) {
  4725 + // vue-router#1212
  4726 + // During updates, a kept-alive component's child components may
  4727 + // change, so directly walking the tree here may call activated hooks
  4728 + // on incorrect children. Instead we push them into a queue which will
  4729 + // be processed after the whole patch process ended.
  4730 + queueActivatedComponent(componentInstance);
  4731 + } else {
  4732 + activateChildComponent(componentInstance, true /* direct */);
  4733 + }
  4734 + }
  4735 + },
  4736 +
  4737 + destroy: function destroy (vnode) {
  4738 + var componentInstance = vnode.componentInstance;
  4739 + if (!componentInstance._isDestroyed) {
  4740 + if (!vnode.data.keepAlive) {
  4741 + componentInstance.$destroy();
  4742 + } else {
  4743 + deactivateChildComponent(componentInstance, true /* direct */);
  4744 + }
  4745 + }
  4746 + }
  4747 +};
  4748 +
  4749 +var hooksToMerge = Object.keys(componentVNodeHooks);
  4750 +
  4751 +function createComponent (
  4752 + Ctor,
  4753 + data,
  4754 + context,
  4755 + children,
  4756 + tag
  4757 +) {
  4758 + if (isUndef(Ctor)) {
  4759 + return
  4760 + }
  4761 +
  4762 + var baseCtor = context.$options._base;
  4763 +
  4764 + // plain options object: turn it into a constructor
  4765 + if (isObject(Ctor)) {
  4766 + Ctor = baseCtor.extend(Ctor);
  4767 + }
  4768 +
  4769 + // if at this stage it's not a constructor or an async component factory,
  4770 + // reject.
  4771 + if (typeof Ctor !== 'function') {
  4772 + if (true) {
  4773 + warn(("Invalid Component definition: " + (String(Ctor))), context);
  4774 + }
  4775 + return
  4776 + }
  4777 +
  4778 + // async component
  4779 + var asyncFactory;
  4780 + if (isUndef(Ctor.cid)) {
  4781 + asyncFactory = Ctor;
  4782 + Ctor = resolveAsyncComponent(asyncFactory, baseCtor);
  4783 + if (Ctor === undefined) {
  4784 + // return a placeholder node for async component, which is rendered
  4785 + // as a comment node but preserves all the raw information for the node.
  4786 + // the information will be used for async server-rendering and hydration.
  4787 + return createAsyncPlaceholder(
  4788 + asyncFactory,
  4789 + data,
  4790 + context,
  4791 + children,
  4792 + tag
  4793 + )
  4794 + }
  4795 + }
  4796 +
  4797 + data = data || {};
  4798 +
  4799 + // resolve constructor options in case global mixins are applied after
  4800 + // component constructor creation
  4801 + resolveConstructorOptions(Ctor);
  4802 +
  4803 + // transform component v-model data into props & events
  4804 + if (isDef(data.model)) {
  4805 + transformModel(Ctor.options, data);
  4806 + }
  4807 +
  4808 + // extract props
  4809 + var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx
  4810 +
  4811 + // functional component
  4812 + if (isTrue(Ctor.options.functional)) {
  4813 + return createFunctionalComponent(Ctor, propsData, data, context, children)
  4814 + }
  4815 +
  4816 + // extract listeners, since these needs to be treated as
  4817 + // child component listeners instead of DOM listeners
  4818 + var listeners = data.on;
  4819 + // replace with listeners with .native modifier
  4820 + // so it gets processed during parent component patch.
  4821 + data.on = data.nativeOn;
  4822 +
  4823 + if (isTrue(Ctor.options.abstract)) {
  4824 + // abstract components do not keep anything
  4825 + // other than props & listeners & slot
  4826 +
  4827 + // work around flow
  4828 + var slot = data.slot;
  4829 + data = {};
  4830 + if (slot) {
  4831 + data.slot = slot;
  4832 + }
  4833 + }
  4834 +
  4835 + // install component management hooks onto the placeholder node
  4836 + installComponentHooks(data);
  4837 +
  4838 + // return a placeholder vnode
  4839 + var name = Ctor.options.name || tag;
  4840 + var vnode = new VNode(
  4841 + ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')),
  4842 + data, undefined, undefined, undefined, context,
  4843 + { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },
  4844 + asyncFactory
  4845 + );
  4846 +
  4847 + return vnode
  4848 +}
  4849 +
  4850 +function createComponentInstanceForVnode (
  4851 + vnode, // we know it's MountedComponentVNode but flow doesn't
  4852 + parent // activeInstance in lifecycle state
  4853 +) {
  4854 + var options = {
  4855 + _isComponent: true,
  4856 + _parentVnode: vnode,
  4857 + parent: parent
  4858 + };
  4859 + // check inline-template render functions
  4860 + var inlineTemplate = vnode.data.inlineTemplate;
  4861 + if (isDef(inlineTemplate)) {
  4862 + options.render = inlineTemplate.render;
  4863 + options.staticRenderFns = inlineTemplate.staticRenderFns;
  4864 + }
  4865 + return new vnode.componentOptions.Ctor(options)
  4866 +}
  4867 +
  4868 +function installComponentHooks (data) {
  4869 + var hooks = data.hook || (data.hook = {});
  4870 + for (var i = 0; i < hooksToMerge.length; i++) {
  4871 + var key = hooksToMerge[i];
  4872 + var existing = hooks[key];
  4873 + var toMerge = componentVNodeHooks[key];
  4874 + if (existing !== toMerge && !(existing && existing._merged)) {
  4875 + hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;
  4876 + }
  4877 + }
  4878 +}
  4879 +
  4880 +function mergeHook$1 (f1, f2) {
  4881 + var merged = function (a, b) {
  4882 + // flow complains about extra args which is why we use any
  4883 + f1(a, b);
  4884 + f2(a, b);
  4885 + };
  4886 + merged._merged = true;
  4887 + return merged
  4888 +}
  4889 +
  4890 +// transform component v-model info (value and callback) into
  4891 +// prop and event handler respectively.
  4892 +function transformModel (options, data) {
  4893 + var prop = (options.model && options.model.prop) || 'value';
  4894 + var event = (options.model && options.model.event) || 'input'
  4895 + ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;
  4896 + var on = data.on || (data.on = {});
  4897 + var existing = on[event];
  4898 + var callback = data.model.callback;
  4899 + if (isDef(existing)) {
  4900 + if (
  4901 + Array.isArray(existing)
  4902 + ? existing.indexOf(callback) === -1
  4903 + : existing !== callback
  4904 + ) {
  4905 + on[event] = [callback].concat(existing);
  4906 + }
  4907 + } else {
  4908 + on[event] = callback;
  4909 + }
  4910 +}
  4911 +
  4912 +/* */
  4913 +
  4914 +var SIMPLE_NORMALIZE = 1;
  4915 +var ALWAYS_NORMALIZE = 2;
  4916 +
  4917 +// wrapper function for providing a more flexible interface
  4918 +// without getting yelled at by flow
  4919 +function createElement (
  4920 + context,
  4921 + tag,
  4922 + data,
  4923 + children,
  4924 + normalizationType,
  4925 + alwaysNormalize
  4926 +) {
  4927 + if (Array.isArray(data) || isPrimitive(data)) {
  4928 + normalizationType = children;
  4929 + children = data;
  4930 + data = undefined;
  4931 + }
  4932 + if (isTrue(alwaysNormalize)) {
  4933 + normalizationType = ALWAYS_NORMALIZE;
  4934 + }
  4935 + return _createElement(context, tag, data, children, normalizationType)
  4936 +}
  4937 +
  4938 +function _createElement (
  4939 + context,
  4940 + tag,
  4941 + data,
  4942 + children,
  4943 + normalizationType
  4944 +) {
  4945 + if (isDef(data) && isDef((data).__ob__)) {
  4946 + true && warn(
  4947 + "Avoid using observed data object as vnode data: " + (JSON.stringify(data)) + "\n" +
  4948 + 'Always create fresh vnode data objects in each render!',
  4949 + context
  4950 + );
  4951 + return createEmptyVNode()
  4952 + }
  4953 + // object syntax in v-bind
  4954 + if (isDef(data) && isDef(data.is)) {
  4955 + tag = data.is;
  4956 + }
  4957 + if (!tag) {
  4958 + // in case of component :is set to falsy value
  4959 + return createEmptyVNode()
  4960 + }
  4961 + // warn against non-primitive key
  4962 + if ( true &&
  4963 + isDef(data) && isDef(data.key) && !isPrimitive(data.key)
  4964 + ) {
  4965 + {
  4966 + warn(
  4967 + 'Avoid using non-primitive value as key, ' +
  4968 + 'use string/number value instead.',
  4969 + context
  4970 + );
  4971 + }
  4972 + }
  4973 + // support single function children as default scoped slot
  4974 + if (Array.isArray(children) &&
  4975 + typeof children[0] === 'function'
  4976 + ) {
  4977 + data = data || {};
  4978 + data.scopedSlots = { default: children[0] };
  4979 + children.length = 0;
  4980 + }
  4981 + if (normalizationType === ALWAYS_NORMALIZE) {
  4982 + children = normalizeChildren(children);
  4983 + } else if (normalizationType === SIMPLE_NORMALIZE) {
  4984 + children = simpleNormalizeChildren(children);
  4985 + }
  4986 + var vnode, ns;
  4987 + if (typeof tag === 'string') {
  4988 + var Ctor;
  4989 + ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
  4990 + if (config.isReservedTag(tag)) {
  4991 + // platform built-in elements
  4992 + if ( true && isDef(data) && isDef(data.nativeOn)) {
  4993 + warn(
  4994 + ("The .native modifier for v-on is only valid on components but it was used on <" + tag + ">."),
  4995 + context
  4996 + );
  4997 + }
  4998 + vnode = new VNode(
  4999 + config.parsePlatformTagName(tag), data, children,
  5000 + undefined, undefined, context
  5001 + );
  5002 + } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {
  5003 + // component
  5004 + vnode = createComponent(Ctor, data, context, children, tag);
  5005 + } else {
  5006 + // unknown or unlisted namespaced elements
  5007 + // check at runtime because it may get assigned a namespace when its
  5008 + // parent normalizes children
  5009 + vnode = new VNode(
  5010 + tag, data, children,
  5011 + undefined, undefined, context
  5012 + );
  5013 + }
  5014 + } else {
  5015 + // direct component options / constructor
  5016 + vnode = createComponent(tag, data, context, children);
  5017 + }
  5018 + if (Array.isArray(vnode)) {
  5019 + return vnode
  5020 + } else if (isDef(vnode)) {
  5021 + if (isDef(ns)) { applyNS(vnode, ns); }
  5022 + if (isDef(data)) { registerDeepBindings(data); }
  5023 + return vnode
  5024 + } else {
  5025 + return createEmptyVNode()
  5026 + }
  5027 +}
  5028 +
  5029 +function applyNS (vnode, ns, force) {
  5030 + vnode.ns = ns;
  5031 + if (vnode.tag === 'foreignObject') {
  5032 + // use default namespace inside foreignObject
  5033 + ns = undefined;
  5034 + force = true;
  5035 + }
  5036 + if (isDef(vnode.children)) {
  5037 + for (var i = 0, l = vnode.children.length; i < l; i++) {
  5038 + var child = vnode.children[i];
  5039 + if (isDef(child.tag) && (
  5040 + isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {
  5041 + applyNS(child, ns, force);
  5042 + }
  5043 + }
  5044 + }
  5045 +}
  5046 +
  5047 +// ref #5318
  5048 +// necessary to ensure parent re-render when deep bindings like :style and
  5049 +// :class are used on slot nodes
  5050 +function registerDeepBindings (data) {
  5051 + if (isObject(data.style)) {
  5052 + traverse(data.style);
  5053 + }
  5054 + if (isObject(data.class)) {
  5055 + traverse(data.class);
  5056 + }
  5057 +}
  5058 +
  5059 +/* */
  5060 +
  5061 +function initRender (vm) {
  5062 + vm._vnode = null; // the root of the child tree
  5063 + vm._staticTrees = null; // v-once cached trees
  5064 + var options = vm.$options;
  5065 + var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree
  5066 + var renderContext = parentVnode && parentVnode.context;
  5067 + vm.$slots = resolveSlots(options._renderChildren, renderContext);
  5068 + vm.$scopedSlots = emptyObject;
  5069 + // bind the createElement fn to this instance
  5070 + // so that we get proper render context inside it.
  5071 + // args order: tag, data, children, normalizationType, alwaysNormalize
  5072 + // internal version is used by render functions compiled from templates
  5073 + vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };
  5074 + // normalization is always applied for the public version, used in
  5075 + // user-written render functions.
  5076 + vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };
  5077 +
  5078 + // $attrs & $listeners are exposed for easier HOC creation.
  5079 + // they need to be reactive so that HOCs using them are always updated
  5080 + var parentData = parentVnode && parentVnode.data;
  5081 +
  5082 + /* istanbul ignore else */
  5083 + if (true) {
  5084 + defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {
  5085 + !isUpdatingChildComponent && warn("$attrs is readonly.", vm);
  5086 + }, true);
  5087 + defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {
  5088 + !isUpdatingChildComponent && warn("$listeners is readonly.", vm);
  5089 + }, true);
  5090 + } else {}
  5091 +}
  5092 +
  5093 +var currentRenderingInstance = null;
  5094 +
  5095 +function renderMixin (Vue) {
  5096 + // install runtime convenience helpers
  5097 + installRenderHelpers(Vue.prototype);
  5098 +
  5099 + Vue.prototype.$nextTick = function (fn) {
  5100 + return nextTick(fn, this)
  5101 + };
  5102 +
  5103 + Vue.prototype._render = function () {
  5104 + var vm = this;
  5105 + var ref = vm.$options;
  5106 + var render = ref.render;
  5107 + var _parentVnode = ref._parentVnode;
  5108 +
  5109 + if (_parentVnode) {
  5110 + vm.$scopedSlots = normalizeScopedSlots(
  5111 + _parentVnode.data.scopedSlots,
  5112 + vm.$slots,
  5113 + vm.$scopedSlots
  5114 + );
  5115 + }
  5116 +
  5117 + // set parent vnode. this allows render functions to have access
  5118 + // to the data on the placeholder node.
  5119 + vm.$vnode = _parentVnode;
  5120 + // render self
  5121 + var vnode;
  5122 + try {
  5123 + // There's no need to maintain a stack because all render fns are called
  5124 + // separately from one another. Nested component's render fns are called
  5125 + // when parent component is patched.
  5126 + currentRenderingInstance = vm;
  5127 + vnode = render.call(vm._renderProxy, vm.$createElement);
  5128 + } catch (e) {
  5129 + handleError(e, vm, "render");
  5130 + // return error render result,
  5131 + // or previous vnode to prevent render error causing blank component
  5132 + /* istanbul ignore else */
  5133 + if ( true && vm.$options.renderError) {
  5134 + try {
  5135 + vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);
  5136 + } catch (e) {
  5137 + handleError(e, vm, "renderError");
  5138 + vnode = vm._vnode;
  5139 + }
  5140 + } else {
  5141 + vnode = vm._vnode;
  5142 + }
  5143 + } finally {
  5144 + currentRenderingInstance = null;
  5145 + }
  5146 + // if the returned array contains only a single node, allow it
  5147 + if (Array.isArray(vnode) && vnode.length === 1) {
  5148 + vnode = vnode[0];
  5149 + }
  5150 + // return empty vnode in case the render function errored out
  5151 + if (!(vnode instanceof VNode)) {
  5152 + if ( true && Array.isArray(vnode)) {
  5153 + warn(
  5154 + 'Multiple root nodes returned from render function. Render function ' +
  5155 + 'should return a single root node.',
  5156 + vm
  5157 + );
  5158 + }
  5159 + vnode = createEmptyVNode();
  5160 + }
  5161 + // set parent
  5162 + vnode.parent = _parentVnode;
  5163 + return vnode
  5164 + };
  5165 +}
  5166 +
  5167 +/* */
  5168 +
  5169 +function ensureCtor (comp, base) {
  5170 + if (
  5171 + comp.__esModule ||
  5172 + (hasSymbol && comp[Symbol.toStringTag] === 'Module')
  5173 + ) {
  5174 + comp = comp.default;
  5175 + }
  5176 + return isObject(comp)
  5177 + ? base.extend(comp)
  5178 + : comp
  5179 +}
  5180 +
  5181 +function createAsyncPlaceholder (
  5182 + factory,
  5183 + data,
  5184 + context,
  5185 + children,
  5186 + tag
  5187 +) {
  5188 + var node = createEmptyVNode();
  5189 + node.asyncFactory = factory;
  5190 + node.asyncMeta = { data: data, context: context, children: children, tag: tag };
  5191 + return node
  5192 +}
  5193 +
  5194 +function resolveAsyncComponent (
  5195 + factory,
  5196 + baseCtor
  5197 +) {
  5198 + if (isTrue(factory.error) && isDef(factory.errorComp)) {
  5199 + return factory.errorComp
  5200 + }
  5201 +
  5202 + if (isDef(factory.resolved)) {
  5203 + return factory.resolved
  5204 + }
  5205 +
  5206 + var owner = currentRenderingInstance;
  5207 + if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
  5208 + // already pending
  5209 + factory.owners.push(owner);
  5210 + }
  5211 +
  5212 + if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
  5213 + return factory.loadingComp
  5214 + }
  5215 +
  5216 + if (owner && !isDef(factory.owners)) {
  5217 + var owners = factory.owners = [owner];
  5218 + var sync = true;
  5219 + var timerLoading = null;
  5220 + var timerTimeout = null
  5221 +
  5222 + ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });
  5223 +
  5224 + var forceRender = function (renderCompleted) {
  5225 + for (var i = 0, l = owners.length; i < l; i++) {
  5226 + (owners[i]).$forceUpdate();
  5227 + }
  5228 +
  5229 + if (renderCompleted) {
  5230 + owners.length = 0;
  5231 + if (timerLoading !== null) {
  5232 + clearTimeout(timerLoading);
  5233 + timerLoading = null;
  5234 + }
  5235 + if (timerTimeout !== null) {
  5236 + clearTimeout(timerTimeout);
  5237 + timerTimeout = null;
  5238 + }
  5239 + }
  5240 + };
  5241 +
  5242 + var resolve = once(function (res) {
  5243 + // cache resolved
  5244 + factory.resolved = ensureCtor(res, baseCtor);
  5245 + // invoke callbacks only if this is not a synchronous resolve
  5246 + // (async resolves are shimmed as synchronous during SSR)
  5247 + if (!sync) {
  5248 + forceRender(true);
  5249 + } else {
  5250 + owners.length = 0;
  5251 + }
  5252 + });
  5253 +
  5254 + var reject = once(function (reason) {
  5255 + true && warn(
  5256 + "Failed to resolve async component: " + (String(factory)) +
  5257 + (reason ? ("\nReason: " + reason) : '')
  5258 + );
  5259 + if (isDef(factory.errorComp)) {
  5260 + factory.error = true;
  5261 + forceRender(true);
  5262 + }
  5263 + });
  5264 +
  5265 + var res = factory(resolve, reject);
  5266 +
  5267 + if (isObject(res)) {
  5268 + if (isPromise(res)) {
  5269 + // () => Promise
  5270 + if (isUndef(factory.resolved)) {
  5271 + res.then(resolve, reject);
  5272 + }
  5273 + } else if (isPromise(res.component)) {
  5274 + res.component.then(resolve, reject);
  5275 +
  5276 + if (isDef(res.error)) {
  5277 + factory.errorComp = ensureCtor(res.error, baseCtor);
  5278 + }
  5279 +
  5280 + if (isDef(res.loading)) {
  5281 + factory.loadingComp = ensureCtor(res.loading, baseCtor);
  5282 + if (res.delay === 0) {
  5283 + factory.loading = true;
  5284 + } else {
  5285 + timerLoading = setTimeout(function () {
  5286 + timerLoading = null;
  5287 + if (isUndef(factory.resolved) && isUndef(factory.error)) {
  5288 + factory.loading = true;
  5289 + forceRender(false);
  5290 + }
  5291 + }, res.delay || 200);
  5292 + }
  5293 + }
  5294 +
  5295 + if (isDef(res.timeout)) {
  5296 + timerTimeout = setTimeout(function () {
  5297 + timerTimeout = null;
  5298 + if (isUndef(factory.resolved)) {
  5299 + reject(
  5300 + true
  5301 + ? ("timeout (" + (res.timeout) + "ms)")
  5302 + : undefined
  5303 + );
  5304 + }
  5305 + }, res.timeout);
  5306 + }
  5307 + }
  5308 + }
  5309 +
  5310 + sync = false;
  5311 + // return in case resolved synchronously
  5312 + return factory.loading
  5313 + ? factory.loadingComp
  5314 + : factory.resolved
  5315 + }
  5316 +}
  5317 +
  5318 +/* */
  5319 +
  5320 +function isAsyncPlaceholder (node) {
  5321 + return node.isComment && node.asyncFactory
  5322 +}
  5323 +
  5324 +/* */
  5325 +
  5326 +function getFirstComponentChild (children) {
  5327 + if (Array.isArray(children)) {
  5328 + for (var i = 0; i < children.length; i++) {
  5329 + var c = children[i];
  5330 + if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {
  5331 + return c
  5332 + }
  5333 + }
  5334 + }
  5335 +}
  5336 +
  5337 +/* */
  5338 +
  5339 +/* */
  5340 +
  5341 +function initEvents (vm) {
  5342 + vm._events = Object.create(null);
  5343 + vm._hasHookEvent = false;
  5344 + // init parent attached events
  5345 + var listeners = vm.$options._parentListeners;
  5346 + if (listeners) {
  5347 + updateComponentListeners(vm, listeners);
  5348 + }
  5349 +}
  5350 +
  5351 +var target;
  5352 +
  5353 +function add (event, fn) {
  5354 + target.$on(event, fn);
  5355 +}
  5356 +
  5357 +function remove$1 (event, fn) {
  5358 + target.$off(event, fn);
  5359 +}
  5360 +
  5361 +function createOnceHandler (event, fn) {
  5362 + var _target = target;
  5363 + return function onceHandler () {
  5364 + var res = fn.apply(null, arguments);
  5365 + if (res !== null) {
  5366 + _target.$off(event, onceHandler);
  5367 + }
  5368 + }
  5369 +}
  5370 +
  5371 +function updateComponentListeners (
  5372 + vm,
  5373 + listeners,
  5374 + oldListeners
  5375 +) {
  5376 + target = vm;
  5377 + updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);
  5378 + target = undefined;
  5379 +}
  5380 +
  5381 +function eventsMixin (Vue) {
  5382 + var hookRE = /^hook:/;
  5383 + Vue.prototype.$on = function (event, fn) {
  5384 + var vm = this;
  5385 + if (Array.isArray(event)) {
  5386 + for (var i = 0, l = event.length; i < l; i++) {
  5387 + vm.$on(event[i], fn);
  5388 + }
  5389 + } else {
  5390 + (vm._events[event] || (vm._events[event] = [])).push(fn);
  5391 + // optimize hook:event cost by using a boolean flag marked at registration
  5392 + // instead of a hash lookup
  5393 + if (hookRE.test(event)) {
  5394 + vm._hasHookEvent = true;
  5395 + }
  5396 + }
  5397 + return vm
  5398 + };
  5399 +
  5400 + Vue.prototype.$once = function (event, fn) {
  5401 + var vm = this;
  5402 + function on () {
  5403 + vm.$off(event, on);
  5404 + fn.apply(vm, arguments);
  5405 + }
  5406 + on.fn = fn;
  5407 + vm.$on(event, on);
  5408 + return vm
  5409 + };
  5410 +
  5411 + Vue.prototype.$off = function (event, fn) {
  5412 + var vm = this;
  5413 + // all
  5414 + if (!arguments.length) {
  5415 + vm._events = Object.create(null);
  5416 + return vm
  5417 + }
  5418 + // array of events
  5419 + if (Array.isArray(event)) {
  5420 + for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {
  5421 + vm.$off(event[i$1], fn);
  5422 + }
  5423 + return vm
  5424 + }
  5425 + // specific event
  5426 + var cbs = vm._events[event];
  5427 + if (!cbs) {
  5428 + return vm
  5429 + }
  5430 + if (!fn) {
  5431 + vm._events[event] = null;
  5432 + return vm
  5433 + }
  5434 + // specific handler
  5435 + var cb;
  5436 + var i = cbs.length;
  5437 + while (i--) {
  5438 + cb = cbs[i];
  5439 + if (cb === fn || cb.fn === fn) {
  5440 + cbs.splice(i, 1);
  5441 + break
  5442 + }
  5443 + }
  5444 + return vm
  5445 + };
  5446 +
  5447 + Vue.prototype.$emit = function (event) {
  5448 + var vm = this;
  5449 + if (true) {
  5450 + var lowerCaseEvent = event.toLowerCase();
  5451 + if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {
  5452 + tip(
  5453 + "Event \"" + lowerCaseEvent + "\" is emitted in component " +
  5454 + (formatComponentName(vm)) + " but the handler is registered for \"" + event + "\". " +
  5455 + "Note that HTML attributes are case-insensitive and you cannot use " +
  5456 + "v-on to listen to camelCase events when using in-DOM templates. " +
  5457 + "You should probably use \"" + (hyphenate(event)) + "\" instead of \"" + event + "\"."
  5458 + );
  5459 + }
  5460 + }
  5461 + var cbs = vm._events[event];
  5462 + if (cbs) {
  5463 + cbs = cbs.length > 1 ? toArray(cbs) : cbs;
  5464 + var args = toArray(arguments, 1);
  5465 + var info = "event handler for \"" + event + "\"";
  5466 + for (var i = 0, l = cbs.length; i < l; i++) {
  5467 + invokeWithErrorHandling(cbs[i], vm, args, vm, info);
  5468 + }
  5469 + }
  5470 + return vm
  5471 + };
  5472 +}
  5473 +
  5474 +/* */
  5475 +
  5476 +var activeInstance = null;
  5477 +var isUpdatingChildComponent = false;
  5478 +
  5479 +function setActiveInstance(vm) {
  5480 + var prevActiveInstance = activeInstance;
  5481 + activeInstance = vm;
  5482 + return function () {
  5483 + activeInstance = prevActiveInstance;
  5484 + }
  5485 +}
  5486 +
  5487 +function initLifecycle (vm) {
  5488 + var options = vm.$options;
  5489 +
  5490 + // locate first non-abstract parent
  5491 + var parent = options.parent;
  5492 + if (parent && !options.abstract) {
  5493 + while (parent.$options.abstract && parent.$parent) {
  5494 + parent = parent.$parent;
  5495 + }
  5496 + parent.$children.push(vm);
  5497 + }
  5498 +
  5499 + vm.$parent = parent;
  5500 + vm.$root = parent ? parent.$root : vm;
  5501 +
  5502 + vm.$children = [];
  5503 + vm.$refs = {};
  5504 +
  5505 + vm._watcher = null;
  5506 + vm._inactive = null;
  5507 + vm._directInactive = false;
  5508 + vm._isMounted = false;
  5509 + vm._isDestroyed = false;
  5510 + vm._isBeingDestroyed = false;
  5511 +}
  5512 +
  5513 +function lifecycleMixin (Vue) {
  5514 + Vue.prototype._update = function (vnode, hydrating) {
  5515 + var vm = this;
  5516 + var prevEl = vm.$el;
  5517 + var prevVnode = vm._vnode;
  5518 + var restoreActiveInstance = setActiveInstance(vm);
  5519 + vm._vnode = vnode;
  5520 + // Vue.prototype.__patch__ is injected in entry points
  5521 + // based on the rendering backend used.
  5522 + if (!prevVnode) {
  5523 + // initial render
  5524 + vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);
  5525 + } else {
  5526 + // updates
  5527 + vm.$el = vm.__patch__(prevVnode, vnode);
  5528 + }
  5529 + restoreActiveInstance();
  5530 + // update __vue__ reference
  5531 + if (prevEl) {
  5532 + prevEl.__vue__ = null;
  5533 + }
  5534 + if (vm.$el) {
  5535 + vm.$el.__vue__ = vm;
  5536 + }
  5537 + // if parent is an HOC, update its $el as well
  5538 + if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {
  5539 + vm.$parent.$el = vm.$el;
  5540 + }
  5541 + // updated hook is called by the scheduler to ensure that children are
  5542 + // updated in a parent's updated hook.
  5543 + };
  5544 +
  5545 + Vue.prototype.$forceUpdate = function () {
  5546 + var vm = this;
  5547 + if (vm._watcher) {
  5548 + vm._watcher.update();
  5549 + }
  5550 + };
  5551 +
  5552 + Vue.prototype.$destroy = function () {
  5553 + var vm = this;
  5554 + if (vm._isBeingDestroyed) {
  5555 + return
  5556 + }
  5557 + callHook(vm, 'beforeDestroy');
  5558 + vm._isBeingDestroyed = true;
  5559 + // remove self from parent
  5560 + var parent = vm.$parent;
  5561 + if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {
  5562 + remove(parent.$children, vm);
  5563 + }
  5564 + // teardown watchers
  5565 + if (vm._watcher) {
  5566 + vm._watcher.teardown();
  5567 + }
  5568 + var i = vm._watchers.length;
  5569 + while (i--) {
  5570 + vm._watchers[i].teardown();
  5571 + }
  5572 + // remove reference from data ob
  5573 + // frozen object may not have observer.
  5574 + if (vm._data.__ob__) {
  5575 + vm._data.__ob__.vmCount--;
  5576 + }
  5577 + // call the last hook...
  5578 + vm._isDestroyed = true;
  5579 + // invoke destroy hooks on current rendered tree
  5580 + vm.__patch__(vm._vnode, null);
  5581 + // fire destroyed hook
  5582 + callHook(vm, 'destroyed');
  5583 + // turn off all instance listeners.
  5584 + vm.$off();
  5585 + // remove __vue__ reference
  5586 + if (vm.$el) {
  5587 + vm.$el.__vue__ = null;
  5588 + }
  5589 + // release circular reference (#6759)
  5590 + if (vm.$vnode) {
  5591 + vm.$vnode.parent = null;
  5592 + }
  5593 + };
  5594 +}
  5595 +
  5596 +function updateChildComponent (
  5597 + vm,
  5598 + propsData,
  5599 + listeners,
  5600 + parentVnode,
  5601 + renderChildren
  5602 +) {
  5603 + if (true) {
  5604 + isUpdatingChildComponent = true;
  5605 + }
  5606 +
  5607 + // determine whether component has slot children
  5608 + // we need to do this before overwriting $options._renderChildren.
  5609 +
  5610 + // check if there are dynamic scopedSlots (hand-written or compiled but with
  5611 + // dynamic slot names). Static scoped slots compiled from template has the
  5612 + // "$stable" marker.
  5613 + var newScopedSlots = parentVnode.data.scopedSlots;
  5614 + var oldScopedSlots = vm.$scopedSlots;
  5615 + var hasDynamicScopedSlot = !!(
  5616 + (newScopedSlots && !newScopedSlots.$stable) ||
  5617 + (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
  5618 + (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)
  5619 + );
  5620 +
  5621 + // Any static slot children from the parent may have changed during parent's
  5622 + // update. Dynamic scoped slots may also have changed. In such cases, a forced
  5623 + // update is necessary to ensure correctness.
  5624 + var needsForceUpdate = !!(
  5625 + renderChildren || // has new static slots
  5626 + vm.$options._renderChildren || // has old static slots
  5627 + hasDynamicScopedSlot
  5628 + );
  5629 +
  5630 + vm.$options._parentVnode = parentVnode;
  5631 + vm.$vnode = parentVnode; // update vm's placeholder node without re-render
  5632 +
  5633 + if (vm._vnode) { // update child tree's parent
  5634 + vm._vnode.parent = parentVnode;
  5635 + }
  5636 + vm.$options._renderChildren = renderChildren;
  5637 +
  5638 + // update $attrs and $listeners hash
  5639 + // these are also reactive so they may trigger child update if the child
  5640 + // used them during render
  5641 + vm.$attrs = parentVnode.data.attrs || emptyObject;
  5642 + vm.$listeners = listeners || emptyObject;
  5643 +
  5644 + // update props
  5645 + if (propsData && vm.$options.props) {
  5646 + toggleObserving(false);
  5647 + var props = vm._props;
  5648 + var propKeys = vm.$options._propKeys || [];
  5649 + for (var i = 0; i < propKeys.length; i++) {
  5650 + var key = propKeys[i];
  5651 + var propOptions = vm.$options.props; // wtf flow?
  5652 + props[key] = validateProp(key, propOptions, propsData, vm);
  5653 + }
  5654 + toggleObserving(true);
  5655 + // keep a copy of raw propsData
  5656 + vm.$options.propsData = propsData;
  5657 + }
  5658 +
  5659 + // fixed by xxxxxx update properties(mp runtime)
  5660 + vm._$updateProperties && vm._$updateProperties(vm);
  5661 +
  5662 + // update listeners
  5663 + listeners = listeners || emptyObject;
  5664 + var oldListeners = vm.$options._parentListeners;
  5665 + vm.$options._parentListeners = listeners;
  5666 + updateComponentListeners(vm, listeners, oldListeners);
  5667 +
  5668 + // resolve slots + force update if has children
  5669 + if (needsForceUpdate) {
  5670 + vm.$slots = resolveSlots(renderChildren, parentVnode.context);
  5671 + vm.$forceUpdate();
  5672 + }
  5673 +
  5674 + if (true) {
  5675 + isUpdatingChildComponent = false;
  5676 + }
  5677 +}
  5678 +
  5679 +function isInInactiveTree (vm) {
  5680 + while (vm && (vm = vm.$parent)) {
  5681 + if (vm._inactive) { return true }
  5682 + }
  5683 + return false
  5684 +}
  5685 +
  5686 +function activateChildComponent (vm, direct) {
  5687 + if (direct) {
  5688 + vm._directInactive = false;
  5689 + if (isInInactiveTree(vm)) {
  5690 + return
  5691 + }
  5692 + } else if (vm._directInactive) {
  5693 + return
  5694 + }
  5695 + if (vm._inactive || vm._inactive === null) {
  5696 + vm._inactive = false;
  5697 + for (var i = 0; i < vm.$children.length; i++) {
  5698 + activateChildComponent(vm.$children[i]);
  5699 + }
  5700 + callHook(vm, 'activated');
  5701 + }
  5702 +}
  5703 +
  5704 +function deactivateChildComponent (vm, direct) {
  5705 + if (direct) {
  5706 + vm._directInactive = true;
  5707 + if (isInInactiveTree(vm)) {
  5708 + return
  5709 + }
  5710 + }
  5711 + if (!vm._inactive) {
  5712 + vm._inactive = true;
  5713 + for (var i = 0; i < vm.$children.length; i++) {
  5714 + deactivateChildComponent(vm.$children[i]);
  5715 + }
  5716 + callHook(vm, 'deactivated');
  5717 + }
  5718 +}
  5719 +
  5720 +function callHook (vm, hook) {
  5721 + // #7573 disable dep collection when invoking lifecycle hooks
  5722 + pushTarget();
  5723 + var handlers = vm.$options[hook];
  5724 + var info = hook + " hook";
  5725 + if (handlers) {
  5726 + for (var i = 0, j = handlers.length; i < j; i++) {
  5727 + invokeWithErrorHandling(handlers[i], vm, null, vm, info);
  5728 + }
  5729 + }
  5730 + if (vm._hasHookEvent) {
  5731 + vm.$emit('hook:' + hook);
  5732 + }
  5733 + popTarget();
  5734 +}
  5735 +
  5736 +/* */
  5737 +
  5738 +var MAX_UPDATE_COUNT = 100;
  5739 +
  5740 +var queue = [];
  5741 +var activatedChildren = [];
  5742 +var has = {};
  5743 +var circular = {};
  5744 +var waiting = false;
  5745 +var flushing = false;
  5746 +var index = 0;
  5747 +
  5748 +/**
  5749 + * Reset the scheduler's state.
  5750 + */
  5751 +function resetSchedulerState () {
  5752 + index = queue.length = activatedChildren.length = 0;
  5753 + has = {};
  5754 + if (true) {
  5755 + circular = {};
  5756 + }
  5757 + waiting = flushing = false;
  5758 +}
  5759 +
  5760 +// Async edge case #6566 requires saving the timestamp when event listeners are
  5761 +// attached. However, calling performance.now() has a perf overhead especially
  5762 +// if the page has thousands of event listeners. Instead, we take a timestamp
  5763 +// every time the scheduler flushes and use that for all event listeners
  5764 +// attached during that flush.
  5765 +var currentFlushTimestamp = 0;
  5766 +
  5767 +// Async edge case fix requires storing an event listener's attach timestamp.
  5768 +var getNow = Date.now;
  5769 +
  5770 +// Determine what event timestamp the browser is using. Annoyingly, the
  5771 +// timestamp can either be hi-res (relative to page load) or low-res
  5772 +// (relative to UNIX epoch), so in order to compare time we have to use the
  5773 +// same timestamp type when saving the flush timestamp.
  5774 +// All IE versions use low-res event timestamps, and have problematic clock
  5775 +// implementations (#9632)
  5776 +if (inBrowser && !isIE) {
  5777 + var performance = window.performance;
  5778 + if (
  5779 + performance &&
  5780 + typeof performance.now === 'function' &&
  5781 + getNow() > document.createEvent('Event').timeStamp
  5782 + ) {
  5783 + // if the event timestamp, although evaluated AFTER the Date.now(), is
  5784 + // smaller than it, it means the event is using a hi-res timestamp,
  5785 + // and we need to use the hi-res version for event listener timestamps as
  5786 + // well.
  5787 + getNow = function () { return performance.now(); };
  5788 + }
  5789 +}
  5790 +
  5791 +/**
  5792 + * Flush both queues and run the watchers.
  5793 + */
  5794 +function flushSchedulerQueue () {
  5795 + currentFlushTimestamp = getNow();
  5796 + flushing = true;
  5797 + var watcher, id;
  5798 +
  5799 + // Sort queue before flush.
  5800 + // This ensures that:
  5801 + // 1. Components are updated from parent to child. (because parent is always
  5802 + // created before the child)
  5803 + // 2. A component's user watchers are run before its render watcher (because
  5804 + // user watchers are created before the render watcher)
  5805 + // 3. If a component is destroyed during a parent component's watcher run,
  5806 + // its watchers can be skipped.
  5807 + queue.sort(function (a, b) { return a.id - b.id; });
  5808 +
  5809 + // do not cache length because more watchers might be pushed
  5810 + // as we run existing watchers
  5811 + for (index = 0; index < queue.length; index++) {
  5812 + watcher = queue[index];
  5813 + if (watcher.before) {
  5814 + watcher.before();
  5815 + }
  5816 + id = watcher.id;
  5817 + has[id] = null;
  5818 + watcher.run();
  5819 + // in dev build, check and stop circular updates.
  5820 + if ( true && has[id] != null) {
  5821 + circular[id] = (circular[id] || 0) + 1;
  5822 + if (circular[id] > MAX_UPDATE_COUNT) {
  5823 + warn(
  5824 + 'You may have an infinite update loop ' + (
  5825 + watcher.user
  5826 + ? ("in watcher with expression \"" + (watcher.expression) + "\"")
  5827 + : "in a component render function."
  5828 + ),
  5829 + watcher.vm
  5830 + );
  5831 + break
  5832 + }
  5833 + }
  5834 + }
  5835 +
  5836 + // keep copies of post queues before resetting state
  5837 + var activatedQueue = activatedChildren.slice();
  5838 + var updatedQueue = queue.slice();
  5839 +
  5840 + resetSchedulerState();
  5841 +
  5842 + // call component updated and activated hooks
  5843 + callActivatedHooks(activatedQueue);
  5844 + callUpdatedHooks(updatedQueue);
  5845 +
  5846 + // devtool hook
  5847 + /* istanbul ignore if */
  5848 + if (devtools && config.devtools) {
  5849 + devtools.emit('flush');
  5850 + }
  5851 +}
  5852 +
  5853 +function callUpdatedHooks (queue) {
  5854 + var i = queue.length;
  5855 + while (i--) {
  5856 + var watcher = queue[i];
  5857 + var vm = watcher.vm;
  5858 + if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {
  5859 + callHook(vm, 'updated');
  5860 + }
  5861 + }
  5862 +}
  5863 +
  5864 +/**
  5865 + * Queue a kept-alive component that was activated during patch.
  5866 + * The queue will be processed after the entire tree has been patched.
  5867 + */
  5868 +function queueActivatedComponent (vm) {
  5869 + // setting _inactive to false here so that a render function can
  5870 + // rely on checking whether it's in an inactive tree (e.g. router-view)
  5871 + vm._inactive = false;
  5872 + activatedChildren.push(vm);
  5873 +}
  5874 +
  5875 +function callActivatedHooks (queue) {
  5876 + for (var i = 0; i < queue.length; i++) {
  5877 + queue[i]._inactive = true;
  5878 + activateChildComponent(queue[i], true /* true */);
  5879 + }
  5880 +}
  5881 +
  5882 +/**
  5883 + * Push a watcher into the watcher queue.
  5884 + * Jobs with duplicate IDs will be skipped unless it's
  5885 + * pushed when the queue is being flushed.
  5886 + */
  5887 +function queueWatcher (watcher) {
  5888 + var id = watcher.id;
  5889 + if (has[id] == null) {
  5890 + has[id] = true;
  5891 + if (!flushing) {
  5892 + queue.push(watcher);
  5893 + } else {
  5894 + // if already flushing, splice the watcher based on its id
  5895 + // if already past its id, it will be run next immediately.
  5896 + var i = queue.length - 1;
  5897 + while (i > index && queue[i].id > watcher.id) {
  5898 + i--;
  5899 + }
  5900 + queue.splice(i + 1, 0, watcher);
  5901 + }
  5902 + // queue the flush
  5903 + if (!waiting) {
  5904 + waiting = true;
  5905 +
  5906 + if ( true && !config.async) {
  5907 + flushSchedulerQueue();
  5908 + return
  5909 + }
  5910 + nextTick(flushSchedulerQueue);
  5911 + }
  5912 + }
  5913 +}
  5914 +
  5915 +/* */
  5916 +
  5917 +
  5918 +
  5919 +var uid$2 = 0;
  5920 +
  5921 +/**
  5922 + * A watcher parses an expression, collects dependencies,
  5923 + * and fires callback when the expression value changes.
  5924 + * This is used for both the $watch() api and directives.
  5925 + */
  5926 +var Watcher = function Watcher (
  5927 + vm,
  5928 + expOrFn,
  5929 + cb,
  5930 + options,
  5931 + isRenderWatcher
  5932 +) {
  5933 + this.vm = vm;
  5934 + if (isRenderWatcher) {
  5935 + vm._watcher = this;
  5936 + }
  5937 + vm._watchers.push(this);
  5938 + // options
  5939 + if (options) {
  5940 + this.deep = !!options.deep;
  5941 + this.user = !!options.user;
  5942 + this.lazy = !!options.lazy;
  5943 + this.sync = !!options.sync;
  5944 + this.before = options.before;
  5945 + } else {
  5946 + this.deep = this.user = this.lazy = this.sync = false;
  5947 + }
  5948 + this.cb = cb;
  5949 + this.id = ++uid$2; // uid for batching
  5950 + this.active = true;
  5951 + this.dirty = this.lazy; // for lazy watchers
  5952 + this.deps = [];
  5953 + this.newDeps = [];
  5954 + this.depIds = new _Set();
  5955 + this.newDepIds = new _Set();
  5956 + this.expression = true
  5957 + ? expOrFn.toString()
  5958 + : undefined;
  5959 + // parse expression for getter
  5960 + if (typeof expOrFn === 'function') {
  5961 + this.getter = expOrFn;
  5962 + } else {
  5963 + this.getter = parsePath(expOrFn);
  5964 + if (!this.getter) {
  5965 + this.getter = noop;
  5966 + true && warn(
  5967 + "Failed watching path: \"" + expOrFn + "\" " +
  5968 + 'Watcher only accepts simple dot-delimited paths. ' +
  5969 + 'For full control, use a function instead.',
  5970 + vm
  5971 + );
  5972 + }
  5973 + }
  5974 + this.value = this.lazy
  5975 + ? undefined
  5976 + : this.get();
  5977 +};
  5978 +
  5979 +/**
  5980 + * Evaluate the getter, and re-collect dependencies.
  5981 + */
  5982 +Watcher.prototype.get = function get () {
  5983 + pushTarget(this);
  5984 + var value;
  5985 + var vm = this.vm;
  5986 + try {
  5987 + value = this.getter.call(vm, vm);
  5988 + } catch (e) {
  5989 + if (this.user) {
  5990 + handleError(e, vm, ("getter for watcher \"" + (this.expression) + "\""));
  5991 + } else {
  5992 + throw e
  5993 + }
  5994 + } finally {
  5995 + // "touch" every property so they are all tracked as
  5996 + // dependencies for deep watching
  5997 + if (this.deep) {
  5998 + traverse(value);
  5999 + }
  6000 + popTarget();
  6001 + this.cleanupDeps();
  6002 + }
  6003 + return value
  6004 +};
  6005 +
  6006 +/**
  6007 + * Add a dependency to this directive.
  6008 + */
  6009 +Watcher.prototype.addDep = function addDep (dep) {
  6010 + var id = dep.id;
  6011 + if (!this.newDepIds.has(id)) {
  6012 + this.newDepIds.add(id);
  6013 + this.newDeps.push(dep);
  6014 + if (!this.depIds.has(id)) {
  6015 + dep.addSub(this);
  6016 + }
  6017 + }
  6018 +};
  6019 +
  6020 +/**
  6021 + * Clean up for dependency collection.
  6022 + */
  6023 +Watcher.prototype.cleanupDeps = function cleanupDeps () {
  6024 + var i = this.deps.length;
  6025 + while (i--) {
  6026 + var dep = this.deps[i];
  6027 + if (!this.newDepIds.has(dep.id)) {
  6028 + dep.removeSub(this);
  6029 + }
  6030 + }
  6031 + var tmp = this.depIds;
  6032 + this.depIds = this.newDepIds;
  6033 + this.newDepIds = tmp;
  6034 + this.newDepIds.clear();
  6035 + tmp = this.deps;
  6036 + this.deps = this.newDeps;
  6037 + this.newDeps = tmp;
  6038 + this.newDeps.length = 0;
  6039 +};
  6040 +
  6041 +/**
  6042 + * Subscriber interface.
  6043 + * Will be called when a dependency changes.
  6044 + */
  6045 +Watcher.prototype.update = function update () {
  6046 + /* istanbul ignore else */
  6047 + if (this.lazy) {
  6048 + this.dirty = true;
  6049 + } else if (this.sync) {
  6050 + this.run();
  6051 + } else {
  6052 + queueWatcher(this);
  6053 + }
  6054 +};
  6055 +
  6056 +/**
  6057 + * Scheduler job interface.
  6058 + * Will be called by the scheduler.
  6059 + */
  6060 +Watcher.prototype.run = function run () {
  6061 + if (this.active) {
  6062 + var value = this.get();
  6063 + if (
  6064 + value !== this.value ||
  6065 + // Deep watchers and watchers on Object/Arrays should fire even
  6066 + // when the value is the same, because the value may
  6067 + // have mutated.
  6068 + isObject(value) ||
  6069 + this.deep
  6070 + ) {
  6071 + // set new value
  6072 + var oldValue = this.value;
  6073 + this.value = value;
  6074 + if (this.user) {
  6075 + try {
  6076 + this.cb.call(this.vm, value, oldValue);
  6077 + } catch (e) {
  6078 + handleError(e, this.vm, ("callback for watcher \"" + (this.expression) + "\""));
  6079 + }
  6080 + } else {
  6081 + this.cb.call(this.vm, value, oldValue);
  6082 + }
  6083 + }
  6084 + }
  6085 +};
  6086 +
  6087 +/**
  6088 + * Evaluate the value of the watcher.
  6089 + * This only gets called for lazy watchers.
  6090 + */
  6091 +Watcher.prototype.evaluate = function evaluate () {
  6092 + this.value = this.get();
  6093 + this.dirty = false;
  6094 +};
  6095 +
  6096 +/**
  6097 + * Depend on all deps collected by this watcher.
  6098 + */
  6099 +Watcher.prototype.depend = function depend () {
  6100 + var i = this.deps.length;
  6101 + while (i--) {
  6102 + this.deps[i].depend();
  6103 + }
  6104 +};
  6105 +
  6106 +/**
  6107 + * Remove self from all dependencies' subscriber list.
  6108 + */
  6109 +Watcher.prototype.teardown = function teardown () {
  6110 + if (this.active) {
  6111 + // remove self from vm's watcher list
  6112 + // this is a somewhat expensive operation so we skip it
  6113 + // if the vm is being destroyed.
  6114 + if (!this.vm._isBeingDestroyed) {
  6115 + remove(this.vm._watchers, this);
  6116 + }
  6117 + var i = this.deps.length;
  6118 + while (i--) {
  6119 + this.deps[i].removeSub(this);
  6120 + }
  6121 + this.active = false;
  6122 + }
  6123 +};
  6124 +
  6125 +/* */
  6126 +
  6127 +var sharedPropertyDefinition = {
  6128 + enumerable: true,
  6129 + configurable: true,
  6130 + get: noop,
  6131 + set: noop
  6132 +};
  6133 +
  6134 +function proxy (target, sourceKey, key) {
  6135 + sharedPropertyDefinition.get = function proxyGetter () {
  6136 + return this[sourceKey][key]
  6137 + };
  6138 + sharedPropertyDefinition.set = function proxySetter (val) {
  6139 + this[sourceKey][key] = val;
  6140 + };
  6141 + Object.defineProperty(target, key, sharedPropertyDefinition);
  6142 +}
  6143 +
  6144 +function initState (vm) {
  6145 + vm._watchers = [];
  6146 + var opts = vm.$options;
  6147 + if (opts.props) { initProps(vm, opts.props); }
  6148 + if (opts.methods) { initMethods(vm, opts.methods); }
  6149 + if (opts.data) {
  6150 + initData(vm);
  6151 + } else {
  6152 + observe(vm._data = {}, true /* asRootData */);
  6153 + }
  6154 + if (opts.computed) { initComputed(vm, opts.computed); }
  6155 + if (opts.watch && opts.watch !== nativeWatch) {
  6156 + initWatch(vm, opts.watch);
  6157 + }
  6158 +}
  6159 +
  6160 +function initProps (vm, propsOptions) {
  6161 + var propsData = vm.$options.propsData || {};
  6162 + var props = vm._props = {};
  6163 + // cache prop keys so that future props updates can iterate using Array
  6164 + // instead of dynamic object key enumeration.
  6165 + var keys = vm.$options._propKeys = [];
  6166 + var isRoot = !vm.$parent;
  6167 + // root instance props should be converted
  6168 + if (!isRoot) {
  6169 + toggleObserving(false);
  6170 + }
  6171 + var loop = function ( key ) {
  6172 + keys.push(key);
  6173 + var value = validateProp(key, propsOptions, propsData, vm);
  6174 + /* istanbul ignore else */
  6175 + if (true) {
  6176 + var hyphenatedKey = hyphenate(key);
  6177 + if (isReservedAttribute(hyphenatedKey) ||
  6178 + config.isReservedAttr(hyphenatedKey)) {
  6179 + warn(
  6180 + ("\"" + hyphenatedKey + "\" is a reserved attribute and cannot be used as component prop."),
  6181 + vm
  6182 + );
  6183 + }
  6184 + defineReactive$$1(props, key, value, function () {
  6185 + if (!isRoot && !isUpdatingChildComponent) {
  6186 + {
  6187 + if(vm.mpHost === 'mp-baidu'){//百度 observer 在 setData callback 之后触发,直接忽略该 warn
  6188 + return
  6189 + }
  6190 + //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警
  6191 + if(
  6192 + key === 'value' &&
  6193 + Array.isArray(vm.$options.behaviors) &&
  6194 + vm.$options.behaviors.indexOf('uni://form-field') !== -1
  6195 + ){
  6196 + return
  6197 + }
  6198 + if(vm._getFormData){
  6199 + return
  6200 + }
  6201 + var $parent = vm.$parent;
  6202 + while($parent){
  6203 + if($parent.__next_tick_pending){
  6204 + return
  6205 + }
  6206 + $parent = $parent.$parent;
  6207 + }
  6208 + }
  6209 + warn(
  6210 + "Avoid mutating a prop directly since the value will be " +
  6211 + "overwritten whenever the parent component re-renders. " +
  6212 + "Instead, use a data or computed property based on the prop's " +
  6213 + "value. Prop being mutated: \"" + key + "\"",
  6214 + vm
  6215 + );
  6216 + }
  6217 + });
  6218 + } else {}
  6219 + // static props are already proxied on the component's prototype
  6220 + // during Vue.extend(). We only need to proxy props defined at
  6221 + // instantiation here.
  6222 + if (!(key in vm)) {
  6223 + proxy(vm, "_props", key);
  6224 + }
  6225 + };
  6226 +
  6227 + for (var key in propsOptions) loop( key );
  6228 + toggleObserving(true);
  6229 +}
  6230 +
  6231 +function initData (vm) {
  6232 + var data = vm.$options.data;
  6233 + data = vm._data = typeof data === 'function'
  6234 + ? getData(data, vm)
  6235 + : data || {};
  6236 + if (!isPlainObject(data)) {
  6237 + data = {};
  6238 + true && warn(
  6239 + 'data functions should return an object:\n' +
  6240 + 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
  6241 + vm
  6242 + );
  6243 + }
  6244 + // proxy data on instance
  6245 + var keys = Object.keys(data);
  6246 + var props = vm.$options.props;
  6247 + var methods = vm.$options.methods;
  6248 + var i = keys.length;
  6249 + while (i--) {
  6250 + var key = keys[i];
  6251 + if (true) {
  6252 + if (methods && hasOwn(methods, key)) {
  6253 + warn(
  6254 + ("Method \"" + key + "\" has already been defined as a data property."),
  6255 + vm
  6256 + );
  6257 + }
  6258 + }
  6259 + if (props && hasOwn(props, key)) {
  6260 + true && warn(
  6261 + "The data property \"" + key + "\" is already declared as a prop. " +
  6262 + "Use prop default value instead.",
  6263 + vm
  6264 + );
  6265 + } else if (!isReserved(key)) {
  6266 + proxy(vm, "_data", key);
  6267 + }
  6268 + }
  6269 + // observe data
  6270 + observe(data, true /* asRootData */);
  6271 +}
  6272 +
  6273 +function getData (data, vm) {
  6274 + // #7573 disable dep collection when invoking data getters
  6275 + pushTarget();
  6276 + try {
  6277 + return data.call(vm, vm)
  6278 + } catch (e) {
  6279 + handleError(e, vm, "data()");
  6280 + return {}
  6281 + } finally {
  6282 + popTarget();
  6283 + }
  6284 +}
  6285 +
  6286 +var computedWatcherOptions = { lazy: true };
  6287 +
  6288 +function initComputed (vm, computed) {
  6289 + // $flow-disable-line
  6290 + var watchers = vm._computedWatchers = Object.create(null);
  6291 + // computed properties are just getters during SSR
  6292 + var isSSR = isServerRendering();
  6293 +
  6294 + for (var key in computed) {
  6295 + var userDef = computed[key];
  6296 + var getter = typeof userDef === 'function' ? userDef : userDef.get;
  6297 + if ( true && getter == null) {
  6298 + warn(
  6299 + ("Getter is missing for computed property \"" + key + "\"."),
  6300 + vm
  6301 + );
  6302 + }
  6303 +
  6304 + if (!isSSR) {
  6305 + // create internal watcher for the computed property.
  6306 + watchers[key] = new Watcher(
  6307 + vm,
  6308 + getter || noop,
  6309 + noop,
  6310 + computedWatcherOptions
  6311 + );
  6312 + }
  6313 +
  6314 + // component-defined computed properties are already defined on the
  6315 + // component prototype. We only need to define computed properties defined
  6316 + // at instantiation here.
  6317 + if (!(key in vm)) {
  6318 + defineComputed(vm, key, userDef);
  6319 + } else if (true) {
  6320 + if (key in vm.$data) {
  6321 + warn(("The computed property \"" + key + "\" is already defined in data."), vm);
  6322 + } else if (vm.$options.props && key in vm.$options.props) {
  6323 + warn(("The computed property \"" + key + "\" is already defined as a prop."), vm);
  6324 + }
  6325 + }
  6326 + }
  6327 +}
  6328 +
  6329 +function defineComputed (
  6330 + target,
  6331 + key,
  6332 + userDef
  6333 +) {
  6334 + var shouldCache = !isServerRendering();
  6335 + if (typeof userDef === 'function') {
  6336 + sharedPropertyDefinition.get = shouldCache
  6337 + ? createComputedGetter(key)
  6338 + : createGetterInvoker(userDef);
  6339 + sharedPropertyDefinition.set = noop;
  6340 + } else {
  6341 + sharedPropertyDefinition.get = userDef.get
  6342 + ? shouldCache && userDef.cache !== false
  6343 + ? createComputedGetter(key)
  6344 + : createGetterInvoker(userDef.get)
  6345 + : noop;
  6346 + sharedPropertyDefinition.set = userDef.set || noop;
  6347 + }
  6348 + if ( true &&
  6349 + sharedPropertyDefinition.set === noop) {
  6350 + sharedPropertyDefinition.set = function () {
  6351 + warn(
  6352 + ("Computed property \"" + key + "\" was assigned to but it has no setter."),
  6353 + this
  6354 + );
  6355 + };
  6356 + }
  6357 + Object.defineProperty(target, key, sharedPropertyDefinition);
  6358 +}
  6359 +
  6360 +function createComputedGetter (key) {
  6361 + return function computedGetter () {
  6362 + var watcher = this._computedWatchers && this._computedWatchers[key];
  6363 + if (watcher) {
  6364 + if (watcher.dirty) {
  6365 + watcher.evaluate();
  6366 + }
  6367 + if (Dep.SharedObject.target) {// fixed by xxxxxx
  6368 + watcher.depend();
  6369 + }
  6370 + return watcher.value
  6371 + }
  6372 + }
  6373 +}
  6374 +
  6375 +function createGetterInvoker(fn) {
  6376 + return function computedGetter () {
  6377 + return fn.call(this, this)
  6378 + }
  6379 +}
  6380 +
  6381 +function initMethods (vm, methods) {
  6382 + var props = vm.$options.props;
  6383 + for (var key in methods) {
  6384 + if (true) {
  6385 + if (typeof methods[key] !== 'function') {
  6386 + warn(
  6387 + "Method \"" + key + "\" has type \"" + (typeof methods[key]) + "\" in the component definition. " +
  6388 + "Did you reference the function correctly?",
  6389 + vm
  6390 + );
  6391 + }
  6392 + if (props && hasOwn(props, key)) {
  6393 + warn(
  6394 + ("Method \"" + key + "\" has already been defined as a prop."),
  6395 + vm
  6396 + );
  6397 + }
  6398 + if ((key in vm) && isReserved(key)) {
  6399 + warn(
  6400 + "Method \"" + key + "\" conflicts with an existing Vue instance method. " +
  6401 + "Avoid defining component methods that start with _ or $."
  6402 + );
  6403 + }
  6404 + }
  6405 + vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);
  6406 + }
  6407 +}
  6408 +
  6409 +function initWatch (vm, watch) {
  6410 + for (var key in watch) {
  6411 + var handler = watch[key];
  6412 + if (Array.isArray(handler)) {
  6413 + for (var i = 0; i < handler.length; i++) {
  6414 + createWatcher(vm, key, handler[i]);
  6415 + }
  6416 + } else {
  6417 + createWatcher(vm, key, handler);
  6418 + }
  6419 + }
  6420 +}
  6421 +
  6422 +function createWatcher (
  6423 + vm,
  6424 + expOrFn,
  6425 + handler,
  6426 + options
  6427 +) {
  6428 + if (isPlainObject(handler)) {
  6429 + options = handler;
  6430 + handler = handler.handler;
  6431 + }
  6432 + if (typeof handler === 'string') {
  6433 + handler = vm[handler];
  6434 + }
  6435 + return vm.$watch(expOrFn, handler, options)
  6436 +}
  6437 +
  6438 +function stateMixin (Vue) {
  6439 + // flow somehow has problems with directly declared definition object
  6440 + // when using Object.defineProperty, so we have to procedurally build up
  6441 + // the object here.
  6442 + var dataDef = {};
  6443 + dataDef.get = function () { return this._data };
  6444 + var propsDef = {};
  6445 + propsDef.get = function () { return this._props };
  6446 + if (true) {
  6447 + dataDef.set = function () {
  6448 + warn(
  6449 + 'Avoid replacing instance root $data. ' +
  6450 + 'Use nested data properties instead.',
  6451 + this
  6452 + );
  6453 + };
  6454 + propsDef.set = function () {
  6455 + warn("$props is readonly.", this);
  6456 + };
  6457 + }
  6458 + Object.defineProperty(Vue.prototype, '$data', dataDef);
  6459 + Object.defineProperty(Vue.prototype, '$props', propsDef);
  6460 +
  6461 + Vue.prototype.$set = set;
  6462 + Vue.prototype.$delete = del;
  6463 +
  6464 + Vue.prototype.$watch = function (
  6465 + expOrFn,
  6466 + cb,
  6467 + options
  6468 + ) {
  6469 + var vm = this;
  6470 + if (isPlainObject(cb)) {
  6471 + return createWatcher(vm, expOrFn, cb, options)
  6472 + }
  6473 + options = options || {};
  6474 + options.user = true;
  6475 + var watcher = new Watcher(vm, expOrFn, cb, options);
  6476 + if (options.immediate) {
  6477 + try {
  6478 + cb.call(vm, watcher.value);
  6479 + } catch (error) {
  6480 + handleError(error, vm, ("callback for immediate watcher \"" + (watcher.expression) + "\""));
  6481 + }
  6482 + }
  6483 + return function unwatchFn () {
  6484 + watcher.teardown();
  6485 + }
  6486 + };
  6487 +}
  6488 +
  6489 +/* */
  6490 +
  6491 +var uid$3 = 0;
  6492 +
  6493 +function initMixin (Vue) {
  6494 + Vue.prototype._init = function (options) {
  6495 + var vm = this;
  6496 + // a uid
  6497 + vm._uid = uid$3++;
  6498 +
  6499 + var startTag, endTag;
  6500 + /* istanbul ignore if */
  6501 + if ( true && config.performance && mark) {
  6502 + startTag = "vue-perf-start:" + (vm._uid);
  6503 + endTag = "vue-perf-end:" + (vm._uid);
  6504 + mark(startTag);
  6505 + }
  6506 +
  6507 + // a flag to avoid this being observed
  6508 + vm._isVue = true;
  6509 + // merge options
  6510 + if (options && options._isComponent) {
  6511 + // optimize internal component instantiation
  6512 + // since dynamic options merging is pretty slow, and none of the
  6513 + // internal component options needs special treatment.
  6514 + initInternalComponent(vm, options);
  6515 + } else {
  6516 + vm.$options = mergeOptions(
  6517 + resolveConstructorOptions(vm.constructor),
  6518 + options || {},
  6519 + vm
  6520 + );
  6521 + }
  6522 + /* istanbul ignore else */
  6523 + if (true) {
  6524 + initProxy(vm);
  6525 + } else {}
  6526 + // expose real self
  6527 + vm._self = vm;
  6528 + initLifecycle(vm);
  6529 + initEvents(vm);
  6530 + initRender(vm);
  6531 + callHook(vm, 'beforeCreate');
  6532 + !vm._$fallback && initInjections(vm); // resolve injections before data/props
  6533 + initState(vm);
  6534 + !vm._$fallback && initProvide(vm); // resolve provide after data/props
  6535 + !vm._$fallback && callHook(vm, 'created');
  6536 +
  6537 + /* istanbul ignore if */
  6538 + if ( true && config.performance && mark) {
  6539 + vm._name = formatComponentName(vm, false);
  6540 + mark(endTag);
  6541 + measure(("vue " + (vm._name) + " init"), startTag, endTag);
  6542 + }
  6543 +
  6544 + if (vm.$options.el) {
  6545 + vm.$mount(vm.$options.el);
  6546 + }
  6547 + };
  6548 +}
  6549 +
  6550 +function initInternalComponent (vm, options) {
  6551 + var opts = vm.$options = Object.create(vm.constructor.options);
  6552 + // doing this because it's faster than dynamic enumeration.
  6553 + var parentVnode = options._parentVnode;
  6554 + opts.parent = options.parent;
  6555 + opts._parentVnode = parentVnode;
  6556 +
  6557 + var vnodeComponentOptions = parentVnode.componentOptions;
  6558 + opts.propsData = vnodeComponentOptions.propsData;
  6559 + opts._parentListeners = vnodeComponentOptions.listeners;
  6560 + opts._renderChildren = vnodeComponentOptions.children;
  6561 + opts._componentTag = vnodeComponentOptions.tag;
  6562 +
  6563 + if (options.render) {
  6564 + opts.render = options.render;
  6565 + opts.staticRenderFns = options.staticRenderFns;
  6566 + }
  6567 +}
  6568 +
  6569 +function resolveConstructorOptions (Ctor) {
  6570 + var options = Ctor.options;
  6571 + if (Ctor.super) {
  6572 + var superOptions = resolveConstructorOptions(Ctor.super);
  6573 + var cachedSuperOptions = Ctor.superOptions;
  6574 + if (superOptions !== cachedSuperOptions) {
  6575 + // super option changed,
  6576 + // need to resolve new options.
  6577 + Ctor.superOptions = superOptions;
  6578 + // check if there are any late-modified/attached options (#4976)
  6579 + var modifiedOptions = resolveModifiedOptions(Ctor);
  6580 + // update base extend options
  6581 + if (modifiedOptions) {
  6582 + extend(Ctor.extendOptions, modifiedOptions);
  6583 + }
  6584 + options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);
  6585 + if (options.name) {
  6586 + options.components[options.name] = Ctor;
  6587 + }
  6588 + }
  6589 + }
  6590 + return options
  6591 +}
  6592 +
  6593 +function resolveModifiedOptions (Ctor) {
  6594 + var modified;
  6595 + var latest = Ctor.options;
  6596 + var sealed = Ctor.sealedOptions;
  6597 + for (var key in latest) {
  6598 + if (latest[key] !== sealed[key]) {
  6599 + if (!modified) { modified = {}; }
  6600 + modified[key] = latest[key];
  6601 + }
  6602 + }
  6603 + return modified
  6604 +}
  6605 +
  6606 +function Vue (options) {
  6607 + if ( true &&
  6608 + !(this instanceof Vue)
  6609 + ) {
  6610 + warn('Vue is a constructor and should be called with the `new` keyword');
  6611 + }
  6612 + this._init(options);
  6613 +}
  6614 +
  6615 +initMixin(Vue);
  6616 +stateMixin(Vue);
  6617 +eventsMixin(Vue);
  6618 +lifecycleMixin(Vue);
  6619 +renderMixin(Vue);
  6620 +
  6621 +/* */
  6622 +
  6623 +function initUse (Vue) {
  6624 + Vue.use = function (plugin) {
  6625 + var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));
  6626 + if (installedPlugins.indexOf(plugin) > -1) {
  6627 + return this
  6628 + }
  6629 +
  6630 + // additional parameters
  6631 + var args = toArray(arguments, 1);
  6632 + args.unshift(this);
  6633 + if (typeof plugin.install === 'function') {
  6634 + plugin.install.apply(plugin, args);
  6635 + } else if (typeof plugin === 'function') {
  6636 + plugin.apply(null, args);
  6637 + }
  6638 + installedPlugins.push(plugin);
  6639 + return this
  6640 + };
  6641 +}
  6642 +
  6643 +/* */
  6644 +
  6645 +function initMixin$1 (Vue) {
  6646 + Vue.mixin = function (mixin) {
  6647 + this.options = mergeOptions(this.options, mixin);
  6648 + return this
  6649 + };
  6650 +}
  6651 +
  6652 +/* */
  6653 +
  6654 +function initExtend (Vue) {
  6655 + /**
  6656 + * Each instance constructor, including Vue, has a unique
  6657 + * cid. This enables us to create wrapped "child
  6658 + * constructors" for prototypal inheritance and cache them.
  6659 + */
  6660 + Vue.cid = 0;
  6661 + var cid = 1;
  6662 +
  6663 + /**
  6664 + * Class inheritance
  6665 + */
  6666 + Vue.extend = function (extendOptions) {
  6667 + extendOptions = extendOptions || {};
  6668 + var Super = this;
  6669 + var SuperId = Super.cid;
  6670 + var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});
  6671 + if (cachedCtors[SuperId]) {
  6672 + return cachedCtors[SuperId]
  6673 + }
  6674 +
  6675 + var name = extendOptions.name || Super.options.name;
  6676 + if ( true && name) {
  6677 + validateComponentName(name);
  6678 + }
  6679 +
  6680 + var Sub = function VueComponent (options) {
  6681 + this._init(options);
  6682 + };
  6683 + Sub.prototype = Object.create(Super.prototype);
  6684 + Sub.prototype.constructor = Sub;
  6685 + Sub.cid = cid++;
  6686 + Sub.options = mergeOptions(
  6687 + Super.options,
  6688 + extendOptions
  6689 + );
  6690 + Sub['super'] = Super;
  6691 +
  6692 + // For props and computed properties, we define the proxy getters on
  6693 + // the Vue instances at extension time, on the extended prototype. This
  6694 + // avoids Object.defineProperty calls for each instance created.
  6695 + if (Sub.options.props) {
  6696 + initProps$1(Sub);
  6697 + }
  6698 + if (Sub.options.computed) {
  6699 + initComputed$1(Sub);
  6700 + }
  6701 +
  6702 + // allow further extension/mixin/plugin usage
  6703 + Sub.extend = Super.extend;
  6704 + Sub.mixin = Super.mixin;
  6705 + Sub.use = Super.use;
  6706 +
  6707 + // create asset registers, so extended classes
  6708 + // can have their private assets too.
  6709 + ASSET_TYPES.forEach(function (type) {
  6710 + Sub[type] = Super[type];
  6711 + });
  6712 + // enable recursive self-lookup
  6713 + if (name) {
  6714 + Sub.options.components[name] = Sub;
  6715 + }
  6716 +
  6717 + // keep a reference to the super options at extension time.
  6718 + // later at instantiation we can check if Super's options have
  6719 + // been updated.
  6720 + Sub.superOptions = Super.options;
  6721 + Sub.extendOptions = extendOptions;
  6722 + Sub.sealedOptions = extend({}, Sub.options);
  6723 +
  6724 + // cache constructor
  6725 + cachedCtors[SuperId] = Sub;
  6726 + return Sub
  6727 + };
  6728 +}
  6729 +
  6730 +function initProps$1 (Comp) {
  6731 + var props = Comp.options.props;
  6732 + for (var key in props) {
  6733 + proxy(Comp.prototype, "_props", key);
  6734 + }
  6735 +}
  6736 +
  6737 +function initComputed$1 (Comp) {
  6738 + var computed = Comp.options.computed;
  6739 + for (var key in computed) {
  6740 + defineComputed(Comp.prototype, key, computed[key]);
  6741 + }
  6742 +}
  6743 +
  6744 +/* */
  6745 +
  6746 +function initAssetRegisters (Vue) {
  6747 + /**
  6748 + * Create asset registration methods.
  6749 + */
  6750 + ASSET_TYPES.forEach(function (type) {
  6751 + Vue[type] = function (
  6752 + id,
  6753 + definition
  6754 + ) {
  6755 + if (!definition) {
  6756 + return this.options[type + 's'][id]
  6757 + } else {
  6758 + /* istanbul ignore if */
  6759 + if ( true && type === 'component') {
  6760 + validateComponentName(id);
  6761 + }
  6762 + if (type === 'component' && isPlainObject(definition)) {
  6763 + definition.name = definition.name || id;
  6764 + definition = this.options._base.extend(definition);
  6765 + }
  6766 + if (type === 'directive' && typeof definition === 'function') {
  6767 + definition = { bind: definition, update: definition };
  6768 + }
  6769 + this.options[type + 's'][id] = definition;
  6770 + return definition
  6771 + }
  6772 + };
  6773 + });
  6774 +}
  6775 +
  6776 +/* */
  6777 +
  6778 +
  6779 +
  6780 +function getComponentName (opts) {
  6781 + return opts && (opts.Ctor.options.name || opts.tag)
  6782 +}
  6783 +
  6784 +function matches (pattern, name) {
  6785 + if (Array.isArray(pattern)) {
  6786 + return pattern.indexOf(name) > -1
  6787 + } else if (typeof pattern === 'string') {
  6788 + return pattern.split(',').indexOf(name) > -1
  6789 + } else if (isRegExp(pattern)) {
  6790 + return pattern.test(name)
  6791 + }
  6792 + /* istanbul ignore next */
  6793 + return false
  6794 +}
  6795 +
  6796 +function pruneCache (keepAliveInstance, filter) {
  6797 + var cache = keepAliveInstance.cache;
  6798 + var keys = keepAliveInstance.keys;
  6799 + var _vnode = keepAliveInstance._vnode;
  6800 + for (var key in cache) {
  6801 + var cachedNode = cache[key];
  6802 + if (cachedNode) {
  6803 + var name = getComponentName(cachedNode.componentOptions);
  6804 + if (name && !filter(name)) {
  6805 + pruneCacheEntry(cache, key, keys, _vnode);
  6806 + }
  6807 + }
  6808 + }
  6809 +}
  6810 +
  6811 +function pruneCacheEntry (
  6812 + cache,
  6813 + key,
  6814 + keys,
  6815 + current
  6816 +) {
  6817 + var cached$$1 = cache[key];
  6818 + if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {
  6819 + cached$$1.componentInstance.$destroy();
  6820 + }
  6821 + cache[key] = null;
  6822 + remove(keys, key);
  6823 +}
  6824 +
  6825 +var patternTypes = [String, RegExp, Array];
  6826 +
  6827 +var KeepAlive = {
  6828 + name: 'keep-alive',
  6829 + abstract: true,
  6830 +
  6831 + props: {
  6832 + include: patternTypes,
  6833 + exclude: patternTypes,
  6834 + max: [String, Number]
  6835 + },
  6836 +
  6837 + created: function created () {
  6838 + this.cache = Object.create(null);
  6839 + this.keys = [];
  6840 + },
  6841 +
  6842 + destroyed: function destroyed () {
  6843 + for (var key in this.cache) {
  6844 + pruneCacheEntry(this.cache, key, this.keys);
  6845 + }
  6846 + },
  6847 +
  6848 + mounted: function mounted () {
  6849 + var this$1 = this;
  6850 +
  6851 + this.$watch('include', function (val) {
  6852 + pruneCache(this$1, function (name) { return matches(val, name); });
  6853 + });
  6854 + this.$watch('exclude', function (val) {
  6855 + pruneCache(this$1, function (name) { return !matches(val, name); });
  6856 + });
  6857 + },
  6858 +
  6859 + render: function render () {
  6860 + var slot = this.$slots.default;
  6861 + var vnode = getFirstComponentChild(slot);
  6862 + var componentOptions = vnode && vnode.componentOptions;
  6863 + if (componentOptions) {
  6864 + // check pattern
  6865 + var name = getComponentName(componentOptions);
  6866 + var ref = this;
  6867 + var include = ref.include;
  6868 + var exclude = ref.exclude;
  6869 + if (
  6870 + // not included
  6871 + (include && (!name || !matches(include, name))) ||
  6872 + // excluded
  6873 + (exclude && name && matches(exclude, name))
  6874 + ) {
  6875 + return vnode
  6876 + }
  6877 +
  6878 + var ref$1 = this;
  6879 + var cache = ref$1.cache;
  6880 + var keys = ref$1.keys;
  6881 + var key = vnode.key == null
  6882 + // same constructor may get registered as different local components
  6883 + // so cid alone is not enough (#3269)
  6884 + ? componentOptions.Ctor.cid + (componentOptions.tag ? ("::" + (componentOptions.tag)) : '')
  6885 + : vnode.key;
  6886 + if (cache[key]) {
  6887 + vnode.componentInstance = cache[key].componentInstance;
  6888 + // make current key freshest
  6889 + remove(keys, key);
  6890 + keys.push(key);
  6891 + } else {
  6892 + cache[key] = vnode;
  6893 + keys.push(key);
  6894 + // prune oldest entry
  6895 + if (this.max && keys.length > parseInt(this.max)) {
  6896 + pruneCacheEntry(cache, keys[0], keys, this._vnode);
  6897 + }
  6898 + }
  6899 +
  6900 + vnode.data.keepAlive = true;
  6901 + }
  6902 + return vnode || (slot && slot[0])
  6903 + }
  6904 +};
  6905 +
  6906 +var builtInComponents = {
  6907 + KeepAlive: KeepAlive
  6908 +};
  6909 +
  6910 +/* */
  6911 +
  6912 +function initGlobalAPI (Vue) {
  6913 + // config
  6914 + var configDef = {};
  6915 + configDef.get = function () { return config; };
  6916 + if (true) {
  6917 + configDef.set = function () {
  6918 + warn(
  6919 + 'Do not replace the Vue.config object, set individual fields instead.'
  6920 + );
  6921 + };
  6922 + }
  6923 + Object.defineProperty(Vue, 'config', configDef);
  6924 +
  6925 + // exposed util methods.
  6926 + // NOTE: these are not considered part of the public API - avoid relying on
  6927 + // them unless you are aware of the risk.
  6928 + Vue.util = {
  6929 + warn: warn,
  6930 + extend: extend,
  6931 + mergeOptions: mergeOptions,
  6932 + defineReactive: defineReactive$$1
  6933 + };
  6934 +
  6935 + Vue.set = set;
  6936 + Vue.delete = del;
  6937 + Vue.nextTick = nextTick;
  6938 +
  6939 + // 2.6 explicit observable API
  6940 + Vue.observable = function (obj) {
  6941 + observe(obj);
  6942 + return obj
  6943 + };
  6944 +
  6945 + Vue.options = Object.create(null);
  6946 + ASSET_TYPES.forEach(function (type) {
  6947 + Vue.options[type + 's'] = Object.create(null);
  6948 + });
  6949 +
  6950 + // this is used to identify the "base" constructor to extend all plain-object
  6951 + // components with in Weex's multi-instance scenarios.
  6952 + Vue.options._base = Vue;
  6953 +
  6954 + extend(Vue.options.components, builtInComponents);
  6955 +
  6956 + initUse(Vue);
  6957 + initMixin$1(Vue);
  6958 + initExtend(Vue);
  6959 + initAssetRegisters(Vue);
  6960 +}
  6961 +
  6962 +initGlobalAPI(Vue);
  6963 +
  6964 +Object.defineProperty(Vue.prototype, '$isServer', {
  6965 + get: isServerRendering
  6966 +});
  6967 +
  6968 +Object.defineProperty(Vue.prototype, '$ssrContext', {
  6969 + get: function get () {
  6970 + /* istanbul ignore next */
  6971 + return this.$vnode && this.$vnode.ssrContext
  6972 + }
  6973 +});
  6974 +
  6975 +// expose FunctionalRenderContext for ssr runtime helper installation
  6976 +Object.defineProperty(Vue, 'FunctionalRenderContext', {
  6977 + value: FunctionalRenderContext
  6978 +});
  6979 +
  6980 +Vue.version = '2.6.11';
  6981 +
  6982 +/**
  6983 + * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js
  6984 + */
  6985 +var ARRAYTYPE = '[object Array]';
  6986 +var OBJECTTYPE = '[object Object]';
  6987 +// const FUNCTIONTYPE = '[object Function]'
  6988 +
  6989 +function diff(current, pre) {
  6990 + var result = {};
  6991 + syncKeys(current, pre);
  6992 + _diff(current, pre, '', result);
  6993 + return result
  6994 +}
  6995 +
  6996 +function syncKeys(current, pre) {
  6997 + if (current === pre) { return }
  6998 + var rootCurrentType = type(current);
  6999 + var rootPreType = type(pre);
  7000 + if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {
  7001 + if(Object.keys(current).length >= Object.keys(pre).length){
  7002 + for (var key in pre) {
  7003 + var currentValue = current[key];
  7004 + if (currentValue === undefined) {
  7005 + current[key] = null;
  7006 + } else {
  7007 + syncKeys(currentValue, pre[key]);
  7008 + }
  7009 + }
  7010 + }
  7011 + } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {
  7012 + if (current.length >= pre.length) {
  7013 + pre.forEach(function (item, index) {
  7014 + syncKeys(current[index], item);
  7015 + });
  7016 + }
  7017 + }
  7018 +}
  7019 +
  7020 +function _diff(current, pre, path, result) {
  7021 + if (current === pre) { return }
  7022 + var rootCurrentType = type(current);
  7023 + var rootPreType = type(pre);
  7024 + if (rootCurrentType == OBJECTTYPE) {
  7025 + if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {
  7026 + setResult(result, path, current);
  7027 + } else {
  7028 + var loop = function ( key ) {
  7029 + var currentValue = current[key];
  7030 + var preValue = pre[key];
  7031 + var currentType = type(currentValue);
  7032 + var preType = type(preValue);
  7033 + if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {
  7034 + if (currentValue != pre[key]) {
  7035 + setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7036 + }
  7037 + } else if (currentType == ARRAYTYPE) {
  7038 + if (preType != ARRAYTYPE) {
  7039 + setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7040 + } else {
  7041 + if (currentValue.length < preValue.length) {
  7042 + setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7043 + } else {
  7044 + currentValue.forEach(function (item, index) {
  7045 + _diff(item, preValue[index], (path == '' ? '' : path + ".") + key + '[' + index + ']', result);
  7046 + });
  7047 + }
  7048 + }
  7049 + } else if (currentType == OBJECTTYPE) {
  7050 + if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {
  7051 + setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
  7052 + } else {
  7053 + for (var subKey in currentValue) {
  7054 + _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + ".") + key + '.' + subKey, result);
  7055 + }
  7056 + }
  7057 + }
  7058 + };
  7059 +
  7060 + for (var key in current) loop( key );
  7061 + }
  7062 + } else if (rootCurrentType == ARRAYTYPE) {
  7063 + if (rootPreType != ARRAYTYPE) {
  7064 + setResult(result, path, current);
  7065 + } else {
  7066 + if (current.length < pre.length) {
  7067 + setResult(result, path, current);
  7068 + } else {
  7069 + current.forEach(function (item, index) {
  7070 + _diff(item, pre[index], path + '[' + index + ']', result);
  7071 + });
  7072 + }
  7073 + }
  7074 + } else {
  7075 + setResult(result, path, current);
  7076 + }
  7077 +}
  7078 +
  7079 +function setResult(result, k, v) {
  7080 + // if (type(v) != FUNCTIONTYPE) {
  7081 + result[k] = v;
  7082 + // }
  7083 +}
  7084 +
  7085 +function type(obj) {
  7086 + return Object.prototype.toString.call(obj)
  7087 +}
  7088 +
  7089 +/* */
  7090 +
  7091 +function flushCallbacks$1(vm) {
  7092 + if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {
  7093 + if (Object({"VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
  7094 + var mpInstance = vm.$scope;
  7095 + console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
  7096 + ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');
  7097 + }
  7098 + var copies = vm.__next_tick_callbacks.slice(0);
  7099 + vm.__next_tick_callbacks.length = 0;
  7100 + for (var i = 0; i < copies.length; i++) {
  7101 + copies[i]();
  7102 + }
  7103 + }
  7104 +}
  7105 +
  7106 +function hasRenderWatcher(vm) {
  7107 + return queue.find(function (watcher) { return vm._watcher === watcher; })
  7108 +}
  7109 +
  7110 +function nextTick$1(vm, cb) {
  7111 + //1.nextTick 之前 已 setData 且 setData 还未回调完成
  7112 + //2.nextTick 之前存在 render watcher
  7113 + if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {
  7114 + if(Object({"VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG){
  7115 + var mpInstance = vm.$scope;
  7116 + console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
  7117 + ']:nextVueTick');
  7118 + }
  7119 + return nextTick(cb, vm)
  7120 + }else{
  7121 + if(Object({"VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG){
  7122 + var mpInstance$1 = vm.$scope;
  7123 + console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +
  7124 + ']:nextMPTick');
  7125 + }
  7126 + }
  7127 + var _resolve;
  7128 + if (!vm.__next_tick_callbacks) {
  7129 + vm.__next_tick_callbacks = [];
  7130 + }
  7131 + vm.__next_tick_callbacks.push(function () {
  7132 + if (cb) {
  7133 + try {
  7134 + cb.call(vm);
  7135 + } catch (e) {
  7136 + handleError(e, vm, 'nextTick');
  7137 + }
  7138 + } else if (_resolve) {
  7139 + _resolve(vm);
  7140 + }
  7141 + });
  7142 + // $flow-disable-line
  7143 + if (!cb && typeof Promise !== 'undefined') {
  7144 + return new Promise(function (resolve) {
  7145 + _resolve = resolve;
  7146 + })
  7147 + }
  7148 +}
  7149 +
  7150 +/* */
  7151 +
  7152 +function cloneWithData(vm) {
  7153 + // 确保当前 vm 所有数据被同步
  7154 + var ret = Object.create(null);
  7155 + var dataKeys = [].concat(
  7156 + Object.keys(vm._data || {}),
  7157 + Object.keys(vm._computedWatchers || {}));
  7158 +
  7159 + dataKeys.reduce(function(ret, key) {
  7160 + ret[key] = vm[key];
  7161 + return ret
  7162 + }, ret);
  7163 + //TODO 需要把无用数据处理掉,比如 list=>l0 则 list 需要移除,否则多传输一份数据
  7164 + Object.assign(ret, vm.$mp.data || {});
  7165 + if (
  7166 + Array.isArray(vm.$options.behaviors) &&
  7167 + vm.$options.behaviors.indexOf('uni://form-field') !== -1
  7168 + ) { //form-field
  7169 + ret['name'] = vm.name;
  7170 + ret['value'] = vm.value;
  7171 + }
  7172 +
  7173 + return JSON.parse(JSON.stringify(ret))
  7174 +}
  7175 +
  7176 +var patch = function(oldVnode, vnode) {
  7177 + var this$1 = this;
  7178 +
  7179 + if (vnode === null) { //destroy
  7180 + return
  7181 + }
  7182 + if (this.mpType === 'page' || this.mpType === 'component') {
  7183 + var mpInstance = this.$scope;
  7184 + var data = Object.create(null);
  7185 + try {
  7186 + data = cloneWithData(this);
  7187 + } catch (err) {
  7188 + console.error(err);
  7189 + }
  7190 + data.__webviewId__ = mpInstance.data.__webviewId__;
  7191 + var mpData = Object.create(null);
  7192 + Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据
  7193 + mpData[key] = mpInstance.data[key];
  7194 + });
  7195 + var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);
  7196 + if (Object.keys(diffData).length) {
  7197 + if (Object({"VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
  7198 + console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +
  7199 + ']差量更新',
  7200 + JSON.stringify(diffData));
  7201 + }
  7202 + this.__next_tick_pending = true;
  7203 + mpInstance.setData(diffData, function () {
  7204 + this$1.__next_tick_pending = false;
  7205 + flushCallbacks$1(this$1);
  7206 + });
  7207 + } else {
  7208 + flushCallbacks$1(this);
  7209 + }
  7210 + }
  7211 +};
  7212 +
  7213 +/* */
  7214 +
  7215 +function createEmptyRender() {
  7216 +
  7217 +}
  7218 +
  7219 +function mountComponent$1(
  7220 + vm,
  7221 + el,
  7222 + hydrating
  7223 +) {
  7224 + if (!vm.mpType) {//main.js 中的 new Vue
  7225 + return vm
  7226 + }
  7227 + if (vm.mpType === 'app') {
  7228 + vm.$options.render = createEmptyRender;
  7229 + }
  7230 + if (!vm.$options.render) {
  7231 + vm.$options.render = createEmptyRender;
  7232 + if (true) {
  7233 + /* istanbul ignore if */
  7234 + if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||
  7235 + vm.$options.el || el) {
  7236 + warn(
  7237 + 'You are using the runtime-only build of Vue where the template ' +
  7238 + 'compiler is not available. Either pre-compile the templates into ' +
  7239 + 'render functions, or use the compiler-included build.',
  7240 + vm
  7241 + );
  7242 + } else {
  7243 + warn(
  7244 + 'Failed to mount component: template or render function not defined.',
  7245 + vm
  7246 + );
  7247 + }
  7248 + }
  7249 + }
  7250 +
  7251 + !vm._$fallback && callHook(vm, 'beforeMount');
  7252 +
  7253 + var updateComponent = function () {
  7254 + vm._update(vm._render(), hydrating);
  7255 + };
  7256 +
  7257 + // we set this to vm._watcher inside the watcher's constructor
  7258 + // since the watcher's initial patch may call $forceUpdate (e.g. inside child
  7259 + // component's mounted hook), which relies on vm._watcher being already defined
  7260 + new Watcher(vm, updateComponent, noop, {
  7261 + before: function before() {
  7262 + if (vm._isMounted && !vm._isDestroyed) {
  7263 + callHook(vm, 'beforeUpdate');
  7264 + }
  7265 + }
  7266 + }, true /* isRenderWatcher */);
  7267 + hydrating = false;
  7268 + return vm
  7269 +}
  7270 +
  7271 +/* */
  7272 +
  7273 +function renderClass (
  7274 + staticClass,
  7275 + dynamicClass
  7276 +) {
  7277 + if (isDef(staticClass) || isDef(dynamicClass)) {
  7278 + return concat(staticClass, stringifyClass(dynamicClass))
  7279 + }
  7280 + /* istanbul ignore next */
  7281 + return ''
  7282 +}
  7283 +
  7284 +function concat (a, b) {
  7285 + return a ? b ? (a + ' ' + b) : a : (b || '')
  7286 +}
  7287 +
  7288 +function stringifyClass (value) {
  7289 + if (Array.isArray(value)) {
  7290 + return stringifyArray(value)
  7291 + }
  7292 + if (isObject(value)) {
  7293 + return stringifyObject(value)
  7294 + }
  7295 + if (typeof value === 'string') {
  7296 + return value
  7297 + }
  7298 + /* istanbul ignore next */
  7299 + return ''
  7300 +}
  7301 +
  7302 +function stringifyArray (value) {
  7303 + var res = '';
  7304 + var stringified;
  7305 + for (var i = 0, l = value.length; i < l; i++) {
  7306 + if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {
  7307 + if (res) { res += ' '; }
  7308 + res += stringified;
  7309 + }
  7310 + }
  7311 + return res
  7312 +}
  7313 +
  7314 +function stringifyObject (value) {
  7315 + var res = '';
  7316 + for (var key in value) {
  7317 + if (value[key]) {
  7318 + if (res) { res += ' '; }
  7319 + res += key;
  7320 + }
  7321 + }
  7322 + return res
  7323 +}
  7324 +
  7325 +/* */
  7326 +
  7327 +var parseStyleText = cached(function (cssText) {
  7328 + var res = {};
  7329 + var listDelimiter = /;(?![^(]*\))/g;
  7330 + var propertyDelimiter = /:(.+)/;
  7331 + cssText.split(listDelimiter).forEach(function (item) {
  7332 + if (item) {
  7333 + var tmp = item.split(propertyDelimiter);
  7334 + tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());
  7335 + }
  7336 + });
  7337 + return res
  7338 +});
  7339 +
  7340 +// normalize possible array / string values into Object
  7341 +function normalizeStyleBinding (bindingStyle) {
  7342 + if (Array.isArray(bindingStyle)) {
  7343 + return toObject(bindingStyle)
  7344 + }
  7345 + if (typeof bindingStyle === 'string') {
  7346 + return parseStyleText(bindingStyle)
  7347 + }
  7348 + return bindingStyle
  7349 +}
  7350 +
  7351 +/* */
  7352 +
  7353 +var MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];
  7354 +
  7355 +function getTarget(obj, path) {
  7356 + var parts = path.split('.');
  7357 + var key = parts[0];
  7358 + if (key.indexOf('__$n') === 0) { //number index
  7359 + key = parseInt(key.replace('__$n', ''));
  7360 + }
  7361 + if (parts.length === 1) {
  7362 + return obj[key]
  7363 + }
  7364 + return getTarget(obj[key], parts.slice(1).join('.'))
  7365 +}
  7366 +
  7367 +function internalMixin(Vue) {
  7368 +
  7369 + Vue.config.errorHandler = function(err) {
  7370 + console.error(err);
  7371 + /* eslint-disable no-undef */
  7372 + var app = getApp();
  7373 + if (app && app.onError) {
  7374 + app.onError(err);
  7375 + }
  7376 + };
  7377 +
  7378 + var oldEmit = Vue.prototype.$emit;
  7379 +
  7380 + Vue.prototype.$emit = function(event) {
  7381 + if (this.$scope && event) {
  7382 + this.$scope['triggerEvent'](event, {
  7383 + __args__: toArray(arguments, 1)
  7384 + });
  7385 + }
  7386 + return oldEmit.apply(this, arguments)
  7387 + };
  7388 +
  7389 + Vue.prototype.$nextTick = function(fn) {
  7390 + return nextTick$1(this, fn)
  7391 + };
  7392 +
  7393 + MP_METHODS.forEach(function (method) {
  7394 + Vue.prototype[method] = function(args) {
  7395 + if (this.$scope && this.$scope[method]) {
  7396 + return this.$scope[method](args)
  7397 + }
  7398 + // mp-alipay
  7399 + if (typeof my === 'undefined') {
  7400 + return
  7401 + }
  7402 + if (method === 'createSelectorQuery') {
  7403 + /* eslint-disable no-undef */
  7404 + return my.createSelectorQuery(args)
  7405 + } else if (method === 'createIntersectionObserver') {
  7406 + /* eslint-disable no-undef */
  7407 + return my.createIntersectionObserver(args)
  7408 + }
  7409 + // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent
  7410 + };
  7411 + });
  7412 +
  7413 + Vue.prototype.__init_provide = initProvide;
  7414 +
  7415 + Vue.prototype.__init_injections = initInjections;
  7416 +
  7417 + Vue.prototype.__call_hook = function(hook, args) {
  7418 + var vm = this;
  7419 + // #7573 disable dep collection when invoking lifecycle hooks
  7420 + pushTarget();
  7421 + var handlers = vm.$options[hook];
  7422 + var info = hook + " hook";
  7423 + var ret;
  7424 + if (handlers) {
  7425 + for (var i = 0, j = handlers.length; i < j; i++) {
  7426 + ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);
  7427 + }
  7428 + }
  7429 + if (vm._hasHookEvent) {
  7430 + vm.$emit('hook:' + hook, args);
  7431 + }
  7432 + popTarget();
  7433 + return ret
  7434 + };
  7435 +
  7436 + Vue.prototype.__set_model = function(target, key, value, modifiers) {
  7437 + if (Array.isArray(modifiers)) {
  7438 + if (modifiers.indexOf('trim') !== -1) {
  7439 + value = value.trim();
  7440 + }
  7441 + if (modifiers.indexOf('number') !== -1) {
  7442 + value = this._n(value);
  7443 + }
  7444 + }
  7445 + if (!target) {
  7446 + target = this;
  7447 + }
  7448 + target[key] = value;
  7449 + };
  7450 +
  7451 + Vue.prototype.__set_sync = function(target, key, value) {
  7452 + if (!target) {
  7453 + target = this;
  7454 + }
  7455 + target[key] = value;
  7456 + };
  7457 +
  7458 + Vue.prototype.__get_orig = function(item) {
  7459 + if (isPlainObject(item)) {
  7460 + return item['$orig'] || item
  7461 + }
  7462 + return item
  7463 + };
  7464 +
  7465 + Vue.prototype.__get_value = function(dataPath, target) {
  7466 + return getTarget(target || this, dataPath)
  7467 + };
  7468 +
  7469 +
  7470 + Vue.prototype.__get_class = function(dynamicClass, staticClass) {
  7471 + return renderClass(staticClass, dynamicClass)
  7472 + };
  7473 +
  7474 + Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {
  7475 + if (!dynamicStyle && !staticStyle) {
  7476 + return ''
  7477 + }
  7478 + var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);
  7479 + var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;
  7480 + return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + ":" + (styleObj[name])); }).join(';')
  7481 + };
  7482 +
  7483 + Vue.prototype.__map = function(val, iteratee) {
  7484 + //TODO 暂不考虑 string,number
  7485 + var ret, i, l, keys, key;
  7486 + if (Array.isArray(val)) {
  7487 + ret = new Array(val.length);
  7488 + for (i = 0, l = val.length; i < l; i++) {
  7489 + ret[i] = iteratee(val[i], i);
  7490 + }
  7491 + return ret
  7492 + } else if (isObject(val)) {
  7493 + keys = Object.keys(val);
  7494 + ret = Object.create(null);
  7495 + for (i = 0, l = keys.length; i < l; i++) {
  7496 + key = keys[i];
  7497 + ret[key] = iteratee(val[key], key, i);
  7498 + }
  7499 + return ret
  7500 + }
  7501 + return []
  7502 + };
  7503 +
  7504 +}
  7505 +
  7506 +/* */
  7507 +
  7508 +var LIFECYCLE_HOOKS$1 = [
  7509 + //App
  7510 + 'onLaunch',
  7511 + 'onShow',
  7512 + 'onHide',
  7513 + 'onUniNViewMessage',
  7514 + 'onError',
  7515 + //Page
  7516 + 'onLoad',
  7517 + // 'onShow',
  7518 + 'onReady',
  7519 + // 'onHide',
  7520 + 'onUnload',
  7521 + 'onPullDownRefresh',
  7522 + 'onReachBottom',
  7523 + 'onTabItemTap',
  7524 + 'onShareAppMessage',
  7525 + 'onResize',
  7526 + 'onPageScroll',
  7527 + 'onNavigationBarButtonTap',
  7528 + 'onBackPress',
  7529 + 'onNavigationBarSearchInputChanged',
  7530 + 'onNavigationBarSearchInputConfirmed',
  7531 + 'onNavigationBarSearchInputClicked',
  7532 + //Component
  7533 + // 'onReady', // 兼容旧版本,应该移除该事件
  7534 + 'onPageShow',
  7535 + 'onPageHide',
  7536 + 'onPageResize'
  7537 +];
  7538 +function lifecycleMixin$1(Vue) {
  7539 +
  7540 + //fixed vue-class-component
  7541 + var oldExtend = Vue.extend;
  7542 + Vue.extend = function(extendOptions) {
  7543 + extendOptions = extendOptions || {};
  7544 +
  7545 + var methods = extendOptions.methods;
  7546 + if (methods) {
  7547 + Object.keys(methods).forEach(function (methodName) {
  7548 + if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {
  7549 + extendOptions[methodName] = methods[methodName];
  7550 + delete methods[methodName];
  7551 + }
  7552 + });
  7553 + }
  7554 +
  7555 + return oldExtend.call(this, extendOptions)
  7556 + };
  7557 +
  7558 + var strategies = Vue.config.optionMergeStrategies;
  7559 + var mergeHook = strategies.created;
  7560 + LIFECYCLE_HOOKS$1.forEach(function (hook) {
  7561 + strategies[hook] = mergeHook;
  7562 + });
  7563 +
  7564 + Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;
  7565 +}
  7566 +
  7567 +/* */
  7568 +
  7569 +// install platform patch function
  7570 +Vue.prototype.__patch__ = patch;
  7571 +
  7572 +// public mount method
  7573 +Vue.prototype.$mount = function(
  7574 + el ,
  7575 + hydrating
  7576 +) {
  7577 + return mountComponent$1(this, el, hydrating)
  7578 +};
  7579 +
  7580 +lifecycleMixin$1(Vue);
  7581 +internalMixin(Vue);
  7582 +
  7583 +/* */
  7584 +
  7585 +/* harmony default export */ __webpack_exports__["default"] = (Vue);
  7586 +
  7587 +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../webpack/buildin/global.js */ 3)))
  7588 +
  7589 +/***/ }),
  7590 +/* 3 */
  7591 +/*!***********************************!*\
  7592 + !*** (webpack)/buildin/global.js ***!
  7593 + \***********************************/
  7594 +/*! no static exports found */
  7595 +/***/ (function(module, exports) {
  7596 +
  7597 +var g;
  7598 +
  7599 +// This works in non-strict mode
  7600 +g = (function() {
  7601 + return this;
  7602 +})();
  7603 +
  7604 +try {
  7605 + // This works if eval is allowed (see CSP)
  7606 + g = g || new Function("return this")();
  7607 +} catch (e) {
  7608 + // This works if the window reference is available
  7609 + if (typeof window === "object") g = window;
  7610 +}
  7611 +
  7612 +// g can still be undefined, but nothing to do about it...
  7613 +// We return undefined, instead of nothing here, so it's
  7614 +// easier to handle this case. if(!global) { ...}
  7615 +
  7616 +module.exports = g;
  7617 +
  7618 +
  7619 +/***/ }),
  7620 +/* 4 */
  7621 +/*!**********************************************************!*\
  7622 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages.json ***!
  7623 + \**********************************************************/
  7624 +/*! no static exports found */
  7625 +/***/ (function(module, exports) {
  7626 +
  7627 +
  7628 +
  7629 +/***/ }),
  7630 +/* 5 */
  7631 +/*!*******************************************************!*\
  7632 + !*** ./node_modules/@dcloudio/uni-stat/dist/index.js ***!
  7633 + \*******************************************************/
  7634 +/*! no static exports found */
  7635 +/***/ (function(module, exports, __webpack_require__) {
  7636 +
  7637 +"use strict";
  7638 +/* WEBPACK VAR INJECTION */(function(uni) {var _package = __webpack_require__(/*! ../package.json */ 6);function _createSuper(Derived) {return function () {var Super = _getPrototypeOf(Derived),result;if (_isNativeReflectConstruct()) {var NewTarget = _getPrototypeOf(this).constructor;result = Reflect.construct(Super, arguments, NewTarget);} else {result = Super.apply(this, arguments);}return _possibleConstructorReturn(this, result);};}function _possibleConstructorReturn(self, call) {if (call && (typeof call === "object" || typeof call === "function")) {return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self) {if (self === void 0) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct() {if (typeof Reflect === "undefined" || !Reflect.construct) return false;if (Reflect.construct.sham) return false;if (typeof Proxy === "function") return true;try {Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));return true;} catch (e) {return false;}}function _getPrototypeOf(o) {_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {return o.__proto__ || Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function");}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } });if (superClass) _setPrototypeOf(subClass, superClass);}function _setPrototypeOf(o, p) {_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {o.__proto__ = p;return o;};return _setPrototypeOf(o, p);}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}function _createClass(Constructor, protoProps, staticProps) {if (protoProps) _defineProperties(Constructor.prototype, protoProps);if (staticProps) _defineProperties(Constructor, staticProps);return Constructor;}
  7639 +
  7640 +var STAT_VERSION = _package.version;
  7641 +var STAT_URL = 'https://tongji.dcloud.io/uni/stat';
  7642 +var STAT_H5_URL = 'https://tongji.dcloud.io/uni/stat.gif';
  7643 +var PAGE_PVER_TIME = 1800;
  7644 +var APP_PVER_TIME = 300;
  7645 +var OPERATING_TIME = 10;
  7646 +
  7647 +var UUID_KEY = '__DC_STAT_UUID';
  7648 +var UUID_VALUE = '__DC_UUID_VALUE';
  7649 +
  7650 +function getUuid() {
  7651 + var uuid = '';
  7652 + if (getPlatformName() === 'n') {
  7653 + try {
  7654 + uuid = plus.runtime.getDCloudId();
  7655 + } catch (e) {
  7656 + uuid = '';
  7657 + }
  7658 + return uuid;
  7659 + }
  7660 +
  7661 + try {
  7662 + uuid = uni.getStorageSync(UUID_KEY);
  7663 + } catch (e) {
  7664 + uuid = UUID_VALUE;
  7665 + }
  7666 +
  7667 + if (!uuid) {
  7668 + uuid = Date.now() + '' + Math.floor(Math.random() * 1e7);
  7669 + try {
  7670 + uni.setStorageSync(UUID_KEY, uuid);
  7671 + } catch (e) {
  7672 + uni.setStorageSync(UUID_KEY, UUID_VALUE);
  7673 + }
  7674 + }
  7675 + return uuid;
  7676 +}
  7677 +
  7678 +var getSgin = function getSgin(statData) {
  7679 + var arr = Object.keys(statData);
  7680 + var sortArr = arr.sort();
  7681 + var sgin = {};
  7682 + var sginStr = '';
  7683 + for (var i in sortArr) {
  7684 + sgin[sortArr[i]] = statData[sortArr[i]];
  7685 + sginStr += sortArr[i] + '=' + statData[sortArr[i]] + '&';
  7686 + }
  7687 + // const options = sginStr.substr(0, sginStr.length - 1)
  7688 + // sginStr = sginStr.substr(0, sginStr.length - 1) + '&key=' + STAT_KEY;
  7689 + // const si = crypto.createHash('md5').update(sginStr).digest('hex');
  7690 + return {
  7691 + sign: '',
  7692 + options: sginStr.substr(0, sginStr.length - 1) };
  7693 +
  7694 +};
  7695 +
  7696 +var getSplicing = function getSplicing(data) {
  7697 + var str = '';
  7698 + for (var i in data) {
  7699 + str += i + '=' + data[i] + '&';
  7700 + }
  7701 + return str.substr(0, str.length - 1);
  7702 +};
  7703 +
  7704 +var getTime = function getTime() {
  7705 + return parseInt(new Date().getTime() / 1000);
  7706 +};
  7707 +
  7708 +var getPlatformName = function getPlatformName() {
  7709 + var platformList = {
  7710 + 'app-plus': 'n',
  7711 + 'h5': 'h5',
  7712 + 'mp-weixin': 'wx',
  7713 + 'mp-alipay': 'ali',
  7714 + 'mp-baidu': 'bd',
  7715 + 'mp-toutiao': 'tt',
  7716 + 'mp-qq': 'qq' };
  7717 +
  7718 + return platformList["mp-weixin"];
  7719 +};
  7720 +
  7721 +var getPackName = function getPackName() {
  7722 + var packName = '';
  7723 + if (getPlatformName() === 'wx' || getPlatformName() === 'qq') {
  7724 + // 兼容微信小程序低版本基础库
  7725 + if (uni.canIUse('getAccountInfoSync')) {
  7726 + packName = uni.getAccountInfoSync().miniProgram.appId || '';
  7727 + }
  7728 + }
  7729 + return packName;
  7730 +};
  7731 +
  7732 +var getVersion = function getVersion() {
  7733 + return getPlatformName() === 'n' ? plus.runtime.version : '';
  7734 +};
  7735 +
  7736 +var getChannel = function getChannel() {
  7737 + var platformName = getPlatformName();
  7738 + var channel = '';
  7739 + if (platformName === 'n') {
  7740 + channel = plus.runtime.channel;
  7741 + }
  7742 + return channel;
  7743 +};
  7744 +
  7745 +var getScene = function getScene(options) {
  7746 + var platformName = getPlatformName();
  7747 + var scene = '';
  7748 + if (options) {
  7749 + return options;
  7750 + }
  7751 + if (platformName === 'wx') {
  7752 + scene = uni.getLaunchOptionsSync().scene;
  7753 + }
  7754 + return scene;
  7755 +};
  7756 +var First__Visit__Time__KEY = 'First__Visit__Time';
  7757 +var Last__Visit__Time__KEY = 'Last__Visit__Time';
  7758 +
  7759 +var getFirstVisitTime = function getFirstVisitTime() {
  7760 + var timeStorge = uni.getStorageSync(First__Visit__Time__KEY);
  7761 + var time = 0;
  7762 + if (timeStorge) {
  7763 + time = timeStorge;
  7764 + } else {
  7765 + time = getTime();
  7766 + uni.setStorageSync(First__Visit__Time__KEY, time);
  7767 + uni.removeStorageSync(Last__Visit__Time__KEY);
  7768 + }
  7769 + return time;
  7770 +};
  7771 +
  7772 +var getLastVisitTime = function getLastVisitTime() {
  7773 + var timeStorge = uni.getStorageSync(Last__Visit__Time__KEY);
  7774 + var time = 0;
  7775 + if (timeStorge) {
  7776 + time = timeStorge;
  7777 + } else {
  7778 + time = '';
  7779 + }
  7780 + uni.setStorageSync(Last__Visit__Time__KEY, getTime());
  7781 + return time;
  7782 +};
  7783 +
  7784 +
  7785 +var PAGE_RESIDENCE_TIME = '__page__residence__time';
  7786 +var First_Page_residence_time = 0;
  7787 +var Last_Page_residence_time = 0;
  7788 +
  7789 +
  7790 +var setPageResidenceTime = function setPageResidenceTime() {
  7791 + First_Page_residence_time = getTime();
  7792 + if (getPlatformName() === 'n') {
  7793 + uni.setStorageSync(PAGE_RESIDENCE_TIME, getTime());
  7794 + }
  7795 + return First_Page_residence_time;
  7796 +};
  7797 +
  7798 +var getPageResidenceTime = function getPageResidenceTime() {
  7799 + Last_Page_residence_time = getTime();
  7800 + if (getPlatformName() === 'n') {
  7801 + First_Page_residence_time = uni.getStorageSync(PAGE_RESIDENCE_TIME);
  7802 + }
  7803 + return Last_Page_residence_time - First_Page_residence_time;
  7804 +};
  7805 +var TOTAL__VISIT__COUNT = 'Total__Visit__Count';
  7806 +var getTotalVisitCount = function getTotalVisitCount() {
  7807 + var timeStorge = uni.getStorageSync(TOTAL__VISIT__COUNT);
  7808 + var count = 1;
  7809 + if (timeStorge) {
  7810 + count = timeStorge;
  7811 + count++;
  7812 + }
  7813 + uni.setStorageSync(TOTAL__VISIT__COUNT, count);
  7814 + return count;
  7815 +};
  7816 +
  7817 +var GetEncodeURIComponentOptions = function GetEncodeURIComponentOptions(statData) {
  7818 + var data = {};
  7819 + for (var prop in statData) {
  7820 + data[prop] = encodeURIComponent(statData[prop]);
  7821 + }
  7822 + return data;
  7823 +};
  7824 +
  7825 +var Set__First__Time = 0;
  7826 +var Set__Last__Time = 0;
  7827 +
  7828 +var getFirstTime = function getFirstTime() {
  7829 + var time = new Date().getTime();
  7830 + Set__First__Time = time;
  7831 + Set__Last__Time = 0;
  7832 + return time;
  7833 +};
  7834 +
  7835 +
  7836 +var getLastTime = function getLastTime() {
  7837 + var time = new Date().getTime();
  7838 + Set__Last__Time = time;
  7839 + return time;
  7840 +};
  7841 +
  7842 +
  7843 +var getResidenceTime = function getResidenceTime(type) {
  7844 + var residenceTime = 0;
  7845 + if (Set__First__Time !== 0) {
  7846 + residenceTime = Set__Last__Time - Set__First__Time;
  7847 + }
  7848 +
  7849 + residenceTime = parseInt(residenceTime / 1000);
  7850 + residenceTime = residenceTime < 1 ? 1 : residenceTime;
  7851 + if (type === 'app') {
  7852 + var overtime = residenceTime > APP_PVER_TIME ? true : false;
  7853 + return {
  7854 + residenceTime: residenceTime,
  7855 + overtime: overtime };
  7856 +
  7857 + }
  7858 + if (type === 'page') {
  7859 + var _overtime = residenceTime > PAGE_PVER_TIME ? true : false;
  7860 + return {
  7861 + residenceTime: residenceTime,
  7862 + overtime: _overtime };
  7863 +
  7864 + }
  7865 +
  7866 + return {
  7867 + residenceTime: residenceTime };
  7868 +
  7869 +
  7870 +};
  7871 +
  7872 +var getRoute = function getRoute() {
  7873 + var pages = getCurrentPages();
  7874 + var page = pages[pages.length - 1];
  7875 + var _self = page.$vm;
  7876 +
  7877 + if (getPlatformName() === 'bd') {
  7878 + return _self.$mp && _self.$mp.page.is;
  7879 + } else {
  7880 + return _self.$scope && _self.$scope.route || _self.$mp && _self.$mp.page.route;
  7881 + }
  7882 +};
  7883 +
  7884 +var getPageRoute = function getPageRoute(self) {
  7885 + var pages = getCurrentPages();
  7886 + var page = pages[pages.length - 1];
  7887 + var _self = page.$vm;
  7888 + var query = self._query;
  7889 + var str = query && JSON.stringify(query) !== '{}' ? '?' + JSON.stringify(query) : '';
  7890 + // clear
  7891 + self._query = '';
  7892 + if (getPlatformName() === 'bd') {
  7893 + return _self.$mp && _self.$mp.page.is + str;
  7894 + } else {
  7895 + return _self.$scope && _self.$scope.route + str || _self.$mp && _self.$mp.page.route + str;
  7896 + }
  7897 +};
  7898 +
  7899 +var getPageTypes = function getPageTypes(self) {
  7900 + if (self.mpType === 'page' || self.$mp && self.$mp.mpType === 'page' || self.$options.mpType === 'page') {
  7901 + return true;
  7902 + }
  7903 + return false;
  7904 +};
  7905 +
  7906 +var calibration = function calibration(eventName, options) {
  7907 + // login 、 share 、pay_success 、pay_fail 、register 、title
  7908 + if (!eventName) {
  7909 + console.error("uni.report \u7F3A\u5C11 [eventName] \u53C2\u6570");
  7910 + return true;
  7911 + }
  7912 + if (typeof eventName !== 'string') {
  7913 + console.error("uni.report [eventName] \u53C2\u6570\u7C7B\u578B\u9519\u8BEF,\u53EA\u80FD\u4E3A String \u7C7B\u578B");
  7914 + return true;
  7915 + }
  7916 + if (eventName.length > 255) {
  7917 + console.error("uni.report [eventName] \u53C2\u6570\u957F\u5EA6\u4E0D\u80FD\u5927\u4E8E 255");
  7918 + return true;
  7919 + }
  7920 +
  7921 + if (typeof options !== 'string' && typeof options !== 'object') {
  7922 + console.error("uni.report [options] \u53C2\u6570\u7C7B\u578B\u9519\u8BEF,\u53EA\u80FD\u4E3A String \u6216 Object \u7C7B\u578B");
  7923 + return true;
  7924 + }
  7925 +
  7926 + if (typeof options === 'string' && options.length > 255) {
  7927 + console.error("uni.report [options] \u53C2\u6570\u957F\u5EA6\u4E0D\u80FD\u5927\u4E8E 255");
  7928 + return true;
  7929 + }
  7930 +
  7931 + if (eventName === 'title' && typeof options !== 'string') {
  7932 + console.error('uni.report [eventName] 参数为 title 时,[options] 参数只能为 String 类型');
  7933 + return true;
  7934 + }
  7935 +};
  7936 +
  7937 +var PagesJson = __webpack_require__(/*! uni-pages?{"type":"style"} */ 7).default;
  7938 +var statConfig = __webpack_require__(/*! uni-stat-config */ 8).default || __webpack_require__(/*! uni-stat-config */ 8);
  7939 +
  7940 +var resultOptions = uni.getSystemInfoSync();var
  7941 +
  7942 +Util = /*#__PURE__*/function () {
  7943 + function Util() {_classCallCheck(this, Util);
  7944 + this.self = '';
  7945 + this._retry = 0;
  7946 + this._platform = '';
  7947 + this._query = {};
  7948 + this._navigationBarTitle = {
  7949 + config: '',
  7950 + page: '',
  7951 + report: '',
  7952 + lt: '' };
  7953 +
  7954 + this._operatingTime = 0;
  7955 + this._reportingRequestData = {
  7956 + '1': [],
  7957 + '11': [] };
  7958 +
  7959 + this.__prevent_triggering = false;
  7960 +
  7961 + this.__licationHide = false;
  7962 + this.__licationShow = false;
  7963 + this._lastPageRoute = '';
  7964 + this.statData = {
  7965 + uuid: getUuid(),
  7966 + ut: getPlatformName(),
  7967 + mpn: getPackName(),
  7968 + ak: statConfig.appid,
  7969 + usv: STAT_VERSION,
  7970 + v: getVersion(),
  7971 + ch: getChannel(),
  7972 + cn: '',
  7973 + pn: '',
  7974 + ct: '',
  7975 + t: getTime(),
  7976 + tt: '',
  7977 + p: resultOptions.platform === 'android' ? 'a' : 'i',
  7978 + brand: resultOptions.brand || '',
  7979 + md: resultOptions.model,
  7980 + sv: resultOptions.system.replace(/(Android|iOS)\s/, ''),
  7981 + mpsdk: resultOptions.SDKVersion || '',
  7982 + mpv: resultOptions.version || '',
  7983 + lang: resultOptions.language,
  7984 + pr: resultOptions.pixelRatio,
  7985 + ww: resultOptions.windowWidth,
  7986 + wh: resultOptions.windowHeight,
  7987 + sw: resultOptions.screenWidth,
  7988 + sh: resultOptions.screenHeight };
  7989 +
  7990 +
  7991 + }_createClass(Util, [{ key: "_applicationShow", value: function _applicationShow()
  7992 +
  7993 + {
  7994 + if (this.__licationHide) {
  7995 + getLastTime();
  7996 + var time = getResidenceTime('app');
  7997 + if (time.overtime) {
  7998 + var options = {
  7999 + path: this._lastPageRoute,
  8000 + scene: this.statData.sc };
  8001 +
  8002 + this._sendReportRequest(options);
  8003 + }
  8004 + this.__licationHide = false;
  8005 + }
  8006 + } }, { key: "_applicationHide", value: function _applicationHide(
  8007 +
  8008 + self, type) {
  8009 +
  8010 + this.__licationHide = true;
  8011 + getLastTime();
  8012 + var time = getResidenceTime();
  8013 + getFirstTime();
  8014 + var route = getPageRoute(this);
  8015 + this._sendHideRequest({
  8016 + urlref: route,
  8017 + urlref_ts: time.residenceTime },
  8018 + type);
  8019 + } }, { key: "_pageShow", value: function _pageShow()
  8020 +
  8021 + {
  8022 + var route = getPageRoute(this);
  8023 + var routepath = getRoute();
  8024 + this._navigationBarTitle.config = PagesJson &&
  8025 + PagesJson.pages[routepath] &&
  8026 + PagesJson.pages[routepath].titleNView &&
  8027 + PagesJson.pages[routepath].titleNView.titleText ||
  8028 + PagesJson &&
  8029 + PagesJson.pages[routepath] &&
  8030 + PagesJson.pages[routepath].navigationBarTitleText || '';
  8031 +
  8032 + if (this.__licationShow) {
  8033 + getFirstTime();
  8034 + this.__licationShow = false;
  8035 + // console.log('这是 onLauch 之后执行的第一次 pageShow ,为下次记录时间做准备');
  8036 + this._lastPageRoute = route;
  8037 + return;
  8038 + }
  8039 +
  8040 + getLastTime();
  8041 + this._lastPageRoute = route;
  8042 + var time = getResidenceTime('page');
  8043 + if (time.overtime) {
  8044 + var options = {
  8045 + path: this._lastPageRoute,
  8046 + scene: this.statData.sc };
  8047 +
  8048 + this._sendReportRequest(options);
  8049 + }
  8050 + getFirstTime();
  8051 + } }, { key: "_pageHide", value: function _pageHide()
  8052 +
  8053 + {
  8054 + if (!this.__licationHide) {
  8055 + getLastTime();
  8056 + var time = getResidenceTime('page');
  8057 + this._sendPageRequest({
  8058 + url: this._lastPageRoute,
  8059 + urlref: this._lastPageRoute,
  8060 + urlref_ts: time.residenceTime });
  8061 +
  8062 + this._navigationBarTitle = {
  8063 + config: '',
  8064 + page: '',
  8065 + report: '',
  8066 + lt: '' };
  8067 +
  8068 + return;
  8069 + }
  8070 + } }, { key: "_login", value: function _login()
  8071 +
  8072 + {
  8073 + this._sendEventRequest({
  8074 + key: 'login' },
  8075 + 0);
  8076 + } }, { key: "_share", value: function _share()
  8077 +
  8078 + {
  8079 + this._sendEventRequest({
  8080 + key: 'share' },
  8081 + 0);
  8082 + } }, { key: "_payment", value: function _payment(
  8083 + key) {
  8084 + this._sendEventRequest({
  8085 + key: key },
  8086 + 0);
  8087 + } }, { key: "_sendReportRequest", value: function _sendReportRequest(
  8088 + options) {
  8089 +
  8090 + this._navigationBarTitle.lt = '1';
  8091 + var query = options.query && JSON.stringify(options.query) !== '{}' ? '?' + JSON.stringify(options.query) : '';
  8092 + this.statData.lt = '1';
  8093 + this.statData.url = options.path + query || '';
  8094 + this.statData.t = getTime();
  8095 + this.statData.sc = getScene(options.scene);
  8096 + this.statData.fvts = getFirstVisitTime();
  8097 + this.statData.lvts = getLastVisitTime();
  8098 + this.statData.tvc = getTotalVisitCount();
  8099 + if (getPlatformName() === 'n') {
  8100 + this.getProperty();
  8101 + } else {
  8102 + this.getNetworkInfo();
  8103 + }
  8104 + } }, { key: "_sendPageRequest", value: function _sendPageRequest(
  8105 +
  8106 + opt) {var
  8107 +
  8108 + url =
  8109 +
  8110 +
  8111 + opt.url,urlref = opt.urlref,urlref_ts = opt.urlref_ts;
  8112 + this._navigationBarTitle.lt = '11';
  8113 + var options = {
  8114 + ak: this.statData.ak,
  8115 + uuid: this.statData.uuid,
  8116 + lt: '11',
  8117 + ut: this.statData.ut,
  8118 + url: url,
  8119 + tt: this.statData.tt,
  8120 + urlref: urlref,
  8121 + urlref_ts: urlref_ts,
  8122 + ch: this.statData.ch,
  8123 + usv: this.statData.usv,
  8124 + t: getTime(),
  8125 + p: this.statData.p };
  8126 +
  8127 + this.request(options);
  8128 + } }, { key: "_sendHideRequest", value: function _sendHideRequest(
  8129 +
  8130 + opt, type) {var
  8131 +
  8132 + urlref =
  8133 +
  8134 + opt.urlref,urlref_ts = opt.urlref_ts;
  8135 + var options = {
  8136 + ak: this.statData.ak,
  8137 + uuid: this.statData.uuid,
  8138 + lt: '3',
  8139 + ut: this.statData.ut,
  8140 + urlref: urlref,
  8141 + urlref_ts: urlref_ts,
  8142 + ch: this.statData.ch,
  8143 + usv: this.statData.usv,
  8144 + t: getTime(),
  8145 + p: this.statData.p };
  8146 +
  8147 + this.request(options, type);
  8148 + } }, { key: "_sendEventRequest", value: function _sendEventRequest()
  8149 +
  8150 +
  8151 +
  8152 + {var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},_ref$key = _ref.key,key = _ref$key === void 0 ? '' : _ref$key,_ref$value = _ref.value,value = _ref$value === void 0 ? "" : _ref$value;
  8153 + var route = this._lastPageRoute;
  8154 + var options = {
  8155 + ak: this.statData.ak,
  8156 + uuid: this.statData.uuid,
  8157 + lt: '21',
  8158 + ut: this.statData.ut,
  8159 + url: route,
  8160 + ch: this.statData.ch,
  8161 + e_n: key,
  8162 + e_v: typeof value === 'object' ? JSON.stringify(value) : value.toString(),
  8163 + usv: this.statData.usv,
  8164 + t: getTime(),
  8165 + p: this.statData.p };
  8166 +
  8167 + this.request(options);
  8168 + } }, { key: "getNetworkInfo", value: function getNetworkInfo()
  8169 +
  8170 + {var _this = this;
  8171 + uni.getNetworkType({
  8172 + success: function success(result) {
  8173 + _this.statData.net = result.networkType;
  8174 + _this.getLocation();
  8175 + } });
  8176 +
  8177 + } }, { key: "getProperty", value: function getProperty()
  8178 +
  8179 + {var _this2 = this;
  8180 + plus.runtime.getProperty(plus.runtime.appid, function (wgtinfo) {
  8181 + _this2.statData.v = wgtinfo.version || '';
  8182 + _this2.getNetworkInfo();
  8183 + });
  8184 + } }, { key: "getLocation", value: function getLocation()
  8185 +
  8186 + {var _this3 = this;
  8187 + if (statConfig.getLocation) {
  8188 + uni.getLocation({
  8189 + type: 'wgs84',
  8190 + geocode: true,
  8191 + success: function success(result) {
  8192 + if (result.address) {
  8193 + _this3.statData.cn = result.address.country;
  8194 + _this3.statData.pn = result.address.province;
  8195 + _this3.statData.ct = result.address.city;
  8196 + }
  8197 +
  8198 + _this3.statData.lat = result.latitude;
  8199 + _this3.statData.lng = result.longitude;
  8200 + _this3.request(_this3.statData);
  8201 + } });
  8202 +
  8203 + } else {
  8204 + this.statData.lat = 0;
  8205 + this.statData.lng = 0;
  8206 + this.request(this.statData);
  8207 + }
  8208 + } }, { key: "request", value: function request(
  8209 +
  8210 + data, type) {var _this4 = this;
  8211 + var time = getTime();
  8212 + var title = this._navigationBarTitle;
  8213 + data.ttn = title.page;
  8214 + data.ttpj = title.config;
  8215 + data.ttc = title.report;
  8216 +
  8217 + var requestData = this._reportingRequestData;
  8218 + if (getPlatformName() === 'n') {
  8219 + requestData = uni.getStorageSync('__UNI__STAT__DATA') || {};
  8220 + }
  8221 + if (!requestData[data.lt]) {
  8222 + requestData[data.lt] = [];
  8223 + }
  8224 + requestData[data.lt].push(data);
  8225 +
  8226 + if (getPlatformName() === 'n') {
  8227 + uni.setStorageSync('__UNI__STAT__DATA', requestData);
  8228 + }
  8229 + if (getPageResidenceTime() < OPERATING_TIME && !type) {
  8230 + return;
  8231 + }
  8232 + var uniStatData = this._reportingRequestData;
  8233 + if (getPlatformName() === 'n') {
  8234 + uniStatData = uni.getStorageSync('__UNI__STAT__DATA');
  8235 + }
  8236 + // 时间超过,重新获取时间戳
  8237 + setPageResidenceTime();
  8238 + var firstArr = [];
  8239 + var contentArr = [];
  8240 + var lastArr = [];var _loop = function _loop(
  8241 +
  8242 + i) {
  8243 + var rd = uniStatData[i];
  8244 + rd.forEach(function (elm) {
  8245 + var newData = getSplicing(elm);
  8246 + if (i === 0) {
  8247 + firstArr.push(newData);
  8248 + } else if (i === 3) {
  8249 + lastArr.push(newData);
  8250 + } else {
  8251 + contentArr.push(newData);
  8252 + }
  8253 + });};for (var i in uniStatData) {_loop(i);
  8254 + }
  8255 +
  8256 + firstArr.push.apply(firstArr, contentArr.concat(lastArr));
  8257 + var optionsData = {
  8258 + usv: STAT_VERSION, //统计 SDK 版本号
  8259 + t: time, //发送请求时的时间戮
  8260 + requests: JSON.stringify(firstArr) };
  8261 +
  8262 +
  8263 + this._reportingRequestData = {};
  8264 + if (getPlatformName() === 'n') {
  8265 + uni.removeStorageSync('__UNI__STAT__DATA');
  8266 + }
  8267 +
  8268 + if (data.ut === 'h5') {
  8269 + this.imageRequest(optionsData);
  8270 + return;
  8271 + }
  8272 +
  8273 + if (getPlatformName() === 'n' && this.statData.p === 'a') {
  8274 + setTimeout(function () {
  8275 + _this4._sendRequest(optionsData);
  8276 + }, 200);
  8277 + return;
  8278 + }
  8279 + this._sendRequest(optionsData);
  8280 + } }, { key: "_sendRequest", value: function _sendRequest(
  8281 + optionsData) {var _this5 = this;
  8282 + uni.request({
  8283 + url: STAT_URL,
  8284 + method: 'POST',
  8285 + // header: {
  8286 + // 'content-type': 'application/json' // 默认值
  8287 + // },
  8288 + data: optionsData,
  8289 + success: function success() {
  8290 + // if (process.env.NODE_ENV === 'development') {
  8291 + // console.log('stat request success');
  8292 + // }
  8293 + },
  8294 + fail: function fail(e) {
  8295 + if (++_this5._retry < 3) {
  8296 + setTimeout(function () {
  8297 + _this5._sendRequest(optionsData);
  8298 + }, 1000);
  8299 + }
  8300 + } });
  8301 +
  8302 + }
  8303 + /**
  8304 + * h5 请求
  8305 + */ }, { key: "imageRequest", value: function imageRequest(
  8306 + data) {
  8307 + var image = new Image();
  8308 + var options = getSgin(GetEncodeURIComponentOptions(data)).options;
  8309 + image.src = STAT_H5_URL + '?' + options;
  8310 + } }, { key: "sendEvent", value: function sendEvent(
  8311 +
  8312 + key, value) {
  8313 + // 校验 type 参数
  8314 + if (calibration(key, value)) return;
  8315 +
  8316 + if (key === 'title') {
  8317 + this._navigationBarTitle.report = value;
  8318 + return;
  8319 + }
  8320 + this._sendEventRequest({
  8321 + key: key,
  8322 + value: typeof value === 'object' ? JSON.stringify(value) : value },
  8323 + 1);
  8324 + } }]);return Util;}();var
  8325 +
  8326 +
  8327 +
  8328 +Stat = /*#__PURE__*/function (_Util) {_inherits(Stat, _Util);var _super = _createSuper(Stat);_createClass(Stat, null, [{ key: "getInstance", value: function getInstance()
  8329 + {
  8330 + if (!this.instance) {
  8331 + this.instance = new Stat();
  8332 + }
  8333 + return this.instance;
  8334 + } }]);
  8335 + function Stat() {var _this6;_classCallCheck(this, Stat);
  8336 + _this6 = _super.call(this);
  8337 + _this6.instance = null;
  8338 + // 注册拦截器
  8339 + if (typeof uni.addInterceptor === 'function' && "development" !== 'development') {
  8340 + _this6.addInterceptorInit();
  8341 + _this6.interceptLogin();
  8342 + _this6.interceptShare(true);
  8343 + _this6.interceptRequestPayment();
  8344 + }return _this6;
  8345 + }_createClass(Stat, [{ key: "addInterceptorInit", value: function addInterceptorInit()
  8346 +
  8347 + {
  8348 + var self = this;
  8349 + uni.addInterceptor('setNavigationBarTitle', {
  8350 + invoke: function invoke(args) {
  8351 + self._navigationBarTitle.page = args.title;
  8352 + } });
  8353 +
  8354 + } }, { key: "interceptLogin", value: function interceptLogin()
  8355 +
  8356 + {
  8357 + var self = this;
  8358 + uni.addInterceptor('login', {
  8359 + complete: function complete() {
  8360 + self._login();
  8361 + } });
  8362 +
  8363 + } }, { key: "interceptShare", value: function interceptShare(
  8364 +
  8365 + type) {
  8366 + var self = this;
  8367 + if (!type) {
  8368 + self._share();
  8369 + return;
  8370 + }
  8371 + uni.addInterceptor('share', {
  8372 + success: function success() {
  8373 + self._share();
  8374 + },
  8375 + fail: function fail() {
  8376 + self._share();
  8377 + } });
  8378 +
  8379 + } }, { key: "interceptRequestPayment", value: function interceptRequestPayment()
  8380 +
  8381 + {
  8382 + var self = this;
  8383 + uni.addInterceptor('requestPayment', {
  8384 + success: function success() {
  8385 + self._payment('pay_success');
  8386 + },
  8387 + fail: function fail() {
  8388 + self._payment('pay_fail');
  8389 + } });
  8390 +
  8391 + } }, { key: "report", value: function report(
  8392 +
  8393 + options, self) {
  8394 + this.self = self;
  8395 + // if (process.env.NODE_ENV === 'development') {
  8396 + // console.log('report init');
  8397 + // }
  8398 + setPageResidenceTime();
  8399 + this.__licationShow = true;
  8400 + this._sendReportRequest(options, true);
  8401 + } }, { key: "load", value: function load(
  8402 +
  8403 + options, self) {
  8404 + if (!self.$scope && !self.$mp) {
  8405 + var page = getCurrentPages();
  8406 + self.$scope = page[page.length - 1];
  8407 + }
  8408 + this.self = self;
  8409 + this._query = options;
  8410 + } }, { key: "show", value: function show(
  8411 +
  8412 + self) {
  8413 + this.self = self;
  8414 + if (getPageTypes(self)) {
  8415 + this._pageShow(self);
  8416 + } else {
  8417 + this._applicationShow(self);
  8418 + }
  8419 + } }, { key: "ready", value: function ready(
  8420 +
  8421 + self) {
  8422 + // this.self = self;
  8423 + // if (getPageTypes(self)) {
  8424 + // this._pageShow(self);
  8425 + // }
  8426 + } }, { key: "hide", value: function hide(
  8427 + self) {
  8428 + this.self = self;
  8429 + if (getPageTypes(self)) {
  8430 + this._pageHide(self);
  8431 + } else {
  8432 + this._applicationHide(self, true);
  8433 + }
  8434 + } }, { key: "error", value: function error(
  8435 + em) {
  8436 + if (this._platform === 'devtools') {
  8437 + if (true) {
  8438 + console.info('当前运行环境为开发者工具,不上报数据。');
  8439 + }
  8440 + // return;
  8441 + }
  8442 + var emVal = '';
  8443 + if (!em.message) {
  8444 + emVal = JSON.stringify(em);
  8445 + } else {
  8446 + emVal = em.stack;
  8447 + }
  8448 + var options = {
  8449 + ak: this.statData.ak,
  8450 + uuid: this.statData.uuid,
  8451 + lt: '31',
  8452 + ut: this.statData.ut,
  8453 + ch: this.statData.ch,
  8454 + mpsdk: this.statData.mpsdk,
  8455 + mpv: this.statData.mpv,
  8456 + v: this.statData.v,
  8457 + em: emVal,
  8458 + usv: this.statData.usv,
  8459 + t: getTime(),
  8460 + p: this.statData.p };
  8461 +
  8462 + this.request(options);
  8463 + } }]);return Stat;}(Util);
  8464 +
  8465 +
  8466 +var stat = Stat.getInstance();
  8467 +var isHide = false;
  8468 +var lifecycle = {
  8469 + onLaunch: function onLaunch(options) {
  8470 + stat.report(options, this);
  8471 + },
  8472 + onReady: function onReady() {
  8473 + stat.ready(this);
  8474 + },
  8475 + onLoad: function onLoad(options) {
  8476 + stat.load(options, this);
  8477 + // 重写分享,获取分享上报事件
  8478 + if (this.$scope && this.$scope.onShareAppMessage) {
  8479 + var oldShareAppMessage = this.$scope.onShareAppMessage;
  8480 + this.$scope.onShareAppMessage = function (options) {
  8481 + stat.interceptShare(false);
  8482 + return oldShareAppMessage.call(this, options);
  8483 + };
  8484 + }
  8485 + },
  8486 + onShow: function onShow() {
  8487 + isHide = false;
  8488 + stat.show(this);
  8489 + },
  8490 + onHide: function onHide() {
  8491 + isHide = true;
  8492 + stat.hide(this);
  8493 + },
  8494 + onUnload: function onUnload() {
  8495 + if (isHide) {
  8496 + isHide = false;
  8497 + return;
  8498 + }
  8499 + stat.hide(this);
  8500 + },
  8501 + onError: function onError(e) {
  8502 + stat.error(e);
  8503 + } };
  8504 +
  8505 +
  8506 +function main() {
  8507 + if (true) {
  8508 + uni.report = function (type, options) {};
  8509 + } else { var Vue; }
  8510 +}
  8511 +
  8512 +main();
  8513 +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"]))
  8514 +
  8515 +/***/ }),
  8516 +/* 6 */
  8517 +/*!******************************************************!*\
  8518 + !*** ./node_modules/@dcloudio/uni-stat/package.json ***!
  8519 + \******************************************************/
  8520 +/*! exports provided: _from, _id, _inBundle, _integrity, _location, _phantomChildren, _requested, _requiredBy, _resolved, _shasum, _spec, _where, author, bugs, bundleDependencies, deprecated, description, devDependencies, files, gitHead, homepage, license, main, name, repository, scripts, version, default */
  8521 +/***/ (function(module) {
  8522 +
  8523 +module.exports = {"_from":"@dcloudio/uni-stat@next","_id":"@dcloudio/uni-stat@2.0.0-26920200421003","_inBundle":false,"_integrity":"sha512-Aa6R66ZF2pIK9XB+Y7QbSW2GficyNTcdT7fnxFw5gY1eeY+u8oT7rTpZrL1W2qKbqf2FbsNPDjZrg1nRj6RxkQ==","_location":"/@dcloudio/uni-stat","_phantomChildren":{},"_requested":{"type":"tag","registry":true,"raw":"@dcloudio/uni-stat@next","name":"@dcloudio/uni-stat","escapedName":"@dcloudio%2funi-stat","scope":"@dcloudio","rawSpec":"next","saveSpec":null,"fetchSpec":"next"},"_requiredBy":["#USER","/","/@dcloudio/vue-cli-plugin-uni"],"_resolved":"https://registry.npmjs.org/@dcloudio/uni-stat/-/uni-stat-2.0.0-26920200421003.tgz","_shasum":"c08ebc00afa71edd9ed388fc4bf411e42d458ac5","_spec":"@dcloudio/uni-stat@next","_where":"/Users/guoshengqiang/Documents/dcloud-plugins/release/uniapp-cli","author":"","bugs":{"url":"https://github.com/dcloudio/uni-app/issues"},"bundleDependencies":false,"deprecated":false,"description":"","devDependencies":{"@babel/core":"^7.5.5","@babel/preset-env":"^7.5.5","eslint":"^6.1.0","rollup":"^1.19.3","rollup-plugin-babel":"^4.3.3","rollup-plugin-clear":"^2.0.7","rollup-plugin-commonjs":"^10.0.2","rollup-plugin-copy":"^3.1.0","rollup-plugin-eslint":"^7.0.0","rollup-plugin-json":"^4.0.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-replace":"^2.2.0","rollup-plugin-uglify":"^6.0.2"},"files":["dist","package.json","LICENSE"],"gitHead":"a7035ab7f2a83dbc2c75090de34f68e5a01224a7","homepage":"https://github.com/dcloudio/uni-app#readme","license":"Apache-2.0","main":"dist/index.js","name":"@dcloudio/uni-stat","repository":{"type":"git","url":"git+https://github.com/dcloudio/uni-app.git","directory":"packages/uni-stat"},"scripts":{"build":"NODE_ENV=production rollup -c rollup.config.js","dev":"NODE_ENV=development rollup -w -c rollup.config.js"},"version":"2.0.0-26920200421003"};
  8524 +
  8525 +/***/ }),
  8526 +/* 7 */
  8527 +/*!***************************************************************************!*\
  8528 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages.json?{"type":"style"} ***!
  8529 + \***************************************************************************/
  8530 +/*! no static exports found */
  8531 +/***/ (function(module, exports, __webpack_require__) {
  8532 +
  8533 +"use strict";
  8534 +Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = { "pages": { "pages/index/index": { "navigationBarTitleText": "商城一览" }, "pages/cart/cart": { "navigationBarTitleText": "购物车" }, "pages/user/user": { "navigationBarTitleText": "我的" } }, "globalStyle": { "navigationBarTextStyle": "black", "navigationBarTitleText": "uni-app", "navigationBarBackgroundColor": "#F8F8F8", "backgroundColor": "#F8F8F8" } };exports.default = _default;
  8535 +
  8536 +/***/ }),
  8537 +/* 8 */
  8538 +/*!**************************************************************************!*\
  8539 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages.json?{"type":"stat"} ***!
  8540 + \**************************************************************************/
  8541 +/*! no static exports found */
  8542 +/***/ (function(module, exports, __webpack_require__) {
  8543 +
  8544 +"use strict";
  8545 +Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = { "appid": "" };exports.default = _default;
  8546 +
  8547 +/***/ }),
  8548 +/* 9 */,
  8549 +/* 10 */,
  8550 +/* 11 */,
  8551 +/* 12 */,
  8552 +/* 13 */,
  8553 +/* 14 */
  8554 +/*!**********************************************************************************************************!*\
  8555 + !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js ***!
  8556 + \**********************************************************************************************************/
  8557 +/*! exports provided: default */
  8558 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  8559 +
  8560 +"use strict";
  8561 +__webpack_require__.r(__webpack_exports__);
  8562 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
  8563 +/* globals __VUE_SSR_CONTEXT__ */
  8564 +
  8565 +// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
  8566 +// This module is a runtime utility for cleaner component module output and will
  8567 +// be included in the final webpack user bundle.
  8568 +
  8569 +function normalizeComponent (
  8570 + scriptExports,
  8571 + render,
  8572 + staticRenderFns,
  8573 + functionalTemplate,
  8574 + injectStyles,
  8575 + scopeId,
  8576 + moduleIdentifier, /* server only */
  8577 + shadowMode, /* vue-cli only */
  8578 + components, // fixed by xxxxxx auto components
  8579 + renderjs // fixed by xxxxxx renderjs
  8580 +) {
  8581 + // Vue.extend constructor export interop
  8582 + var options = typeof scriptExports === 'function'
  8583 + ? scriptExports.options
  8584 + : scriptExports
  8585 +
  8586 + // fixed by xxxxxx auto components
  8587 + if (components) {
  8588 + if (!options.components) {
  8589 + options.components = {}
  8590 + }
  8591 + var hasOwn = Object.prototype.hasOwnProperty
  8592 + for (var name in components) {
  8593 + if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {
  8594 + options.components[name] = components[name]
  8595 + }
  8596 + }
  8597 + }
  8598 + // fixed by xxxxxx renderjs
  8599 + if (renderjs) {
  8600 + (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {
  8601 + this[renderjs.__module] = this
  8602 + });
  8603 + (options.mixins || (options.mixins = [])).push(renderjs)
  8604 + }
  8605 +
  8606 + // render functions
  8607 + if (render) {
  8608 + options.render = render
  8609 + options.staticRenderFns = staticRenderFns
  8610 + options._compiled = true
  8611 + }
  8612 +
  8613 + // functional template
  8614 + if (functionalTemplate) {
  8615 + options.functional = true
  8616 + }
  8617 +
  8618 + // scopedId
  8619 + if (scopeId) {
  8620 + options._scopeId = 'data-v-' + scopeId
  8621 + }
  8622 +
  8623 + var hook
  8624 + if (moduleIdentifier) { // server build
  8625 + hook = function (context) {
  8626 + // 2.3 injection
  8627 + context =
  8628 + context || // cached call
  8629 + (this.$vnode && this.$vnode.ssrContext) || // stateful
  8630 + (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
  8631 + // 2.2 with runInNewContext: true
  8632 + if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
  8633 + context = __VUE_SSR_CONTEXT__
  8634 + }
  8635 + // inject component styles
  8636 + if (injectStyles) {
  8637 + injectStyles.call(this, context)
  8638 + }
  8639 + // register component module identifier for async chunk inferrence
  8640 + if (context && context._registeredComponents) {
  8641 + context._registeredComponents.add(moduleIdentifier)
  8642 + }
  8643 + }
  8644 + // used by ssr in case component is cached and beforeCreate
  8645 + // never gets called
  8646 + options._ssrRegister = hook
  8647 + } else if (injectStyles) {
  8648 + hook = shadowMode
  8649 + ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
  8650 + : injectStyles
  8651 + }
  8652 +
  8653 + if (hook) {
  8654 + if (options.functional) {
  8655 + // for template-only hot-reload because in that case the render fn doesn't
  8656 + // go through the normalizer
  8657 + options._injectStyles = hook
  8658 + // register for functioal component in vue file
  8659 + var originalRender = options.render
  8660 + options.render = function renderWithStyleInjection (h, context) {
  8661 + hook.call(context)
  8662 + return originalRender(h, context)
  8663 + }
  8664 + } else {
  8665 + // inject component registration as beforeCreate hook
  8666 + var existing = options.beforeCreate
  8667 + options.beforeCreate = existing
  8668 + ? [].concat(existing, hook)
  8669 + : [hook]
  8670 + }
  8671 + }
  8672 +
  8673 + return {
  8674 + exports: scriptExports,
  8675 + options: options
  8676 + }
  8677 +}
  8678 +
  8679 +
  8680 +/***/ })
  8681 +]]);
  8682 +//# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map
0 8683 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/cart/cart.js
... ... @@ -0,0 +1,186 @@
  1 +(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/cart/cart"],{
  2 +
  3 +/***/ 23:
  4 +/*!**************************************************************************************!*\
  5 + !*** C:/Users/Administrator/Desktop/gulu-vue/main.js?{"page":"pages%2Fcart%2Fcart"} ***!
  6 + \**************************************************************************************/
  7 +/*! no static exports found */
  8 +/***/ (function(module, exports, __webpack_require__) {
  9 +
  10 +"use strict";
  11 +/* WEBPACK VAR INJECTION */(function(createPage) {__webpack_require__(/*! uni-pages */ 4);__webpack_require__(/*! @dcloudio/uni-stat */ 5);
  12 +var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));
  13 +var _cart = _interopRequireDefault(__webpack_require__(/*! ./pages/cart/cart.vue */ 24));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}
  14 +createPage(_cart.default);
  15 +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["createPage"]))
  16 +
  17 +/***/ }),
  18 +
  19 +/***/ 24:
  20 +/*!*******************************************************************!*\
  21 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue ***!
  22 + \*******************************************************************/
  23 +/*! no static exports found */
  24 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  25 +
  26 +"use strict";
  27 +__webpack_require__.r(__webpack_exports__);
  28 +/* harmony import */ var _cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./cart.vue?vue&type=template&id=2e8f6dbb& */ 25);
  29 +/* harmony import */ var _cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./cart.vue?vue&type=script&lang=js& */ 27);
  30 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  31 +/* harmony import */ var _cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./cart.vue?vue&type=style&index=0&lang=css& */ 29);
  32 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 14);
  33 +
  34 +var renderjs
  35 +
  36 +
  37 +
  38 +
  39 +
  40 +/* normalize component */
  41 +
  42 +var component = Object(_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
  43 + _cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  44 + _cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["render"],
  45 + _cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  46 + false,
  47 + null,
  48 + null,
  49 + null,
  50 + false,
  51 + _cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["components"],
  52 + renderjs
  53 +)
  54 +
  55 +component.options.__file = "C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue"
  56 +/* harmony default export */ __webpack_exports__["default"] = (component.exports);
  57 +
  58 +/***/ }),
  59 +
  60 +/***/ 25:
  61 +/*!**************************************************************************************************!*\
  62 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?vue&type=template&id=2e8f6dbb& ***!
  63 + \**************************************************************************************************/
  64 +/*! exports provided: render, staticRenderFns, recyclableRender, components */
  65 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  66 +
  67 +"use strict";
  68 +__webpack_require__.r(__webpack_exports__);
  69 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./cart.vue?vue&type=template&id=2e8f6dbb& */ 26);
  70 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  71 +
  72 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  73 +
  74 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  75 +
  76 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_template_id_2e8f6dbb___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  77 +
  78 +
  79 +
  80 +/***/ }),
  81 +
  82 +/***/ 26:
  83 +/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  84 + !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?vue&type=template&id=2e8f6dbb& ***!
  85 + \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  86 +/*! exports provided: render, staticRenderFns, recyclableRender, components */
  87 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  88 +
  89 +"use strict";
  90 +__webpack_require__.r(__webpack_exports__);
  91 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
  92 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
  93 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
  94 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
  95 +var components
  96 +var render = function() {
  97 + var _vm = this
  98 + var _h = _vm.$createElement
  99 + var _c = _vm._self._c || _h
  100 +}
  101 +var recyclableRender = false
  102 +var staticRenderFns = []
  103 +render._withStripped = true
  104 +
  105 +
  106 +
  107 +/***/ }),
  108 +
  109 +/***/ 27:
  110 +/*!********************************************************************************************!*\
  111 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?vue&type=script&lang=js& ***!
  112 + \********************************************************************************************/
  113 +/*! no static exports found */
  114 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  115 +
  116 +"use strict";
  117 +__webpack_require__.r(__webpack_exports__);
  118 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./cart.vue?vue&type=script&lang=js& */ 28);
  119 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  120 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  121 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  122 +
  123 +/***/ }),
  124 +
  125 +/***/ 28:
  126 +/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  127 + !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?vue&type=script&lang=js& ***!
  128 + \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  129 +/*! no static exports found */
  130 +/***/ (function(module, exports, __webpack_require__) {
  131 +
  132 +"use strict";
  133 +Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; //
  134 +//
  135 +//
  136 +//
  137 +//
  138 +//
  139 +//
  140 +//
  141 +//
  142 +var _default =
  143 +{
  144 + data: function data() {
  145 + return {
  146 + title: 'Hello' };
  147 +
  148 + },
  149 + onLoad: function onLoad() {
  150 +
  151 + },
  152 + methods: {} };exports.default = _default;
  153 +
  154 +/***/ }),
  155 +
  156 +/***/ 29:
  157 +/*!****************************************************************************************************!*\
  158 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?vue&type=style&index=0&lang=css& ***!
  159 + \****************************************************************************************************/
  160 +/*! no static exports found */
  161 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  162 +
  163 +"use strict";
  164 +__webpack_require__.r(__webpack_exports__);
  165 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./cart.vue?vue&type=style&index=0&lang=css& */ 30);
  166 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  167 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  168 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_cart_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
  169 +
  170 +/***/ }),
  171 +
  172 +/***/ 30:
  173 +/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  174 + !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/cart/cart.vue?vue&type=style&index=0&lang=css& ***!
  175 + \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  176 +/*! no static exports found */
  177 +/***/ (function(module, exports, __webpack_require__) {
  178 +
  179 +// extracted by mini-css-extract-plugin
  180 + if(false) { var cssReload; }
  181 +
  182 +
  183 +/***/ })
  184 +
  185 +},[[23,"common/runtime","common/vendor"]]]);
  186 +//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/cart/cart.js.map
0 187 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/cart/cart.json
... ... @@ -0,0 +1,4 @@
  1 +{
  2 + "navigationBarTitleText": "购物车",
  3 + "usingComponents": {}
  4 +}
0 5 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/cart/cart.wxml
... ... @@ -0,0 +1 @@
  1 +<view class="content"><image class="logo" src="/static/logo.png"></image><view class="text-area"><text class="title">{{title}}</text></view></view>
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/cart/cart.wxss
... ... @@ -0,0 +1,37 @@
  1 +
  2 +.content {
  3 + display: -webkit-box;
  4 + display: -webkit-flex;
  5 + display: flex;
  6 + -webkit-box-orient: vertical;
  7 + -webkit-box-direction: normal;
  8 + -webkit-flex-direction: column;
  9 + flex-direction: column;
  10 + -webkit-box-align: center;
  11 + -webkit-align-items: center;
  12 + align-items: center;
  13 + -webkit-box-pack: center;
  14 + -webkit-justify-content: center;
  15 + justify-content: center;
  16 +}
  17 +.logo {
  18 + height: 200rpx;
  19 + width: 200rpx;
  20 + margin-top: 200rpx;
  21 + margin-left: auto;
  22 + margin-right: auto;
  23 + margin-bottom: 50rpx;
  24 +}
  25 +.text-area {
  26 + display: -webkit-box;
  27 + display: -webkit-flex;
  28 + display: flex;
  29 + -webkit-box-pack: center;
  30 + -webkit-justify-content: center;
  31 + justify-content: center;
  32 +}
  33 +.title {
  34 + font-size: 36rpx;
  35 + color: #8f8f94;
  36 +}
  37 +
... ...
unpackage/dist/dev/mp-weixin/pages/index/index.js
... ... @@ -0,0 +1,194 @@
  1 +(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/index/index"],[
  2 +/* 0 */,
  3 +/* 1 */,
  4 +/* 2 */,
  5 +/* 3 */,
  6 +/* 4 */,
  7 +/* 5 */,
  8 +/* 6 */,
  9 +/* 7 */,
  10 +/* 8 */,
  11 +/* 9 */,
  12 +/* 10 */,
  13 +/* 11 */,
  14 +/* 12 */,
  15 +/* 13 */,
  16 +/* 14 */,
  17 +/* 15 */
  18 +/*!****************************************************************************************!*\
  19 + !*** C:/Users/Administrator/Desktop/gulu-vue/main.js?{"page":"pages%2Findex%2Findex"} ***!
  20 + \****************************************************************************************/
  21 +/*! no static exports found */
  22 +/***/ (function(module, exports, __webpack_require__) {
  23 +
  24 +"use strict";
  25 +/* WEBPACK VAR INJECTION */(function(createPage) {__webpack_require__(/*! uni-pages */ 4);__webpack_require__(/*! @dcloudio/uni-stat */ 5);
  26 +var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));
  27 +var _index = _interopRequireDefault(__webpack_require__(/*! ./pages/index/index.vue */ 16));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}
  28 +createPage(_index.default);
  29 +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["createPage"]))
  30 +
  31 +/***/ }),
  32 +/* 16 */
  33 +/*!*********************************************************************!*\
  34 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue ***!
  35 + \*********************************************************************/
  36 +/*! no static exports found */
  37 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  38 +
  39 +"use strict";
  40 +__webpack_require__.r(__webpack_exports__);
  41 +/* harmony import */ var _index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.vue?vue&type=template&id=74c52b3e& */ 17);
  42 +/* harmony import */ var _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.vue?vue&type=script&lang=js& */ 19);
  43 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  44 +/* harmony import */ var _index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.vue?vue&type=style&index=0&lang=css& */ 21);
  45 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 14);
  46 +
  47 +var renderjs
  48 +
  49 +
  50 +
  51 +
  52 +
  53 +/* normalize component */
  54 +
  55 +var component = Object(_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
  56 + _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  57 + _index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["render"],
  58 + _index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  59 + false,
  60 + null,
  61 + null,
  62 + null,
  63 + false,
  64 + _index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["components"],
  65 + renderjs
  66 +)
  67 +
  68 +component.options.__file = "C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue"
  69 +/* harmony default export */ __webpack_exports__["default"] = (component.exports);
  70 +
  71 +/***/ }),
  72 +/* 17 */
  73 +/*!****************************************************************************************************!*\
  74 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?vue&type=template&id=74c52b3e& ***!
  75 + \****************************************************************************************************/
  76 +/*! exports provided: render, staticRenderFns, recyclableRender, components */
  77 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  78 +
  79 +"use strict";
  80 +__webpack_require__.r(__webpack_exports__);
  81 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=template&id=74c52b3e& */ 18);
  82 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  83 +
  84 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  85 +
  86 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  87 +
  88 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_template_id_74c52b3e___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  89 +
  90 +
  91 +
  92 +/***/ }),
  93 +/* 18 */
  94 +/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  95 + !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?vue&type=template&id=74c52b3e& ***!
  96 + \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  97 +/*! exports provided: render, staticRenderFns, recyclableRender, components */
  98 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  99 +
  100 +"use strict";
  101 +__webpack_require__.r(__webpack_exports__);
  102 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
  103 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
  104 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
  105 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
  106 +var components
  107 +var render = function() {
  108 + var _vm = this
  109 + var _h = _vm.$createElement
  110 + var _c = _vm._self._c || _h
  111 +}
  112 +var recyclableRender = false
  113 +var staticRenderFns = []
  114 +render._withStripped = true
  115 +
  116 +
  117 +
  118 +/***/ }),
  119 +/* 19 */
  120 +/*!**********************************************************************************************!*\
  121 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?vue&type=script&lang=js& ***!
  122 + \**********************************************************************************************/
  123 +/*! no static exports found */
  124 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  125 +
  126 +"use strict";
  127 +__webpack_require__.r(__webpack_exports__);
  128 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js& */ 20);
  129 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  130 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  131 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  132 +
  133 +/***/ }),
  134 +/* 20 */
  135 +/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  136 + !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?vue&type=script&lang=js& ***!
  137 + \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  138 +/*! no static exports found */
  139 +/***/ (function(module, exports, __webpack_require__) {
  140 +
  141 +"use strict";
  142 +Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; //
  143 +//
  144 +//
  145 +//
  146 +//
  147 +//
  148 +//
  149 +//
  150 +//
  151 +//
  152 +//
  153 +var _default =
  154 +{
  155 + data: function data() {
  156 + return {
  157 + title: 'Hello' };
  158 +
  159 + },
  160 + onLoad: function onLoad() {
  161 +
  162 + },
  163 + methods: {} };exports.default = _default;
  164 +
  165 +/***/ }),
  166 +/* 21 */
  167 +/*!******************************************************************************************************!*\
  168 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?vue&type=style&index=0&lang=css& ***!
  169 + \******************************************************************************************************/
  170 +/*! no static exports found */
  171 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  172 +
  173 +"use strict";
  174 +__webpack_require__.r(__webpack_exports__);
  175 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=style&index=0&lang=css& */ 22);
  176 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  177 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  178 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_index_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
  179 +
  180 +/***/ }),
  181 +/* 22 */
  182 +/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  183 + !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/index/index.vue?vue&type=style&index=0&lang=css& ***!
  184 + \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  185 +/*! no static exports found */
  186 +/***/ (function(module, exports, __webpack_require__) {
  187 +
  188 +// extracted by mini-css-extract-plugin
  189 + if(false) { var cssReload; }
  190 +
  191 +
  192 +/***/ })
  193 +],[[15,"common/runtime","common/vendor"]]]);
  194 +//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/index/index.js.map
0 195 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/index/index.json
... ... @@ -0,0 +1,4 @@
  1 +{
  2 + "navigationBarTitleText": "商城一览",
  3 + "usingComponents": {}
  4 +}
0 5 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/index/index.wxml
... ... @@ -0,0 +1 @@
  1 +<view class="content"><view class="searchBar"><icon class="searchIcon" type="search" size="21"></icon><input class="searchIpt" placeholder="请输入搜索内容" confirm-type="search"/></view><view class="screenBar"></view><view></view></view>
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/index/index.wxss
... ... @@ -0,0 +1,44 @@
  1 +
  2 +.content {
  3 + display: -webkit-box;
  4 + display: -webkit-flex;
  5 + display: flex;
  6 + -webkit-box-orient: vertical;
  7 + -webkit-box-direction: normal;
  8 + -webkit-flex-direction: column;
  9 + flex-direction: column;
  10 + -webkit-box-align: center;
  11 + -webkit-align-items: center;
  12 + align-items: center;
  13 + -webkit-box-pack: center;
  14 + -webkit-justify-content: center;
  15 + justify-content: center;
  16 +}
  17 +.searchBar {
  18 + width: calc(100% - 16rpx * 2);
  19 + display: -webkit-box;
  20 + display: -webkit-flex;
  21 + display: flex;
  22 + -webkit-box-pack: center;
  23 + -webkit-justify-content: center;
  24 + justify-content: center;
  25 + -webkit-box-align: center;
  26 + -webkit-align-items: center;
  27 + align-items: center;
  28 + -webkit-box-sizing: border-box;
  29 + box-sizing: border-box;
  30 + margin: 16rpx 16rpx;
  31 + padding: 0rpx 16rpx;
  32 + background-color: #F8F8F8;
  33 +}
  34 +.searchIpt {
  35 + height: 64rpx;
  36 + width: 100%;
  37 + padding: 16rpx;
  38 + font-size: 28rpx;
  39 + -webkit-box-sizing: border-box;
  40 + box-sizing: border-box;
  41 +}
  42 +
  43 +
  44 +
... ...
unpackage/dist/dev/mp-weixin/pages/user/user.js
... ... @@ -0,0 +1,186 @@
  1 +(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/user/user"],{
  2 +
  3 +/***/ 31:
  4 +/*!**************************************************************************************!*\
  5 + !*** C:/Users/Administrator/Desktop/gulu-vue/main.js?{"page":"pages%2Fuser%2Fuser"} ***!
  6 + \**************************************************************************************/
  7 +/*! no static exports found */
  8 +/***/ (function(module, exports, __webpack_require__) {
  9 +
  10 +"use strict";
  11 +/* WEBPACK VAR INJECTION */(function(createPage) {__webpack_require__(/*! uni-pages */ 4);__webpack_require__(/*! @dcloudio/uni-stat */ 5);
  12 +var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 2));
  13 +var _user = _interopRequireDefault(__webpack_require__(/*! ./pages/user/user.vue */ 32));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}
  14 +createPage(_user.default);
  15 +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["createPage"]))
  16 +
  17 +/***/ }),
  18 +
  19 +/***/ 32:
  20 +/*!*******************************************************************!*\
  21 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue ***!
  22 + \*******************************************************************/
  23 +/*! no static exports found */
  24 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  25 +
  26 +"use strict";
  27 +__webpack_require__.r(__webpack_exports__);
  28 +/* harmony import */ var _user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./user.vue?vue&type=template&id=14649eca& */ 33);
  29 +/* harmony import */ var _user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./user.vue?vue&type=script&lang=js& */ 35);
  30 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  31 +/* harmony import */ var _user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./user.vue?vue&type=style&index=0&lang=css& */ 37);
  32 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 14);
  33 +
  34 +var renderjs
  35 +
  36 +
  37 +
  38 +
  39 +
  40 +/* normalize component */
  41 +
  42 +var component = Object(_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
  43 + _user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  44 + _user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["render"],
  45 + _user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  46 + false,
  47 + null,
  48 + null,
  49 + null,
  50 + false,
  51 + _user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["components"],
  52 + renderjs
  53 +)
  54 +
  55 +component.options.__file = "C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue"
  56 +/* harmony default export */ __webpack_exports__["default"] = (component.exports);
  57 +
  58 +/***/ }),
  59 +
  60 +/***/ 33:
  61 +/*!**************************************************************************************************!*\
  62 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?vue&type=template&id=14649eca& ***!
  63 + \**************************************************************************************************/
  64 +/*! exports provided: render, staticRenderFns, recyclableRender, components */
  65 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  66 +
  67 +"use strict";
  68 +__webpack_require__.r(__webpack_exports__);
  69 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./user.vue?vue&type=template&id=14649eca& */ 34);
  70 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  71 +
  72 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  73 +
  74 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  75 +
  76 +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_template_id_14649eca___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  77 +
  78 +
  79 +
  80 +/***/ }),
  81 +
  82 +/***/ 34:
  83 +/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  84 + !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?vue&type=template&id=14649eca& ***!
  85 + \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  86 +/*! exports provided: render, staticRenderFns, recyclableRender, components */
  87 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  88 +
  89 +"use strict";
  90 +__webpack_require__.r(__webpack_exports__);
  91 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
  92 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
  93 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
  94 +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
  95 +var components
  96 +var render = function() {
  97 + var _vm = this
  98 + var _h = _vm.$createElement
  99 + var _c = _vm._self._c || _h
  100 +}
  101 +var recyclableRender = false
  102 +var staticRenderFns = []
  103 +render._withStripped = true
  104 +
  105 +
  106 +
  107 +/***/ }),
  108 +
  109 +/***/ 35:
  110 +/*!********************************************************************************************!*\
  111 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?vue&type=script&lang=js& ***!
  112 + \********************************************************************************************/
  113 +/*! no static exports found */
  114 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  115 +
  116 +"use strict";
  117 +__webpack_require__.r(__webpack_exports__);
  118 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./user.vue?vue&type=script&lang=js& */ 36);
  119 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  120 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  121 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  122 +
  123 +/***/ }),
  124 +
  125 +/***/ 36:
  126 +/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  127 + !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?vue&type=script&lang=js& ***!
  128 + \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  129 +/*! no static exports found */
  130 +/***/ (function(module, exports, __webpack_require__) {
  131 +
  132 +"use strict";
  133 +Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; //
  134 +//
  135 +//
  136 +//
  137 +//
  138 +//
  139 +//
  140 +//
  141 +//
  142 +var _default =
  143 +{
  144 + data: function data() {
  145 + return {
  146 + title: 'Hello' };
  147 +
  148 + },
  149 + onLoad: function onLoad() {
  150 +
  151 + },
  152 + methods: {} };exports.default = _default;
  153 +
  154 +/***/ }),
  155 +
  156 +/***/ 37:
  157 +/*!****************************************************************************************************!*\
  158 + !*** C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?vue&type=style&index=0&lang=css& ***!
  159 + \****************************************************************************************************/
  160 +/*! no static exports found */
  161 +/***/ (function(module, __webpack_exports__, __webpack_require__) {
  162 +
  163 +"use strict";
  164 +__webpack_require__.r(__webpack_exports__);
  165 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./user.vue?vue&type=style&index=0&lang=css& */ 38);
  166 +/* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  167 +/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  168 + /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_user_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
  169 +
  170 +/***/ }),
  171 +
  172 +/***/ 38:
  173 +/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  174 + !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!C:/Users/Administrator/Desktop/gulu-vue/pages/user/user.vue?vue&type=style&index=0&lang=css& ***!
  175 + \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  176 +/*! no static exports found */
  177 +/***/ (function(module, exports, __webpack_require__) {
  178 +
  179 +// extracted by mini-css-extract-plugin
  180 + if(false) { var cssReload; }
  181 +
  182 +
  183 +/***/ })
  184 +
  185 +},[[31,"common/runtime","common/vendor"]]]);
  186 +//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/user/user.js.map
0 187 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/user/user.json
... ... @@ -0,0 +1,4 @@
  1 +{
  2 + "navigationBarTitleText": "我的",
  3 + "usingComponents": {}
  4 +}
0 5 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/user/user.wxml
... ... @@ -0,0 +1 @@
  1 +<view class="content"><image class="logo" src="/static/logo.png"></image><view class="text-area"><text class="title">{{title}}</text></view></view>
0 2 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/pages/user/user.wxss
... ... @@ -0,0 +1,37 @@
  1 +
  2 +.content {
  3 + display: -webkit-box;
  4 + display: -webkit-flex;
  5 + display: flex;
  6 + -webkit-box-orient: vertical;
  7 + -webkit-box-direction: normal;
  8 + -webkit-flex-direction: column;
  9 + flex-direction: column;
  10 + -webkit-box-align: center;
  11 + -webkit-align-items: center;
  12 + align-items: center;
  13 + -webkit-box-pack: center;
  14 + -webkit-justify-content: center;
  15 + justify-content: center;
  16 +}
  17 +.logo {
  18 + height: 200rpx;
  19 + width: 200rpx;
  20 + margin-top: 200rpx;
  21 + margin-left: auto;
  22 + margin-right: auto;
  23 + margin-bottom: 50rpx;
  24 +}
  25 +.text-area {
  26 + display: -webkit-box;
  27 + display: -webkit-flex;
  28 + display: flex;
  29 + -webkit-box-pack: center;
  30 + -webkit-justify-content: center;
  31 + justify-content: center;
  32 +}
  33 +.title {
  34 + font-size: 36rpx;
  35 + color: #8f8f94;
  36 +}
  37 +
... ...
unpackage/dist/dev/mp-weixin/project.config.json
... ... @@ -0,0 +1,33 @@
  1 +{
  2 + "description": "项目配置文件。",
  3 + "packOptions": {
  4 + "ignore": []
  5 + },
  6 + "setting": {
  7 + "urlCheck": false
  8 + },
  9 + "compileType": "miniprogram",
  10 + "libVersion": "2.9.2",
  11 + "appid": "touristappid",
  12 + "projectname": "gulu-vue",
  13 + "simulatorType": "wechat",
  14 + "simulatorPluginLibVersion": {},
  15 + "condition": {
  16 + "search": {
  17 + "current": -1,
  18 + "list": []
  19 + },
  20 + "conversation": {
  21 + "current": -1,
  22 + "list": []
  23 + },
  24 + "game": {
  25 + "current": -1,
  26 + "list": []
  27 + },
  28 + "miniprogram": {
  29 + "current": -1,
  30 + "list": []
  31 + }
  32 + }
  33 +}
0 34 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/sitemap.json
... ... @@ -0,0 +1,7 @@
  1 +{
  2 + "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
  3 + "rules": [{
  4 + "action": "allow",
  5 + "page": "*"
  6 + }]
  7 +}
0 8 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/sitemap7.json
... ... @@ -0,0 +1,7 @@
  1 +{
  2 + "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
  3 + "rules": [{
  4 + "action": "allow",
  5 + "page": "*"
  6 + }]
  7 +}
0 8 \ No newline at end of file
... ...
unpackage/dist/dev/mp-weixin/static/logo.png

3.93 KB

unpackage/dist/dev/mp-weixin/static/tab-cart-current.png

2.89 KB

unpackage/dist/dev/mp-weixin/static/tab-cart.png

2.85 KB

unpackage/dist/dev/mp-weixin/static/tab-home-current.png

3.97 KB

unpackage/dist/dev/mp-weixin/static/tab-home.png

3.87 KB

unpackage/dist/dev/mp-weixin/static/tab-my-current.png

1.31 KB

unpackage/dist/dev/mp-weixin/static/tab-my.png

2.89 KB