@mdsfe/mds-ui 0.2.0 → 0.2.9-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/CHANGELOG.md +178 -0
  2. package/README.md +9 -9
  3. package/dist/_mixin/popper.js +1 -0
  4. package/dist/_util/_popper/dom-helper.js +284 -0
  5. package/dist/_util/_popper/popper-mixin.js +35 -0
  6. package/dist/_util/_popper/popper.js +1267 -0
  7. package/dist/_util/_popper/popup/popup-main.js +224 -0
  8. package/dist/_util/_popper/popup/popup-manager.js +205 -0
  9. package/dist/_util/_popper/vue-popper.js +204 -0
  10. package/dist/_util/popup/index.js +1 -1
  11. package/dist/_util/tree/node.js +2 -0
  12. package/dist/_util/tree/tree.js +65 -21
  13. package/dist/_util/util.js +29 -1
  14. package/dist/affix.js +18 -18
  15. package/dist/anchor.js +18 -18
  16. package/dist/avatar.js +17 -17
  17. package/dist/backtop.js +19 -19
  18. package/dist/badge.js +21 -21
  19. package/dist/bordershadow.js +20 -9
  20. package/dist/breadcrumb.js +18 -18
  21. package/dist/button.js +21 -21
  22. package/dist/card.js +18 -18
  23. package/dist/carousel.js +76 -76
  24. package/dist/cascader.js +4980 -0
  25. package/dist/cascaderpanel.js +645 -603
  26. package/dist/checkbox.js +23 -23
  27. package/dist/col.js +14 -14
  28. package/dist/collapse.js +6 -6
  29. package/dist/color.js +6 -6
  30. package/dist/datepicker.js +2487 -266
  31. package/dist/divider.js +19 -19
  32. package/dist/drawer.js +787 -37
  33. package/dist/dropdown.js +150 -104
  34. package/dist/empty.js +19 -19
  35. package/dist/font/iconfont.28359fa.ttf +0 -0
  36. package/dist/font/iconfont.486e3d3.woff2 +0 -0
  37. package/dist/font/iconfont.675049e.woff +0 -0
  38. package/dist/font.js +6 -6
  39. package/dist/form.js +28 -26
  40. package/dist/icon.js +55 -47
  41. package/dist/index.js +1 -1
  42. package/dist/input.js +65 -49
  43. package/dist/inputnumber.js +59 -39
  44. package/dist/layout.js +25 -25
  45. package/dist/list.js +17 -17
  46. package/dist/loading.js +21 -8
  47. package/dist/mds-ui.min.css +3 -3
  48. package/dist/mds-ui.min.js +19183 -15407
  49. package/dist/menu.js +31 -31
  50. package/dist/message.js +773 -24
  51. package/dist/modal.js +1146 -307
  52. package/dist/notification.js +27 -27
  53. package/dist/pagination.js +78 -55
  54. package/dist/popconfirm.js +36 -36
  55. package/dist/popover.js +2778 -48
  56. package/dist/progress.js +107 -65
  57. package/dist/radio.js +56 -54
  58. package/dist/rate.js +67 -59
  59. package/dist/row.js +14 -14
  60. package/dist/select.js +847 -503
  61. package/dist/slider.js +25 -25
  62. package/dist/slottable.js +2663 -129
  63. package/dist/steps.js +18 -18
  64. package/dist/style/affix.css +224 -2
  65. package/dist/style/anchor.css +224 -2
  66. package/dist/style/avatar.css +224 -2
  67. package/dist/style/badge.css +224 -2
  68. package/dist/style/bordershadow.css +236 -59
  69. package/dist/style/breadcrumb.css +224 -2
  70. package/dist/style/button.css +234 -5
  71. package/dist/style/card.css +224 -2
  72. package/dist/style/carousel.css +224 -2
  73. package/dist/style/cascader.css +214 -0
  74. package/dist/style/cascaderpanel.css +13 -16
  75. package/dist/style/checkbox.css +230 -8
  76. package/dist/style/col.css +225 -3
  77. package/dist/style/collapse.css +224 -2
  78. package/dist/style/color.css +224 -2
  79. package/dist/style/datepicker.css +236 -2
  80. package/dist/style/divider.css +227 -2
  81. package/dist/style/drawer.css +224 -2
  82. package/dist/style/dropdown.css +234 -5
  83. package/dist/style/empty.css +224 -2
  84. package/dist/style/font.css +226 -4
  85. package/dist/style/form.css +224 -2
  86. package/dist/style/icon.css +226 -3
  87. package/dist/style/input.css +231 -5
  88. package/dist/style/inputnumber.css +224 -2
  89. package/dist/style/layout.css +224 -2
  90. package/dist/style/list.css +224 -2
  91. package/dist/style/loading.css +2527 -2
  92. package/dist/style/menu.css +340 -129
  93. package/dist/style/message.css +1 -4
  94. package/dist/style/modal.css +247 -25
  95. package/dist/style/notification.css +224 -2
  96. package/dist/style/pagination.css +236 -7
  97. package/dist/style/popconfirm.css +334 -180
  98. package/dist/style/popover.css +324 -177
  99. package/dist/style/progress.css +226 -3
  100. package/dist/style/radio.css +225 -3
  101. package/dist/style/rate.css +226 -3
  102. package/dist/style/row.css +225 -3
  103. package/dist/style/select.css +240 -12
  104. package/dist/style/slider.css +224 -2
  105. package/dist/style/slottable.css +350 -149
  106. package/dist/style/steps.css +224 -2
  107. package/dist/style/switch.css +224 -2
  108. package/dist/style/table.css +458 -314
  109. package/dist/style/tabs.css +225 -18
  110. package/dist/style/tag.css +224 -2
  111. package/dist/style/text.css +224 -2
  112. package/dist/style/timeline.css +224 -2
  113. package/dist/style/timepicker.css +231 -6
  114. package/dist/style/tooltip.css +340 -129
  115. package/dist/style/tree.css +228 -6
  116. package/dist/style/typography.css +224 -2
  117. package/dist/style/upload.css +224 -2
  118. package/dist/switch.js +20 -20
  119. package/dist/table.js +3071 -201
  120. package/dist/tabs.js +24 -22
  121. package/dist/tag.js +17 -23
  122. package/dist/text.js +38 -22
  123. package/dist/timeline.js +14 -14
  124. package/dist/timepicker.js +3063 -172
  125. package/dist/tooltip.js +2550 -27
  126. package/dist/transfer.js +28 -28
  127. package/dist/transition.js +6 -6
  128. package/dist/tree.js +316 -171
  129. package/dist/typography.js +6 -6
  130. package/dist/upload.js +46 -38
  131. package/package.json +9 -5
