vue2-client 1.2.89 → 1.2.93-test

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/.env +15 -15
  2. package/.eslintrc.js +82 -82
  3. package/CHANGELOG.md +17 -0
  4. package/package.json +16 -19
  5. package/src/base-client/all.js +66 -64
  6. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +113 -113
  7. package/src/base-client/components/common/CitySelect/CitySelect.vue +244 -244
  8. package/src/base-client/components/common/CitySelect/index.js +3 -3
  9. package/src/base-client/components/common/CitySelect/index.md +109 -109
  10. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +547 -539
  11. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +310 -310
  12. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +221 -0
  13. package/src/base-client/components/common/PersonSetting/index.js +3 -0
  14. package/src/base-client/components/common/Upload/index.js +3 -3
  15. package/src/base-client/components/common/XAddForm/XAddForm.vue +345 -345
  16. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +322 -322
  17. package/src/base-client/components/common/XCard/XCard.vue +10 -5
  18. package/src/base-client/components/common/XForm/XForm.vue +268 -268
  19. package/src/base-client/components/common/XForm/XFormItem.vue +367 -358
  20. package/src/base-client/components/common/XFormTable/XFormTable.vue +508 -489
  21. package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +232 -232
  22. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsCount.vue +678 -678
  23. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +57 -57
  24. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +131 -131
  25. package/src/base-client/components/iot/DeviceTypeDetailsView/DeviceTypeDetailsView.vue +300 -300
  26. package/src/base-client/components/iot/WebmeterAnalysisView/WebmeterAnalysisView.vue +274 -84
  27. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  28. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  29. package/src/config/CreateQueryConfig.js +304 -301
  30. package/src/pages/CreateQueryPage.vue +1 -0
  31. package/src/pages/resourceManage/orgListManage.vue +98 -98
  32. package/src/router/async/config.async.js +26 -26
  33. package/src/router/async/router.map.js +60 -60
  34. package/src/router/index.js +27 -27
  35. package/src/services/api/WebmeterAnalysisViewApi.js +5 -1
  36. package/src/services/api/common.js +58 -56
  37. package/src/services/api/index.js +39 -39
  38. package/src/services/api/iot/DeviceDetailsView/DeviceDetailsCountApi.js +18 -18
  39. package/src/services/api/manage.js +16 -16
  40. package/src/services/api/restTools.js +24 -24
  41. package/src/theme/default/style.less +47 -47
  42. package/src/utils/util.js +8 -0
  43. package/vue.config.js +163 -153
