@britecore/bc-design-system 3.32.2 → 3.33.0

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 (162) hide show
  1. package/lib/actions-failure-dialog.js +8 -8
  2. package/lib/alert.js +8 -8
  3. package/lib/autocomplete.js +459 -890
  4. package/lib/badge.js +8 -8
  5. package/lib/breadcrumb-item.js +8 -8
  6. package/lib/breadcrumb.js +22 -22
  7. package/lib/breakpoint.js +16 -16
  8. package/lib/button-group.js +8 -8
  9. package/lib/button-link.js +10 -22
  10. package/lib/button.js +8 -8
  11. package/lib/card.js +8 -8
  12. package/lib/cascader-panel.js +128 -830
  13. package/lib/cascader.js +731 -1079
  14. package/lib/checkbox-button.js +8 -8
  15. package/lib/checkbox-group.js +8 -8
  16. package/lib/checkbox.js +8 -8
  17. package/lib/col.js +4 -4
  18. package/lib/collapse-item.js +18 -18
  19. package/lib/collapse.js +8 -8
  20. package/lib/data-filter.js +8 -8
  21. package/lib/data-table-action-buttons.js +20 -20
  22. package/lib/data-table-cell.js +10 -10
  23. package/lib/data-table-collapsible-row.js +8 -8
  24. package/lib/data-table-column-header.js +6 -6
  25. package/lib/data-table-column.js +6 -6
  26. package/lib/data-table-row.js +16 -16
  27. package/lib/data-table.js +100 -94
  28. package/lib/date-display.js +12 -12
  29. package/lib/date-picker.js +2436 -2873
  30. package/lib/dialog.js +59 -60
  31. package/lib/dropdown-item.js +8 -8
  32. package/lib/dropdown-menu.js +314 -315
  33. package/lib/dropdown.js +61 -61
  34. package/lib/element-ui.common.js +1801 -2183
  35. package/lib/filter-badges.js +22 -22
  36. package/lib/filter-button.js +8 -8
  37. package/lib/filters-display.js +101 -101
  38. package/lib/form-filter-item.js +67 -67
  39. package/lib/form-filter.js +79 -79
  40. package/lib/form-item.js +8 -8
  41. package/lib/form.js +8 -8
  42. package/lib/index.js +1 -1
  43. package/lib/infinite-scroll.js +8 -8
  44. package/lib/inline-editor.js +16 -16
  45. package/lib/inline-status.js +8 -8
  46. package/lib/input-number.js +55 -55
  47. package/lib/input-password.js +47 -47
  48. package/lib/input-phone-number.js +26 -26
  49. package/lib/input-tag.js +10 -10
  50. package/lib/input-validation-code.js +25 -25
  51. package/lib/input.js +16 -17
  52. package/lib/list-group-item.js +8 -8
  53. package/lib/list-group.js +8 -8
  54. package/lib/loading-wrapper.js +8 -8
  55. package/lib/loading.js +76 -77
  56. package/lib/message-box.js +127 -128
  57. package/lib/message.js +74 -75
  58. package/lib/notification.js +76 -77
  59. package/lib/option-group.js +8 -8
  60. package/lib/option.js +15 -15
  61. package/lib/pagination.js +862 -1217
  62. package/lib/popover.js +317 -318
  63. package/lib/progress.js +8 -8
  64. package/lib/radio-button.js +8 -8
  65. package/lib/radio-filter.js +59 -59
  66. package/lib/radio-group.js +10 -10
  67. package/lib/radio.js +8 -8
  68. package/lib/row.js +4 -4
  69. package/lib/search.js +14 -9
  70. package/lib/select-filter.js +72 -72
  71. package/lib/select.js +229 -580
  72. package/lib/slider.js +923 -924
  73. package/lib/spinner.js +8 -8
  74. package/lib/spreadsheet-preview.js +10 -10
  75. package/lib/step.js +8 -8
  76. package/lib/steps.js +10 -10
  77. package/lib/switch.js +12 -12
  78. package/lib/tab-pane.js +8 -8
  79. package/lib/table-column.js +48 -48
  80. package/lib/table.js +2381 -2382
  81. package/lib/tabs.js +103 -103
  82. package/lib/tag.js +8 -8
  83. package/lib/theme-chalk/autocomplete.css +1 -1
  84. package/lib/theme-chalk/cascader-panel.css +1 -1
  85. package/lib/theme-chalk/cascader.css +1 -1
  86. package/lib/theme-chalk/date-picker.css +1 -1
  87. package/lib/theme-chalk/index.css +1 -1
  88. package/lib/theme-chalk/input-number.css +1 -1
  89. package/lib/theme-chalk/input.css +1 -1
  90. package/lib/theme-chalk/message-box.css +1 -1
  91. package/lib/theme-chalk/pagination.css +1 -1
  92. package/lib/theme-chalk/select-dropdown.css +1 -1
  93. package/lib/theme-chalk/select.css +1 -1
  94. package/lib/theme-chalk/slider.css +1 -1
  95. package/lib/theme-chalk/table-column.css +1 -1
  96. package/lib/theme-chalk/time-picker.css +1 -1
  97. package/lib/theme-chalk/time-select.css +1 -1
  98. package/lib/theme-chalk/transfer.css +1 -1
  99. package/lib/time-picker.js +2432 -2869
  100. package/lib/time-select.js +1461 -1896
  101. package/lib/timeline-item.js +8 -8
  102. package/lib/timeline.js +6 -6
  103. package/lib/tooltip.js +608 -609
  104. package/lib/transfer.js +174 -174
  105. package/lib/tree.js +87 -87
  106. package/lib/upload.js +144 -145
  107. package/lib/utils/scrollbar-width.js +0 -1
  108. package/package.json +1 -1
  109. package/packages/autocomplete/src/autocomplete-suggestions.vue +9 -12
  110. package/packages/button-link/src/main.vue +5 -14
  111. package/packages/cascader/src/cascader.vue +29 -27
  112. package/packages/cascader-panel/src/cascader-menu.vue +13 -14
  113. package/packages/cascader-panel/src/cascader-panel.vue +1 -1
  114. package/packages/data-table/src/DataTable.vue +4 -1
  115. package/packages/date-picker/src/basic/time-spinner.vue +42 -51
  116. package/packages/date-picker/src/panel/time-select.vue +3 -6
  117. package/packages/search/src/main.vue +3 -0
  118. package/packages/select/src/select.vue +13 -18
  119. package/packages/table/src/filter-panel.vue +3 -3
  120. package/packages/theme-chalk/lib/autocomplete.css +1 -1
  121. package/packages/theme-chalk/lib/cascader-panel.css +1 -1
  122. package/packages/theme-chalk/lib/cascader.css +1 -1
  123. package/packages/theme-chalk/lib/date-picker.css +1 -1
  124. package/packages/theme-chalk/lib/index.css +1 -1
  125. package/packages/theme-chalk/lib/input-number.css +1 -1
  126. package/packages/theme-chalk/lib/input.css +1 -1
  127. package/packages/theme-chalk/lib/message-box.css +1 -1
  128. package/packages/theme-chalk/lib/pagination.css +1 -1
  129. package/packages/theme-chalk/lib/select-dropdown.css +1 -1
  130. package/packages/theme-chalk/lib/select.css +1 -1
  131. package/packages/theme-chalk/lib/slider.css +1 -1
  132. package/packages/theme-chalk/lib/table-column.css +1 -1
  133. package/packages/theme-chalk/lib/time-picker.css +1 -1
  134. package/packages/theme-chalk/lib/time-select.css +1 -1
  135. package/packages/theme-chalk/lib/transfer.css +1 -1
  136. package/packages/theme-chalk/src/autocomplete.scss +0 -1
  137. package/packages/theme-chalk/src/cascader-panel.scss +1 -1
  138. package/packages/theme-chalk/src/cascader.scss +1 -0
  139. package/packages/theme-chalk/src/common/utilities.scss +7 -0
  140. package/packages/theme-chalk/src/common/var.json +2 -2
  141. package/packages/theme-chalk/src/common/var.scss +2 -2
  142. package/packages/theme-chalk/src/data-table/data-table.scss +7 -1
  143. package/packages/theme-chalk/src/date-picker/time-spinner.scss +0 -4
  144. package/packages/theme-chalk/src/date-picker.scss +1 -2
  145. package/packages/theme-chalk/src/index.scss +0 -1
  146. package/packages/theme-chalk/src/input.scss +0 -1
  147. package/packages/theme-chalk/src/mixins/mixins.scss +14 -48
  148. package/packages/theme-chalk/src/select-dropdown.scss +1 -1
  149. package/packages/theme-chalk/src/select.scss +0 -1
  150. package/packages/theme-chalk/src/table-column.scss +2 -1
  151. package/packages/theme-chalk/src/time-picker.scss +0 -1
  152. package/packages/theme-chalk/src/time-select.scss +1 -1
  153. package/src/index.js +1 -4
  154. package/src/utils/scrollbar-width.js +0 -1
  155. package/lib/scrollbar.js +0 -1134
  156. package/lib/theme-chalk/scrollbar.css +0 -1
  157. package/packages/scrollbar/index.js +0 -8
  158. package/packages/scrollbar/src/bar.js +0 -88
  159. package/packages/scrollbar/src/main.js +0 -142
  160. package/packages/scrollbar/src/util.js +0 -34
  161. package/packages/theme-chalk/lib/scrollbar.css +0 -1
  162. package/packages/theme-chalk/src/scrollbar.scss +0 -71
