sale-client 3.5.83 → 3.5.84

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.
@@ -1,2 +1,2 @@
1
- #Sat Oct 29 10:26:43 CST 2022
2
- gradle.version=7.1
1
+ #Thu Nov 10 15:53:56 CST 2022
2
+ gradle.version=5.2.1
@@ -1,167 +1,167 @@
1
- var express = require('express')
2
- var webpack = require('webpack')
3
- var config = require('./webpack.dev.conf')
4
- var proxyMiddleware = require('http-proxy-middleware')
5
- // var httpProxy = require('http-proxy')
6
-
7
- var app = express()
8
- var compiler = webpack(config)
9
- // var proxy = httpProxy.createProxyServer()
10
-
11
- // Define HTTP proxies to your custom API backend
12
- // https://github.com/chimurai/http-proxy-middleware
13
- var bendi = 'http://127.0.0.1:8080', bendi1 = 'http://121.36.106.17:8400/'
14
- // 公司测试服务
15
- var fuwu = 'http://127.0.0.1:5001'
16
- // var fuwu = 'http://121.36.106.17:8400/'
17
- // 铜川正式
18
- // var fuwu = 'http://61.134.55.234:9999/'
19
- // 铜川测试
20
- // var fuwu = 'http://61.134.55.234:9999/'
21
- // var fuwu = 'http://60.222.250.39:8300/'
22
- // 韶关
23
- // var fuwu = 'http://119.146.1.106:8300/'
24
- // 巩义测试服务
25
- // var fuwu = 'http://192.168.0.227:8400'
26
- // 燎原测试服务
27
- // var fuwu = 'http://121.41.19.238:8400 '
28
- // var fuwu = 'http://121.41.19.238:9001/'
29
-
30
- // var fuwu = 'http://139.214.92.34:8301/'
31
-
32
- var proxyTable = {
33
- '/rs/logic/saleExport': {
34
- target: fuwu
35
- },
36
- '/rs/logic/saleGetExportProgress': {
37
- target: fuwu
38
- },
39
- '/rs/logic/getWarningMsg': {
40
- target: fuwu
41
- },
42
- '/rs/file': {
43
- target: fuwu
44
- },
45
- '/files': {
46
- target: fuwu
47
- },
48
- // 查找资源服务数据
49
- '/rs/search': {
50
- target: fuwu
51
- },
52
- // 查找资源服务数据
53
- '/rs/logic/getLogin': {
54
- target: fuwu
55
- },
56
- // 查找资源服务数据
57
- '/rs/logic/getInitData': {
58
- target: fuwu
59
- },
60
- '/rs/logic/getSaleInitData': {
61
- target: fuwu
62
- },
63
- '/invoice': {
64
- target: fuwu
65
- },
66
- // 用户登录服务地址
67
- '/rs/user': {
68
- target: fuwu
69
- },
70
- '/rs/path/getParams': {
71
- target: fuwu
72
- },
73
- '/rs/data': {
74
- target: fuwu
75
- },
76
- '/rs/license': {
77
- target: fuwu
78
- },
79
- '/rs/db': {
80
- target: fuwu
81
- },
82
- '/excel': {
83
- target: fuwu
84
- },
85
- '/rs/config': {
86
- target: fuwu
87
- },
88
- '/rs/sql/getLicenseById': {
89
- target: fuwu
90
- },
91
- '/rs/sql/manage_getarealist': {
92
- target: fuwu
93
- },
94
- '/rs/sql/manage_getstreetlist': {
95
- target: fuwu
96
- },
97
- '/rs/report': {
98
- target: 'http://121.36.106.17:8400/'
99
- },
100
- '/rs/vue': {
101
- target: fuwu
102
- },
103
- '/webmeter': {
104
- target: 'http://192.168.50.4:8450'
105
- },
106
- '/rs': {
107
- // target: 'http://192.168.30.63:8081/'
108
- // target: 'http://121.36.106.17:8400/'
109
- target: 'http://127.0.0.1:8080'
110
- }
111
- }
112
-
113
- var devMiddleware = require('webpack-dev-middleware')(compiler, {
114
- publicPath: config.output.publicPath,
115
- stats: {
116
- colors: true,
117
- chunks: false
118
- }
119
- })
120
-
121
- var hotMiddleware = require('webpack-hot-middleware')(compiler)
122
- // force page reload when html-webpack-plugin template changes
123
- compiler.plugin('compilation', function (compilation) {
124
- compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
125
- hotMiddleware.publish({action: 'reload'})
126
- cb()
127
- })
128
- })
129
-
130
- // proxy api requests
131
- Object.keys(proxyTable).forEach(function (context) {
132
- var options = proxyTable[context]
133
- if (typeof options === 'string') {
134
- options = {target: options}
135
- }
136
- app.use(proxyMiddleware(context, options))
137
- })
138
-
139
- // handle fallback for HTML5 history API
140
- app.use(require('connect-history-api-fallback')())
141
- // app.use(function (req, res, next) {
142
- // res.header('Access-Control-Allow-Origin', '*')
143
- // res.header('Access-Control-Allow-Headers', 'X-Requested-With')
144
- // res.header('Access-Control-Allow-Methods', 'PUT, POST, GET,DELETE, OPTIONS')
145
- // res.header('X-Powered-By', '3,2,1')
146
- // res.header('Access-Control-Allow-Credentials', 'true')
147
- // res.header('Content-Type', 'application/json;charset=utf-8')
148
- // next()
149
- // })
150
-
151
- // serve webpack bundle output
152
- app.use(devMiddleware)
153
-
154
- // enable hot-reload and state-preserving
155
- // compilation error display
156
- app.use(hotMiddleware)
157
-
158
- // serve pure static assets
159
- app.use('/static', express.static('./static'))
160
-
161
- module.exports = app.listen(8089, function (err) {
162
- if (err) {
163
- console.log(err)
164
- return
165
- }
166
- console.log('Listening at http://localhost:8089')
167
- })
1
+ var express = require('express')
2
+ var webpack = require('webpack')
3
+ var config = require('./webpack.dev.conf')
4
+ var proxyMiddleware = require('http-proxy-middleware')
5
+ // var httpProxy = require('http-proxy')
6
+
7
+ var app = express()
8
+ var compiler = webpack(config)
9
+ // var proxy = httpProxy.createProxyServer()
10
+
11
+ // Define HTTP proxies to your custom API backend
12
+ // https://github.com/chimurai/http-proxy-middleware
13
+ var bendi = 'http://127.0.0.1:8080', bendi1 = 'http://121.36.106.17:8400/'
14
+ // 公司测试服务
15
+ var fuwu = 'http://192.168.50.4:8400'
16
+ // var fuwu = 'http://121.36.106.17:8400/'
17
+ // 铜川正式
18
+ // var fuwu = 'http://61.134.55.234:9999/'
19
+ // 铜川测试
20
+ // var fuwu = 'http://61.134.55.234:9999/'
21
+ // var fuwu = 'http://60.222.250.39:8300/'
22
+ // 韶关
23
+ // var fuwu = 'http://119.146.1.106:8300/'
24
+ // 巩义测试服务
25
+ // var fuwu = 'http://192.168.0.227:8400'
26
+ // 燎原测试服务
27
+ // var fuwu = 'http://121.41.19.238:8400 '
28
+ // var fuwu = 'http://121.41.19.238:9001/'
29
+
30
+ // var fuwu = 'http://139.214.92.34:8301/'
31
+
32
+ var proxyTable = {
33
+ '/rs/logic/saleExport': {
34
+ target: fuwu
35
+ },
36
+ '/rs/logic/saleGetExportProgress': {
37
+ target: fuwu
38
+ },
39
+ '/rs/logic/getWarningMsg': {
40
+ target: 'http://localhost:8080/'
41
+ },
42
+ '/rs/file': {
43
+ target: fuwu
44
+ },
45
+ '/files': {
46
+ target: fuwu
47
+ },
48
+ // 查找资源服务数据
49
+ '/rs/search': {
50
+ target: fuwu
51
+ },
52
+ // 查找资源服务数据
53
+ '/rs/logic/getLogin': {
54
+ target: fuwu
55
+ },
56
+ // 查找资源服务数据
57
+ '/rs/logic/getInitData': {
58
+ target: fuwu
59
+ },
60
+ '/rs/logic/getSaleInitData': {
61
+ target: fuwu
62
+ },
63
+ '/invoice': {
64
+ target: fuwu
65
+ },
66
+ // 用户登录服务地址
67
+ '/rs/user': {
68
+ target: fuwu
69
+ },
70
+ '/rs/path/getParams': {
71
+ target: fuwu
72
+ },
73
+ '/rs/data': {
74
+ target: fuwu
75
+ },
76
+ '/rs/license': {
77
+ target: fuwu
78
+ },
79
+ '/rs/db': {
80
+ target: fuwu
81
+ },
82
+ '/excel': {
83
+ target: fuwu
84
+ },
85
+ '/rs/config': {
86
+ target: fuwu
87
+ },
88
+ '/rs/sql/getLicenseById': {
89
+ target: fuwu
90
+ },
91
+ '/rs/sql/manage_getarealist': {
92
+ target: fuwu
93
+ },
94
+ '/rs/sql/manage_getstreetlist': {
95
+ target: fuwu
96
+ },
97
+ '/rs/report': {
98
+ target: 'http://121.36.106.17:8400/'
99
+ },
100
+ '/rs/vue': {
101
+ target: fuwu
102
+ },
103
+ '/webmeter': {
104
+ target: 'http://192.168.50.4:8450'
105
+ },
106
+ '/rs': {
107
+ // target: 'http://192.168.30.63:8081/'
108
+ // target: 'http://121.36.106.17:8400/'
109
+ target: fuwu
110
+ }
111
+ }
112
+
113
+ var devMiddleware = require('webpack-dev-middleware')(compiler, {
114
+ publicPath: config.output.publicPath,
115
+ stats: {
116
+ colors: true,
117
+ chunks: false
118
+ }
119
+ })
120
+
121
+ var hotMiddleware = require('webpack-hot-middleware')(compiler)
122
+ // force page reload when html-webpack-plugin template changes
123
+ compiler.plugin('compilation', function (compilation) {
124
+ compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
125
+ hotMiddleware.publish({action: 'reload'})
126
+ cb()
127
+ })
128
+ })
129
+
130
+ // proxy api requests
131
+ Object.keys(proxyTable).forEach(function (context) {
132
+ var options = proxyTable[context]
133
+ if (typeof options === 'string') {
134
+ options = {target: options}
135
+ }
136
+ app.use(proxyMiddleware(context, options))
137
+ })
138
+
139
+ // handle fallback for HTML5 history API
140
+ app.use(require('connect-history-api-fallback')())
141
+ // app.use(function (req, res, next) {
142
+ // res.header('Access-Control-Allow-Origin', '*')
143
+ // res.header('Access-Control-Allow-Headers', 'X-Requested-With')
144
+ // res.header('Access-Control-Allow-Methods', 'PUT, POST, GET,DELETE, OPTIONS')
145
+ // res.header('X-Powered-By', '3,2,1')
146
+ // res.header('Access-Control-Allow-Credentials', 'true')
147
+ // res.header('Content-Type', 'application/json;charset=utf-8')
148
+ // next()
149
+ // })
150
+
151
+ // serve webpack bundle output
152
+ app.use(devMiddleware)
153
+
154
+ // enable hot-reload and state-preserving
155
+ // compilation error display
156
+ app.use(hotMiddleware)
157
+
158
+ // serve pure static assets
159
+ app.use('/static', express.static('./static'))
160
+
161
+ module.exports = app.listen(8089, function (err) {
162
+ if (err) {
163
+ console.log(err)
164
+ return
165
+ }
166
+ console.log('Listening at http://localhost:8089')
167
+ })
package/package.json CHANGED
@@ -1,118 +1,117 @@
1
- {
2
- "name": "sale-client",
3
- "version": "3.5.83",
4
- "description": "收费模块前台组件",
5
- "main": "src/index.js",
6
- "scripts": {
7
- "example": "node build/example-server.js",
8
- "dev": "node build/dev-server.js",
9
- "lint": "eslint src/**.js test/e2e/**.js test/unit/specs/** build/**.js",
10
- "unit": "karma start test/unit/karma.conf.js",
11
- "build": "rimraf lib && mkdirp lib && cross-env webpack --progress --hide-modules --config build/webpack.prod.conf.js",
12
- "e2e": "node test/e2e/runner.js",
13
- "release": "bash build/release.sh"
14
- },
15
- "repository": {
16
- "type": "git",
17
- "url": "https://gitee.com/aote/product.git"
18
- },
19
- "dependencies": {
20
- "crypto-js": "^4.1.1",
21
- "examples": "^0.1.0",
22
- "js-file-download": "0.4.12",
23
- "less-loader": "^2.2.3",
24
- "qrcodejs2": "0.0.2",
25
- "vue": "^1.0.17",
26
- "yarn": "^1.22.10"
27
- },
28
- "devDependencies": {
29
- "address-client": "3.2.29",
30
- "axios": "0.15.3",
31
- "babel-core": "^6.0.0",
32
- "babel-loader": "^6.0.0",
33
- "babel-plugin-transform-runtime": "^6.0.0",
34
- "babel-preset-es2015": "^6.0.0",
35
- "babel-preset-stage-2": "^6.0.0",
36
- "chai": "^3.5.0",
37
- "co": "^4.6.0",
38
- "compression-webpack-plugin": "1.1.2",
39
- "connect-history-api-fallback": "^1.1.0",
40
- "cross-env": "^1.0.7",
41
- "cross-spawn": "^2.1.5",
42
- "css-loader": "^0.23.0",
43
- "echarts": "^4.1.0",
44
- "eslint": "^3.19.0",
45
- "eslint-config-standard": "^10.2.1",
46
- "eslint-friendly-formatter": "^3.0.0",
47
- "eslint-loader": "^1.7.1",
48
- "eslint-plugin-html": "^3.0.0",
49
- "eslint-plugin-import": "^2.7.0",
50
- "eslint-plugin-node": "^5.2.0",
51
- "eslint-plugin-promise": "^3.4.0",
52
- "eslint-plugin-standard": "^3.0.1",
53
- "eventsource-polyfill": "^0.9.6",
54
- "express": "^4.13.3",
55
- "extract-text-webpack-plugin": "^1.0.1",
56
- "file-loader": "^0.8.4",
57
- "filemanager-webpack-plugin": "^2.0.5",
58
- "function-bind": "^1.0.2",
59
- "html-webpack-plugin": "^2.8.1",
60
- "http-proxy-middleware": "^0.11.0",
61
- "inject-loader": "^2.0.1",
62
- "isparta-loader": "^2.0.0",
63
- "jasmine-core": "^2.4.1",
64
- "jquery": "^3.3.1",
65
- "jsencrypt": "3.0.0-rc.1",
66
- "json-loader": "^0.5.4",
67
- "karma": "^1.4.1",
68
- "karma-chrome-launcher": "^2.2.0",
69
- "karma-coverage": "^1.1.1",
70
- "karma-mocha": "^1.3.0",
71
- "karma-sinon-chai": "^1.3.1",
72
- "karma-sourcemap-loader": "^0.3.7",
73
- "karma-spec-reporter": "0.0.31",
74
- "karma-webpack": "^2.0.2",
75
- "ldap-clients": "3.0.7",
76
- "less": "^2.7.3",
77
- "manage-client": "3.1.8-88",
78
- "mkdirp": "^0.5.1",
79
- "mocha": "^3.2.0",
80
- "moment": "2.24.0",
81
- "ncp": "^2.0.0",
82
- "nightwatch": "^0.8.18",
83
- "qrcodejs2": "0.0.2",
84
- "rimraf": "^2.5.0",
85
- "selenium-server": "2.52.0",
86
- "sinon": "^2.1.0",
87
- "sinon-chai": "^2.8.0",
88
- "style": "0.0.3",
89
- "style-loader": "^0.20.3",
90
- "system-clients": "3.2.25",
91
- "url-loader": "^0.5.7",
92
- "vue-client": "1.24.73",
93
- "vue-clipboard2": "0.3.1",
94
- "vue-hot-reload-api": "^1.2.0",
95
- "vue-html-loader": "^1.0.0",
96
- "vue-loader": "^8.2.1",
97
- "vue-resource": "^1.5.0",
98
- "vue-router": "^0.7.13",
99
- "vue-strap": "^1.0.9",
100
- "vue-style-loader": "^1.0.0",
101
- "vue-validator": "2.1.7",
102
- "webpack": "^1.12.2",
103
- "webpack-dev-middleware": "^1.4.0",
104
- "webpack-hot-middleware": "^2.6.0",
105
- "webpack-merge": "^0.8.3",
106
- "webpack-parallel-uglify-plugin": "^1.0.0",
107
- "weixin-js-sdk": "^1.2.0"
108
- },
109
- "keywords": [
110
- "selling-clients"
111
- ],
112
- "author": "张桥",
113
- "license": "ISC",
114
- "directories": {
115
- "example": "examples",
116
- "test": "test"
117
- }
118
- }
1
+ {
2
+ "name": "sale-client",
3
+ "version": "3.5.84",
4
+ "description": "收费模块前台组件",
5
+ "main": "src/index.js",
6
+ "scripts": {
7
+ "example": "node build/example-server.js",
8
+ "dev": "node build/dev-server.js",
9
+ "lint": "eslint src/**.js test/e2e/**.js test/unit/specs/** build/**.js",
10
+ "unit": "karma start test/unit/karma.conf.js",
11
+ "build": "rimraf lib && mkdirp lib && cross-env webpack --progress --hide-modules --config build/webpack.prod.conf.js",
12
+ "e2e": "node test/e2e/runner.js",
13
+ "release": "bash build/release.sh"
14
+ },
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "https://gitee.com/aote/product.git"
18
+ },
19
+ "dependencies": {
20
+ "examples": "^0.1.0",
21
+ "js-file-download": "0.4.12",
22
+ "less-loader": "^2.2.3",
23
+ "qrcodejs2": "0.0.2",
24
+ "vue": "^1.0.17",
25
+ "yarn": "^1.22.10"
26
+ },
27
+ "devDependencies": {
28
+ "address-client": "3.2.29",
29
+ "axios": "0.15.3",
30
+ "babel-core": "^6.0.0",
31
+ "babel-loader": "^6.0.0",
32
+ "babel-plugin-transform-runtime": "^6.0.0",
33
+ "babel-preset-es2015": "^6.0.0",
34
+ "babel-preset-stage-2": "^6.0.0",
35
+ "chai": "^3.5.0",
36
+ "co": "^4.6.0",
37
+ "compression-webpack-plugin": "1.1.2",
38
+ "connect-history-api-fallback": "^1.1.0",
39
+ "cross-env": "^1.0.7",
40
+ "cross-spawn": "^2.1.5",
41
+ "css-loader": "^0.23.0",
42
+ "echarts": "^4.1.0",
43
+ "eslint": "^3.19.0",
44
+ "eslint-config-standard": "^10.2.1",
45
+ "eslint-friendly-formatter": "^3.0.0",
46
+ "eslint-loader": "^1.7.1",
47
+ "eslint-plugin-html": "^3.0.0",
48
+ "eslint-plugin-import": "^2.7.0",
49
+ "eslint-plugin-node": "^5.2.0",
50
+ "eslint-plugin-promise": "^3.4.0",
51
+ "eslint-plugin-standard": "^3.0.1",
52
+ "eventsource-polyfill": "^0.9.6",
53
+ "express": "^4.13.3",
54
+ "extract-text-webpack-plugin": "^1.0.1",
55
+ "file-loader": "^0.8.4",
56
+ "filemanager-webpack-plugin": "^2.0.5",
57
+ "function-bind": "^1.0.2",
58
+ "html-webpack-plugin": "^2.8.1",
59
+ "http-proxy-middleware": "^0.11.0",
60
+ "inject-loader": "^2.0.1",
61
+ "isparta-loader": "^2.0.0",
62
+ "jasmine-core": "^2.4.1",
63
+ "jquery": "^3.3.1",
64
+ "jsencrypt": "3.0.0-rc.1",
65
+ "json-loader": "^0.5.4",
66
+ "karma": "^1.4.1",
67
+ "karma-chrome-launcher": "^2.2.0",
68
+ "karma-coverage": "^1.1.1",
69
+ "karma-mocha": "^1.3.0",
70
+ "karma-sinon-chai": "^1.3.1",
71
+ "karma-sourcemap-loader": "^0.3.7",
72
+ "karma-spec-reporter": "0.0.31",
73
+ "karma-webpack": "^2.0.2",
74
+ "ldap-clients": "3.0.7",
75
+ "less": "^2.7.3",
76
+ "manage-client": "3.1.8-88",
77
+ "mkdirp": "^0.5.1",
78
+ "mocha": "^3.2.0",
79
+ "moment": "2.24.0",
80
+ "ncp": "^2.0.0",
81
+ "nightwatch": "^0.8.18",
82
+ "qrcodejs2": "0.0.2",
83
+ "rimraf": "^2.5.0",
84
+ "selenium-server": "2.52.0",
85
+ "sinon": "^2.1.0",
86
+ "sinon-chai": "^2.8.0",
87
+ "style": "0.0.3",
88
+ "style-loader": "^0.20.3",
89
+ "system-clients": "3.2.25",
90
+ "url-loader": "^0.5.7",
91
+ "vue-client": "1.24.73",
92
+ "vue-clipboard2": "0.3.1",
93
+ "vue-hot-reload-api": "^1.2.0",
94
+ "vue-html-loader": "^1.0.0",
95
+ "vue-loader": "^8.2.1",
96
+ "vue-resource": "^1.5.0",
97
+ "vue-router": "^0.7.13",
98
+ "vue-strap": "^1.0.9",
99
+ "vue-style-loader": "^1.0.0",
100
+ "vue-validator": "2.1.7",
101
+ "webpack": "^1.12.2",
102
+ "webpack-dev-middleware": "^1.4.0",
103
+ "webpack-hot-middleware": "^2.6.0",
104
+ "webpack-merge": "^0.8.3",
105
+ "webpack-parallel-uglify-plugin": "^1.0.0",
106
+ "weixin-js-sdk": "^1.2.0"
107
+ },
108
+ "keywords": [
109
+ "selling-clients"
110
+ ],
111
+ "author": "张桥",
112
+ "license": "ISC",
113
+ "directories": {
114
+ "example": "examples",
115
+ "test": "test"
116
+ }
117
+ }
@@ -359,9 +359,12 @@ export default {
359
359
  this.fileSaveData.userinfo.f_operatorid = nameId
360
360
  this.fileSaveData.userinfo.f_depname = parentname
361
361
  this.fileSaveData.userinfo.f_depid = parentnameId
362
+ this.fileSaveData.userinfo.userfiles.f_operator = name
363
+ this.fileSaveData.userinfo.userfiles.f_operatorid = nameId
364
+ this.fileSaveData.userinfo.userfiles.f_depname = parentname
365
+ this.fileSaveData.userinfo.userfiles.f_depid = parentnameId
362
366
  }