@@ -1,18 +1,18 @@
1
- const DeviceDetailsCountApi = {
2
- // 获取设备使用天数
3
- getDeviceUsedDaySum: '/webmeterapi/getDeviceUsedDaySum',
4
- // 获取设备累计上报次数和近七天上报情况
5
- getDeviceUploadTimesCount: '/webmeterapi/getDeviceUploadTimesCount',
6
- // 获取设备累计失联次数和近三个月失联情况
7
- getDeviceLostContactCount: '/webmeterapi/getDeviceLostContactCount',
8
- // 获取设备指令下发成功率
9
- getInstructRateOfSuccess: '/webmeterapi/getInstructRateOfSuccess',
10
- // 获取设备上报情况
11
- getDeviceUploadCountData: '/webmeterapi/getDeviceUploadCountData',
12
- // 获取设备失联情况
13
- getDeviceLostContactCountData: '/webmeterapi/getDeviceLostContactCountData',
14
- // 获取设备失联排行榜
15
- getDeviceLostContactRankData: '/webmeterapi/getDeviceLostContactRankData'
16
- }
17
-
18
- export { DeviceDetailsCountApi }
1
+ const DeviceDetailsCountApi = {
2
+ // 获取设备使用天数
3
+ getDeviceUsedDaySum: '/webmeterapi/getDeviceUsedDaySum',
4
+ // 获取设备累计上报次数和近七天上报情况
5
+ getDeviceUploadTimesCount: '/webmeterapi/getDeviceUploadTimesCount',
6
+ // 获取设备累计失联次数和近三个月失联情况
7
+ getDeviceLostContactCount: '/webmeterapi/getDeviceLostContactCount',
8
+ // 获取设备指令下发成功率
9
+ getInstructRateOfSuccess: '/webmeterapi/getInstructRateOfSuccess',
10
+ // 获取设备上报情况
11
+ getDeviceUploadCountData: '/webmeterapi/getDeviceUploadCountData',
12
+ // 获取设备失联情况
13
+ getDeviceLostContactCountData: '/webmeterapi/getDeviceLostContactCountData',
14
+ // 获取设备失联排行榜
15
+ getDeviceLostContactRankData: '/webmeterapi/getDeviceLostContactRankData'
16
+ }
17
+
18
+ export { DeviceDetailsCountApi }
@@ -1,16 +1,16 @@
1
- const manageApi = {
2
- // 查询:获取燃气公司列表
3
- orgList: '/webmeterapi/foreignaidGetOrgList',
4
- // 查询:获取客户列表
5
- customerList: '/webmeterapi/foreignaidGetCustomerList',
6
- // 查询:检查链接有效性
7
- checkUrlWork: '/webmeterapi/foreignaidCheckUrl',
8
- // 操作:客户数据
9
- doCustomerInfo: '/webmeterapi/foreignaidDoCustomerInfo',
10
- // 查询:获取字典键列表
11
- getDictionaryValue: '/webmeterapi/getDictionaryValue',
12
- // 查询:获取省市区街道三级分类
13
- getDivisionsOhChina: '/webmeterapi/getDivisionsOhChina'
14
- }
15
-
16
- export { manageApi }
1
+ const manageApi = {
2
+ // 查询:获取燃气公司列表
3
+ orgList: '/webmeterapi/foreignaidGetOrgList',
4
+ // 查询:获取客户列表
5
+ customerList: '/webmeterapi/foreignaidGetCustomerList',
6
+ // 查询:检查链接有效性
7
+ checkUrlWork: '/webmeterapi/foreignaidCheckUrl',
8
+ // 操作:客户数据
9
+ doCustomerInfo: '/webmeterapi/foreignaidDoCustomerInfo',
10
+ // 查询:获取字典键列表
11
+ getDictionaryValue: '/webmeterapi/getDictionaryValue',
12
+ // 查询:获取省市区街道三级分类
13
+ getDivisionsOhChina: '/webmeterapi/getDivisionsOhChina'
14
+ }
15
+
16
+ export { manageApi }
@@ -1,24 +1,24 @@
1
- import { METHOD, request } from '@vue2-client/utils/request'
2
-
3
- /**
4
- * GET请求
5
- * @param url 请求地址
6
- * @param parameter 路径参数
7
- * @returns {Promise<AxiosResponse<T>>}
8
- */
9
- function get (url, parameter) {
10
- return request(url, METHOD.GET, parameter)
11
- }
12
-
13
- /**
14
- * POST请求
15
- * @param url 请求地址
16
- * @param parameter 请求参数
17
- * @param config
18
- * @returns {Promise<AxiosResponse<T>>}
19
- */
20
- function post (url, parameter, config = {}) {
21
- return request(url, METHOD.POST, parameter, config)
22
- }
23
-
24
- export { get, post }
1
+ import { METHOD, request } from '@vue2-client/utils/request'
2
+
3
+ /**
4
+ * GET请求
5
+ * @param url 请求地址
6
+ * @param parameter 路径参数
7
+ * @returns {Promise<AxiosResponse<T>>}
8
+ */
9
+ function get (url, parameter) {
10
+ return request(url, METHOD.GET, parameter)
11
+ }
12
+
13
+ /**
14
+ * POST请求
15
+ * @param url 请求地址
16
+ * @param parameter 请求参数
17
+ * @param config
18
+ * @returns {Promise<AxiosResponse<T>>}
19
+ */
20
+ function post (url, parameter, config = {}) {
21
+ return request(url, METHOD.POST, parameter, config)
22
+ }
23
+
24
+ export { get, post }
@@ -1,47 +1,47 @@
1
- .week-mode{
2
- overflow: hidden;
3
- filter: invert(80%);
4
- }
5
- .beauty-scroll{
6
- scrollbar-color: @primary-color @primary-2;
7
- scrollbar-width: thin;
8
- -ms-overflow-style:none;
9
- position: relative;
10
- &::-webkit-scrollbar{
11
- width: 3px;
12
- height: 1px;
13
- }
14
- &::-webkit-scrollbar-thumb {
15
- border-radius: 3px;
16
- background: @primary-color;
17
- }
18
- &::-webkit-scrollbar-track {
19
- -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
20
- border-radius: 3px;
21
- background: @primary-3;
22
- }
23
- }
24
- .split-right{
25
- &:not(:last-child) {
26
- border-right: 1px solid rgba(98, 98, 98, 0.2);
27
- }
28
- }
29
- .disabled{
30
- cursor: not-allowed;
31
- color: @disabled-color;
32
- pointer-events: none;
33
- }
34
-
35
- ::-webkit-scrollbar{
36
- width: 5px;
37
- height: 5px;
38
- }
39
- ::-webkit-scrollbar-thumb {
40
- border-radius: 3px;
41
- background: @primary-3;
42
- }
43
- ::-webkit-scrollbar-track {
44
- -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
45
- border-radius: 3px;
46
- background: @primary-1;
47
- }
1
+ .week-mode{
2
+ overflow: hidden;
3
+ filter: invert(80%);
4
+ }
5
+ .beauty-scroll{
6
+ scrollbar-color: @primary-color @primary-2;
7
+ scrollbar-width: thin;
8
+ -ms-overflow-style:none;
9
+ position: relative;
10
+ &::-webkit-scrollbar{
11
+ width: 3px;
12
+ height: 1px;
13
+ }
14
+ &::-webkit-scrollbar-thumb {
15
+ border-radius: 3px;
16
+ background: @primary-color;
17
+ }
18
+ &::-webkit-scrollbar-track {
19
+ -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
20
+ border-radius: 3px;
21
+ background: @primary-3;
22
+ }
23
+ }
24
+ .split-right{
25
+ &:not(:last-child) {
26
+ border-right: 1px solid rgba(98, 98, 98, 0.2);
27
+ }
28
+ }
29
+ .disabled{
30
+ cursor: not-allowed;
31
+ color: @disabled-color;
32
+ pointer-events: none;
33
+ }
34
+
35
+ ::-webkit-scrollbar{
36
+ width: 5px;
37
+ height: 5px;
38
+ }
39
+ ::-webkit-scrollbar-thumb {
40
+ border-radius: 3px;
41
+ background: @primary-3;
42
+ }
43
+ ::-webkit-scrollbar-track {
44
+ -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
45
+ border-radius: 3px;
46
+ background: @primary-1;
47
+ }
package/src/utils/util.js CHANGED
@@ -73,6 +73,14 @@ export function formatDate (dateStr, fmt) {
73
73
  return fmt
74
74
  }
