sd-prison-select 1.0.10 → 1.0.11

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.
@@ -0,0 +1,3854 @@
1
+ (function webpackUniversalModuleDefinition(root, factory) {
2
+ if(typeof exports === 'object' && typeof module === 'object')
3
+ module.exports = factory();
4
+ else if(typeof define === 'function' && define.amd)
5
+ define("sd-dic-tree-grid", [], factory);
6
+ else if(typeof exports === 'object')
7
+ exports["sd-dic-tree-grid"] = factory();
8
+ else
9
+ root["sd-dic-tree-grid"] = factory();
10
+ })(typeof self !== 'undefined' ? self : this, function() {
11
+ return /******/ (function(modules) { // webpackBootstrap
12
+ /******/ // The module cache
13
+ /******/ var installedModules = {};
14
+ /******/
15
+ /******/ // The require function
16
+ /******/ function __webpack_require__(moduleId) {
17
+ /******/
18
+ /******/ // Check if module is in cache
19
+ /******/ if(installedModules[moduleId]) {
20
+ /******/ return installedModules[moduleId].exports;
21
+ /******/ }
22
+ /******/ // Create a new module (and put it into the cache)
23
+ /******/ var module = installedModules[moduleId] = {
24
+ /******/ i: moduleId,
25
+ /******/ l: false,
26
+ /******/ exports: {}
27
+ /******/ };
28
+ /******/
29
+ /******/ // Execute the module function
30
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
31
+ /******/
32
+ /******/ // Flag the module as loaded
33
+ /******/ module.l = true;
34
+ /******/
35
+ /******/ // Return the exports of the module
36
+ /******/ return module.exports;
37
+ /******/ }
38
+ /******/
39
+ /******/
40
+ /******/ // expose the modules object (__webpack_modules__)
41
+ /******/ __webpack_require__.m = modules;
42
+ /******/
43
+ /******/ // expose the module cache
44
+ /******/ __webpack_require__.c = installedModules;
45
+ /******/
46
+ /******/ // define getter function for harmony exports
47
+ /******/ __webpack_require__.d = function(exports, name, getter) {
48
+ /******/ if(!__webpack_require__.o(exports, name)) {
49
+ /******/ Object.defineProperty(exports, name, {
50
+ /******/ configurable: false,
51
+ /******/ enumerable: true,
52
+ /******/ get: getter
53
+ /******/ });
54
+ /******/ }
55
+ /******/ };
56
+ /******/
57
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
58
+ /******/ __webpack_require__.n = function(module) {
59
+ /******/ var getter = module && module.__esModule ?
60
+ /******/ function getDefault() { return module['default']; } :
61
+ /******/ function getModuleExports() { return module; };
62
+ /******/ __webpack_require__.d(getter, 'a', getter);
63
+ /******/ return getter;
64
+ /******/ };
65
+ /******/
66
+ /******/ // Object.prototype.hasOwnProperty.call
67
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
68
+ /******/
69
+ /******/ // __webpack_public_path__
70
+ /******/ __webpack_require__.p = "/dist/";
71
+ /******/
72
+ /******/ // Load entry module and return exports
73
+ /******/ return __webpack_require__(__webpack_require__.s = 3);
74
+ /******/ })
75
+ /************************************************************************/
76
+ /******/ ([
77
+ /* 0 */
78
+ /***/ (function(module, exports) {
79
+
80
+ /*
81
+ MIT License http://www.opensource.org/licenses/mit-license.php
82
+ Author Tobias Koppers @sokra
83
+ */
84
+ // css base code, injected by the css-loader
85
+ module.exports = function(useSourceMap) {
86
+ var list = [];
87
+
88
+ // return the list of modules as css string
89
+ list.toString = function toString() {
90
+ return this.map(function (item) {
91
+ var content = cssWithMappingToString(item, useSourceMap);
92
+ if(item[2]) {
93
+ return "@media " + item[2] + "{" + content + "}";
94
+ } else {
95
+ return content;
96
+ }
97
+ }).join("");
98
+ };
99
+
100
+ // import a list of modules into the list
101
+ list.i = function(modules, mediaQuery) {
102
+ if(typeof modules === "string")
103
+ modules = [[null, modules, ""]];
104
+ var alreadyImportedModules = {};
105
+ for(var i = 0; i < this.length; i++) {
106
+ var id = this[i][0];
107
+ if(typeof id === "number")
108
+ alreadyImportedModules[id] = true;
109
+ }
110
+ for(i = 0; i < modules.length; i++) {
111
+ var item = modules[i];
112
+ // skip already imported module
113
+ // this implementation is not 100% perfect for weird media query combinations
114
+ // when a module is imported multiple times with different media queries.
115
+ // I hope this will never occur (Hey this way we have smaller bundles)
116
+ if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) {
117
+ if(mediaQuery && !item[2]) {
118
+ item[2] = mediaQuery;
119
+ } else if(mediaQuery) {
120
+ item[2] = "(" + item[2] + ") and (" + mediaQuery + ")";
121
+ }
122
+ list.push(item);
123
+ }
124
+ }
125
+ };
126
+ return list;
127
+ };
128
+
129
+ function cssWithMappingToString(item, useSourceMap) {
130
+ var content = item[1] || '';
131
+ var cssMapping = item[3];
132
+ if (!cssMapping) {
133
+ return content;
134
+ }
135
+
136
+ if (useSourceMap && typeof btoa === 'function') {
137
+ var sourceMapping = toComment(cssMapping);
138
+ var sourceURLs = cssMapping.sources.map(function (source) {
139
+ return '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'
140
+ });
141
+
142
+ return [content].concat(sourceURLs).concat([sourceMapping]).join('\n');
143
+ }
144
+
145
+ return [content].join('\n');
146
+ }
147
+
148
+ // Adapted from convert-source-map (MIT)
149
+ function toComment(sourceMap) {
150
+ // eslint-disable-next-line no-undef
151
+ var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));
152
+ var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;
153
+
154
+ return '/*# ' + data + ' */';
155
+ }
156
+
157
+
158
+ /***/ }),
159
+ /* 1 */
160
+ /***/ (function(module, exports, __webpack_require__) {
161
+
162
+ /*
163
+ MIT License http://www.opensource.org/licenses/mit-license.php
164
+ Author Tobias Koppers @sokra
165
+ Modified by Evan You @yyx990803
166
+ */
167
+
168
+ var hasDocument = typeof document !== 'undefined'
169
+
170
+ if (typeof DEBUG !== 'undefined' && DEBUG) {
171
+ if (!hasDocument) {
172
+ throw new Error(
173
+ 'vue-style-loader cannot be used in a non-browser environment. ' +
174
+ "Use { target: 'node' } in your Webpack config to indicate a server-rendering environment."
175
+ ) }
176
+ }
177
+
178
+ var listToStyles = __webpack_require__(7)
179
+
180
+ /*
181
+ type StyleObject = {
182
+ id: number;
183
+ parts: Array<StyleObjectPart>
184
+ }
185
+
186
+ type StyleObjectPart = {
187
+ css: string;
188
+ media: string;
189
+ sourceMap: ?string
190
+ }
191
+ */
192
+
193
+ var stylesInDom = {/*
194
+ [id: number]: {
195
+ id: number,
196
+ refs: number,
197
+ parts: Array<(obj?: StyleObjectPart) => void>
198
+ }
199
+ */}
200
+
201
+ var head = hasDocument && (document.head || document.getElementsByTagName('head')[0])
202
+ var singletonElement = null
203
+ var singletonCounter = 0
204
+ var isProduction = false
205
+ var noop = function () {}
206
+
207
+ // Force single-tag solution on IE6-9, which has a hard limit on the # of <style>
208
+ // tags it will allow on a page
209
+ var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase())
210
+
211
+ module.exports = function (parentId, list, _isProduction) {
212
+ isProduction = _isProduction
213
+
214
+ var styles = listToStyles(parentId, list)
215
+ addStylesToDom(styles)
216
+
217
+ return function update (newList) {
218
+ var mayRemove = []
219
+ for (var i = 0; i < styles.length; i++) {
220
+ var item = styles[i]
221
+ var domStyle = stylesInDom[item.id]
222
+ domStyle.refs--
223
+ mayRemove.push(domStyle)
224
+ }
225
+ if (newList) {
226
+ styles = listToStyles(parentId, newList)
227
+ addStylesToDom(styles)
228
+ } else {
229
+ styles = []
230
+ }
231
+ for (var i = 0; i < mayRemove.length; i++) {
232
+ var domStyle = mayRemove[i]
233
+ if (domStyle.refs === 0) {
234
+ for (var j = 0; j < domStyle.parts.length; j++) {
235
+ domStyle.parts[j]()
236
+ }
237
+ delete stylesInDom[domStyle.id]
238
+ }
239
+ }
240
+ }
241
+ }
242
+
243
+ function addStylesToDom (styles /* Array<StyleObject> */) {
244
+ for (var i = 0; i < styles.length; i++) {
245
+ var item = styles[i]
246
+ var domStyle = stylesInDom[item.id]
247
+ if (domStyle) {
248
+ domStyle.refs++
249
+ for (var j = 0; j < domStyle.parts.length; j++) {
250
+ domStyle.parts[j](item.parts[j])
251
+ }
252
+ for (; j < item.parts.length; j++) {
253
+ domStyle.parts.push(addStyle(item.parts[j]))
254
+ }
255
+ if (domStyle.parts.length > item.parts.length) {
256
+ domStyle.parts.length = item.parts.length
257
+ }
258
+ } else {
259
+ var parts = []
260
+ for (var j = 0; j < item.parts.length; j++) {
261
+ parts.push(addStyle(item.parts[j]))
262
+ }
263
+ stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }
264
+ }
265
+ }
266
+ }
267
+
268
+ function createStyleElement () {
269
+ var styleElement = document.createElement('style')
270
+ styleElement.type = 'text/css'
271
+ head.appendChild(styleElement)
272
+ return styleElement
273
+ }
274
+
275
+ function addStyle (obj /* StyleObjectPart */) {
276
+ var update, remove
277
+ var styleElement = document.querySelector('style[data-vue-ssr-id~="' + obj.id + '"]')
278
+
279
+ if (styleElement) {
280
+ if (isProduction) {
281
+ // has SSR styles and in production mode.
282
+ // simply do nothing.
283
+ return noop
284
+ } else {
285
+ // has SSR styles but in dev mode.
286
+ // for some reason Chrome can't handle source map in server-rendered
287
+ // style tags - source maps in <style> only works if the style tag is
288
+ // created and inserted dynamically. So we remove the server rendered
289
+ // styles and inject new ones.
290
+ styleElement.parentNode.removeChild(styleElement)
291
+ }
292
+ }
293
+
294
+ if (isOldIE) {
295
+ // use singleton mode for IE9.
296
+ var styleIndex = singletonCounter++
297
+ styleElement = singletonElement || (singletonElement = createStyleElement())
298
+ update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)
299
+ remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)
300
+ } else {
301
+ // use multi-style-tag mode in all other cases
302
+ styleElement = createStyleElement()
303
+ update = applyToTag.bind(null, styleElement)
304
+ remove = function () {
305
+ styleElement.parentNode.removeChild(styleElement)
306
+ }
307
+ }
308
+
309
+ update(obj)
310
+
311
+ return function updateStyle (newObj /* StyleObjectPart */) {
312
+ if (newObj) {
313
+ if (newObj.css === obj.css &&
314
+ newObj.media === obj.media &&
315
+ newObj.sourceMap === obj.sourceMap) {
316
+ return
317
+ }
318
+ update(obj = newObj)
319
+ } else {
320
+ remove()
321
+ }
322
+ }
323
+ }
324
+
325
+ var replaceText = (function () {
326
+ var textStore = []
327
+
328
+ return function (index, replacement) {
329
+ textStore[index] = replacement
330
+ return textStore.filter(Boolean).join('\n')
331
+ }
332
+ })()
333
+
334
+ function applyToSingletonTag (styleElement, index, remove, obj) {
335
+ var css = remove ? '' : obj.css
336
+
337
+ if (styleElement.styleSheet) {
338
+ styleElement.styleSheet.cssText = replaceText(index, css)
339
+ } else {
340
+ var cssNode = document.createTextNode(css)
341
+ var childNodes = styleElement.childNodes
342
+ if (childNodes[index]) styleElement.removeChild(childNodes[index])
343
+ if (childNodes.length) {
344
+ styleElement.insertBefore(cssNode, childNodes[index])
345
+ } else {
346
+ styleElement.appendChild(cssNode)
347
+ }
348
+ }
349
+ }
350
+
351
+ function applyToTag (styleElement, obj) {
352
+ var css = obj.css
353
+ var media = obj.media
354
+ var sourceMap = obj.sourceMap
355
+
356
+ if (media) {
357
+ styleElement.setAttribute('media', media)
358
+ }
359
+
360
+ if (sourceMap) {
361
+ // https://developer.chrome.com/devtools/docs/javascript-debugging
362
+ // this makes source maps inside style tags work properly in Chrome
363
+ css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'
364
+ // http://stackoverflow.com/a/26603875
365
+ css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'
366
+ }
367
+
368
+ if (styleElement.styleSheet) {
369
+ styleElement.styleSheet.cssText = css
370
+ } else {
371
+ while (styleElement.firstChild) {
372
+ styleElement.removeChild(styleElement.firstChild)
373
+ }
374
+ styleElement.appendChild(document.createTextNode(css))
375
+ }
376
+ }
377
+
378
+
379
+ /***/ }),
380
+ /* 2 */
381
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
382
+
383
+ "use strict";
384
+ /* harmony default export */ __webpack_exports__["a"] = ({
385
+ inject: ['keyField', 'showField', 'renderCell', 'rtl', 'inPicked'],
386
+ props: {
387
+ list: Array,
388
+ picked: Array,
389
+ dropHeight: Number,
390
+ value: Number
391
+ },
392
+ methods: {
393
+ rowClick: function rowClick(row) {
394
+ this.$emit('select', row);
395
+ },
396
+ rowClass: function rowClass(row, index) {
397
+ return {
398
+ 'sp-over': this.value === index,
399
+ 'sp-selected': this.inPicked(row),
400
+ 'sp-rtl': this.rtl
401
+ };
402
+ },
403
+ highlight: function highlight(index) {
404
+ this.$emit('input', index);
405
+ }
406
+ }
407
+ });
408
+
409
+ /***/ }),
410
+ /* 3 */
411
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
412
+
413
+ "use strict";
414
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
415
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__dicGrid__ = __webpack_require__(4);
416
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "dicTreeGrid", function() { return __WEBPACK_IMPORTED_MODULE_0__dicGrid__["a"]; });
417
+
418
+
419
+ var Plugin = {
420
+ install: function install(Vue) {
421
+ var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
422
+
423
+ if (Object.keys(option).length) {
424
+ var props = __WEBPACK_IMPORTED_MODULE_0__dicGrid__["a" /* default */].mixins[0].props;
425
+ if (typeof option.title === 'string') props.title.default = option.title;
426
+ if (typeof option.appMark === 'string') props.appMark.default = option.appMark;
427
+ if (typeof option.language === 'string') props.language.default = option.language;
428
+ if (typeof option.placeholder === 'string') props.placeholder.default = option.placeholder;
429
+ if (typeof option.pageSize === 'number') props.pageSize.default = option.pageSize;
430
+ if (typeof option.rtl === 'boolean') props.rtl.default = option.rtl;
431
+
432
+ if (option.dataLoad && typeof option.dataLoad === 'function') {
433
+ __WEBPACK_IMPORTED_MODULE_0__dicGrid__["a" /* default */].extends = {
434
+ methods: {
435
+ dataLoad: option.dataLoad
436
+ }
437
+ };
438
+ }
439
+ }
440
+ Vue.component('s-dic-tree-grid', __WEBPACK_IMPORTED_MODULE_0__dicGrid__["a" /* default */]);
441
+ }
442
+ };
443
+
444
+ /* harmony default export */ __webpack_exports__["default"] = (Plugin);
445
+
446
+ /***/ }),
447
+ /* 4 */
448
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
449
+
450
+ "use strict";
451
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__styles_dicgrid_css__ = __webpack_require__(5);
452
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__styles_dicgrid_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__styles_dicgrid_css__);
453
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_Dropdown__ = __webpack_require__(8);
454
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_Tag__ = __webpack_require__(11);
455
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_Select__ = __webpack_require__(12);
456
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_Pagination__ = __webpack_require__(13);
457
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_List__ = __webpack_require__(14);
458
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_Table__ = __webpack_require__(15);
459
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_data__ = __webpack_require__(16);
460
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_methods__ = __webpack_require__(18);
461
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_util__ = __webpack_require__(19);
462
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__mixins_render__ = __webpack_require__(20);
463
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__libs_util__ = __webpack_require__(21);
464
+ /* eslint-disable no-eval */
465
+
466
+
467
+
468
+
469
+
470
+
471
+
472
+
473
+
474
+
475
+
476
+
477
+ /* harmony default export */ __webpack_exports__["a"] = ({
478
+ name: 's-dicTree-grid',
479
+ mixins: [__WEBPACK_IMPORTED_MODULE_7__mixins_data__["a" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_methods__["a" /* default */], __WEBPACK_IMPORTED_MODULE_9__mixins_util__["a" /* default */], __WEBPACK_IMPORTED_MODULE_10__mixins_render__["a" /* default */]],
480
+ components: {
481
+ 'v-dropdown': __WEBPACK_IMPORTED_MODULE_1__components_Dropdown__["a" /* default */],
482
+ 'sp-tag': __WEBPACK_IMPORTED_MODULE_2__components_Tag__["a" /* default */],
483
+ 'sp-select': __WEBPACK_IMPORTED_MODULE_3__components_Select__["a" /* default */],
484
+ 'sp-page': __WEBPACK_IMPORTED_MODULE_4__components_Pagination__["a" /* default */],
485
+ 'sp-list': __WEBPACK_IMPORTED_MODULE_5__components_List__["a" /* default */],
486
+ 'sp-table': __WEBPACK_IMPORTED_MODULE_6__components_Table__["a" /* default */]
487
+ },
488
+ provide: function provide() {
489
+ return {
490
+ i18n: this.i18n,
491
+ renderCell: this.renderCell,
492
+ keyField: this.keyField,
493
+ showField: this.showField,
494
+ inPicked: this.inPicked,
495
+ rtl: this.rtl
496
+ };
497
+ },
498
+ mounted: function mounted() {
499
+ var _this = this;
500
+
501
+ if (!this.searchField) {
502
+ if (typeof this.showField === 'string') {
503
+ this.searchColumn = this.showField;
504
+ } else if (Array.isArray(this.showField) && this.showField.length) {
505
+ this.searchColumn = this.showField[0].data;
506
+ }
507
+ } else this.searchColumn = this.searchField;
508
+ if (typeof this.requestType == 'undefined' || this.requestType === 'dic') {
509
+ if (this.appMark === '') {
510
+ this.i18n.not_found = '未设置应用标识';
511
+ return;
512
+ }
513
+ this.$store.dispatch('axiosGetRequest', { url: '/bsp-com/ops/dic/code/getDicCodeTreeData',
514
+ params: {
515
+ // access_token: getToken(),
516
+ dicName: this.dicName
517
+ } }).then(function (res) {
518
+ // this.$store.dispatch('axiosGetRequest', { url: '/bsp-com/static/dic/' + this.appMark + '/' + this.dicName + '.js' }).then(res => {
519
+ if (res.status === 200) {
520
+ var arr = [];
521
+ // let func = { getData: eval('(' + res.data + ')') }
522
+ // arr = func.getData()
523
+ arr = res.data.data;
524
+ // 判断是否存在过滤条件
525
+ if (_this.filterField) {
526
+ var start = _this.filterField.charAt(0);
527
+ var end = _this.filterField.charAt(_this.filterField.length - 1);
528
+
529
+ // 过滤条件为正则表达式
530
+ if (start == '/' && end == '/' && eval(_this.filterField) instanceof RegExp) {
531
+ _this.data = arr ? arr.filter(function (item) {
532
+ return eval(_this.filterField).test(item.code);
533
+ }) : [];
534
+ } else {
535
+ // 过滤条件为字符串
536
+ var filterArr = _this.filterField.split(',');
537
+ _this.data = arr ? arr.filter(function (item) {
538
+ return filterArr.includes(item.code);
539
+ }) : [];
540
+ }
541
+ } else {
542
+ _this.data = arr;
543
+ }
544
+ } else {
545
+ _this.i18n.not_found = '字典数据加载错误';
546
+ }
547
+ });
548
+ } else if (this.requestType === 'loopData') {
549
+ // 单循环数据
550
+ this.data = this.loopData;
551
+ } else {
552
+ this.$store.dispatch('authPostRequest', { url: this.path }).then(function (data) {
553
+ if (data.success) {
554
+ _this.data = data.rows;
555
+ } else {
556
+ _this.i18n.not_found = '数据加载错误';
557
+ }
558
+ });
559
+ }
560
+ }
561
+ });
562
+
563
+ /***/ }),
564
+ /* 5 */
565
+ /***/ (function(module, exports, __webpack_require__) {
566
+
567
+ // style-loader: Adds some css to the DOM by adding a <style> tag
568
+
569
+ // load the styles
570
+ var content = __webpack_require__(6);
571
+ if(typeof content === 'string') content = [[module.i, content, '']];
572
+ if(content.locals) module.exports = content.locals;
573
+ // add the styles to the DOM
574
+ var update = __webpack_require__(1)("d696132e", content, true);
575
+
576
+ /***/ }),
577
+ /* 6 */
578
+ /***/ (function(module, exports, __webpack_require__) {
579
+
580
+ exports = module.exports = __webpack_require__(0)(false);
581
+ // imports
582
+
583
+
584
+ // module
585
+ exports.push([module.i, "@font-face{font-family:sp-iconfont;src:url(\"data:application/x-font-woff;charset=utf-8;base64,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\") format(\"woff\"),url(\"data:image/ttf;base64,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?t=1530004230003\") format(\"truetype\"),url(\"data:image/svg;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPCEtLQoyMDEzLTktMzA6IENyZWF0ZWQuCi0tPgo8c3ZnPgo8bWV0YWRhdGE+CkNyZWF0ZWQgYnkgaWNvbmZvbnQKPC9tZXRhZGF0YT4KPGRlZnM+Cgo8Zm9udCBpZD0iaWNvbmZvbnQiIGhvcml6LWFkdi14PSIxMDI0IiA+CiAgPGZvbnQtZmFjZQogICAgZm9udC1mYW1pbHk9Imljb25mb250IgogICAgZm9udC13ZWlnaHQ9IjUwMCIKICAgIGZvbnQtc3RyZXRjaD0ibm9ybWFsIgogICAgdW5pdHMtcGVyLWVtPSIxMDI0IgogICAgYXNjZW50PSI4OTYiCiAgICBkZXNjZW50PSItMTI4IgogIC8+CiAgICA8bWlzc2luZy1nbHlwaCAvPgogICAgCiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ieCIgdW5pY29kZT0ieCIgaG9yaXotYWR2LXg9IjEwMDEiCmQ9Ik0yODEgNTQzcS0yNyAtMSAtNTMgLTFoLTgzcS0xOCAwIC0zNi41IC02dC0zMi41IC0xOC41dC0yMyAtMzJ0LTkgLTQ1LjV2LTc2aDkxMnY0MXEwIDE2IC0wLjUgMzB0LTAuNSAxOHEwIDEzIC01IDI5dC0xNyAyOS41dC0zMS41IDIyLjV0LTQ5LjUgOWgtMTMzdi05N2gtNDM4djk3ek05NTUgMzEwdi01MnEwIC0yMyAwLjUgLTUydDAuNSAtNTh0LTEwLjUgLTQ3LjV0LTI2IC0zMHQtMzMgLTE2dC0zMS41IC00LjVxLTE0IC0xIC0yOS41IC0wLjUKdC0yOS41IDAuNWgtMzJsLTQ1IDEyOGgtNDM5bC00NCAtMTI4aC0yOWgtMzRxLTIwIDAgLTQ1IDFxLTI1IDAgLTQxIDkuNXQtMjUuNSAyM3QtMTMuNSAyOS41dC00IDMwdjE2N2g5MTF6TTE2MyAyNDdxLTEyIDAgLTIxIC04LjV0LTkgLTIxLjV0OSAtMjEuNXQyMSAtOC41cTEzIDAgMjIgOC41dDkgMjEuNXQtOSAyMS41dC0yMiA4LjV6TTMxNiAxMjNxLTggLTI2IC0xNCAtNDhxLTUgLTE5IC0xMC41IC0zN3QtNy41IC0yNXQtMyAtMTV0MSAtMTQuNQp0OS41IC0xMC41dDIxLjUgLTRoMzdoNjdoODFoODBoNjRoMzZxMjMgMCAzNCAxMnQyIDM4cS01IDEzIC05LjUgMzAuNXQtOS41IDM0LjVxLTUgMTkgLTExIDM5aC0zNjh6TTMzNiA0OTh2MjI4cTAgMTEgMi41IDIzdDEwIDIxLjV0MjAuNSAxNS41dDM0IDZoMTg4cTMxIDAgNTEuNSAtMTQuNXQyMC41IC01Mi41di0yMjdoLTMyN3oiIC8+CiAgICAKCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ3YXJuIiB1bmljb2RlPSImIzU4OTc5OyIgZD0iTTg0OS4xMi0zMi43MDQgMTc0Ljg4LTMyLjcwNGMtNDUuMjE2IDAtODEuNTM2IDE3LjcyOC05OS42OCA0OC42NC0xOC4xNDQgMzAuOTEyLTE1LjkzNiA3MS4yOTYgNi4wOCAxMTAuNzUyTDQyMS40NzIgNzM2LjM1MmMyMi4xNDQgMzkuNzQ0IDU1LjA3MiA2Mi41MjggOTAuMzA0IDYyLjUyOHM2OC4xMjgtMjIuNzUyIDkwLjMzNi02Mi40NjRsMzQwLjU0NC02MDkuNzkyYzIyLjAxNi0zOS40NTYgMjQuMjg4LTc5LjgwOCA2LjExMi0xMTAuNzJDOTMwLjY1Ni0xNS4wMDggODk0LjMwNC0zMi43MDQgODQ5LjEyLTMyLjcwNHpNNTExLjgwOCA3MzQuODhjLTExLjIgMC0yNC4wMzItMTEuMTA0LTM0LjQzMi0yOS42OTZMMTM3LjE4NCA5NS40NTZjLTEwLjY1Ni0xOS4xMzYtMTMuMTUyLTM2LjMyLTYuNzg0LTQ3LjE2OCA2LjM2OC0xMC44MTYgMjIuNTkyLTE3LjAyNCA0NC40OC0xNy4wMjRsNjc0LjI0IDBjMjEuOTIgMCAzOC4xMTIgNi4xNzYgNDQuNDggMTcuMDI0IDYuMzM2IDEwLjgxNiAzLjg3MiAyOC02LjgxNiA0Ny4xMzZMNTQ2LjI0IDcwNS4xODRDNTM1Ljg3MiA3MjMuNzc2IDUyMi45NzYgNzM0Ljg4IDUxMS44MDggNzM0Ljg4ek01MTIgMjU2Yy0xNy42NjQgMC0zMiAxNC4zMDQtMzIgMzJsMCAyODhjMCAxNy42NjQgMTQuMzM2IDMyIDMyIDMyczMyLTE0LjMzNiAzMi0zMmwwLTI4OEM1NDQgMjcwLjMwNCA1MjkuNjY0IDI1NiA1MTIgMjU2ek01MTIgMTQzLjg3Mm0tNDggMGExLjUgMS41IDAgMSAwIDk2IDAgMS41IDEuNSAwIDEgMC05NiAwWiIgIGhvcml6LWFkdi14PSIxMDI0IiAvPgoKICAgIAogICAgPGdseXBoIGdseXBoLW5hbWU9InNoYW5jaHUiIHVuaWNvZGU9IiYjNTkyMTE7IiBkPSJNNjA3Ljg5Nzg2NyAxMjcuOTU2OTk2Yy0xNy43MTc0NTMgMC0zMS45OTQ2MjUgMTQuMjc3MTcxLTMxLjk5NDYyNSAzMS45OTQ2MjVMNTc1LjkwMzI0MiA1MTIuMDY0NTA1YzAgMTcuNzE3NDUzIDE0LjI3NzE3MSAzMS45OTQ2MjUgMzEuOTk0NjI1IDMxLjk5NDYyNXMzMS45OTQ2MjUtMTQuMjc3MTcxIDMxLjk5NDYyNS0zMS45OTQ2MjVsMC0zNTEuOTQwODdDNjM5Ljg5MjQ5MSAxNDIuNDA2MTgxOTk5OTk5OTQgNjI1LjYxNTMyIDEyNy45NTY5OTYgNjA3Ljg5Nzg2NyAxMjcuOTU2OTk2ek00MTUuOTMwMTE5IDEyNy45NTY5OTZjLTE3LjcxNzQ1MyAwLTMxLjk5NDYyNSAxNC4yNzcxNzEtMzEuOTk0NjI1IDMxLjk5NDYyNUwzODMuOTM1NDk1IDUxMi4wNjQ1MDVjMCAxNy43MTc0NTMgMTQuMjc3MTcxIDMxLjk5NDYyNSAzMS45OTQ2MjUgMzEuOTk0NjI1IDE3LjcxNzQ1MyAwIDMxLjk5NDYyNS0xNC4yNzcxNzEgMzEuOTk0NjI1LTMxLjk5NDYyNWwwLTM1MS45NDA4N0M0NDcuOTI0NzQ0IDE0Mi40MDYxODE5OTk5OTk5NCA0MzMuNjQ3NTczIDEyNy45NTY5OTYgNDE1LjkzMDExOSAxMjcuOTU2OTk2ek05MjguMDE2MTI2IDY3Mi4wMzc2MjhsLTE1OS45NzMxMjMgMEw3NjguMDQzMDA0IDczNi4wMjY4NzdjMCA1Mi45ODAzNDYtNDIuNjU5NDk5IDk1Ljk4Mzg3NC05NS4yOTU4MTcgOTUuOTgzODc0TDM1MS45NDA4NyA4MzIuMDEwNzUxYy01Mi45ODAzNDYgMC05NS45ODM4NzQtNDMuMDAzNTI4LTk1Ljk4Mzg3NC05NS45ODM4NzRsMC02My45ODkyNDktMTU5Ljk3MzEyMyAwYy0xNy43MTc0NTMgMC0zMS45OTQ2MjUtMTQuMjc3MTcxLTMxLjk5NDYyNS0zMS45OTQ2MjVzMTQuMjc3MTcxLTMxLjk5NDYyNSAzMS45OTQ2MjUtMzEuOTk0NjI1bDgzMi4wMzIyNTMgMGMxNy43MTc0NTMgMCAzMS45OTQ2MjUgMTQuMjc3MTcxIDMxLjk5NDYyNSAzMS45OTQ2MjVTOTQ1LjczMzU4IDY3Mi4wMzc2MjggOTI4LjAxNjEyNiA2NzIuMDM3NjI4ek0zMTkuOTQ2MjQ2IDczNi4wMjY4NzdjMCAxNy41NDU0MzkgMTQuNDQ5MTg1IDMxLjk5NDYyNSAzMS45OTQ2MjUgMzEuOTk0NjI1bDMyMC44MDYzMTYgMGMxNy41NDU0MzkgMCAzMS4zMDY1NjgtMTQuMTA1MTU3IDMxLjMwNjU2OC0zMS45OTQ2MjVsMC02My45ODkyNDlMMzE5Ljk0NjI0NiA2NzIuMDM3NjI4IDMxOS45NDYyNDYgNzM2LjAyNjg3NyAzMTkuOTQ2MjQ2IDczNi4wMjY4Nzd6TTczNi4wNDgzNzktNjQuMDEwNzUxMDAwMDAwMDNMMjg4LjEyMzYzNS02NC4wMTA3NTEwMDAwMDAwM2MtNTIuOTgwMzQ2IDAtOTUuOTgzODc0IDQzLjAwMzUyOC05NS45ODM4NzQgOTUuOTgzODc0TDE5Mi4xMzk3NjEgNTEyLjQwODUzMzk5OTk5OTljMCAxNy43MTc0NTMgMTQuMjc3MTcxIDMxLjk5NDYyNSAzMS45OTQ2MjUgMzEuOTk0NjI1czMxLjk5NDYyNS0xNC4yNzcxNzEgMzEuOTk0NjI1LTMxLjk5NDYyNWwwLTQ4MC40MzU0MTFjMC0xNy43MTc0NTMgMTQuNDQ5MTg1LTMxLjk5NDYyNSAzMS45OTQ2MjUtMzEuOTk0NjI1bDQ0OC4wOTY3NTggMGMxNy43MTc0NTMgMCAzMS45OTQ2MjUgMTQuMjc3MTcxIDMxLjk5NDYyNSAzMS45OTQ2MjVMNzY4LjIxNTAxOCA1MTEuMjA0NDM1YzAgMTcuNzE3NDUzIDE0LjI3NzE3MSAzMS45OTQ2MjUgMzEuOTk0NjI1IDMxLjk5NDYyNXMzMS45OTQ2MjUtMTQuMjc3MTcxIDMxLjk5NDYyNS0zMS45OTQ2MjVsMC00NzkuMjMxMzEyQzgzMi4wMzIyNTMtMjAuODM1MjA4OTk5OTk5OTYzIDc4OS4wMjg3MjUtNjQuMDEwNzUxMDAwMDAwMDMgNzM2LjA0ODM3OS02NC4wMTA3NTEwMDAwMDAwM3oiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJjaGVjayIgdW5pY29kZT0iJiM1ODkzMjsiIGQ9Ik04NTEuNjA4IDc4MC4yNzljMzEuMDU2IDAgNTYuMzIzLTI1LjI2NyA1Ni4zMjMtNTYuMzI1di02NzkuODg2YzAtMzEuMDU3LTI1LjI2Ni01Ni4zMjQtNTYuMzIzLTU2LjMyNGgtNjc5Ljg4NmMtMzEuMDU4IDAtNTYuMzI1IDI1LjI2Ni01Ni4zMjUgNTYuMzI0bDAgNjc5Ljg4NmMwIDMxLjA1OCAyNS4yNjcgNTYuMzI1IDU2LjMyNSA1Ni4zMjVoNjc5Ljg4Nk04NTEuNjA4IDgzMS40NDVoLTY3OS44ODZjLTU5LjM2NSAwLTEwNy40OS00OC4xMjUtMTA3LjQ5LTEwNy40OXYtNjc5Ljg4NmMwLTU5LjM2NSA0OC4xMjUtMTA3LjQ4OSAxMDcuNDktMTA3LjQ4OWg2NzkuODg2YzU5LjM2NSAwIDEwNy40ODggNDguMTI0IDEwNy40ODggMTA3LjQ4OXY2NzkuODg2YzAgNTkuMzY1LTQ4LjEyMyAxMDcuNDktMTA3LjQ4OCAxMDcuNDl2MHoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ4dWFuemhvbmciIHVuaWNvZGU9IiYjNTg5MjA7IiBkPSJNNzYuODgzOTExIDc0Mi44Nzk5M2MwIDQzLjM3MTcyMyAzNS4wODgwNzYgNzguNTMwNDA3IDc4LjUyOTM4NCA3OC41MzA0MDdoNzEwLjYxMjA4YzQzLjM3MTcyMyAwIDc4LjUzMDQwNy0zNS4wODgwNzYgNzguNTMwNDA3LTc4LjUzMDQwN3YtNzEwLjYxMTA1N2MwLTQzLjM3MTcyMy0zNS4wODgwNzYtNzguNTMwNDA3LTc4LjUzMDQwNy03OC41MzA0MDdIMTU1LjQxNDMxOGMtNDMuMzcwNyAwLTc4LjUyOTM4NCAzNS4wODgwNzYtNzguNTI5Mzg0IDc4LjUzMDQwN1Y3NDIuODc5OTNoLTAuMDAxMDIzeiBtNTkuMzI5MTI4LTE3LjkxNjAwOXYtNjc0Ljc3Njk5MmMwLTIwLjUzOTc2MSAxNi41OTA4My0zNy4xMjAzNTggMzcuMTE5MzM1LTM3LjEyMDM1OGg2NzQuNzc4MDE1YzIwLjUzNzcxNCAwIDM3LjExOTMzNSAxNi41ODk4MDcgMzcuMTE5MzM1IDM3LjEyMDM1OHY2NzQuNzc2OTkyYzAgMjAuNTM4NzM4LTE2LjU5MDgzIDM3LjEyMDM1OC0zNy4xMTkzMzUgMzcuMTIwMzU4SDE3My4zMzEzNTFjLTIwLjUzODczOCAwLTM3LjExODMxMi0xNi41OTE4NTQtMzcuMTE4MzEyLTM3LjEyMDM1OHpNNDAwLjU2MDEzMSAxNDMuOTQzMDc5TDE3Ny4yNDI0MTkgMzY3LjIxNjc4OWw0MS4yMTY2NDUgNDEuMTcxNjE5IDIyMy4yNzY3OC0yMjMuMjc2NzgtNDEuMTc1NzEzLTQxLjE2ODU0OXpNMzYzLjI5MTM5NCAxOTMuOTAwNzg3bDQzNy4zMDE4NjcgNDM3LjMwNTk2IDQzLjYwNDAxMy00My41OTY4NS00MzcuMjY3MDc1LTQzNy4zMDM5MTMtMjcuMTc4OTU4IDI3LjEzNzAwMy0xNi40NTk4NDcgMTYuNDU3OHoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJpY29uLWRpcmVjdGlvbi1yaWdodCIgdW5pY29kZT0iJiM1OTAwNjsiIGQ9Ik01OTguMDg2IDM2MS40NTFjNi4wNDQgNi4wMjggOS4zNzMgMTQuMDQgOS4zNzMgMjIuNTYgMCA4LjUyMS0zLjMzIDE2LjUyNS05LjM3MSAyMi41MzZMMTgyLjAwNCA4MjIuNjNjLTYuMDM0IDYuMDM0LTE0LjA1MiA5LjM1NC0yMi41NzkgOS4zNDktOC41MTMtMC4wMDUtMTYuNTEtMy4zMjYtMjIuNTE5LTkuMzUxLTYuMDI3LTYuMDQyLTkuMzQ2LTE0LjA1OC05LjM0Ni0yMi41NzEgMC04LjUxNCAzLjMyLTE2LjUyMiA5LjM0OC0yMi41NTFMNTMwLjQxNyAzODQgMTM2LjkxLTkuNTA1OTk5OTk5OTk5OTcyYy02LjAyOC02LjAyOC05LjM0OC0xNC4wNDEtOS4zNDgtMjIuNTYyczMuMzItMTYuNTM0IDkuMzQ4LTIyLjU2MmM2LjAzNC02LjAzNCAxNC4wNTQtOS4zNTQgMjIuNTgtOS4zNDggOC41MTIgMC4wMDYgMTYuNTA4IDMuMzI2IDIyLjUxNCA5LjM0OGw0MTYuMDgyIDQxNi4wODF6TTQxNi41MzcgODAwLjA1N2MwLTguNTE0IDMuMzItMTYuNTIyIDkuMzQ4LTIyLjU1MUw4MTkuMzkyIDM4NCA0MjUuODg1LTkuNTA1OTk5OTk5OTk5OTcyYy02LjAyOC02LjAyOC05LjM0OC0xNC4wNDEtOS4zNDgtMjIuNTYyczMuMzItMTYuNTM0IDkuMzQ4LTIyLjU2MmM2LjAzNC02LjAzNCAxNC4wNTQtOS4zNTQgMjIuNTgtOS4zNDggOC41MTIgMC4wMDYgMTYuNTA4IDMuMzI2IDIyLjUxNCA5LjM0OEw4ODcuMDYgMzYxLjQ1MmM2LjA0NCA2LjAyOCA5LjM3MyAxNC4wNCA5LjM3MyAyMi41NiAwIDguNTIxLTMuMzMgMTYuNTI1LTkuMzcxIDIyLjUzNkw0NzAuOTggODIyLjYzYy02LjAzNCA2LjAzNC0xNC4wNTIgOS4zNTQtMjIuNTc5IDkuMzQ5LTguNTEzLTAuMDA1LTE2LjUxLTMuMzI2LTIyLjUxOS05LjM1MS02LjAyNi02LjA0Mi05LjM0NS0xNC4wNTgtOS4zNDUtMjIuNTcxeiIgIGhvcml6LWFkdi14PSIxMDI0IiAvPgoKICAgIAogICAgPGdseXBoIGdseXBoLW5hbWU9Imljb24tZGlyZWN0aW9uLWxlZnQiIHVuaWNvZGU9IiYjNTkwMDk7IiBkPSJNNDI1LjkwOSA0MDYuNTQ5Yy02LjA0NC02LjAyOC05LjM3My0xNC4wNC05LjM3My0yMi41NiAwLTguNTIxIDMuMzMtMTYuNTI1IDkuMzcxLTIyLjUzNkw4NDEuOTktNTQuNjI5OTk5OTk5OTk5OTk1YzYuMDM0LTYuMDM0IDE0LjA1Mi05LjM1NCAyMi41NzktOS4zNDkgOC41MTMgMC4wMDUgMTYuNTEgMy4zMjYgMjIuNTE4IDkuMzUxIDYuMDI3IDYuMDQyIDkuMzQ2IDE0LjA1OCA5LjM0NiAyMi41NzEgMCA4LjUxMy0zLjMyIDE2LjUyMi05LjM0OCAyMi41NTFMNDkzLjU3NyAzODRsMzkzLjUwOCAzOTMuNTA3YzYuMDI4IDYuMDI4IDkuMzQ4IDE0LjA0MSA5LjM0OCAyMi41NjJzLTMuMzIgMTYuNTM0LTkuMzQ4IDIyLjU2MmMtNi4wMzQgNi4wMzQtMTQuMDU0IDkuMzU0LTIyLjU4IDkuMzQ4LTguNTEyLTAuMDA2LTE2LjUwOC0zLjMyNi0yMi41MTQtOS4zNDhMNDI1LjkwOSA0MDYuNTQ5ek02MDcuNDU3LTMyLjA1NzAwMDAwMDAwMDAxNmMwIDguNTEzLTMuMzIgMTYuNTIyLTkuMzQ4IDIyLjU1MUwyMDQuNjAyIDM4NCA1OTguMTEgNzc3LjUwNzAwMDAwMDAwMDFjNi4wMjggNi4wMjggOS4zNDggMTQuMDQxIDkuMzQ4IDIyLjU2MnMtMy4zMiAxNi41MzQtOS4zNDggMjIuNTYyYy02LjAzNCA2LjAzNC0xNC4wNTQgOS4zNTQtMjIuNTggOS4zNDgtOC41MTItMC4wMDYtMTYuNTA4LTMuMzI2LTIyLjUxNC05LjM0OEwxMzYuOTM0IDQwNi41NDljLTYuMDQ0LTYuMDI4LTkuMzczLTE0LjA0LTkuMzczLTIyLjU2IDAtOC41MjEgMy4zMy0xNi41MjUgOS4zNzEtMjIuNTM2TDU1My4wMTUtNTQuNjI5OTk5OTk5OTk5OTk1YzYuMDM0LTYuMDM0IDE0LjA1Mi05LjM1NCAyMi41NzktOS4zNDkgOC41MTMgMC4wMDUgMTYuNTEgMy4zMjYgMjIuNTE4IDkuMzUxIDYuMDI3IDYuMDQyIDkuMzQ1IDE0LjA1OSA5LjM0NSAyMi41NzF6IiAgaG9yaXotYWR2LXg9IjEwMjQiIC8+CgogICAgCiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ieW91MSIgdW5pY29kZT0iJiM1OTE0OTsiIGQ9Ik03MjEuOTIgNDAxLjkybC0zODQgMzg0Yy0xMC4yNCAxMC4yNC0yNS42IDEwLjI0LTM1Ljg0IDBzLTEwLjI0LTI1LjYgMC0zNS44NEw2NjguMTYgMzg0IDMwMi4wOCAxNy45MTk5OTk5OTk5OTk5NmMtMTAuMjQtMTAuMjQtMTAuMjQtMjUuNiAwLTM1Ljg0czI1LjYtMTAuMjQgMzUuODQgMGwzODQgMzg0YzEwLjI0IDEwLjI0IDEwLjI0IDI1LjYgMCAzNS44NHoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ6dW83IiB1bmljb2RlPSImIzU5MTUxOyIgZD0iTTM1NS44NCAzODRMNzIxLjkyIDc1MC4wOGMxMC4yNCAxMC4yNCAxMC4yNCAyNS42IDAgMzUuODQtMTAuMjQgMTAuMjQtMjUuNiAxMC4yNC0zNS44NCAwbC0zODQtMzg0Yy0xMC4yNC0xMC4yNC0xMC4yNC0yNS42IDAtMzUuODRsMzg0LTM4NGMxMC4yNC0xMC4yNCAyNS42LTEwLjI0IDM1Ljg0IDBzMTAuMjQgMjUuNiAwIDM1Ljg0TDM1NS44NCAzODR6IiAgaG9yaXotYWR2LXg9IjEwMjQiIC8+CgogICAgCiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0idGltZXMiIHVuaWNvZGU9IiYjNTg4ODA7IiBkPSJNOTA3LjUxIDY3LjU5NTAwMDAwMDAwMDAzbC03OS4xMDEtNzkuMTAyLTMxNi40MDYgMzE2LjQwNS0zMTYuNDA1LTMxNi40MDUtNzkuMTA0IDc5LjEwMkw0MzIuODk5IDM4NCAxMTYuNDk0IDcwMC40MDVsNzkuMTA0IDc5LjA5OSAzMTYuNDA1LTMxNi40MDVMODI4LjQxIDc3OS41MDRsNzkuMDk4LTc5LjA5OUw1OTEuMTAyIDM4NGwzMTYuNDA1LTMxNi40MDV6IiAgaG9yaXotYWR2LXg9IjEwMjUiIC8+CgogICAgCgoKICA8L2ZvbnQ+CjwvZGVmcz48L3N2Zz4K?t=1530004230003#iconfont\") format(\"svg\")}.sp-iconfont{font-family:sp-iconfont!important;font-size:14px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sp-icon-warning:before{content:\"\\E663\"}.sp-icon-clear:before{color:red;content:\"\\E74B\"}.sp-icon-unselect-all:before{content:\"\\E634\"}.sp-icon-select-all:before{content:\"\\E628\"}.sp-icon-last:before{content:\"\\E67E\"}.sp-icon-first:before{content:\"\\E681\"}.sp-icon-next:before{content:\"\\E70D\"}.sp-icon-previous:before{content:\"\\E70F\"}.sp-icon-close:before{content:\"\\E600\"}.ivu-form-item-error div.v-selectpage div.sp-input-container div.sp-base{border:1px solid #ed4014}div.v-selectpage{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif;box-sizing:border-box}div.v-selectpage div.sp-input-container{position:relative}div.v-selectpage div.sp-input-container span.sp-placeholder{color:#aaa}div.v-selectpage div.sp-input-container.sp-open div.sp-input,div.v-selectpage div.sp-input-container.sp-open div.sp-inputs{border:1px solid #bdcaf1;color:#000;border-radius:2px}div.v-selectpage div.sp-input-container.sp-open div.sp-input{background-color:#f9f9f9}div.v-selectpage div.sp-input-container.sp-disabled div.sp-input,div.v-selectpage div.sp-input-container.sp-disabled div.sp-inputs{cursor:not-allowed;color:#aaa;background-color:#eee}div.v-selectpage div.sp-input-container.sp-disabled div.sp-button{cursor:not-allowed}div.v-selectpage div.sp-input-container div.sp-base{display:block;height:30px;padding:6px 10px;font-size:15px;line-height:1;color:#515a6e;background-color:#fff;background-image:none;border:1px solid #dcdee2;border-radius:4px;text-align:left;-webkit-box-shadow:none;box-shadow:none;will-change:border-color,box-shadow,background-color;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out,background-color .3s ease-in-out;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s,background-color ease-in-out .3s;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,background-color .3s ease-in-out;box-sizing:border-box}div.v-selectpage div.sp-input-container div.sp-input{background-color:#fff;cursor:pointer;color:#515a6e;opacity:1}div.v-selectpage div.sp-input-container div.sp-inputs{padding:5px 24px 0 5px;position:relative;overflow:hidden;cursor:pointer;list-style:none;height:auto;min-height:32px;font-size:14px}div.v-selectpage div.sp-input-container div.sp-inputs span.sp-placeholder{margin-left:9px;margin-top:3px;display:inline-block}div.v-selectpage div.sp-input-container div.sp-inputs span.sp-selected-tag{list-style:none;padding:2px 8px;margin:0 3px 3px 0;float:left;position:relative;box-sizing:content-box;border-radius:3px;background-color:#efefef;cursor:pointer;max-width:100%;line-height:1.42;-webkit-transition:all .5s cubic-bezier(.175,.885,.32,1);transition:all .5s cubic-bezier(.175,.885,.32,1)}div.v-selectpage div.sp-input-container div.sp-inputs span.sp-selected-tag:hover{background-color:#fff;box-shadow:0 0 10px rgba(0,0,0,.25)}div.v-selectpage div.sp-input-container div.sp-inputs span.sp-selected-tag i{font-size:14px;color:#aaa;margin-left:3px}div.v-selectpage div.sp-input-container div.sp-inputs span.sp-selected-tag i:hover{color:#000}div.v-selectpage div.sp-input-container div.sp-clear{position:absolute;top:0;right:25px;display:block;width:auto;height:100%;cursor:pointer;font-size:20px;color:#999;font-weight:600;margin:0;padding:4px 0 0;box-sizing:border-box;line-height:1}div.v-selectpage div.sp-input-container div.sp-clear i{font-size:12px}div.v-selectpage div.sp-input-container div.sp-clear:hover{color:#000;font-weight:700}div.v-selectpage div.sp-input-container div.sp-button{display:inline-block;border-bottom-right-radius:0;border-top-right-radius:0;cursor:pointer;text-align:center;box-sizing:border-box;border:0;width:24px;height:100%;padding:0;vertical-align:middle;line-height:100%;position:absolute;top:0;right:0}div.v-selectpage div.sp-input-container div.sp-button span.sp-caret{position:absolute;top:50%;right:12px;margin-top:-1px;vertical-align:middle;display:inline-block;width:0;height:0;margin-left:2px;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent;transition:transform .2s ease}div.v-selectpage div.sp-input-container div.sp-button.open span.sp-caret{transform:rotate(180deg)}div.sp-header{background-color:#fff;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif}div.sp-header>h3{margin:6px 100px 0 10px;text-align:left;height:18px;color:#24292e;font-size:14px;font-weight:500;white-space:nowrap}div.sp-header button{position:absolute;padding:0;cursor:pointer;background:0 0;border:0;outline:none;line-height:100%;color:#999;top:3px;font-size:21px}div.sp-header button.sp-close-btn{right:9px}div.sp-header button.sp-remove-all-btn{right:55px}div.sp-header button.sp-select-all-btn{right:81px}div.sp-header button.sp-clear-all-btn{right:31px}div.sp-header button:hover{color:#000}.sp-search{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif;padding:10px;background-color:#fff}.sp-search .sp-search-input{display:block;background-color:#fff;margin:0!important;width:100%;font-size:14px;line-height:20px;padding:4px 28px;box-sizing:border-box;outline:none!important;height:30px;border-radius:4px;border:1px solid #ddd;background-image:url(\"data:image/png;base64,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\");background-repeat:no-repeat;background-size:20px;background-position:5px;will-change:border-color,box-shadow,background-color;transition:border-color .3s ease-in-out,box-shadow .3s ease-in-out,background-color .3s ease-in-out}.sp-search .sp-search-input:focus{border:3px solid #fff}.sp-search .sp-search-input.sp-search-input--rtl{direction:rtl}div.sp-result-area{background-color:#fff;min-width:300px;max-height:320px;overflow-y:auto;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif}div.sp-result-area ul.sp-results{background-color:#fff;list-style:none;margin:0;padding:0;max-height:300px;overflow-y:auto}div.sp-result-area ul.sp-results li{position:relative;line-height:1.5;padding:6px 10px 6px 20px;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s}div.sp-result-area ul.sp-results li[data-level=\"1\"]{padding-left:30px}div.sp-result-area ul.sp-results li[data-level=\"2\"]{padding-left:35px}div.sp-result-area ul.sp-results li[data-level=\"3\"]{padding-left:40px}div.sp-result-area ul.sp-results li.sp-has-children{padding-left:30px}div.sp-result-area ul.sp-results li.sp-has-children>.sp-arrow{position:absolute;left:10px;top:11px;transform:rotate(-90deg);width:10px;height:10px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #666;transition:transform .2s;cursor:pointer}.sp-selected{background-color:#f0f7ff;color:#0083ff}.sp-arrow{transition:transform .2s}.sp-expanded .sp-arrow{transform:rotate(90deg)}div.sp-result-area ul.sp-results li.sp-expanded>.sp-arrow{transform:translateY(50%)}div.sp-result-area ul.sp-results .sp-sub-list{list-style:none;padding-left:15px;margin:0;overflow:hidden;transition:max-height .3s ease}div.sp-result-area ul.sp-results li .sp-item-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 0}div.sp-result-area ul.sp-results li.sp-over{background-color:#d6ebff!important;color:#000!important}div.sp-result-area ul.sp-results li.sp-selected{color:#0083ff;background-color:#f0f7ff}div.sp-result-area ul.sp-results li:hover{background-color:#f5f5f5}div.sp-result-area div.sp-result-message{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif;padding:10px;font-size:14px;text-align:center}div.sp-result-area table.sp-table{width:100%;border-spacing:0}div.sp-result-area table.sp-table td,div.sp-result-area table.sp-table th{font-size:14px;line-height:1.43;border:0!important}div.sp-result-area table.sp-table th{padding:0 8px 5px;font-weight:600;font-size:15px;color:#333;text-align:left}div.sp-result-area table.sp-table td{padding:4px 8px;color:#333}div.sp-result-area table.sp-table tbody tr.sp-over td{background-color:#d6ebff!important;color:#000!important;cursor:pointer}div.sp-result-area table.sp-table tbody tr.sp-selected td{color:#0083ff;cursor:default}div.sp-result-area table.sp-table tbody tr.sp-rtl td,div.sp-result-area table.sp-table thead tr.sp-rtl th{direction:rtl;text-align:right}div.sp-pagination{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif;padding:0;background-color:#fff;position:relative;border-bottom-left-radius:2px;border-bottom-right-radius:2px;text-align:center;font-size:14px}div.sp-pagination div.sp-page-info{height:38px;line-height:38px;font-weight:400;color:#333}div.sp-pagination ul{position:absolute;top:0;padding:0;margin:0;text-align:left;border-bottom-left-radius:2px;border-bottom-right-radius:2px;width:100%;height:100%;line-height:38px;background:rgba(226,239,253,.3)}div.sp-pagination ul li{display:inline-block;text-align:center}div.sp-pagination ul li a{display:inline-block;padding:7px 7px 5px;font-size:14px;color:#0576f3;text-decoration:none;cursor:pointer;height:28px;line-height:1;background:transparent;font-weight:700}div.sp-pagination ul li a:hover{color:#3179f5;font-weight:700}div.sp-pagination ul li.sp-right{float:right}div.sp-pagination ul lifirst-child{border-bottom-left-radius:2px}div.sp-pagination ul lilast-child{border-bottom-right-radius:2px}div.sp-pagination ul li.sp-disabled a{color:#666;font-weight:400}div.sp-message{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,\\\\5FAE\\8F6F\\96C5\\9ED1,Arial,sans-serif;padding:10px;position:relative;background-color:#e4eaee;color:#000}div.sp-message i{position:absolute;top:6px;font-size:22px}div.sp-message span{margin-left:3px;font-size:14px}.sp-message-slide-enter-active,.sp-message-slide-leave-active{transition:opacity .3s}.sp-message-slide-enter,.sp-message-slide-leave-to{opacity:0}.sp-message-slide-enter-to,.sp-message-slide-leave{opacity:1}", ""]);
586
+
587
+ // exports
588
+
589
+
590
+ /***/ }),
591
+ /* 7 */
592
+ /***/ (function(module, exports) {
593
+
594
+ /**
595
+ * Translates the list format produced by css-loader into something
596
+ * easier to manipulate.
597
+ */
598
+ module.exports = function listToStyles (parentId, list) {
599
+ var styles = []
600
+ var newStyles = {}
601
+ for (var i = 0; i < list.length; i++) {
602
+ var item = list[i]
603
+ var id = item[0]
604
+ var css = item[1]
605
+ var media = item[2]
606
+ var sourceMap = item[3]
607
+ var part = {
608
+ id: parentId + ':' + i,
609
+ css: css,
610
+ media: media,
611
+ sourceMap: sourceMap
612
+ }
613
+ if (!newStyles[id]) {
614
+ styles.push(newStyles[id] = { id: id, parts: [part] })
615
+ } else {
616
+ newStyles[id].parts.push(part)
617
+ }
618
+ }
619
+ return styles
620
+ }
621
+
622
+
623
+ /***/ }),
624
+ /* 8 */
625
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
626
+
627
+ "use strict";
628
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__styles_dropdown_css__ = __webpack_require__(9);
629
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__styles_dropdown_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__styles_dropdown_css__);
630
+ 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; }
631
+
632
+
633
+
634
+ /* harmony default export */ __webpack_exports__["a"] = ({
635
+ name: 'v-dropdown',
636
+ props: {
637
+ align: {
638
+ type: String,
639
+ default: 'left'
640
+ },
641
+ embed: {
642
+ type: Boolean,
643
+ default: false
644
+ },
645
+ border: {
646
+ type: Boolean,
647
+ default: true
648
+ },
649
+ rightClick: {
650
+ type: Boolean,
651
+ default: false
652
+ },
653
+ toggle: {
654
+ type: Boolean,
655
+ default: true
656
+ },
657
+ manual: {
658
+ type: Boolean,
659
+ default: false
660
+ },
661
+ disabled: {
662
+ type: Boolean,
663
+ default: false
664
+ },
665
+ animated: {
666
+ type: [String, Boolean],
667
+ default: true
668
+ },
669
+ width: Number,
670
+ dropWidth: Number,
671
+ dropClass: '',
672
+ fullWidth: {
673
+ type: Boolean,
674
+ default: false
675
+ }
676
+ },
677
+ data: function data() {
678
+ return {
679
+ show: false,
680
+ styleSheet: { top: '', left: '' },
681
+ dropdownClass: 'v-dropdown-container',
682
+ dropUp: false,
683
+ x: null,
684
+ y: null
685
+ };
686
+ },
687
+
688
+ computed: {
689
+ animate: function animate() {
690
+ if (typeof this.animated === 'string') return this.animated;
691
+ if (!this.embed && this.animated) return this.dropUp ? 'animate-up' : 'animate-down';
692
+ return '';
693
+ }
694
+ },
695
+ render: function render(h) {
696
+ var _class,
697
+ _this = this;
698
+
699
+ var children = [];
700
+ if ('caller' in this.$scopedSlots && !this.embed) {
701
+ children.push(this.$scopedSlots.caller());
702
+ }
703
+ children.push(h('transition', {
704
+ props: {
705
+ name: this.animate
706
+ }
707
+ }, [h('div', {
708
+ class: (_class = {}, _defineProperty(_class, this.dropClass, this.dropClass !== ''), _defineProperty(_class, this.dropdownClass, true), _defineProperty(_class, 'v-dropdown-embed', this.embed), _defineProperty(_class, 'v-dropdown-no-border', !this.border), _class),
709
+ style: this.styleSheet,
710
+ directives: [{ name: 'show', value: this.show }],
711
+ ref: 'dropdown',
712
+ on: {
713
+ mousedown: function mousedown(e) {
714
+ e.stopPropagation();
715
+ }
716
+ }
717
+ }, this.$slots.default)]));
718
+ return h('div', {
719
+ class: {
720
+ 'v-dropdown-caller': true,
721
+ 'v-dropdown-caller--full-width': this.fullWidth
722
+ },
723
+ on: {
724
+ click: function click(e) {
725
+ if (_this.embed || _this.rightClick || _this.manual) return;
726
+ e.stopPropagation();
727
+ _this.visible();
728
+ },
729
+ // 鼠标点击
730
+ contextmenu: function contextmenu(e) {
731
+ if (_this.embed || _this.manual || !_this.rightClick) return;
732
+ e.stopPropagation();
733
+ e.preventDefault();
734
+
735
+ var info = _this.scrollInfo();
736
+ _this.x = e.pageX || e.clientX + info.x;
737
+ _this.y = e.pageY || e.clientY + info.y;
738
+ _this.visible();
739
+ }
740
+ }
741
+ }, children);
742
+ },
743
+
744
+ methods: {
745
+ visible: function visible() {
746
+ var outside = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
747
+
748
+ if (this.disabled) return;
749
+ if (this.show && !this.toggle && !outside) return;
750
+ // 计算向上或者向下展示
751
+ if (!this.show && !this.embed && this.$slots.caller) this.adjust();
752
+
753
+ this.show = !this.show;
754
+ this.$emit('show', this.show);
755
+ },
756
+
757
+ /**
758
+ * 点击其他位置隐藏
759
+ */
760
+ whole: function whole(e) {
761
+ var _this2 = this;
762
+
763
+ if (this.show) {
764
+ var inCaller = this.eventPath(e).findIndex(function (val) {
765
+ return val === _this2.$el;
766
+ }) !== -1;
767
+ if (inCaller && !this.toggle && !this.rightClick) return;
768
+ if (!inCaller || inCaller && this.rightClick) {
769
+ this.visible(true);
770
+ }
771
+ }
772
+ },
773
+
774
+ /**
775
+ * 调整下拉显示位置
776
+ */
777
+ adjust: function adjust() {
778
+ var pos = this.$el.getBoundingClientRect();
779
+ var menu = null;
780
+
781
+ if (this.show) menu = this.$refs.dropdown.getBoundingClientRect();else {
782
+ this.$refs.dropdown.style.visibility = 'hidden';
783
+ this.$refs.dropdown.style.display = 'inline-block';
784
+ menu = this.$refs.dropdown.getBoundingClientRect();
785
+ // 获取位置数据后恢复下拉样式
786
+ this.$refs.dropdown.style.visibility = 'visible';
787
+ this.$refs.dropdown.style.display = 'none';
788
+ }
789
+
790
+ this.adjustTop(pos, menu);
791
+ this.styleSheet.left = this.adjustLeft(pos, menu) + 'px';
792
+ this.styleSheet.width = pos.width + 'px';
793
+ },
794
+
795
+ /**
796
+ * 计算顶部方向
797
+ */
798
+ adjustTop: function adjustTop(pos, menu) {
799
+ var gap = 5;
800
+ var scrollTop = window.pageYOffset;
801
+ var viewHeight = document.documentElement.clientHeight;
802
+ var srcTop = this.rightClick ? this.y : pos.top + scrollTop;
803
+ var t = this.rightClick ? this.y : pos.top + pos.height + gap + scrollTop;
804
+ var overDown = false;var overUp = false;var up = false;
805
+ if (t + menu.height + 20 > scrollTop + viewHeight) overDown = true;
806
+ if (srcTop - gap - menu.height < scrollTop) overUp = true;
807
+
808
+ if (!overUp && overDown) {
809
+ t = srcTop - gap - menu.height;
810
+ up = true;
811
+ }
812
+ this.dropUp = up;
813
+ this.styleSheet.top = t + 'px';
814
+ if (pos.top < 60 || pos.top > document.documentElement.clientHeight) {
815
+ this.$refs.dropdown.style.display = 'none';
816
+ } else {
817
+ if (this.show) {
818
+ this.$refs.dropdown.style.display = 'inline-block';
819
+ }
820
+ }
821
+ },
822
+ adjustLeft: function adjustLeft(pos, menu) {
823
+ var scrollLeft = window.pageXOffset;var viewWid = document.documentElement.clientWidth;
824
+ var wid = this.rightClick ? 0 : pos.width;
825
+ var left = this.rightClick ? this.x : pos.left + scrollLeft;
826
+ var center = left + wid / 2 - menu.width / 2;
827
+ var right = left + wid - menu.width;
828
+
829
+ switch (this.align) {
830
+ case 'left':
831
+ return left + menu.width > scrollLeft + viewWid ? right : left;
832
+ case 'center':
833
+ if (center + menu.width > scrollLeft + viewWid) return right;else if (right < scrollLeft) return left;else return center;
834
+ case 'right':
835
+ return right < scrollLeft ? left : right;
836
+ }
837
+ },
838
+ scrollInfo: function scrollInfo() {
839
+ var supportPageOffset = window.pageXOffset !== undefined;
840
+ var isCSS1Compat = (document.compatMode || '') === 'CSS1Compat';
841
+
842
+ return {
843
+ x: supportPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft,
844
+ y: supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop
845
+ };
846
+ },
847
+
848
+ /**
849
+ * 返回事件的路径,该路径是将在其上调用侦听器的对象数组
850
+ */
851
+ eventPath: function eventPath(e) {
852
+ if ('composedPath' in e) return e.composedPath();
853
+ if ('path' in e) return e.path;
854
+ var path = [];
855
+ var currentElem = e.target;
856
+ while (currentElem) {
857
+ path.push(currentElem);
858
+ currentElem = currentElem.parentElement;
859
+ }
860
+ if (path.indexOf(window) === -1 && path.indexOf(document) === -1) path.push(document);
861
+ if (path.indexOf(window) === -1) path.push(window);
862
+ return path;
863
+ },
864
+ isIE: function isIE() {
865
+ // ie?
866
+ if (!!window.ActiveXObject || 'ActiveXObject' in window) {
867
+ return true;
868
+ } else {
869
+ return false;
870
+ }
871
+ }
872
+ },
873
+ mounted: function mounted() {
874
+ if (this.width) this.styleSheet.width = this.width + 'px';
875
+ if (this.embed) this.visible();else {
876
+ // this.$refs.dropdown.parentElement.appendChild(this.$refs.dropdown)
877
+ document.body.appendChild(this.$refs.dropdown);
878
+ document.body.addEventListener('mousedown', this.whole);
879
+ }
880
+ if (this.dropWidth > 0) this.styleSheet['min-width'] = this.dropWidth + 'px';
881
+ window.addEventListener('scroll', this.adjust, true);
882
+ },
883
+ beforeDestroy: function beforeDestroy() {
884
+ // 删除下拉层
885
+ if (!this.embed) {
886
+ document.body.removeEventListener('mousedown', this.whole);
887
+ if (this.isIE()) {
888
+ this.$refs.dropdown.removeNode(true);
889
+ } else {
890
+ this.$refs.dropdown.remove();
891
+ }
892
+ //
893
+ }
894
+ window.removeEventListener('scroll', this.adjust, true);
895
+ },
896
+ destroyed: function destroyed() {
897
+ if (!this.embed) {
898
+ if (this.isIE()) {
899
+ this.$el.removeNode(true);
900
+ } else {
901
+ this.$el.remove();
902
+ }
903
+ }
904
+ }
905
+ });
906
+
907
+ /***/ }),
908
+ /* 9 */
909
+ /***/ (function(module, exports, __webpack_require__) {
910
+
911
+ // style-loader: Adds some css to the DOM by adding a <style> tag
912
+
913
+ // load the styles
914
+ var content = __webpack_require__(10);
915
+ if(typeof content === 'string') content = [[module.i, content, '']];
916
+ if(content.locals) module.exports = content.locals;
917
+ // add the styles to the DOM
918
+ var update = __webpack_require__(1)("f94d1d88", content, true);
919
+
920
+ /***/ }),
921
+ /* 10 */
922
+ /***/ (function(module, exports, __webpack_require__) {
923
+
924
+ exports = module.exports = __webpack_require__(0)(false);
925
+ // imports
926
+
927
+
928
+ // module
929
+ exports.push([module.i, "div.v-dropdown-caller{display:inline-block;width:100%}div.v-dropdown-container{display:inline-block;margin:0;padding:0;top:0;left:0;border:1px solid #d6d7d7;position:absolute;box-sizing:border-box;background-color:#fff;-webkit-border-radius:2px;border-radius:2px;overflow:hidden;z-index:3000;-webkit-box-shadow:0 3px 12px rgba(0,0,0,.2);-moz-box-shadow:0 3px 12px rgba(0,0,0,.2);box-shadow:0 3px 12px rgba(0,0,0,.2);will-change:opacity,transform}div.v-dropdown-container.v-dropdown-embed{position:relative;box-shadow:0 1px 6px rgba(0,0,0,.12)!important;z-index:100}div.v-dropdown-container.v-dropdown-no-border{border:0;box-shadow:0 0 3px 0 #5371de}.animate-down-enter,.animate-down-leave-to{-webkit-transform:translateY(-6px);transform:translateY(-6px);opacity:0}.animate-up-enter,.animate-up-leave-to{-webkit-transform:translateY(6px);transform:translateY(6px);opacity:0}.animate-down-enter-active,.animate-down-leave-active,.animate-up-enter-active,.animate-up-leave-active{-webkit-transition:opacity 50ms,transform 50ms;transition:opacity 50ms,transform 50ms}.animate-down-enter-to,.animate-down-leave,.animate-up-enter-to,.animate-up-leave{-webkit-transform:none;transform:none;opacity:1}", ""]);
930
+
931
+ // exports
932
+
933
+
934
+ /***/ }),
935
+ /* 11 */
936
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
937
+
938
+ "use strict";
939
+ /* harmony default export */ __webpack_exports__["a"] = ({
940
+ name: 'SelectPageTag',
941
+ props: {
942
+ picked: Array,
943
+ disabled: Boolean,
944
+ placeholder: String
945
+ },
946
+ inject: ['renderCell'],
947
+ render: function render(h) {
948
+ var _this = this;
949
+
950
+ var tags = [];
951
+ if (this.picked.length) {
952
+ this.picked.forEach(function (val, index) {
953
+ var tag = [];
954
+ // tag content
955
+ tag.push(h('span', {
956
+ domProps: {
957
+ innerHTML: _this.renderCell(val)
958
+ }
959
+ }));
960
+ if (!_this.disabled) {
961
+ tag.push(h('span', {
962
+ on: {
963
+ click: function click(e) {
964
+ e.stopPropagation();
965
+ _this.remove(index);
966
+ }
967
+ }
968
+ }, [h('i', { class: 'sp-iconfont sp-icon-close' })]));
969
+ }
970
+ tags.push(h('span', { class: 'sp-selected-tag', key: index }, tag));
971
+ });
972
+ } else {
973
+ tags.push(h('span', { class: 'sp-placeholder' }, this.placeholder));
974
+ }
975
+ return h('div', { class: 'sp-base sp-inputs' }, tags);
976
+ },
977
+
978
+ methods: {
979
+ remove: function remove(index) {
980
+ this.$emit('remove', index);
981
+ }
982
+ }
983
+ });
984
+
985
+ /***/ }),
986
+ /* 12 */
987
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
988
+
989
+ "use strict";
990
+ /* harmony default export */ __webpack_exports__["a"] = ({
991
+ name: 'SelectPageSelect',
992
+ props: {
993
+ picked: Array,
994
+ disabled: Boolean,
995
+ clear: Boolean,
996
+ placeholder: String
997
+ },
998
+ inject: ['i18n', 'renderCell'],
999
+ render: function render(h) {
1000
+ var _this = this;
1001
+
1002
+ var children = [];
1003
+ var result = null;
1004
+ if (this.picked && this.picked.length) {
1005
+ result = h('span', { domProps: { innerHTML: this.renderCell(this.picked[0]) } });
1006
+ } else {
1007
+ result = h('span', { class: 'sp-placeholder' }, this.placeholder);
1008
+ }
1009
+ children.push(h('div', { class: 'sp-base sp-input' }, [result]));
1010
+ // clear button
1011
+ if (this.clear && this.picked && this.picked.length && !this.disabled) {
1012
+ children.push(h('div', {
1013
+ class: 'sp-clear',
1014
+ attrs: {
1015
+ title: this.i18n.clear
1016
+ },
1017
+ on: {
1018
+ click: function click(e) {
1019
+ e.stopPropagation();
1020
+ _this.remove();
1021
+ }
1022
+ }
1023
+ }, [h('i', { class: 'sp-iconfont sp-icon-close' })]));
1024
+ }
1025
+ return h('div', children);
1026
+ },
1027
+
1028
+ methods: {
1029
+ remove: function remove() {
1030
+ this.$emit('remove');
1031
+ }
1032
+ }
1033
+ });
1034
+
1035
+ /***/ }),
1036
+ /* 13 */
1037
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1038
+
1039
+ "use strict";
1040
+ var FIRST = 1;
1041
+ /* harmony default export */ __webpack_exports__["a"] = ({
1042
+ name: 'SelectPagePagination',
1043
+ render: function render(h) {
1044
+ var _this = this;
1045
+
1046
+ var list = [];
1047
+ /**
1048
+ * 计算页码
1049
+ */
1050
+
1051
+ var genItem = function genItem(classes, title, action) {
1052
+ return h('li', {
1053
+ class: classes,
1054
+ attrs: {
1055
+ title: title
1056
+ }
1057
+ }, [h('a', {
1058
+ attrs: { href: 'javascript:void(0);' },
1059
+ on: { click: function click() {
1060
+ return _this.switchPage(action);
1061
+ } }
1062
+ }, [h('i', { class: 'sp-iconfont sp-icon-' + action })])]);
1063
+ };
1064
+ list.push(genItem({ 'sp-disabled': this.value === FIRST }, this.i18n.first, 'first'));
1065
+ list.push(genItem({ 'sp-disabled': this.value === FIRST }, this.i18n.prev, 'previous'));
1066
+ list.push(genItem({ 'sp-disabled': this.value === this.totalPage, 'sp-right': true }, this.i18n.last, 'last'));
1067
+ list.push(genItem({ 'sp-disabled': this.value === this.totalPage, 'sp-right': true }, this.i18n.next, 'next'));
1068
+
1069
+ return h('div', { class: 'sp-pagination' }, [h('div', { class: 'sp-page-info' }, [h('span', this.pageInfo.page_num_text), h('span', { style: { 'color': '#3179F5', 'font-weight': 'bold' } }, this.pageInfo.page_num), h('span', this.pageInfo.page_count_text), h('span', { style: { 'color': '#3179F5', 'font-weight': 'bold' } }, this.pageInfo.page_count), h('span', { style: { 'margin-right': '5px' } }, this.pageInfo.page_count_label), h('span', this.pageInfo.row_count_text), h('span', { style: { 'color': '#3179F5', 'font-weight': 'bold' } }, this.pageInfo.row_count), h('span', this.pageInfo.row_count_label)]), h('ul', list)]);
1070
+ },
1071
+
1072
+ props: {
1073
+ value: {
1074
+ type: Number,
1075
+ default: 1
1076
+ },
1077
+ pageSize: Number,
1078
+ totalRow: Number
1079
+ },
1080
+ inject: ['i18n'],
1081
+ data: function data() {
1082
+ return {
1083
+ lastNumber: -1
1084
+ };
1085
+ },
1086
+
1087
+ computed: {
1088
+ pageInfo: function pageInfo() {
1089
+ return {
1090
+ page_num_text: '第',
1091
+ page_num: this.value,
1092
+ page_count_text: ' / ',
1093
+ page_count: this.totalPage,
1094
+ page_count_label: ' 页 ',
1095
+ row_count_text: '( 共 ',
1096
+ row_count: this.totalRow,
1097
+ row_count_label: ' 条记录 )'
1098
+
1099
+ // this.i18n.page_info
1100
+ // .replace('page_num', this.value)
1101
+ // .replace('page_count', this.totalPage)
1102
+ // .replace('row_count', this.totalRow)
1103
+ };
1104
+ },
1105
+ totalPage: function totalPage() {
1106
+ return Math.ceil(this.totalRow / this.pageSize);
1107
+ }
1108
+ },
1109
+ methods: {
1110
+ getPageNumber: function getPageNumber(action) {
1111
+ switch (action) {
1112
+ case 'first':
1113
+ return FIRST;
1114
+ case 'previous':
1115
+ return this.value > FIRST ? this.value - 1 : FIRST;
1116
+ case 'next':
1117
+ return this.value < this.totalPage ? this.value + 1 : this.totalPage;
1118
+ case 'last':
1119
+ return this.totalPage;
1120
+ }
1121
+ },
1122
+ switchPage: function switchPage(action) {
1123
+ var pageNumber = this.getPageNumber(action);
1124
+ // if (pageNumber === this.lastNumber) return
1125
+ if (pageNumber) this.$emit('input', pageNumber);
1126
+ this.lastNumber = pageNumber;
1127
+ }
1128
+ }
1129
+ });
1130
+
1131
+ /***/ }),
1132
+ /* 14 */
1133
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1134
+
1135
+ "use strict";
1136
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_view__ = __webpack_require__(2);
1137
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
1138
+
1139
+ 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; }
1140
+
1141
+ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
1142
+
1143
+
1144
+
1145
+ /* harmony default export */ __webpack_exports__["a"] = ({
1146
+ name: 'SelectPageList',
1147
+ mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_view__["a" /* default */]],
1148
+ data: function data() {
1149
+ return {
1150
+ expandedKeys: new Set(),
1151
+ selectedKeys: new Set(),
1152
+ newList: [{
1153
+ 'name': '超级管理员',
1154
+ 'code': '512501196512305186',
1155
+ 'jpcode': 'null',
1156
+ 'scode': ''
1157
+ }, {
1158
+ 'name': '测试用户',
1159
+ 'code': '512501196512305185',
1160
+ 'jpcode': 'null',
1161
+ 'scode': '',
1162
+ 'subTreeData': [{
1163
+ 'name': '测试用户01',
1164
+ 'code': '512501196512305185',
1165
+ 'jpcode': 'null',
1166
+ 'scode': ''
1167
+ }, {
1168
+ 'name': '测试用户02',
1169
+ 'code': '512501196512305110',
1170
+ 'jpcode': 'null',
1171
+ 'scode': '',
1172
+ 'subTreeData': [{
1173
+ 'name': '测试用户02-01',
1174
+ 'code': '512501196512305112',
1175
+ 'jpcode': 'null',
1176
+ 'scode': ''
1177
+ }, {
1178
+ 'name': '测试用户02-02',
1179
+ 'code': '512501196512305113',
1180
+ 'jpcode': 'null',
1181
+ 'scode': '',
1182
+ 'subTreeData': []
1183
+ }]
1184
+ }, {
1185
+ 'name': '测试用户03',
1186
+ 'code': '512501196512305187',
1187
+ 'jpcode': 'null',
1188
+ 'scode': ''
1189
+ }]
1190
+ }, {
1191
+ 'name': '总队1',
1192
+ 'code': '510183199002026763',
1193
+ 'jpcode': 'null',
1194
+ 'scode': ''
1195
+ }, {
1196
+ 'name': '总队2',
1197
+ 'code': '510183199002026764',
1198
+ 'jpcode': 'null',
1199
+ 'scode': ''
1200
+ }, {
1201
+ 'name': '二看所领导',
1202
+ 'code': '420684199002026706',
1203
+ 'jpcode': 'null',
1204
+ 'scode': '',
1205
+ 'subTreeData': [{
1206
+ 'name': '二看所领导-01',
1207
+ 'code': '512501196512305701',
1208
+ 'jpcode': 'null',
1209
+ 'scode': ''
1210
+ }, {
1211
+ 'name': '二看所领导-02',
1212
+ 'code': '512501196512305702',
1213
+ 'jpcode': 'null',
1214
+ 'scode': ''
1215
+ }]
1216
+ }, {
1217
+ 'name': '二看参评人',
1218
+ 'code': '420684199002026714',
1219
+ 'jpcode': 'null',
1220
+ 'scode': ''
1221
+ }, {
1222
+ 'name': '三看参评人01',
1223
+ 'code': '510183199002026767',
1224
+ 'jpcode': 'null',
1225
+ 'scode': ''
1226
+ }, {
1227
+ 'name': '三看参评人02',
1228
+ 'code': '510183199002026768',
1229
+ 'jpcode': 'null',
1230
+ 'scode': ''
1231
+ }, {
1232
+ 'name': '一看所领导',
1233
+ 'code': '420684199002026722',
1234
+ 'jpcode': 'null',
1235
+ 'scode': ''
1236
+ }, {
1237
+ 'name': '一看参评人',
1238
+ 'code': '420684199002026749',
1239
+ 'jpcode': 'null',
1240
+ 'scode': ''
1241
+ }, {
1242
+ 'name': '超级管理员',
1243
+ 'code': '512501196512305181',
1244
+ 'jpcode': 'null',
1245
+ 'scode': ''
1246
+ }, {
1247
+ 'name': '超级管理员',
1248
+ 'code': '512501196512305180',
1249
+ 'jpcode': 'null',
1250
+ 'scode': ''
1251
+ }, {
1252
+ 'name': '超级管理员',
1253
+ 'code': '512501196512305188',
1254
+ 'jpcode': 'null',
1255
+ 'scode': ''
1256
+ }, {
1257
+ 'name': '超级管理员',
1258
+ 'code': '512501196512305117',
1259
+ 'jpcode': 'null',
1260
+ 'scode': ''
1261
+ }]
1262
+ };
1263
+ },
1264
+
1265
+ methods: {
1266
+ generateKey: function generateKey(item, level, index) {
1267
+ return item.code + '-' + level + '-' + index;
1268
+ },
1269
+
1270
+
1271
+ // 递归查找选中项的路径
1272
+ findSelectedPaths: function findSelectedPaths(items, selectedCodes) {
1273
+ var _this = this;
1274
+
1275
+ var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
1276
+ var currentPath = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
1277
+
1278
+ // console.log(items);
1279
+ // debugger
1280
+ var paths = [];
1281
+
1282
+ items.forEach(function (item, index) {
1283
+ var key = _this.generateKey(item, level, index);
1284
+ var newPath = [].concat(_toConsumableArray(currentPath), [key]);
1285
+
1286
+ if (selectedCodes.includes(item.code)) {
1287
+ paths.push(newPath);
1288
+ }
1289
+
1290
+ if (item.subTreeData && item.subTreeData.length) {
1291
+ paths.push.apply(paths, _toConsumableArray(_this.findSelectedPaths(item.subTreeData, selectedCodes, level + 1, newPath)));
1292
+ }
1293
+ });
1294
+
1295
+ return paths;
1296
+ },
1297
+
1298
+ // 切换展开状态
1299
+ toggleExpand: function toggleExpand(key) {
1300
+ var newSet = new Set(this.expandedKeys);
1301
+ if (newSet.has(key)) {
1302
+ newSet.delete(key);
1303
+ } else {
1304
+ newSet.add(key);
1305
+ }
1306
+ this.expandedKeys = newSet;
1307
+ },
1308
+
1309
+
1310
+ // 设置选中项
1311
+ setSelected: function setSelected(item, key) {
1312
+ this.selectedKeys = new Set([key]);
1313
+ // debugger
1314
+ this.rowClick(item);
1315
+
1316
+ // 更新展开路径
1317
+ this.updateExpandedPaths();
1318
+ },
1319
+ updateExpandedPaths: function updateExpandedPaths() {
1320
+ var _this2 = this;
1321
+
1322
+ this.expandedKeys = new Set();
1323
+
1324
+ var selectedCodes = Array.from(this.selectedKeys).map(function (key) {
1325
+ console.log(key);
1326
+ return key.split('-')[0]; // 从key中提取code
1327
+ });
1328
+
1329
+ // 查找所有已选中项的路径
1330
+ var allPaths = this.findSelectedPaths(this.list, selectedCodes);
1331
+
1332
+ // 展开所有路径的父级
1333
+ allPaths.forEach(function (path) {
1334
+ path.slice(0, -1).forEach(function (k) {
1335
+ return _this2.expandedKeys.add(k);
1336
+ });
1337
+ });
1338
+ },
1339
+
1340
+
1341
+ // 处理数据,标记选中状态
1342
+ processData: function processData(items) {
1343
+ var _this3 = this;
1344
+
1345
+ var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
1346
+
1347
+ return items.map(function (item, index) {
1348
+ var key = _this3.generateKey(item, level, index);
1349
+ var isSelected = _this3.selectedKeys.has(key);
1350
+
1351
+ var processed = _extends({}, item, {
1352
+ _key: key,
1353
+ _level: level,
1354
+ _isSelected: isSelected
1355
+ });
1356
+
1357
+ if (item.subTreeData && item.subTreeData.length) {
1358
+ processed.subTreeData = _this3.processData(item.subTreeData, level + 1);
1359
+ }
1360
+
1361
+ return processed;
1362
+ });
1363
+ },
1364
+ renderItem: function renderItem(h, item) {
1365
+ var _this4 = this;
1366
+
1367
+ var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
1368
+
1369
+ var hasChildren = item.subTreeData && item.subTreeData.length > 0;
1370
+ var isExpanded = this.expandedKeys.has(item._key);
1371
+
1372
+ return h('li', {
1373
+ class: [this.rowClass(item, level), _defineProperty({
1374
+ 'sp-has-children': hasChildren,
1375
+ 'sp-expanded': isExpanded,
1376
+ 'sp-selected': item.isSelected
1377
+ }, 'sp-level-' + level, true)],
1378
+ key: item._key,
1379
+ attrs: { title: item[this.showField] || '' }
1380
+ }, [h('div', {
1381
+ class: 'sp-item-content',
1382
+ on: {
1383
+ click: function click(e) {
1384
+ e.stopPropagation();
1385
+ // console.log(item);
1386
+ // debugger
1387
+ _this4.setSelected(item, item._key);
1388
+ }
1389
+ },
1390
+ domProps: { innerHTML: this.renderCell(item) }
1391
+ }), hasChildren && h('span', {
1392
+ class: 'sp-arrow',
1393
+ on: {
1394
+ click: function click(e) {
1395
+ e.stopPropagation();
1396
+ _this4.toggleExpand(item._key);
1397
+ }
1398
+ }
1399
+ }), hasChildren && isExpanded && h('ul', {
1400
+ class: 'sp-sub-list'
1401
+ }, item.subTreeData.map(function (child) {
1402
+ return _this4.renderItem(h, child, level + 1);
1403
+ }))]);
1404
+ }
1405
+ },
1406
+ computed: {
1407
+ processedList: function processedList() {
1408
+ return this.processData(this.list);
1409
+ }
1410
+ },
1411
+ mounted: function mounted() {
1412
+ console.log(this.picked);
1413
+ },
1414
+
1415
+ watch: {
1416
+ // 监听选中项的变化
1417
+ picked: {
1418
+ immediate: true,
1419
+ handler: function handler(newVal) {
1420
+ var _this5 = this;
1421
+
1422
+ // debugger
1423
+ if (Array.isArray(newVal)) {
1424
+ // 初始化选中状态
1425
+ this.selectedKeys = new Set();
1426
+ var selectedCodes = newVal.map(function (item) {
1427
+ return item.code;
1428
+ });
1429
+
1430
+ // 查找所有选中项的key
1431
+ var allKeys = [];
1432
+ var findKeys = function findKeys(items) {
1433
+ var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
1434
+
1435
+ items.forEach(function (item, index) {
1436
+ var key = _this5.generateKey(item, level, index);
1437
+ if (selectedCodes.includes(item.code)) {
1438
+ allKeys.push(key);
1439
+ }
1440
+ if (item.subTreeData) {
1441
+ findKeys(item.subTreeData, level + 1);
1442
+ }
1443
+ });
1444
+ };
1445
+ findKeys(this.list);
1446
+
1447
+ this.selectedKeys = new Set(allKeys);
1448
+ this.updateExpandedPaths();
1449
+ }
1450
+ }
1451
+ }
1452
+ },
1453
+
1454
+ render: function render(h) {
1455
+ var _this6 = this;
1456
+
1457
+ return h('ul', {
1458
+ class: 'sp-results',
1459
+ style: { minHeight: this.dropHeight + 'px' },
1460
+ on: { mouseleave: function mouseleave() {
1461
+ return _this6.highlight(-1);
1462
+ } }
1463
+ }, this.processedList.map(function (item) {
1464
+ return _this6.renderItem(h, item);
1465
+ }));
1466
+ }
1467
+ });
1468
+
1469
+ /***/ }),
1470
+ /* 15 */
1471
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1472
+
1473
+ "use strict";
1474
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_view__ = __webpack_require__(2);
1475
+ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
1476
+
1477
+
1478
+ /* harmony default export */ __webpack_exports__["a"] = ({
1479
+ name: 'SelectPageTable',
1480
+ mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_view__["a" /* default */]],
1481
+ props: {
1482
+ tbColumns: Array
1483
+ },
1484
+ render: function render(h) {
1485
+ var _this = this;
1486
+
1487
+ return h('table', { class: 'sp-table' }, [
1488
+ // table thead
1489
+ h('thead', [h('tr', {
1490
+ class: { 'sp-rtl': this.rtl }
1491
+ }, this.tbColumns.map(function (val) {
1492
+ return h('th', val.title);
1493
+ }))]),
1494
+ // table tbody
1495
+ h('tbody', {
1496
+ on: {
1497
+ mouseleave: function mouseleave() {
1498
+ return _this.highlight(-1);
1499
+ }
1500
+ }
1501
+ }, this.list.map(function (val, index) {
1502
+ // table row
1503
+ return h('tr', {
1504
+ key: index,
1505
+ class: _this.rowClass(val, index),
1506
+ on: {
1507
+ click: function click(e) {
1508
+ e.stopPropagation();
1509
+ _this.rowClick(val);
1510
+ },
1511
+ mouseenter: function mouseenter() {
1512
+ return _this.highlight(_this.inPicked(val) ? -1 : index);
1513
+ }
1514
+ }
1515
+ }, _this.tbColumns.map(function (col, idx) {
1516
+ // table cells
1517
+ return h('td', {
1518
+ key: idx,
1519
+ domProps: {
1520
+ innerHTML: _this.renderColumn(val, col)
1521
+ }
1522
+ });
1523
+ }));
1524
+ }))]);
1525
+ },
1526
+
1527
+ methods: {
1528
+ renderColumn: function renderColumn(row, col) {
1529
+ if (!row || !Object.keys(row).length || !col || !col.data) return '';
1530
+ switch (_typeof(col.data)) {
1531
+ case 'string':
1532
+ return row[col.data];
1533
+ case 'function':
1534
+ return col.data(row);
1535
+ }
1536
+ }
1537
+ }
1538
+ });
1539
+
1540
+ /***/ }),
1541
+ /* 16 */
1542
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1543
+
1544
+ "use strict";
1545
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__language__ = __webpack_require__(17);
1546
+
1547
+
1548
+ /* harmony default export */ __webpack_exports__["a"] = ({
1549
+ props: {
1550
+ /**
1551
+ * 单选模式: '123'
1552
+ * 多选模式: '123, 124, 125'
1553
+ */
1554
+ value: String,
1555
+ params: Object,
1556
+ resultFormat: Function,
1557
+ title: {
1558
+ type: String,
1559
+ default: ''
1560
+ },
1561
+ appMark: {
1562
+ type: String,
1563
+ default: ''
1564
+ },
1565
+ placeholder: {
1566
+ type: String,
1567
+ default: ''
1568
+ },
1569
+ multiple: {
1570
+ type: Boolean,
1571
+ default: false
1572
+ },
1573
+ language: {
1574
+ type: String,
1575
+ default: 'cn'
1576
+ },
1577
+ keyField: {
1578
+ type: String,
1579
+ default: 'code'
1580
+ },
1581
+ showField: {
1582
+ type: [String, Function],
1583
+ default: 'name'
1584
+ },
1585
+ /**
1586
+ * 表格模型展示数据
1587
+ * title: [string] - 表题,
1588
+ * data: [string|function] - 展示数据
1589
+ * [
1590
+ * {title: 'full name', data: function(row){ return row.lastName + ' ' + row.firstName; }},
1591
+ * {title: 'age', data: 'age'},
1592
+ * {title: 'birthday', data: function(row){ return someformat(row.birthday); }}
1593
+ * ]
1594
+ */
1595
+ tbColumns: Array,
1596
+ sort: String,
1597
+ searchField: String,
1598
+ pageSize: {
1599
+ type: Number,
1600
+ default: 10
1601
+ },
1602
+ maxSelectLimit: {
1603
+ type: Number,
1604
+ default: 0
1605
+ },
1606
+ rtl: {
1607
+ type: Boolean,
1608
+ default: false
1609
+ },
1610
+ width: Number,
1611
+ disabled: {
1612
+ type: Boolean,
1613
+ default: false
1614
+ },
1615
+ dicName: { // 字典名称
1616
+ type: String,
1617
+ default: ''
1618
+ },
1619
+ selected: { // 选中项
1620
+ type: String,
1621
+ default: ''
1622
+ },
1623
+ filterField: { // 过滤条件
1624
+ type: String
1625
+ },
1626
+ isSearch: {
1627
+ type: Boolean,
1628
+ default: true
1629
+ },
1630
+ dropWidth: {
1631
+ type: Number,
1632
+ default: -1
1633
+ },
1634
+ dropClass: {
1635
+ type: String,
1636
+ default: ''
1637
+ },
1638
+ dropHeight: { // 下拉内容最小高度
1639
+ type: Number,
1640
+ default: 260
1641
+ },
1642
+ clear: {
1643
+ type: Boolean,
1644
+ default: true
1645
+ },
1646
+ requestType: { // 请求类型,dic字典[字典], loopData 获取数据循环, request 异步请求数据
1647
+ type: String,
1648
+ default: 'dic'
1649
+ },
1650
+ path: { // 请求地址
1651
+ type: String,
1652
+ default: ''
1653
+ },
1654
+ loopData: { // 循环数据
1655
+ type: Array,
1656
+ default: function _default() {}
1657
+ }
1658
+ },
1659
+ data: function data() {
1660
+ return {
1661
+ show: false,
1662
+ search: '',
1663
+ lastSearch: null,
1664
+ searchColumn: null,
1665
+ i18n: __WEBPACK_IMPORTED_MODULE_0__language__["a" /* default */]['cn'],
1666
+ message: '',
1667
+ highlight: -1,
1668
+ pagination: false,
1669
+ list: [],
1670
+ sortedList: null,
1671
+ picked: [],
1672
+ data: [],
1673
+ pageNumber: 1,
1674
+ totalRows: 0
1675
+ };
1676
+ },
1677
+
1678
+ computed: {
1679
+ headerTitle: function headerTitle() {
1680
+ var headerStr = this.i18n.items_selected;
1681
+ var replace = function replace(val) {
1682
+ return headerStr.replace('selected_count', '<b>' + val + '</b>');
1683
+ };
1684
+ if (this.picked.length) {
1685
+ return this.multiple ? replace(this.picked.length) : this.getResults();
1686
+ } else {
1687
+ return this.title;
1688
+ }
1689
+ },
1690
+ placeholderString: function placeholderString() {
1691
+ return '请选择';
1692
+ },
1693
+ inputClasses: function inputClasses() {
1694
+ return { 'sp-input-container': true, 'sp-open': this.show, 'sp-disabled': this.disabled };
1695
+ },
1696
+ keys: function keys() {
1697
+ var _this = this;
1698
+
1699
+ return this.picked.map(function (value) {
1700
+ return value[_this.keyField];
1701
+ }).join(',');
1702
+ },
1703
+ names: function names() {
1704
+ return this.picked.map(function (value) {
1705
+ return value['name'];
1706
+ }).join(',');
1707
+ }
1708
+ },
1709
+ watch: {
1710
+ value: function value(val) {
1711
+ if (val) {
1712
+ if (val !== this.keys) {
1713
+ this.initSelection();
1714
+ }
1715
+ } else {
1716
+ this.remove();
1717
+ }
1718
+ this.$emit('change', val);
1719
+ },
1720
+ data: function data() {
1721
+ // this.sortList()
1722
+ // this.populate()
1723
+ if (this.picked.length) this.picked = [];else this.initSelection();
1724
+ },
1725
+ picked: function picked(val) {
1726
+ var _this2 = this;
1727
+
1728
+ if (this.message && this.maxSelectLimit && val.length < this.maxSelectLimit) this.message = '';
1729
+ this.$nextTick(function () {
1730
+ if (_this2.show) {
1731
+ _this2.adjust();
1732
+ _this2.inputFocus();
1733
+ } else {
1734
+ if (_this2.multiple) {
1735
+ // 加了条件 && !val.length,因为字典项会自动弹出 所以注释
1736
+ // this.$refs.drop.visible()
1737
+ }
1738
+ }
1739
+ });
1740
+ this.$emit('input', this.keys);
1741
+ this.$emit('update:text', this.names);
1742
+ this.$emit('values', this.picked.slice());
1743
+ },
1744
+ pageNumber: function pageNumber(val, oldVal) {
1745
+ if (val !== oldVal) this.populate();
1746
+ },
1747
+ disabled: function disabled(val) {
1748
+ if (val && this.show) this.close();
1749
+ }
1750
+ }
1751
+ });
1752
+
1753
+ /***/ }),
1754
+ /* 17 */
1755
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1756
+
1757
+ "use strict";
1758
+ /* harmony default export */ __webpack_exports__["a"] = ({
1759
+ cn: {
1760
+ next: '下一页',
1761
+ prev: '上一页',
1762
+ first: '首页',
1763
+ last: '尾页',
1764
+ close_btn: '关闭 (Esc键)',
1765
+ loading: '读取中...',
1766
+ page_info: '第 page_num/page_count 页( 共 row_count 条记录 )',
1767
+ not_found: '无查询结果',
1768
+ server_error: '连接到服务器时发生错误!',
1769
+ clear: '清除内容',
1770
+ select_all: '选择当前页项目',
1771
+ unselect_all: '取消选择当前页项目',
1772
+ clear_all: '清除全部已选择项目',
1773
+ max_selected: '最多只能选择 max_selected_limit 个项目',
1774
+ placeholder: '请选择一个项目',
1775
+ items_selected: '已选择 selected_count 个项目'
1776
+ }
1777
+ });
1778
+
1779
+ /***/ }),
1780
+ /* 18 */
1781
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1782
+
1783
+ "use strict";
1784
+ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
1785
+
1786
+ var LEFT = 37;
1787
+ var UP = 38;
1788
+ var RIGHT = 39;
1789
+ var DOWN = 40;
1790
+ var TAB = 9;
1791
+ var ENTER = 13;
1792
+ var ESCAPE = 27;
1793
+ /* harmony default export */ __webpack_exports__["a"] = ({
1794
+ methods: {
1795
+ showChange: function showChange(val) {
1796
+ this.show = val;
1797
+ if (val) {
1798
+ this.populate();
1799
+ this.findSelectionPage();
1800
+ this.inputFocus();
1801
+ } else {
1802
+ if (this.isSearch) {
1803
+ this.search = '';
1804
+ this.$refs.search.value = '';
1805
+ }
1806
+ this.highlight = -1;
1807
+ }
1808
+ },
1809
+ focus: function focus() {
1810
+ this.$el.click();
1811
+ },
1812
+
1813
+ /**
1814
+ * remove all selected item
1815
+ */
1816
+ remove: function remove(index) {
1817
+ var removed = [];
1818
+ if (typeof index !== 'number') {
1819
+ removed = this.picked.slice();
1820
+ this.picked = [];
1821
+ } else {
1822
+ removed = [this.picked[index]];
1823
+ this.picked.splice(index, 1);
1824
+ }
1825
+ this.$emit('removed', removed);
1826
+ },
1827
+
1828
+ /**
1829
+ * pick/remove current page items
1830
+ * @param check
1831
+ * true: pick
1832
+ * false: remove
1833
+ */
1834
+ pickPage: function pickPage() {
1835
+ var _this = this;
1836
+
1837
+ var check = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
1838
+
1839
+ var toDo = [];
1840
+ if (check) {
1841
+ var _picked;
1842
+
1843
+ // picked current page items
1844
+ if (this.maxSelectLimit && this.picked.length >= this.maxSelectLimit) return;
1845
+ var available = 0;
1846
+
1847
+ /**
1848
+ * the number of current page available items
1849
+ */
1850
+ if (check && this.maxSelectLimit) {
1851
+ var outOfPage = this.picked.filter(function (val) {
1852
+ return _this.list.findIndex(function (value) {
1853
+ return val[_this.keyField] === value[_this.keyField];
1854
+ }) === -1;
1855
+ }).length;
1856
+ available = this.maxSelectLimit - outOfPage;
1857
+ }
1858
+ this.list.forEach(function (row) {
1859
+ if (!_this.inPicked(row) && (!_this.maxSelectLimit || _this.maxSelectLimit && toDo.length < available)) {
1860
+ toDo.push(row);
1861
+ }
1862
+ });
1863
+ (_picked = this.picked).push.apply(_picked, toDo);
1864
+ } else {
1865
+ // unpicked current page items
1866
+ if (!this.picked.length) return;
1867
+ this.list.forEach(function (row) {
1868
+ if (_this.inPicked(row)) {
1869
+ toDo.push(_this.inPickedIndex(row));
1870
+ }
1871
+ });
1872
+ this.$emit('removed', this.picked.filter(function (val, index) {
1873
+ return toDo.includes(index);
1874
+ }));
1875
+ this.picked = this.picked.filter(function (val, index) {
1876
+ return !toDo.includes(index);
1877
+ });
1878
+ }
1879
+
1880
+ this.inputFocus();
1881
+ },
1882
+ getResults: function getResults() {
1883
+ if (!this.picked.length || this.multiple) return;
1884
+ return this.renderCell(this.picked[0]);
1885
+ },
1886
+ renderCell: function renderCell(row) {
1887
+ if (!row || !Object.keys(row).length) return '';
1888
+ switch (_typeof(this.showField)) {
1889
+ case 'string':
1890
+ return row[this.showField];
1891
+ case 'function':
1892
+ return this.showField(row);
1893
+ }
1894
+ },
1895
+ processKey: function processKey(e) {
1896
+ if (![LEFT, UP, RIGHT, DOWN, ESCAPE, ENTER, TAB].includes(e.keyCode)) this.populate();
1897
+ },
1898
+ processControl: function processControl(e) {
1899
+ if ([LEFT, UP, RIGHT, DOWN, ESCAPE, ENTER, TAB].includes(e.keyCode)) {
1900
+ switch (e.keyCode) {
1901
+ case LEFT:
1902
+ if (this.pagination) this.$refs.page.switchPage('previous');
1903
+ break;
1904
+ case UP:
1905
+ this.previous();
1906
+ break;
1907
+ case RIGHT:
1908
+ if (this.pagination) this.$refs.page.switchPage('next');
1909
+ break;
1910
+ case DOWN:
1911
+ this.next();
1912
+ break;
1913
+ case TAB:
1914
+ case ENTER:
1915
+ if (this.highlight !== -1) this.selectItem(this.list[this.highlight]);
1916
+ break;
1917
+ case ESCAPE:
1918
+ this.close();
1919
+ break;
1920
+ }
1921
+ }
1922
+ },
1923
+ previous: function previous() {
1924
+ var _this2 = this;
1925
+
1926
+ if (this.highlight > 0 && this.list.length) {
1927
+ var previous = this.list.filter(function (val, idx) {
1928
+ return idx < _this2.highlight && !_this2.inPicked(val);
1929
+ });
1930
+ if (previous.length) {
1931
+ var preIndex = this.list.findIndex(function (val) {
1932
+ return Object.is(val, previous[previous.length - 1]);
1933
+ });
1934
+ if (preIndex !== -1) this.highlight = preIndex;
1935
+ }
1936
+ }
1937
+ },
1938
+ next: function next() {
1939
+ var _this3 = this;
1940
+
1941
+ if (this.highlight < this.list.length - 1) {
1942
+ var nextIndex = this.list.findIndex(function (val, idx) {
1943
+ return idx > _this3.highlight && !_this3.inPicked(val);
1944
+ });
1945
+ if (nextIndex !== -1) this.highlight = nextIndex;
1946
+ }
1947
+ },
1948
+ selectItem: function selectItem(row) {
1949
+ var _this4 = this;
1950
+
1951
+ if (this.inPicked(row)) return;
1952
+ // multiple selection by tag form
1953
+ if (this.multiple) {
1954
+ if (this.maxSelectLimit && this.picked.length < this.maxSelectLimit || !this.maxSelectLimit) {
1955
+ this.picked.push(row);
1956
+ } else {
1957
+ this.message = this.i18n.max_selected.replace('max_selected_limit', '<b>' + this.maxSelectLimit + '</b>');
1958
+ setTimeout(function () {
1959
+ _this4.message = '';
1960
+ }, 3000);
1961
+ }
1962
+ this.inputFocus();
1963
+ } else {
1964
+ this.close();
1965
+ this.picked = [row];
1966
+ }
1967
+ this.highlight = -1;
1968
+ },
1969
+ sortList: function sortList() {
1970
+ if (this.data && Array.isArray(this.data) && this.sort) {
1971
+ var sortArr = this.sort.split(' ');var sort = {};
1972
+ if (sortArr.length === 2) {
1973
+ sort.field = sortArr[0];
1974
+ sort.order = sortArr[1];
1975
+ this.sortedList = this.data.slice().sort(function (a, b) {
1976
+ var valA = a[sort.field];
1977
+ var valB = b[sort.field];var order = sort.order ? sort.order.toLowerCase() : 'asc';
1978
+ if (order === 'asc') {
1979
+ return typeof valA === 'number' ? valA - valB : String(valA).localeCompare(String(valB));
1980
+ } else if (order === 'desc') {
1981
+ return typeof valA === 'number' ? valB - valA : String(valB).localeCompare(String(valA));
1982
+ }
1983
+ });
1984
+ }
1985
+ }
1986
+ },
1987
+ populate: function populate() {
1988
+ var _this5 = this;
1989
+
1990
+ if (this.data) {
1991
+ if (this.search && this.search !== this.lastSearch) this.pageNumber = 1;
1992
+ if (Array.isArray(this.data)) {
1993
+ var list = this.sortedList ? this.sortedList.slice() : this.data.slice();
1994
+ if (this.search) {
1995
+ // 搜索字典项
1996
+ list = list.filter(function (val) {
1997
+ var exp = new RegExp(_this5.search.toLowerCase());
1998
+ var sspell = val['sspell'] ? val['sspell'] : '';
1999
+ var fspell = val['fspell'] ? val['fspell'] : '';
2000
+ var name = val[_this5.showField] ? val[_this5.showField] : '';
2001
+ var code = val[_this5.keyField] ? val[_this5.keyField] : '';
2002
+ return exp.test(name.toLowerCase()) || exp.test(code.toLowerCase()) || exp.test(sspell.toLowerCase()) || exp.test(fspell.toLowerCase());
2003
+ });
2004
+ }
2005
+ this.totalRows = list.length;
2006
+
2007
+ if (this.pagination) {
2008
+ var start = (this.pageNumber - 1) * this.pageSize;
2009
+ var end = start + this.pageSize - 1;
2010
+ this.list = list.filter(function (val, index) {
2011
+ return index >= start && index <= end;
2012
+ });
2013
+ } else {
2014
+ this.list = list;
2015
+ }
2016
+ } else {
2017
+ console.log('数据格式错误');
2018
+ }
2019
+
2020
+ this.lastSearch = this.search;
2021
+ this.highlight = -1;
2022
+ }
2023
+ this.inputFocus();
2024
+ },
2025
+ pageChange: function pageChange(pNum) {
2026
+ this.pageNumber = pNum;
2027
+ this.populate();
2028
+ },
2029
+ initSelection: function initSelection() {
2030
+ var _this6 = this;
2031
+
2032
+ if (this.data && this.data.length >= this.pageSize) {
2033
+ this.pagination = true;
2034
+ }
2035
+ // 计算字典
2036
+ if (this.value) {
2037
+ if (Array.isArray(this.data)) {
2038
+ var arr = this.value.split(',');
2039
+ if (arr && arr.length) {
2040
+ var matchRows = this.data.filter(function (val) {
2041
+ return arr.includes(String(val[_this6.keyField]));
2042
+ });
2043
+ if (matchRows.length) this.picked = this.multiple ? matchRows : [matchRows[0]];
2044
+ }
2045
+ this.findSelectionPage();
2046
+ } else {
2047
+ console.log('数据格式错误');
2048
+ }
2049
+ }
2050
+ this.populate();
2051
+ },
2052
+ findSelectionPage: function findSelectionPage() {
2053
+ var _this7 = this;
2054
+
2055
+ if (!this.multiple && this.pagination) {
2056
+ var list = this.sortedList ? this.sortedList.slice() : this.data.slice();
2057
+ var index = list.findIndex(function (val) {
2058
+ return String(val[_this7.keyField]) === _this7.value;
2059
+ });
2060
+ if (index >= 0) {
2061
+ this.pageNumber = Math.ceil((index + 1) / this.pageSize);
2062
+ }
2063
+ } else if (this.multiple && this.pagination) {
2064
+ // 多选,默认跳转第一选择项
2065
+ var _list = this.sortedList ? this.sortedList.slice() : this.data.slice();
2066
+ if (this.picked && this.picked.length > 0) {
2067
+ var key = this.picked[this.picked.length - 1][this.keyField];
2068
+ var _index = _list.findIndex(function (val) {
2069
+ return String(val[_this7.keyField]) === key;
2070
+ });
2071
+ if (_index >= 0) {
2072
+ this.pageNumber = Math.ceil((_index + 1) / this.pageSize);
2073
+ }
2074
+ }
2075
+ }
2076
+ }
2077
+ }
2078
+ });
2079
+
2080
+ /***/ }),
2081
+ /* 19 */
2082
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2083
+
2084
+ "use strict";
2085
+ /* harmony default export */ __webpack_exports__["a"] = ({
2086
+ methods: {
2087
+ inPickedIndex: function inPickedIndex(row) {
2088
+ var _this = this;
2089
+
2090
+ if (!row || !Object.keys(row).length || !this.picked.length) return -1;
2091
+ return this.picked.findIndex(function (val) {
2092
+ return val[_this.keyField] === row[_this.keyField];
2093
+ });
2094
+ },
2095
+ inPicked: function inPicked(row) {
2096
+ return this.inPickedIndex(row) !== -1;
2097
+ },
2098
+ adjust: function adjust() {
2099
+ this.$refs.drop.adjust();
2100
+ },
2101
+ close: function close() {
2102
+ if (this.show) this.$refs.drop.visible();
2103
+ },
2104
+ inputFocus: function inputFocus() {
2105
+ var _this2 = this;
2106
+
2107
+ if (!this.show || !this.isSearch) return;
2108
+ this.$nextTick(function () {
2109
+ if (_this2.isChrome() || _this2.isEdge()) _this2.$refs.search.focus({ preventScroll: true });else {
2110
+ var x = window.pageXOffset;var y = window.pageYOffset;
2111
+ _this2.$refs.search.focus();
2112
+ if (window.pageYOffset !== y) setTimeout(function () {
2113
+ window.scrollTo(x, y);
2114
+ }, 0);
2115
+ }
2116
+ });
2117
+ },
2118
+ isChrome: function isChrome() {
2119
+ return navigator.vendor !== undefined && navigator.vendor.indexOf('Google') !== -1;
2120
+ },
2121
+ isEdge: function isEdge() {
2122
+ return navigator.userAgent.indexOf('Edge') >= 0;
2123
+ }
2124
+ }
2125
+ });
2126
+
2127
+ /***/ }),
2128
+ /* 20 */
2129
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2130
+
2131
+ "use strict";
2132
+ /* harmony default export */ __webpack_exports__["a"] = ({
2133
+ render: function render(h) {
2134
+ var child = [];
2135
+ child.push(this.buildCaller(h));
2136
+ if (this.isSearch) {
2137
+ child.push(this.buildHeader(h));
2138
+ child.push(this.buildSearch(h));
2139
+ }
2140
+ child.push(this.buildMessage(h));
2141
+ child.push(this.buildContent(h));
2142
+ child.push(this.buildPagination(h));
2143
+
2144
+ return h('v-dropdown', {
2145
+ props: {
2146
+ 'full-width': true,
2147
+ width: this.width,
2148
+ disabled: this.disabled,
2149
+ border: false,
2150
+ align: this.rtl ? 'right' : 'left',
2151
+ dropWidth: this.dropWidth,
2152
+ dropClass: this.dropClass
2153
+ },
2154
+ class: 'v-selectpage',
2155
+ attrs: {
2156
+ dicName: this.dicName
2157
+ },
2158
+ on: {
2159
+ show: this.showChange
2160
+ },
2161
+ ref: 'drop'
2162
+ }, child);
2163
+ },
2164
+
2165
+ methods: {
2166
+ /**
2167
+ * 选择面板
2168
+ */
2169
+ buildCaller: function buildCaller(h) {
2170
+ var input = [];
2171
+ var inputAttrs = {
2172
+ props: {
2173
+ disabled: this.disabled,
2174
+ placeholder: this.placeholderString,
2175
+ picked: this.picked,
2176
+ clear: this.clear
2177
+ },
2178
+ on: {
2179
+ remove: this.remove
2180
+ }
2181
+ };
2182
+ input.push(h(this.multiple ? 'sp-tag' : 'sp-select', inputAttrs));
2183
+ input.push(h('div', {
2184
+ class: {
2185
+ 'sp-button': true,
2186
+ open: this.show
2187
+ }
2188
+ }, [h('span', { class: 'sp-caret' })]));
2189
+ return h('template', { slot: 'caller' }, [h('div', { class: this.inputClasses }, input)]);
2190
+ },
2191
+
2192
+ /**
2193
+ * header bar
2194
+ */
2195
+ buildHeader: function buildHeader(h) {
2196
+ var _this = this;
2197
+
2198
+ var header = [];
2199
+ header.push(h('h3', { domProps: { innerHTML: this.headerTitle } }));
2200
+ var genBtn = function genBtn(title, btnClass, iconClass, event) {
2201
+ return h('button', {
2202
+ attrs: {
2203
+ type: 'button',
2204
+ title: title
2205
+ },
2206
+ class: btnClass,
2207
+ on: { click: function click() {
2208
+ event();
2209
+ } }
2210
+ }, [h('i', { class: 'sp-iconfont ' + iconClass })]);
2211
+ };
2212
+
2213
+ if (this.multiple) {
2214
+ header.push(genBtn(this.i18n.select_all, 'sp-select-all-btn', 'sp-icon-select-all', function () {
2215
+ _this.pickPage();
2216
+ }));
2217
+ header.push(genBtn(this.i18n.unselect_all, 'sp-remove-all-btn', 'sp-icon-unselect-all', function () {
2218
+ _this.pickPage(false);
2219
+ }));
2220
+ }
2221
+ if (this.clear) {
2222
+ header.push(genBtn(this.i18n.clear_all, 'sp-clear-all-btn', 'sp-icon-clear', this.remove));
2223
+ }
2224
+
2225
+ header.push(genBtn(this.i18n.close_btn, 'sp-close-btn', 'sp-icon-close', this.close));
2226
+
2227
+ return h('div', { class: 'sp-header' }, header);
2228
+ },
2229
+
2230
+ /**
2231
+ * 搜索条
2232
+ */
2233
+ buildSearch: function buildSearch(h) {
2234
+ var _this2 = this;
2235
+
2236
+ return h('div', { class: 'sp-search' }, [h('input', {
2237
+ attrs: {
2238
+ type: 'text',
2239
+ autocomplete: 'off',
2240
+ placeholder: '请输出查询内容',
2241
+ style: 'border: 1px solid #bdcaf1',
2242
+ value: this.search.trim()
2243
+ },
2244
+ class: {
2245
+ 'sp-search-input': true,
2246
+ 'sp-search-input--rtl': this.rtl
2247
+ },
2248
+ on: {
2249
+ keyup: function keyup(e) {
2250
+ return _this2.processKey(e);
2251
+ },
2252
+ keydown: function keydown(e) {
2253
+ e.stopPropagation();
2254
+ _this2.processControl(e);
2255
+ },
2256
+ input: function input(e) {
2257
+ _this2.search = e.target.value;
2258
+ if (e.target.value === '') {
2259
+ // 无搜索数据时去找出选择项
2260
+ _this2.findSelectionPage();
2261
+ }
2262
+ }
2263
+ },
2264
+ ref: 'search'
2265
+ })]);
2266
+ },
2267
+ buildMessage: function buildMessage(h) {
2268
+ var _this3 = this;
2269
+
2270
+ var child = [];
2271
+ if (this.message) {
2272
+ child.push(h('div', { class: 'sp-message' }, [h('i', { class: 'sp-iconfont sp-icon-warning' }), h('span', { domProps: { innerHTML: this.message } })]));
2273
+ }
2274
+
2275
+ return h('transition', {
2276
+ props: {
2277
+ name: 'sp-message-slide',
2278
+ appear: true
2279
+ },
2280
+ on: {
2281
+ enter: function enter() {
2282
+ return _this3.adjust();
2283
+ },
2284
+ 'after-leave': function afterLeave() {
2285
+ return _this3.adjust();
2286
+ }
2287
+ }
2288
+ }, child);
2289
+ },
2290
+ buildContent: function buildContent(h) {
2291
+ var _this4 = this;
2292
+
2293
+ var child = [];
2294
+ if (this.list.length) {
2295
+ var contentAttrs = {
2296
+ props: {
2297
+ list: this.list,
2298
+ picked: this.picked,
2299
+ dropHeight: this.dropHeight
2300
+ },
2301
+ model: {
2302
+ value: this.highlight,
2303
+ callback: function callback(value) {
2304
+ _this4.highlight = value;
2305
+ }
2306
+ },
2307
+ on: {
2308
+ select: function select(row) {
2309
+ return _this4.selectItem(row);
2310
+ }
2311
+ }
2312
+ };
2313
+ if (this.tbColumns && this.tbColumns.length) {
2314
+ contentAttrs.props['tb-columns'] = this.tbColumns;
2315
+ child.push(h('sp-table', contentAttrs));
2316
+ } else {
2317
+ child.push(h('sp-list', contentAttrs));
2318
+ }
2319
+ } else {
2320
+ child.push(h('div', { class: 'sp-result-message' }, this.i18n.not_found));
2321
+ }
2322
+ return h('div', { class: 'sp-result-area' }, child);
2323
+ },
2324
+
2325
+ /**
2326
+ * 分页工具
2327
+ */
2328
+ buildPagination: function buildPagination(h) {
2329
+ var _this5 = this;
2330
+
2331
+ if (this.pagination) {
2332
+ return h('sp-page', {
2333
+ props: {
2334
+ 'total-row': this.totalRows,
2335
+ 'page-size': this.pageSize
2336
+ },
2337
+ model: {
2338
+ value: this.pageNumber,
2339
+ callback: function callback(value) {
2340
+ _this5.pageNumber = value;
2341
+ }
2342
+ },
2343
+ ref: 'page'
2344
+ });
2345
+ }
2346
+ }
2347
+ }
2348
+ });
2349
+
2350
+ /***/ }),
2351
+ /* 21 */
2352
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2353
+
2354
+ "use strict";
2355
+ /* unused harmony export TOKEN_KEY */
2356
+ /* unused harmony export REFRESH_TOKEN_KEY */
2357
+ /* unused harmony export EXPIRES_IN */
2358
+ /* unused harmony export CITY_CODE_KEY */
2359
+ /* unused harmony export REG_CODE_KEY */
2360
+ /* unused harmony export ORG_CODE_KEY */
2361
+ /* unused harmony export ORG_NAME_KEY */
2362
+ /* unused harmony export ORG_TYPE_KEY */
2363
+ /* unused harmony export USER_ID_KEY */
2364
+ /* unused harmony export USER_JOB_ID_KEY */
2365
+ /* unused harmony export USER_CONFIRM_STATUS_KEY */
2366
+ /* unused harmony export USER_LOGIN_KEY */
2367
+ /* unused harmony export USER_CARD_KEY */
2368
+ /* unused harmony export USER_NAME_KEY */
2369
+ /* unused harmony export USER_ADMIN_KEY */
2370
+ /* unused harmony export USER_S_ADMIN_KEY */
2371
+ /* unused harmony export LOGIN_TIME */
2372
+ /* unused harmony export MEUN_KEY */
2373
+ /* unused harmony export FUNC_PERM_KEY */
2374
+ /* unused harmony export ROOT_ROUTER_KEY */
2375
+ /* unused harmony export SOP_TOKEN_KEY */
2376
+ /* unused harmony export SOP_REFRESH_TOKEN_KEY */
2377
+ /* unused harmony export SOP_USER_LOGIN_KEY */
2378
+ /* unused harmony export SOP_USER_ID_KEY */
2379
+ /* unused harmony export SOP_USER_NAME_KEY */
2380
+ /* unused harmony export setSopToken */
2381
+ /* unused harmony export setToken */
2382
+ /* unused harmony export setConfirmSTatus */
2383
+ /* unused harmony export setLoginTime */
2384
+ /* unused harmony export cachePermMenu */
2385
+ /* unused harmony export getPermMenu */
2386
+ /* unused harmony export cacheFuncPerm */
2387
+ /* unused harmony export getFuncPerm */
2388
+ /* unused harmony export setRootRouter */
2389
+ /* unused harmony export getRootRouter */
2390
+ /* unused harmony export addUserCache */
2391
+ /* unused harmony export addSopUserCache */
2392
+ /* unused harmony export getSopToken */
2393
+ /* unused harmony export getSopRefreshToken */
2394
+ /* unused harmony export getToken */
2395
+ /* unused harmony export getConfirmSTatus */
2396
+ /* unused harmony export getRefreshToken */
2397
+ /* unused harmony export getLoginTime */
2398
+ /* unused harmony export getUserCache */
2399
+ /* unused harmony export clear */
2400
+ /* unused harmony export clearSop */
2401
+ /* unused harmony export hasChild */
2402
+ /* unused harmony export getMenuByRouter */
2403
+ /* unused harmony export getBreadCrumbList */
2404
+ /* unused harmony export getRouteTitleHandled */
2405
+ /* unused harmony export showTitle */
2406
+ /* unused harmony export setTagNavListInLocalstorage */
2407
+ /* unused harmony export setAppTagNavListInLocalstorage */
2408
+ /* unused harmony export getTagNavListFromLocalstorage */
2409
+ /* unused harmony export getAppTagNavListFromLocalstorage */
2410
+ /* unused harmony export getHomeRoute */
2411
+ /* unused harmony export getNewTagList */
2412
+ /* unused harmony export getNewAppTagList */
2413
+ /* unused harmony export getParams */
2414
+ /* unused harmony export getNextRoute */
2415
+ /* unused harmony export getNextAppRoute */
2416
+ /* unused harmony export doCustomTimes */
2417
+ /* unused harmony export getArrayFromFile */
2418
+ /* unused harmony export getTableDataFromArray */
2419
+ /* unused harmony export findNodeUpper */
2420
+ /* unused harmony export findNodeUpperByClasses */
2421
+ /* unused harmony export findNodeDownward */
2422
+ /* unused harmony export showByAccess */
2423
+ /* unused harmony export routeEqual */
2424
+ /* unused harmony export routeEqualNew */
2425
+ /* unused harmony export routeHasExist */
2426
+ /* unused harmony export routeHasExistNew */
2427
+ /* unused harmony export localSave */
2428
+ /* unused harmony export localRead */
2429
+ /* unused harmony export scrollTop */
2430
+ /* unused harmony export setTitle */
2431
+ /* unused harmony export identityIsTrue */
2432
+ /* unused harmony export validatorFunc */
2433
+ /* unused harmony export lengthLimited */
2434
+ /* unused harmony export isPassword */
2435
+ /* unused harmony export flatTree */
2436
+ /* unused harmony export arrayToTree */
2437
+ /* unused harmony export deleteNullField */
2438
+ /* unused harmony export deepCopy */
2439
+ /* unused harmony export throttle */
2440
+ /* unused harmony export filterAsyncRouter */
2441
+ /* unused harmony export disabledChildren */
2442
+ /* unused harmony export transFormData */
2443
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_js_cookie__ = __webpack_require__(22);
2444
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_js_cookie___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_js_cookie__);
2445
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__config__ = __webpack_require__(23);
2446
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__libs_tools__ = __webpack_require__(24);
2447
+ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
2448
+
2449
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2450
+
2451
+ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
2452
+
2453
+
2454
+ // cookie保存的天数
2455
+
2456
+
2457
+ var title = __WEBPACK_IMPORTED_MODULE_1__config__["a" /* default */].title,
2458
+ useI18n = __WEBPACK_IMPORTED_MODULE_1__config__["a" /* default */].useI18n;
2459
+
2460
+
2461
+ var TOKEN_KEY = 'bsp_access_token';
2462
+ var REFRESH_TOKEN_KEY = 'bsp_refresh_token';
2463
+ var EXPIRES_IN = 'bsp_expires_in';
2464
+ var CITY_CODE_KEY = 'bsp_city_code';
2465
+ var REG_CODE_KEY = 'bsp_reg_code';
2466
+ var ORG_CODE_KEY = 'bsp_org_code';
2467
+ var ORG_NAME_KEY = 'bsp_org_name';
2468
+ var ORG_TYPE_KEY = 'bsp_org_type';
2469
+ var USER_ID_KEY = 'bsp_user_id';
2470
+ var USER_JOB_ID_KEY = 'bsp_user_job_id';
2471
+ var USER_CONFIRM_STATUS_KEY = 'bsp_confirm_status';
2472
+ var USER_LOGIN_KEY = 'bsp_user_login';
2473
+ var USER_CARD_KEY = 'bsp_user_card';
2474
+ var USER_NAME_KEY = 'bsp_user_name';
2475
+ var USER_ADMIN_KEY = 'bsp_user_admin';
2476
+ var USER_S_ADMIN_KEY = 'bsp_user_s_admin';
2477
+ var LOGIN_TIME = 'bsp_login_time';
2478
+
2479
+ var MEUN_KEY = 'bsp_menu';
2480
+ var FUNC_PERM_KEY = 'func_perm';
2481
+ var ROOT_ROUTER_KEY = 'bsp_root_router';
2482
+
2483
+ // sop
2484
+ var SOP_TOKEN_KEY = 'sop_access_token';
2485
+ var SOP_REFRESH_TOKEN_KEY = 'sop_refresh_token';
2486
+ var SOP_USER_LOGIN_KEY = 'sop_user_login';
2487
+ var SOP_USER_ID_KEY = 'sop_user_id';
2488
+ var SOP_USER_NAME_KEY = 'sop_user_name';
2489
+ // sop end
2490
+
2491
+ var setSopToken = function setSopToken(token) {
2492
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(SOP_TOKEN_KEY, token);
2493
+ };
2494
+
2495
+ var setToken = function setToken(token) {
2496
+ //Cookies.set(TOKEN_KEY, token)
2497
+ sessionStorage.setItem(TOKEN_KEY, token);
2498
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(TOKEN_KEY, token);
2499
+ };
2500
+
2501
+ var setConfirmSTatus = function setConfirmSTatus(status) {
2502
+ sessionStorage.setItem(USER_CONFIRM_STATUS_KEY, status);
2503
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(USER_CONFIRM_STATUS_KEY, status);
2504
+ };
2505
+
2506
+ var setLoginTime = function setLoginTime(time) {
2507
+ //Cookies.set(LOGIN_TIME, time)
2508
+ localStorage.setItem(LOGIN_TIME, time);
2509
+ };
2510
+
2511
+ var cachePermMenu = function cachePermMenu(data) {
2512
+ // let accessedRoutes = filterAsyncRouter(data)
2513
+ var menuKey = MEUN_KEY + '_' + __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(USER_ID_KEY);
2514
+ if (data) {
2515
+ localStorage.setItem(menuKey, JSON.stringify(data));
2516
+ }
2517
+ };
2518
+
2519
+ var getPermMenu = function getPermMenu() {
2520
+ var menuKey = MEUN_KEY + '_' + __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(USER_ID_KEY);
2521
+ var menu = localStorage.getItem(menuKey);
2522
+ if (menu) {
2523
+ return JSON.parse(menu);
2524
+ }
2525
+ return [];
2526
+ };
2527
+
2528
+ var cacheFuncPerm = function cacheFuncPerm(data) {
2529
+ localStorage.setItem(FUNC_PERM_KEY, JSON.stringify(data));
2530
+ };
2531
+ var getFuncPerm = function getFuncPerm() {
2532
+ var arr = localStorage.getItem(FUNC_PERM_KEY);
2533
+ if (arr) {
2534
+ try {
2535
+ return JSON.parse(arr);
2536
+ } catch (e) {
2537
+ return [];
2538
+ }
2539
+ }
2540
+ return [];
2541
+ };
2542
+
2543
+ var setRootRouter = function setRootRouter(name) {
2544
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(ROOT_ROUTER_KEY, name);
2545
+ };
2546
+
2547
+ var getRootRouter = function getRootRouter() {
2548
+ var value = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(ROOT_ROUTER_KEY);
2549
+ if (value) return value;else return '';
2550
+ };
2551
+ var addUserCache = function addUserCache(data) {
2552
+ /*Cookies.set(REFRESH_TOKEN_KEY, data.refresh_token)
2553
+ Cookies.set(EXPIRES_IN, data.expires_in)
2554
+ Cookies.set(CITY_CODE_KEY, data.cityCode)
2555
+ Cookies.set(REG_CODE_KEY, data.regCode)
2556
+ Cookies.set(ORG_CODE_KEY, data.orgCode)
2557
+ Cookies.set(ORG_NAME_KEY, data.orgName)
2558
+ Cookies.set(ORG_TYPE_KEY, data.orgType)
2559
+ Cookies.set(USER_ID_KEY, data.id)
2560
+ Cookies.set(USER_LOGIN_KEY, data.loginId)
2561
+ Cookies.set(USER_CARD_KEY, data.idCard)
2562
+ Cookies.set(USER_NAME_KEY, data.name)
2563
+ Cookies.set(USER_ADMIN_KEY, data.isAdmin)
2564
+ Cookies.set(USER_JOB_ID_KEY, data.jobId)
2565
+ Cookies.set(USER_CONFIRM_STATUS_KEY, data.confirmStatus)*/
2566
+
2567
+ localStorage.setItem(REFRESH_TOKEN_KEY, data.refresh_token);
2568
+ localStorage.setItem(EXPIRES_IN, data.expires_in);
2569
+ localStorage.setItem(CITY_CODE_KEY, data.cityCode);
2570
+ localStorage.setItem(REG_CODE_KEY, data.regCode);
2571
+ localStorage.setItem(ORG_CODE_KEY, data.orgCode);
2572
+ localStorage.setItem(ORG_NAME_KEY, data.orgName);
2573
+ localStorage.setItem(ORG_TYPE_KEY, data.orgType);
2574
+ localStorage.setItem(USER_ID_KEY, data.id);
2575
+ localStorage.setItem(USER_LOGIN_KEY, data.loginId);
2576
+ localStorage.setItem(USER_CARD_KEY, data.idCard);
2577
+ localStorage.setItem(USER_NAME_KEY, data.name);
2578
+ localStorage.setItem(USER_ADMIN_KEY, data.isAdmin);
2579
+ localStorage.setItem(USER_JOB_ID_KEY, data.jobId);
2580
+ //localStorage.setItem(USER_CONFIRM_STATUS_KEY, data.confirmStatus)
2581
+ setConfirmSTatus(data.confirmStatus);
2582
+ };
2583
+ // sop
2584
+ var addSopUserCache = function addSopUserCache(data) {
2585
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(SOP_USER_LOGIN_KEY, data.loginId);
2586
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(SOP_USER_ID_KEY, data.id);
2587
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.set(SOP_USER_NAME_KEY, data.name);
2588
+ };
2589
+ var getSopToken = function getSopToken() {
2590
+ var token = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(SOP_TOKEN_KEY);
2591
+ if (token) return token;else return false;
2592
+ };
2593
+ var getSopRefreshToken = function getSopRefreshToken() {
2594
+ var token = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(SOP_REFRESH_TOKEN_KEY);
2595
+ if (token) return token;else return false;
2596
+ };
2597
+ // sop end
2598
+ var getToken = function getToken() {
2599
+ var token = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(TOKEN_KEY);
2600
+ if (!token) {
2601
+ token = sessionStorage.getItem(TOKEN_KEY);
2602
+ }
2603
+ if (token) return token;else return false;
2604
+ };
2605
+
2606
+ var getConfirmSTatus = function getConfirmSTatus() {
2607
+ var status = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(USER_CONFIRM_STATUS_KEY);
2608
+ if (!status) {
2609
+ status = sessionStorage.getItem(USER_CONFIRM_STATUS_KEY);
2610
+ }
2611
+ if (status) return status;else return '0';
2612
+ };
2613
+ var getRefreshToken = function getRefreshToken() {
2614
+ var token = localStorage.getItem(REFRESH_TOKEN_KEY);
2615
+ if (token) return token;else return false;
2616
+ };
2617
+ var getLoginTime = function getLoginTime() {
2618
+ var login_time = localStorage.getItem(LOGIN_TIME);
2619
+ if (login_time) return login_time;else return false;
2620
+ };
2621
+ var getUserCache = {
2622
+ getCityCode: function getCityCode() {
2623
+ var cityCode = localStorage.getItem(CITY_CODE_KEY);
2624
+ if (cityCode) return cityCode;else return '';
2625
+ },
2626
+ getRegCode: function getRegCode() {
2627
+ var regCode = localStorage.getItem(REG_CODE_KEY);
2628
+ if (regCode) return regCode;else return '';
2629
+ },
2630
+ getOrgCode: function getOrgCode() {
2631
+ var orgCode = localStorage.getItem(ORG_CODE_KEY);
2632
+ if (orgCode) return orgCode;else return '';
2633
+ },
2634
+ getOrgName: function getOrgName() {
2635
+ var orgName = localStorage.getItem(ORG_NAME_KEY);
2636
+ if (orgName) return orgName;else return '';
2637
+ },
2638
+ getOrgType: function getOrgType() {
2639
+ var orgType = localStorage.getItem(ORG_TYPE_KEY);
2640
+ if (orgType) return orgType;else return '';
2641
+ },
2642
+ getUserId: function getUserId() {
2643
+ var userId = localStorage.getItem(USER_ID_KEY);
2644
+ if (userId) return userId;else return '';
2645
+ },
2646
+ getLoginId: function getLoginId() {
2647
+ var loginId = localStorage.getItem(USER_LOGIN_KEY);
2648
+ if (loginId) return loginId;else return '';
2649
+ },
2650
+ getJobId: function getJobId() {
2651
+ var jobId = localStorage.getItem(USER_JOB_ID_KEY);
2652
+ if (jobId) return jobId;else return '';
2653
+ },
2654
+ getIdCard: function getIdCard() {
2655
+ var idCard = localStorage.getItem(USER_CARD_KEY);
2656
+ if (idCard) return idCard;else return '';
2657
+ },
2658
+ getUserName: function getUserName() {
2659
+ var name = localStorage.getItem(USER_NAME_KEY);
2660
+ if (name) return name;else return '';
2661
+ },
2662
+ getExpiresIn: function getExpiresIn() {
2663
+ var expires_in = localStorage.getItem(EXPIRES_IN);
2664
+ if (expires_in) return expires_in;else return '';
2665
+ },
2666
+ isAdmin: function isAdmin() {
2667
+ var isDadmin = localStorage.getItem(USER_ADMIN_KEY);
2668
+ if (isDadmin && isDadmin === 'true') return true;else return false;
2669
+ },
2670
+ isSAdmin: function isSAdmin() {
2671
+ var isSAdmin = localStorage.getItem(USER_S_ADMIN_KEY);
2672
+ if (isSAdmin && isSAdmin === 'true') return true;else return false;
2673
+ },
2674
+ // sop
2675
+ getSopLoginId: function getSopLoginId() {
2676
+ var loginId = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(SOP_USER_LOGIN_KEY);
2677
+ if (loginId) return loginId;else return '';
2678
+ },
2679
+ getSopUserId: function getSopUserId() {
2680
+ var userId = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(SOP_USER_ID_KEY);
2681
+ if (userId) return userId;else return '';
2682
+ },
2683
+ getSopUserName: function getSopUserName() {
2684
+ var userName = __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(SOP_USER_NAME_KEY);
2685
+ if (userName) return userName;else return '';
2686
+ }
2687
+ // sop end
2688
+ };
2689
+ var clear = function clear() {
2690
+ var menuKey = MEUN_KEY + '_' + __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.get(USER_ID_KEY);
2691
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(TOKEN_KEY);
2692
+ sessionStorage.removeItem(TOKEN_KEY);
2693
+ localStorage.removeItem(REFRESH_TOKEN_KEY);
2694
+ localStorage.removeItem(EXPIRES_IN);
2695
+ localStorage.removeItem(LOGIN_TIME);
2696
+ localStorage.removeItem(REG_CODE_KEY);
2697
+ localStorage.removeItem(ORG_CODE_KEY);
2698
+ localStorage.removeItem(ORG_NAME_KEY);
2699
+ localStorage.removeItem(ORG_TYPE_KEY);
2700
+ localStorage.removeItem(USER_ID_KEY);
2701
+ localStorage.removeItem(USER_LOGIN_KEY);
2702
+ localStorage.removeItem(USER_CARD_KEY);
2703
+ localStorage.removeItem(USER_NAME_KEY);
2704
+ localStorage.removeItem(USER_ADMIN_KEY);
2705
+ localStorage.removeItem(USER_S_ADMIN_KEY);
2706
+ localStorage.removeItem(USER_JOB_ID_KEY);
2707
+ localStorage.removeItem(CITY_CODE_KEY);
2708
+ localStorage.removeItem(USER_CONFIRM_STATUS_KEY);
2709
+
2710
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(ROOT_ROUTER_KEY);
2711
+ localStorage.removeItem(menuKey);
2712
+ };
2713
+
2714
+ // sop
2715
+ var clearSop = function clearSop() {
2716
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(SOP_TOKEN_KEY);
2717
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(SOP_REFRESH_TOKEN_KEY);
2718
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(SOP_USER_LOGIN_KEY);
2719
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(SOP_USER_ID_KEY);
2720
+ __WEBPACK_IMPORTED_MODULE_0_js_cookie___default.a.remove(SOP_USER_NAME_KEY);
2721
+ };
2722
+ // sop end
2723
+
2724
+ var hasChild = function hasChild(item) {
2725
+ return item.children && item.children.length !== 0;
2726
+ };
2727
+
2728
+ var showThisMenuEle = function showThisMenuEle(item, access) {
2729
+ if (item.meta && item.meta.access && item.meta.access.length) {
2730
+ if (Object(__WEBPACK_IMPORTED_MODULE_2__libs_tools__["b" /* hasOneOf */])(item.meta.access, access)) return true;else return false;
2731
+ } else return true;
2732
+ };
2733
+ /**
2734
+ * @param {Array} list 通过路由列表得到菜单列表
2735
+ * @returns {Array}
2736
+ */
2737
+ var getMenuByRouter = function getMenuByRouter(list, access) {
2738
+ var res = [];
2739
+ Object(__WEBPACK_IMPORTED_MODULE_2__libs_tools__["a" /* forEach */])(list, function (item) {
2740
+ if (!item.meta || item.meta && !item.meta.hideInMenu) {
2741
+ var obj = {
2742
+ icon: item.meta && item.meta.icon || '',
2743
+ name: item.name,
2744
+ meta: item.meta,
2745
+ id: item.id,
2746
+ path: item.path,
2747
+ parentId: item.parentId
2748
+ };
2749
+ if ((hasChild(item) || item.meta && item.meta.showAlways) && showThisMenuEle(item, access)) {
2750
+ obj.children = getMenuByRouter(item.children, access);
2751
+ }
2752
+ if (item.meta && item.meta.href) obj.href = item.meta.href;
2753
+ if (showThisMenuEle(item, access)) res.push(obj);
2754
+ }
2755
+ });
2756
+ return res;
2757
+ };
2758
+
2759
+ /**
2760
+ * @param {Array} routeMetched 当前路由metched
2761
+ * @returns {Array}
2762
+ */
2763
+ var getBreadCrumbList = function getBreadCrumbList(route, homeRoute) {
2764
+ var homeItem = _extends({}, homeRoute, { icon: homeRoute.meta.icon });
2765
+ var routeMetched = route.matched;
2766
+ if (routeMetched.some(function (item) {
2767
+ return item.path === homeRoute.path;
2768
+ })) return [homeItem];
2769
+ var res = routeMetched.filter(function (item) {
2770
+ return item.meta === undefined || !item.meta.hideInBread;
2771
+ }).map(function (item) {
2772
+ var meta = _extends({}, item.meta);
2773
+ if (meta.title && typeof meta.title === 'function') {
2774
+ meta.__titleIsFunction__ = true;
2775
+ meta.title = meta.title(route);
2776
+ }
2777
+ var obj = {
2778
+ icon: item.meta && item.meta.icon || '',
2779
+ path: item.path,
2780
+ meta: meta
2781
+ };
2782
+ return obj;
2783
+ });
2784
+ res = res.filter(function (item) {
2785
+ return !item.meta.hideInMenu;
2786
+ });
2787
+ return [_extends({}, homeItem, { to: homeRoute.path })].concat(_toConsumableArray(res));
2788
+ };
2789
+
2790
+ var getRouteTitleHandled = function getRouteTitleHandled(route) {
2791
+ var router = _extends({}, route);
2792
+ var meta = _extends({}, route.meta);
2793
+ var title = '';
2794
+ if (meta.title) {
2795
+ if (typeof meta.title === 'function') {
2796
+ meta.__titleIsFunction__ = true;
2797
+ title = meta.title(router);
2798
+ } else title = meta.title;
2799
+ }
2800
+ meta.title = title;
2801
+ router.meta = meta;
2802
+ return router;
2803
+ };
2804
+
2805
+ var showTitle = function showTitle(item, vm) {
2806
+ var _item$meta = item.meta,
2807
+ title = _item$meta.title,
2808
+ __titleIsFunction__ = _item$meta.__titleIsFunction__;
2809
+
2810
+ if (!title) return;
2811
+ if (useI18n) {
2812
+ if (title.includes('{{') && title.includes('}}') && useI18n) title = title.replace(/({{[\s\S]+?}})/, function (m, str) {
2813
+ return str.replace(/{{([\s\S]*)}}/, function (m, _) {
2814
+ return vm.$t(_.trim());
2815
+ });
2816
+ });else if (__titleIsFunction__) title = item.meta.title;else title = vm.$t(item.name);
2817
+ } else title = item.meta && item.meta.title || item.name;
2818
+ return title;
2819
+ };
2820
+
2821
+ /**
2822
+ * @description 本地存储和获取标签导航列表
2823
+ */
2824
+ var setTagNavListInLocalstorage = function setTagNavListInLocalstorage(list) {
2825
+ localStorage.tagNaveList = JSON.stringify(list);
2826
+ };
2827
+ var setAppTagNavListInLocalstorage = function setAppTagNavListInLocalstorage(key, list) {
2828
+ localStorage[key] = JSON.stringify(list);
2829
+ };
2830
+ /**
2831
+ * @returns {Array} 其中的每个元素只包含路由原信息中的name, path, meta三项
2832
+ */
2833
+ var getTagNavListFromLocalstorage = function getTagNavListFromLocalstorage() {
2834
+ var list = localStorage.tagNaveList;
2835
+ return list ? JSON.parse(list) : [];
2836
+ };
2837
+ var getAppTagNavListFromLocalstorage = function getAppTagNavListFromLocalstorage(key) {
2838
+ var list = localStorage[key];
2839
+ return list ? JSON.parse(list) : [];
2840
+ };
2841
+
2842
+ /**
2843
+ * @param {Array} routers 路由列表数组
2844
+ * @description 用于找到路由列表中name为home的对象
2845
+ */
2846
+ var getHomeRoute = function getHomeRoute(routers) {
2847
+ var homeName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'home';
2848
+
2849
+ var i = -1;
2850
+ var len = routers.length;
2851
+ var homeRoute = {};
2852
+ while (++i < len) {
2853
+ var item = routers[i];
2854
+ if (item.children && item.children.length) {
2855
+ var res = getHomeRoute(item.children, homeName);
2856
+ if (res.name) return res;
2857
+ } else {
2858
+ if (item.name === 'home' || item.path === '/home') homeRoute = item;
2859
+ }
2860
+ }
2861
+ return homeRoute;
2862
+ };
2863
+
2864
+ /**
2865
+ * @param {*} list 现有标签导航列表
2866
+ * @param {*} newRoute 新添加的路由原信息对象
2867
+ * @description 如果该newRoute已经存在则不再添加
2868
+ */
2869
+ var getNewTagList = function getNewTagList(list, newRoute) {
2870
+ var name = newRoute.name,
2871
+ path = newRoute.path,
2872
+ meta = newRoute.meta;
2873
+
2874
+ var newList = [].concat(_toConsumableArray(list));
2875
+ if (newList.findIndex(function (item) {
2876
+ return item.path === path;
2877
+ }) >= 0) return newList;else newList.push({ name: name, path: path, meta: meta });
2878
+ return newList;
2879
+ };
2880
+
2881
+ var getNewAppTagList = function getNewAppTagList(list, newRoute) {
2882
+ var name = newRoute.name,
2883
+ path = newRoute.path,
2884
+ meta = newRoute.meta,
2885
+ query = newRoute.query;
2886
+
2887
+ var newList = [].concat(_toConsumableArray(list));
2888
+ if (newList.findIndex(function (item) {
2889
+ return item.path === path;
2890
+ }) >= 0 || path === '/app/system') return newList;else newList.push({ name: name, path: path, meta: meta, query: query });
2891
+ return newList;
2892
+ };
2893
+ /**
2894
+ * @param {String} url
2895
+ * @description 从URL中解析参数
2896
+ */
2897
+ var getParams = function getParams(url) {
2898
+ var keyValueArr = url.split('?')[1].split('&');
2899
+ var paramObj = {};
2900
+ keyValueArr.forEach(function (item) {
2901
+ var keyValue = item.split('=');
2902
+ paramObj[keyValue[0]] = keyValue[1];
2903
+ });
2904
+ return paramObj;
2905
+ };
2906
+
2907
+ /**
2908
+ * @param {Array} list 标签列表
2909
+ * @param {String} name 当前关闭的标签的name
2910
+ */
2911
+ var getNextRoute = function getNextRoute(list, route) {
2912
+ var res = {};
2913
+ if (list.length === 2) {
2914
+ res = getHomeRoute(list);
2915
+ } else {
2916
+ var index = list.findIndex(function (item) {
2917
+ return routeEqual(item, route);
2918
+ });
2919
+ if (index === list.length - 1) res = list[list.length - 2];else res = list[index + 1];
2920
+ }
2921
+ return res;
2922
+ };
2923
+
2924
+ var getNextAppRoute = function getNextAppRoute(list, route) {
2925
+ var res = {};
2926
+ if (list.length === 1) {
2927
+ // res = getHomeRoute(list)
2928
+ } else {
2929
+ var index = list.findIndex(function (item) {
2930
+ return routeEqual(item, route);
2931
+ });
2932
+ if (index === list.length - 1) res = list[list.length - 2];else res = list[index + 1];
2933
+ }
2934
+ return res;
2935
+ };
2936
+
2937
+ /**
2938
+ * @param {Number} times 回调函数需要执行的次数
2939
+ * @param {Function} callback 回调函数
2940
+ */
2941
+ var doCustomTimes = function doCustomTimes(times, callback) {
2942
+ var i = -1;
2943
+ while (++i < times) {
2944
+ callback(i);
2945
+ }
2946
+ };
2947
+
2948
+ /**
2949
+ * @param {Object} file 从上传组件得到的文件对象
2950
+ * @returns {Promise} resolve参数是解析后的二维数组
2951
+ * @description 从Csv文件中解析出表格,解析成二维数组
2952
+ */
2953
+ var getArrayFromFile = function getArrayFromFile(file) {
2954
+ var nameSplit = file.name.split('.');
2955
+ var format = nameSplit[nameSplit.length - 1];
2956
+ return new Promise(function (resolve, reject) {
2957
+ var reader = new FileReader();
2958
+ reader.readAsText(file); // 以文本格式读取
2959
+ var arr = [];
2960
+ reader.onload = function (evt) {
2961
+ var data = evt.target.result; // 读到的数据
2962
+ var pasteData = data.trim();
2963
+ arr = pasteData.split(/[\n\u0085\u2028\u2029]|\r\n?/g).map(function (row) {
2964
+ return row.split('\t');
2965
+ }).map(function (item) {
2966
+ return item[0].split(',');
2967
+ });
2968
+ if (format === 'csv') resolve(arr);else reject(new Error('[Format Error]:你上传的不是Csv文件'));
2969
+ };
2970
+ });
2971
+ };
2972
+
2973
+ /**
2974
+ * @param {Array} array 表格数据二维数组
2975
+ * @returns {Object} { columns, tableData }
2976
+ * @description 从二维数组中获取表头和表格数据,将第一行作为表头,用于在iView的表格中展示数据
2977
+ */
2978
+ var getTableDataFromArray = function getTableDataFromArray(array) {
2979
+ var columns = [];
2980
+ var tableData = [];
2981
+ if (array.length > 1) {
2982
+ var titles = array.shift();
2983
+ columns = titles.map(function (item) {
2984
+ return {
2985
+ title: item,
2986
+ key: item
2987
+ };
2988
+ });
2989
+ tableData = array.map(function (item) {
2990
+ var res = {};
2991
+ item.forEach(function (col, i) {
2992
+ res[titles[i]] = col;
2993
+ });
2994
+ return res;
2995
+ });
2996
+ }
2997
+ return {
2998
+ columns: columns,
2999
+ tableData: tableData
3000
+ };
3001
+ };
3002
+
3003
+ var findNodeUpper = function findNodeUpper(ele, tag) {
3004
+ if (ele.parentNode) {
3005
+ if (ele.parentNode.tagName === tag.toUpperCase()) {
3006
+ return ele.parentNode;
3007
+ } else {
3008
+ return findNodeUpper(ele.parentNode, tag);
3009
+ }
3010
+ }
3011
+ };
3012
+
3013
+ var findNodeUpperByClasses = function findNodeUpperByClasses(ele, classes) {
3014
+ var parentNode = ele.parentNode;
3015
+ if (parentNode) {
3016
+ var classList = parentNode.classList;
3017
+ if (classList && classes.every(function (className) {
3018
+ return classList.contains(className);
3019
+ })) {
3020
+ return parentNode;
3021
+ } else {
3022
+ return findNodeUpperByClasses(parentNode, classes);
3023
+ }
3024
+ }
3025
+ };
3026
+
3027
+ var findNodeDownward = function findNodeDownward(ele, tag) {
3028
+ var tagName = tag.toUpperCase();
3029
+ if (ele.childNodes.length) {
3030
+ var i = -1;
3031
+ var len = ele.childNodes.length;
3032
+ while (++i < len) {
3033
+ var child = ele.childNodes[i];
3034
+ if (child.tagName === tagName) return child;else return findNodeDownward(child, tag);
3035
+ }
3036
+ }
3037
+ };
3038
+
3039
+ var showByAccess = function showByAccess(access, canViewAccess) {
3040
+ return Object(__WEBPACK_IMPORTED_MODULE_2__libs_tools__["b" /* hasOneOf */])(canViewAccess, access);
3041
+ };
3042
+
3043
+ /**
3044
+ * @description 根据name/params/query判断两个路由对象是否相等
3045
+ * @param {*} route1 路由对象
3046
+ * @param {*} route2 路由对象
3047
+ */
3048
+ var routeEqual = function routeEqual(route1, route2) {
3049
+ var params1 = route1.params || {};
3050
+ var params2 = route2.params || {};
3051
+ var query1 = route1.query || {};
3052
+ var query2 = route2.query || {};
3053
+ return route1.path === route2.path && Object(__WEBPACK_IMPORTED_MODULE_2__libs_tools__["c" /* objEqual */])(params1, params2) && Object(__WEBPACK_IMPORTED_MODULE_2__libs_tools__["c" /* objEqual */])(query1, query2);
3054
+ };
3055
+
3056
+ var routeEqualNew = function routeEqualNew(route1, route2) {
3057
+ return route1.path === route2.path;
3058
+ };
3059
+
3060
+ /**
3061
+ * 判断打开的标签列表里是否已存在这个新添加的路由对象
3062
+ */
3063
+ var routeHasExist = function routeHasExist(tagNavList, routeItem) {
3064
+ var len = tagNavList.length;
3065
+ var res = false;
3066
+ doCustomTimes(len, function (index) {
3067
+ if (routeEqual(tagNavList[index], routeItem)) res = true;
3068
+ });
3069
+ return res;
3070
+ };
3071
+
3072
+ var routeHasExistNew = function routeHasExistNew(tagNavList, routeItem) {
3073
+ var len = tagNavList.length;
3074
+ var res = false;
3075
+ doCustomTimes(len, function (index) {
3076
+ if (routeEqualNew(tagNavList[index], routeItem)) res = true;
3077
+ });
3078
+ return res;
3079
+ };
3080
+
3081
+ var localSave = function localSave(key, value) {
3082
+ localStorage.setItem(key, value);
3083
+ };
3084
+
3085
+ var localRead = function localRead(key) {
3086
+ return localStorage.getItem(key) || '';
3087
+ };
3088
+
3089
+ // scrollTop animation
3090
+ var scrollTop = function scrollTop(el) {
3091
+ var from = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
3092
+ var to = arguments[2];
3093
+ var duration = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 500;
3094
+ var endCallback = arguments[4];
3095
+
3096
+ if (!window.requestAnimationFrame) {
3097
+ window.requestAnimationFrame = window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.msRequestAnimationFrame || function (callback) {
3098
+ return window.setTimeout(callback, 1000 / 60);
3099
+ };
3100
+ }
3101
+ var difference = Math.abs(from - to);
3102
+ var step = Math.ceil(difference / duration * 50);
3103
+
3104
+ var scroll = function scroll(start, end, step) {
3105
+ if (start === end) {
3106
+ endCallback && endCallback();
3107
+ return;
3108
+ }
3109
+
3110
+ var d = start + step > end ? end : start + step;
3111
+ if (start > end) {
3112
+ d = start - step < end ? end : start - step;
3113
+ }
3114
+
3115
+ if (el === window) {
3116
+ window.scrollTo(d, d);
3117
+ } else {
3118
+ el.scrollTop = d;
3119
+ }
3120
+ window.requestAnimationFrame(function () {
3121
+ return scroll(d, end, step);
3122
+ });
3123
+ };
3124
+ scroll(from, to, step);
3125
+ };
3126
+
3127
+ /**
3128
+ * @description 根据当前跳转的路由设置显示在浏览器标签的title
3129
+ * @param {Object} routeItem 路由对象
3130
+ * @param {Object} vm Vue实例
3131
+ */
3132
+ var setTitle = function setTitle(routeItem, vm) {
3133
+ var handledRoute = getRouteTitleHandled(routeItem);
3134
+ var pageTitle = showTitle(handledRoute, vm);
3135
+ var resTitle = pageTitle ? title + ' - ' + pageTitle : title;
3136
+ window.document.title = resTitle;
3137
+ };
3138
+
3139
+ /**
3140
+ * @description 身份证校验
3141
+ * @param {String} id 身份证号码
3142
+ */
3143
+ var identityIsTrue = function identityIsTrue(id) {
3144
+ var paternMainLand = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}X)$)$/;
3145
+ var patternHongkong = /^((\s?[A-Za-z])|([A-Za-z]{2}))\d{6}(\([0-9aA]\)|[0-9aA])$/;
3146
+ var patternTaiwan = /^[a-zA-Z][0-9]{9}$/;
3147
+ var patternMacao = /^[1|5|7][0-9]{6}\([0-9Aa]\)/;
3148
+ var isMainLand = paternMainLand.test(id);
3149
+ var isHongKong = patternHongkong.test(id);
3150
+ var isTaiwan = patternTaiwan.test(id);
3151
+ var isMacao = patternMacao.test(id);
3152
+ return isMainLand || isHongKong || isTaiwan || isMacao;
3153
+ };
3154
+ /**
3155
+ * @description: 统一输入验证方法
3156
+ */
3157
+ var validatorFunc = function validatorFunc(val, mess, reg, cb) {
3158
+ if (reg && reg.test(val)) {} else if (reg && Boolean(val)) {
3159
+ cb(new Error('\u8F93\u5165\u7684' + mess + '\u975E\u6CD5'));
3160
+ }
3161
+ cb();
3162
+ };
3163
+
3164
+ // 统一长度验证
3165
+ var lengthLimited = { type: 'string', max: 20, message: '不能超过20个字符', trigger: 'blur'
3166
+
3167
+ // 验证密码有效性
3168
+ };function isPassword(str) {
3169
+ str = str || '';
3170
+ str = str.trim();
3171
+ return str.length >= 6 && str.length <= 12;
3172
+ }
3173
+
3174
+ // 树转化为数组
3175
+ var flatTree = function flatTree(tree) {
3176
+ var childrenKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'children';
3177
+
3178
+ if (Array.isArray(tree)) {
3179
+ return tree.reduce(function (res, child) {
3180
+ return res.concat(flatTree(child));
3181
+ }, []);
3182
+ }
3183
+ if (tree[childrenKey] && tree[childrenKey].length) {
3184
+ var subTrees = tree[childrenKey].reduce(function (res, child) {
3185
+ return res.concat(flatTree(child));
3186
+ }, []);
3187
+ return [tree].concat(subTrees);
3188
+ } else {
3189
+ return [tree];
3190
+ }
3191
+ };
3192
+ // 数组转化为树
3193
+ var arrayToTree = function arrayToTree(arr, isParent) {
3194
+ var childrenKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children';
3195
+
3196
+ var copyArr = arr.slice();
3197
+ var rootArr = arr.slice();
3198
+ var _iteratorNormalCompletion = true;
3199
+ var _didIteratorError = false;
3200
+ var _iteratorError = undefined;
3201
+
3202
+ try {
3203
+ for (var _iterator = copyArr[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
3204
+ var p = _step.value;
3205
+ var _iteratorNormalCompletion2 = true;
3206
+ var _didIteratorError2 = false;
3207
+ var _iteratorError2 = undefined;
3208
+
3209
+ try {
3210
+ for (var _iterator2 = copyArr[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
3211
+ var c = _step2.value;
3212
+
3213
+ var flag = isParent(p, c);
3214
+ if (flag) {
3215
+ if (!Array.isArray(p[childrenKey])) {
3216
+ p[childrenKey] = [];
3217
+ }
3218
+ p[childrenKey].push(c);
3219
+ var i = rootArr.indexOf(c);
3220
+ rootArr.splice(i, 1);
3221
+ }
3222
+ }
3223
+ } catch (err) {
3224
+ _didIteratorError2 = true;
3225
+ _iteratorError2 = err;
3226
+ } finally {
3227
+ try {
3228
+ if (!_iteratorNormalCompletion2 && _iterator2.return) {
3229
+ _iterator2.return();
3230
+ }
3231
+ } finally {
3232
+ if (_didIteratorError2) {
3233
+ throw _iteratorError2;
3234
+ }
3235
+ }
3236
+ }
3237
+ }
3238
+ } catch (err) {
3239
+ _didIteratorError = true;
3240
+ _iteratorError = err;
3241
+ } finally {
3242
+ try {
3243
+ if (!_iteratorNormalCompletion && _iterator.return) {
3244
+ _iterator.return();
3245
+ }
3246
+ } finally {
3247
+ if (_didIteratorError) {
3248
+ throw _iteratorError;
3249
+ }
3250
+ }
3251
+ }
3252
+
3253
+ return rootArr;
3254
+ };
3255
+
3256
+ // 去除对象中的空字段
3257
+ var deleteNullField = function deleteNullField(obj) {
3258
+ if (!((typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object')) {
3259
+ return;
3260
+ }
3261
+ for (var key in obj) {
3262
+ if (obj.hasOwnProperty(key) && (obj[key] === null || obj[key] === undefined || obj[key] === '')) {
3263
+ delete obj[key];
3264
+ }
3265
+ }
3266
+ return obj;
3267
+ };
3268
+ // 深拷贝
3269
+ var deepCopy = function deepCopy(obj) {
3270
+ return JSON.parse(JSON.stringify(obj));
3271
+ };
3272
+ var throttle = function throttle(fn) {
3273
+ var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1000;
3274
+
3275
+ var timer = void 0;
3276
+ return function () {
3277
+ var _this = this;
3278
+
3279
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
3280
+ args[_key] = arguments[_key];
3281
+ }
3282
+
3283
+ clearTimeout(timer);
3284
+ timer = setTimeout(function () {
3285
+ fn.apply(_this, args);
3286
+ }, delay);
3287
+ };
3288
+ };
3289
+
3290
+ // // 通过后台的菜单树,构造路由
3291
+ var filterAsyncRouter = function filterAsyncRouter(routers) {
3292
+ routers = routers.filter(function (it) {
3293
+ return !it.disabled;
3294
+ });
3295
+ var accessedRoutes = routers.map(function (it) {
3296
+ if (it.children && it.children.length > 0) {
3297
+ it.children = filterAsyncRouter(it.children);
3298
+ }
3299
+ return transFormData(it);
3300
+ });
3301
+ return accessedRoutes;
3302
+ };
3303
+ var disabledChildren = function disabledChildren(data) {
3304
+ if (!data) return;
3305
+ data = data.filter(function (it) {
3306
+ return !it.disabled;
3307
+ });
3308
+ var _iteratorNormalCompletion3 = true;
3309
+ var _didIteratorError3 = false;
3310
+ var _iteratorError3 = undefined;
3311
+
3312
+ try {
3313
+ for (var _iterator3 = data[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
3314
+ var child = _step3.value;
3315
+
3316
+ child.children = disabledChildren(child.children);
3317
+ }
3318
+ } catch (err) {
3319
+ _didIteratorError3 = true;
3320
+ _iteratorError3 = err;
3321
+ } finally {
3322
+ try {
3323
+ if (!_iteratorNormalCompletion3 && _iterator3.return) {
3324
+ _iterator3.return();
3325
+ }
3326
+ } finally {
3327
+ if (_didIteratorError3) {
3328
+ throw _iteratorError3;
3329
+ }
3330
+ }
3331
+ }
3332
+
3333
+ return data;
3334
+ };
3335
+
3336
+ var transFormData = function transFormData(it) {
3337
+ var data = {
3338
+ name: it.code,
3339
+ path: it.url,
3340
+ id: it.id,
3341
+ meta: {
3342
+ icon: it.imgPath || 'ios-key',
3343
+ title: it.name,
3344
+ showMenu: it.showMenu
3345
+ },
3346
+ children: it.children
3347
+ };
3348
+ return data;
3349
+ };
3350
+
3351
+ /***/ }),
3352
+ /* 22 */
3353
+ /***/ (function(module, exports, __webpack_require__) {
3354
+
3355
+ /*! js-cookie v3.0.5 | MIT */
3356
+ ;
3357
+ (function (global, factory) {
3358
+ true ? module.exports = factory() :
3359
+ typeof define === 'function' && define.amd ? define(factory) :
3360
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () {
3361
+ var current = global.Cookies;
3362
+ var exports = global.Cookies = factory();
3363
+ exports.noConflict = function () { global.Cookies = current; return exports; };
3364
+ })());
3365
+ })(this, (function () { 'use strict';
3366
+
3367
+ /* eslint-disable no-var */
3368
+ function assign (target) {
3369
+ for (var i = 1; i < arguments.length; i++) {
3370
+ var source = arguments[i];
3371
+ for (var key in source) {
3372
+ target[key] = source[key];
3373
+ }
3374
+ }
3375
+ return target
3376
+ }
3377
+ /* eslint-enable no-var */
3378
+
3379
+ /* eslint-disable no-var */
3380
+ var defaultConverter = {
3381
+ read: function (value) {
3382
+ if (value[0] === '"') {
3383
+ value = value.slice(1, -1);
3384
+ }
3385
+ return value.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent)
3386
+ },
3387
+ write: function (value) {
3388
+ return encodeURIComponent(value).replace(
3389
+ /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,
3390
+ decodeURIComponent
3391
+ )
3392
+ }
3393
+ };
3394
+ /* eslint-enable no-var */
3395
+
3396
+ /* eslint-disable no-var */
3397
+
3398
+ function init (converter, defaultAttributes) {
3399
+ function set (name, value, attributes) {
3400
+ if (typeof document === 'undefined') {
3401
+ return
3402
+ }
3403
+
3404
+ attributes = assign({}, defaultAttributes, attributes);
3405
+
3406
+ if (typeof attributes.expires === 'number') {
3407
+ attributes.expires = new Date(Date.now() + attributes.expires * 864e5);
3408
+ }
3409
+ if (attributes.expires) {
3410
+ attributes.expires = attributes.expires.toUTCString();
3411
+ }
3412
+
3413
+ name = encodeURIComponent(name)
3414
+ .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)
3415
+ .replace(/[()]/g, escape);
3416
+
3417
+ var stringifiedAttributes = '';
3418
+ for (var attributeName in attributes) {
3419
+ if (!attributes[attributeName]) {
3420
+ continue
3421
+ }
3422
+
3423
+ stringifiedAttributes += '; ' + attributeName;
3424
+
3425
+ if (attributes[attributeName] === true) {
3426
+ continue
3427
+ }
3428
+
3429
+ // Considers RFC 6265 section 5.2:
3430
+ // ...
3431
+ // 3. If the remaining unparsed-attributes contains a %x3B (";")
3432
+ // character:
3433
+ // Consume the characters of the unparsed-attributes up to,
3434
+ // not including, the first %x3B (";") character.
3435
+ // ...
3436
+ stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];
3437
+ }
3438
+
3439
+ return (document.cookie =
3440
+ name + '=' + converter.write(value, name) + stringifiedAttributes)
3441
+ }
3442
+
3443
+ function get (name) {
3444
+ if (typeof document === 'undefined' || (arguments.length && !name)) {
3445
+ return
3446
+ }
3447
+
3448
+ // To prevent the for loop in the first place assign an empty array
3449
+ // in case there are no cookies at all.
3450
+ var cookies = document.cookie ? document.cookie.split('; ') : [];
3451
+ var jar = {};
3452
+ for (var i = 0; i < cookies.length; i++) {
3453
+ var parts = cookies[i].split('=');
3454
+ var value = parts.slice(1).join('=');
3455
+
3456
+ try {
3457
+ var found = decodeURIComponent(parts[0]);
3458
+ jar[found] = converter.read(value, found);
3459
+
3460
+ if (name === found) {
3461
+ break
3462
+ }
3463
+ } catch (e) {}
3464
+ }
3465
+
3466
+ return name ? jar[name] : jar
3467
+ }
3468
+
3469
+ return Object.create(
3470
+ {
3471
+ set,
3472
+ get,
3473
+ remove: function (name, attributes) {
3474
+ set(
3475
+ name,
3476
+ '',
3477
+ assign({}, attributes, {
3478
+ expires: -1
3479
+ })
3480
+ );
3481
+ },
3482
+ withAttributes: function (attributes) {
3483
+ return init(this.converter, assign({}, this.attributes, attributes))
3484
+ },
3485
+ withConverter: function (converter) {
3486
+ return init(assign({}, this.converter, converter), this.attributes)
3487
+ }
3488
+ },
3489
+ {
3490
+ attributes: { value: Object.freeze(defaultAttributes) },
3491
+ converter: { value: Object.freeze(converter) }
3492
+ }
3493
+ )
3494
+ }
3495
+
3496
+ var api = init(defaultConverter, { path: '/' });
3497
+ /* eslint-enable no-var */
3498
+
3499
+ return api;
3500
+
3501
+ }));
3502
+
3503
+
3504
+ /***/ }),
3505
+ /* 23 */
3506
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
3507
+
3508
+ "use strict";
3509
+ /* harmony default export */ __webpack_exports__["a"] = ({
3510
+ /**
3511
+ * @description 配置显示在浏览器标签的title
3512
+ */
3513
+ title: '基础支撑平台(BSP)',
3514
+ loginTitle: serverConfig.APP_NAME,
3515
+ copyRight: serverConfig.copyRight,
3516
+ version: serverConfig.version,
3517
+ /**
3518
+ * @description token在Cookie中存储的天数,默认1天
3519
+ */
3520
+ cookieExpires: 1,
3521
+ /**
3522
+ * @description 是否使用国际化,默认为false
3523
+ * 如果不使用,则需要在路由中给需要在菜单中展示的路由设置meta: {title: 'xxx'}
3524
+ * 用来在菜单中显示文字
3525
+ */
3526
+ useI18n: false,
3527
+ /**
3528
+ * @description api请求基础路径
3529
+ */
3530
+ baseUrl: {
3531
+ dev: '',
3532
+ pro: ''
3533
+ },
3534
+ /**
3535
+ * @description 默认打开的首页的路由name值,默认为home
3536
+ */
3537
+ homeName: '/home',
3538
+ /**
3539
+ * @description 需要加载的插件
3540
+ */
3541
+ plugin: {
3542
+ 'error-store': {
3543
+ showInHeader: false, // 设为false后不会在顶部显示错误日志徽标
3544
+ developmentOff: false // 设为true后在开发环境不会收集错误信息,方便开发中排查错误
3545
+ }
3546
+ }
3547
+ });
3548
+
3549
+ /***/ }),
3550
+ /* 24 */
3551
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
3552
+
3553
+ "use strict";
3554
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return forEach; });
3555
+ /* unused harmony export getIntersection */
3556
+ /* unused harmony export getUnion */
3557
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return hasOneOf; });
3558
+ /* unused harmony export oneOf */
3559
+ /* unused harmony export getRelativeTime */
3560
+ /* unused harmony export getExplorer */
3561
+ /* unused harmony export on */
3562
+ /* unused harmony export off */
3563
+ /* unused harmony export hasKey */
3564
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return objEqual; });
3565
+ /* unused harmony export emptyString */
3566
+ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
3567
+
3568
+ var forEach = function forEach(arr, fn) {
3569
+ if (!arr.length || !fn) return;
3570
+ var i = -1;
3571
+ var len = arr.length;
3572
+ while (++i < len) {
3573
+ var item = arr[i];
3574
+ fn(item, i, arr);
3575
+ }
3576
+ };
3577
+
3578
+ /**
3579
+ * @param {Array} arr1
3580
+ * @param {Array} arr2
3581
+ * @description 得到两个数组的交集, 两个数组的元素为数值或字符串
3582
+ */
3583
+ var getIntersection = function getIntersection(arr1, arr2) {
3584
+ var len = Math.min(arr1.length, arr2.length);
3585
+ var i = -1;
3586
+ var res = [];
3587
+ while (++i < len) {
3588
+ var item = arr2[i];
3589
+ if (arr1.indexOf(item) > -1) res.push(item);
3590
+ }
3591
+ return res;
3592
+ };
3593
+
3594
+ /**
3595
+ * @param {Array} arr1
3596
+ * @param {Array} arr2
3597
+ * @description 得到两个数组的并集, 两个数组的元素为数值或字符串
3598
+ */
3599
+ var getUnion = function getUnion(arr1, arr2) {
3600
+ return Array.from(new Set([].concat(_toConsumableArray(arr1), _toConsumableArray(arr2))));
3601
+ };
3602
+
3603
+ /**
3604
+ * @param {Array} target 目标数组
3605
+ * @param {Array} arr 需要查询的数组
3606
+ * @description 判断要查询的数组是否至少有一个元素包含在目标数组中
3607
+ */
3608
+ var hasOneOf = function hasOneOf(targetarr, arr) {
3609
+ return targetarr.some(function (_) {
3610
+ return arr.indexOf(_) > -1;
3611
+ });
3612
+ };
3613
+
3614
+ /**
3615
+ * @param {String|Number} value 要验证的字符串或数值
3616
+ * @param {*} validList 用来验证的列表
3617
+ */
3618
+ function oneOf(value, validList) {
3619
+ for (var i = 0; i < validList.length; i++) {
3620
+ if (value === validList[i]) {
3621
+ return true;
3622
+ }
3623
+ }
3624
+ return false;
3625
+ }
3626
+
3627
+ /**
3628
+ * @param {Number} timeStamp 判断时间戳格式是否是毫秒
3629
+ * @returns {Boolean}
3630
+ */
3631
+ var isMillisecond = function isMillisecond(timeStamp) {
3632
+ var timeStr = String(timeStamp);
3633
+ return timeStr.length > 10;
3634
+ };
3635
+
3636
+ /**
3637
+ * @param {Number} timeStamp 传入的时间戳
3638
+ * @param {Number} currentTime 当前时间时间戳
3639
+ * @returns {Boolean} 传入的时间戳是否早于当前时间戳
3640
+ */
3641
+ var isEarly = function isEarly(timeStamp, currentTime) {
3642
+ return timeStamp < currentTime;
3643
+ };
3644
+
3645
+ /**
3646
+ * @param {Number} num 数值
3647
+ * @returns {String} 处理后的字符串
3648
+ * @description 如果传入的数值小于10,即位数只有1位,则在前面补充0
3649
+ */
3650
+ var getHandledValue = function getHandledValue(num) {
3651
+ return num < 10 ? '0' + num : num;
3652
+ };
3653
+
3654
+ /**
3655
+ * @param {Number} timeStamp 传入的时间戳
3656
+ * @param {Number} startType 要返回的时间字符串的格式类型,传入'year'则返回年开头的完整时间
3657
+ */
3658
+ var getDate = function getDate(timeStamp, startType) {
3659
+ var d = new Date(timeStamp * 1000);
3660
+ var year = d.getFullYear();
3661
+ var month = getHandledValue(d.getMonth() + 1);
3662
+ var date = getHandledValue(d.getDate());
3663
+ var hours = getHandledValue(d.getHours());
3664
+ var minutes = getHandledValue(d.getMinutes());
3665
+ var second = getHandledValue(d.getSeconds());
3666
+ var resStr = '';
3667
+ if (startType === 'year') resStr = year + '-' + month + '-' + date + ' ' + hours + ':' + minutes + ':' + second;else resStr = month + '-' + date + ' ' + hours + ':' + minutes;
3668
+ return resStr;
3669
+ };
3670
+
3671
+ /**
3672
+ * @param {String|Number} timeStamp 时间戳
3673
+ * @returns {String} 相对时间字符串
3674
+ */
3675
+ var getRelativeTime = function getRelativeTime(timeStamp) {
3676
+ // 判断当前传入的时间戳是秒格式还是毫秒
3677
+ var IS_MILLISECOND = isMillisecond(timeStamp);
3678
+ // 如果是毫秒格式则转为秒格式
3679
+ if (IS_MILLISECOND) Math.floor(timeStamp /= 1000);
3680
+ // 传入的时间戳可以是数值或字符串类型,这里统一转为数值类型
3681
+ timeStamp = Number(timeStamp);
3682
+ // 获取当前时间时间戳
3683
+ var currentTime = Math.floor(Date.parse(new Date()) / 1000);
3684
+ // 判断传入时间戳是否早于当前时间戳
3685
+ var IS_EARLY = isEarly(timeStamp, currentTime);
3686
+ // 获取两个时间戳差值
3687
+ var diff = currentTime - timeStamp;
3688
+ // 如果IS_EARLY为false则差值取反
3689
+ if (!IS_EARLY) diff = -diff;
3690
+ var resStr = '';
3691
+ var dirStr = IS_EARLY ? '前' : '后';
3692
+ // 少于等于59秒
3693
+ if (diff <= 59) resStr = diff + '秒' + dirStr;
3694
+ // 多于59秒,少于等于59分钟59秒
3695
+ else if (diff > 59 && diff <= 3599) resStr = Math.floor(diff / 60) + '分钟' + dirStr;
3696
+ // 多于59分钟59秒,少于等于23小时59分钟59秒
3697
+ else if (diff > 3599 && diff <= 86399) resStr = Math.floor(diff / 3600) + '小时' + dirStr;
3698
+ // 多于23小时59分钟59秒,少于等于29天59分钟59秒
3699
+ else if (diff > 86399 && diff <= 2623859) resStr = Math.floor(diff / 86400) + '天' + dirStr;
3700
+ // 多于29天59分钟59秒,少于364天23小时59分钟59秒,且传入的时间戳早于当前
3701
+ else if (diff > 2623859 && diff <= 31567859 && IS_EARLY) resStr = getDate(timeStamp);else resStr = getDate(timeStamp, 'year');
3702
+ return resStr;
3703
+ };
3704
+
3705
+ /**
3706
+ * @returns {String} 当前浏览器名称
3707
+ */
3708
+ var getExplorer = function getExplorer() {
3709
+ var ua = window.navigator.userAgent;
3710
+ var isExplorer = function isExplorer(exp) {
3711
+ return ua.indexOf(exp) > -1;
3712
+ };
3713
+ if (isExplorer('MSIE')) return 'IE';else if (isExplorer('Firefox')) return 'Firefox';else if (isExplorer('Chrome')) return 'Chrome';else if (isExplorer('Opera')) return 'Opera';else if (isExplorer('Safari')) return 'Safari';
3714
+ };
3715
+
3716
+ /**
3717
+ * @description 绑定事件 on(element, event, handler)
3718
+ */
3719
+ var on = function () {
3720
+ if (document.addEventListener) {
3721
+ return function (element, event, handler) {
3722
+ if (element && event && handler) {
3723
+ element.addEventListener(event, handler, false);
3724
+ }
3725
+ };
3726
+ } else {
3727
+ return function (element, event, handler) {
3728
+ if (element && event && handler) {
3729
+ element.attachEvent('on' + event, handler);
3730
+ }
3731
+ };
3732
+ }
3733
+ }();
3734
+
3735
+ /**
3736
+ * @description 解绑事件 off(element, event, handler)
3737
+ */
3738
+ var off = function () {
3739
+ if (document.removeEventListener) {
3740
+ return function (element, event, handler) {
3741
+ if (element && event) {
3742
+ element.removeEventListener(event, handler, false);
3743
+ }
3744
+ };
3745
+ } else {
3746
+ return function (element, event, handler) {
3747
+ if (element && event) {
3748
+ element.detachEvent('on' + event, handler);
3749
+ }
3750
+ };
3751
+ }
3752
+ }();
3753
+
3754
+ /**
3755
+ * 判断一个对象是否存在key,如果传入第二个参数key,则是判断这个obj对象是否存在key这个属性
3756
+ * 如果没有传入key这个参数,则判断obj对象是否有键值对
3757
+ */
3758
+ var hasKey = function hasKey(obj, key) {
3759
+ if (key) return key in obj;else {
3760
+ var keysArr = Object.keys(obj);
3761
+ return keysArr.length;
3762
+ }
3763
+ };
3764
+
3765
+ /**
3766
+ * @param {*} obj1 对象
3767
+ * @param {*} obj2 对象
3768
+ * @description 判断两个对象是否相等,这两个对象的值只能是数字或字符串
3769
+ */
3770
+ var objEqual = function objEqual(obj1, obj2) {
3771
+ var keysArr1 = Object.keys(obj1);
3772
+ var keysArr2 = Object.keys(obj2);
3773
+ if (keysArr1.length !== keysArr2.length) return false;else if (keysArr1.length === 0 && keysArr2.length === 0) return true;
3774
+ /* eslint-disable-next-line */
3775
+ else return !keysArr1.some(function (key) {
3776
+ return obj1[key] != obj2[key];
3777
+ });
3778
+ };
3779
+
3780
+ /* unused harmony default export */ var _unused_webpack_default_export = ({
3781
+ objEqual: objEqual,
3782
+ getExplorer: getExplorer,
3783
+ closeGridModal: function closeGridModal(modalId) {
3784
+ window.parent.postMessage({
3785
+ cmd: 'closeGridModal',
3786
+ modalId: modalId
3787
+ }, '*');
3788
+ },
3789
+ // 字段转驼峰
3790
+ toCamel: function toCamel(name) {
3791
+ return name.replace(/\_(\w)/g, function (all, letter) {
3792
+ return letter.toUpperCase();
3793
+ });
3794
+ },
3795
+ // 对象转驼峰
3796
+ objToCamel: function objToCamel(obj) {
3797
+ var newObj = {};
3798
+ for (var key in obj) {
3799
+ var newKey = this.toCamel(key);
3800
+ newObj[newKey] = obj[key];
3801
+ }
3802
+ return newObj;
3803
+ },
3804
+ validateNum: function validateNum(rule, value, callback) {
3805
+ if (isNaN(value) || parseInt(value) < 0) {
3806
+ callback(new Error('请输入正确的数字1'));
3807
+ } else {
3808
+ var num = parseInt(value);
3809
+ var n = Math.floor(Number(value));
3810
+ if (n !== Infinity && String(n) === value + '' && n >= 0) {
3811
+ callback();
3812
+ } else {
3813
+ callback(new Error('请输入正确的数字'));
3814
+ }
3815
+ }
3816
+ },
3817
+
3818
+ // 只验证数字,不验证非必填
3819
+ validateNumOnly: function validateNumOnly(rule, value, callback) {
3820
+ if (!value) {
3821
+ callback();
3822
+ }
3823
+ if (parseInt(value) < 0) {
3824
+ callback(new Error('请输入正确的数字'));
3825
+ } else {
3826
+ var num = parseInt(value);
3827
+ var n = Math.floor(Number(value));
3828
+ if (n !== Infinity && String(n) === value + '' && n >= 0) {
3829
+ callback();
3830
+ } else {
3831
+ callback(new Error('请输入正确的数字'));
3832
+ }
3833
+ }
3834
+ }
3835
+ });
3836
+
3837
+ /**
3838
+ * 空字符串返回 true
3839
+ * @param str1 ... 多个string
3840
+ * @returns {*|boolean}
3841
+ */
3842
+ var emptyString = function emptyString() {
3843
+ for (var i = 0; i < arguments.length; i++) {
3844
+ if (arguments[i] && arguments[i].trim().length) {
3845
+ return false;
3846
+ }
3847
+ }
3848
+ return true;
3849
+ };
3850
+
3851
+ /***/ })
3852
+ /******/ ]);
3853
+ });
3854
+ //# sourceMappingURL=sd-dic-tree-grid.js.map