package/lib/scrollbar.js DELETED
@@ -1,1134 +0,0 @@
1
- module.exports =
2
- /******/ (function(modules) { // webpackBootstrap
3
- /******/ // The module cache
4
- /******/ var installedModules = {};
5
- /******/
6
- /******/ // The require function
7
- /******/ function __webpack_require__(moduleId) {
8
- /******/
9
- /******/ // Check if module is in cache
10
- /******/ if(installedModules[moduleId]) {
11
- /******/ return installedModules[moduleId].exports;
12
- /******/ }
13
- /******/ // Create a new module (and put it into the cache)
14
- /******/ var module = installedModules[moduleId] = {
15
- /******/ i: moduleId,
16
- /******/ l: false,
17
- /******/ exports: {}
18
- /******/ };
19
- /******/
20
- /******/ // Execute the module function
21
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22
- /******/
23
- /******/ // Flag the module as loaded
24
- /******/ module.l = true;
25
- /******/
26
- /******/ // Return the exports of the module
27
- /******/ return module.exports;
28
- /******/ }
29
- /******/
30
- /******/
31
- /******/ // expose the modules object (__webpack_modules__)
32
- /******/ __webpack_require__.m = modules;
33
- /******/
34
- /******/ // expose the module cache
35
- /******/ __webpack_require__.c = installedModules;
36
- /******/
37
- /******/ // define getter function for harmony exports
38
- /******/ __webpack_require__.d = function(exports, name, getter) {
39
- /******/ if(!__webpack_require__.o(exports, name)) {
40
- /******/ Object.defineProperty(exports, name, {
41
- /******/ configurable: false,
42
- /******/ enumerable: true,
43
- /******/ get: getter
44
- /******/ });
45
- /******/ }
46
- /******/ };
47
- /******/
48
- /******/ // getDefaultExport function for compatibility with non-harmony modules
49
- /******/ __webpack_require__.n = function(module) {
50
- /******/ var getter = module && module.__esModule ?
51
- /******/ function getDefault() { return module['default']; } :
52
- /******/ function getModuleExports() { return module; };
53
- /******/ __webpack_require__.d(getter, 'a', getter);
54
- /******/ return getter;
55
- /******/ };
56
- /******/
57
- /******/ // Object.prototype.hasOwnProperty.call
58
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
59
- /******/
60
- /******/ // __webpack_public_path__
61
- /******/ __webpack_require__.p = "/dist/";
62
- /******/
63
- /******/ // Load entry module and return exports
64
- /******/ return __webpack_require__(__webpack_require__.s = 35);
65
- /******/ })
66
- /************************************************************************/
67
- /******/ ([
68
- /* 0 */,
69
- /* 1 */
70
- /***/ (function(module, exports) {
71
-
72
- module.exports = require("vue");
73
-
74
- /***/ }),
75
- /* 2 */
76
- /***/ (function(module, exports) {
77
-
78
- module.exports = require("babel-runtime/helpers/typeof");
79
-
80
- /***/ }),
81
- /* 3 */
82
- /***/ (function(module, exports, __webpack_require__) {
83
-
84
- "use strict";
85
-
86
-
87
- exports.__esModule = true;
88
- exports.isInContainer = exports.getScrollContainer = exports.isScroll = exports.getStyle = exports.once = exports.off = exports.on = undefined;
89
-
90
- var _typeof2 = __webpack_require__(2);
91
-
92
- var _typeof3 = _interopRequireDefault(_typeof2);
93
-
94
- exports.hasClass = hasClass;
95
- exports.addClass = addClass;
96
- exports.removeClass = removeClass;
97
- exports.setStyle = setStyle;
98
-
99
- var _vue = __webpack_require__(1);
100
-
101
- var _vue2 = _interopRequireDefault(_vue);
102
-
103
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
104
-
105
- var isServer = _vue2.default.prototype.$isServer; /* istanbul ignore next */
106
-
107
- var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g;
108
- var MOZ_HACK_REGEXP = /^moz([A-Z])/;
109
- var ieVersion = isServer ? 0 : Number(document.documentMode);
110
-
111
- /* istanbul ignore next */
112
- var trim = function trim(string) {
113
- return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, '');
114
- };
115
- /* istanbul ignore next */
116
- var camelCase = function camelCase(name) {
117
- return name.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
118
- return offset ? letter.toUpperCase() : letter;
119
- }).replace(MOZ_HACK_REGEXP, 'Moz$1');
120
- };
121
-
122
- /* istanbul ignore next */
123
- var on = exports.on = function () {
124
- if (!isServer && document.addEventListener) {
125
- return function (element, event, handler) {
126
- if (element && event && handler) {
127
- element.addEventListener(event, handler, false);
128
- }
129
- };
130
- } else {
131
- return function (element, event, handler) {
132
- if (element && event && handler) {
133
- element.attachEvent('on' + event, handler);
134
- }
135
- };
136
- }
137
- }();
138
-
139
- /* istanbul ignore next */
140
- var off = exports.off = function () {
141
- if (!isServer && document.removeEventListener) {
142
- return function (element, event, handler) {
143
- if (element && event) {
144
- element.removeEventListener(event, handler, false);
145
- }
146
- };
147
- } else {
148
- return function (element, event, handler) {
149
- if (element && event) {
150
- element.detachEvent('on' + event, handler);
151
- }
152
- };
153
- }
154
- }();
155
-
156
- /* istanbul ignore next */
157
- var once = exports.once = function once(el, event, fn) {
158
- var listener = function listener() {
159
- if (fn) {
160
- fn.apply(this, arguments);
161
- }
162
- off(el, event, listener);
163
- };
164
- on(el, event, listener);
165
- };
166
-
167
- /* istanbul ignore next */
168
- function hasClass(el, cls) {
169
- if (!el || !cls) return false;
170
- if (cls.indexOf(' ') !== -1) throw new Error('className should not contain space.');
171
- if (el.classList) {
172
- return el.classList.contains(cls);
173
- } else {
174
- return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
175
- }
176
- };
177
-
178
- /* istanbul ignore next */
179
- function addClass(el, cls) {
180
- if (!el) return;
181
- var curClass = el.className;
182
- var classes = (cls || '').split(' ');
183
-
184
- for (var i = 0, j = classes.length; i < j; i++) {
185
- var clsName = classes[i];
186
- if (!clsName) continue;
187
-
188
- if (el.classList) {
189
- el.classList.add(clsName);
190
- } else if (!hasClass(el, clsName)) {
191
- curClass += ' ' + clsName;
192
- }
193
- }
194
- if (!el.classList) {
195
- el.className = curClass;
196
- }
197
- };
198
-
199
- /* istanbul ignore next */
200
- function removeClass(el, cls) {
201
- if (!el || !cls) return;
202
- var classes = cls.split(' ');
203
- var curClass = ' ' + el.className + ' ';
204
-
205
- for (var i = 0, j = classes.length; i < j; i++) {
206
- var clsName = classes[i];
207
- if (!clsName) continue;
208
-
209
- if (el.classList) {
210
- el.classList.remove(clsName);
211
- } else if (hasClass(el, clsName)) {
212
- curClass = curClass.replace(' ' + clsName + ' ', ' ');
213
- }
214
- }
215
- if (!el.classList) {
216
- el.className = trim(curClass);
217
- }
218
- };
219
-
220
- /* istanbul ignore next */
221
- var getStyle = exports.getStyle = ieVersion < 9 ? function (element, styleName) {
222
- if (isServer) return;
223
- if (!element || !styleName) return null;
224
- styleName = camelCase(styleName);
225
- if (styleName === 'float') {
226
- styleName = 'styleFloat';
227
- }
228
- try {
229
- switch (styleName) {
230
- case 'opacity':
231
- try {
232
- return element.filters.item('alpha').opacity / 100;
233
- } catch (e) {
234
- return 1.0;
235
- }
236
- default:
237
- return element.style[styleName] || element.currentStyle ? element.currentStyle[styleName] : null;
238
- }
239
- } catch (e) {
240
- return element.style[styleName];
241
- }
242
- } : function (element, styleName) {
243
- if (isServer) return;
244
- if (!element || !styleName) return null;
245
- styleName = camelCase(styleName);
246
- if (styleName === 'float') {
247
- styleName = 'cssFloat';
248
- }
249
- try {
250
- var computed = document.defaultView.getComputedStyle(element, '');
251
- return element.style[styleName] || computed ? computed[styleName] : null;
252
- } catch (e) {
253
- return element.style[styleName];
254
- }
255
- };
256
-
257
- /* istanbul ignore next */
258
- function setStyle(element, styleName, value) {
259
- if (!element || !styleName) return;
260
-
261
- if ((typeof styleName === 'undefined' ? 'undefined' : (0, _typeof3.default)(styleName)) === 'object') {
262
- for (var prop in styleName) {
263
- if (styleName.hasOwnProperty(prop)) {
264
- setStyle(element, prop, styleName[prop]);
265
- }
266
- }
267
- } else {
268
- styleName = camelCase(styleName);
269
- if (styleName === 'opacity' && ieVersion < 9) {
270
- element.style.filter = isNaN(value) ? '' : 'alpha(opacity=' + value * 100 + ')';
271
- } else {
272
- element.style[styleName] = value;
273
- }
274
- }
275
- };
276
-
277
- var isScroll = exports.isScroll = function isScroll(el, vertical) {
278
- if (isServer) return;
279
-
280
- var determinedDirection = vertical !== null || vertical !== undefined;
281
- var overflow = determinedDirection ? vertical ? getStyle(el, 'overflow-y') : getStyle(el, 'overflow-x') : getStyle(el, 'overflow');
282
-
283
- return overflow.match(/(scroll|auto)/);
284
- };
285
-
286
- var getScrollContainer = exports.getScrollContainer = function getScrollContainer(el, vertical) {
287
- if (isServer) return;
288
-
289
- var parent = el;
290
- while (parent) {
291
- if ([window, document, document.documentElement].includes(parent)) {
292
- return document.documentElement;
293
- }
294
- if (isScroll(parent, vertical)) {
295
- return parent;
296
- }
297
- parent = parent.parentNode;
298
- }
299
-
300
- return parent;
301
- };
302
-
303
- var isInContainer = exports.isInContainer = function isInContainer(el, container) {
304
- if (isServer || !el || !container) return false;
305
-
306
- var elRect = el.getBoundingClientRect();
307
- var containerRect = void 0;
308
-
309
- if ([window, document, document.documentElement, null, undefined].includes(container)) {
310
- containerRect = {
311
- top: 0,
312
- right: window.innerWidth,
313
- bottom: window.innerHeight,
314
- left: 0
315
- };
316
- } else {
317
- containerRect = container.getBoundingClientRect();
318
- }
319
-
320
- return elRect.top < containerRect.bottom && elRect.bottom > containerRect.top && elRect.right > containerRect.left && elRect.left < containerRect.right;
321
- };
322
-
323
- /***/ }),
324
- /* 4 */
325
- /***/ (function(module, exports, __webpack_require__) {
326
-
327
- "use strict";
328
-
329
-
330
- exports.__esModule = true;
331
- exports.delay = exports.hashCode = exports.isEmpty = exports.isEqual = exports.arrayEquals = exports.looseEqual = exports.capitalize = exports.kebabCase = exports.autoprefixer = exports.getAttributeValue = exports.coerceTruthyValueToArray = exports.arrayFind = exports.arrayFindIndex = exports.escapeRegexpString = exports.valueEquals = exports.generateId = exports.getValueByPath = undefined;
332
-
333
- var _promise = __webpack_require__(9);
334
-
335
- var _promise2 = _interopRequireDefault(_promise);
336
-
337
- var _keys = __webpack_require__(5);
338
-
339
- var _keys2 = _interopRequireDefault(_keys);
340
-
341
- var _stringify = __webpack_require__(7);
342
-
343
- var _stringify2 = _interopRequireDefault(_stringify);
344
-
345
- var _typeof2 = __webpack_require__(2);
346
-
347
- var _typeof3 = _interopRequireDefault(_typeof2);
348
-
349
- exports.noop = noop;
350
- exports.hasOwn = hasOwn;
351
- exports.toObject = toObject;
352
- exports.getPropByPath = getPropByPath;
353
-
354
- var _types = __webpack_require__(10);
355
-
356
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
357
-
358
- var hasOwnProperty = Object.prototype.hasOwnProperty;
359
-
360
- function noop() {};
361
-
362
- function hasOwn(obj, key) {
363
- return hasOwnProperty.call(obj, key);
364
- };
365
-
366
- function extend(to, _from) {
367
- for (var key in _from) {
368
- to[key] = _from[key];
369
- }
370
- return to;
371
- };
372
-
373
- function toObject(arr) {
374
- var res = {};
375
- for (var i = 0; i < arr.length; i++) {
376
- if (arr[i]) {
377
- extend(res, arr[i]);
378
- }
379
- }
380
- return res;
381
- };
382
-
383
- var getValueByPath = exports.getValueByPath = function getValueByPath(object, prop) {
384
- prop = prop || '';
385
- var paths = prop.split('.');
386
- var current = object;
387
- var result = null;
388
- for (var i = 0, j = paths.length; i < j; i++) {
389
- var path = paths[i];
390
- if (!current) break;
391
-
392
- if (i === j - 1) {
393
- result = current[path];
394
- break;
395
- }
396
- current = current[path];
397
- }
398
- return result;
399
- };
400
-
401
- function getPropByPath(obj, path, strict) {
402
- var tempObj = obj;
403
- path = path.replace(/\[(\w+)\]/g, '.$1');
404
- path = path.replace(/^\./, '');
405
-
406
- var keyArr = path.split('.');
407
- var i = 0;
408
- for (var len = keyArr.length; i < len - 1; ++i) {
409
- if (!tempObj && !strict) break;
410
- var key = keyArr[i];
411
- if (key in tempObj) {
412
- tempObj = tempObj[key];
413
- } else {
414
- if (strict) {
415
- throw new Error('please transfer a valid prop path to form item!');
416
- }
417
- break;
418
- }
419
- }
420
- return {
421
- o: tempObj,
422
- k: keyArr[i],
423
- v: tempObj ? tempObj[keyArr[i]] : null
424
- };
425
- };
426
-
427
- var generateId = exports.generateId = function generateId() {
428
- return Math.floor(Math.random() * 10000);
429
- };
430
-
431
- var valueEquals = exports.valueEquals = function valueEquals(a, b) {
432
- // see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
433
- if (a === b) return true;
434
- if (!(a instanceof Array)) return false;
435
- if (!(b instanceof Array)) return false;
436
- if (a.length !== b.length) return false;
437
- for (var i = 0; i !== a.length; ++i) {
438
- if (a[i] !== b[i]) return false;
439
- }
440
- return true;
441
- };
442
-
443
- var escapeRegexpString = exports.escapeRegexpString = function escapeRegexpString() {
444
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
445
- return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
446
- };
447
-
448
- // TODO: use native Array.find, Array.findIndex when IE support is dropped
449
- var arrayFindIndex = exports.arrayFindIndex = function arrayFindIndex(arr, pred) {
450
- for (var i = 0; i !== arr.length; ++i) {
451
- if (pred(arr[i])) {
452
- return i;
453
- }
454
- }
455
- return -1;
456
- };
457
-
458
- var arrayFind = exports.arrayFind = function arrayFind(arr, pred) {
459
- var idx = arrayFindIndex(arr, pred);
460
- return idx !== -1 ? arr[idx] : undefined;
461
- };
462
-
463
- // coerce truthy value to array
464
- var coerceTruthyValueToArray = exports.coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
465
- if (Array.isArray(val)) {
466
- return val;
467
- } else if (val) {
468
- return [val];
469
- } else {
470
- return [];
471
- }
472
- };
473
-
474
- var getAttributeValue = exports.getAttributeValue = function getAttributeValue(el, name) {
475
- if (!el || !el.attributes || !el.attributes[name]) {
476
- return null;
477
- }
478
- return el.attributes[name].value;
479
- };
480
-
481
- var autoprefixer = exports.autoprefixer = function autoprefixer(style) {
482
- if ((typeof style === 'undefined' ? 'undefined' : (0, _typeof3.default)(style)) !== 'object') return style;
483
- var rules = ['transform', 'transition', 'animation'];
484
- var prefixes = ['ms-', 'webkit-'];
485
- rules.forEach(function (rule) {
486
- var value = style[rule];
487
- if (rule && value) {
488
- prefixes.forEach(function (prefix) {
489
- style[prefix + rule] = value;
490
- });
491
- }
492
- });
493
- return style;
494
- };
495
-
496
- var kebabCase = exports.kebabCase = function kebabCase(str) {
497
- var hyphenateRE = /([^-])([A-Z])/g;
498
- return str.replace(hyphenateRE, '$1-$2').replace(hyphenateRE, '$1-$2').toLowerCase();
499
- };
500
-
501
- var capitalize = exports.capitalize = function capitalize(str) {
502
- if (!(0, _types.isString)(str)) return str;
503
- return str.charAt(0).toUpperCase() + str.slice(1);
504
- };
505
-
506
- var looseEqual = exports.looseEqual = function looseEqual(a, b) {
507
- var isObjectA = (0, _types.isObject)(a);
508
- var isObjectB = (0, _types.isObject)(b);
509
- if (isObjectA && isObjectB) {
510
- return (0, _stringify2.default)(a) === (0, _stringify2.default)(b);
511
- } else if (!isObjectA && !isObjectB) {
512
- return String(a) === String(b);
513
- } else {
514
- return false;
515
- }
516
- };
517
-
518
- var arrayEquals = exports.arrayEquals = function arrayEquals(arrayA, arrayB) {
519
- arrayA = arrayA || [];
520
- arrayB = arrayB || [];
521
-
522
- if (arrayA.length !== arrayB.length) {
523
- return false;
524
- }
525
-
526
- for (var i = 0; i < arrayA.length; i++) {
527
- if (!looseEqual(arrayA[i], arrayB[i])) {
528
- return false;
529
- }
530
- }
531
-
532
- return true;
533
- };
534
-
535
- var isEqual = exports.isEqual = function isEqual(value1, value2) {
536
- if (Array.isArray(value1) && Array.isArray(value2)) {
537
- return arrayEquals(value1, value2);
538
- }
539
- return looseEqual(value1, value2);
540
- };
541
-
542
- var isEmpty = exports.isEmpty = function isEmpty(val) {
543
- // null or undefined
544
- if (val == null) return true;
545
-
546
- if (typeof val === 'boolean') return false;
547
-
548
- if (typeof val === 'number') return !val;
549
-
550
- if (val instanceof Error) return val.message === '';
551
-
552
- switch (Object.prototype.toString.call(val)) {
553
- // String or Array
554
- case '[object String]':
555
- case '[object Array]':
556
- return !val.length;
557
-
558
- // Map or Set or File
559
- case '[object File]':
560
- case '[object Map]':
561
- case '[object Set]':
562
- {
563
- return !val.size;
564
- }
565
- // Plain Object
566
- case '[object Object]':
567
- {
568
- return !(0, _keys2.default)(val).length;
569
- }
570
- }
571
-
572
- return false;
573
- };
574
-
575
- // https://stackoverflow.com/a/7616484
576
- var hashCode = exports.hashCode = function hashCode(str) {
577
- var hash = 0;
578
- for (var i = 0; i < str.length; ++i) {
579
- hash = (hash << 5) - hash + str.charCodeAt(i);
580
- hash |= 0;
581
- }
582
- return hash;
583
- };
584
-
585
- var delay = exports.delay = function delay(ms) {
586
- return new _promise2.default(function (resolve) {
587
- return setTimeout(resolve, ms);
588
- });
589
- };
590
-
591
- /***/ }),
592
- /* 5 */
593
- /***/ (function(module, exports) {
594
-
595
- module.exports = require("babel-runtime/core-js/object/keys");
596
-
597
- /***/ }),
598
- /* 6 */,
599
- /* 7 */
600
- /***/ (function(module, exports) {
601
-
602
- module.exports = require("babel-runtime/core-js/json/stringify");
603
-
604
- /***/ }),
605
- /* 8 */,
606
- /* 9 */
607
- /***/ (function(module, exports) {
608
-
609
- module.exports = require("babel-runtime/core-js/promise");
610
-
611
- /***/ }),
612
- /* 10 */
613
- /***/ (function(module, exports, __webpack_require__) {
614
-
615
- "use strict";
616
-
617
-
618
- exports.__esModule = true;
619
- exports.isString = isString;
620
- exports.isObject = isObject;
621
- exports.isHtmlElement = isHtmlElement;
622
- function isString(obj) {
623
- return Object.prototype.toString.call(obj) === '[object String]';
624
- }
625
-
626
- function isObject(obj) {
627
- return Object.prototype.toString.call(obj) === '[object Object]';
628
- }
629
-
630
- function isHtmlElement(node) {
631
- return node && node.nodeType === Node.ELEMENT_NODE;
632
- }
633
-
634
- var isFunction = exports.isFunction = function isFunction(functionToCheck) {
635
- var getType = {};
636
- return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
637
- };
638
-
639
- var isUndefined = exports.isUndefined = function isUndefined(val) {
640
- return val === void 0;
641
- };
642
-
643
- var isDefined = exports.isDefined = function isDefined(val) {
644
- return val !== undefined && val !== null;
645
- };
646
-
647
- /***/ }),
648
- /* 11 */
649
- /***/ (function(module, exports, __webpack_require__) {
650
-
651
- "use strict";
652
-
653
-
654
- exports.__esModule = true;
655
-
656
- exports.default = function () {
657
- if (_vue2.default.prototype.$isServer) return 0;
658
- if (scrollBarWidth !== undefined) return scrollBarWidth;
659
-
660
- var outer = document.createElement('div');
661
- outer.className = 'el-scrollbar__wrap';
662
- outer.style.visibility = 'hidden';
663
- outer.style.width = '100px';
664
- outer.style.position = 'absolute';
665
- outer.style.top = '-9999px';
666
- document.body.appendChild(outer);
667
-
668
- var widthNoScroll = outer.offsetWidth;
669
- outer.style.overflow = 'scroll';
670
-
671
- var inner = document.createElement('div');
672
- inner.style.width = '100%';
673
- outer.appendChild(inner);
674
-
675
- var widthWithScroll = inner.offsetWidth;
676
- outer.parentNode.removeChild(outer);
677
- scrollBarWidth = widthNoScroll - widthWithScroll;
678
-
679
- return scrollBarWidth;
680
- };
681
-
682
- var _vue = __webpack_require__(1);
683
-
684
- var _vue2 = _interopRequireDefault(_vue);
685
-
686
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
687
-
688
- var scrollBarWidth = void 0;
689
-
690
- ;
691
-
692
- /***/ }),
693
- /* 12 */
694
- /***/ (function(module, exports) {
695
-
696
- module.exports = require("babel-runtime/core-js/get-iterator");
697
-
698
- /***/ }),
699
- /* 13 */,
700
- /* 14 */,
701
- /* 15 */,
702
- /* 16 */,
703
- /* 17 */,
704
- /* 18 */,
705
- /* 19 */,
706
- /* 20 */,
707
- /* 21 */,
708
- /* 22 */
709
- /***/ (function(module, exports, __webpack_require__) {
710
-
711
- "use strict";
712
-
713
-
714
- exports.__esModule = true;
715
- exports.removeResizeListener = exports.addResizeListener = undefined;
716
-
717
- var _getIterator2 = __webpack_require__(12);
718
-
719
- var _getIterator3 = _interopRequireDefault(_getIterator2);
720
-
721
- var _resizeObserverPolyfill = __webpack_require__(31);
722
-
723
- var _resizeObserverPolyfill2 = _interopRequireDefault(_resizeObserverPolyfill);
724
-
725
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
726
-
727
- var isServer = typeof window === 'undefined';
728
-
729
- /* istanbul ignore next */
730
- var resizeHandler = function resizeHandler(entries) {
731
- for (var _iterator = entries, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : (0, _getIterator3.default)(_iterator);;) {
732
- var _ref;
733
-
734
- if (_isArray) {
735
- if (_i >= _iterator.length) break;
736
- _ref = _iterator[_i++];
737
- } else {
738
- _i = _iterator.next();
739
- if (_i.done) break;
740
- _ref = _i.value;
741
- }
742
-
743
- var entry = _ref;
744
-
745
- var listeners = entry.target.__resizeListeners__ || [];
746
- if (listeners.length) {
747
- listeners.forEach(function (fn) {
748
- fn();
749
- });
750
- }
751
- }
752
- };
753
-
754
- /* istanbul ignore next */
755
- var addResizeListener = exports.addResizeListener = function addResizeListener(element, fn) {
756
- if (isServer) return;
757
- if (!element.__resizeListeners__) {
758
- element.__resizeListeners__ = [];
759
- element.__ro__ = new _resizeObserverPolyfill2.default(resizeHandler);
760
- element.__ro__.observe(element);
761
- }
762
- element.__resizeListeners__.push(fn);
763
- };
764
-
765
- /* istanbul ignore next */
766
- var removeResizeListener = exports.removeResizeListener = function removeResizeListener(element, fn) {
767
- if (!element || !element.__resizeListeners__) return;
768
- element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1);
769
- if (!element.__resizeListeners__.length) {
770
- element.__ro__.disconnect();
771
- }
772
- };
773
-
774
- /***/ }),
775
- /* 23 */,
776
- /* 24 */,
777
- /* 25 */,
778
- /* 26 */,
779
- /* 27 */,
780
- /* 28 */,
781
- /* 29 */,
782
- /* 30 */,
783
- /* 31 */
784
- /***/ (function(module, exports) {
785
-
786
- module.exports = require("resize-observer-polyfill");
787
-
788
- /***/ }),
789
- /* 32 */,
790
- /* 33 */,
791
- /* 34 */,
792
- /* 35 */
793
- /***/ (function(module, exports, __webpack_require__) {
794
-
795
- "use strict";
796
-
797
-
798
- exports.__esModule = true;
799
-
800
- var _main = __webpack_require__(38);
801
-
802
- var _main2 = _interopRequireDefault(_main);
803
-
804
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
805
-
806
- /* istanbul ignore next */
807
- _main2.default.install = function (Vue) {
808
- Vue.component(_main2.default.name, _main2.default);
809
- };
810
-
811
- exports.default = _main2.default;
812
-
813
- /***/ }),
814
- /* 36 */,
815
- /* 37 */,
816
- /* 38 */
817
- /***/ (function(module, exports, __webpack_require__) {
818
-
819
- "use strict";
820
-
821
-
822
- exports.__esModule = true;
823
-
824
- var _resizeEvent = __webpack_require__(22);
825
-
826
- var _scrollbarWidth = __webpack_require__(11);
827
-
828
- var _scrollbarWidth2 = _interopRequireDefault(_scrollbarWidth);
829
-
830
- var _util = __webpack_require__(4);
831
-
832
- var _bar = __webpack_require__(39);
833
-
834
- var _bar2 = _interopRequireDefault(_bar);
835
-
836
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
837
-
838
- /* istanbul ignore next */
839
- // reference https://github.com/noeldelgado/gemini-scrollbar/blob/master/index.js
840
-
841
- exports.default = {
842
- name: 'ElScrollbar',
843
-
844
- components: { Bar: _bar2.default },
845
-
846
- props: {
847
- native: Boolean,
848
- wrapStyle: {},
849
- wrapClass: '',
850
- viewClass: {},
851
- viewStyle: {},
852
- noresize: Boolean, // 如果 container 尺寸不会发生变化,最好设置它可以优化性能
853
- tag: {
854
- type: String,
855
- default: 'div'
856
- },
857
- fillContainer: {
858
- type: Boolean,
859
- default: false
860
- }
861
- },
862
-
863
- data: function data() {
864
- return {
865
- sizeWidth: '0',
866
- sizeHeight: '0',
867
- moveX: 0,
868
- moveY: 0
869
- };
870
- },
871
-
872
-
873
- computed: {
874
- wrap: function wrap() {
875
- return this.$refs.wrap;
876
- }
877
- },
878
-
879
- render: function render(h) {
880
- var gutter = (0, _scrollbarWidth2.default)();
881
- var style = this.wrapStyle;
882
-
883
- if (gutter) {
884
- var gutterWith = '-' + gutter + 'px';
885
- var gutterStyle = 'margin-bottom: ' + gutterWith + '; margin-right: ' + gutterWith + '; padding-right: .8rem;';
886
-
887
- if (Array.isArray(this.wrapStyle)) {
888
- style = (0, _util.toObject)(this.wrapStyle);
889
- style.marginRight = style.marginBottom = gutterWith;
890
- style.paddingRight = '.8rem';
891
- style.maxWidth = '100%';
892
- } else if (typeof this.wrapStyle === 'string') {
893
- style += gutterStyle;
894
- style += 'max-width: 100%';
895
- } else {
896
- style = gutterStyle;
897
- style += 'max-width: 100%';
898
- }
899
- }
900
- var view = h(this.tag, {
901
- class: ['el-scrollbar__view', this.viewClass],
902
- style: this.viewStyle,
903
- ref: 'resize'
904
- }, this.$slots.default);
905
- var wrapperClasses = this.wrapClass && this.wrapClass.split(' ');
906
- var wrap = h(
907
- 'div',
908
- {
909
- ref: 'wrap',
910
- style: style,
911
- on: {
912
- 'scroll': this.handleScroll
913
- },
914
-
915
- 'class': [].concat(wrapperClasses, ['el-scrollbar__wrap', gutter ? '' : 'el-scrollbar__wrap--hidden-default']) },
916
- [[view]]
917
- );
918
- var nodes = void 0;
919
-
920
- if (!this.native) {
921
- nodes = [wrap, h(_bar2.default, {
922
- attrs: {
923
- move: this.moveX,
924
- size: this.sizeWidth }
925
- }), h(_bar2.default, {
926
- attrs: {
927
- vertical: true,
928
- move: this.moveY,
929
- size: this.sizeHeight }
930
- })];
931
- } else {
932
- nodes = [h(
933
- 'div',
934
- {
935
- ref: 'wrap',
936
- 'class': [].concat(wrapperClasses, ['el-scrollbar__wrap']),
937
- style: style },
938
- [[view]]
939
- )];
940
- }
941
- return h('div', {
942
- class: 'el-scrollbar',
943
- style: this.fillContainer ? 'width: 100%; height: 100%;' : ''
944
- }, nodes);
945
- },
946
-
947
-
948
- methods: {
949
- handleScroll: function handleScroll() {
950
- var wrap = this.wrap;
951
-
952
- this.moveY = wrap.scrollTop * 100 / wrap.clientHeight;
953
- this.moveX = wrap.scrollLeft * 100 / wrap.clientWidth;
954
- },
955
- update: function update() {
956
- var heightPercentage = void 0,
957
- widthPercentage = void 0;
958
- var wrap = this.wrap;
959
- if (!wrap) return;
960
-
961
- heightPercentage = wrap.clientHeight * 100 / wrap.scrollHeight;
962
- widthPercentage = wrap.clientWidth * 100 / wrap.scrollWidth;
963
-
964
- this.sizeHeight = heightPercentage < 100 ? heightPercentage + '%' : '';
965
- this.sizeWidth = widthPercentage < 100 ? widthPercentage + '%' : '';
966
- }
967
- },
968
-
969
- mounted: function mounted() {
970
- if (this.native) return;
971
- this.$nextTick(this.update);
972
- !this.noresize && (0, _resizeEvent.addResizeListener)(this.$refs.resize, this.update);
973
- },
974
- beforeDestroy: function beforeDestroy() {
975
- if (this.native) return;
976
- !this.noresize && (0, _resizeEvent.removeResizeListener)(this.$refs.resize, this.update);
977
- }
978
- };
979
-
980
- /***/ }),
981
- /* 39 */
982
- /***/ (function(module, exports, __webpack_require__) {
983
-
984
- "use strict";
985
-
986
-
987
- exports.__esModule = true;
988
-
989
- var _dom = __webpack_require__(3);
990
-
991
- var _util = __webpack_require__(40);
992
-
993
- /* istanbul ignore next */
994
- exports.default = {
995
- name: 'Bar',
996
-
997
- props: {
998
- vertical: Boolean,
999
- size: String,
1000
- move: Number
1001
- },
1002
-
1003
- computed: {
1004
- bar: function bar() {
1005
- return _util.BAR_MAP[this.vertical ? 'vertical' : 'horizontal'];
1006
- },
1007
- wrap: function wrap() {
1008
- return this.$parent.wrap;
1009
- }
1010
- },
1011
-
1012
- render: function render(h) {
1013
- var size = this.size,
1014
- move = this.move,
1015
- bar = this.bar;
1016
-
1017
-
1018
- return h(
1019
- 'div',
1020
- {
1021
- 'class': ['el-scrollbar__bar', 'is-' + bar.key],
1022
- on: {
1023
- 'mousedown': this.clickTrackHandler
1024
- }
1025
- },
1026
- [h('div', {
1027
- ref: 'thumb',
1028
- 'class': 'el-scrollbar__thumb',
1029
- on: {
1030
- 'mousedown': this.clickThumbHandler
1031
- },
1032
-
1033
- style: (0, _util.renderThumbStyle)({ size: size, move: move, bar: bar }) })]
1034
- );
1035
- },
1036
-
1037
-
1038
- methods: {
1039
- clickThumbHandler: function clickThumbHandler(e) {
1040
- this.startDrag(e);
1041
- this[this.bar.axis] = e.currentTarget[this.bar.offset] - (e[this.bar.client] - e.currentTarget.getBoundingClientRect()[this.bar.direction]);
1042
- },
1043
- clickTrackHandler: function clickTrackHandler(e) {
1044
- var offset = Math.abs(e.target.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]);
1045
- var thumbHalf = this.$refs.thumb[this.bar.offset] / 2;
1046
- var thumbPositionPercentage = (offset - thumbHalf) * 100 / this.$el[this.bar.offset];
1047
-
1048
- this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
1049
- },
1050
- startDrag: function startDrag(e) {
1051
- e.stopImmediatePropagation();
1052
- this.cursorDown = true;
1053
-
1054
- (0, _dom.on)(document, 'mousemove', this.mouseMoveDocumentHandler);
1055
- (0, _dom.on)(document, 'mouseup', this.mouseUpDocumentHandler);
1056
- document.onselectstart = function () {
1057
- return false;
1058
- };
1059
- },
1060
- mouseMoveDocumentHandler: function mouseMoveDocumentHandler(e) {
1061
- if (this.cursorDown === false) return;
1062
- var prevPage = this[this.bar.axis];
1063
-
1064
- if (!prevPage) return;
1065
-
1066
- var offset = (this.$el.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]) * -1;
1067
- var thumbClickPosition = this.$refs.thumb[this.bar.offset] - prevPage;
1068
- var thumbPositionPercentage = (offset - thumbClickPosition) * 100 / this.$el[this.bar.offset];
1069
-
1070
- this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
1071
- },
1072
- mouseUpDocumentHandler: function mouseUpDocumentHandler(e) {
1073
- this.cursorDown = false;
1074
- this[this.bar.axis] = 0;
1075
- (0, _dom.off)(document, 'mousemove', this.mouseMoveDocumentHandler);
1076
- document.onselectstart = null;
1077
- }
1078
- },
1079
-
1080
- destroyed: function destroyed() {
1081
- (0, _dom.off)(document, 'mouseup', this.mouseUpDocumentHandler);
1082
- }
1083
- };
1084
-
1085
- /***/ }),
1086
- /* 40 */
1087
- /***/ (function(module, exports, __webpack_require__) {
1088
-
1089
- "use strict";
1090
-
1091
-
1092
- exports.__esModule = true;
1093
- exports.renderThumbStyle = renderThumbStyle;
1094
- var BAR_MAP = exports.BAR_MAP = {
1095
- vertical: {
1096
- offset: 'offsetHeight',
1097
- scroll: 'scrollTop',
1098
- scrollSize: 'scrollHeight',
1099
- size: 'height',
1100
- key: 'vertical',
1101
- axis: 'Y',
1102
- client: 'clientY',
1103
- direction: 'top'
1104
- },
1105
- horizontal: {
1106
- offset: 'offsetWidth',
1107
- scroll: 'scrollLeft',
1108
- scrollSize: 'scrollWidth',
1109
- size: 'width',
1110
- key: 'horizontal',
1111
- axis: 'X',
1112
- client: 'clientX',
1113
- direction: 'left'
1114
- }
1115
- };
1116
-
1117
- function renderThumbStyle(_ref) {
1118
- var move = _ref.move,
1119
- size = _ref.size,
1120
- bar = _ref.bar;
1121
-
1122
- var style = {};
1123
- var translate = 'translate' + bar.axis + '(' + move + '%)';
1124
-
1125
- style[bar.size] = size;
1126
- style.transform = translate;
1127
- style.msTransform = translate;
1128
- style.webkitTransform = translate;
1129
-
1130
- return style;
1131
- };
1132
-
1133
- /***/ })
1134
- /******/ ]);