@@ -1,13 +1,13 @@
1
1
  (function webpackUniversalModuleDefinition(root, factory) {
2
2
  if(typeof exports === 'object' && typeof module === 'object')
3
- module.exports = factory(require("./icon"), require("vue"), require("./checkbox"), require("./_util/merge"));
3
+ module.exports = factory(require("vue"), require("./icon"), require("./checkbox"), require("./_util/merge"));
4
4
  else if(typeof define === 'function' && define.amd)
5
- define(["./icon", "vue", "./checkbox", "./_util/merge"], factory);
5
+ define(["vue", "./icon", "./checkbox", "./_util/merge"], factory);
6
6
  else {
7
- var a = typeof exports === 'object' ? factory(require("./icon"), require("vue"), require("./checkbox"), require("./_util/merge")) : factory(root["./icon"], root["Vue"], root["./checkbox"], root["./_util/merge"]);
7
+ var a = typeof exports === 'object' ? factory(require("vue"), require("./icon"), require("./checkbox"), require("./_util/merge")) : factory(root["Vue"], root["./icon"], root["./checkbox"], root["./_util/merge"]);
8
8
  for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
9
9
  }
10
- })(window, function(__WEBPACK_EXTERNAL_MODULE__4__, __WEBPACK_EXTERNAL_MODULE__5__, __WEBPACK_EXTERNAL_MODULE__28__, __WEBPACK_EXTERNAL_MODULE__43__) {
10
+ })(window, function(__WEBPACK_EXTERNAL_MODULE__2__, __WEBPACK_EXTERNAL_MODULE__8__, __WEBPACK_EXTERNAL_MODULE__36__, __WEBPACK_EXTERNAL_MODULE__49__) {
11
11
  return /******/ (function(modules) { // webpackBootstrap
12
12
  /******/ // The module cache
13
13
  /******/ var installedModules = {};
@@ -91,7 +91,7 @@ return /******/ (function(modules) { // webpackBootstrap
91
91
  /******/
92
92
  /******/
93
93
  /******/ // Load entry module and return exports
94
- /******/ return __webpack_require__(__webpack_require__.s = 94);
94
+ /******/ return __webpack_require__(__webpack_require__.s = 102);
95
95
  /******/ })
96
96
  /************************************************************************/
97
97
  /******/ ({
@@ -203,447 +203,84 @@ function normalizeComponent (
203
203
 
204
204
  /***/ }),
205
205
 
206
- /***/ 1:
207
- /***/ (function(module, exports) {
208
-
209
- module.exports = require("babel-runtime/helpers/defineProperty");
210
-
211
- /***/ }),
212
-
213
- /***/ 11:
214
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
215
-
216
- "use strict";
217
- /* unused harmony export noop */
218
- /* unused harmony export getOffsetLeft */
219
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getValueByPath; });
220
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return valueEquals; });
221
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return arrayFindIndex; });
222
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return arrayFind; });
223
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return coerceTruthyValueToArray; });
224
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isIE; });
225
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isEdge; });
226
- /* unused harmony export isFirefox */
227
- /* unused harmony export assert */
228
- /* unused harmony export escapeRegexpString */
229
- /* unused harmony export getOffsetWidth */
230
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isFunction; });
231
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
232
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
233
-
234
- var noop = function noop() {};
235
-
236
- var getScroll = function getScroll(w, top) {
237
- var ret = top ? w.pageYOffset : w.pageXOffset;
238
- var method = top ? 'scrollTop' : 'scrollLeft';
239
- if (typeof ret !== 'number') {
240
- var d = w.document;
241
- // ie6,7,8 standard mode
242
- ret = d.documentElement[method];
243
- if (typeof ret !== 'number') {
244
- // quirks mode
245
- ret = d.body[method];
246
- }
247
- }
248
- return ret;
249
- };
250
-
251
- var getClientPosition = function getClientPosition(elem) {
252
- var box = void 0;
253
- var x = void 0;
254
- var y = void 0;
255
- var doc = elem.ownerDocument;
256
- var body = doc.body;
257
- var docElem = doc && doc.documentElement;
258
- box = elem.getBoundingClientRect();
259
- x = box.left;
260
- y = box.top;
261
- x -= docElem.clientLeft || body.clientLeft || 0;
262
- y -= docElem.clientTop || body.clientTop || 0;
263
- return {
264
- left: x,
265
- top: y
266
- };
267
- };
268
-
269
- var getOffsetLeft = function getOffsetLeft(el) {
270
- var pos = getClientPosition(el);
271
- var doc = el.ownerDocument;
272
- var w = doc.defaultView || doc.parentWindow;
273
- pos.left += getScroll(w);
274
- return pos.left;
275
- };
276
- /**
277
- * 获取对象深层级的对象,避免循环
278
- * @export
279
- * @param {*} sourceObj 源对象 {a:{b:{d:1}}}
280
- * @param {*} pathName path组成的数组 例如:'a.b.c'
281
- * @param {*} defaultValue 如果没有值默认的值 []
282
- */
283
- function getValueByPath(sourceObj, pathName, defaultValue) {
284
- var getValue = function getValue(sourceObj, pathNameArray) {
285
- var key = pathNameArray.shift();
286
- var value = sourceObj[key];
287
- if (value === undefined || value === null) {
288
- return defaultValue;
289
- } else if (pathNameArray.length === 0) {
290
- return value;
291
- } else if (pathNameArray.length > 0) {
292
- return getValue(value, pathNameArray);
293
- }
294
- };
295
- var pathNameArray = pathName.split('.');
296
- return getValue(sourceObj, pathNameArray);
297
- }
298
- /**
299
- *
300
- * 判断两个数是否相等
301
- * @param {*} a
302
- * @param {*} b
303
- * @returns
304
- */
305
- var valueEquals = function valueEquals(a, b) {
306
- // see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
307
- if (a === b) return true;
308
- if (!(a instanceof Array)) return false;
309
- if (!(b instanceof Array)) return false;
310
- if (a.length !== b.length) return false;
311
- for (var i = 0; i !== a.length; ++i) {
312
- if (a[i] !== b[i]) return false;
313
- }
314
- return true;
315
- };
316
- // TODO: use native Array.find, Array.findIndex when IE support is dropped
317
- var arrayFindIndex = function arrayFindIndex(arr, pred) {
318
- for (var i = 0; i !== arr.length; ++i) {
319
- if (pred(arr[i])) {
320
- return i;
321
- }
322
- }
323
- return -1;
324
- };
325
-
326
- var arrayFind = function arrayFind(arr, pred) {
327
- var idx = arrayFindIndex(arr, pred);
328
- return idx !== -1 ? arr[idx] : undefined;
329
- };
330
-
331
- // coerce truthy value to array
332
- var coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
333
- if (Array.isArray(val)) {
334
- return val;
335
- } else if (val) {
336
- return [val];
337
- } else {
338
- return [];
339
- }
340
- };
341
-
342
- var isIE = function isIE() {
343
- return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !isNaN(Number(document.documentMode));
344
- };
345
-
346
- var isEdge = function isEdge() {
347
- return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && navigator.userAgent.indexOf('Edge') > -1;
348
- };
349
-
350
- var isFirefox = function isFirefox() {
351
- return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i);
352
- };
353
-
354
- var assert = function assert(condition, msg) {
355
- if (!condition) throw new Error('[mds-ui] ' + msg);
356
- };
357
- /**
358
- *
359
- * 特殊字符转译
360
- * @param {string} [value='']
361
- */
362
- var escapeRegexpString = function escapeRegexpString() {
363
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
364
- return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
365
- };
366
- /**
367
- * Get element offset width
368
- * @param {*} node HTMLDOMElemment
369
- * @return {Number} width
370
- */
371
- /**
372
- * Get element offset width
373
- * @param {*} node HTMLDOMElemment
374
- * @return {Number} width
375
- */
376
- var getOffsetWidth = function getOffsetWidth(node) {
377
- return node ? node.offsetWidth : 0;
378
- };
379
-
380
- /** 判断是否为函数
381
- * @param {*} functionToCheck
382
- * @returns
383
- */
384
- var isFunction = function isFunction(functionToCheck) {
385
- var getType = {};
386
- return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
387
- };
388
-
389
- /***/ }),
390
-
391
- /***/ 19:
392
- /***/ (function(module, exports) {
393
-
394
- module.exports = require("babel-runtime/helpers/extends");
395
-
396
- /***/ }),
397
-
398
- /***/ 20:
399
- /***/ (function(module, exports) {
400
-
401
- module.exports = require("babel-runtime/core-js/get-iterator");
402
-
403
- /***/ }),
404
-
405
- /***/ 24:
206
+ /***/ 102:
406
207
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
407
208
 