363
367
  }
364
-
365
368
  this.$FileManageService.fileSave(this.fileSaveData).then((res) => {
366
369
  this.$parent.resdata = res.data.result[0].f_userinfo_code
367
370
  if (!this.row) {
package/src/main.js CHANGED
@@ -1,22 +1,22 @@
1
- import Vue from 'vue'
2
- import { all } from 'vue-client'
3
- import App from './App'
4
- import { system } from 'system-clients'
5
- import sale from './sale'
6
- import { address } from 'address-client'
7
- import { ldap } from 'ldap-clients'
8
- import VueClipboard from 'vue-clipboard2'
9
- Vue.use(VueClipboard)
10
- Vue.config.silent = true
11
-
12
- all()
13
- system(false)
14
- sale('tongchuan')
15
- address()
16
- ldap()
17
- require('system-clients/src/styles/less/bootstrap.less')
18
-
19
- new Vue({
20
- el: 'body',
21
- components: { App }
22
- })
1
+ import Vue from 'vue'
2
+ import { all } from 'vue-client'
3
+ import App from './App'
4
+ import { system } from 'system-clients'
5
+ import sale from './sale'
6
+ import { address } from 'address-client'
7
+ import { ldap } from 'ldap-clients'
8
+ import VueClipboard from 'vue-clipboard2'
9
+ Vue.use(VueClipboard)
10
+ Vue.config.silent = true
11
+
12
+ all()
13
+ system(false)
14
+ sale()
15
+ address()
16
+ ldap()
17
+ require('system-clients/src/styles/less/bootstrap.less')
18
+
19
+ new Vue({
20
+ el: 'body',
21
+ components: { App }
22
+ })