75
75
 
76
+ export function uuid () {
77
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
78
+ const r = Math.random() * 16 | 0
79
+ const v = c === 'x' ? r : (r & 0x3 | 0x8)
80
+ return v.toString(16)
81
+ })
82
+ }
83
+
76
84
  export function timeCompare (date1, date2) {
77
85
  const date11 = new Date(date1)
78
86
  const date22 = new Date(date2)
package/vue.config.js CHANGED
@@ -1,153 +1,163 @@
1
- const path = require('path')
2
- const webpack = require('webpack')
3
- const ThemeColorReplacer = require('webpack-theme-color-replacer')
4
- const { getThemeColors, modifyVars } = require('./src/utils/themeUtil')
5
- const { resolveCss } = require('./src/utils/theme-color-replacer-extend')
6
- const CompressionWebpackPlugin = require('compression-webpack-plugin')
7
-
8
- const productionGzipExtensions = ['js', 'css']
9
- const isProd = process.env.NODE_ENV === 'production'
10
-
11
- // const assetsCDN = {
12
- // // webpack build externals
13
- // externals: {
14
- // vue: 'Vue',
15
- // 'vue-router': 'VueRouter',
16
- // vuex: 'Vuex',
17
- // axios: 'axios',
18
- // nprogress: 'NProgress',
19
- // clipboard: 'ClipboardJS',
20
- // '@antv/data-set': 'DataSet',
21
- // 'js-cookie': 'Cookies'
22
- // },
23
- // css: [
24
- // ],
25
- // js: [
26
- // '//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js',
27
- // '//cdn.jsdelivr.net/npm/vue-router@3.3.4/dist/vue-router.min.js',
28
- // '//cdn.jsdelivr.net/npm/vuex@3.4.0/dist/vuex.min.js',
29
- // '//cdn.jsdelivr.net/npm/axios@0.19.2/dist/axios.min.js',
30
- // '//cdn.jsdelivr.net/npm/nprogress@0.2.0/nprogress.min.js',
31
- // '//cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js',
32
- // '//cdn.jsdelivr.net/npm/@antv/data-set@0.11.4/build/data-set.min.js',
33
- // '//cdn.jsdelivr.net/npm/js-cookie@2.2.1/src/js.cookie.min.js'
34
- // ]
35
- // }
36
-
37
- const server = 'http://121.36.106.17:8400'
38
- const local = 'http://localhost:8445/webmeter'
39
- // const local = 'http://123.60.214.109:8405/webmeter'
40
-
41
- module.exports = {
42
- devServer: {
43
- // development server port 8000
44
- port: 8001,
45
- // If you want to turn on the proxy, please remove the mockjs /src/main.jsL11
46
- proxy: {
47
- '/rs': {
48
- target: server,
49
- ws: false,
50
- changeOrigin: true
51
- },
52
- '/image': {
53
- target: server,
54
- ws: false,
55
- changeOrigin: true
56
- },
57
- '/webapps': {
58
- target: server,
59
- ws: false,
60
- changeOrigin: true
61
- },
62
- '/webmeterapi': {
63
- pathRewrite: { '^/webmeterapi': '/rs/logic' },
64
- target: local,
65
- changeOrigin: true
66
- },
67
- '/webmeteruploadapi': {
68
- pathRewrite: { '^/webmeteruploadapi': '/rs/file' },
69
- target: local,
70
- changeOrigin: true
71
- },
72
- '/webmeterresourceapi': {
73
- pathRewrite: { '^/webmeterresourceapi': '/rs/resource' },
74
- target: local,
75
- changeOrigin: true
76
- },
77
- '/resource': {
78
- pathRewrite: { '^/resource': '/' },
79
- target: 'http://127.0.0.1:4789',
80
- changeOrigin: true
81
- }
82
- }
83
- },
84
- pluginOptions: {
85
- 'style-resources-loader': {
86
- preProcessor: 'less',
87
- patterns: [path.resolve(__dirname, './src/theme/theme.less')]
88
- }
89
- },
90
- configureWebpack: config => {
91
- config.entry.app = ['babel-polyfill', 'whatwg-fetch', './src/main.js']
92
- config.performance = {
93
- hints: false
94
- }
95
- config.plugins.push(
96
- new ThemeColorReplacer({
97
- fileName: 'css/theme-colors-[contenthash:8].css',
98
- matchColors: getThemeColors(),
99
- injectCss: true,
100
- resolveCss
101
- })
102
- )
103
- // Ignore all locale files of moment.js
104
- config.plugins.push(new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/))
105
- // 生产环境下将资源压缩成gzip格式
106
- if (isProd) {
107
- // add `CompressionWebpack` plugin to webpack plugins
108
- config.plugins.push(new CompressionWebpackPlugin({
109
- algorithm: 'gzip',
110
- test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
111
- threshold: 10240,
112
- minRatio: 0.8
113
- }))
114
- }
115
- // if prod, add externals
116
- // if (isProd) {
117
- // config.externals = assetsCDN.externals
118
- // }
119
- },
120
- chainWebpack: config => {
121
- // 生产环境下关闭css压缩的 colormin 项,因为此项优化与主题色替换功能冲突
122
- if (isProd) {
123
- config.plugin('optimize-css')
124
- .tap(args => {
125
- args[0].cssnanoOptions.preset[1].colormin = false
126
- return args
127
- })
128
- }
129
- // 生产环境下使用CDN
130
- // if (isProd) {
131
- // config.plugin('html')
132
- // .tap(args => {
133
- // args[0].cdn = assetsCDN
134
- // return args
135
- // })
136
- // }
137
- config.resolve.alias.set('@vue2-client', path.resolve(__dirname, 'src'))
138
- },
139
- css: {
140
- loaderOptions: {
141
- less: {
142
- lessOptions: {
143
- modifyVars: modifyVars(),
144
- javascriptEnabled: true
145
- }
146
- }
147
- }
148
- },
149
- publicPath: process.env.VUE_APP_PUBLIC_PATH,
150
- outputDir: 'dist',
151
- assetsDir: 'static',
152
- productionSourceMap: false
153
- }
1
+ const path = require('path')
2
+ const webpack = require('webpack')
3
+ const ThemeColorReplacer = require('webpack-theme-color-replacer')
4
+ const { getThemeColors, modifyVars } = require('./src/utils/themeUtil')
5
+ const { resolveCss } = require('./src/utils/theme-color-replacer-extend')
6
+ const CompressionWebpackPlugin = require('compression-webpack-plugin')
7
+
8
+ const productionGzipExtensions = ['js', 'css']
9
+ const isProd = process.env.NODE_ENV === 'production'
10
+
11
+ // const assetsCDN = {
12
+ // // webpack build externals
13
+ // externals: {
14
+ // vue: 'Vue',
15
+ // 'vue-router': 'VueRouter',
16
+ // vuex: 'Vuex',
17
+ // axios: 'axios',
18
+ // nprogress: 'NProgress',
19
+ // clipboard: 'ClipboardJS',
20
+ // '@antv/data-set': 'DataSet',
21
+ // 'js-cookie': 'Cookies'
22
+ // },
23
+ // css: [
24
+ // ],
25
+ // js: [
26
+ // '//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js',
27
+ // '//cdn.jsdelivr.net/npm/vue-router@3.3.4/dist/vue-router.min.js',
28
+ // '//cdn.jsdelivr.net/npm/vuex@3.4.0/dist/vuex.min.js',
29
+ // '//cdn.jsdelivr.net/npm/axios@0.19.2/dist/axios.min.js',
30
+ // '//cdn.jsdelivr.net/npm/nprogress@0.2.0/nprogress.min.js',
31
+ // '//cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js',
32
+ // '//cdn.jsdelivr.net/npm/@antv/data-set@0.11.4/build/data-set.min.js',
33
+ // '//cdn.jsdelivr.net/npm/js-cookie@2.2.1/src/js.cookie.min.js'
34
+ // ]
35
+ // }
36
+
37
+ const server = 'http://121.36.106.17:8400'
38
+ const local = 'http://localhost:8445/webmeter'
39
+ // const local = 'http://123.60.214.109:8405/webmeter'
40
+
41
+ module.exports = {
42
+ devServer: {
43
+ // development server port 8000
44
+ port: 8001,
45
+ // If you want to turn on the proxy, please remove the mockjs /src/main.jsL11
46
+ proxy: {
47
+ '/rs': {
48
+ target: server,
49
+ ws: false,
50
+ changeOrigin: true
51
+ },
52
+ '/image': {
53
+ target: server,
54
+ ws: false,
55
+ changeOrigin: true
56
+ },
57
+ '/webapps': {
58
+ target: server,
59
+ ws: false,
60
+ changeOrigin: true
61
+ },
62
+ '/webmeterapi/foreignaidUseGasSumCountData': {
63
+ // pathRewrite: { '^/webmeterapi': '/rs/logic' },
64
+ target: 'http://61.134.55.234:8405/',
65
+ changeOrigin: true
66
+ },
67
+ '/webmeterapi/getEmpTree': {
68
+ // pathRewrite: { '^/webmeterapi': '/rs/logic' },
69
+ target: 'http://123.60.214.109:8406/',
70
+ changeOrigin: true
71
+ },
72
+ '/webmeterapi': {
73
+ pathRewrite: { '^/webmeterapi': '/rs/logic' },
74
+ target: local,
75
+ changeOrigin: true
76
+ },
77
+ '/webmeteruploadapi': {
78
+ pathRewrite: { '^/webmeteruploadapi': '/rs/file' },
79
+ target: local,
80
+ changeOrigin: true
81
+ },
82
+ '/webmeterresourceapi': {
83
+ pathRewrite: { '^/webmeterresourceapi': '/rs/resource' },
84
+ target: local,
85
+ changeOrigin: true
86
+ },
87
+ '/resource': {
88
+ pathRewrite: { '^/resource': '/' },
89
+ target: 'http://127.0.0.1:4789',
90
+ changeOrigin: true
91
+ }
92
+ }
93
+ },
94
+ pluginOptions: {
95
+ 'style-resources-loader': {
96
+ preProcessor: 'less',
97
+ patterns: [path.resolve(__dirname, './src/theme/theme.less')]
98
+ }
99
+ },
100
+ configureWebpack: config => {
101
+ config.entry.app = ['babel-polyfill', 'whatwg-fetch', './src/main.js']
102
+ config.performance = {
103
+ hints: false
104
+ }
105
+ config.plugins.push(
106
+ new ThemeColorReplacer({
107
+ fileName: 'css/theme-colors-[contenthash:8].css',
108
+ matchColors: getThemeColors(),
109
+ injectCss: true,
110
+ resolveCss
111
+ })
112
+ )
113
+ // Ignore all locale files of moment.js
114
+ config.plugins.push(new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/))
115
+ // 生产环境下将资源压缩成gzip格式
116
+ if (isProd) {
117
+ // add `CompressionWebpack` plugin to webpack plugins
118
+ config.plugins.push(new CompressionWebpackPlugin({
119
+ algorithm: 'gzip',
120
+ test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
121
+ threshold: 10240,
122
+ minRatio: 0.8
123
+ }))
124
+ }
125
+ // if prod, add externals
126
+ // if (isProd) {
127
+ // config.externals = assetsCDN.externals
128
+ // }
129
+ },
130
+ chainWebpack: config => {
131
+ // 生产环境下关闭css压缩的 colormin 项,因为此项优化与主题色替换功能冲突
132
+ if (isProd) {
133
+ config.plugin('optimize-css')
134
+ .tap(args => {
135
+ args[0].cssnanoOptions.preset[1].colormin = false
136
+ return args
137
+ })
138
+ }
139
+ // 生产环境下使用CDN
140
+ // if (isProd) {
141
+ // config.plugin('html')
142
+ // .tap(args => {
143
+ // args[0].cdn = assetsCDN
144
+ // return args
145
+ // })
146
+ // }
147
+ config.resolve.alias.set('@vue2-client', path.resolve(__dirname, 'src'))
148
+ },
149
+ css: {
150
+ loaderOptions: {
151
+ less: {
152
+ lessOptions: {
153
+ modifyVars: modifyVars(),
154
+ javascriptEnabled: true
155
+ }
156
+ }
157
+ }
158
+ },
159
+ publicPath: process.env.VUE_APP_PUBLIC_PATH,
160
+ outputDir: 'dist',
161
+ assetsDir: 'static',
162
+ productionSourceMap: false
163
+ }