408
209
  "use strict";
210
+ // ESM COMPAT FLAG
211
+ __webpack_require__.r(__webpack_exports__);
409
212
 
410
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/scroll-bar/scroll-bar.vue?vue&type=template&id=2fbcec38&
213
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/cascaderpanel/panel.vue?vue&type=template&id=1352ea60&
411
214
  var render = function () {
412
215
  var _vm = this
413
216
  var _h = _vm.$createElement
414
217
  var _c = _vm._self._c || _h
415
218
  return _c(
416
- "ul",
417
- { ref: "wrap", class: _vm.classes, attrs: { role: "mds-scroll-bar" } },
418
- [_vm._t("default")],
419
- 2
219
+ "div",
220
+ {
221
+ ref: "panel",
222
+ class: ["mds-cascader-panel", _vm.size, _vm.border && "is-bordered"],
223
+ style: {
224
+ "max-height": _vm.maxHeight,
225
+ },
226
+ },
227
+ _vm._l(_vm.expandedPanels, function (panel, index) {
228
+ return _c(
229
+ "div",
230
+ { key: index, staticClass: "mds-cascader-panel-level" },
231
+ [
232
+ panel && panel.length
233
+ ? [
234
+ _c(
235
+ "mds-scroll-bar",
236
+ _vm._l(panel, function (node) {
237
+ return _c("mds-cascader-option", {
238
+ key: node.key,
239
+ attrs: {
240
+ expandTrigger: _vm.expandTrigger,
241
+ checkStrictly: _vm.checkStrictly,
242
+ node: node,
243
+ },
244
+ on: {
245
+ "choose-node": _vm.chooseNode,
246
+ "change-multi-node": _vm.changeMultiNode,
247
+ "change-single-strict-node": _vm.changeSingleStrictNode,
248
+ },
249
+ })
250
+ }),
251
+ 1
252
+ ),
253
+ ]
254
+ : [
255
+ _c("div", { staticClass: "mds-cascader-panel-empty-wrapper" }, [
256
+ _c("div", { staticClass: "mds-cascader-panel-empty-text" }, [
257
+ _vm._v(
258
+ "\n " +
259
+ _vm._s(_vm.loading ? "加载中..." : "暂无数据") +
260
+ "\n "
261
+ ),
262
+ ]),
263
+ ]),
264
+ ],
265
+ ],
266
+ 2
267
+ )
268
+ }),
269
+ 0
420
270
  )
421
271
  }
422
272
  var staticRenderFns = []
423
273
  render._withStripped = true
424
274
 
425
275
 
426
- // CONCATENATED MODULE: ./components/scroll-bar/scroll-bar.vue?vue&type=template&id=2fbcec38&
276
+ // CONCATENATED MODULE: ./components/cascaderpanel/panel.vue?vue&type=template&id=1352ea60&
427
277
 
428
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./components/scroll-bar/scroll-bar.vue?vue&type=script&lang=js&
429
- //
430
- //
431
- //
432
- //
433
- //
434
- //
435
- //
436
- //
437
- //
438
-
439
- /* harmony default export */ var scroll_barvue_type_script_lang_js_ = ({
440
- name: 'mdsScrollBar',
441
- props: {
442
- prefixCls: {
443
- type: String,
444
- default: 'mds-scroll-bar'
445
- }
446
- },
447
- data: function data() {
448
- return {};
449
- },
450
-
451
- computed: {
452
- classes: function classes() {
453
- var prefixCls = this.prefixCls;
454
- return ['' + prefixCls, prefixCls + '-root'];
455
- },
456
- wrap: function wrap() {
457
- return this.$refs.wrap;
458
- }
459
- },
460
- methods: {},
461
- created: function created() {}
462
- });
463
- // CONCATENATED MODULE: ./components/scroll-bar/scroll-bar.vue?vue&type=script&lang=js&
464
- /* harmony default export */ var scroll_bar_scroll_barvue_type_script_lang_js_ = (scroll_barvue_type_script_lang_js_);
465
- // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
466
- var componentNormalizer = __webpack_require__(0);
467
-
468
- // CONCATENATED MODULE: ./components/scroll-bar/scroll-bar.vue
469
-
470
-
471
-
472
-
473
-
474
- /* normalize component */
475
-
476
- var component = Object(componentNormalizer["a" /* default */])(
477
- scroll_bar_scroll_barvue_type_script_lang_js_,
478
- render,
479
- staticRenderFns,
480
- false,
481
- null,
482
- null,
483
- null
484
-
485
- )
486
-
487
- /* hot reload */
488
- if (false) { var api; }
489
- component.options.__file = "components/scroll-bar/scroll-bar.vue"
490
- /* harmony default export */ var scroll_bar = (component.exports);
491
- // CONCATENATED MODULE: ./components/scroll-bar/index.js
492
-
493
-
494
- /* harmony default export */ var components_scroll_bar = __webpack_exports__["a"] = (scroll_bar);
495
-
496
- /***/ }),
497
-
498
- /***/ 255:
499
- /***/ (function(module, exports) {
500
-
501
- // removed by extract-text-webpack-plugin
502
-
503
- /***/ }),
504
-
505
- /***/ 257:
506
- /***/ (function(module, exports) {
507
-
508
- // removed by extract-text-webpack-plugin
509
-
510
- /***/ }),
511
-
512
- /***/ 26:
513
- /***/ (function(module, exports) {
514
-
515
- module.exports = require("babel-runtime/helpers/classCallCheck");
516
-
517
- /***/ }),
518
-
519
- /***/ 27:
520
- /***/ (function(module, exports) {
521
-
522
- module.exports = require("babel-runtime/helpers/createClass");
523
-
524
- /***/ }),
525
-
526
- /***/ 28:
527
- /***/ (function(module, exports) {
528
-
529
- module.exports = __WEBPACK_EXTERNAL_MODULE__28__;
530
-
531
- /***/ }),
532
-
533
- /***/ 4:
534
- /***/ (function(module, exports) {
535
-
536
- module.exports = __WEBPACK_EXTERNAL_MODULE__4__;
537
-
538
- /***/ }),
539
-
540
- /***/ 40:
541
- /***/ (function(module, exports) {
542
-
543
- module.exports = require("babel-runtime/core-js/map");
544
-
545
- /***/ }),
546
-
547
- /***/ 43:
548
- /***/ (function(module, exports) {
549
-
550
- module.exports = __WEBPACK_EXTERNAL_MODULE__43__;
551
-
552
- /***/ }),
553
-
554
- /***/ 5:
555
- /***/ (function(module, exports) {
556
-
557
- module.exports = __WEBPACK_EXTERNAL_MODULE__5__;
558
-
559
- /***/ }),
560
-
561
- /***/ 8:
562
- /***/ (function(module, exports) {
563
-
564
- module.exports = require("babel-runtime/helpers/typeof");
565
-
566
- /***/ }),
567
-
568
- /***/ 94:
569
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
570
-
571
- "use strict";
572
- // ESM COMPAT FLAG
573
- __webpack_require__.r(__webpack_exports__);
574
-
575
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/cascaderpanel/panel.vue?vue&type=template&id=1352ea60&
576
- var render = function () {
577
- var _vm = this
578
- var _h = _vm.$createElement
579
- var _c = _vm._self._c || _h
580
- return _c(
581
- "div",
582
- {
583
- ref: "panel",
584
- class: ["mds-cascader-panel", _vm.size, _vm.border && "is-bordered"],
585
- style: {
586
- "max-height": _vm.maxHeight,
587
- },
588
- },
589
- _vm._l(_vm.expandedPanels, function (panel, index) {
590
- return _c(
591
- "div",
592
- { key: index, staticClass: "mds-cascader-panel-level" },
593
- [
594
- panel && panel.length
595
- ? [
596
- _c(
597
- "mds-scroll-bar",
598
- _vm._l(panel, function (node) {
599
- return _c("mds-cascader-option", {
600
- key: node.key,
601
- attrs: {
602
- expandTrigger: _vm.expandTrigger,
603
- checkStrictly: _vm.checkStrictly,
604
- node: node,
605
- },
606
- on: {
607
- "choose-node": _vm.chooseNode,
608
- "change-multi-node": _vm.changeMultiNode,
609
- "change-single-strict-node": _vm.changeSingleStrictNode,
610
- },
611
- })
612
- }),
613
- 1
614
- ),
615
- ]
616
- : [_vm._m(0, true)],
617
- ],
618
- 2
619
- )
620
- }),
621
- 0
622
- )
623
- }
624
- var staticRenderFns = [
625
- function () {
626
- var _vm = this
627
- var _h = _vm.$createElement
628
- var _c = _vm._self._c || _h
629
- return _c("div", { staticClass: "mds-cascader-panel-empty-wrapper" }, [
630
- _c("div", { staticClass: "mds-cascader-panel-empty-text" }, [
631
- _vm._v("暂无数据"),
632
- ]),
633
- ])
634
- },
635
- ]
636
- render._withStripped = true
637
-
638
-
639
- // CONCATENATED MODULE: ./components/cascaderpanel/panel.vue?vue&type=template&id=1352ea60&
640
-
641
- // EXTERNAL MODULE: external "babel-runtime/helpers/extends"
642
- var extends_ = __webpack_require__(19);
643
- var extends_default = /*#__PURE__*/__webpack_require__.n(extends_);
278
+ // EXTERNAL MODULE: external "babel-runtime/helpers/extends"
279
+ var extends_ = __webpack_require__(26);
280
+ var extends_default = /*#__PURE__*/__webpack_require__.n(extends_);
644
281
 
