cy-element-ui 1.0.48 → 1.0.49
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.
- package/lib/alert.js +108 -108
- package/lib/aside.js +77 -77
- package/lib/autocomplete.js +5199 -360
- package/lib/avatar.js +4 -4
- package/lib/backtop.js +192 -101
- package/lib/badge.js +108 -108
- package/lib/breadcrumb-item.js +108 -108
- package/lib/breadcrumb.js +94 -94
- package/lib/button-group.js +4 -4
- package/lib/button.js +4 -4
- package/lib/calendar.js +1734 -137
- package/lib/card.js +96 -96
- package/lib/carousel-item.js +452 -108
- package/lib/carousel.js +1256 -105
- package/lib/cascader-panel.js +3524 -191
- package/lib/cascader.js +8077 -717
- package/lib/checkbox-button.js +151 -119
- package/lib/checkbox-group.js +47 -15
- package/lib/checkbox.js +47 -15
- package/lib/col.js +2 -2
- package/lib/collapse-item.js +815 -110
- package/lib/collapse.js +108 -108
- package/lib/color-picker.js +4705 -828
- package/lib/container.js +88 -88
- package/lib/date-picker.js +10735 -4739
- package/lib/descriptions-item.js +2 -2
- package/lib/descriptions.js +63 -8
- package/lib/dialog.js +1200 -22
- package/lib/divider.js +104 -104
- package/lib/drawer.js +875 -105
- package/lib/dropdown-item.js +128 -96
- package/lib/dropdown-menu.js +2301 -99
- package/lib/dropdown.js +990 -54
- package/lib/element-ui.common.js +31058 -13663
- package/lib/empty.js +793 -99
- package/lib/fileUpload.js +2542 -26
- package/lib/footer.js +77 -77
- package/lib/form-item.js +3305 -202
- package/lib/form.js +129 -115
- package/lib/header.js +77 -77
- package/lib/icon.js +67 -67
- package/lib/image.js +1662 -146
- package/lib/index.js +1 -1
- package/lib/infinite-scroll.js +435 -26
- package/lib/input-number.js +1421 -32
- package/lib/input.js +509 -37
- package/lib/link.js +4 -4
- package/lib/loading.js +886 -149
- package/lib/main.js +64 -64
- package/lib/menu-item-group.js +103 -103
- package/lib/menu-item.js +3140 -137
- package/lib/menu.js +959 -268
- package/lib/message-box.js +2743 -188
- package/lib/message.js +1196 -118
- package/lib/notification.js +1196 -119
- package/lib/option-group.js +151 -119
- package/lib/option.js +392 -16
- package/lib/page-header.js +781 -87
- package/lib/pagination.js +7747 -646
- package/lib/popconfirm.js +3606 -219
- package/lib/popover.js +2604 -79
- package/lib/progress.js +4 -4
- package/lib/radio-button.js +151 -119
- package/lib/radio-group.js +151 -119
- package/lib/radio.js +47 -15
- package/lib/rate.js +756 -113
- package/lib/result.js +108 -108
- package/lib/row.js +2 -2
- package/lib/scrollbar.js +1813 -41
- package/lib/select.js +5547 -209
- package/lib/selectDisplayInput.js +4 -4
- package/lib/skeleton-item.js +108 -108
- package/lib/skeleton.js +108 -108
- package/lib/slider.js +4768 -530
- package/lib/spinner.js +100 -100
- package/lib/statistic.js +9600 -112
- package/lib/step.js +108 -108
- package/lib/steps.js +514 -99
- package/lib/subTitle.js +91 -91
- package/lib/submenu.js +2397 -76
- package/lib/switch.js +582 -127
- package/lib/tab-pane.js +108 -108
- package/lib/tabDialog.js +1630 -104
- package/lib/table-column.js +1115 -267
- package/lib/table.js +7067 -1253
- package/lib/tabs.js +1615 -113
- package/lib/tag.js +4 -4
- package/lib/time-picker.js +6481 -589
- package/lib/time-select.js +6334 -407
- package/lib/timeline-item.js +108 -108
- package/lib/timeline.js +4 -4
- package/lib/tooltip.js +2688 -44
- package/lib/transfer.js +2238 -146
- package/lib/tree.js +1563 -148
- package/lib/treeSelect.js +3421 -106
- package/lib/upload.js +1198 -31
- package/package.json +1 -1
- package/src/index.js +1 -1
package/lib/cascader-panel.js
CHANGED
|
@@ -82,180 +82,3528 @@ module.exports =
|
|
|
82
82
|
/******/
|
|
83
83
|
/******/
|
|
84
84
|
/******/ // Load entry module and return exports
|
|
85
|
-
/******/ return __webpack_require__(__webpack_require__.s =
|
|
85
|
+
/******/ return __webpack_require__(__webpack_require__.s = 70);
|
|
86
86
|
/******/ })
|
|
87
87
|
/************************************************************************/
|
|
88
|
-
/******/ (
|
|
88
|
+
/******/ ([
|
|
89
|
+
/* 0 */
|
|
90
|
+
/***/ (function(module, exports) {
|
|
91
|
+
|
|
92
|
+
module.exports = require("vue");
|
|
93
|
+
|
|
94
|
+
/***/ }),
|
|
95
|
+
/* 1 */
|
|
96
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
97
|
+
|
|
98
|
+
"use strict";
|
|
99
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return on; });
|
|
100
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return off; });
|
|
101
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return once; });
|
|
102
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return hasClass; });
|
|
103
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addClass; });
|
|
104
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return removeClass; });
|
|
105
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getStyle; });
|
|
106
|
+
/* unused harmony export setStyle */
|
|
107
|
+
/* unused harmony export isScroll */
|
|
108
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getScrollContainer; });
|
|
109
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isInContainer; });
|
|
110
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
|
|
111
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
112
|
+
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
|
113
|
+
|
|
114
|
+
/* istanbul ignore next */
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
var isServer = vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer;
|
|
119
|
+
var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g;
|
|
120
|
+
var MOZ_HACK_REGEXP = /^moz([A-Z])/;
|
|
121
|
+
var ieVersion = isServer ? 0 : Number(document.documentMode);
|
|
122
|
+
|
|
123
|
+
/* istanbul ignore next */
|
|
124
|
+
var trim = function trim(string) {
|
|
125
|
+
return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, '');
|
|
126
|
+
};
|
|
127
|
+
/* istanbul ignore next */
|
|
128
|
+
var camelCase = function camelCase(name) {
|
|
129
|
+
return name.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
|
|
130
|
+
return offset ? letter.toUpperCase() : letter;
|
|
131
|
+
}).replace(MOZ_HACK_REGEXP, 'Moz$1');
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
/* istanbul ignore next */
|
|
135
|
+
var on = function () {
|
|
136
|
+
if (!isServer && document.addEventListener) {
|
|
137
|
+
return function (element, event, handler) {
|
|
138
|
+
if (element && event && handler) {
|
|
139
|
+
element.addEventListener(event, handler, false);
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
} else {
|
|
143
|
+
return function (element, event, handler) {
|
|
144
|
+
if (element && event && handler) {
|
|
145
|
+
element.attachEvent('on' + event, handler);
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
}();
|
|
150
|
+
|
|
151
|
+
/* istanbul ignore next */
|
|
152
|
+
var off = function () {
|
|
153
|
+
if (!isServer && document.removeEventListener) {
|
|
154
|
+
return function (element, event, handler) {
|
|
155
|
+
if (element && event) {
|
|
156
|
+
element.removeEventListener(event, handler, false);
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
} else {
|
|
160
|
+
return function (element, event, handler) {
|
|
161
|
+
if (element && event) {
|
|
162
|
+
element.detachEvent('on' + event, handler);
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
}();
|
|
167
|
+
|
|
168
|
+
/* istanbul ignore next */
|
|
169
|
+
var once = function once(el, event, fn) {
|
|
170
|
+
var listener = function listener() {
|
|
171
|
+
if (fn) {
|
|
172
|
+
fn.apply(this, arguments);
|
|
173
|
+
}
|
|
174
|
+
off(el, event, listener);
|
|
175
|
+
};
|
|
176
|
+
on(el, event, listener);
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
/* istanbul ignore next */
|
|
180
|
+
function hasClass(el, cls) {
|
|
181
|
+
if (!el || !cls) return false;
|
|
182
|
+
if (cls.indexOf(' ') !== -1) throw new Error('className should not contain space.');
|
|
183
|
+
if (el.classList) {
|
|
184
|
+
return el.classList.contains(cls);
|
|
185
|
+
} else {
|
|
186
|
+
return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
/* istanbul ignore next */
|
|
191
|
+
function addClass(el, cls) {
|
|
192
|
+
if (!el) return;
|
|
193
|
+
var curClass = el.className;
|
|
194
|
+
var classes = (cls || '').split(' ');
|
|
195
|
+
|
|
196
|
+
for (var i = 0, j = classes.length; i < j; i++) {
|
|
197
|
+
var clsName = classes[i];
|
|
198
|
+
if (!clsName) continue;
|
|
199
|
+
|
|
200
|
+
if (el.classList) {
|
|
201
|
+
el.classList.add(clsName);
|
|
202
|
+
} else if (!hasClass(el, clsName)) {
|
|
203
|
+
curClass += ' ' + clsName;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
if (!el.classList) {
|
|
207
|
+
el.setAttribute('class', curClass);
|
|
208
|
+
}
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
/* istanbul ignore next */
|
|
212
|
+
function removeClass(el, cls) {
|
|
213
|
+
if (!el || !cls) return;
|
|
214
|
+
var classes = cls.split(' ');
|
|
215
|
+
var curClass = ' ' + el.className + ' ';
|
|
216
|
+
|
|
217
|
+
for (var i = 0, j = classes.length; i < j; i++) {
|
|
218
|
+
var clsName = classes[i];
|
|
219
|
+
if (!clsName) continue;
|
|
220
|
+
|
|
221
|
+
if (el.classList) {
|
|
222
|
+
el.classList.remove(clsName);
|
|
223
|
+
} else if (hasClass(el, clsName)) {
|
|
224
|
+
curClass = curClass.replace(' ' + clsName + ' ', ' ');
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
if (!el.classList) {
|
|
228
|
+
el.setAttribute('class', trim(curClass));
|
|
229
|
+
}
|
|
230
|
+
};
|
|
231
|
+
|
|
232
|
+
/* istanbul ignore next */
|
|
233
|
+
var getStyle = ieVersion < 9 ? function (element, styleName) {
|
|
234
|
+
if (isServer) return;
|
|
235
|
+
if (!element || !styleName) return null;
|
|
236
|
+
styleName = camelCase(styleName);
|
|
237
|
+
if (styleName === 'float') {
|
|
238
|
+
styleName = 'styleFloat';
|
|
239
|
+
}
|
|
240
|
+
try {
|
|
241
|
+
switch (styleName) {
|
|
242
|
+
case 'opacity':
|
|
243
|
+
try {
|
|
244
|
+
return element.filters.item('alpha').opacity / 100;
|
|
245
|
+
} catch (e) {
|
|
246
|
+
return 1.0;
|
|
247
|
+
}
|
|
248
|
+
default:
|
|
249
|
+
return element.style[styleName] || element.currentStyle ? element.currentStyle[styleName] : null;
|
|
250
|
+
}
|
|
251
|
+
} catch (e) {
|
|
252
|
+
return element.style[styleName];
|
|
253
|
+
}
|
|
254
|
+
} : function (element, styleName) {
|
|
255
|
+
if (isServer) return;
|
|
256
|
+
if (!element || !styleName) return null;
|
|
257
|
+
styleName = camelCase(styleName);
|
|
258
|
+
if (styleName === 'float') {
|
|
259
|
+
styleName = 'cssFloat';
|
|
260
|
+
}
|
|
261
|
+
try {
|
|
262
|
+
var computed = document.defaultView.getComputedStyle(element, '');
|
|
263
|
+
return element.style[styleName] || computed ? computed[styleName] : null;
|
|
264
|
+
} catch (e) {
|
|
265
|
+
return element.style[styleName];
|
|
266
|
+
}
|
|
267
|
+
};
|
|
268
|
+
|
|
269
|
+
/* istanbul ignore next */
|
|
270
|
+
function setStyle(element, styleName, value) {
|
|
271
|
+
if (!element || !styleName) return;
|
|
272
|
+
|
|
273
|
+
if ((typeof styleName === 'undefined' ? 'undefined' : _typeof(styleName)) === 'object') {
|
|
274
|
+
for (var prop in styleName) {
|
|
275
|
+
if (styleName.hasOwnProperty(prop)) {
|
|
276
|
+
setStyle(element, prop, styleName[prop]);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
} else {
|
|
280
|
+
styleName = camelCase(styleName);
|
|
281
|
+
if (styleName === 'opacity' && ieVersion < 9) {
|
|
282
|
+
element.style.filter = isNaN(value) ? '' : 'alpha(opacity=' + value * 100 + ')';
|
|
283
|
+
} else {
|
|
284
|
+
element.style[styleName] = value;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
};
|
|
288
|
+
|
|
289
|
+
var isScroll = function isScroll(el, vertical) {
|
|
290
|
+
if (isServer) return;
|
|
291
|
+
|
|
292
|
+
var determinedDirection = vertical !== null && vertical !== undefined;
|
|
293
|
+
var overflow = determinedDirection ? vertical ? getStyle(el, 'overflow-y') : getStyle(el, 'overflow-x') : getStyle(el, 'overflow');
|
|
294
|
+
|
|
295
|
+
return overflow.match(/(scroll|auto|overlay)/);
|
|
296
|
+
};
|
|
297
|
+
|
|
298
|
+
var getScrollContainer = function getScrollContainer(el, vertical) {
|
|
299
|
+
if (isServer) return;
|
|
300
|
+
|
|
301
|
+
var parent = el;
|
|
302
|
+
while (parent) {
|
|
303
|
+
if ([window, document, document.documentElement].includes(parent)) {
|
|
304
|
+
return window;
|
|
305
|
+
}
|
|
306
|
+
if (isScroll(parent, vertical)) {
|
|
307
|
+
return parent;
|
|
308
|
+
}
|
|
309
|
+
parent = parent.parentNode;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
return parent;
|
|
313
|
+
};
|
|
314
|
+
|
|
315
|
+
var isInContainer = function isInContainer(el, container) {
|
|
316
|
+
if (isServer || !el || !container) return false;
|
|
317
|
+
|
|
318
|
+
var elRect = el.getBoundingClientRect();
|
|
319
|
+
var containerRect = void 0;
|
|
320
|
+
|
|
321
|
+
if ([window, document, document.documentElement, null, undefined].includes(container)) {
|
|
322
|
+
containerRect = {
|
|
323
|
+
top: 0,
|
|
324
|
+
right: window.innerWidth,
|
|
325
|
+
bottom: window.innerHeight,
|
|
326
|
+
left: 0
|
|
327
|
+
};
|
|
328
|
+
} else {
|
|
329
|
+
containerRect = container.getBoundingClientRect();
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
return elRect.top < containerRect.bottom && elRect.bottom > containerRect.top && elRect.right > containerRect.left && elRect.left < containerRect.right;
|
|
333
|
+
};
|
|
334
|
+
|
|
335
|
+
/***/ }),
|
|
336
|
+
/* 2 */
|
|
337
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
338
|
+
|
|
339
|
+
"use strict";
|
|
340
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
|
|
341
|
+
/* globals __VUE_SSR_CONTEXT__ */
|
|
342
|
+
|
|
343
|
+
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
|
|
344
|
+
// This module is a runtime utility for cleaner component module output and will
|
|
345
|
+
// be included in the final webpack user bundle.
|
|
346
|
+
|
|
347
|
+
function normalizeComponent(
|
|
348
|
+
scriptExports,
|
|
349
|
+
render,
|
|
350
|
+
staticRenderFns,
|
|
351
|
+
functionalTemplate,
|
|
352
|
+
injectStyles,
|
|
353
|
+
scopeId,
|
|
354
|
+
moduleIdentifier /* server only */,
|
|
355
|
+
shadowMode /* vue-cli only */
|
|
356
|
+
) {
|
|
357
|
+
// Vue.extend constructor export interop
|
|
358
|
+
var options =
|
|
359
|
+
typeof scriptExports === 'function' ? scriptExports.options : scriptExports
|
|
360
|
+
|
|
361
|
+
// render functions
|
|
362
|
+
if (render) {
|
|
363
|
+
options.render = render
|
|
364
|
+
options.staticRenderFns = staticRenderFns
|
|
365
|
+
options._compiled = true
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
// functional template
|
|
369
|
+
if (functionalTemplate) {
|
|
370
|
+
options.functional = true
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
// scopedId
|
|
374
|
+
if (scopeId) {
|
|
375
|
+
options._scopeId = 'data-v-' + scopeId
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
var hook
|
|
379
|
+
if (moduleIdentifier) {
|
|
380
|
+
// server build
|
|
381
|
+
hook = function (context) {
|
|
382
|
+
// 2.3 injection
|
|
383
|
+
context =
|
|
384
|
+
context || // cached call
|
|
385
|
+
(this.$vnode && this.$vnode.ssrContext) || // stateful
|
|
386
|
+
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
|
|
387
|
+
// 2.2 with runInNewContext: true
|
|
388
|
+
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
|
|
389
|
+
context = __VUE_SSR_CONTEXT__
|
|
390
|
+
}
|
|
391
|
+
// inject component styles
|
|
392
|
+
if (injectStyles) {
|
|
393
|
+
injectStyles.call(this, context)
|
|
394
|
+
}
|
|
395
|
+
// register component module identifier for async chunk inferrence
|
|
396
|
+
if (context && context._registeredComponents) {
|
|
397
|
+
context._registeredComponents.add(moduleIdentifier)
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
// used by ssr in case component is cached and beforeCreate
|
|
401
|
+
// never gets called
|
|
402
|
+
options._ssrRegister = hook
|
|
403
|
+
} else if (injectStyles) {
|
|
404
|
+
hook = shadowMode
|
|
405
|
+
? function () {
|
|
406
|
+
injectStyles.call(
|
|
407
|
+
this,
|
|
408
|
+
(options.functional ? this.parent : this).$root.$options.shadowRoot
|
|
409
|
+
)
|
|
410
|
+
}
|
|
411
|
+
: injectStyles
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
if (hook) {
|
|
415
|
+
if (options.functional) {
|
|
416
|
+
// for template-only hot-reload because in that case the render fn doesn't
|
|
417
|
+
// go through the normalizer
|
|
418
|
+
options._injectStyles = hook
|
|
419
|
+
// register for functional component in vue file
|
|
420
|
+
var originalRender = options.render
|
|
421
|
+
options.render = function renderWithStyleInjection(h, context) {
|
|
422
|
+
hook.call(context)
|
|
423
|
+
return originalRender(h, context)
|
|
424
|
+
}
|
|
425
|
+
} else {
|
|
426
|
+
// inject component registration as beforeCreate hook
|
|
427
|
+
var existing = options.beforeCreate
|
|
428
|
+
options.beforeCreate = existing ? [].concat(existing, hook) : [hook]
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
return {
|
|
433
|
+
exports: scriptExports,
|
|
434
|
+
options: options
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
|
|
439
|
+
/***/ }),
|
|
440
|
+
/* 3 */
|
|
441
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
442
|
+
|
|
443
|
+
"use strict";
|
|
444
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "r", function() { return noop; });
|
|
445
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return hasOwn; });
|
|
446
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "t", function() { return toObject; });
|
|
447
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return getValueByPath; });
|
|
448
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return getPropByPath; });
|
|
449
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return generateId; });
|
|
450
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "u", function() { return valueEquals; });
|
|
451
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return escapeRegexpString; });
|
|
452
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return arrayFindIndex; });
|
|
453
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return arrayFind; });
|
|
454
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return coerceTruthyValueToArray; });
|
|
455
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "o", function() { return isIE; });
|
|
456
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return isEdge; });
|
|
457
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "n", function() { return isFirefox; });
|
|
458
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return autoprefixer; });
|
|
459
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "q", function() { return kebabCase; });
|
|
460
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return capitalize; });
|
|
461
|
+
/* unused harmony export looseEqual */
|
|
462
|
+
/* unused harmony export arrayEquals */
|
|
463
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return isEqual; });
|
|
464
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return isEmpty; });
|
|
465
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "s", function() { return rafThrottle; });
|
|
466
|
+
/* unused harmony export objToArray */
|
|
467
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "p", function() { return isMac; });
|
|
468
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
|
|
469
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
470
|
+
/* harmony import */ var element_ui_src_utils_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4);
|
|
471
|
+
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
477
|
+
|
|
478
|
+
function noop() {};
|
|
479
|
+
|
|
480
|
+
function hasOwn(obj, key) {
|
|
481
|
+
return hasOwnProperty.call(obj, key);
|
|
482
|
+
};
|
|
483
|
+
|
|
484
|
+
function extend(to, _from) {
|
|
485
|
+
for (var key in _from) {
|
|
486
|
+
to[key] = _from[key];
|
|
487
|
+
}
|
|
488
|
+
return to;
|
|
489
|
+
};
|
|
490
|
+
|
|
491
|
+
function toObject(arr) {
|
|
492
|
+
var res = {};
|
|
493
|
+
for (var i = 0; i < arr.length; i++) {
|
|
494
|
+
if (arr[i]) {
|
|
495
|
+
extend(res, arr[i]);
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
return res;
|
|
499
|
+
};
|
|
500
|
+
|
|
501
|
+
var getValueByPath = function getValueByPath(object, prop) {
|
|
502
|
+
prop = prop || '';
|
|
503
|
+
var paths = prop.split('.');
|
|
504
|
+
var current = object;
|
|
505
|
+
var result = null;
|
|
506
|
+
for (var i = 0, j = paths.length; i < j; i++) {
|
|
507
|
+
var path = paths[i];
|
|
508
|
+
if (!current) break;
|
|
509
|
+
|
|
510
|
+
if (i === j - 1) {
|
|
511
|
+
result = current[path];
|
|
512
|
+
break;
|
|
513
|
+
}
|
|
514
|
+
current = current[path];
|
|
515
|
+
}
|
|
516
|
+
return result;
|
|
517
|
+
};
|
|
518
|
+
|
|
519
|
+
function getPropByPath(obj, path, strict) {
|
|
520
|
+
var tempObj = obj;
|
|
521
|
+
path = path.replace(/\[(\w+)\]/g, '.$1');
|
|
522
|
+
path = path.replace(/^\./, '');
|
|
523
|
+
|
|
524
|
+
var keyArr = path.split('.');
|
|
525
|
+
var i = 0;
|
|
526
|
+
for (var len = keyArr.length; i < len - 1; ++i) {
|
|
527
|
+
if (!tempObj && !strict) break;
|
|
528
|
+
var key = keyArr[i];
|
|
529
|
+
if (key in tempObj) {
|
|
530
|
+
tempObj = tempObj[key];
|
|
531
|
+
} else {
|
|
532
|
+
if (strict) {
|
|
533
|
+
throw new Error('please transfer a valid prop path to form item!');
|
|
534
|
+
}
|
|
535
|
+
break;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
return {
|
|
539
|
+
o: tempObj,
|
|
540
|
+
k: keyArr[i],
|
|
541
|
+
v: tempObj ? tempObj[keyArr[i]] : null
|
|
542
|
+
};
|
|
543
|
+
};
|
|
544
|
+
|
|
545
|
+
var generateId = function generateId() {
|
|
546
|
+
return Math.floor(Math.random() * 10000);
|
|
547
|
+
};
|
|
548
|
+
|
|
549
|
+
var valueEquals = function valueEquals(a, b) {
|
|
550
|
+
// see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
|
|
551
|
+
if (a === b) return true;
|
|
552
|
+
if (!(a instanceof Array)) return false;
|
|
553
|
+
if (!(b instanceof Array)) return false;
|
|
554
|
+
if (a.length !== b.length) return false;
|
|
555
|
+
for (var i = 0; i !== a.length; ++i) {
|
|
556
|
+
if (a[i] !== b[i]) return false;
|
|
557
|
+
}
|
|
558
|
+
return true;
|
|
559
|
+
};
|
|
560
|
+
|
|
561
|
+
var escapeRegexpString = function escapeRegexpString() {
|
|
562
|
+
var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
563
|
+
return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
|
|
564
|
+
};
|
|
565
|
+
|
|
566
|
+
// TODO: use native Array.find, Array.findIndex when IE support is dropped
|
|
567
|
+
var arrayFindIndex = function arrayFindIndex(arr, pred) {
|
|
568
|
+
for (var i = 0; i !== arr.length; ++i) {
|
|
569
|
+
if (pred(arr[i])) {
|
|
570
|
+
return i;
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
return -1;
|
|
574
|
+
};
|
|
575
|
+
|
|
576
|
+
var arrayFind = function arrayFind(arr, pred) {
|
|
577
|
+
var idx = arrayFindIndex(arr, pred);
|
|
578
|
+
return idx !== -1 ? arr[idx] : undefined;
|
|
579
|
+
};
|
|
580
|
+
|
|
581
|
+
// coerce truthy value to array
|
|
582
|
+
var coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
|
|
583
|
+
if (Array.isArray(val)) {
|
|
584
|
+
return val;
|
|
585
|
+
} else if (val) {
|
|
586
|
+
return [val];
|
|
587
|
+
} else {
|
|
588
|
+
return [];
|
|
589
|
+
}
|
|
590
|
+
};
|
|
591
|
+
|
|
592
|
+
var isIE = function isIE() {
|
|
593
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !isNaN(Number(document.documentMode));
|
|
594
|
+
};
|
|
595
|
+
|
|
596
|
+
var isEdge = function isEdge() {
|
|
597
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && navigator.userAgent.indexOf('Edge') > -1;
|
|
598
|
+
};
|
|
599
|
+
|
|
600
|
+
var isFirefox = function isFirefox() {
|
|
601
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i);
|
|
602
|
+
};
|
|
603
|
+
|
|
604
|
+
var autoprefixer = function autoprefixer(style) {
|
|
605
|
+
if ((typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object') return style;
|
|
606
|
+
var rules = ['transform', 'transition', 'animation'];
|
|
607
|
+
var prefixes = ['ms-', 'webkit-'];
|
|
608
|
+
rules.forEach(function (rule) {
|
|
609
|
+
var value = style[rule];
|
|
610
|
+
if (rule && value) {
|
|
611
|
+
prefixes.forEach(function (prefix) {
|
|
612
|
+
style[prefix + rule] = value;
|
|
613
|
+
});
|
|
614
|
+
}
|
|
615
|
+
});
|
|
616
|
+
return style;
|
|
617
|
+
};
|
|
618
|
+
|
|
619
|
+
var kebabCase = function kebabCase(str) {
|
|
620
|
+
var hyphenateRE = /([^-])([A-Z])/g;
|
|
621
|
+
return str.replace(hyphenateRE, '$1-$2').replace(hyphenateRE, '$1-$2').toLowerCase();
|
|
622
|
+
};
|
|
623
|
+
|
|
624
|
+
var capitalize = function capitalize(str) {
|
|
625
|
+
if (!Object(element_ui_src_utils_types__WEBPACK_IMPORTED_MODULE_1__[/* isString */ "e"])(str)) return str;
|
|
626
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
627
|
+
};
|
|
628
|
+
|
|
629
|
+
var looseEqual = function looseEqual(a, b) {
|
|
630
|
+
var isObjectA = Object(element_ui_src_utils_types__WEBPACK_IMPORTED_MODULE_1__[/* isObject */ "d"])(a);
|
|
631
|
+
var isObjectB = Object(element_ui_src_utils_types__WEBPACK_IMPORTED_MODULE_1__[/* isObject */ "d"])(b);
|
|
632
|
+
if (isObjectA && isObjectB) {
|
|
633
|
+
return JSON.stringify(a) === JSON.stringify(b);
|
|
634
|
+
} else if (!isObjectA && !isObjectB) {
|
|
635
|
+
return String(a) === String(b);
|
|
636
|
+
} else {
|
|
637
|
+
return false;
|
|
638
|
+
}
|
|
639
|
+
};
|
|
640
|
+
|
|
641
|
+
var arrayEquals = function arrayEquals(arrayA, arrayB) {
|
|
642
|
+
arrayA = arrayA || [];
|
|
643
|
+
arrayB = arrayB || [];
|
|
644
|
+
|
|
645
|
+
if (arrayA.length !== arrayB.length) {
|
|
646
|
+
return false;
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
for (var i = 0; i < arrayA.length; i++) {
|
|
650
|
+
if (!looseEqual(arrayA[i], arrayB[i])) {
|
|
651
|
+
return false;
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
return true;
|
|
656
|
+
};
|
|
657
|
+
|
|
658
|
+
var isEqual = function isEqual(value1, value2) {
|
|
659
|
+
if (Array.isArray(value1) && Array.isArray(value2)) {
|
|
660
|
+
return arrayEquals(value1, value2);
|
|
661
|
+
}
|
|
662
|
+
return looseEqual(value1, value2);
|
|
663
|
+
};
|
|
664
|
+
|
|
665
|
+
var isEmpty = function isEmpty(val) {
|
|
666
|
+
// null or undefined
|
|
667
|
+
if (val == null) return true;
|
|
668
|
+
|
|
669
|
+
if (typeof val === 'boolean') return false;
|
|
670
|
+
|
|
671
|
+
if (typeof val === 'number') return !val;
|
|
672
|
+
|
|
673
|
+
if (val instanceof Error) return val.message === '';
|
|
674
|
+
|
|
675
|
+
switch (Object.prototype.toString.call(val)) {
|
|
676
|
+
// String or Array
|
|
677
|
+
case '[object String]':
|
|
678
|
+
case '[object Array]':
|
|
679
|
+
return !val.length;
|
|
680
|
+
|
|
681
|
+
// Map or Set or File
|
|
682
|
+
case '[object File]':
|
|
683
|
+
case '[object Map]':
|
|
684
|
+
case '[object Set]':
|
|
685
|
+
{
|
|
686
|
+
return !val.size;
|
|
687
|
+
}
|
|
688
|
+
// Plain Object
|
|
689
|
+
case '[object Object]':
|
|
690
|
+
{
|
|
691
|
+
return !Object.keys(val).length;
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
return false;
|
|
696
|
+
};
|
|
697
|
+
|
|
698
|
+
function rafThrottle(fn) {
|
|
699
|
+
var locked = false;
|
|
700
|
+
return function () {
|
|
701
|
+
var _this = this;
|
|
702
|
+
|
|
703
|
+
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
|
|
704
|
+
args[_key] = arguments[_key];
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
if (locked) return;
|
|
708
|
+
locked = true;
|
|
709
|
+
window.requestAnimationFrame(function (_) {
|
|
710
|
+
fn.apply(_this, args);
|
|
711
|
+
locked = false;
|
|
712
|
+
});
|
|
713
|
+
};
|
|
714
|
+
}
|
|
715
|
+
|
|
716
|
+
function objToArray(obj) {
|
|
717
|
+
if (Array.isArray(obj)) {
|
|
718
|
+
return obj;
|
|
719
|
+
}
|
|
720
|
+
return isEmpty(obj) ? [] : [obj];
|
|
721
|
+
}
|
|
722
|
+
|
|
723
|
+
var isMac = function isMac() {
|
|
724
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && /macintosh|mac os x/i.test(navigator.userAgent);
|
|
725
|
+
};
|
|
726
|
+
|
|
727
|
+
/***/ }),
|
|
728
|
+
/* 4 */
|
|
729
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
730
|
+
|
|
731
|
+
"use strict";
|
|
732
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isString; });
|
|
733
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isObject; });
|
|
734
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return isHtmlElement; });
|
|
735
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isFunction; });
|
|
736
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isUndefined; });
|
|
737
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isDefined; });
|
|
738
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
|
|
739
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
740
|
+
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
|
741
|
+
|
|
742
|
+
|
|
743
|
+
|
|
744
|
+
function isString(obj) {
|
|
745
|
+
return Object.prototype.toString.call(obj) === '[object String]';
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
function isObject(obj) {
|
|
749
|
+
return Object.prototype.toString.call(obj) === '[object Object]';
|
|
750
|
+
}
|
|
751
|
+
|
|
752
|
+
function isHtmlElement(node) {
|
|
753
|
+
return node && node.nodeType === Node.ELEMENT_NODE;
|
|
754
|
+
}
|
|
755
|
+
|
|
756
|
+
/**
|
|
757
|
+
* - Inspired:
|
|
758
|
+
* https://github.com/jashkenas/underscore/blob/master/modules/isFunction.js
|
|
759
|
+
*/
|
|
760
|
+
var isFunction = function isFunction(functionToCheck) {
|
|
761
|
+
var getType = {};
|
|
762
|
+
return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
|
|
763
|
+
};
|
|
764
|
+
|
|
765
|
+
if ( true && (typeof Int8Array === 'undefined' ? 'undefined' : _typeof(Int8Array)) !== 'object' && (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer || typeof document.childNodes !== 'function')) {
|
|
766
|
+
isFunction = function isFunction(obj) {
|
|
767
|
+
return typeof obj === 'function' || false;
|
|
768
|
+
};
|
|
769
|
+
}
|
|
770
|
+
|
|
771
|
+
|
|
772
|
+
|
|
773
|
+
var isUndefined = function isUndefined(val) {
|
|
774
|
+
return val === void 0;
|
|
775
|
+
};
|
|
776
|
+
|
|
777
|
+
var isDefined = function isDefined(val) {
|
|
778
|
+
return val !== undefined && val !== null;
|
|
779
|
+
};
|
|
780
|
+
|
|
781
|
+
/***/ }),
|
|
782
|
+
/* 5 */,
|
|
783
|
+
/* 6 */
|
|
784
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
785
|
+
|
|
786
|
+
"use strict";
|
|
787
|
+
function _broadcast(componentName, eventName, params) {
|
|
788
|
+
this.$children.forEach(function (child) {
|
|
789
|
+
var name = child.$options.componentName;
|
|
790
|
+
|
|
791
|
+
if (name === componentName) {
|
|
792
|
+
child.$emit.apply(child, [eventName].concat(params));
|
|
793
|
+
} else {
|
|
794
|
+
_broadcast.apply(child, [componentName, eventName].concat([params]));
|
|
795
|
+
}
|
|
796
|
+
});
|
|
797
|
+
}
|
|
798
|
+
/* harmony default export */ __webpack_exports__["a"] = ({
|
|
799
|
+
methods: {
|
|
800
|
+
dispatch: function dispatch(componentName, eventName, params) {
|
|
801
|
+
var parent = this.$parent || this.$root;
|
|
802
|
+
var name = parent.$options.componentName;
|
|
803
|
+
|
|
804
|
+
while (parent && (!name || name !== componentName)) {
|
|
805
|
+
parent = parent.$parent;
|
|
806
|
+
|
|
807
|
+
if (parent) {
|
|
808
|
+
name = parent.$options.componentName;
|
|
809
|
+
}
|
|
810
|
+
}
|
|
811
|
+
if (parent) {
|
|
812
|
+
parent.$emit.apply(parent, [eventName].concat(params));
|
|
813
|
+
}
|
|
814
|
+
},
|
|
815
|
+
broadcast: function broadcast(componentName, eventName, params) {
|
|
816
|
+
_broadcast.call(this, componentName, eventName, params);
|
|
817
|
+
}
|
|
818
|
+
}
|
|
819
|
+
});
|
|
820
|
+
|
|
821
|
+
/***/ }),
|
|
822
|
+
/* 7 */
|
|
823
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
824
|
+
|
|
825
|
+
"use strict";
|
|
826
|
+
/* harmony default export */ __webpack_exports__["a"] = (function (target) {
|
|
827
|
+
for (var i = 1, j = arguments.length; i < j; i++) {
|
|
828
|
+
var source = arguments[i] || {};
|
|
829
|
+
for (var prop in source) {
|
|
830
|
+
if (source.hasOwnProperty(prop)) {
|
|
831
|
+
var value = source[prop];
|
|
832
|
+
if (value !== undefined) {
|
|
833
|
+
target[prop] = value;
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
}
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
return target;
|
|
840
|
+
});;
|
|
841
|
+
|
|
842
|
+
/***/ }),
|
|
843
|
+
/* 8 */
|
|
844
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
845
|
+
|
|
846
|
+
"use strict";
|
|
847
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
|
|
848
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
var scrollBarWidth = void 0;
|
|
852
|
+
|
|
853
|
+
/* harmony default export */ __webpack_exports__["a"] = (function () {
|
|
854
|
+
if (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer) return 0;
|
|
855
|
+
if (scrollBarWidth !== undefined) return scrollBarWidth;
|
|
856
|
+
|
|
857
|
+
var outer = document.createElement('div');
|
|
858
|
+
outer.className = 'el-scrollbar__wrap';
|
|
859
|
+
outer.style.visibility = 'hidden';
|
|
860
|
+
outer.style.width = '100px';
|
|
861
|
+
outer.style.position = 'absolute';
|
|
862
|
+
outer.style.top = '-9999px';
|
|
863
|
+
document.body.appendChild(outer);
|
|
864
|
+
|
|
865
|
+
var widthNoScroll = outer.offsetWidth;
|
|
866
|
+
outer.style.overflow = 'scroll';
|
|
867
|
+
|
|
868
|
+
var inner = document.createElement('div');
|
|
869
|
+
inner.style.width = '100%';
|
|
870
|
+
outer.appendChild(inner);
|
|
871
|
+
|
|
872
|
+
var widthWithScroll = inner.offsetWidth;
|
|
873
|
+
outer.parentNode.removeChild(outer);
|
|
874
|
+
scrollBarWidth = widthNoScroll - widthWithScroll;
|
|
875
|
+
|
|
876
|
+
return scrollBarWidth;
|
|
877
|
+
});;
|
|
878
|
+
|
|
879
|
+
/***/ }),
|
|
880
|
+
/* 9 */,
|
|
881
|
+
/* 10 */,
|
|
882
|
+
/* 11 */
|
|
883
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
884
|
+
|
|
885
|
+
"use strict";
|
|
886
|
+
|
|
887
|
+
// EXPORTS
|
|
888
|
+
__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ t; });
|
|
889
|
+
|
|
890
|
+
// UNUSED EXPORTS: use, i18n
|
|
891
|
+
|
|
892
|
+
// CONCATENATED MODULE: ./src/locale/lang/zh-CN.js
|
|
893
|
+
/* harmony default export */ var zh_CN = ({
|
|
894
|
+
el: {
|
|
895
|
+
colorpicker: {
|
|
896
|
+
confirm: '确定',
|
|
897
|
+
clear: '清空'
|
|
898
|
+
},
|
|
899
|
+
datepicker: {
|
|
900
|
+
now: '此刻',
|
|
901
|
+
today: '今天',
|
|
902
|
+
cancel: '取消',
|
|
903
|
+
clear: '清空',
|
|
904
|
+
confirm: '确定',
|
|
905
|
+
selectDate: '选择日期',
|
|
906
|
+
selectTime: '选择时间',
|
|
907
|
+
startDate: '开始日期',
|
|
908
|
+
startTime: '开始时间',
|
|
909
|
+
endDate: '结束日期',
|
|
910
|
+
endTime: '结束时间',
|
|
911
|
+
prevYear: '前一年',
|
|
912
|
+
nextYear: '后一年',
|
|
913
|
+
prevMonth: '上个月',
|
|
914
|
+
nextMonth: '下个月',
|
|
915
|
+
year: '年',
|
|
916
|
+
month1: '1 月',
|
|
917
|
+
month2: '2 月',
|
|
918
|
+
month3: '3 月',
|
|
919
|
+
month4: '4 月',
|
|
920
|
+
month5: '5 月',
|
|
921
|
+
month6: '6 月',
|
|
922
|
+
month7: '7 月',
|
|
923
|
+
month8: '8 月',
|
|
924
|
+
month9: '9 月',
|
|
925
|
+
month10: '10 月',
|
|
926
|
+
month11: '11 月',
|
|
927
|
+
month12: '12 月',
|
|
928
|
+
// week: '周次',
|
|
929
|
+
weeks: {
|
|
930
|
+
sun: '日',
|
|
931
|
+
mon: '一',
|
|
932
|
+
tue: '二',
|
|
933
|
+
wed: '三',
|
|
934
|
+
thu: '四',
|
|
935
|
+
fri: '五',
|
|
936
|
+
sat: '六'
|
|
937
|
+
},
|
|
938
|
+
months: {
|
|
939
|
+
jan: '一月',
|
|
940
|
+
feb: '二月',
|
|
941
|
+
mar: '三月',
|
|
942
|
+
apr: '四月',
|
|
943
|
+
may: '五月',
|
|
944
|
+
jun: '六月',
|
|
945
|
+
jul: '七月',
|
|
946
|
+
aug: '八月',
|
|
947
|
+
sep: '九月',
|
|
948
|
+
oct: '十月',
|
|
949
|
+
nov: '十一月',
|
|
950
|
+
dec: '十二月'
|
|
951
|
+
}
|
|
952
|
+
},
|
|
953
|
+
select: {
|
|
954
|
+
loading: '加载中',
|
|
955
|
+
noMatch: '无匹配数据',
|
|
956
|
+
noData: '无数据',
|
|
957
|
+
placeholder: '请选择'
|
|
958
|
+
},
|
|
959
|
+
cascader: {
|
|
960
|
+
noMatch: '无匹配数据',
|
|
961
|
+
loading: '加载中',
|
|
962
|
+
placeholder: '请选择',
|
|
963
|
+
noData: '暂无数据'
|
|
964
|
+
},
|
|
965
|
+
pagination: {
|
|
966
|
+
goto: '前往',
|
|
967
|
+
pagesize: '条/页',
|
|
968
|
+
total: '共 {total} 条',
|
|
969
|
+
pageClassifier: '页'
|
|
970
|
+
},
|
|
971
|
+
messagebox: {
|
|
972
|
+
title: '提示',
|
|
973
|
+
confirm: '确定',
|
|
974
|
+
cancel: '取消',
|
|
975
|
+
error: '输入的数据不合法!'
|
|
976
|
+
},
|
|
977
|
+
upload: {
|
|
978
|
+
deleteTip: '按 delete 键可删除',
|
|
979
|
+
delete: '删除',
|
|
980
|
+
preview: '查看图片',
|
|
981
|
+
continue: '继续上传'
|
|
982
|
+
},
|
|
983
|
+
table: {
|
|
984
|
+
emptyText: '暂无数据',
|
|
985
|
+
confirmFilter: '筛选',
|
|
986
|
+
resetFilter: '重置',
|
|
987
|
+
clearFilter: '全部',
|
|
988
|
+
sumText: '合计'
|
|
989
|
+
},
|
|
990
|
+
tree: {
|
|
991
|
+
emptyText: '暂无数据'
|
|
992
|
+
},
|
|
993
|
+
transfer: {
|
|
994
|
+
noMatch: '无匹配数据',
|
|
995
|
+
noData: '无数据',
|
|
996
|
+
titles: ['列表 1', '列表 2'],
|
|
997
|
+
filterPlaceholder: '请输入搜索内容',
|
|
998
|
+
noCheckedFormat: '共 {total} 项',
|
|
999
|
+
hasCheckedFormat: '已选 {checked}/{total} 项'
|
|
1000
|
+
},
|
|
1001
|
+
image: {
|
|
1002
|
+
error: '加载失败'
|
|
1003
|
+
},
|
|
1004
|
+
pageHeader: {
|
|
1005
|
+
title: '返回'
|
|
1006
|
+
},
|
|
1007
|
+
popconfirm: {
|
|
1008
|
+
confirmButtonText: '确定',
|
|
1009
|
+
cancelButtonText: '取消'
|
|
1010
|
+
},
|
|
1011
|
+
empty: {
|
|
1012
|
+
description: '暂无数据'
|
|
1013
|
+
}
|
|
1014
|
+
}
|
|
1015
|
+
});
|
|
1016
|
+
// EXTERNAL MODULE: external "vue"
|
|
1017
|
+
var external_vue_ = __webpack_require__(0);
|
|
1018
|
+
var external_vue_default = /*#__PURE__*/__webpack_require__.n(external_vue_);
|
|
1019
|
+
|
|
1020
|
+
// EXTERNAL MODULE: ./node_modules/deepmerge/dist/cjs.js
|
|
1021
|
+
var cjs = __webpack_require__(15);
|
|
1022
|
+
var cjs_default = /*#__PURE__*/__webpack_require__.n(cjs);
|
|
1023
|
+
|
|
1024
|
+
// EXTERNAL MODULE: ./src/utils/util.js
|
|
1025
|
+
var util = __webpack_require__(3);
|
|
1026
|
+
|
|
1027
|
+
// CONCATENATED MODULE: ./src/locale/format.js
|
|
1028
|
+
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
|
1029
|
+
|
|
1030
|
+
|
|
1031
|
+
|
|
1032
|
+
var RE_NARGS = /(%|)\{([0-9a-zA-Z_]+)\}/g;
|
|
1033
|
+
/**
|
|
1034
|
+
* String format template
|
|
1035
|
+
* - Inspired:
|
|
1036
|
+
* https://github.com/Matt-Esch/string-template/index.js
|
|
1037
|
+
*/
|
|
1038
|
+
/* harmony default export */ var format = (function (Vue) {
|
|
1039
|
+
/**
|
|
1040
|
+
* template
|
|
1041
|
+
*
|
|
1042
|
+
* @param {String} string
|
|
1043
|
+
* @param {Array} ...args
|
|
1044
|
+
* @return {String}
|
|
1045
|
+
*/
|
|
1046
|
+
|
|
1047
|
+
function template(string) {
|
|
1048
|
+
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
1049
|
+
args[_key - 1] = arguments[_key];
|
|
1050
|
+
}
|
|
1051
|
+
|
|
1052
|
+
if (args.length === 1 && _typeof(args[0]) === 'object') {
|
|
1053
|
+
args = args[0];
|
|
1054
|
+
}
|
|
1055
|
+
|
|
1056
|
+
if (!args || !args.hasOwnProperty) {
|
|
1057
|
+
args = {};
|
|
1058
|
+
}
|
|
1059
|
+
|
|
1060
|
+
return string.replace(RE_NARGS, function (match, prefix, i, index) {
|
|
1061
|
+
var result = void 0;
|
|
1062
|
+
|
|
1063
|
+
if (string[index - 1] === '{' && string[index + match.length] === '}') {
|
|
1064
|
+
return i;
|
|
1065
|
+
} else {
|
|
1066
|
+
result = Object(util["j" /* hasOwn */])(args, i) ? args[i] : null;
|
|
1067
|
+
if (result === null || result === undefined) {
|
|
1068
|
+
return '';
|
|
1069
|
+
}
|
|
1070
|
+
|
|
1071
|
+
return result;
|
|
1072
|
+
}
|
|
1073
|
+
});
|
|
1074
|
+
}
|
|
1075
|
+
|
|
1076
|
+
return template;
|
|
1077
|
+
});
|
|
1078
|
+
// CONCATENATED MODULE: ./src/locale/index.js
|
|
1079
|
+
|
|
1080
|
+
|
|
1081
|
+
|
|
1082
|
+
|
|
1083
|
+
|
|
1084
|
+
var locale_format = format(external_vue_default.a);
|
|
1085
|
+
var lang = zh_CN;
|
|
1086
|
+
var merged = false;
|
|
1087
|
+
var locale_i18nHandler = function i18nHandler() {
|
|
1088
|
+
var vuei18n = Object.getPrototypeOf(this || external_vue_default.a).$t;
|
|
1089
|
+
if (typeof vuei18n === 'function' && !!external_vue_default.a.locale) {
|
|
1090
|
+
if (!merged) {
|
|
1091
|
+
merged = true;
|
|
1092
|
+
external_vue_default.a.locale(external_vue_default.a.config.lang, cjs_default()(lang, external_vue_default.a.locale(external_vue_default.a.config.lang) || {}, { clone: true }));
|
|
1093
|
+
}
|
|
1094
|
+
return vuei18n.apply(this, arguments);
|
|
1095
|
+
}
|
|
1096
|
+
};
|
|
1097
|
+
|
|
1098
|
+
var t = function t(path, options) {
|
|
1099
|
+
var value = locale_i18nHandler.apply(this, arguments);
|
|
1100
|
+
if (value !== null && value !== undefined) return value;
|
|
1101
|
+
|
|
1102
|
+
var array = path.split('.');
|
|
1103
|
+
var current = lang;
|
|
1104
|
+
|
|
1105
|
+
for (var i = 0, j = array.length; i < j; i++) {
|
|
1106
|
+
var property = array[i];
|
|
1107
|
+
value = current[property];
|
|
1108
|
+
if (i === j - 1) return locale_format(value, options);
|
|
1109
|
+
if (!value) return '';
|
|
1110
|
+
current = value;
|
|
1111
|
+
}
|
|
1112
|
+
return '';
|
|
1113
|
+
};
|
|
1114
|
+
|
|
1115
|
+
var use = function use(l) {
|
|
1116
|
+
lang = l || lang;
|
|
1117
|
+
};
|
|
1118
|
+
|
|
1119
|
+
var i18n = function i18n(fn) {
|
|
1120
|
+
locale_i18nHandler = fn || locale_i18nHandler;
|
|
1121
|
+
};
|
|
1122
|
+
|
|
1123
|
+
/* harmony default export */ var locale = ({ use: use, t: t, i18n: i18n });
|
|
1124
|
+
|
|
1125
|
+
/***/ }),
|
|
1126
|
+
/* 12 */,
|
|
1127
|
+
/* 13 */
|
|
1128
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1129
|
+
|
|
1130
|
+
"use strict";
|
|
1131
|
+
/* harmony import */ var element_ui_src_locale__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11);
|
|
1132
|
+
|
|
1133
|
+
|
|
1134
|
+
/* harmony default export */ __webpack_exports__["a"] = ({
|
|
1135
|
+
methods: {
|
|
1136
|
+
t: function t() {
|
|
1137
|
+
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
|
|
1138
|
+
args[_key] = arguments[_key];
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1141
|
+
return element_ui_src_locale__WEBPACK_IMPORTED_MODULE_0__[/* t */ "a"].apply(this, args);
|
|
1142
|
+
}
|
|
1143
|
+
}
|
|
1144
|
+
});
|
|
1145
|
+
|
|
1146
|
+
/***/ }),
|
|
1147
|
+
/* 14 */
|
|
1148
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1149
|
+
|
|
1150
|
+
"use strict";
|
|
1151
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addResizeListener; });
|
|
1152
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return removeResizeListener; });
|
|
1153
|
+
/* harmony import */ var resize_observer_polyfill__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
|
|
1154
|
+
/* harmony import */ var throttle_debounce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
|
|
1155
|
+
/* harmony import */ var throttle_debounce__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(throttle_debounce__WEBPACK_IMPORTED_MODULE_1__);
|
|
1156
|
+
|
|
1157
|
+
|
|
1158
|
+
|
|
1159
|
+
var isServer = typeof window === 'undefined';
|
|
1160
|
+
|
|
1161
|
+
/* istanbul ignore next */
|
|
1162
|
+
var resizeHandler = function resizeHandler(entries) {
|
|
1163
|
+
for (var _iterator = entries, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
|
|
1164
|
+
var _ref;
|
|
1165
|
+
|
|
1166
|
+
if (_isArray) {
|
|
1167
|
+
if (_i >= _iterator.length) break;
|
|
1168
|
+
_ref = _iterator[_i++];
|
|
1169
|
+
} else {
|
|
1170
|
+
_i = _iterator.next();
|
|
1171
|
+
if (_i.done) break;
|
|
1172
|
+
_ref = _i.value;
|
|
1173
|
+
}
|
|
1174
|
+
|
|
1175
|
+
var entry = _ref;
|
|
1176
|
+
|
|
1177
|
+
var listeners = entry.target.__resizeListeners__ || [];
|
|
1178
|
+
if (listeners.length) {
|
|
1179
|
+
listeners.forEach(function (fn) {
|
|
1180
|
+
fn();
|
|
1181
|
+
});
|
|
1182
|
+
}
|
|
1183
|
+
}
|
|
1184
|
+
};
|
|
1185
|
+
|
|
1186
|
+
/* istanbul ignore next */
|
|
1187
|
+
var addResizeListener = function addResizeListener(element, fn) {
|
|
1188
|
+
if (isServer) return;
|
|
1189
|
+
if (!element.__resizeListeners__) {
|
|
1190
|
+
element.__resizeListeners__ = [];
|
|
1191
|
+
element.__ro__ = new resize_observer_polyfill__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"](Object(throttle_debounce__WEBPACK_IMPORTED_MODULE_1__["debounce"])(16, resizeHandler));
|
|
1192
|
+
element.__ro__.observe(element);
|
|
1193
|
+
}
|
|
1194
|
+
element.__resizeListeners__.push(fn);
|
|
1195
|
+
};
|
|
1196
|
+
|
|
1197
|
+
/* istanbul ignore next */
|
|
1198
|
+
var removeResizeListener = function removeResizeListener(element, fn) {
|
|
1199
|
+
if (!element || !element.__resizeListeners__) return;
|
|
1200
|
+
element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1);
|
|
1201
|
+
if (!element.__resizeListeners__.length) {
|
|
1202
|
+
element.__ro__.disconnect();
|
|
1203
|
+
}
|
|
1204
|
+
};
|
|
1205
|
+
|
|
1206
|
+
/***/ }),
|
|
1207
|
+
/* 15 */
|
|
1208
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
1209
|
+
|
|
1210
|
+
"use strict";
|
|
1211
|
+
|
|
1212
|
+
|
|
1213
|
+
var isMergeableObject = function isMergeableObject(value) {
|
|
1214
|
+
return isNonNullObject(value)
|
|
1215
|
+
&& !isSpecial(value)
|
|
1216
|
+
};
|
|
1217
|
+
|
|
1218
|
+
function isNonNullObject(value) {
|
|
1219
|
+
return !!value && typeof value === 'object'
|
|
1220
|
+
}
|
|
1221
|
+
|
|
1222
|
+
function isSpecial(value) {
|
|
1223
|
+
var stringValue = Object.prototype.toString.call(value);
|
|
1224
|
+
|
|
1225
|
+
return stringValue === '[object RegExp]'
|
|
1226
|
+
|| stringValue === '[object Date]'
|
|
1227
|
+
|| isReactElement(value)
|
|
1228
|
+
}
|
|
1229
|
+
|
|
1230
|
+
// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25
|
|
1231
|
+
var canUseSymbol = typeof Symbol === 'function' && Symbol.for;
|
|
1232
|
+
var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;
|
|
1233
|
+
|
|
1234
|
+
function isReactElement(value) {
|
|
1235
|
+
return value.$$typeof === REACT_ELEMENT_TYPE
|
|
1236
|
+
}
|
|
1237
|
+
|
|
1238
|
+
function emptyTarget(val) {
|
|
1239
|
+
return Array.isArray(val) ? [] : {}
|
|
1240
|
+
}
|
|
1241
|
+
|
|
1242
|
+
function cloneIfNecessary(value, optionsArgument) {
|
|
1243
|
+
var clone = optionsArgument && optionsArgument.clone === true;
|
|
1244
|
+
return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value
|
|
1245
|
+
}
|
|
1246
|
+
|
|
1247
|
+
function defaultArrayMerge(target, source, optionsArgument) {
|
|
1248
|
+
var destination = target.slice();
|
|
1249
|
+
source.forEach(function(e, i) {
|
|
1250
|
+
if (typeof destination[i] === 'undefined') {
|
|
1251
|
+
destination[i] = cloneIfNecessary(e, optionsArgument);
|
|
1252
|
+
} else if (isMergeableObject(e)) {
|
|
1253
|
+
destination[i] = deepmerge(target[i], e, optionsArgument);
|
|
1254
|
+
} else if (target.indexOf(e) === -1) {
|
|
1255
|
+
destination.push(cloneIfNecessary(e, optionsArgument));
|
|
1256
|
+
}
|
|
1257
|
+
});
|
|
1258
|
+
return destination
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1261
|
+
function mergeObject(target, source, optionsArgument) {
|
|
1262
|
+
var destination = {};
|
|
1263
|
+
if (isMergeableObject(target)) {
|
|
1264
|
+
Object.keys(target).forEach(function(key) {
|
|
1265
|
+
destination[key] = cloneIfNecessary(target[key], optionsArgument);
|
|
1266
|
+
});
|
|
1267
|
+
}
|
|
1268
|
+
Object.keys(source).forEach(function(key) {
|
|
1269
|
+
if (!isMergeableObject(source[key]) || !target[key]) {
|
|
1270
|
+
destination[key] = cloneIfNecessary(source[key], optionsArgument);
|
|
1271
|
+
} else {
|
|
1272
|
+
destination[key] = deepmerge(target[key], source[key], optionsArgument);
|
|
1273
|
+
}
|
|
1274
|
+
});
|
|
1275
|
+
return destination
|
|
1276
|
+
}
|
|
1277
|
+
|
|
1278
|
+
function deepmerge(target, source, optionsArgument) {
|
|
1279
|
+
var sourceIsArray = Array.isArray(source);
|
|
1280
|
+
var targetIsArray = Array.isArray(target);
|
|
1281
|
+
var options = optionsArgument || { arrayMerge: defaultArrayMerge };
|
|
1282
|
+
var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;
|
|
1283
|
+
|
|
1284
|
+
if (!sourceAndTargetTypesMatch) {
|
|
1285
|
+
return cloneIfNecessary(source, optionsArgument)
|
|
1286
|
+
} else if (sourceIsArray) {
|
|
1287
|
+
var arrayMerge = options.arrayMerge || defaultArrayMerge;
|
|
1288
|
+
return arrayMerge(target, source, optionsArgument)
|
|
1289
|
+
} else {
|
|
1290
|
+
return mergeObject(target, source, optionsArgument)
|
|
1291
|
+
}
|
|
1292
|
+
}
|
|
1293
|
+
|
|
1294
|
+
deepmerge.all = function deepmergeAll(array, optionsArgument) {
|
|
1295
|
+
if (!Array.isArray(array) || array.length < 2) {
|
|
1296
|
+
throw new Error('first argument should be an array with at least two elements')
|
|
1297
|
+
}
|
|
1298
|
+
|
|
1299
|
+
// we are sure there are at least 2 values, so it is safe to have no initial value
|
|
1300
|
+
return array.reduce(function(prev, next) {
|
|
1301
|
+
return deepmerge(prev, next, optionsArgument)
|
|
1302
|
+
})
|
|
1303
|
+
};
|
|
1304
|
+
|
|
1305
|
+
var deepmerge_1 = deepmerge;
|
|
1306
|
+
|
|
1307
|
+
module.exports = deepmerge_1;
|
|
1308
|
+
|
|
1309
|
+
|
|
1310
|
+
/***/ }),
|
|
1311
|
+
/* 16 */
|
|
1312
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
1313
|
+
|
|
1314
|
+
/* eslint-disable no-undefined */
|
|
1315
|
+
|
|
1316
|
+
var throttle = __webpack_require__(17);
|
|
1317
|
+
|
|
1318
|
+
/**
|
|
1319
|
+
* Debounce execution of a function. Debouncing, unlike throttling,
|
|
1320
|
+
* guarantees that a function is only executed a single time, either at the
|
|
1321
|
+
* very beginning of a series of calls, or at the very end.
|
|
1322
|
+
*
|
|
1323
|
+
* @param {Number} delay A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.
|
|
1324
|
+
* @param {Boolean} [atBegin] Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds
|
|
1325
|
+
* after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.
|
|
1326
|
+
* (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).
|
|
1327
|
+
* @param {Function} callback A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,
|
|
1328
|
+
* to `callback` when the debounced-function is executed.
|
|
1329
|
+
*
|
|
1330
|
+
* @return {Function} A new, debounced function.
|
|
1331
|
+
*/
|
|
1332
|
+
module.exports = function ( delay, atBegin, callback ) {
|
|
1333
|
+
return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);
|
|
1334
|
+
};
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
/***/ }),
|
|
1338
|
+
/* 17 */
|
|
1339
|
+
/***/ (function(module, exports) {
|
|
1340
|
+
|
|
1341
|
+
/* eslint-disable no-undefined,no-param-reassign,no-shadow */
|
|
1342
|
+
|
|
1343
|
+
/**
|
|
1344
|
+
* Throttle execution of a function. Especially useful for rate limiting
|
|
1345
|
+
* execution of handlers on events like resize and scroll.
|
|
1346
|
+
*
|
|
1347
|
+
* @param {Number} delay A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.
|
|
1348
|
+
* @param {Boolean} [noTrailing] Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the
|
|
1349
|
+
* throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time
|
|
1350
|
+
* after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds,
|
|
1351
|
+
* the internal counter is reset)
|
|
1352
|
+
* @param {Function} callback A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,
|
|
1353
|
+
* to `callback` when the throttled-function is executed.
|
|
1354
|
+
* @param {Boolean} [debounceMode] If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end),
|
|
1355
|
+
* schedule `callback` to execute after `delay` ms.
|
|
1356
|
+
*
|
|
1357
|
+
* @return {Function} A new, throttled, function.
|
|
1358
|
+
*/
|
|
1359
|
+
module.exports = function ( delay, noTrailing, callback, debounceMode ) {
|
|
1360
|
+
|
|
1361
|
+
// After wrapper has stopped being called, this timeout ensures that
|
|
1362
|
+
// `callback` is executed at the proper times in `throttle` and `end`
|
|
1363
|
+
// debounce modes.
|
|
1364
|
+
var timeoutID;
|
|
1365
|
+
|
|
1366
|
+
// Keep track of the last time `callback` was executed.
|
|
1367
|
+
var lastExec = 0;
|
|
1368
|
+
|
|
1369
|
+
// `noTrailing` defaults to falsy.
|
|
1370
|
+
if ( typeof noTrailing !== 'boolean' ) {
|
|
1371
|
+
debounceMode = callback;
|
|
1372
|
+
callback = noTrailing;
|
|
1373
|
+
noTrailing = undefined;
|
|
1374
|
+
}
|
|
1375
|
+
|
|
1376
|
+
// The `wrapper` function encapsulates all of the throttling / debouncing
|
|
1377
|
+
// functionality and when executed will limit the rate at which `callback`
|
|
1378
|
+
// is executed.
|
|
1379
|
+
function wrapper () {
|
|
1380
|
+
|
|
1381
|
+
var self = this;
|
|
1382
|
+
var elapsed = Number(new Date()) - lastExec;
|
|
1383
|
+
var args = arguments;
|
|
1384
|
+
|
|
1385
|
+
// Execute `callback` and update the `lastExec` timestamp.
|
|
1386
|
+
function exec () {
|
|
1387
|
+
lastExec = Number(new Date());
|
|
1388
|
+
callback.apply(self, args);
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1391
|
+
// If `debounceMode` is true (at begin) this is used to clear the flag
|
|
1392
|
+
// to allow future `callback` executions.
|
|
1393
|
+
function clear () {
|
|
1394
|
+
timeoutID = undefined;
|
|
1395
|
+
}
|
|
1396
|
+
|
|
1397
|
+
if ( debounceMode && !timeoutID ) {
|
|
1398
|
+
// Since `wrapper` is being called for the first time and
|
|
1399
|
+
// `debounceMode` is true (at begin), execute `callback`.
|
|
1400
|
+
exec();
|
|
1401
|
+
}
|
|
1402
|
+
|
|
1403
|
+
// Clear any existing timeout.
|
|
1404
|
+
if ( timeoutID ) {
|
|
1405
|
+
clearTimeout(timeoutID);
|
|
1406
|
+
}
|
|
1407
|
+
|
|
1408
|
+
if ( debounceMode === undefined && elapsed > delay ) {
|
|
1409
|
+
// In throttle mode, if `delay` time has been exceeded, execute
|
|
1410
|
+
// `callback`.
|
|
1411
|
+
exec();
|
|
1412
|
+
|
|
1413
|
+
} else if ( noTrailing !== true ) {
|
|
1414
|
+
// In trailing throttle mode, since `delay` time has not been
|
|
1415
|
+
// exceeded, schedule `callback` to execute `delay` ms after most
|
|
1416
|
+
// recent execution.
|
|
1417
|
+
//
|
|
1418
|
+
// If `debounceMode` is true (at begin), schedule `clear` to execute
|
|
1419
|
+
// after `delay` ms.
|
|
1420
|
+
//
|
|
1421
|
+
// If `debounceMode` is false (at end), schedule `callback` to
|
|
1422
|
+
// execute after `delay` ms.
|
|
1423
|
+
timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);
|
|
1424
|
+
}
|
|
1425
|
+
|
|
1426
|
+
}
|
|
1427
|
+
|
|
1428
|
+
// Return the wrapper function.
|
|
1429
|
+
return wrapper;
|
|
1430
|
+
|
|
1431
|
+
};
|
|
1432
|
+
|
|
1433
|
+
|
|
1434
|
+
/***/ }),
|
|
1435
|
+
/* 18 */
|
|
1436
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1437
|
+
|
|
1438
|
+
"use strict";
|
|
1439
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isDef; });
|
|
1440
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isKorean; });
|
|
1441
|
+
function isDef(val) {
|
|
1442
|
+
return val !== undefined && val !== null;
|
|
1443
|
+
}
|
|
1444
|
+
function isKorean(text) {
|
|
1445
|
+
var reg = /([(\uAC00-\uD7AF)|(\u3130-\u318F)])+/gi;
|
|
1446
|
+
return reg.test(text);
|
|
1447
|
+
}
|
|
1448
|
+
|
|
1449
|
+
/***/ }),
|
|
1450
|
+
/* 19 */,
|
|
1451
|
+
/* 20 */,
|
|
1452
|
+
/* 21 */
|
|
1453
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
1454
|
+
|
|
1455
|
+
var throttle = __webpack_require__(17);
|
|
1456
|
+
var debounce = __webpack_require__(16);
|
|
1457
|
+
|
|
1458
|
+
module.exports = {
|
|
1459
|
+
throttle: throttle,
|
|
1460
|
+
debounce: debounce
|
|
1461
|
+
};
|
|
1462
|
+
|
|
1463
|
+
|
|
1464
|
+
/***/ }),
|
|
1465
|
+
/* 22 */
|
|
1466
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1467
|
+
|
|
1468
|
+
"use strict";
|
|
1469
|
+
/* WEBPACK VAR INJECTION */(function(global) {/**
|
|
1470
|
+
* A collection of shims that provide minimal functionality of the ES6 collections.
|
|
1471
|
+
*
|
|
1472
|
+
* These implementations are not meant to be used outside of the ResizeObserver
|
|
1473
|
+
* modules as they cover only a limited range of use cases.
|
|
1474
|
+
*/
|
|
1475
|
+
/* eslint-disable require-jsdoc, valid-jsdoc */
|
|
1476
|
+
var MapShim = (function () {
|
|
1477
|
+
if (typeof Map !== 'undefined') {
|
|
1478
|
+
return Map;
|
|
1479
|
+
}
|
|
1480
|
+
/**
|
|
1481
|
+
* Returns index in provided array that matches the specified key.
|
|
1482
|
+
*
|
|
1483
|
+
* @param {Array<Array>} arr
|
|
1484
|
+
* @param {*} key
|
|
1485
|
+
* @returns {number}
|
|
1486
|
+
*/
|
|
1487
|
+
function getIndex(arr, key) {
|
|
1488
|
+
var result = -1;
|
|
1489
|
+
arr.some(function (entry, index) {
|
|
1490
|
+
if (entry[0] === key) {
|
|
1491
|
+
result = index;
|
|
1492
|
+
return true;
|
|
1493
|
+
}
|
|
1494
|
+
return false;
|
|
1495
|
+
});
|
|
1496
|
+
return result;
|
|
1497
|
+
}
|
|
1498
|
+
return /** @class */ (function () {
|
|
1499
|
+
function class_1() {
|
|
1500
|
+
this.__entries__ = [];
|
|
1501
|
+
}
|
|
1502
|
+
Object.defineProperty(class_1.prototype, "size", {
|
|
1503
|
+
/**
|
|
1504
|
+
* @returns {boolean}
|
|
1505
|
+
*/
|
|
1506
|
+
get: function () {
|
|
1507
|
+
return this.__entries__.length;
|
|
1508
|
+
},
|
|
1509
|
+
enumerable: true,
|
|
1510
|
+
configurable: true
|
|
1511
|
+
});
|
|
1512
|
+
/**
|
|
1513
|
+
* @param {*} key
|
|
1514
|
+
* @returns {*}
|
|
1515
|
+
*/
|
|
1516
|
+
class_1.prototype.get = function (key) {
|
|
1517
|
+
var index = getIndex(this.__entries__, key);
|
|
1518
|
+
var entry = this.__entries__[index];
|
|
1519
|
+
return entry && entry[1];
|
|
1520
|
+
};
|
|
1521
|
+
/**
|
|
1522
|
+
* @param {*} key
|
|
1523
|
+
* @param {*} value
|
|
1524
|
+
* @returns {void}
|
|
1525
|
+
*/
|
|
1526
|
+
class_1.prototype.set = function (key, value) {
|
|
1527
|
+
var index = getIndex(this.__entries__, key);
|
|
1528
|
+
if (~index) {
|
|
1529
|
+
this.__entries__[index][1] = value;
|
|
1530
|
+
}
|
|
1531
|
+
else {
|
|
1532
|
+
this.__entries__.push([key, value]);
|
|
1533
|
+
}
|
|
1534
|
+
};
|
|
1535
|
+
/**
|
|
1536
|
+
* @param {*} key
|
|
1537
|
+
* @returns {void}
|
|
1538
|
+
*/
|
|
1539
|
+
class_1.prototype.delete = function (key) {
|
|
1540
|
+
var entries = this.__entries__;
|
|
1541
|
+
var index = getIndex(entries, key);
|
|
1542
|
+
if (~index) {
|
|
1543
|
+
entries.splice(index, 1);
|
|
1544
|
+
}
|
|
1545
|
+
};
|
|
1546
|
+
/**
|
|
1547
|
+
* @param {*} key
|
|
1548
|
+
* @returns {void}
|
|
1549
|
+
*/
|
|
1550
|
+
class_1.prototype.has = function (key) {
|
|
1551
|
+
return !!~getIndex(this.__entries__, key);
|
|
1552
|
+
};
|
|
1553
|
+
/**
|
|
1554
|
+
* @returns {void}
|
|
1555
|
+
*/
|
|
1556
|
+
class_1.prototype.clear = function () {
|
|
1557
|
+
this.__entries__.splice(0);
|
|
1558
|
+
};
|
|
1559
|
+
/**
|
|
1560
|
+
* @param {Function} callback
|
|
1561
|
+
* @param {*} [ctx=null]
|
|
1562
|
+
* @returns {void}
|
|
1563
|
+
*/
|
|
1564
|
+
class_1.prototype.forEach = function (callback, ctx) {
|
|
1565
|
+
if (ctx === void 0) { ctx = null; }
|
|
1566
|
+
for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {
|
|
1567
|
+
var entry = _a[_i];
|
|
1568
|
+
callback.call(ctx, entry[1], entry[0]);
|
|
1569
|
+
}
|
|
1570
|
+
};
|
|
1571
|
+
return class_1;
|
|
1572
|
+
}());
|
|
1573
|
+
})();
|
|
1574
|
+
|
|
1575
|
+
/**
|
|
1576
|
+
* Detects whether window and document objects are available in current environment.
|
|
1577
|
+
*/
|
|
1578
|
+
var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;
|
|
1579
|
+
|
|
1580
|
+
// Returns global object of a current environment.
|
|
1581
|
+
var global$1 = (function () {
|
|
1582
|
+
if (typeof global !== 'undefined' && global.Math === Math) {
|
|
1583
|
+
return global;
|
|
1584
|
+
}
|
|
1585
|
+
if (typeof self !== 'undefined' && self.Math === Math) {
|
|
1586
|
+
return self;
|
|
1587
|
+
}
|
|
1588
|
+
if (typeof window !== 'undefined' && window.Math === Math) {
|
|
1589
|
+
return window;
|
|
1590
|
+
}
|
|
1591
|
+
// eslint-disable-next-line no-new-func
|
|
1592
|
+
return Function('return this')();
|
|
1593
|
+
})();
|
|
1594
|
+
|
|
1595
|
+
/**
|
|
1596
|
+
* A shim for the requestAnimationFrame which falls back to the setTimeout if
|
|
1597
|
+
* first one is not supported.
|
|
1598
|
+
*
|
|
1599
|
+
* @returns {number} Requests' identifier.
|
|
1600
|
+
*/
|
|
1601
|
+
var requestAnimationFrame$1 = (function () {
|
|
1602
|
+
if (typeof requestAnimationFrame === 'function') {
|
|
1603
|
+
// It's required to use a bounded function because IE sometimes throws
|
|
1604
|
+
// an "Invalid calling object" error if rAF is invoked without the global
|
|
1605
|
+
// object on the left hand side.
|
|
1606
|
+
return requestAnimationFrame.bind(global$1);
|
|
1607
|
+
}
|
|
1608
|
+
return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };
|
|
1609
|
+
})();
|
|
1610
|
+
|
|
1611
|
+
// Defines minimum timeout before adding a trailing call.
|
|
1612
|
+
var trailingTimeout = 2;
|
|
1613
|
+
/**
|
|
1614
|
+
* Creates a wrapper function which ensures that provided callback will be
|
|
1615
|
+
* invoked only once during the specified delay period.
|
|
1616
|
+
*
|
|
1617
|
+
* @param {Function} callback - Function to be invoked after the delay period.
|
|
1618
|
+
* @param {number} delay - Delay after which to invoke callback.
|
|
1619
|
+
* @returns {Function}
|
|
1620
|
+
*/
|
|
1621
|
+
function throttle (callback, delay) {
|
|
1622
|
+
var leadingCall = false, trailingCall = false, lastCallTime = 0;
|
|
1623
|
+
/**
|
|
1624
|
+
* Invokes the original callback function and schedules new invocation if
|
|
1625
|
+
* the "proxy" was called during current request.
|
|
1626
|
+
*
|
|
1627
|
+
* @returns {void}
|
|
1628
|
+
*/
|
|
1629
|
+
function resolvePending() {
|
|
1630
|
+
if (leadingCall) {
|
|
1631
|
+
leadingCall = false;
|
|
1632
|
+
callback();
|
|
1633
|
+
}
|
|
1634
|
+
if (trailingCall) {
|
|
1635
|
+
proxy();
|
|
1636
|
+
}
|
|
1637
|
+
}
|
|
1638
|
+
/**
|
|
1639
|
+
* Callback invoked after the specified delay. It will further postpone
|
|
1640
|
+
* invocation of the original function delegating it to the
|
|
1641
|
+
* requestAnimationFrame.
|
|
1642
|
+
*
|
|
1643
|
+
* @returns {void}
|
|
1644
|
+
*/
|
|
1645
|
+
function timeoutCallback() {
|
|
1646
|
+
requestAnimationFrame$1(resolvePending);
|
|
1647
|
+
}
|
|
1648
|
+
/**
|
|
1649
|
+
* Schedules invocation of the original function.
|
|
1650
|
+
*
|
|
1651
|
+
* @returns {void}
|
|
1652
|
+
*/
|
|
1653
|
+
function proxy() {
|
|
1654
|
+
var timeStamp = Date.now();
|
|
1655
|
+
if (leadingCall) {
|
|
1656
|
+
// Reject immediately following calls.
|
|
1657
|
+
if (timeStamp - lastCallTime < trailingTimeout) {
|
|
1658
|
+
return;
|
|
1659
|
+
}
|
|
1660
|
+
// Schedule new call to be in invoked when the pending one is resolved.
|
|
1661
|
+
// This is important for "transitions" which never actually start
|
|
1662
|
+
// immediately so there is a chance that we might miss one if change
|
|
1663
|
+
// happens amids the pending invocation.
|
|
1664
|
+
trailingCall = true;
|
|
1665
|
+
}
|
|
1666
|
+
else {
|
|
1667
|
+
leadingCall = true;
|
|
1668
|
+
trailingCall = false;
|
|
1669
|
+
setTimeout(timeoutCallback, delay);
|
|
1670
|
+
}
|
|
1671
|
+
lastCallTime = timeStamp;
|
|
1672
|
+
}
|
|
1673
|
+
return proxy;
|
|
1674
|
+
}
|
|
1675
|
+
|
|
1676
|
+
// Minimum delay before invoking the update of observers.
|
|
1677
|
+
var REFRESH_DELAY = 20;
|
|
1678
|
+
// A list of substrings of CSS properties used to find transition events that
|
|
1679
|
+
// might affect dimensions of observed elements.
|
|
1680
|
+
var transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];
|
|
1681
|
+
// Check if MutationObserver is available.
|
|
1682
|
+
var mutationObserverSupported = typeof MutationObserver !== 'undefined';
|
|
1683
|
+
/**
|
|
1684
|
+
* Singleton controller class which handles updates of ResizeObserver instances.
|
|
1685
|
+
*/
|
|
1686
|
+
var ResizeObserverController = /** @class */ (function () {
|
|
1687
|
+
/**
|
|
1688
|
+
* Creates a new instance of ResizeObserverController.
|
|
1689
|
+
*
|
|
1690
|
+
* @private
|
|
1691
|
+
*/
|
|
1692
|
+
function ResizeObserverController() {
|
|
1693
|
+
/**
|
|
1694
|
+
* Indicates whether DOM listeners have been added.
|
|
1695
|
+
*
|
|
1696
|
+
* @private {boolean}
|
|
1697
|
+
*/
|
|
1698
|
+
this.connected_ = false;
|
|
1699
|
+
/**
|
|
1700
|
+
* Tells that controller has subscribed for Mutation Events.
|
|
1701
|
+
*
|
|
1702
|
+
* @private {boolean}
|
|
1703
|
+
*/
|
|
1704
|
+
this.mutationEventsAdded_ = false;
|
|
1705
|
+
/**
|
|
1706
|
+
* Keeps reference to the instance of MutationObserver.
|
|
1707
|
+
*
|
|
1708
|
+
* @private {MutationObserver}
|
|
1709
|
+
*/
|
|
1710
|
+
this.mutationsObserver_ = null;
|
|
1711
|
+
/**
|
|
1712
|
+
* A list of connected observers.
|
|
1713
|
+
*
|
|
1714
|
+
* @private {Array<ResizeObserverSPI>}
|
|
1715
|
+
*/
|
|
1716
|
+
this.observers_ = [];
|
|
1717
|
+
this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);
|
|
1718
|
+
this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);
|
|
1719
|
+
}
|
|
1720
|
+
/**
|
|
1721
|
+
* Adds observer to observers list.
|
|
1722
|
+
*
|
|
1723
|
+
* @param {ResizeObserverSPI} observer - Observer to be added.
|
|
1724
|
+
* @returns {void}
|
|
1725
|
+
*/
|
|
1726
|
+
ResizeObserverController.prototype.addObserver = function (observer) {
|
|
1727
|
+
if (!~this.observers_.indexOf(observer)) {
|
|
1728
|
+
this.observers_.push(observer);
|
|
1729
|
+
}
|
|
1730
|
+
// Add listeners if they haven't been added yet.
|
|
1731
|
+
if (!this.connected_) {
|
|
1732
|
+
this.connect_();
|
|
1733
|
+
}
|
|
1734
|
+
};
|
|
1735
|
+
/**
|
|
1736
|
+
* Removes observer from observers list.
|
|
1737
|
+
*
|
|
1738
|
+
* @param {ResizeObserverSPI} observer - Observer to be removed.
|
|
1739
|
+
* @returns {void}
|
|
1740
|
+
*/
|
|
1741
|
+
ResizeObserverController.prototype.removeObserver = function (observer) {
|
|
1742
|
+
var observers = this.observers_;
|
|
1743
|
+
var index = observers.indexOf(observer);
|
|
1744
|
+
// Remove observer if it's present in registry.
|
|
1745
|
+
if (~index) {
|
|
1746
|
+
observers.splice(index, 1);
|
|
1747
|
+
}
|
|
1748
|
+
// Remove listeners if controller has no connected observers.
|
|
1749
|
+
if (!observers.length && this.connected_) {
|
|
1750
|
+
this.disconnect_();
|
|
1751
|
+
}
|
|
1752
|
+
};
|
|
1753
|
+
/**
|
|
1754
|
+
* Invokes the update of observers. It will continue running updates insofar
|
|
1755
|
+
* it detects changes.
|
|
1756
|
+
*
|
|
1757
|
+
* @returns {void}
|
|
1758
|
+
*/
|
|
1759
|
+
ResizeObserverController.prototype.refresh = function () {
|
|
1760
|
+
var changesDetected = this.updateObservers_();
|
|
1761
|
+
// Continue running updates if changes have been detected as there might
|
|
1762
|
+
// be future ones caused by CSS transitions.
|
|
1763
|
+
if (changesDetected) {
|
|
1764
|
+
this.refresh();
|
|
1765
|
+
}
|
|
1766
|
+
};
|
|
1767
|
+
/**
|
|
1768
|
+
* Updates every observer from observers list and notifies them of queued
|
|
1769
|
+
* entries.
|
|
1770
|
+
*
|
|
1771
|
+
* @private
|
|
1772
|
+
* @returns {boolean} Returns "true" if any observer has detected changes in
|
|
1773
|
+
* dimensions of it's elements.
|
|
1774
|
+
*/
|
|
1775
|
+
ResizeObserverController.prototype.updateObservers_ = function () {
|
|
1776
|
+
// Collect observers that have active observations.
|
|
1777
|
+
var activeObservers = this.observers_.filter(function (observer) {
|
|
1778
|
+
return observer.gatherActive(), observer.hasActive();
|
|
1779
|
+
});
|
|
1780
|
+
// Deliver notifications in a separate cycle in order to avoid any
|
|
1781
|
+
// collisions between observers, e.g. when multiple instances of
|
|
1782
|
+
// ResizeObserver are tracking the same element and the callback of one
|
|
1783
|
+
// of them changes content dimensions of the observed target. Sometimes
|
|
1784
|
+
// this may result in notifications being blocked for the rest of observers.
|
|
1785
|
+
activeObservers.forEach(function (observer) { return observer.broadcastActive(); });
|
|
1786
|
+
return activeObservers.length > 0;
|
|
1787
|
+
};
|
|
1788
|
+
/**
|
|
1789
|
+
* Initializes DOM listeners.
|
|
1790
|
+
*
|
|
1791
|
+
* @private
|
|
1792
|
+
* @returns {void}
|
|
1793
|
+
*/
|
|
1794
|
+
ResizeObserverController.prototype.connect_ = function () {
|
|
1795
|
+
// Do nothing if running in a non-browser environment or if listeners
|
|
1796
|
+
// have been already added.
|
|
1797
|
+
if (!isBrowser || this.connected_) {
|
|
1798
|
+
return;
|
|
1799
|
+
}
|
|
1800
|
+
// Subscription to the "Transitionend" event is used as a workaround for
|
|
1801
|
+
// delayed transitions. This way it's possible to capture at least the
|
|
1802
|
+
// final state of an element.
|
|
1803
|
+
document.addEventListener('transitionend', this.onTransitionEnd_);
|
|
1804
|
+
window.addEventListener('resize', this.refresh);
|
|
1805
|
+
if (mutationObserverSupported) {
|
|
1806
|
+
this.mutationsObserver_ = new MutationObserver(this.refresh);
|
|
1807
|
+
this.mutationsObserver_.observe(document, {
|
|
1808
|
+
attributes: true,
|
|
1809
|
+
childList: true,
|
|
1810
|
+
characterData: true,
|
|
1811
|
+
subtree: true
|
|
1812
|
+
});
|
|
1813
|
+
}
|
|
1814
|
+
else {
|
|
1815
|
+
document.addEventListener('DOMSubtreeModified', this.refresh);
|
|
1816
|
+
this.mutationEventsAdded_ = true;
|
|
1817
|
+
}
|
|
1818
|
+
this.connected_ = true;
|
|
1819
|
+
};
|
|
1820
|
+
/**
|
|
1821
|
+
* Removes DOM listeners.
|
|
1822
|
+
*
|
|
1823
|
+
* @private
|
|
1824
|
+
* @returns {void}
|
|
1825
|
+
*/
|
|
1826
|
+
ResizeObserverController.prototype.disconnect_ = function () {
|
|
1827
|
+
// Do nothing if running in a non-browser environment or if listeners
|
|
1828
|
+
// have been already removed.
|
|
1829
|
+
if (!isBrowser || !this.connected_) {
|
|
1830
|
+
return;
|
|
1831
|
+
}
|
|
1832
|
+
document.removeEventListener('transitionend', this.onTransitionEnd_);
|
|
1833
|
+
window.removeEventListener('resize', this.refresh);
|
|
1834
|
+
if (this.mutationsObserver_) {
|
|
1835
|
+
this.mutationsObserver_.disconnect();
|
|
1836
|
+
}
|
|
1837
|
+
if (this.mutationEventsAdded_) {
|
|
1838
|
+
document.removeEventListener('DOMSubtreeModified', this.refresh);
|
|
1839
|
+
}
|
|
1840
|
+
this.mutationsObserver_ = null;
|
|
1841
|
+
this.mutationEventsAdded_ = false;
|
|
1842
|
+
this.connected_ = false;
|
|
1843
|
+
};
|
|
1844
|
+
/**
|
|
1845
|
+
* "Transitionend" event handler.
|
|
1846
|
+
*
|
|
1847
|
+
* @private
|
|
1848
|
+
* @param {TransitionEvent} event
|
|
1849
|
+
* @returns {void}
|
|
1850
|
+
*/
|
|
1851
|
+
ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {
|
|
1852
|
+
var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;
|
|
1853
|
+
// Detect whether transition may affect dimensions of an element.
|
|
1854
|
+
var isReflowProperty = transitionKeys.some(function (key) {
|
|
1855
|
+
return !!~propertyName.indexOf(key);
|
|
1856
|
+
});
|
|
1857
|
+
if (isReflowProperty) {
|
|
1858
|
+
this.refresh();
|
|
1859
|
+
}
|
|
1860
|
+
};
|
|
1861
|
+
/**
|
|
1862
|
+
* Returns instance of the ResizeObserverController.
|
|
1863
|
+
*
|
|
1864
|
+
* @returns {ResizeObserverController}
|
|
1865
|
+
*/
|
|
1866
|
+
ResizeObserverController.getInstance = function () {
|
|
1867
|
+
if (!this.instance_) {
|
|
1868
|
+
this.instance_ = new ResizeObserverController();
|
|
1869
|
+
}
|
|
1870
|
+
return this.instance_;
|
|
1871
|
+
};
|
|
1872
|
+
/**
|
|
1873
|
+
* Holds reference to the controller's instance.
|
|
1874
|
+
*
|
|
1875
|
+
* @private {ResizeObserverController}
|
|
1876
|
+
*/
|
|
1877
|
+
ResizeObserverController.instance_ = null;
|
|
1878
|
+
return ResizeObserverController;
|
|
1879
|
+
}());
|
|
1880
|
+
|
|
1881
|
+
/**
|
|
1882
|
+
* Defines non-writable/enumerable properties of the provided target object.
|
|
1883
|
+
*
|
|
1884
|
+
* @param {Object} target - Object for which to define properties.
|
|
1885
|
+
* @param {Object} props - Properties to be defined.
|
|
1886
|
+
* @returns {Object} Target object.
|
|
1887
|
+
*/
|
|
1888
|
+
var defineConfigurable = (function (target, props) {
|
|
1889
|
+
for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {
|
|
1890
|
+
var key = _a[_i];
|
|
1891
|
+
Object.defineProperty(target, key, {
|
|
1892
|
+
value: props[key],
|
|
1893
|
+
enumerable: false,
|
|
1894
|
+
writable: false,
|
|
1895
|
+
configurable: true
|
|
1896
|
+
});
|
|
1897
|
+
}
|
|
1898
|
+
return target;
|
|
1899
|
+
});
|
|
1900
|
+
|
|
1901
|
+
/**
|
|
1902
|
+
* Returns the global object associated with provided element.
|
|
1903
|
+
*
|
|
1904
|
+
* @param {Object} target
|
|
1905
|
+
* @returns {Object}
|
|
1906
|
+
*/
|
|
1907
|
+
var getWindowOf = (function (target) {
|
|
1908
|
+
// Assume that the element is an instance of Node, which means that it
|
|
1909
|
+
// has the "ownerDocument" property from which we can retrieve a
|
|
1910
|
+
// corresponding global object.
|
|
1911
|
+
var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;
|
|
1912
|
+
// Return the local global object if it's not possible extract one from
|
|
1913
|
+
// provided element.
|
|
1914
|
+
return ownerGlobal || global$1;
|
|
1915
|
+
});
|
|
1916
|
+
|
|
1917
|
+
// Placeholder of an empty content rectangle.
|
|
1918
|
+
var emptyRect = createRectInit(0, 0, 0, 0);
|
|
1919
|
+
/**
|
|
1920
|
+
* Converts provided string to a number.
|
|
1921
|
+
*
|
|
1922
|
+
* @param {number|string} value
|
|
1923
|
+
* @returns {number}
|
|
1924
|
+
*/
|
|
1925
|
+
function toFloat(value) {
|
|
1926
|
+
return parseFloat(value) || 0;
|
|
1927
|
+
}
|
|
1928
|
+
/**
|
|
1929
|
+
* Extracts borders size from provided styles.
|
|
1930
|
+
*
|
|
1931
|
+
* @param {CSSStyleDeclaration} styles
|
|
1932
|
+
* @param {...string} positions - Borders positions (top, right, ...)
|
|
1933
|
+
* @returns {number}
|
|
1934
|
+
*/
|
|
1935
|
+
function getBordersSize(styles) {
|
|
1936
|
+
var positions = [];
|
|
1937
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
1938
|
+
positions[_i - 1] = arguments[_i];
|
|
1939
|
+
}
|
|
1940
|
+
return positions.reduce(function (size, position) {
|
|
1941
|
+
var value = styles['border-' + position + '-width'];
|
|
1942
|
+
return size + toFloat(value);
|
|
1943
|
+
}, 0);
|
|
1944
|
+
}
|
|
1945
|
+
/**
|
|
1946
|
+
* Extracts paddings sizes from provided styles.
|
|
1947
|
+
*
|
|
1948
|
+
* @param {CSSStyleDeclaration} styles
|
|
1949
|
+
* @returns {Object} Paddings box.
|
|
1950
|
+
*/
|
|
1951
|
+
function getPaddings(styles) {
|
|
1952
|
+
var positions = ['top', 'right', 'bottom', 'left'];
|
|
1953
|
+
var paddings = {};
|
|
1954
|
+
for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {
|
|
1955
|
+
var position = positions_1[_i];
|
|
1956
|
+
var value = styles['padding-' + position];
|
|
1957
|
+
paddings[position] = toFloat(value);
|
|
1958
|
+
}
|
|
1959
|
+
return paddings;
|
|
1960
|
+
}
|
|
1961
|
+
/**
|
|
1962
|
+
* Calculates content rectangle of provided SVG element.
|
|
1963
|
+
*
|
|
1964
|
+
* @param {SVGGraphicsElement} target - Element content rectangle of which needs
|
|
1965
|
+
* to be calculated.
|
|
1966
|
+
* @returns {DOMRectInit}
|
|
1967
|
+
*/
|
|
1968
|
+
function getSVGContentRect(target) {
|
|
1969
|
+
var bbox = target.getBBox();
|
|
1970
|
+
return createRectInit(0, 0, bbox.width, bbox.height);
|
|
1971
|
+
}
|
|
1972
|
+
/**
|
|
1973
|
+
* Calculates content rectangle of provided HTMLElement.
|
|
1974
|
+
*
|
|
1975
|
+
* @param {HTMLElement} target - Element for which to calculate the content rectangle.
|
|
1976
|
+
* @returns {DOMRectInit}
|
|
1977
|
+
*/
|
|
1978
|
+
function getHTMLElementContentRect(target) {
|
|
1979
|
+
// Client width & height properties can't be
|
|
1980
|
+
// used exclusively as they provide rounded values.
|
|
1981
|
+
var clientWidth = target.clientWidth, clientHeight = target.clientHeight;
|
|
1982
|
+
// By this condition we can catch all non-replaced inline, hidden and
|
|
1983
|
+
// detached elements. Though elements with width & height properties less
|
|
1984
|
+
// than 0.5 will be discarded as well.
|
|
1985
|
+
//
|
|
1986
|
+
// Without it we would need to implement separate methods for each of
|
|
1987
|
+
// those cases and it's not possible to perform a precise and performance
|
|
1988
|
+
// effective test for hidden elements. E.g. even jQuery's ':visible' filter
|
|
1989
|
+
// gives wrong results for elements with width & height less than 0.5.
|
|
1990
|
+
if (!clientWidth && !clientHeight) {
|
|
1991
|
+
return emptyRect;
|
|
1992
|
+
}
|
|
1993
|
+
var styles = getWindowOf(target).getComputedStyle(target);
|
|
1994
|
+
var paddings = getPaddings(styles);
|
|
1995
|
+
var horizPad = paddings.left + paddings.right;
|
|
1996
|
+
var vertPad = paddings.top + paddings.bottom;
|
|
1997
|
+
// Computed styles of width & height are being used because they are the
|
|
1998
|
+
// only dimensions available to JS that contain non-rounded values. It could
|
|
1999
|
+
// be possible to utilize the getBoundingClientRect if only it's data wasn't
|
|
2000
|
+
// affected by CSS transformations let alone paddings, borders and scroll bars.
|
|
2001
|
+
var width = toFloat(styles.width), height = toFloat(styles.height);
|
|
2002
|
+
// Width & height include paddings and borders when the 'border-box' box
|
|
2003
|
+
// model is applied (except for IE).
|
|
2004
|
+
if (styles.boxSizing === 'border-box') {
|
|
2005
|
+
// Following conditions are required to handle Internet Explorer which
|
|
2006
|
+
// doesn't include paddings and borders to computed CSS dimensions.
|
|
2007
|
+
//
|
|
2008
|
+
// We can say that if CSS dimensions + paddings are equal to the "client"
|
|
2009
|
+
// properties then it's either IE, and thus we don't need to subtract
|
|
2010
|
+
// anything, or an element merely doesn't have paddings/borders styles.
|
|
2011
|
+
if (Math.round(width + horizPad) !== clientWidth) {
|
|
2012
|
+
width -= getBordersSize(styles, 'left', 'right') + horizPad;
|
|
2013
|
+
}
|
|
2014
|
+
if (Math.round(height + vertPad) !== clientHeight) {
|
|
2015
|
+
height -= getBordersSize(styles, 'top', 'bottom') + vertPad;
|
|
2016
|
+
}
|
|
2017
|
+
}
|
|
2018
|
+
// Following steps can't be applied to the document's root element as its
|
|
2019
|
+
// client[Width/Height] properties represent viewport area of the window.
|
|
2020
|
+
// Besides, it's as well not necessary as the <html> itself neither has
|
|
2021
|
+
// rendered scroll bars nor it can be clipped.
|
|
2022
|
+
if (!isDocumentElement(target)) {
|
|
2023
|
+
// In some browsers (only in Firefox, actually) CSS width & height
|
|
2024
|
+
// include scroll bars size which can be removed at this step as scroll
|
|
2025
|
+
// bars are the only difference between rounded dimensions + paddings
|
|
2026
|
+
// and "client" properties, though that is not always true in Chrome.
|
|
2027
|
+
var vertScrollbar = Math.round(width + horizPad) - clientWidth;
|
|
2028
|
+
var horizScrollbar = Math.round(height + vertPad) - clientHeight;
|
|
2029
|
+
// Chrome has a rather weird rounding of "client" properties.
|
|
2030
|
+
// E.g. for an element with content width of 314.2px it sometimes gives
|
|
2031
|
+
// the client width of 315px and for the width of 314.7px it may give
|
|
2032
|
+
// 314px. And it doesn't happen all the time. So just ignore this delta
|
|
2033
|
+
// as a non-relevant.
|
|
2034
|
+
if (Math.abs(vertScrollbar) !== 1) {
|
|
2035
|
+
width -= vertScrollbar;
|
|
2036
|
+
}
|
|
2037
|
+
if (Math.abs(horizScrollbar) !== 1) {
|
|
2038
|
+
height -= horizScrollbar;
|
|
2039
|
+
}
|
|
2040
|
+
}
|
|
2041
|
+
return createRectInit(paddings.left, paddings.top, width, height);
|
|
2042
|
+
}
|
|
2043
|
+
/**
|
|
2044
|
+
* Checks whether provided element is an instance of the SVGGraphicsElement.
|
|
2045
|
+
*
|
|
2046
|
+
* @param {Element} target - Element to be checked.
|
|
2047
|
+
* @returns {boolean}
|
|
2048
|
+
*/
|
|
2049
|
+
var isSVGGraphicsElement = (function () {
|
|
2050
|
+
// Some browsers, namely IE and Edge, don't have the SVGGraphicsElement
|
|
2051
|
+
// interface.
|
|
2052
|
+
if (typeof SVGGraphicsElement !== 'undefined') {
|
|
2053
|
+
return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };
|
|
2054
|
+
}
|
|
2055
|
+
// If it's so, then check that element is at least an instance of the
|
|
2056
|
+
// SVGElement and that it has the "getBBox" method.
|
|
2057
|
+
// eslint-disable-next-line no-extra-parens
|
|
2058
|
+
return function (target) { return (target instanceof getWindowOf(target).SVGElement &&
|
|
2059
|
+
typeof target.getBBox === 'function'); };
|
|
2060
|
+
})();
|
|
2061
|
+
/**
|
|
2062
|
+
* Checks whether provided element is a document element (<html>).
|
|
2063
|
+
*
|
|
2064
|
+
* @param {Element} target - Element to be checked.
|
|
2065
|
+
* @returns {boolean}
|
|
2066
|
+
*/
|
|
2067
|
+
function isDocumentElement(target) {
|
|
2068
|
+
return target === getWindowOf(target).document.documentElement;
|
|
2069
|
+
}
|
|
2070
|
+
/**
|
|
2071
|
+
* Calculates an appropriate content rectangle for provided html or svg element.
|
|
2072
|
+
*
|
|
2073
|
+
* @param {Element} target - Element content rectangle of which needs to be calculated.
|
|
2074
|
+
* @returns {DOMRectInit}
|
|
2075
|
+
*/
|
|
2076
|
+
function getContentRect(target) {
|
|
2077
|
+
if (!isBrowser) {
|
|
2078
|
+
return emptyRect;
|
|
2079
|
+
}
|
|
2080
|
+
if (isSVGGraphicsElement(target)) {
|
|
2081
|
+
return getSVGContentRect(target);
|
|
2082
|
+
}
|
|
2083
|
+
return getHTMLElementContentRect(target);
|
|
2084
|
+
}
|
|
2085
|
+
/**
|
|
2086
|
+
* Creates rectangle with an interface of the DOMRectReadOnly.
|
|
2087
|
+
* Spec: https://drafts.fxtf.org/geometry/#domrectreadonly
|
|
2088
|
+
*
|
|
2089
|
+
* @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.
|
|
2090
|
+
* @returns {DOMRectReadOnly}
|
|
2091
|
+
*/
|
|
2092
|
+
function createReadOnlyRect(_a) {
|
|
2093
|
+
var x = _a.x, y = _a.y, width = _a.width, height = _a.height;
|
|
2094
|
+
// If DOMRectReadOnly is available use it as a prototype for the rectangle.
|
|
2095
|
+
var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;
|
|
2096
|
+
var rect = Object.create(Constr.prototype);
|
|
2097
|
+
// Rectangle's properties are not writable and non-enumerable.
|
|
2098
|
+
defineConfigurable(rect, {
|
|
2099
|
+
x: x, y: y, width: width, height: height,
|
|
2100
|
+
top: y,
|
|
2101
|
+
right: x + width,
|
|
2102
|
+
bottom: height + y,
|
|
2103
|
+
left: x
|
|
2104
|
+
});
|
|
2105
|
+
return rect;
|
|
2106
|
+
}
|
|
2107
|
+
/**
|
|
2108
|
+
* Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.
|
|
2109
|
+
* Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit
|
|
2110
|
+
*
|
|
2111
|
+
* @param {number} x - X coordinate.
|
|
2112
|
+
* @param {number} y - Y coordinate.
|
|
2113
|
+
* @param {number} width - Rectangle's width.
|
|
2114
|
+
* @param {number} height - Rectangle's height.
|
|
2115
|
+
* @returns {DOMRectInit}
|
|
2116
|
+
*/
|
|
2117
|
+
function createRectInit(x, y, width, height) {
|
|
2118
|
+
return { x: x, y: y, width: width, height: height };
|
|
2119
|
+
}
|
|
2120
|
+
|
|
2121
|
+
/**
|
|
2122
|
+
* Class that is responsible for computations of the content rectangle of
|
|
2123
|
+
* provided DOM element and for keeping track of it's changes.
|
|
2124
|
+
*/
|
|
2125
|
+
var ResizeObservation = /** @class */ (function () {
|
|
2126
|
+
/**
|
|
2127
|
+
* Creates an instance of ResizeObservation.
|
|
2128
|
+
*
|
|
2129
|
+
* @param {Element} target - Element to be observed.
|
|
2130
|
+
*/
|
|
2131
|
+
function ResizeObservation(target) {
|
|
2132
|
+
/**
|
|
2133
|
+
* Broadcasted width of content rectangle.
|
|
2134
|
+
*
|
|
2135
|
+
* @type {number}
|
|
2136
|
+
*/
|
|
2137
|
+
this.broadcastWidth = 0;
|
|
2138
|
+
/**
|
|
2139
|
+
* Broadcasted height of content rectangle.
|
|
2140
|
+
*
|
|
2141
|
+
* @type {number}
|
|
2142
|
+
*/
|
|
2143
|
+
this.broadcastHeight = 0;
|
|
2144
|
+
/**
|
|
2145
|
+
* Reference to the last observed content rectangle.
|
|
2146
|
+
*
|
|
2147
|
+
* @private {DOMRectInit}
|
|
2148
|
+
*/
|
|
2149
|
+
this.contentRect_ = createRectInit(0, 0, 0, 0);
|
|
2150
|
+
this.target = target;
|
|
2151
|
+
}
|
|
2152
|
+
/**
|
|
2153
|
+
* Updates content rectangle and tells whether it's width or height properties
|
|
2154
|
+
* have changed since the last broadcast.
|
|
2155
|
+
*
|
|
2156
|
+
* @returns {boolean}
|
|
2157
|
+
*/
|
|
2158
|
+
ResizeObservation.prototype.isActive = function () {
|
|
2159
|
+
var rect = getContentRect(this.target);
|
|
2160
|
+
this.contentRect_ = rect;
|
|
2161
|
+
return (rect.width !== this.broadcastWidth ||
|
|
2162
|
+
rect.height !== this.broadcastHeight);
|
|
2163
|
+
};
|
|
2164
|
+
/**
|
|
2165
|
+
* Updates 'broadcastWidth' and 'broadcastHeight' properties with a data
|
|
2166
|
+
* from the corresponding properties of the last observed content rectangle.
|
|
2167
|
+
*
|
|
2168
|
+
* @returns {DOMRectInit} Last observed content rectangle.
|
|
2169
|
+
*/
|
|
2170
|
+
ResizeObservation.prototype.broadcastRect = function () {
|
|
2171
|
+
var rect = this.contentRect_;
|
|
2172
|
+
this.broadcastWidth = rect.width;
|
|
2173
|
+
this.broadcastHeight = rect.height;
|
|
2174
|
+
return rect;
|
|
2175
|
+
};
|
|
2176
|
+
return ResizeObservation;
|
|
2177
|
+
}());
|
|
2178
|
+
|
|
2179
|
+
var ResizeObserverEntry = /** @class */ (function () {
|
|
2180
|
+
/**
|
|
2181
|
+
* Creates an instance of ResizeObserverEntry.
|
|
2182
|
+
*
|
|
2183
|
+
* @param {Element} target - Element that is being observed.
|
|
2184
|
+
* @param {DOMRectInit} rectInit - Data of the element's content rectangle.
|
|
2185
|
+
*/
|
|
2186
|
+
function ResizeObserverEntry(target, rectInit) {
|
|
2187
|
+
var contentRect = createReadOnlyRect(rectInit);
|
|
2188
|
+
// According to the specification following properties are not writable
|
|
2189
|
+
// and are also not enumerable in the native implementation.
|
|
2190
|
+
//
|
|
2191
|
+
// Property accessors are not being used as they'd require to define a
|
|
2192
|
+
// private WeakMap storage which may cause memory leaks in browsers that
|
|
2193
|
+
// don't support this type of collections.
|
|
2194
|
+
defineConfigurable(this, { target: target, contentRect: contentRect });
|
|
2195
|
+
}
|
|
2196
|
+
return ResizeObserverEntry;
|
|
2197
|
+
}());
|
|
2198
|
+
|
|
2199
|
+
var ResizeObserverSPI = /** @class */ (function () {
|
|
2200
|
+
/**
|
|
2201
|
+
* Creates a new instance of ResizeObserver.
|
|
2202
|
+
*
|
|
2203
|
+
* @param {ResizeObserverCallback} callback - Callback function that is invoked
|
|
2204
|
+
* when one of the observed elements changes it's content dimensions.
|
|
2205
|
+
* @param {ResizeObserverController} controller - Controller instance which
|
|
2206
|
+
* is responsible for the updates of observer.
|
|
2207
|
+
* @param {ResizeObserver} callbackCtx - Reference to the public
|
|
2208
|
+
* ResizeObserver instance which will be passed to callback function.
|
|
2209
|
+
*/
|
|
2210
|
+
function ResizeObserverSPI(callback, controller, callbackCtx) {
|
|
2211
|
+
/**
|
|
2212
|
+
* Collection of resize observations that have detected changes in dimensions
|
|
2213
|
+
* of elements.
|
|
2214
|
+
*
|
|
2215
|
+
* @private {Array<ResizeObservation>}
|
|
2216
|
+
*/
|
|
2217
|
+
this.activeObservations_ = [];
|
|
2218
|
+
/**
|
|
2219
|
+
* Registry of the ResizeObservation instances.
|
|
2220
|
+
*
|
|
2221
|
+
* @private {Map<Element, ResizeObservation>}
|
|
2222
|
+
*/
|
|
2223
|
+
this.observations_ = new MapShim();
|
|
2224
|
+
if (typeof callback !== 'function') {
|
|
2225
|
+
throw new TypeError('The callback provided as parameter 1 is not a function.');
|
|
2226
|
+
}
|
|
2227
|
+
this.callback_ = callback;
|
|
2228
|
+
this.controller_ = controller;
|
|
2229
|
+
this.callbackCtx_ = callbackCtx;
|
|
2230
|
+
}
|
|
2231
|
+
/**
|
|
2232
|
+
* Starts observing provided element.
|
|
2233
|
+
*
|
|
2234
|
+
* @param {Element} target - Element to be observed.
|
|
2235
|
+
* @returns {void}
|
|
2236
|
+
*/
|
|
2237
|
+
ResizeObserverSPI.prototype.observe = function (target) {
|
|
2238
|
+
if (!arguments.length) {
|
|
2239
|
+
throw new TypeError('1 argument required, but only 0 present.');
|
|
2240
|
+
}
|
|
2241
|
+
// Do nothing if current environment doesn't have the Element interface.
|
|
2242
|
+
if (typeof Element === 'undefined' || !(Element instanceof Object)) {
|
|
2243
|
+
return;
|
|
2244
|
+
}
|
|
2245
|
+
if (!(target instanceof getWindowOf(target).Element)) {
|
|
2246
|
+
throw new TypeError('parameter 1 is not of type "Element".');
|
|
2247
|
+
}
|
|
2248
|
+
var observations = this.observations_;
|
|
2249
|
+
// Do nothing if element is already being observed.
|
|
2250
|
+
if (observations.has(target)) {
|
|
2251
|
+
return;
|
|
2252
|
+
}
|
|
2253
|
+
observations.set(target, new ResizeObservation(target));
|
|
2254
|
+
this.controller_.addObserver(this);
|
|
2255
|
+
// Force the update of observations.
|
|
2256
|
+
this.controller_.refresh();
|
|
2257
|
+
};
|
|
2258
|
+
/**
|
|
2259
|
+
* Stops observing provided element.
|
|
2260
|
+
*
|
|
2261
|
+
* @param {Element} target - Element to stop observing.
|
|
2262
|
+
* @returns {void}
|
|
2263
|
+
*/
|
|
2264
|
+
ResizeObserverSPI.prototype.unobserve = function (target) {
|
|
2265
|
+
if (!arguments.length) {
|
|
2266
|
+
throw new TypeError('1 argument required, but only 0 present.');
|
|
2267
|
+
}
|
|
2268
|
+
// Do nothing if current environment doesn't have the Element interface.
|
|
2269
|
+
if (typeof Element === 'undefined' || !(Element instanceof Object)) {
|
|
2270
|
+
return;
|
|
2271
|
+
}
|
|
2272
|
+
if (!(target instanceof getWindowOf(target).Element)) {
|
|
2273
|
+
throw new TypeError('parameter 1 is not of type "Element".');
|
|
2274
|
+
}
|
|
2275
|
+
var observations = this.observations_;
|
|
2276
|
+
// Do nothing if element is not being observed.
|
|
2277
|
+
if (!observations.has(target)) {
|
|
2278
|
+
return;
|
|
2279
|
+
}
|
|
2280
|
+
observations.delete(target);
|
|
2281
|
+
if (!observations.size) {
|
|
2282
|
+
this.controller_.removeObserver(this);
|
|
2283
|
+
}
|
|
2284
|
+
};
|
|
2285
|
+
/**
|
|
2286
|
+
* Stops observing all elements.
|
|
2287
|
+
*
|
|
2288
|
+
* @returns {void}
|
|
2289
|
+
*/
|
|
2290
|
+
ResizeObserverSPI.prototype.disconnect = function () {
|
|
2291
|
+
this.clearActive();
|
|
2292
|
+
this.observations_.clear();
|
|
2293
|
+
this.controller_.removeObserver(this);
|
|
2294
|
+
};
|
|
2295
|
+
/**
|
|
2296
|
+
* Collects observation instances the associated element of which has changed
|
|
2297
|
+
* it's content rectangle.
|
|
2298
|
+
*
|
|
2299
|
+
* @returns {void}
|
|
2300
|
+
*/
|
|
2301
|
+
ResizeObserverSPI.prototype.gatherActive = function () {
|
|
2302
|
+
var _this = this;
|
|
2303
|
+
this.clearActive();
|
|
2304
|
+
this.observations_.forEach(function (observation) {
|
|
2305
|
+
if (observation.isActive()) {
|
|
2306
|
+
_this.activeObservations_.push(observation);
|
|
2307
|
+
}
|
|
2308
|
+
});
|
|
2309
|
+
};
|
|
2310
|
+
/**
|
|
2311
|
+
* Invokes initial callback function with a list of ResizeObserverEntry
|
|
2312
|
+
* instances collected from active resize observations.
|
|
2313
|
+
*
|
|
2314
|
+
* @returns {void}
|
|
2315
|
+
*/
|
|
2316
|
+
ResizeObserverSPI.prototype.broadcastActive = function () {
|
|
2317
|
+
// Do nothing if observer doesn't have active observations.
|
|
2318
|
+
if (!this.hasActive()) {
|
|
2319
|
+
return;
|
|
2320
|
+
}
|
|
2321
|
+
var ctx = this.callbackCtx_;
|
|
2322
|
+
// Create ResizeObserverEntry instance for every active observation.
|
|
2323
|
+
var entries = this.activeObservations_.map(function (observation) {
|
|
2324
|
+
return new ResizeObserverEntry(observation.target, observation.broadcastRect());
|
|
2325
|
+
});
|
|
2326
|
+
this.callback_.call(ctx, entries, ctx);
|
|
2327
|
+
this.clearActive();
|
|
2328
|
+
};
|
|
2329
|
+
/**
|
|
2330
|
+
* Clears the collection of active observations.
|
|
2331
|
+
*
|
|
2332
|
+
* @returns {void}
|
|
2333
|
+
*/
|
|
2334
|
+
ResizeObserverSPI.prototype.clearActive = function () {
|
|
2335
|
+
this.activeObservations_.splice(0);
|
|
2336
|
+
};
|
|
2337
|
+
/**
|
|
2338
|
+
* Tells whether observer has active observations.
|
|
2339
|
+
*
|
|
2340
|
+
* @returns {boolean}
|
|
2341
|
+
*/
|
|
2342
|
+
ResizeObserverSPI.prototype.hasActive = function () {
|
|
2343
|
+
return this.activeObservations_.length > 0;
|
|
2344
|
+
};
|
|
2345
|
+
return ResizeObserverSPI;
|
|
2346
|
+
}());
|
|
2347
|
+
|
|
2348
|
+
// Registry of internal observers. If WeakMap is not available use current shim
|
|
2349
|
+
// for the Map collection as it has all required methods and because WeakMap
|
|
2350
|
+
// can't be fully polyfilled anyway.
|
|
2351
|
+
var observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();
|
|
2352
|
+
/**
|
|
2353
|
+
* ResizeObserver API. Encapsulates the ResizeObserver SPI implementation
|
|
2354
|
+
* exposing only those methods and properties that are defined in the spec.
|
|
2355
|
+
*/
|
|
2356
|
+
var ResizeObserver = /** @class */ (function () {
|
|
2357
|
+
/**
|
|
2358
|
+
* Creates a new instance of ResizeObserver.
|
|
2359
|
+
*
|
|
2360
|
+
* @param {ResizeObserverCallback} callback - Callback that is invoked when
|
|
2361
|
+
* dimensions of the observed elements change.
|
|
2362
|
+
*/
|
|
2363
|
+
function ResizeObserver(callback) {
|
|
2364
|
+
if (!(this instanceof ResizeObserver)) {
|
|
2365
|
+
throw new TypeError('Cannot call a class as a function.');
|
|
2366
|
+
}
|
|
2367
|
+
if (!arguments.length) {
|
|
2368
|
+
throw new TypeError('1 argument required, but only 0 present.');
|
|
2369
|
+
}
|
|
2370
|
+
var controller = ResizeObserverController.getInstance();
|
|
2371
|
+
var observer = new ResizeObserverSPI(callback, controller, this);
|
|
2372
|
+
observers.set(this, observer);
|
|
2373
|
+
}
|
|
2374
|
+
return ResizeObserver;
|
|
2375
|
+
}());
|
|
2376
|
+
// Expose public methods of ResizeObserver.
|
|
2377
|
+
[
|
|
2378
|
+
'observe',
|
|
2379
|
+
'unobserve',
|
|
2380
|
+
'disconnect'
|
|
2381
|
+
].forEach(function (method) {
|
|
2382
|
+
ResizeObserver.prototype[method] = function () {
|
|
2383
|
+
var _a;
|
|
2384
|
+
return (_a = observers.get(this))[method].apply(_a, arguments);
|
|
2385
|
+
};
|
|
2386
|
+
});
|
|
2387
|
+
|
|
2388
|
+
var index = (function () {
|
|
2389
|
+
// Export existing implementation if available.
|
|
2390
|
+
if (typeof global$1.ResizeObserver !== 'undefined') {
|
|
2391
|
+
return global$1.ResizeObserver;
|
|
2392
|
+
}
|
|
2393
|
+
return ResizeObserver;
|
|
2394
|
+
})();
|
|
2395
|
+
|
|
2396
|
+
/* harmony default export */ __webpack_exports__["a"] = (index);
|
|
2397
|
+
|
|
2398
|
+
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(29)))
|
|
2399
|
+
|
|
2400
|
+
/***/ }),
|
|
2401
|
+
/* 23 */,
|
|
2402
|
+
/* 24 */,
|
|
2403
|
+
/* 25 */,
|
|
2404
|
+
/* 26 */
|
|
2405
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
2406
|
+
|
|
2407
|
+
"use strict";
|
|
2408
|
+
// ESM COMPAT FLAG
|
|
2409
|
+
__webpack_require__.r(__webpack_exports__);
|
|
2410
|
+
|
|
2411
|
+
// EXTERNAL MODULE: ./src/utils/resize-event.js
|
|
2412
|
+
var resize_event = __webpack_require__(14);
|
|
2413
|
+
|
|
2414
|
+
// EXTERNAL MODULE: ./src/utils/scrollbar-width.js
|
|
2415
|
+
var scrollbar_width = __webpack_require__(8);
|
|
2416
|
+
|
|
2417
|
+
// EXTERNAL MODULE: ./src/utils/util.js
|
|
2418
|
+
var util = __webpack_require__(3);
|
|
2419
|
+
|
|
2420
|
+
// EXTERNAL MODULE: ./src/utils/dom.js
|
|
2421
|
+
var dom = __webpack_require__(1);
|
|
2422
|
+
|
|
2423
|
+
// CONCATENATED MODULE: ./packages/scrollbar/src/util.js
|
|
2424
|
+
var BAR_MAP = {
|
|
2425
|
+
vertical: {
|
|
2426
|
+
offset: 'offsetHeight',
|
|
2427
|
+
scroll: 'scrollTop',
|
|
2428
|
+
scrollSize: 'scrollHeight',
|
|
2429
|
+
size: 'height',
|
|
2430
|
+
key: 'vertical',
|
|
2431
|
+
axis: 'Y',
|
|
2432
|
+
client: 'clientY',
|
|
2433
|
+
direction: 'top'
|
|
2434
|
+
},
|
|
2435
|
+
horizontal: {
|
|
2436
|
+
offset: 'offsetWidth',
|
|
2437
|
+
scroll: 'scrollLeft',
|
|
2438
|
+
scrollSize: 'scrollWidth',
|
|
2439
|
+
size: 'width',
|
|
2440
|
+
key: 'horizontal',
|
|
2441
|
+
axis: 'X',
|
|
2442
|
+
client: 'clientX',
|
|
2443
|
+
direction: 'left'
|
|
2444
|
+
}
|
|
2445
|
+
};
|
|
2446
|
+
|
|
2447
|
+
function renderThumbStyle(_ref) {
|
|
2448
|
+
var move = _ref.move,
|
|
2449
|
+
size = _ref.size,
|
|
2450
|
+
bar = _ref.bar;
|
|
2451
|
+
|
|
2452
|
+
var style = {};
|
|
2453
|
+
var translate = 'translate' + bar.axis + '(' + move + '%)';
|
|
2454
|
+
|
|
2455
|
+
style[bar.size] = size;
|
|
2456
|
+
style.transform = translate;
|
|
2457
|
+
style.msTransform = translate;
|
|
2458
|
+
style.webkitTransform = translate;
|
|
2459
|
+
|
|
2460
|
+
return style;
|
|
2461
|
+
};
|
|
2462
|
+
// CONCATENATED MODULE: ./packages/scrollbar/src/bar.js
|
|
2463
|
+
|
|
2464
|
+
|
|
2465
|
+
|
|
2466
|
+
/* istanbul ignore next */
|
|
2467
|
+
/* harmony default export */ var src_bar = ({
|
|
2468
|
+
name: 'Bar',
|
|
2469
|
+
|
|
2470
|
+
props: {
|
|
2471
|
+
vertical: Boolean,
|
|
2472
|
+
size: String,
|
|
2473
|
+
move: Number
|
|
2474
|
+
},
|
|
2475
|
+
|
|
2476
|
+
computed: {
|
|
2477
|
+
bar: function bar() {
|
|
2478
|
+
return BAR_MAP[this.vertical ? 'vertical' : 'horizontal'];
|
|
2479
|
+
},
|
|
2480
|
+
wrap: function wrap() {
|
|
2481
|
+
return this.$parent.wrap;
|
|
2482
|
+
}
|
|
2483
|
+
},
|
|
2484
|
+
|
|
2485
|
+
render: function render(h) {
|
|
2486
|
+
var size = this.size,
|
|
2487
|
+
move = this.move,
|
|
2488
|
+
bar = this.bar;
|
|
2489
|
+
|
|
2490
|
+
|
|
2491
|
+
return h(
|
|
2492
|
+
'div',
|
|
2493
|
+
{
|
|
2494
|
+
'class': ['el-scrollbar__bar', 'is-' + bar.key],
|
|
2495
|
+
on: {
|
|
2496
|
+
'mousedown': this.clickTrackHandler
|
|
2497
|
+
}
|
|
2498
|
+
},
|
|
2499
|
+
[h('div', {
|
|
2500
|
+
ref: 'thumb',
|
|
2501
|
+
'class': 'el-scrollbar__thumb',
|
|
2502
|
+
on: {
|
|
2503
|
+
'mousedown': this.clickThumbHandler
|
|
2504
|
+
},
|
|
2505
|
+
|
|
2506
|
+
style: renderThumbStyle({ size: size, move: move, bar: bar }) })]
|
|
2507
|
+
);
|
|
2508
|
+
},
|
|
2509
|
+
|
|
2510
|
+
|
|
2511
|
+
methods: {
|
|
2512
|
+
clickThumbHandler: function clickThumbHandler(e) {
|
|
2513
|
+
// prevent click event of right button
|
|
2514
|
+
if (e.ctrlKey || e.button === 2) {
|
|
2515
|
+
return;
|
|
2516
|
+
}
|
|
2517
|
+
this.startDrag(e);
|
|
2518
|
+
this[this.bar.axis] = e.currentTarget[this.bar.offset] - (e[this.bar.client] - e.currentTarget.getBoundingClientRect()[this.bar.direction]);
|
|
2519
|
+
},
|
|
2520
|
+
clickTrackHandler: function clickTrackHandler(e) {
|
|
2521
|
+
var offset = Math.abs(e.target.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]);
|
|
2522
|
+
var thumbHalf = this.$refs.thumb[this.bar.offset] / 2;
|
|
2523
|
+
var thumbPositionPercentage = (offset - thumbHalf) * 100 / this.$el[this.bar.offset];
|
|
2524
|
+
|
|
2525
|
+
this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
|
|
2526
|
+
},
|
|
2527
|
+
startDrag: function startDrag(e) {
|
|
2528
|
+
e.stopImmediatePropagation();
|
|
2529
|
+
this.cursorDown = true;
|
|
2530
|
+
|
|
2531
|
+
Object(dom["g" /* on */])(document, 'mousemove', this.mouseMoveDocumentHandler);
|
|
2532
|
+
Object(dom["g" /* on */])(document, 'mouseup', this.mouseUpDocumentHandler);
|
|
2533
|
+
document.onselectstart = function () {
|
|
2534
|
+
return false;
|
|
2535
|
+
};
|
|
2536
|
+
},
|
|
2537
|
+
mouseMoveDocumentHandler: function mouseMoveDocumentHandler(e) {
|
|
2538
|
+
if (this.cursorDown === false) return;
|
|
2539
|
+
var prevPage = this[this.bar.axis];
|
|
2540
|
+
|
|
2541
|
+
if (!prevPage) return;
|
|
2542
|
+
|
|
2543
|
+
var offset = (this.$el.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]) * -1;
|
|
2544
|
+
var thumbClickPosition = this.$refs.thumb[this.bar.offset] - prevPage;
|
|
2545
|
+
var thumbPositionPercentage = (offset - thumbClickPosition) * 100 / this.$el[this.bar.offset];
|
|
2546
|
+
|
|
2547
|
+
this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
|
|
2548
|
+
},
|
|
2549
|
+
mouseUpDocumentHandler: function mouseUpDocumentHandler(e) {
|
|
2550
|
+
this.cursorDown = false;
|
|
2551
|
+
this[this.bar.axis] = 0;
|
|
2552
|
+
Object(dom["f" /* off */])(document, 'mousemove', this.mouseMoveDocumentHandler);
|
|
2553
|
+
document.onselectstart = null;
|
|
2554
|
+
}
|
|
2555
|
+
},
|
|
2556
|
+
|
|
2557
|
+
destroyed: function destroyed() {
|
|
2558
|
+
Object(dom["f" /* off */])(document, 'mouseup', this.mouseUpDocumentHandler);
|
|
2559
|
+
}
|
|
2560
|
+
});
|
|
2561
|
+
// CONCATENATED MODULE: ./packages/scrollbar/src/main.js
|
|
2562
|
+
// reference https://github.com/noeldelgado/gemini-scrollbar/blob/master/index.js
|
|
2563
|
+
|
|
2564
|
+
|
|
2565
|
+
|
|
2566
|
+
|
|
2567
|
+
|
|
2568
|
+
|
|
2569
|
+
/* istanbul ignore next */
|
|
2570
|
+
/* harmony default export */ var main = ({
|
|
2571
|
+
name: 'ElScrollbar',
|
|
2572
|
+
|
|
2573
|
+
components: { Bar: src_bar },
|
|
2574
|
+
|
|
2575
|
+
props: {
|
|
2576
|
+
native: Boolean,
|
|
2577
|
+
wrapStyle: {},
|
|
2578
|
+
wrapClass: {},
|
|
2579
|
+
viewClass: {},
|
|
2580
|
+
viewStyle: {},
|
|
2581
|
+
noresize: Boolean, // 如果 container 尺寸不会发生变化,最好设置它可以优化性能
|
|
2582
|
+
tag: {
|
|
2583
|
+
type: String,
|
|
2584
|
+
default: 'div'
|
|
2585
|
+
}
|
|
2586
|
+
},
|
|
2587
|
+
|
|
2588
|
+
data: function data() {
|
|
2589
|
+
return {
|
|
2590
|
+
sizeWidth: '0',
|
|
2591
|
+
sizeHeight: '0',
|
|
2592
|
+
moveX: 0,
|
|
2593
|
+
moveY: 0
|
|
2594
|
+
};
|
|
2595
|
+
},
|
|
2596
|
+
|
|
2597
|
+
|
|
2598
|
+
computed: {
|
|
2599
|
+
wrap: function wrap() {
|
|
2600
|
+
return this.$refs.wrap;
|
|
2601
|
+
}
|
|
2602
|
+
},
|
|
2603
|
+
|
|
2604
|
+
render: function render(h) {
|
|
2605
|
+
var gutter = Object(scrollbar_width["a" /* default */])();
|
|
2606
|
+
var style = this.wrapStyle;
|
|
2607
|
+
|
|
2608
|
+
if (gutter) {
|
|
2609
|
+
var gutterWith = '-' + gutter + 'px';
|
|
2610
|
+
var gutterStyle = 'margin-bottom: ' + gutterWith + '; margin-right: ' + gutterWith + ';';
|
|
2611
|
+
|
|
2612
|
+
if (Array.isArray(this.wrapStyle)) {
|
|
2613
|
+
style = Object(util["t" /* toObject */])(this.wrapStyle);
|
|
2614
|
+
style.marginRight = style.marginBottom = gutterWith;
|
|
2615
|
+
} else if (typeof this.wrapStyle === 'string') {
|
|
2616
|
+
style += gutterStyle;
|
|
2617
|
+
} else {
|
|
2618
|
+
style = gutterStyle;
|
|
2619
|
+
}
|
|
2620
|
+
}
|
|
2621
|
+
var view = h(this.tag, {
|
|
2622
|
+
class: ['el-scrollbar__view', this.viewClass],
|
|
2623
|
+
style: this.viewStyle,
|
|
2624
|
+
ref: 'resize'
|
|
2625
|
+
}, this.$slots.default);
|
|
2626
|
+
var wrap = h(
|
|
2627
|
+
'div',
|
|
2628
|
+
{
|
|
2629
|
+
ref: 'wrap',
|
|
2630
|
+
style: style,
|
|
2631
|
+
on: {
|
|
2632
|
+
'scroll': this.handleScroll
|
|
2633
|
+
},
|
|
2634
|
+
|
|
2635
|
+
'class': [this.wrapClass, 'el-scrollbar__wrap', gutter ? '' : 'el-scrollbar__wrap--hidden-default'] },
|
|
2636
|
+
[[view]]
|
|
2637
|
+
);
|
|
2638
|
+
var nodes = void 0;
|
|
2639
|
+
|
|
2640
|
+
if (!this.native) {
|
|
2641
|
+
nodes = [wrap, h(src_bar, {
|
|
2642
|
+
attrs: {
|
|
2643
|
+
move: this.moveX,
|
|
2644
|
+
size: this.sizeWidth }
|
|
2645
|
+
}), h(src_bar, {
|
|
2646
|
+
attrs: {
|
|
2647
|
+
vertical: true,
|
|
2648
|
+
move: this.moveY,
|
|
2649
|
+
size: this.sizeHeight }
|
|
2650
|
+
})];
|
|
2651
|
+
} else {
|
|
2652
|
+
nodes = [h(
|
|
2653
|
+
'div',
|
|
2654
|
+
{
|
|
2655
|
+
ref: 'wrap',
|
|
2656
|
+
'class': [this.wrapClass, 'el-scrollbar__wrap'],
|
|
2657
|
+
style: style },
|
|
2658
|
+
[[view]]
|
|
2659
|
+
)];
|
|
2660
|
+
}
|
|
2661
|
+
return h('div', { class: 'el-scrollbar' }, nodes);
|
|
2662
|
+
},
|
|
2663
|
+
|
|
2664
|
+
|
|
2665
|
+
methods: {
|
|
2666
|
+
handleScroll: function handleScroll() {
|
|
2667
|
+
var wrap = this.wrap;
|
|
2668
|
+
|
|
2669
|
+
this.moveY = wrap.scrollTop * 100 / wrap.clientHeight;
|
|
2670
|
+
this.moveX = wrap.scrollLeft * 100 / wrap.clientWidth;
|
|
2671
|
+
},
|
|
2672
|
+
update: function update() {
|
|
2673
|
+
var heightPercentage = void 0,
|
|
2674
|
+
widthPercentage = void 0;
|
|
2675
|
+
var wrap = this.wrap;
|
|
2676
|
+
if (!wrap) return;
|
|
2677
|
+
|
|
2678
|
+
heightPercentage = wrap.clientHeight * 100 / wrap.scrollHeight;
|
|
2679
|
+
widthPercentage = wrap.clientWidth * 100 / wrap.scrollWidth;
|
|
2680
|
+
|
|
2681
|
+
this.sizeHeight = heightPercentage < 100 ? heightPercentage + '%' : '';
|
|
2682
|
+
this.sizeWidth = widthPercentage < 100 ? widthPercentage + '%' : '';
|
|
2683
|
+
}
|
|
2684
|
+
},
|
|
2685
|
+
|
|
2686
|
+
mounted: function mounted() {
|
|
2687
|
+
if (this.native) return;
|
|
2688
|
+
this.$nextTick(this.update);
|
|
2689
|
+
!this.noresize && Object(resize_event["a" /* addResizeListener */])(this.$refs.resize, this.update);
|
|
2690
|
+
},
|
|
2691
|
+
beforeDestroy: function beforeDestroy() {
|
|
2692
|
+
if (this.native) return;
|
|
2693
|
+
!this.noresize && Object(resize_event["b" /* removeResizeListener */])(this.$refs.resize, this.update);
|
|
2694
|
+
}
|
|
2695
|
+
});
|
|
2696
|
+
// CONCATENATED MODULE: ./packages/scrollbar/index.js
|
|
2697
|
+
|
|
2698
|
+
|
|
2699
|
+
/* istanbul ignore next */
|
|
2700
|
+
main.install = function (Vue) {
|
|
2701
|
+
Vue.component(main.name, main);
|
|
2702
|
+
};
|
|
2703
|
+
|
|
2704
|
+
/* harmony default export */ var scrollbar = __webpack_exports__["default"] = (main);
|
|
2705
|
+
|
|
2706
|
+
/***/ }),
|
|
2707
|
+
/* 27 */
|
|
2708
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
2709
|
+
|
|
2710
|
+
"use strict";
|
|
2711
|
+
// ESM COMPAT FLAG
|
|
2712
|
+
__webpack_require__.r(__webpack_exports__);
|
|
2713
|
+
|
|
2714
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--5!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox.vue?vue&type=template&id=7957d3f1
|
|
2715
|
+
var render = function render() {
|
|
2716
|
+
var _vm = this,
|
|
2717
|
+
_c = _vm._self._c
|
|
2718
|
+
return _c(
|
|
2719
|
+
"label",
|
|
2720
|
+
{
|
|
2721
|
+
staticClass: "el-checkbox",
|
|
2722
|
+
class: [
|
|
2723
|
+
_vm.border && _vm.checkboxSize
|
|
2724
|
+
? "el-checkbox--" + _vm.checkboxSize
|
|
2725
|
+
: "",
|
|
2726
|
+
{ "is-disabled": _vm.isDisabled },
|
|
2727
|
+
{ "is-bordered": _vm.border },
|
|
2728
|
+
{ "is-checked": _vm.isChecked },
|
|
2729
|
+
],
|
|
2730
|
+
attrs: { id: _vm.id },
|
|
2731
|
+
},
|
|
2732
|
+
[
|
|
2733
|
+
_c(
|
|
2734
|
+
"span",
|
|
2735
|
+
{
|
|
2736
|
+
staticClass: "el-checkbox__input",
|
|
2737
|
+
class: {
|
|
2738
|
+
"is-disabled": _vm.isDisabled,
|
|
2739
|
+
"is-checked": _vm.isChecked,
|
|
2740
|
+
"is-indeterminate": _vm.indeterminate,
|
|
2741
|
+
"is-focus": _vm.focus,
|
|
2742
|
+
},
|
|
2743
|
+
attrs: {
|
|
2744
|
+
tabindex: _vm.indeterminate ? 0 : false,
|
|
2745
|
+
role: _vm.indeterminate ? "checkbox" : false,
|
|
2746
|
+
"aria-checked": _vm.indeterminate ? "mixed" : false,
|
|
2747
|
+
},
|
|
2748
|
+
},
|
|
2749
|
+
[
|
|
2750
|
+
_c("span", { staticClass: "el-checkbox__inner" }),
|
|
2751
|
+
_vm.trueLabel || _vm.falseLabel
|
|
2752
|
+
? _c("input", {
|
|
2753
|
+
directives: [
|
|
2754
|
+
{
|
|
2755
|
+
name: "model",
|
|
2756
|
+
rawName: "v-model",
|
|
2757
|
+
value: _vm.model,
|
|
2758
|
+
expression: "model",
|
|
2759
|
+
},
|
|
2760
|
+
],
|
|
2761
|
+
staticClass: "el-checkbox__original",
|
|
2762
|
+
attrs: {
|
|
2763
|
+
type: "checkbox",
|
|
2764
|
+
"aria-hidden": _vm.indeterminate ? "true" : "false",
|
|
2765
|
+
name: _vm.name,
|
|
2766
|
+
disabled: _vm.isDisabled,
|
|
2767
|
+
"true-value": _vm.trueLabel,
|
|
2768
|
+
"false-value": _vm.falseLabel,
|
|
2769
|
+
},
|
|
2770
|
+
domProps: {
|
|
2771
|
+
checked: Array.isArray(_vm.model)
|
|
2772
|
+
? _vm._i(_vm.model, null) > -1
|
|
2773
|
+
: _vm._q(_vm.model, _vm.trueLabel),
|
|
2774
|
+
},
|
|
2775
|
+
on: {
|
|
2776
|
+
change: [
|
|
2777
|
+
function ($event) {
|
|
2778
|
+
var $$a = _vm.model,
|
|
2779
|
+
$$el = $event.target,
|
|
2780
|
+
$$c = $$el.checked ? _vm.trueLabel : _vm.falseLabel
|
|
2781
|
+
if (Array.isArray($$a)) {
|
|
2782
|
+
var $$v = null,
|
|
2783
|
+
$$i = _vm._i($$a, $$v)
|
|
2784
|
+
if ($$el.checked) {
|
|
2785
|
+
$$i < 0 && (_vm.model = $$a.concat([$$v]))
|
|
2786
|
+
} else {
|
|
2787
|
+
$$i > -1 &&
|
|
2788
|
+
(_vm.model = $$a
|
|
2789
|
+
.slice(0, $$i)
|
|
2790
|
+
.concat($$a.slice($$i + 1)))
|
|
2791
|
+
}
|
|
2792
|
+
} else {
|
|
2793
|
+
_vm.model = $$c
|
|
2794
|
+
}
|
|
2795
|
+
},
|
|
2796
|
+
_vm.handleChange,
|
|
2797
|
+
],
|
|
2798
|
+
focus: function ($event) {
|
|
2799
|
+
_vm.focus = true
|
|
2800
|
+
},
|
|
2801
|
+
blur: function ($event) {
|
|
2802
|
+
_vm.focus = false
|
|
2803
|
+
},
|
|
2804
|
+
},
|
|
2805
|
+
})
|
|
2806
|
+
: _c("input", {
|
|
2807
|
+
directives: [
|
|
2808
|
+
{
|
|
2809
|
+
name: "model",
|
|
2810
|
+
rawName: "v-model",
|
|
2811
|
+
value: _vm.model,
|
|
2812
|
+
expression: "model",
|
|
2813
|
+
},
|
|
2814
|
+
],
|
|
2815
|
+
staticClass: "el-checkbox__original",
|
|
2816
|
+
attrs: {
|
|
2817
|
+
type: "checkbox",
|
|
2818
|
+
"aria-hidden": _vm.indeterminate ? "true" : "false",
|
|
2819
|
+
disabled: _vm.isDisabled,
|
|
2820
|
+
name: _vm.name,
|
|
2821
|
+
},
|
|
2822
|
+
domProps: {
|
|
2823
|
+
value: _vm.label,
|
|
2824
|
+
checked: Array.isArray(_vm.model)
|
|
2825
|
+
? _vm._i(_vm.model, _vm.label) > -1
|
|
2826
|
+
: _vm.model,
|
|
2827
|
+
},
|
|
2828
|
+
on: {
|
|
2829
|
+
change: [
|
|
2830
|
+
function ($event) {
|
|
2831
|
+
var $$a = _vm.model,
|
|
2832
|
+
$$el = $event.target,
|
|
2833
|
+
$$c = $$el.checked ? true : false
|
|
2834
|
+
if (Array.isArray($$a)) {
|
|
2835
|
+
var $$v = _vm.label,
|
|
2836
|
+
$$i = _vm._i($$a, $$v)
|
|
2837
|
+
if ($$el.checked) {
|
|
2838
|
+
$$i < 0 && (_vm.model = $$a.concat([$$v]))
|
|
2839
|
+
} else {
|
|
2840
|
+
$$i > -1 &&
|
|
2841
|
+
(_vm.model = $$a
|
|
2842
|
+
.slice(0, $$i)
|
|
2843
|
+
.concat($$a.slice($$i + 1)))
|
|
2844
|
+
}
|
|
2845
|
+
} else {
|
|
2846
|
+
_vm.model = $$c
|
|
2847
|
+
}
|
|
2848
|
+
},
|
|
2849
|
+
_vm.handleChange,
|
|
2850
|
+
],
|
|
2851
|
+
focus: function ($event) {
|
|
2852
|
+
_vm.focus = true
|
|
2853
|
+
},
|
|
2854
|
+
blur: function ($event) {
|
|
2855
|
+
_vm.focus = false
|
|
2856
|
+
},
|
|
2857
|
+
},
|
|
2858
|
+
}),
|
|
2859
|
+
]
|
|
2860
|
+
),
|
|
2861
|
+
_vm.$slots.default || _vm.label
|
|
2862
|
+
? _c(
|
|
2863
|
+
"span",
|
|
2864
|
+
{ staticClass: "el-checkbox__label" },
|
|
2865
|
+
[
|
|
2866
|
+
_vm._t("default"),
|
|
2867
|
+
!_vm.$slots.default ? [_vm._v(_vm._s(_vm.label))] : _vm._e(),
|
|
2868
|
+
],
|
|
2869
|
+
2
|
|
2870
|
+
)
|
|
2871
|
+
: _vm._e(),
|
|
2872
|
+
]
|
|
2873
|
+
)
|
|
2874
|
+
}
|
|
2875
|
+
var staticRenderFns = []
|
|
2876
|
+
render._withStripped = true
|
|
2877
|
+
|
|
2878
|
+
|
|
2879
|
+
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue?vue&type=template&id=7957d3f1
|
|
2880
|
+
|
|
2881
|
+
// EXTERNAL MODULE: ./src/mixins/emitter.js
|
|
2882
|
+
var emitter = __webpack_require__(6);
|
|
2883
|
+
|
|
2884
|
+
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox.vue?vue&type=script&lang=js
|
|
2885
|
+
|
|
2886
|
+
|
|
2887
|
+
|
|
2888
|
+
/* harmony default export */ var checkboxvue_type_script_lang_js = ({
|
|
2889
|
+
name: 'ElCheckbox',
|
|
2890
|
+
|
|
2891
|
+
mixins: [emitter["a" /* default */]],
|
|
2892
|
+
|
|
2893
|
+
inject: {
|
|
2894
|
+
elForm: {
|
|
2895
|
+
default: ''
|
|
2896
|
+
},
|
|
2897
|
+
elFormItem: {
|
|
2898
|
+
default: ''
|
|
2899
|
+
}
|
|
2900
|
+
},
|
|
2901
|
+
|
|
2902
|
+
componentName: 'ElCheckbox',
|
|
2903
|
+
|
|
2904
|
+
data: function data() {
|
|
2905
|
+
return {
|
|
2906
|
+
selfModel: false,
|
|
2907
|
+
focus: false,
|
|
2908
|
+
isLimitExceeded: false
|
|
2909
|
+
};
|
|
2910
|
+
},
|
|
2911
|
+
|
|
2912
|
+
|
|
2913
|
+
computed: {
|
|
2914
|
+
model: {
|
|
2915
|
+
get: function get() {
|
|
2916
|
+
return this.isGroup ? this.store : this.value !== undefined ? this.value : this.selfModel;
|
|
2917
|
+
},
|
|
2918
|
+
set: function set(val) {
|
|
2919
|
+
if (this.isGroup) {
|
|
2920
|
+
this.isLimitExceeded = false;
|
|
2921
|
+
this._checkboxGroup.min !== undefined && val.length < this._checkboxGroup.min && (this.isLimitExceeded = true);
|
|
2922
|
+
|
|
2923
|
+
this._checkboxGroup.max !== undefined && val.length > this._checkboxGroup.max && (this.isLimitExceeded = true);
|
|
2924
|
+
|
|
2925
|
+
this.isLimitExceeded === false && this.dispatch('ElCheckboxGroup', 'input', [val]);
|
|
2926
|
+
} else {
|
|
2927
|
+
this.$emit('input', val);
|
|
2928
|
+
this.selfModel = val;
|
|
2929
|
+
}
|
|
2930
|
+
}
|
|
2931
|
+
},
|
|
2932
|
+
|
|
2933
|
+
isChecked: function isChecked() {
|
|
2934
|
+
if ({}.toString.call(this.model) === '[object Boolean]') {
|
|
2935
|
+
return this.model;
|
|
2936
|
+
} else if (Array.isArray(this.model)) {
|
|
2937
|
+
return this.model.indexOf(this.label) > -1;
|
|
2938
|
+
} else if (this.model !== null && this.model !== undefined) {
|
|
2939
|
+
return this.model === this.trueLabel;
|
|
2940
|
+
}
|
|
2941
|
+
},
|
|
2942
|
+
isGroup: function isGroup() {
|
|
2943
|
+
var parent = this.$parent;
|
|
2944
|
+
while (parent) {
|
|
2945
|
+
if (parent.$options.componentName !== 'ElCheckboxGroup') {
|
|
2946
|
+
parent = parent.$parent;
|
|
2947
|
+
} else {
|
|
2948
|
+
this._checkboxGroup = parent;
|
|
2949
|
+
return true;
|
|
2950
|
+
}
|
|
2951
|
+
}
|
|
2952
|
+
return false;
|
|
2953
|
+
},
|
|
2954
|
+
store: function store() {
|
|
2955
|
+
return this._checkboxGroup ? this._checkboxGroup.value : this.value;
|
|
2956
|
+
},
|
|
2957
|
+
|
|
2958
|
+
|
|
2959
|
+
/* used to make the isDisabled judgment under max/min props */
|
|
2960
|
+
isLimitDisabled: function isLimitDisabled() {
|
|
2961
|
+
var _checkboxGroup = this._checkboxGroup,
|
|
2962
|
+
max = _checkboxGroup.max,
|
|
2963
|
+
min = _checkboxGroup.min;
|
|
2964
|
+
|
|
2965
|
+
return !!(max || min) && this.model.length >= max && !this.isChecked || this.model.length <= min && this.isChecked;
|
|
2966
|
+
},
|
|
2967
|
+
isDisabled: function isDisabled() {
|
|
2968
|
+
return this.isGroup ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled || this.isLimitDisabled : this.disabled || (this.elForm || {}).disabled;
|
|
2969
|
+
},
|
|
2970
|
+
_elFormItemSize: function _elFormItemSize() {
|
|
2971
|
+
return (this.elFormItem || {}).elFormItemSize;
|
|
2972
|
+
},
|
|
2973
|
+
checkboxSize: function checkboxSize() {
|
|
2974
|
+
var temCheckboxSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
|
|
2975
|
+
return this.isGroup ? this._checkboxGroup.checkboxGroupSize || temCheckboxSize : temCheckboxSize;
|
|
2976
|
+
}
|
|
2977
|
+
},
|
|
2978
|
+
|
|
2979
|
+
props: {
|
|
2980
|
+
value: {},
|
|
2981
|
+
label: {},
|
|
2982
|
+
indeterminate: Boolean,
|
|
2983
|
+
disabled: Boolean,
|
|
2984
|
+
checked: Boolean,
|
|
2985
|
+
name: String,
|
|
2986
|
+
trueLabel: [String, Number],
|
|
2987
|
+
falseLabel: [String, Number],
|
|
2988
|
+
id: String, /* 当indeterminate为真时,为controls提供相关连的checkbox的id,表明元素间的控制关系*/
|
|
2989
|
+
controls: String, /* 当indeterminate为真时,为controls提供相关连的checkbox的id,表明元素间的控制关系*/
|
|
2990
|
+
border: Boolean,
|
|
2991
|
+
size: String
|
|
2992
|
+
},
|
|
2993
|
+
|
|
2994
|
+
methods: {
|
|
2995
|
+
addToStore: function addToStore() {
|
|
2996
|
+
if (Array.isArray(this.model) && this.model.indexOf(this.label) === -1) {
|
|
2997
|
+
this.model.push(this.label);
|
|
2998
|
+
} else {
|
|
2999
|
+
this.model = this.trueLabel || true;
|
|
3000
|
+
}
|
|
3001
|
+
},
|
|
3002
|
+
handleChange: function handleChange(ev) {
|
|
3003
|
+
var _this = this;
|
|
3004
|
+
|
|
3005
|
+
if (this.isLimitExceeded) return;
|
|
3006
|
+
var value = void 0;
|
|
3007
|
+
if (ev.target.checked) {
|
|
3008
|
+
value = this.trueLabel === undefined ? true : this.trueLabel;
|
|
3009
|
+
} else {
|
|
3010
|
+
value = this.falseLabel === undefined ? false : this.falseLabel;
|
|
3011
|
+
}
|
|
3012
|
+
this.$emit('change', value, ev);
|
|
3013
|
+
this.$nextTick(function () {
|
|
3014
|
+
if (_this.isGroup) {
|
|
3015
|
+
_this.dispatch('ElCheckboxGroup', 'change', [_this._checkboxGroup.value]);
|
|
3016
|
+
}
|
|
3017
|
+
});
|
|
3018
|
+
}
|
|
3019
|
+
},
|
|
89
3020
|
|
|
90
|
-
|
|
91
|
-
|
|
3021
|
+
created: function created() {
|
|
3022
|
+
this.checked && this.addToStore();
|
|
3023
|
+
},
|
|
3024
|
+
mounted: function mounted() {
|
|
3025
|
+
// 为indeterminate元素 添加aria-controls 属性
|
|
3026
|
+
if (this.indeterminate) {
|
|
3027
|
+
this.$el.setAttribute('aria-controls', this.controls);
|
|
3028
|
+
}
|
|
3029
|
+
},
|
|
92
3030
|
|
|
93
|
-
"use strict";
|
|
94
|
-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
|
|
95
|
-
/* globals __VUE_SSR_CONTEXT__ */
|
|
96
3031
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
3032
|
+
watch: {
|
|
3033
|
+
value: function value(_value) {
|
|
3034
|
+
this.dispatch('ElFormItem', 'el.form.change', _value);
|
|
3035
|
+
}
|
|
3036
|
+
}
|
|
3037
|
+
});
|
|
3038
|
+
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue?vue&type=script&lang=js
|
|
3039
|
+
/* harmony default export */ var src_checkboxvue_type_script_lang_js = (checkboxvue_type_script_lang_js);
|
|
3040
|
+
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
|
|
3041
|
+
var componentNormalizer = __webpack_require__(2);
|
|
100
3042
|
|
|
101
|
-
|
|
102
|
-
|
|
3043
|
+
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue
|
|
3044
|
+
|
|
3045
|
+
|
|
3046
|
+
|
|
3047
|
+
|
|
3048
|
+
|
|
3049
|
+
/* normalize component */
|
|
3050
|
+
|
|
3051
|
+
var component = Object(componentNormalizer["a" /* default */])(
|
|
3052
|
+
src_checkboxvue_type_script_lang_js,
|
|
103
3053
|
render,
|
|
104
3054
|
staticRenderFns,
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
)
|
|
111
|
-
// Vue.extend constructor export interop
|
|
112
|
-
var options =
|
|
113
|
-
typeof scriptExports === 'function' ? scriptExports.options : scriptExports
|
|
3055
|
+
false,
|
|
3056
|
+
null,
|
|
3057
|
+
null,
|
|
3058
|
+
null
|
|
3059
|
+
|
|
3060
|
+
)
|
|
114
3061
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
options.render = render
|
|
118
|
-
options.staticRenderFns = staticRenderFns
|
|
119
|
-
options._compiled = true
|
|
120
|
-
}
|
|
3062
|
+
/* harmony default export */ var src_checkbox = (component.exports);
|
|
3063
|
+
// CONCATENATED MODULE: ./packages/checkbox/index.js
|
|
121
3064
|
|
|
122
|
-
// functional template
|
|
123
|
-
if (functionalTemplate) {
|
|
124
|
-
options.functional = true
|
|
125
|
-
}
|
|
126
3065
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
3066
|
+
/* istanbul ignore next */
|
|
3067
|
+
src_checkbox.install = function (Vue) {
|
|
3068
|
+
Vue.component(src_checkbox.name, src_checkbox);
|
|
3069
|
+
};
|
|
131
3070
|
|
|
132
|
-
|
|
133
|
-
if (moduleIdentifier) {
|
|
134
|
-
// server build
|
|
135
|
-
hook = function (context) {
|
|
136
|
-
// 2.3 injection
|
|
137
|
-
context =
|
|
138
|
-
context || // cached call
|
|
139
|
-
(this.$vnode && this.$vnode.ssrContext) || // stateful
|
|
140
|
-
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
|
|
141
|
-
// 2.2 with runInNewContext: true
|
|
142
|
-
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
|
|
143
|
-
context = __VUE_SSR_CONTEXT__
|
|
144
|
-
}
|
|
145
|
-
// inject component styles
|
|
146
|
-
if (injectStyles) {
|
|
147
|
-
injectStyles.call(this, context)
|
|
148
|
-
}
|
|
149
|
-
// register component module identifier for async chunk inferrence
|
|
150
|
-
if (context && context._registeredComponents) {
|
|
151
|
-
context._registeredComponents.add(moduleIdentifier)
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
// used by ssr in case component is cached and beforeCreate
|
|
155
|
-
// never gets called
|
|
156
|
-
options._ssrRegister = hook
|
|
157
|
-
} else if (injectStyles) {
|
|
158
|
-
hook = shadowMode
|
|
159
|
-
? function () {
|
|
160
|
-
injectStyles.call(
|
|
161
|
-
this,
|
|
162
|
-
(options.functional ? this.parent : this).$root.$options.shadowRoot
|
|
163
|
-
)
|
|
164
|
-
}
|
|
165
|
-
: injectStyles
|
|
166
|
-
}
|
|
3071
|
+
/* harmony default export */ var packages_checkbox = __webpack_exports__["default"] = (src_checkbox);
|
|
167
3072
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
3073
|
+
/***/ }),
|
|
3074
|
+
/* 28 */,
|
|
3075
|
+
/* 29 */
|
|
3076
|
+
/***/ (function(module, exports) {
|
|
3077
|
+
|
|
3078
|
+
var g;
|
|
3079
|
+
|
|
3080
|
+
// This works in non-strict mode
|
|
3081
|
+
g = (function() {
|
|
3082
|
+
return this;
|
|
3083
|
+
})();
|
|
3084
|
+
|
|
3085
|
+
try {
|
|
3086
|
+
// This works if eval is allowed (see CSP)
|
|
3087
|
+
g = g || new Function("return this")();
|
|
3088
|
+
} catch (e) {
|
|
3089
|
+
// This works if the window reference is available
|
|
3090
|
+
if (typeof window === "object") g = window;
|
|
3091
|
+
}
|
|
3092
|
+
|
|
3093
|
+
// g can still be undefined, but nothing to do about it...
|
|
3094
|
+
// We return undefined, instead of nothing here, so it's
|
|
3095
|
+
// easier to handle this case. if(!global) { ...}
|
|
3096
|
+
|
|
3097
|
+
module.exports = g;
|
|
3098
|
+
|
|
3099
|
+
|
|
3100
|
+
/***/ }),
|
|
3101
|
+
/* 30 */
|
|
3102
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
3103
|
+
|
|
3104
|
+
"use strict";
|
|
3105
|
+
var aria = aria || {};
|
|
3106
|
+
|
|
3107
|
+
aria.Utils = aria.Utils || {};
|
|
3108
|
+
|
|
3109
|
+
/**
|
|
3110
|
+
* @desc Set focus on descendant nodes until the first focusable element is
|
|
3111
|
+
* found.
|
|
3112
|
+
* @param element
|
|
3113
|
+
* DOM node for which to find the first focusable descendant.
|
|
3114
|
+
* @returns
|
|
3115
|
+
* true if a focusable element is found and focus is set.
|
|
3116
|
+
*/
|
|
3117
|
+
aria.Utils.focusFirstDescendant = function (element) {
|
|
3118
|
+
for (var i = 0; i < element.childNodes.length; i++) {
|
|
3119
|
+
var child = element.childNodes[i];
|
|
3120
|
+
if (aria.Utils.attemptFocus(child) || aria.Utils.focusFirstDescendant(child)) {
|
|
3121
|
+
return true;
|
|
3122
|
+
}
|
|
3123
|
+
}
|
|
3124
|
+
return false;
|
|
3125
|
+
};
|
|
3126
|
+
|
|
3127
|
+
/**
|
|
3128
|
+
* @desc Find the last descendant node that is focusable.
|
|
3129
|
+
* @param element
|
|
3130
|
+
* DOM node for which to find the last focusable descendant.
|
|
3131
|
+
* @returns
|
|
3132
|
+
* true if a focusable element is found and focus is set.
|
|
3133
|
+
*/
|
|
3134
|
+
|
|
3135
|
+
aria.Utils.focusLastDescendant = function (element) {
|
|
3136
|
+
for (var i = element.childNodes.length - 1; i >= 0; i--) {
|
|
3137
|
+
var child = element.childNodes[i];
|
|
3138
|
+
if (aria.Utils.attemptFocus(child) || aria.Utils.focusLastDescendant(child)) {
|
|
3139
|
+
return true;
|
|
3140
|
+
}
|
|
3141
|
+
}
|
|
3142
|
+
return false;
|
|
3143
|
+
};
|
|
3144
|
+
|
|
3145
|
+
/**
|
|
3146
|
+
* @desc Set Attempt to set focus on the current node.
|
|
3147
|
+
* @param element
|
|
3148
|
+
* The node to attempt to focus on.
|
|
3149
|
+
* @returns
|
|
3150
|
+
* true if element is focused.
|
|
3151
|
+
*/
|
|
3152
|
+
aria.Utils.attemptFocus = function (element) {
|
|
3153
|
+
if (!aria.Utils.isFocusable(element)) {
|
|
3154
|
+
return false;
|
|
3155
|
+
}
|
|
3156
|
+
aria.Utils.IgnoreUtilFocusChanges = true;
|
|
3157
|
+
try {
|
|
3158
|
+
element.focus();
|
|
3159
|
+
} catch (e) {}
|
|
3160
|
+
aria.Utils.IgnoreUtilFocusChanges = false;
|
|
3161
|
+
return document.activeElement === element;
|
|
3162
|
+
};
|
|
3163
|
+
|
|
3164
|
+
aria.Utils.isFocusable = function (element) {
|
|
3165
|
+
if (element.tabIndex > 0 || element.tabIndex === 0 && element.getAttribute('tabIndex') !== null) {
|
|
3166
|
+
return true;
|
|
3167
|
+
}
|
|
3168
|
+
|
|
3169
|
+
if (element.disabled) {
|
|
3170
|
+
return false;
|
|
3171
|
+
}
|
|
3172
|
+
|
|
3173
|
+
switch (element.nodeName) {
|
|
3174
|
+
case 'A':
|
|
3175
|
+
return !!element.href && element.rel !== 'ignore';
|
|
3176
|
+
case 'INPUT':
|
|
3177
|
+
return element.type !== 'hidden' && element.type !== 'file';
|
|
3178
|
+
case 'BUTTON':
|
|
3179
|
+
case 'SELECT':
|
|
3180
|
+
case 'TEXTAREA':
|
|
3181
|
+
return true;
|
|
3182
|
+
default:
|
|
3183
|
+
return false;
|
|
3184
|
+
}
|
|
3185
|
+
};
|
|
3186
|
+
|
|
3187
|
+
/**
|
|
3188
|
+
* 触发一个事件
|
|
3189
|
+
* mouseenter, mouseleave, mouseover, keyup, change, click 等
|
|
3190
|
+
* @param {Element} elm
|
|
3191
|
+
* @param {String} name
|
|
3192
|
+
* @param {*} opts
|
|
3193
|
+
*/
|
|
3194
|
+
aria.Utils.triggerEvent = function (elm, name) {
|
|
3195
|
+
var eventName = void 0;
|
|
3196
|
+
|
|
3197
|
+
if (/^mouse|click/.test(name)) {
|
|
3198
|
+
eventName = 'MouseEvents';
|
|
3199
|
+
} else if (/^key/.test(name)) {
|
|
3200
|
+
eventName = 'KeyboardEvent';
|
|
3201
|
+
} else {
|
|
3202
|
+
eventName = 'HTMLEvents';
|
|
3203
|
+
}
|
|
3204
|
+
var evt = document.createEvent(eventName);
|
|
3205
|
+
|
|
3206
|
+
for (var _len = arguments.length, opts = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
|
|
3207
|
+
opts[_key - 2] = arguments[_key];
|
|
3208
|
+
}
|
|
3209
|
+
|
|
3210
|
+
evt.initEvent.apply(evt, [name].concat(opts));
|
|
3211
|
+
elm.dispatchEvent ? elm.dispatchEvent(evt) : elm.fireEvent('on' + name, evt);
|
|
3212
|
+
|
|
3213
|
+
return elm;
|
|
3214
|
+
};
|
|
3215
|
+
|
|
3216
|
+
aria.Utils.keys = {
|
|
3217
|
+
tab: 9,
|
|
3218
|
+
enter: 13,
|
|
3219
|
+
space: 32,
|
|
3220
|
+
left: 37,
|
|
3221
|
+
up: 38,
|
|
3222
|
+
right: 39,
|
|
3223
|
+
down: 40,
|
|
3224
|
+
esc: 27
|
|
3225
|
+
};
|
|
3226
|
+
|
|
3227
|
+
/* harmony default export */ __webpack_exports__["a"] = (aria.Utils);
|
|
3228
|
+
|
|
3229
|
+
/***/ }),
|
|
3230
|
+
/* 31 */
|
|
3231
|
+
/***/ (function(module, exports) {
|
|
3232
|
+
|
|
3233
|
+
var nestRE = /^(attrs|props|on|nativeOn|class|style|hook)$/
|
|
3234
|
+
|
|
3235
|
+
module.exports = function mergeJSXProps (objs) {
|
|
3236
|
+
return objs.reduce(function (a, b) {
|
|
3237
|
+
var aa, bb, key, nestedKey, temp
|
|
3238
|
+
for (key in b) {
|
|
3239
|
+
aa = a[key]
|
|
3240
|
+
bb = b[key]
|
|
3241
|
+
if (aa && nestRE.test(key)) {
|
|
3242
|
+
// normalize class
|
|
3243
|
+
if (key === 'class') {
|
|
3244
|
+
if (typeof aa === 'string') {
|
|
3245
|
+
temp = aa
|
|
3246
|
+
a[key] = aa = {}
|
|
3247
|
+
aa[temp] = true
|
|
3248
|
+
}
|
|
3249
|
+
if (typeof bb === 'string') {
|
|
3250
|
+
temp = bb
|
|
3251
|
+
b[key] = bb = {}
|
|
3252
|
+
bb[temp] = true
|
|
3253
|
+
}
|
|
3254
|
+
}
|
|
3255
|
+
if (key === 'on' || key === 'nativeOn' || key === 'hook') {
|
|
3256
|
+
// merge functions
|
|
3257
|
+
for (nestedKey in bb) {
|
|
3258
|
+
aa[nestedKey] = mergeFn(aa[nestedKey], bb[nestedKey])
|
|
3259
|
+
}
|
|
3260
|
+
} else if (Array.isArray(aa)) {
|
|
3261
|
+
a[key] = aa.concat(bb)
|
|
3262
|
+
} else if (Array.isArray(bb)) {
|
|
3263
|
+
a[key] = [aa].concat(bb)
|
|
3264
|
+
} else {
|
|
3265
|
+
for (nestedKey in bb) {
|
|
3266
|
+
aa[nestedKey] = bb[nestedKey]
|
|
3267
|
+
}
|
|
3268
|
+
}
|
|
3269
|
+
} else {
|
|
3270
|
+
a[key] = b[key]
|
|
178
3271
|
}
|
|
179
|
-
} else {
|
|
180
|
-
// inject component registration as beforeCreate hook
|
|
181
|
-
var existing = options.beforeCreate
|
|
182
|
-
options.beforeCreate = existing ? [].concat(existing, hook) : [hook]
|
|
183
3272
|
}
|
|
184
|
-
|
|
3273
|
+
return a
|
|
3274
|
+
}, {})
|
|
3275
|
+
}
|
|
185
3276
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
3277
|
+
function mergeFn (a, b) {
|
|
3278
|
+
return function () {
|
|
3279
|
+
a && a.apply(this, arguments)
|
|
3280
|
+
b && b.apply(this, arguments)
|
|
189
3281
|
}
|
|
190
3282
|
}
|
|
191
3283
|
|
|
192
3284
|
|
|
193
3285
|
/***/ }),
|
|
3286
|
+
/* 32 */,
|
|
3287
|
+
/* 33 */,
|
|
3288
|
+
/* 34 */
|
|
3289
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
194
3290
|
|
|
195
|
-
|
|
196
|
-
|
|
3291
|
+
"use strict";
|
|
3292
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return scrollIntoView; });
|
|
3293
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
|
|
3294
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
197
3295
|
|
|
198
|
-
module.exports = require("element-ui/lib/checkbox");
|
|
199
3296
|
|
|
200
|
-
|
|
3297
|
+
function scrollIntoView(container, selected) {
|
|
3298
|
+
if (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer) return;
|
|
201
3299
|
|
|
202
|
-
|
|
203
|
-
|
|
3300
|
+
if (!selected) {
|
|
3301
|
+
container.scrollTop = 0;
|
|
3302
|
+
return;
|
|
3303
|
+
}
|
|
204
3304
|
|
|
205
|
-
|
|
3305
|
+
var offsetParents = [];
|
|
3306
|
+
var pointer = selected.offsetParent;
|
|
3307
|
+
while (pointer && container !== pointer && container.contains(pointer)) {
|
|
3308
|
+
offsetParents.push(pointer);
|
|
3309
|
+
pointer = pointer.offsetParent;
|
|
3310
|
+
}
|
|
3311
|
+
var top = selected.offsetTop + offsetParents.reduce(function (prev, curr) {
|
|
3312
|
+
return prev + curr.offsetTop;
|
|
3313
|
+
}, 0);
|
|
3314
|
+
var bottom = top + selected.offsetHeight;
|
|
3315
|
+
var viewRectTop = container.scrollTop;
|
|
3316
|
+
var viewRectBottom = viewRectTop + container.clientHeight;
|
|
3317
|
+
|
|
3318
|
+
if (top < viewRectTop) {
|
|
3319
|
+
container.scrollTop = top;
|
|
3320
|
+
} else if (bottom > viewRectBottom) {
|
|
3321
|
+
container.scrollTop = bottom - container.clientHeight;
|
|
3322
|
+
}
|
|
3323
|
+
}
|
|
206
3324
|
|
|
207
3325
|
/***/ }),
|
|
3326
|
+
/* 35 */,
|
|
3327
|
+
/* 36 */,
|
|
3328
|
+
/* 37 */,
|
|
3329
|
+
/* 38 */,
|
|
3330
|
+
/* 39 */,
|
|
3331
|
+
/* 40 */,
|
|
3332
|
+
/* 41 */,
|
|
3333
|
+
/* 42 */,
|
|
3334
|
+
/* 43 */,
|
|
3335
|
+
/* 44 */,
|
|
3336
|
+
/* 45 */,
|
|
3337
|
+
/* 46 */,
|
|
3338
|
+
/* 47 */,
|
|
3339
|
+
/* 48 */,
|
|
3340
|
+
/* 49 */
|
|
3341
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
208
3342
|
|
|
209
|
-
|
|
210
|
-
|
|
3343
|
+
"use strict";
|
|
3344
|
+
// ESM COMPAT FLAG
|
|
3345
|
+
__webpack_require__.r(__webpack_exports__);
|
|
211
3346
|
|
|
212
|
-
|
|
3347
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--5!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio.vue?vue&type=template&id=b84af2ea
|
|
3348
|
+
var render = function render() {
|
|
3349
|
+
var _vm = this,
|
|
3350
|
+
_c = _vm._self._c
|
|
3351
|
+
return _c(
|
|
3352
|
+
"label",
|
|
3353
|
+
{
|
|
3354
|
+
staticClass: "el-radio",
|
|
3355
|
+
class: [
|
|
3356
|
+
_vm.border && _vm.radioSize ? "el-radio--" + _vm.radioSize : "",
|
|
3357
|
+
{ "is-disabled": _vm.isDisabled },
|
|
3358
|
+
{ "is-focus": _vm.focus },
|
|
3359
|
+
{ "is-bordered": _vm.border },
|
|
3360
|
+
{ "is-checked": _vm.model === _vm.label },
|
|
3361
|
+
],
|
|
3362
|
+
attrs: {
|
|
3363
|
+
role: "radio",
|
|
3364
|
+
"aria-checked": _vm.model === _vm.label,
|
|
3365
|
+
"aria-disabled": _vm.isDisabled,
|
|
3366
|
+
tabindex: _vm.tabIndex,
|
|
3367
|
+
},
|
|
3368
|
+
on: {
|
|
3369
|
+
keydown: function ($event) {
|
|
3370
|
+
if (
|
|
3371
|
+
!$event.type.indexOf("key") &&
|
|
3372
|
+
_vm._k($event.keyCode, "space", 32, $event.key, [" ", "Spacebar"])
|
|
3373
|
+
)
|
|
3374
|
+
return null
|
|
3375
|
+
$event.stopPropagation()
|
|
3376
|
+
$event.preventDefault()
|
|
3377
|
+
_vm.model = _vm.isDisabled ? _vm.model : _vm.label
|
|
3378
|
+
},
|
|
3379
|
+
},
|
|
3380
|
+
},
|
|
3381
|
+
[
|
|
3382
|
+
_c(
|
|
3383
|
+
"span",
|
|
3384
|
+
{
|
|
3385
|
+
staticClass: "el-radio__input",
|
|
3386
|
+
class: {
|
|
3387
|
+
"is-disabled": _vm.isDisabled,
|
|
3388
|
+
"is-checked": _vm.model === _vm.label,
|
|
3389
|
+
},
|
|
3390
|
+
},
|
|
3391
|
+
[
|
|
3392
|
+
_c("span", { staticClass: "el-radio__inner" }),
|
|
3393
|
+
_c("input", {
|
|
3394
|
+
directives: [
|
|
3395
|
+
{
|
|
3396
|
+
name: "model",
|
|
3397
|
+
rawName: "v-model",
|
|
3398
|
+
value: _vm.model,
|
|
3399
|
+
expression: "model",
|
|
3400
|
+
},
|
|
3401
|
+
],
|
|
3402
|
+
ref: "radio",
|
|
3403
|
+
staticClass: "el-radio__original",
|
|
3404
|
+
attrs: {
|
|
3405
|
+
type: "radio",
|
|
3406
|
+
"aria-hidden": "true",
|
|
3407
|
+
name: _vm.name,
|
|
3408
|
+
disabled: _vm.isDisabled,
|
|
3409
|
+
tabindex: "-1",
|
|
3410
|
+
autocomplete: "off",
|
|
3411
|
+
},
|
|
3412
|
+
domProps: {
|
|
3413
|
+
value: _vm.label,
|
|
3414
|
+
checked: _vm._q(_vm.model, _vm.label),
|
|
3415
|
+
},
|
|
3416
|
+
on: {
|
|
3417
|
+
focus: function ($event) {
|
|
3418
|
+
_vm.focus = true
|
|
3419
|
+
},
|
|
3420
|
+
blur: function ($event) {
|
|
3421
|
+
_vm.focus = false
|
|
3422
|
+
},
|
|
3423
|
+
change: [
|
|
3424
|
+
function ($event) {
|
|
3425
|
+
_vm.model = _vm.label
|
|
3426
|
+
},
|
|
3427
|
+
_vm.handleChange,
|
|
3428
|
+
],
|
|
3429
|
+
},
|
|
3430
|
+
}),
|
|
3431
|
+
]
|
|
3432
|
+
),
|
|
3433
|
+
_c(
|
|
3434
|
+
"span",
|
|
3435
|
+
{
|
|
3436
|
+
staticClass: "el-radio__label",
|
|
3437
|
+
on: {
|
|
3438
|
+
keydown: function ($event) {
|
|
3439
|
+
$event.stopPropagation()
|
|
3440
|
+
},
|
|
3441
|
+
},
|
|
3442
|
+
},
|
|
3443
|
+
[
|
|
3444
|
+
_vm._t("default"),
|
|
3445
|
+
!_vm.$slots.default ? [_vm._v(_vm._s(_vm.label))] : _vm._e(),
|
|
3446
|
+
],
|
|
3447
|
+
2
|
|
3448
|
+
),
|
|
3449
|
+
]
|
|
3450
|
+
)
|
|
3451
|
+
}
|
|
3452
|
+
var staticRenderFns = []
|
|
3453
|
+
render._withStripped = true
|
|
213
3454
|
|
|
214
|
-
/***/ }),
|
|
215
3455
|
|
|
216
|
-
|
|
217
|
-
/***/ (function(module, exports) {
|
|
3456
|
+
// CONCATENATED MODULE: ./packages/radio/src/radio.vue?vue&type=template&id=b84af2ea
|
|
218
3457
|
|
|
219
|
-
|
|
3458
|
+
// EXTERNAL MODULE: ./src/mixins/emitter.js
|
|
3459
|
+
var emitter = __webpack_require__(6);
|
|
220
3460
|
|
|
221
|
-
|
|
3461
|
+
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio.vue?vue&type=script&lang=js
|
|
222
3462
|
|
|
223
|
-
/***/ 3:
|
|
224
|
-
/***/ (function(module, exports) {
|
|
225
3463
|
|
|
226
|
-
module.exports = require("element-ui/lib/utils/util");
|
|
227
3464
|
|
|
228
|
-
|
|
3465
|
+
/* harmony default export */ var radiovue_type_script_lang_js = ({
|
|
3466
|
+
name: 'ElRadio',
|
|
229
3467
|
|
|
230
|
-
|
|
231
|
-
/***/ (function(module, exports) {
|
|
3468
|
+
mixins: [emitter["a" /* default */]],
|
|
232
3469
|
|
|
233
|
-
|
|
3470
|
+
inject: {
|
|
3471
|
+
elForm: {
|
|
3472
|
+
default: ''
|
|
3473
|
+
},
|
|
234
3474
|
|
|
235
|
-
|
|
3475
|
+
elFormItem: {
|
|
3476
|
+
default: ''
|
|
3477
|
+
}
|
|
3478
|
+
},
|
|
236
3479
|
|
|
237
|
-
|
|
238
|
-
/***/ (function(module, exports) {
|
|
3480
|
+
componentName: 'ElRadio',
|
|
239
3481
|
|
|
240
|
-
|
|
3482
|
+
props: {
|
|
3483
|
+
value: {},
|
|
3484
|
+
label: {},
|
|
3485
|
+
disabled: Boolean,
|
|
3486
|
+
name: String,
|
|
3487
|
+
border: Boolean,
|
|
3488
|
+
size: String
|
|
3489
|
+
},
|
|
241
3490
|
|
|
242
|
-
|
|
3491
|
+
data: function data() {
|
|
3492
|
+
return {
|
|
3493
|
+
focus: false
|
|
3494
|
+
};
|
|
3495
|
+
},
|
|
243
3496
|
|
|
244
|
-
|
|
245
|
-
|
|
3497
|
+
computed: {
|
|
3498
|
+
isGroup: function isGroup() {
|
|
3499
|
+
var parent = this.$parent;
|
|
3500
|
+
while (parent) {
|
|
3501
|
+
if (parent.$options.componentName !== 'ElRadioGroup') {
|
|
3502
|
+
parent = parent.$parent;
|
|
3503
|
+
} else {
|
|
3504
|
+
this._radioGroup = parent;
|
|
3505
|
+
return true;
|
|
3506
|
+
}
|
|
3507
|
+
}
|
|
3508
|
+
return false;
|
|
3509
|
+
},
|
|
246
3510
|
|
|
247
|
-
|
|
3511
|
+
model: {
|
|
3512
|
+
get: function get() {
|
|
3513
|
+
return this.isGroup ? this._radioGroup.value : this.value;
|
|
3514
|
+
},
|
|
3515
|
+
set: function set(val) {
|
|
3516
|
+
if (this.isGroup) {
|
|
3517
|
+
this.dispatch('ElRadioGroup', 'input', [val]);
|
|
3518
|
+
} else {
|
|
3519
|
+
this.$emit('input', val);
|
|
3520
|
+
}
|
|
3521
|
+
this.$refs.radio && (this.$refs.radio.checked = this.model === this.label);
|
|
3522
|
+
}
|
|
3523
|
+
},
|
|
3524
|
+
_elFormItemSize: function _elFormItemSize() {
|
|
3525
|
+
return (this.elFormItem || {}).elFormItemSize;
|
|
3526
|
+
},
|
|
3527
|
+
radioSize: function radioSize() {
|
|
3528
|
+
var temRadioSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
|
|
3529
|
+
return this.isGroup ? this._radioGroup.radioGroupSize || temRadioSize : temRadioSize;
|
|
3530
|
+
},
|
|
3531
|
+
isDisabled: function isDisabled() {
|
|
3532
|
+
return this.isGroup ? this._radioGroup.disabled || this.disabled || (this.elForm || {}).disabled : this.disabled || (this.elForm || {}).disabled;
|
|
3533
|
+
},
|
|
3534
|
+
tabIndex: function tabIndex() {
|
|
3535
|
+
return this.isDisabled || this.isGroup && this.model !== this.label ? -1 : 0;
|
|
3536
|
+
}
|
|
3537
|
+
},
|
|
248
3538
|
|
|
249
|
-
|
|
3539
|
+
methods: {
|
|
3540
|
+
handleChange: function handleChange() {
|
|
3541
|
+
var _this = this;
|
|
250
3542
|
|
|
251
|
-
|
|
252
|
-
|
|
3543
|
+
this.$nextTick(function () {
|
|
3544
|
+
_this.$emit('change', _this.model);
|
|
3545
|
+
_this.isGroup && _this.dispatch('ElRadioGroup', 'handleChange', _this.model);
|
|
3546
|
+
});
|
|
3547
|
+
}
|
|
3548
|
+
}
|
|
3549
|
+
});
|
|
3550
|
+
// CONCATENATED MODULE: ./packages/radio/src/radio.vue?vue&type=script&lang=js
|
|
3551
|
+
/* harmony default export */ var src_radiovue_type_script_lang_js = (radiovue_type_script_lang_js);
|
|
3552
|
+
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
|
|
3553
|
+
var componentNormalizer = __webpack_require__(2);
|
|
253
3554
|
|
|
254
|
-
|
|
3555
|
+
// CONCATENATED MODULE: ./packages/radio/src/radio.vue
|
|
255
3556
|
|
|
256
|
-
/***/ }),
|
|
257
3557
|
|
|
258
|
-
|
|
3558
|
+
|
|
3559
|
+
|
|
3560
|
+
|
|
3561
|
+
/* normalize component */
|
|
3562
|
+
|
|
3563
|
+
var component = Object(componentNormalizer["a" /* default */])(
|
|
3564
|
+
src_radiovue_type_script_lang_js,
|
|
3565
|
+
render,
|
|
3566
|
+
staticRenderFns,
|
|
3567
|
+
false,
|
|
3568
|
+
null,
|
|
3569
|
+
null,
|
|
3570
|
+
null
|
|
3571
|
+
|
|
3572
|
+
)
|
|
3573
|
+
|
|
3574
|
+
/* harmony default export */ var src_radio = (component.exports);
|
|
3575
|
+
// CONCATENATED MODULE: ./packages/radio/index.js
|
|
3576
|
+
|
|
3577
|
+
|
|
3578
|
+
/* istanbul ignore next */
|
|
3579
|
+
src_radio.install = function (Vue) {
|
|
3580
|
+
Vue.component(src_radio.name, src_radio);
|
|
3581
|
+
};
|
|
3582
|
+
|
|
3583
|
+
/* harmony default export */ var packages_radio = __webpack_exports__["default"] = (src_radio);
|
|
3584
|
+
|
|
3585
|
+
/***/ }),
|
|
3586
|
+
/* 50 */,
|
|
3587
|
+
/* 51 */,
|
|
3588
|
+
/* 52 */,
|
|
3589
|
+
/* 53 */,
|
|
3590
|
+
/* 54 */,
|
|
3591
|
+
/* 55 */,
|
|
3592
|
+
/* 56 */,
|
|
3593
|
+
/* 57 */,
|
|
3594
|
+
/* 58 */,
|
|
3595
|
+
/* 59 */,
|
|
3596
|
+
/* 60 */,
|
|
3597
|
+
/* 61 */,
|
|
3598
|
+
/* 62 */,
|
|
3599
|
+
/* 63 */,
|
|
3600
|
+
/* 64 */,
|
|
3601
|
+
/* 65 */,
|
|
3602
|
+
/* 66 */,
|
|
3603
|
+
/* 67 */,
|
|
3604
|
+
/* 68 */,
|
|
3605
|
+
/* 69 */,
|
|
3606
|
+
/* 70 */
|
|
259
3607
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
260
3608
|
|
|
261
3609
|
"use strict";
|
|
@@ -289,24 +3637,21 @@ cascader_panelvue_type_template_id_188dd00c_render._withStripped = true
|
|
|
289
3637
|
|
|
290
3638
|
// CONCATENATED MODULE: ./packages/cascader-panel/src/cascader-panel.vue?vue&type=template&id=188dd00c
|
|
291
3639
|
|
|
292
|
-
// EXTERNAL MODULE:
|
|
293
|
-
var
|
|
294
|
-
var
|
|
3640
|
+
// EXTERNAL MODULE: ./node_modules/babel-helper-vue-jsx-merge-props/index.js
|
|
3641
|
+
var babel_helper_vue_jsx_merge_props = __webpack_require__(31);
|
|
3642
|
+
var babel_helper_vue_jsx_merge_props_default = /*#__PURE__*/__webpack_require__.n(babel_helper_vue_jsx_merge_props);
|
|
295
3643
|
|
|
296
|
-
// EXTERNAL MODULE:
|
|
297
|
-
var
|
|
298
|
-
var scrollbar_default = /*#__PURE__*/__webpack_require__.n(scrollbar_);
|
|
3644
|
+
// EXTERNAL MODULE: ./packages/scrollbar/index.js + 3 modules
|
|
3645
|
+
var scrollbar = __webpack_require__(26);
|
|
299
3646
|
|
|
300
|
-
// EXTERNAL MODULE:
|
|
301
|
-
var
|
|
302
|
-
var checkbox_default = /*#__PURE__*/__webpack_require__.n(checkbox_);
|
|
3647
|
+
// EXTERNAL MODULE: ./packages/checkbox/index.js + 5 modules
|
|
3648
|
+
var packages_checkbox = __webpack_require__(27);
|
|
303
3649
|
|
|
304
|
-
// EXTERNAL MODULE:
|
|
305
|
-
var
|
|
306
|
-
var radio_default = /*#__PURE__*/__webpack_require__.n(radio_);
|
|
3650
|
+
// EXTERNAL MODULE: ./packages/radio/index.js + 5 modules
|
|
3651
|
+
var packages_radio = __webpack_require__(49);
|
|
307
3652
|
|
|
308
|
-
// EXTERNAL MODULE:
|
|
309
|
-
var
|
|
3653
|
+
// EXTERNAL MODULE: ./src/utils/util.js
|
|
3654
|
+
var util = __webpack_require__(3);
|
|
310
3655
|
|
|
311
3656
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cascader-panel/src/cascader-node.vue?vue&type=script&lang=js
|
|
312
3657
|
|
|
@@ -323,8 +3668,8 @@ var stopPropagation = function stopPropagation(e) {
|
|
|
323
3668
|
inject: ['panel'],
|
|
324
3669
|
|
|
325
3670
|
components: {
|
|
326
|
-
ElCheckbox:
|
|
327
|
-
ElRadio:
|
|
3671
|
+
ElCheckbox: packages_checkbox["default"],
|
|
3672
|
+
ElRadio: packages_radio["default"]
|
|
328
3673
|
},
|
|
329
3674
|
|
|
330
3675
|
props: {
|
|
@@ -462,7 +3807,7 @@ var stopPropagation = function stopPropagation(e) {
|
|
|
462
3807
|
events.nativeOn.click = stopPropagation;
|
|
463
3808
|
}
|
|
464
3809
|
|
|
465
|
-
return h('el-checkbox',
|
|
3810
|
+
return h('el-checkbox', babel_helper_vue_jsx_merge_props_default()([{
|
|
466
3811
|
attrs: {
|
|
467
3812
|
value: node.checked,
|
|
468
3813
|
indeterminate: node.indeterminate,
|
|
@@ -477,7 +3822,7 @@ var stopPropagation = function stopPropagation(e) {
|
|
|
477
3822
|
|
|
478
3823
|
// to keep same reference if value cause radio's checked state is calculated by reference comparision;
|
|
479
3824
|
|
|
480
|
-
if (Object(
|
|
3825
|
+
if (Object(util["m" /* isEqual */])(value, checkedValue)) {
|
|
481
3826
|
value = checkedValue;
|
|
482
3827
|
}
|
|
483
3828
|
|
|
@@ -558,7 +3903,7 @@ var stopPropagation = function stopPropagation(e) {
|
|
|
558
3903
|
|
|
559
3904
|
return h(
|
|
560
3905
|
'li',
|
|
561
|
-
|
|
3906
|
+
babel_helper_vue_jsx_merge_props_default()([{
|
|
562
3907
|
attrs: {
|
|
563
3908
|
role: 'menuitem',
|
|
564
3909
|
id: nodeId,
|
|
@@ -581,7 +3926,7 @@ var stopPropagation = function stopPropagation(e) {
|
|
|
581
3926
|
// CONCATENATED MODULE: ./packages/cascader-panel/src/cascader-node.vue?vue&type=script&lang=js
|
|
582
3927
|
/* harmony default export */ var src_cascader_nodevue_type_script_lang_js = (cascader_nodevue_type_script_lang_js);
|
|
583
3928
|
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
|
|
584
|
-
var componentNormalizer = __webpack_require__(
|
|
3929
|
+
var componentNormalizer = __webpack_require__(2);
|
|
585
3930
|
|
|
586
3931
|
// CONCATENATED MODULE: ./packages/cascader-panel/src/cascader-node.vue
|
|
587
3932
|
var cascader_node_render, cascader_node_staticRenderFns
|
|
@@ -603,9 +3948,8 @@ var component = Object(componentNormalizer["a" /* default */])(
|
|
|
603
3948
|
)
|
|
604
3949
|
|
|
605
3950
|
/* harmony default export */ var cascader_node = (component.exports);
|
|
606
|
-
// EXTERNAL MODULE:
|
|
607
|
-
var
|
|
608
|
-
var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
|
|
3951
|
+
// EXTERNAL MODULE: ./src/mixins/locale.js
|
|
3952
|
+
var locale = __webpack_require__(13);
|
|
609
3953
|
|
|
610
3954
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cascader-panel/src/cascader-menu.vue?vue&type=script&lang=js
|
|
611
3955
|
|
|
@@ -618,12 +3962,12 @@ var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
|
|
|
618
3962
|
/* harmony default export */ var cascader_menuvue_type_script_lang_js = ({
|
|
619
3963
|
name: 'ElCascaderMenu',
|
|
620
3964
|
|
|
621
|
-
mixins: [
|
|
3965
|
+
mixins: [locale["a" /* default */]],
|
|
622
3966
|
|
|
623
3967
|
inject: ['panel'],
|
|
624
3968
|
|
|
625
3969
|
components: {
|
|
626
|
-
ElScrollbar:
|
|
3970
|
+
ElScrollbar: scrollbar["default"],
|
|
627
3971
|
CascaderNode: cascader_node
|
|
628
3972
|
},
|
|
629
3973
|
|
|
@@ -639,7 +3983,7 @@ var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
|
|
|
639
3983
|
return {
|
|
640
3984
|
activeNode: null,
|
|
641
3985
|
hoverTimer: null,
|
|
642
|
-
id: Object(
|
|
3986
|
+
id: Object(util["g" /* generateId */])()
|
|
643
3987
|
};
|
|
644
3988
|
},
|
|
645
3989
|
|
|
@@ -710,7 +4054,7 @@ var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
|
|
|
710
4054
|
var nodes = this.nodes.map(function (node, index) {
|
|
711
4055
|
var hasChildren = node.hasChildren;
|
|
712
4056
|
|
|
713
|
-
return h('cascader-node',
|
|
4057
|
+
return h('cascader-node', babel_helper_vue_jsx_merge_props_default()([{
|
|
714
4058
|
key: node.uid,
|
|
715
4059
|
attrs: { node: node,
|
|
716
4060
|
'node-id': menuId + '-' + index,
|
|
@@ -738,7 +4082,7 @@ var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
|
|
|
738
4082
|
|
|
739
4083
|
return h(
|
|
740
4084
|
'el-scrollbar',
|
|
741
|
-
|
|
4085
|
+
babel_helper_vue_jsx_merge_props_default()([{
|
|
742
4086
|
attrs: {
|
|
743
4087
|
tag: 'ul',
|
|
744
4088
|
role: 'menu',
|
|
@@ -777,8 +4121,8 @@ var cascader_menu_component = Object(componentNormalizer["a" /* default */])(
|
|
|
777
4121
|
)
|
|
778
4122
|
|
|
779
4123
|
/* harmony default export */ var cascader_menu = (cascader_menu_component.exports);
|
|
780
|
-
// EXTERNAL MODULE:
|
|
781
|
-
var
|
|
4124
|
+
// EXTERNAL MODULE: ./src/utils/shared.js
|
|
4125
|
+
var shared = __webpack_require__(18);
|
|
782
4126
|
|
|
783
4127
|
// CONCATENATED MODULE: ./packages/cascader-panel/src/node.js
|
|
784
4128
|
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
|
@@ -869,8 +4213,8 @@ var node_Node = function () {
|
|
|
869
4213
|
Node.prototype.isSameNode = function isSameNode(checkedValue) {
|
|
870
4214
|
var value = this.getValueByOption();
|
|
871
4215
|
return this.config.multiple && Array.isArray(checkedValue) ? checkedValue.some(function (val) {
|
|
872
|
-
return Object(
|
|
873
|
-
}) : Object(
|
|
4216
|
+
return Object(util["m" /* isEqual */])(val, value);
|
|
4217
|
+
}) : Object(util["m" /* isEqual */])(checkedValue, value);
|
|
874
4218
|
};
|
|
875
4219
|
|
|
876
4220
|
Node.prototype.broadcast = function broadcast(event) {
|
|
@@ -878,7 +4222,7 @@ var node_Node = function () {
|
|
|
878
4222
|
args[_key - 1] = arguments[_key];
|
|
879
4223
|
}
|
|
880
4224
|
|
|
881
|
-
var handlerName = 'onParent' + Object(
|
|
4225
|
+
var handlerName = 'onParent' + Object(util["d" /* capitalize */])(event);
|
|
882
4226
|
|
|
883
4227
|
this.children.forEach(function (child) {
|
|
884
4228
|
if (child) {
|
|
@@ -892,7 +4236,7 @@ var node_Node = function () {
|
|
|
892
4236
|
Node.prototype.emit = function emit(event) {
|
|
893
4237
|
var parent = this.parent;
|
|
894
4238
|
|
|
895
|
-
var handlerName = 'onChild' + Object(
|
|
4239
|
+
var handlerName = 'onChild' + Object(util["d" /* capitalize */])(event);
|
|
896
4240
|
if (parent) {
|
|
897
4241
|
for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
898
4242
|
args[_key2 - 1] = arguments[_key2];
|
|
@@ -977,7 +4321,7 @@ var node_Node = function () {
|
|
|
977
4321
|
leafKey = _config2.leaf;
|
|
978
4322
|
|
|
979
4323
|
if (lazy) {
|
|
980
|
-
var isLeaf = Object(
|
|
4324
|
+
var isLeaf = Object(shared["a" /* isDef */])(data[leafKey]) ? data[leafKey] : loaded ? !children.length : false;
|
|
981
4325
|
this.hasChildren = !isLeaf;
|
|
982
4326
|
return isLeaf;
|
|
983
4327
|
}
|
|
@@ -1018,7 +4362,7 @@ var store_Store = function () {
|
|
|
1018
4362
|
Store.prototype.initNodes = function initNodes(data) {
|
|
1019
4363
|
var _this = this;
|
|
1020
4364
|
|
|
1021
|
-
data = Object(
|
|
4365
|
+
data = Object(util["e" /* coerceTruthyValueToArray */])(data);
|
|
1022
4366
|
this.nodes = data.map(function (nodeData) {
|
|
1023
4367
|
return new src_node(nodeData, _this.config);
|
|
1024
4368
|
});
|
|
@@ -1036,7 +4380,7 @@ var store_Store = function () {
|
|
|
1036
4380
|
Store.prototype.appendNodes = function appendNodes(nodeDataList, parentNode) {
|
|
1037
4381
|
var _this2 = this;
|
|
1038
4382
|
|
|
1039
|
-
nodeDataList = Object(
|
|
4383
|
+
nodeDataList = Object(util["e" /* coerceTruthyValueToArray */])(nodeDataList);
|
|
1040
4384
|
nodeDataList.forEach(function (nodeData) {
|
|
1041
4385
|
return _this2.appendNode(nodeData, parentNode);
|
|
1042
4386
|
});
|
|
@@ -1055,7 +4399,7 @@ var store_Store = function () {
|
|
|
1055
4399
|
|
|
1056
4400
|
Store.prototype.getNodeByValue = function getNodeByValue(value) {
|
|
1057
4401
|
var nodes = this.getFlattedNodes(false, !this.config.lazy).filter(function (node) {
|
|
1058
|
-
return Object(
|
|
4402
|
+
return Object(util["u" /* valueEquals */])(node.path, value) || node.value === value;
|
|
1059
4403
|
});
|
|
1060
4404
|
return nodes && nodes.length ? nodes[0] : null;
|
|
1061
4405
|
};
|
|
@@ -1064,17 +4408,14 @@ var store_Store = function () {
|
|
|
1064
4408
|
}();
|
|
1065
4409
|
|
|
1066
4410
|
/* harmony default export */ var src_store = (store_Store);
|
|
1067
|
-
// EXTERNAL MODULE:
|
|
1068
|
-
var
|
|
1069
|
-
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
|
|
4411
|
+
// EXTERNAL MODULE: ./src/utils/merge.js
|
|
4412
|
+
var merge = __webpack_require__(7);
|
|
1070
4413
|
|
|
1071
|
-
// EXTERNAL MODULE:
|
|
1072
|
-
var
|
|
1073
|
-
var aria_utils_default = /*#__PURE__*/__webpack_require__.n(aria_utils_);
|
|
4414
|
+
// EXTERNAL MODULE: ./src/utils/aria-utils.js
|
|
4415
|
+
var aria_utils = __webpack_require__(30);
|
|
1074
4416
|
|
|
1075
|
-
// EXTERNAL MODULE:
|
|
1076
|
-
var
|
|
1077
|
-
var scroll_into_view_default = /*#__PURE__*/__webpack_require__.n(scroll_into_view_);
|
|
4417
|
+
// EXTERNAL MODULE: ./src/utils/scroll-into-view.js
|
|
4418
|
+
var scroll_into_view = __webpack_require__(34);
|
|
1078
4419
|
|
|
1079
4420
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cascader-panel/src/cascader-panel.vue?vue&type=script&lang=js
|
|
1080
4421
|
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
|
@@ -1086,7 +4427,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
1086
4427
|
|
|
1087
4428
|
|
|
1088
4429
|
|
|
1089
|
-
var KeyCode =
|
|
4430
|
+
var KeyCode = aria_utils["a" /* default */].keys;
|
|
1090
4431
|
|
|
1091
4432
|
var DefaultProps = {
|
|
1092
4433
|
expandTrigger: 'click', // or hover
|
|
@@ -1094,7 +4435,7 @@ var DefaultProps = {
|
|
|
1094
4435
|
checkStrictly: false, // whether all nodes can be selected
|
|
1095
4436
|
emitPath: true, // wether to emit an array of all levels value in which node is located
|
|
1096
4437
|
lazy: false,
|
|
1097
|
-
lazyLoad:
|
|
4438
|
+
lazyLoad: util["r" /* noop */],
|
|
1098
4439
|
value: 'value',
|
|
1099
4440
|
label: 'label',
|
|
1100
4441
|
children: 'children',
|
|
@@ -1178,7 +4519,7 @@ var checkNode = function checkNode(el) {
|
|
|
1178
4519
|
|
|
1179
4520
|
computed: {
|
|
1180
4521
|
config: function config() {
|
|
1181
|
-
return
|
|
4522
|
+
return Object(merge["a" /* default */])(_extends({}, DefaultProps), this.props || {});
|
|
1182
4523
|
},
|
|
1183
4524
|
multiple: function multiple() {
|
|
1184
4525
|
return this.config.multiple;
|
|
@@ -1211,7 +4552,7 @@ var checkNode = function checkNode(el) {
|
|
|
1211
4552
|
deep: true
|
|
1212
4553
|
},
|
|
1213
4554
|
checkedValue: function checkedValue(val) {
|
|
1214
|
-
if (!Object(
|
|
4555
|
+
if (!Object(util["m" /* isEqual */])(val, this.value)) {
|
|
1215
4556
|
this.checkStrictly && this.calculateCheckedNodePaths();
|
|
1216
4557
|
this.$emit('input', val);
|
|
1217
4558
|
this.$emit('change', val);
|
|
@@ -1231,7 +4572,7 @@ var checkNode = function checkNode(el) {
|
|
|
1231
4572
|
var config = this.config,
|
|
1232
4573
|
options = this.options;
|
|
1233
4574
|
|
|
1234
|
-
if (config.lazy && Object(
|
|
4575
|
+
if (config.lazy && Object(util["l" /* isEmpty */])(options)) {
|
|
1235
4576
|
this.lazyLoad();
|
|
1236
4577
|
} else {
|
|
1237
4578
|
this.store = new src_store(options, config);
|
|
@@ -1243,7 +4584,7 @@ var checkNode = function checkNode(el) {
|
|
|
1243
4584
|
var value = this.value,
|
|
1244
4585
|
checkedValue = this.checkedValue;
|
|
1245
4586
|
|
|
1246
|
-
if (!Object(
|
|
4587
|
+
if (!Object(util["m" /* isEqual */])(value, checkedValue)) {
|
|
1247
4588
|
this.activePath = [];
|
|
1248
4589
|
this.checkedValue = value;
|
|
1249
4590
|
this.syncMenuState();
|
|
@@ -1273,7 +4614,7 @@ var checkNode = function checkNode(el) {
|
|
|
1273
4614
|
var emitPath = config.emitPath;
|
|
1274
4615
|
|
|
1275
4616
|
if (multiple || emitPath) {
|
|
1276
|
-
return Object(
|
|
4617
|
+
return Object(util["l" /* isEmpty */])(val);
|
|
1277
4618
|
}
|
|
1278
4619
|
return false;
|
|
1279
4620
|
},
|
|
@@ -1286,7 +4627,7 @@ var checkNode = function checkNode(el) {
|
|
|
1286
4627
|
checkedValue = this.checkedValue;
|
|
1287
4628
|
|
|
1288
4629
|
|
|
1289
|
-
if (!Object(
|
|
4630
|
+
if (!Object(util["l" /* isEmpty */])(activePath)) {
|
|
1290
4631
|
var nodes = activePath.map(function (node) {
|
|
1291
4632
|
return _this2.getNodeByValue(node.getValue());
|
|
1292
4633
|
});
|
|
@@ -1314,7 +4655,7 @@ var checkNode = function checkNode(el) {
|
|
|
1314
4655
|
var checkedValue = this.checkedValue,
|
|
1315
4656
|
multiple = this.multiple;
|
|
1316
4657
|
|
|
1317
|
-
var checkedValues = multiple ? Object(
|
|
4658
|
+
var checkedValues = multiple ? Object(util["e" /* coerceTruthyValueToArray */])(checkedValue) : [checkedValue];
|
|
1318
4659
|
this.checkedNodePaths = checkedValues.map(function (v) {
|
|
1319
4660
|
var checkedNode = _this4.getNodeByValue(v);
|
|
1320
4661
|
return checkedNode ? checkedNode.pathNodes : [];
|
|
@@ -1381,7 +4722,7 @@ var checkNode = function checkNode(el) {
|
|
|
1381
4722
|
var activePathValues = activePath.map(function (node) {
|
|
1382
4723
|
return node.getValue();
|
|
1383
4724
|
});
|
|
1384
|
-
if (!Object(
|
|
4725
|
+
if (!Object(util["u" /* valueEquals */])(pathValues, activePathValues)) {
|
|
1385
4726
|
this.$emit('active-item-change', pathValues); // Deprecated
|
|
1386
4727
|
this.$emit('expand-change', pathValues);
|
|
1387
4728
|
}
|
|
@@ -1453,7 +4794,7 @@ var checkNode = function checkNode(el) {
|
|
|
1453
4794
|
if (menuElement) {
|
|
1454
4795
|
var container = menuElement.querySelector('.el-scrollbar__wrap');
|
|
1455
4796
|
var activeNode = menuElement.querySelector('.el-cascader-node.is-active') || menuElement.querySelector('.el-cascader-node.in-active-path');
|
|
1456
|
-
|
|
4797
|
+
Object(scroll_into_view["a" /* default */])(container, activeNode);
|
|
1457
4798
|
}
|
|
1458
4799
|
});
|
|
1459
4800
|
},
|
|
@@ -1528,13 +4869,5 @@ cascader_panel.install = function (Vue) {
|
|
|
1528
4869
|
|
|
1529
4870
|
/* harmony default export */ var packages_cascader_panel = __webpack_exports__["default"] = (cascader_panel);
|
|
1530
4871
|
|
|
1531
|
-
/***/ }),
|
|
1532
|
-
|
|
1533
|
-
/***/ 9:
|
|
1534
|
-
/***/ (function(module, exports) {
|
|
1535
|
-
|
|
1536
|
-
module.exports = require("element-ui/lib/utils/merge");
|
|
1537
|
-
|
|
1538
4872
|
/***/ })
|
|
1539
|
-
|
|
1540
|
-
/******/ });
|
|
4873
|
+
/******/ ]);
|