645
282
  // EXTERNAL MODULE: ./components/scroll-bar/index.js + 5 modules
646
- var scroll_bar = __webpack_require__(24);
283
+ var scroll_bar = __webpack_require__(27);
647
284
 
648
285
  // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/cascaderpanel/option.vue?vue&type=template&id=48d0e24e&
649
286
  var optionvue_type_template_id_48d0e24e_render = function () {
@@ -716,15 +353,15 @@ optionvue_type_template_id_48d0e24e_render._withStripped = true
716
353
  // CONCATENATED MODULE: ./components/cascaderpanel/option.vue?vue&type=template&id=48d0e24e&
717
354
 
718
355
  // EXTERNAL MODULE: external "babel-runtime/helpers/defineProperty"
719
- var defineProperty_ = __webpack_require__(1);
356
+ var defineProperty_ = __webpack_require__(3);
720
357
  var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty_);
721
358
 
722
359
  // EXTERNAL MODULE: external "./icon"
723
- var external_icon_ = __webpack_require__(4);
360
+ var external_icon_ = __webpack_require__(8);
724
361
  var external_icon_default = /*#__PURE__*/__webpack_require__.n(external_icon_);
725
362
 
726
363
  // EXTERNAL MODULE: external "./checkbox"
727
- var external_checkbox_ = __webpack_require__(28);
364
+ var external_checkbox_ = __webpack_require__(36);
728
365
  var external_checkbox_default = /*#__PURE__*/__webpack_require__.n(external_checkbox_);
729
366
 
730
367
  // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./components/cascaderpanel/option.vue?vue&type=script&lang=js&
@@ -880,7 +517,6 @@ var external_checkbox_default = /*#__PURE__*/__webpack_require__.n(external_chec
880
517
  node.selected = false;
881
518
  }
882
519
  });
883
- console.log(checkflag);
884
520
  this.$emit('change-single-strict-node', this.node);
885
521
  }
886
522
  }
@@ -914,23 +550,23 @@ if (false) { var api; }
914
550
  component.options.__file = "components/cascaderpanel/option.vue"
915
551
  /* harmony default export */ var cascaderpanel_option = (component.exports);
916
552
  // EXTERNAL MODULE: external "babel-runtime/core-js/get-iterator"
917
- var get_iterator_ = __webpack_require__(20);
553
+ var get_iterator_ = __webpack_require__(23);
918
554
  var get_iterator_default = /*#__PURE__*/__webpack_require__.n(get_iterator_);
919
555
 
920
556
  // EXTERNAL MODULE: external "babel-runtime/core-js/map"
921
- var map_ = __webpack_require__(40);
557
+ var map_ = __webpack_require__(30);
922
558
  var map_default = /*#__PURE__*/__webpack_require__.n(map_);
923
559
 
924
560
  // EXTERNAL MODULE: external "babel-runtime/helpers/typeof"
925
- var typeof_ = __webpack_require__(8);
561
+ var typeof_ = __webpack_require__(9);
926
562
  var typeof_default = /*#__PURE__*/__webpack_require__.n(typeof_);
927
563
 
928
564
  // EXTERNAL MODULE: external "babel-runtime/helpers/classCallCheck"
929
- var classCallCheck_ = __webpack_require__(26);
565
+ var classCallCheck_ = __webpack_require__(34);
930
566
  var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck_);
931
567
 
932
568
  // EXTERNAL MODULE: external "babel-runtime/helpers/createClass"
933
- var createClass_ = __webpack_require__(27);
569
+ var createClass_ = __webpack_require__(35);
934
570
  var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass_);
935
571
 
936
572
  // CONCATENATED MODULE: ./components/cascaderpanel/modal/cas-node.js
@@ -1687,8 +1323,8 @@ var cas_tree_Tree = function () {
1687
1323
  }
1688
1324
  }
1689
1325
  }, {
1690
- key: 'delectNodeByKey',
1691
- value: function delectNodeByKey(keys) {
1326
+ key: 'deleteNodeByKey',
1327
+ value: function deleteNodeByKey(keys) {
1692
1328
  var _this6 = this;
1693
1329
 
1694
1330
  if (Array.isArray(keys)) {
@@ -1730,11 +1366,11 @@ var copyNode = function copyNode(node, tree) {
1730
1366
  return newData;
1731
1367
  };
1732
1368
  // EXTERNAL MODULE: external "./_util/merge"
1733
- var merge_ = __webpack_require__(43);
1369
+ var merge_ = __webpack_require__(49);
1734
1370
  var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
1735
1371
 
1736
1372
  // EXTERNAL MODULE: ./components/_util/util.js
1737
- var util = __webpack_require__(11);
1373
+ var util = __webpack_require__(15);
1738
1374
 
1739
1375
  // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./components/cascaderpanel/panel.vue?vue&type=script&lang=js&
1740
1376
 
@@ -1774,6 +1410,8 @@ var util = __webpack_require__(11);
1774
1410
  //
1775
1411
  //
1776
1412
  //
1413
+ //
1414
+ //
1777
1415
 
1778
1416
 
1779
1417
 
@@ -1800,6 +1438,7 @@ var DefaultProps = {
1800
1438
  return {
1801
1439
  tree: null,
1802
1440
  root: null,
1441
+ loading: true,
1803
1442
  expandedPanels: []
1804
1443
  };
1805
1444
  },
@@ -1849,7 +1488,7 @@ var DefaultProps = {
1849
1488
  },
1850
1489
  computed: {
1851
1490
  isLazy: function isLazy() {
1852
- return Object(util["f" /* isFunction */])(this.loadData);
1491
+ return Object(util["g" /* isFunction */])(this.loadData);
1853
1492
  },
1854
1493
  config: function config() {
1855
1494
  return merge_default()(extends_default()({}, DefaultProps), this.prop || {});
@@ -1945,10 +1584,8 @@ var DefaultProps = {
1945
1584
  }
1946
1585
  this.expandNode(node);
1947
1586
  } else {
1948
- if (!node.isLeaf) {
1949
- this.emitExpandChange(path, data);
1950
- this.expandNode(node);
1951
- }
1587
+ this.emitExpandChange(path, data);
1588
+ this.expandNode(node);
1952
1589
  }
1953
1590
  },
1954
1591
 
@@ -1971,12 +1608,7 @@ var DefaultProps = {
1971
1608
  }
1972
1609
  // 多选
1973
1610
  if (this.multiple) {
1974
- // 叶子节点不触发事件
1975
- if (node.isLeaf) {
1976
- return false;
1977
- } else {
1978
- // 非叶子节点已经展开,且为倒数第二级则不触发展开事件
1979
- }
1611
+ // 非叶子节点已经展开,且为倒数第二级则不触发展开事件
1980
1612
  if (node.isExpanded && node.childNodes.length && node.childNodes[0].isLeaf) {
1981
1613
  return false;
1982
1614
  }
@@ -2075,6 +1707,10 @@ var DefaultProps = {
2075
1707
  i++;
2076
1708
  }
2077
1709
  this.expandedPanels = panels;
1710
+ this.emitResetPanelMaxWidth();
1711
+ },
1712
+ emitResetPanelMaxWidth: function emitResetPanelMaxWidth() {
1713
+ this.$emit('reset-panel-max-width');
2078
1714
  },
2079
1715
 
2080
1716
  /**
@@ -2083,6 +1719,8 @@ var DefaultProps = {
2083
1719
  lazyLoad: function lazyLoad(node) {
2084
1720
  var _this3 = this;
2085
1721
 
1722
+ // 标记是否需要异步懒加载
1723
+ var needLoad = false;
2086
1724
  var path = node.getPath(true).reverse();
2087
1725
  var panels = [];
2088
1726
  var levelList = [node.tree.root.childNodes];
@@ -2094,8 +1732,10 @@ var DefaultProps = {
2094
1732
  if (path[i] && item.key === path[i].key && !item.isLeaf) {
2095
1733
  item.isExpanded = true;
2096
1734
  if (!item.loaded) {
1735
+ needLoad = true;
2097
1736
  // 当前点击节点走懒加载
2098
1737
  item.loading = true;
1738
+ _this3.loading = true;
2099
1739
  var _this = _this3;
2100
1740
  _this3.loadData(node, function (data) {
2101
1741
  if (!Array.isArray(data)) {
@@ -2110,6 +1750,8 @@ var DefaultProps = {
2110
1750
  node.handleIsLeaf();
2111
1751
  panels.push(node.childNodes);
2112
1752
  _this.expandedPanels = panels;
1753
+ _this.loading = false;
1754
+ _this3.emitResetPanelMaxWidth();
2113
1755
  });
2114
1756
  } else {
2115
1757
  levelList.push(item.childNodes);
@@ -2120,159 +1762,517 @@ var DefaultProps = {
2120
1762
  i++;
2121
1763
  }
2122
1764
  this.expandedPanels = panels;
2123
- console.log(this.expandedPanels);
1765
+ if (!needLoad) {
1766
+ this.emitResetPanelMaxWidth();
1767
+ }
1768
+ },
1769
+
1770
+ /**
1771
+ * 弹射expandchange事件
1772
+ */
1773
+ emitExpandChange: function emitExpandChange(path, data) {
1774
+ if (this.isCascader) {
1775
+ this.$emit('expand-change', path, data);
1776
+ } else {
1777
+ this.$emit('expand-change', path.map(function (item) {
1778
+ return item.key;
1779
+ }), data);
1780
+ }
1781
+ },
1782
+
1783
+ /**
1784
+ * 初始化展开数据
1785
+ */
1786
+ setDefaultExpand: function setDefaultExpand(val) {
1787
+ var _this4 = this;
1788
+
1789
+ if (!val || !val.length) return;
1790
+ var targetKey = Array.isArray(val) ? val[val.length - 1] : val;
1791
+ var node = this.tree.nodesMap.get(targetKey);
1792
+ if (!node) {
1793
+ this.$emit('clearInput');
1794
+ return;
1795
+ }
1796
+ var path = this.getDefaultPath(node);
1797
+ var tempPath = path.map(function (item) {
1798
+ if (item.key === targetKey) {
1799
+ _this4.expandNode(item);
1800
+ item.selected = true;
1801
+ }
1802
+ return item;
1803
+ });
1804
+ if (this.isCascader) {
1805
+ this.$emit('change', tempPath, node, true);
1806
+ }
1807
+ },
1808
+
1809
+ /**
1810
+ * 初始化多选展开数据
1811
+ */
1812
+ setMultiDefaultExpand: function setMultiDefaultExpand(val) {
1813
+ var tempTags = Array.isArray(val) ? val : [val];
1814
+ var tempMaps = {};
1815
+ tempTags.forEach(function (item) {
1816
+ tempMaps[item] = true;
1817
+ });
1818
+ var multiTags = [];
1819
+ var nodeMap = this.tree.nodesMap;
1820
+ nodeMap.forEach(function (node) {
1821
+ if (tempMaps[node.key] && node.isLeaf) {
1822
+ node.check = true;
1823
+ multiTags.push(node);
1824
+ }
1825
+ });
1826
+ this.$emit('set-multi-tags', multiTags);
2124
1827
  },
2125
1828
 
2126
- /**
2127
- * 弹射expandchange事件
2128
- */
2129
- emitExpandChange: function emitExpandChange(path, data) {
2130
- if (this.isCascader) {
2131
- this.$emit('expand-change', path, data);
2132
- } else {
2133
- this.$emit('expand-change', path.map(function (item) {
2134
- return item.key;
2135
- }), data);
2136
- }
2137
- },
1829
+ /**
1830
+ * 获取初始路径
1831
+ */
1832
+ getDefaultPath: function getDefaultPath(node) {
1833
+ var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
1834
+
1835
+ if (!node.data) return path;
1836
+ path.unshift(node);
1837
+ if (node.parent && node.level > 1) {
1838
+ return this.getDefaultPath(node.parent, path);
1839
+ } else {
1840
+ return path;
1841
+ }
1842
+ },
1843
+
1844
+ /**
1845
+ * 重置面板
1846
+ */
1847
+ resetPanel: function resetPanel() {
1848
+ this.tree.clearSelectedNode();
1849
+ this.tree.clearExpandNode();
1850
+ this.expandedPanels = [this.root.childNodes];
1851
+ },
1852
+
1853
+ /**
1854
+ * 初始化搜索面板
1855
+ */
1856
+ initfilterOptions: function initfilterOptions() {
1857
+ var leafQueue = this.flatNodes([], this.root.childNodes);
1858
+ leafQueue = this.setFilterLabel(leafQueue);
1859
+ this.$emit('init-filter-options', leafQueue);
1860
+ },
1861
+ flatNodes: function flatNodes(res, data) {
1862
+ var _this5 = this;
1863
+
1864
+ data.forEach(function (node) {
1865
+ if (node.isLeaf) {
1866
+ res.push(node);
1867
+ } else {
1868
+ _this5.flatNodes(res, node.childNodes);
1869
+ }
1870
+ });
1871
+ return res;
1872
+ },
1873
+
1874
+ /**
1875
+ * 设定筛选项的名称
1876
+ */
1877
+ setFilterLabel: function setFilterLabel(data) {
1878
+ var _this6 = this;
1879
+
1880
+ var label = void 0;
1881
+ var disabledArr = [];
1882
+ var concatLabel = function concatLabel(node) {
1883
+ if (node.level > 1) {
1884
+ label = node.parent.label + _this6.separator + label;
1885
+ disabledArr.push(!!node.disabled);
1886
+ concatLabel(node.parent);
1887
+ }
1888
+ };
1889
+
1890
+ data.forEach(function (node) {
1891
+ label = node.label;
1892
+ disabledArr = [];
1893
+ concatLabel(node);
1894
+ if (_this6.showAllLevels) {
1895
+ node.filterLabel = label;
1896
+ } else {
1897
+ node.filterLabel = node.label;
1898
+ }
1899
+ node.filterDisabled = disabledArr.some(function (item) {
1900
+ return item;
1901
+ });
1902
+ });
1903
+ return data;
1904
+ },
1905
+
1906
+ /**
1907
+ * 设置value
1908
+ */
1909
+ setValue: function setValue(val) {
1910
+ if (this.multiple) {
1911
+ this.setMultiDefaultExpand(val);
1912
+ return;
1913
+ }
1914
+ this.setDefaultExpand(val);
1915
+ }
1916
+ },
1917
+ created: function created() {
1918
+ this.initTree();
1919
+ },
1920
+ mounted: function mounted() {
1921
+ this.setValue(this.value);
1922
+ }
1923
+ });
1924
+ // CONCATENATED MODULE: ./components/cascaderpanel/panel.vue?vue&type=script&lang=js&
1925
+ /* harmony default export */ var cascaderpanel_panelvue_type_script_lang_js_ = (panelvue_type_script_lang_js_);
1926
+ // CONCATENATED MODULE: ./components/cascaderpanel/panel.vue
1927
+
1928
+
1929
+
1930
+
1931
+
1932
+ /* normalize component */
1933
+
1934
+ var panel_component = Object(componentNormalizer["a" /* default */])(
1935
+ cascaderpanel_panelvue_type_script_lang_js_,
1936
+ render,
1937
+ staticRenderFns,
1938
+ false,
1939
+ null,
1940
+ null,
1941
+ null
1942
+
1943
+ )
1944
+
1945
+ /* hot reload */
1946
+ if (false) { var panel_api; }
1947
+ panel_component.options.__file = "components/cascaderpanel/panel.vue"
1948
+ /* harmony default export */ var panel = (panel_component.exports);
1949
+ // EXTERNAL MODULE: ./components/cascaderpanel/style/transition.less
1950
+ var transition = __webpack_require__(264);
1951
+
1952
+ // EXTERNAL MODULE: ./components/cascaderpanel/style/index.less
1953
+ var style = __webpack_require__(266);
1954
+
1955
+ // CONCATENATED MODULE: ./components/cascaderpanel/style/index.js
1956
+
1957
+
1958
+ // CONCATENATED MODULE: ./components/cascaderpanel/index.js
1959
+
1960
+
1961
+
1962
+ /* istanbul ignore next */
1963
+ panel.install = function (Vue) {
1964
+ Vue.component(panel.name, panel);
1965
+ };
1966
+ /* harmony default export */ var cascaderpanel = __webpack_exports__["default"] = (panel);
1967
+
1968
+ /***/ }),
1969
+
1970
+ /***/ 15:
1971
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1972
+
1973
+ "use strict";
1974
+ /* unused harmony export noop */
1975
+ /* unused harmony export getOffsetLeft */
1976
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getValueByPath; });
1977
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return valueEquals; });
1978
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return arrayFindIndex; });
1979
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return arrayFind; });
1980
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return coerceTruthyValueToArray; });
1981
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return isIE; });
1982
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isEdge; });
1983
+ /* unused harmony export isFirefox */
1984
+ /* unused harmony export assert */
1985
+ /* unused harmony export escapeRegexpString */
1986
+ /* unused harmony export getOffsetWidth */
1987
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isFunction; });
1988
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return fixBodyScroll; });
1989
+ /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
1990
+ /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
1991
+
1992
+
1993
+ // import { getScrollBarWidth } from './_popper/dom-helper'
1994
+ var currentBodyOverflow = '';
1995
+ // let currentBodyPaddingRight = ''
1996
+ var noop = function noop() {};
1997
+
1998
+ var getScroll = function getScroll(w, top) {
1999
+ var ret = top ? w.pageYOffset : w.pageXOffset;
2000
+ var method = top ? 'scrollTop' : 'scrollLeft';
2001
+ if (typeof ret !== 'number') {
2002
+ var d = w.document;
2003
+ // ie6,7,8 standard mode
2004
+ ret = d.documentElement[method];
2005
+ if (typeof ret !== 'number') {
2006
+ // quirks mode
2007
+ ret = d.body[method];
2008
+ }
2009
+ }
2010
+ return ret;
2011
+ };
2012
+
2013
+ var getClientPosition = function getClientPosition(elem) {
2014
+ var box = void 0;
2015
+ var x = void 0;
2016
+ var y = void 0;
2017
+ var doc = elem.ownerDocument;
2018
+ var body = doc.body;
2019
+ var docElem = doc && doc.documentElement;
2020
+ box = elem.getBoundingClientRect();
2021
+ x = box.left;
2022
+ y = box.top;
2023
+ x -= docElem.clientLeft || body.clientLeft || 0;
2024
+ y -= docElem.clientTop || body.clientTop || 0;
2025
+ return {
2026
+ left: x,
2027
+ top: y
2028
+ };
2029
+ };
2030
+
2031
+ var getOffsetLeft = function getOffsetLeft(el) {
2032
+ var pos = getClientPosition(el);
2033
+ var doc = el.ownerDocument;
2034
+ var w = doc.defaultView || doc.parentWindow;
2035
+ pos.left += getScroll(w);
2036
+ return pos.left;
2037
+ };
2038
+ /**
2039
+ * 获取对象深层级的对象,避免循环
2040
+ * @export
2041
+ * @param {*} sourceObj 源对象 {a:{b:{d:1}}}
2042
+ * @param {*} pathName path组成的数组 例如:'a.b.c'
2043
+ * @param {*} defaultValue 如果没有值默认的值 []
2044
+ */
2045
+ function getValueByPath(sourceObj, pathName, defaultValue) {
2046
+ var getValue = function getValue(sourceObj, pathNameArray) {
2047
+ var key = pathNameArray.shift();
2048
+ var value = sourceObj[key];
2049
+ if (value === undefined || value === null) {
2050
+ return defaultValue;
2051
+ } else if (pathNameArray.length === 0) {
2052
+ return value;
2053
+ } else if (pathNameArray.length > 0) {
2054
+ return getValue(value, pathNameArray);
2055
+ }
2056
+ };
2057
+ var pathNameArray = pathName.split('.');
2058
+ return getValue(sourceObj, pathNameArray);
2059
+ }
2060
+ /**
2061
+ *
2062
+ * 判断两个数是否相等
2063
+ * @param {*} a
2064
+ * @param {*} b
2065
+ * @returns
2066
+ */
2067
+ var valueEquals = function valueEquals(a, b) {
2068
+ // see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
2069
+ if (a === b) return true;
2070
+ if (!(a instanceof Array)) return false;
2071
+ if (!(b instanceof Array)) return false;
2072
+ if (a.length !== b.length) return false;
2073
+ for (var i = 0; i !== a.length; ++i) {
2074
+ if (a[i] !== b[i]) return false;
2075
+ }
2076
+ return true;
2077
+ };
2078
+ // TODO: use native Array.find, Array.findIndex when IE support is dropped
2079
+ var arrayFindIndex = function arrayFindIndex(arr, pred) {
2080
+ for (var i = 0; i !== arr.length; ++i) {
2081
+ if (pred(arr[i])) {
2082
+ return i;
2083
+ }
2084
+ }
2085
+ return -1;
2086
+ };
2087
+
2088
+ var arrayFind = function arrayFind(arr, pred) {
2089
+ var idx = arrayFindIndex(arr, pred);
2090
+ return idx !== -1 ? arr[idx] : undefined;
2091
+ };
2092
+
2093
+ // coerce truthy value to array
2094
+ var coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
2095
+ if (Array.isArray(val)) {
2096
+ return val;
2097
+ } else if (val) {
2098
+ return [val];
2099
+ } else {
2100
+ return [];
2101
+ }
2102
+ };
2103
+
2104
+ var isIE = function isIE() {
2105
+ return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !isNaN(Number(document.documentMode));
2106
+ };
2107
+
2108
+ var isEdge = function isEdge() {
2109
+ return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && navigator.userAgent.indexOf('Edge') > -1;
2110
+ };
2111
+
2112
+ var isFirefox = function isFirefox() {
2113
+ return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i);
2114
+ };
2115
+
2116
+ var assert = function assert(condition, msg) {
2117
+ if (!condition) throw new Error('[mds-ui] ' + msg);
2118
+ };
2119
+ /**
2120
+ *
2121
+ * 特殊字符转译
2122
+ * @param {string} [value='']
2123
+ */
2124
+ var escapeRegexpString = function escapeRegexpString() {
2125
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
2126
+ return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
2127
+ };
2128
+ /**
2129
+ * Get element offset width
2130
+ * @param {*} node HTMLDOMElemment
2131
+ * @return {Number} width
2132
+ */
2133
+ /**
2134
+ * Get element offset width
2135
+ * @param {*} node HTMLDOMElemment
2136
+ * @return {Number} width
2137
+ */
2138
+ var getOffsetWidth = function getOffsetWidth(node) {
2139
+ return node ? node.offsetWidth : 0;
2140
+ };
2141
+
2142
+ /** 判断是否为函数
2143
+ * @param {*} functionToCheck
2144
+ * @returns
2145
+ */
2146
+ var isFunction = function isFunction(functionToCheck) {
2147
+ var getType = {};
2148
+ return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
2149
+ };
2150
+
2151
+ /**
2152
+ * 弹窗类组件显现时修正body滚动
2153
+ * @param {Boolean} visible 弹窗显现状态
2154
+ */
2155
+ function fixBodyScroll(visible) {
2156
+ var bodyStyle = document.body.style;
2157
+ if (visible) {
2158
+ currentBodyOverflow = bodyStyle.overflow;
2159
+ // currentBodyPaddingRight = bodyStyle.paddingRight
2160
+ bodyStyle.overflow = 'hidden';
2161
+ // const basePaddingRight = parseInt(currentBodyPaddingRight || 0)
2162
+ // const baseScrollWidth = parseInt(getScrollBarWidth())
2163
+ // 防止页面抖动,后续需要自定义滚动条解决
2164
+ // bodyStyle.paddingRight = basePaddingRight + baseScrollWidth + 'px'
2165
+ } else {
2166
+ var timer = setTimeout(function () {
2167
+ clearTimeout(timer);
2168
+ bodyStyle.overflow = currentBodyOverflow;
2169
+ // bodyStyle.paddingRight = currentBodyPaddingRight
2170
+ // currentBodyPaddingRight = ''
2171
+ }, 180);
2172
+ }
2173
+ }
2174
+
2175
+ /***/ }),
2176
+
2177
+ /***/ 2:
2178
+ /***/ (function(module, exports) {
2179
+
2180
+ module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
2181
+
2182
+ /***/ }),
2183
+
2184
+ /***/ 23:
2185
+ /***/ (function(module, exports) {
2186
+
2187
+ module.exports = require("babel-runtime/core-js/get-iterator");
2188
+
2189
+ /***/ }),
2138
2190
 
2139
- /**
2140
- * 初始化展开数据
2141
- */
2142
- setDefaultExpand: function setDefaultExpand() {
2143
- var _this4 = this;
2191
+ /***/ 26:
2192
+ /***/ (function(module, exports) {
2144
2193
 
2145
- if (!this.value || !this.value.length) return;
2146
- var targetKey = Array.isArray(this.value) ? this.value[this.value.length - 1] : this.value;
2147
- var node = this.tree.nodesMap.get(targetKey);
2148
- if (!node) {
2149
- this.$emit('clearInput');
2150
- return;
2151
- }
2152
- var path = this.getDefaultPath(node);
2153
- var tempPath = path.map(function (item) {
2154
- if (item.key === targetKey) {
2155
- _this4.expandNode(item);
2156
- item.selected = true;
2157
- }
2158
- return item;
2159
- });
2160
- if (this.isCascader) {
2161
- this.$emit('change', tempPath, node, true);
2162
- }
2163
- },
2194
+ module.exports = require("babel-runtime/helpers/extends");
2164
2195
 
2165
- /**
2166
- * 初始化多选展开数据
2167
- */
2168
- setMultiDefaultExpand: function setMultiDefaultExpand() {
2169
- var tempTags = Array.isArray(this.value) ? this.value : [this.value];
2170
- var tempMaps = {};
2171
- tempTags.forEach(function (item) {
2172
- tempMaps[item] = true;
2173
- });
2174
- var multiTags = [];
2175
- var nodeMap = this.tree.nodesMap;
2176
- nodeMap.forEach(function (node) {
2177
- if (tempMaps[node.key] && node.isLeaf) {
2178
- node.check = true;
2179
- multiTags.push(node);
2180
- }
2181
- });
2182
- this.$emit('set-multi-tags', multiTags);
2183
- },
2196
+ /***/ }),
2184
2197
 
2185
- /**
2186
- * 获取初始路径
2187
- */
2188
- getDefaultPath: function getDefaultPath(node) {
2189
- var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
2198
+ /***/ 264:
2199
+ /***/ (function(module, exports) {
2190
2200
 
2191
- if (!node.data) return path;
2192
- path.unshift(node);
2193
- if (node.parent && node.level > 1) {
2194
- return this.getDefaultPath(node.parent, path);
2195
- } else {
2196
- return path;
2197
- }
2198
- },
2201
+ // removed by extract-text-webpack-plugin
2199
2202
 
2200
- /**
2201
- * 重置面板
2202
- */
2203
- resetPanel: function resetPanel() {
2204
- this.tree.clearSelectedNode();
2205
- this.tree.clearExpandNode();
2206
- this.expandedPanels = [this.root.childNodes];
2207
- },
2203
+ /***/ }),
2208
2204
 
2209
- /**
2210
- * 初始化搜索面板
2211
- */
2212
- initfilterOptions: function initfilterOptions() {
2213
- var leafQueue = this.flatNodes([], this.root.childNodes);
2214
- leafQueue = this.setFilterLabel(leafQueue);
2215
- this.$emit('init-filter-options', leafQueue);
2216
- },
2217
- flatNodes: function flatNodes(res, data) {
2218
- var _this5 = this;
2205
+ /***/ 266:
2206
+ /***/ (function(module, exports) {
2219
2207
 
2220
- data.forEach(function (node) {
2221
- if (node.isLeaf) {
2222
- res.push(node);
2223
- } else {
2224
- _this5.flatNodes(res, node.childNodes);
2225
- }
2226
- });
2227
- return res;
2228
- },
2208
+ // removed by extract-text-webpack-plugin
2229
2209
 
2230
- /**
2231
- * 设定筛选项的名称
2232
- */
2233
- setFilterLabel: function setFilterLabel(data) {
2234
- var _this6 = this;
2210
+ /***/ }),
2235
2211
 
2236
- var label = void 0;
2237
- var disabledArr = [];
2238
- var concatLabel = function concatLabel(node) {
2239
- if (node.level > 1) {
2240
- label = node.parent.label + _this6.separator + label;
2241
- disabledArr.push(!!node.disabled);
2242
- concatLabel(node.parent);
2243
- }
2244
- };
2212
+ /***/ 27:
2213
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2245
2214
 
2246
- data.forEach(function (node) {
2247
- label = node.label;
2248
- disabledArr = [];
2249
- concatLabel(node);
2250
- if (_this6.showAllLevels) {
2251
- node.filterLabel = label;
2252
- } else {
2253
- node.filterLabel = node.label;
2254
- }
2255
- node.filterDisabled = disabledArr.some(function (item) {
2256
- return item;
2257
- });
2258
- });
2259
- return data;
2215
+ "use strict";
2216
+
2217
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/scroll-bar/scroll-bar.vue?vue&type=template&id=2fbcec38&
2218
+ var render = function () {
2219
+ var _vm = this
2220
+ var _h = _vm.$createElement
2221
+ var _c = _vm._self._c || _h
2222
+ return _c(
2223
+ "ul",
2224
+ { ref: "wrap", class: _vm.classes, attrs: { role: "mds-scroll-bar" } },
2225
+ [_vm._t("default")],
2226
+ 2
2227
+ )
2228
+ }
2229
+ var staticRenderFns = []
2230
+ render._withStripped = true
2231
+
2232
+
2233
+ // CONCATENATED MODULE: ./components/scroll-bar/scroll-bar.vue?vue&type=template&id=2fbcec38&
2234
+
2235
+ // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./components/scroll-bar/scroll-bar.vue?vue&type=script&lang=js&
2236
+ //
2237
+ //
2238
+ //
2239
+ //
2240
+ //
2241
+ //
2242
+ //
2243
+ //
2244
+ //
2245
+
2246
+ /* harmony default export */ var scroll_barvue_type_script_lang_js_ = ({
2247
+ name: 'mdsScrollBar',
2248
+ props: {
2249
+ prefixCls: {
2250
+ type: String,
2251
+ default: 'mds-scroll-bar'
2260
2252
  }
2261
2253
  },
2262
- created: function created() {
2263
- this.initTree();
2254
+ data: function data() {
2255
+ return {};
2264
2256
  },
2265
- mounted: function mounted() {
2266
- if (this.multiple) {
2267
- this.setMultiDefaultExpand();
2268
- return;
2257
+
2258
+ computed: {
2259
+ classes: function classes() {
2260
+ var prefixCls = this.prefixCls;
2261
+ return ['' + prefixCls, prefixCls + '-root'];
2262
+ },
2263
+ wrap: function wrap() {
2264
+ return this.$refs.wrap;
2269
2265
  }
2270
- this.setDefaultExpand();
2271
- }
2266
+ },
2267
+ methods: {},
2268
+ created: function created() {}
2272
2269
  });
2273
- // CONCATENATED MODULE: ./components/cascaderpanel/panel.vue?vue&type=script&lang=js&
2274
- /* harmony default export */ var cascaderpanel_panelvue_type_script_lang_js_ = (panelvue_type_script_lang_js_);
2275
- // CONCATENATED MODULE: ./components/cascaderpanel/panel.vue
2270
+ // CONCATENATED MODULE: ./components/scroll-bar/scroll-bar.vue?vue&type=script&lang=js&
2271
+ /* harmony default export */ var scroll_bar_scroll_barvue_type_script_lang_js_ = (scroll_barvue_type_script_lang_js_);
2272
+ // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
2273
+ var componentNormalizer = __webpack_require__(0);
2274
+
2275
+ // CONCATENATED MODULE: ./components/scroll-bar/scroll-bar.vue
2276
2276
 
2277
2277
 
2278
2278
 
@@ -2280,8 +2280,8 @@ var DefaultProps = {
2280
2280
 
2281
2281
  /* normalize component */
2282
2282
 
2283
- var panel_component = Object(componentNormalizer["a" /* default */])(
2284
- cascaderpanel_panelvue_type_script_lang_js_,
2283
+ var component = Object(componentNormalizer["a" /* default */])(
2284
+ scroll_bar_scroll_barvue_type_script_lang_js_,
2285
2285
  render,
2286
2286
  staticRenderFns,
2287
2287
  false,
@@ -2292,27 +2292,69 @@ var panel_component = Object(componentNormalizer["a" /* default */])(
2292
2292
  )
2293
2293
 
2294
2294
  /* hot reload */
2295
- if (false) { var panel_api; }
2296
- panel_component.options.__file = "components/cascaderpanel/panel.vue"
2297
- /* harmony default export */ var panel = (panel_component.exports);
2298
- // EXTERNAL MODULE: ./components/cascaderpanel/style/transition.less
2299
- var transition = __webpack_require__(255);
2295
+ if (false) { var api; }
2296
+ component.options.__file = "components/scroll-bar/scroll-bar.vue"
2297
+ /* harmony default export */ var scroll_bar = (component.exports);
2298
+ // CONCATENATED MODULE: ./components/scroll-bar/index.js
2300
2299
 
2301
- // EXTERNAL MODULE: ./components/cascaderpanel/style/index.less
2302
- var style = __webpack_require__(257);
2303
2300
 
2304
- // CONCATENATED MODULE: ./components/cascaderpanel/style/index.js
2301
+ /* harmony default export */ var components_scroll_bar = __webpack_exports__["a"] = (scroll_bar);
2305
2302
 
2303
+ /***/ }),
2306
2304
 
2307
- // CONCATENATED MODULE: ./components/cascaderpanel/index.js
2305
+ /***/ 3:
2306
+ /***/ (function(module, exports) {
2308
2307
 
2308
+ module.exports = require("babel-runtime/helpers/defineProperty");
2309
2309
 
2310
+ /***/ }),
2310
2311
 
2311
- /* istanbul ignore next */
2312
- panel.install = function (Vue) {
2313
- Vue.component(panel.name, panel);
2314
- };
2315
- /* harmony default export */ var cascaderpanel = __webpack_exports__["default"] = (panel);
2312
+ /***/ 30:
2313
+ /***/ (function(module, exports) {
2314
+
2315
+ module.exports = require("babel-runtime/core-js/map");
2316
+
2317
+ /***/ }),
2318
+
2319
+ /***/ 34:
2320
+ /***/ (function(module, exports) {
2321
+
2322
+ module.exports = require("babel-runtime/helpers/classCallCheck");
2323
+
2324
+ /***/ }),
2325
+
2326
+ /***/ 35:
2327
+ /***/ (function(module, exports) {
2328
+
2329
+ module.exports = require("babel-runtime/helpers/createClass");
2330
+
2331
+ /***/ }),
2332
+
2333
+ /***/ 36:
2334
+ /***/ (function(module, exports) {
2335
+
2336
+ module.exports = __WEBPACK_EXTERNAL_MODULE__36__;
2337
+
2338
+ /***/ }),
2339
+
2340
+ /***/ 49:
2341
+ /***/ (function(module, exports) {
2342
+
2343
+ module.exports = __WEBPACK_EXTERNAL_MODULE__49__;
2344
+
2345
+ /***/ }),
2346
+
2347
+ /***/ 8:
2348
+ /***/ (function(module, exports) {
2349
+
2350
+ module.exports = __WEBPACK_EXTERNAL_MODULE__8__;
2351
+
2352
+ /***/ }),
2353
+
2354
+ /***/ 9:
2355
+ /***/ (function(module, exports) {
2356
+
2357
+ module.exports = require("babel-runtime/helpers/typeof");
2316
2358
 
2317
2359
  /***/ })
2318
2360