@mdsfe/mds-ui 0.2.0 → 0.2.9-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +178 -0
- package/README.md +9 -9
- package/dist/_mixin/popper.js +1 -0
- package/dist/_util/_popper/dom-helper.js +284 -0
- package/dist/_util/_popper/popper-mixin.js +35 -0
- package/dist/_util/_popper/popper.js +1267 -0
- package/dist/_util/_popper/popup/popup-main.js +224 -0
- package/dist/_util/_popper/popup/popup-manager.js +205 -0
- package/dist/_util/_popper/vue-popper.js +204 -0
- package/dist/_util/popup/index.js +1 -1
- package/dist/_util/tree/node.js +2 -0
- package/dist/_util/tree/tree.js +65 -21
- package/dist/_util/util.js +29 -1
- package/dist/affix.js +18 -18
- package/dist/anchor.js +18 -18
- package/dist/avatar.js +17 -17
- package/dist/backtop.js +19 -19
- package/dist/badge.js +21 -21
- package/dist/bordershadow.js +20 -9
- package/dist/breadcrumb.js +18 -18
- package/dist/button.js +21 -21
- package/dist/card.js +18 -18
- package/dist/carousel.js +76 -76
- package/dist/cascader.js +4980 -0
- package/dist/cascaderpanel.js +645 -603
- package/dist/checkbox.js +23 -23
- package/dist/col.js +14 -14
- package/dist/collapse.js +6 -6
- package/dist/color.js +6 -6
- package/dist/datepicker.js +2487 -266
- package/dist/divider.js +19 -19
- package/dist/drawer.js +787 -37
- package/dist/dropdown.js +150 -104
- package/dist/empty.js +19 -19
- package/dist/font/iconfont.28359fa.ttf +0 -0
- package/dist/font/iconfont.486e3d3.woff2 +0 -0
- package/dist/font/iconfont.675049e.woff +0 -0
- package/dist/font.js +6 -6
- package/dist/form.js +28 -26
- package/dist/icon.js +55 -47
- package/dist/index.js +1 -1
- package/dist/input.js +65 -49
- package/dist/inputnumber.js +59 -39
- package/dist/layout.js +25 -25
- package/dist/list.js +17 -17
- package/dist/loading.js +21 -8
- package/dist/mds-ui.min.css +3 -3
- package/dist/mds-ui.min.js +19183 -15407
- package/dist/menu.js +31 -31
- package/dist/message.js +773 -24
- package/dist/modal.js +1146 -307
- package/dist/notification.js +27 -27
- package/dist/pagination.js +78 -55
- package/dist/popconfirm.js +36 -36
- package/dist/popover.js +2778 -48
- package/dist/progress.js +107 -65
- package/dist/radio.js +56 -54
- package/dist/rate.js +67 -59
- package/dist/row.js +14 -14
- package/dist/select.js +847 -503
- package/dist/slider.js +25 -25
- package/dist/slottable.js +2663 -129
- package/dist/steps.js +18 -18
- package/dist/style/affix.css +224 -2
- package/dist/style/anchor.css +224 -2
- package/dist/style/avatar.css +224 -2
- package/dist/style/badge.css +224 -2
- package/dist/style/bordershadow.css +236 -59
- package/dist/style/breadcrumb.css +224 -2
- package/dist/style/button.css +234 -5
- package/dist/style/card.css +224 -2
- package/dist/style/carousel.css +224 -2
- package/dist/style/cascader.css +214 -0
- package/dist/style/cascaderpanel.css +13 -16
- package/dist/style/checkbox.css +230 -8
- package/dist/style/col.css +225 -3
- package/dist/style/collapse.css +224 -2
- package/dist/style/color.css +224 -2
- package/dist/style/datepicker.css +236 -2
- package/dist/style/divider.css +227 -2
- package/dist/style/drawer.css +224 -2
- package/dist/style/dropdown.css +234 -5
- package/dist/style/empty.css +224 -2
- package/dist/style/font.css +226 -4
- package/dist/style/form.css +224 -2
- package/dist/style/icon.css +226 -3
- package/dist/style/input.css +231 -5
- package/dist/style/inputnumber.css +224 -2
- package/dist/style/layout.css +224 -2
- package/dist/style/list.css +224 -2
- package/dist/style/loading.css +2527 -2
- package/dist/style/menu.css +340 -129
- package/dist/style/message.css +1 -4
- package/dist/style/modal.css +247 -25
- package/dist/style/notification.css +224 -2
- package/dist/style/pagination.css +236 -7
- package/dist/style/popconfirm.css +334 -180
- package/dist/style/popover.css +324 -177
- package/dist/style/progress.css +226 -3
- package/dist/style/radio.css +225 -3
- package/dist/style/rate.css +226 -3
- package/dist/style/row.css +225 -3
- package/dist/style/select.css +240 -12
- package/dist/style/slider.css +224 -2
- package/dist/style/slottable.css +350 -149
- package/dist/style/steps.css +224 -2
- package/dist/style/switch.css +224 -2
- package/dist/style/table.css +458 -314
- package/dist/style/tabs.css +225 -18
- package/dist/style/tag.css +224 -2
- package/dist/style/text.css +224 -2
- package/dist/style/timeline.css +224 -2
- package/dist/style/timepicker.css +231 -6
- package/dist/style/tooltip.css +340 -129
- package/dist/style/tree.css +228 -6
- package/dist/style/typography.css +224 -2
- package/dist/style/upload.css +224 -2
- package/dist/switch.js +20 -20
- package/dist/table.js +3071 -201
- package/dist/tabs.js +24 -22
- package/dist/tag.js +17 -23
- package/dist/text.js +38 -22
- package/dist/timeline.js +14 -14
- package/dist/timepicker.js +3063 -172
- package/dist/tooltip.js +2550 -27
- package/dist/transfer.js +28 -28
- package/dist/transition.js +6 -6
- package/dist/tree.js +316 -171
- package/dist/typography.js +6 -6
- package/dist/upload.js +46 -38
- package/package.json +9 -5
package/dist/modal.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
2
2
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
3
|
-
module.exports = factory(require("./icon"), require("
|
|
3
|
+
module.exports = factory(require("vue"), require("./icon"), require("./transition"), require("./button"));
|
|
4
4
|
else if(typeof define === 'function' && define.amd)
|
|
5
|
-
define(["./icon", "
|
|
5
|
+
define(["vue", "./icon", "./transition", "./button"], factory);
|
|
6
6
|
else {
|
|
7
|
-
var a = typeof exports === 'object' ? factory(require("./icon"), require("
|
|
7
|
+
var a = typeof exports === 'object' ? factory(require("vue"), require("./icon"), require("./transition"), require("./button")) : factory(root["Vue"], root["./icon"], root["./transition"], root["./button"]);
|
|
8
8
|
for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
|
|
9
9
|
}
|
|
10
|
-
})(window, function(
|
|
10
|
+
})(window, function(__WEBPACK_EXTERNAL_MODULE__2__, __WEBPACK_EXTERNAL_MODULE__8__, __WEBPACK_EXTERNAL_MODULE__11__, __WEBPACK_EXTERNAL_MODULE__13__) {
|
|
11
11
|
return /******/ (function(modules) { // webpackBootstrap
|
|
12
12
|
/******/ // The module cache
|
|
13
13
|
/******/ var installedModules = {};
|
|
@@ -91,7 +91,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
|
91
91
|
/******/
|
|
92
92
|
/******/
|
|
93
93
|
/******/ // Load entry module and return exports
|
|
94
|
-
/******/ return __webpack_require__(__webpack_require__.s =
|
|
94
|
+
/******/ return __webpack_require__(__webpack_require__.s = 126);
|
|
95
95
|
/******/ })
|
|
96
96
|
/************************************************************************/
|
|
97
97
|
/******/ ({
|
|
@@ -203,185 +203,303 @@ function normalizeComponent (
|
|
|
203
203
|
|
|
204
204
|
/***/ }),
|
|
205
205
|
|
|
206
|
-
/***/
|
|
206
|
+
/***/ 1:
|
|
207
207
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
208
208
|
|
|
209
209
|
"use strict";
|
|
210
|
-
/*
|
|
211
|
-
/*
|
|
212
|
-
/* harmony export
|
|
213
|
-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "
|
|
214
|
-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "
|
|
215
|
-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "
|
|
216
|
-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return
|
|
217
|
-
/* harmony export
|
|
218
|
-
/* harmony export
|
|
219
|
-
/* unused harmony export
|
|
220
|
-
/* unused harmony export
|
|
221
|
-
/*
|
|
222
|
-
/*
|
|
223
|
-
/* harmony
|
|
224
|
-
/* harmony import */ var
|
|
225
|
-
/* harmony import */ var
|
|
210
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return on; });
|
|
211
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return off; });
|
|
212
|
+
/* unused harmony export once */
|
|
213
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return hasClass; });
|
|
214
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addClass; });
|
|
215
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return removeClass; });
|
|
216
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getStyle; });
|
|
217
|
+
/* unused harmony export setStyle */
|
|
218
|
+
/* unused harmony export isScroll */
|
|
219
|
+
/* unused harmony export getScrollContainer */
|
|
220
|
+
/* unused harmony export isInContainer */
|
|
221
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return merge; });
|
|
222
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getScrollBarWidth; });
|
|
223
|
+
/* harmony import */ var babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
|
|
224
|
+
/* harmony import */ var babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);
|
|
225
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
|
|
226
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_1__);
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
/* eslint-disable */
|
|
231
|
+
var isServer = vue__WEBPACK_IMPORTED_MODULE_1___default.a.prototype.$isServer;
|
|
232
|
+
var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g;
|
|
233
|
+
var MOZ_HACK_REGEXP = /^moz([A-Z])/;
|
|
234
|
+
var ieVersion = isServer ? 0 : Number(document.documentMode);
|
|
226
235
|
|
|
227
|
-
|
|
236
|
+
/* istanbul ignore next */
|
|
237
|
+
var trim = function trim(string) {
|
|
238
|
+
return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, '');
|
|
239
|
+
};
|
|
240
|
+
/* istanbul ignore next */
|
|
241
|
+
var camelCase = function camelCase(name) {
|
|
242
|
+
return name.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
|
|
243
|
+
return offset ? letter.toUpperCase() : letter;
|
|
244
|
+
}).replace(MOZ_HACK_REGEXP, 'Moz$1');
|
|
245
|
+
};
|
|
228
246
|
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
247
|
+
/* istanbul ignore next */
|
|
248
|
+
var on = function () {
|
|
249
|
+
if (!isServer && document.addEventListener) {
|
|
250
|
+
return function (element, event, handler) {
|
|
251
|
+
if (element && event && handler) {
|
|
252
|
+
element.addEventListener(event, handler, false);
|
|
253
|
+
}
|
|
254
|
+
};
|
|
255
|
+
} else {
|
|
256
|
+
return function (element, event, handler) {
|
|
257
|
+
if (element && event && handler) {
|
|
258
|
+
element.attachEvent('on' + event, handler);
|
|
259
|
+
}
|
|
260
|
+
};
|
|
240
261
|
}
|
|
241
|
-
|
|
242
|
-
};
|
|
262
|
+
}();
|
|
243
263
|
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
264
|
+
/* istanbul ignore next */
|
|
265
|
+
var off = function () {
|
|
266
|
+
if (!isServer && document.removeEventListener) {
|
|
267
|
+
return function (element, event, handler) {
|
|
268
|
+
if (element && event) {
|
|
269
|
+
element.removeEventListener(event, handler, false);
|
|
270
|
+
}
|
|
271
|
+
};
|
|
272
|
+
} else {
|
|
273
|
+
return function (element, event, handler) {
|
|
274
|
+
if (element && event) {
|
|
275
|
+
element.detachEvent('on' + event, handler);
|
|
276
|
+
}
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
}();
|
|
280
|
+
|
|
281
|
+
/* istanbul ignore next */
|
|
282
|
+
var once = function once(el, event, fn) {
|
|
283
|
+
var listener = function listener() {
|
|
284
|
+
if (fn) {
|
|
285
|
+
fn.apply(this, arguments);
|
|
286
|
+
}
|
|
287
|
+
off(el, event, listener);
|
|
259
288
|
};
|
|
289
|
+
on(el, event, listener);
|
|
260
290
|
};
|
|
261
291
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
*/
|
|
276
|
-
function
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
292
|
+
/* istanbul ignore next */
|
|
293
|
+
function hasClass(el, cls) {
|
|
294
|
+
if (!el || !cls) return false;
|
|
295
|
+
if (cls.indexOf(' ') !== -1) {
|
|
296
|
+
throw new Error('className should not contain space.');
|
|
297
|
+
}
|
|
298
|
+
if (el.classList) {
|
|
299
|
+
return el.classList.contains(cls);
|
|
300
|
+
} else {
|
|
301
|
+
return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
/* istanbul ignore next */
|
|
306
|
+
function addClass(el, cls) {
|
|
307
|
+
if (!el) return;
|
|
308
|
+
var curClass = el.className;
|
|
309
|
+
var classes = (cls || '').split(' ');
|
|
310
|
+
|
|
311
|
+
for (var i = 0, j = classes.length; i < j; i++) {
|
|
312
|
+
var clsName = classes[i];
|
|
313
|
+
if (!clsName) continue;
|
|
314
|
+
|
|
315
|
+
if (el.classList) {
|
|
316
|
+
el.classList.add(clsName);
|
|
317
|
+
} else if (!hasClass(el, clsName)) {
|
|
318
|
+
curClass += ' ' + clsName;
|
|
286
319
|
}
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
|
|
320
|
+
}
|
|
321
|
+
if (!el.classList) {
|
|
322
|
+
el.setAttribute('class', curClass);
|
|
323
|
+
}
|
|
290
324
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
var
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
325
|
+
|
|
326
|
+
/* istanbul ignore next */
|
|
327
|
+
function removeClass(el, cls) {
|
|
328
|
+
if (!el || !cls) return;
|
|
329
|
+
var classes = cls.split(' ');
|
|
330
|
+
var curClass = ' ' + el.className + ' ';
|
|
331
|
+
|
|
332
|
+
for (var i = 0, j = classes.length; i < j; i++) {
|
|
333
|
+
var clsName = classes[i];
|
|
334
|
+
if (!clsName) continue;
|
|
335
|
+
|
|
336
|
+
if (el.classList) {
|
|
337
|
+
el.classList.remove(clsName);
|
|
338
|
+
} else if (hasClass(el, clsName)) {
|
|
339
|
+
curClass = curClass.replace(' ' + clsName + ' ', ' ');
|
|
340
|
+
}
|
|
306
341
|
}
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
342
|
+
if (!el.classList) {
|
|
343
|
+
el.setAttribute('class', trim(curClass));
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
/* istanbul ignore next */
|
|
348
|
+
var getStyle = ieVersion < 9 ? function (element, styleName) {
|
|
349
|
+
if (isServer) return;
|
|
350
|
+
if (!element || !styleName) return null;
|
|
351
|
+
styleName = camelCase(styleName);
|
|
352
|
+
if (styleName === 'float') {
|
|
353
|
+
styleName = 'styleFloat';
|
|
354
|
+
}
|
|
355
|
+
try {
|
|
356
|
+
switch (styleName) {
|
|
357
|
+
case 'opacity':
|
|
358
|
+
try {
|
|
359
|
+
return element.filters.item('alpha').opacity / 100;
|
|
360
|
+
} catch (e) {
|
|
361
|
+
return 1.0;
|
|
362
|
+
}
|
|
363
|
+
default:
|
|
364
|
+
return element.style[styleName] || element.currentStyle ? element.currentStyle[styleName] : null;
|
|
314
365
|
}
|
|
366
|
+
} catch (e) {
|
|
367
|
+
return element.style[styleName];
|
|
368
|
+
}
|
|
369
|
+
} : function (element, styleName) {
|
|
370
|
+
if (isServer) return;
|
|
371
|
+
if (!element || !styleName) return null;
|
|
372
|
+
styleName = camelCase(styleName);
|
|
373
|
+
if (styleName === 'float') {
|
|
374
|
+
styleName = 'cssFloat';
|
|
375
|
+
}
|
|
376
|
+
try {
|
|
377
|
+
var computed = document.defaultView.getComputedStyle(element, '');
|
|
378
|
+
return element.style[styleName] || computed ? computed[styleName] : null;
|
|
379
|
+
} catch (e) {
|
|
380
|
+
return element.style[styleName];
|
|
315
381
|
}
|
|
316
|
-
return -1;
|
|
317
382
|
};
|
|
318
383
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
};
|
|
384
|
+
/* istanbul ignore next */
|
|
385
|
+
function setStyle(element, styleName, value) {
|
|
386
|
+
if (!element || !styleName) return;
|
|
323
387
|
|
|
324
|
-
|
|
325
|
-
var
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
388
|
+
if ((typeof styleName === 'undefined' ? 'undefined' : babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(styleName)) === 'object') {
|
|
389
|
+
for (var prop in styleName) {
|
|
390
|
+
if (styleName.hasOwnProperty(prop)) {
|
|
391
|
+
setStyle(element, prop, styleName[prop]);
|
|
392
|
+
}
|
|
393
|
+
}
|
|
330
394
|
} else {
|
|
331
|
-
|
|
395
|
+
styleName = camelCase(styleName);
|
|
396
|
+
if (styleName === 'opacity' && ieVersion < 9) {
|
|
397
|
+
element.style.filter = isNaN(value) ? '' : 'alpha(opacity=' + value * 100 + ')';
|
|
398
|
+
} else {
|
|
399
|
+
element.style[styleName] = value;
|
|
400
|
+
}
|
|
332
401
|
}
|
|
333
|
-
}
|
|
402
|
+
}
|
|
334
403
|
|
|
335
|
-
var
|
|
336
|
-
|
|
337
|
-
};
|
|
404
|
+
var isScroll = function isScroll(el, vertical) {
|
|
405
|
+
if (isServer) return;
|
|
338
406
|
|
|
339
|
-
var
|
|
340
|
-
|
|
341
|
-
};
|
|
407
|
+
var determinedDirection = vertical !== null && vertical !== undefined;
|
|
408
|
+
var overflow = determinedDirection ? vertical ? getStyle(el, 'overflow-y') : getStyle(el, 'overflow-x') : getStyle(el, 'overflow');
|
|
342
409
|
|
|
343
|
-
|
|
344
|
-
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i);
|
|
410
|
+
return overflow.match(/(scroll|auto|overlay)/);
|
|
345
411
|
};
|
|
346
412
|
|
|
347
|
-
var
|
|
348
|
-
if (
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
* @return {Number} width
|
|
363
|
-
*/
|
|
364
|
-
/**
|
|
365
|
-
* Get element offset width
|
|
366
|
-
* @param {*} node HTMLDOMElemment
|
|
367
|
-
* @return {Number} width
|
|
368
|
-
*/
|
|
369
|
-
var getOffsetWidth = function getOffsetWidth(node) {
|
|
370
|
-
return node ? node.offsetWidth : 0;
|
|
413
|
+
var getScrollContainer = function getScrollContainer(el, vertical) {
|
|
414
|
+
if (isServer) return;
|
|
415
|
+
|
|
416
|
+
var parent = el;
|
|
417
|
+
while (parent) {
|
|
418
|
+
if ([window, document, document.documentElement].includes(parent)) {
|
|
419
|
+
return window;
|
|
420
|
+
}
|
|
421
|
+
if (isScroll(parent, vertical)) {
|
|
422
|
+
return parent;
|
|
423
|
+
}
|
|
424
|
+
parent = parent.parentNode;
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
return parent;
|
|
371
428
|
};
|
|
372
429
|
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
var
|
|
378
|
-
|
|
379
|
-
|
|
430
|
+
var isInContainer = function isInContainer(el, container) {
|
|
431
|
+
if (isServer || !el || !container) return false;
|
|
432
|
+
|
|
433
|
+
var elRect = el.getBoundingClientRect();
|
|
434
|
+
var containerRect = void 0;
|
|
435
|
+
|
|
436
|
+
if ([window, document, document.documentElement, null, undefined].includes(container)) {
|
|
437
|
+
containerRect = {
|
|
438
|
+
top: 0,
|
|
439
|
+
right: window.innerWidth,
|
|
440
|
+
bottom: window.innerHeight,
|
|
441
|
+
left: 0
|
|
442
|
+
};
|
|
443
|
+
} else {
|
|
444
|
+
containerRect = container.getBoundingClientRect();
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
return elRect.top < containerRect.bottom && elRect.bottom > containerRect.top && elRect.right > containerRect.left && elRect.left < containerRect.right;
|
|
380
448
|
};
|
|
381
449
|
|
|
450
|
+
function merge(target) {
|
|
451
|
+
for (var i = 1, j = arguments.length; i < j; i++) {
|
|
452
|
+
var source = arguments[i] || {};
|
|
453
|
+
for (var prop in source) {
|
|
454
|
+
if (source.hasOwnProperty(prop)) {
|
|
455
|
+
var value = source[prop];
|
|
456
|
+
if (value !== undefined) {
|
|
457
|
+
target[prop] = value;
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
|
|
463
|
+
return target;
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
var scrollBarWidth = void 0;
|
|
467
|
+
function getScrollBarWidth() {
|
|
468
|
+
if (vue__WEBPACK_IMPORTED_MODULE_1___default.a.prototype.$isServer) return 0;
|
|
469
|
+
if (scrollBarWidth !== undefined) return scrollBarWidth;
|
|
470
|
+
|
|
471
|
+
var outer = document.createElement('div');
|
|
472
|
+
outer.className = 'el-scrollbar__wrap';
|
|
473
|
+
outer.style.visibility = 'hidden';
|
|
474
|
+
outer.style.width = '100px';
|
|
475
|
+
outer.style.position = 'absolute';
|
|
476
|
+
outer.style.top = '-9999px';
|
|
477
|
+
document.body.appendChild(outer);
|
|
478
|
+
|
|
479
|
+
var widthNoScroll = outer.offsetWidth;
|
|
480
|
+
outer.style.overflow = 'scroll';
|
|
481
|
+
|
|
482
|
+
var inner = document.createElement('div');
|
|
483
|
+
inner.style.width = '100%';
|
|
484
|
+
outer.appendChild(inner);
|
|
485
|
+
|
|
486
|
+
var widthWithScroll = inner.offsetWidth;
|
|
487
|
+
outer.parentNode.removeChild(outer);
|
|
488
|
+
scrollBarWidth = widthNoScroll - widthWithScroll;
|
|
489
|
+
|
|
490
|
+
return scrollBarWidth;
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
/***/ }),
|
|
494
|
+
|
|
495
|
+
/***/ 11:
|
|
496
|
+
/***/ (function(module, exports) {
|
|
497
|
+
|
|
498
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__11__;
|
|
499
|
+
|
|
382
500
|
/***/ }),
|
|
383
501
|
|
|
384
|
-
/***/
|
|
502
|
+
/***/ 126:
|
|
385
503
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
386
504
|
|
|
387
505
|
"use strict";
|
|
@@ -389,10 +507,10 @@ var isFunction = function isFunction(functionToCheck) {
|
|
|
389
507
|
__webpack_require__.r(__webpack_exports__);
|
|
390
508
|
|
|
391
509
|
// EXTERNAL MODULE: ./components/style/index.less
|
|
392
|
-
var style = __webpack_require__(
|
|
510
|
+
var style = __webpack_require__(139);
|
|
393
511
|
|
|
394
512
|
// EXTERNAL MODULE: ./components/modal/style/index.less
|
|
395
|
-
var modal_style = __webpack_require__(
|
|
513
|
+
var modal_style = __webpack_require__(193);
|
|
396
514
|
|
|
397
515
|
// CONCATENATED MODULE: ./components/modal/style/index.js
|
|
398
516
|
|
|
@@ -403,164 +521,170 @@ var render = function () {
|
|
|
403
521
|
var _vm = this
|
|
404
522
|
var _h = _vm.$createElement
|
|
405
523
|
var _c = _vm._self._c || _h
|
|
406
|
-
return _c(
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
{
|
|
411
|
-
name: "show",
|
|
412
|
-
rawName: "v-show",
|
|
413
|
-
value: _vm.visibility,
|
|
414
|
-
expression: "visibility",
|
|
415
|
-
},
|
|
416
|
-
],
|
|
417
|
-
ref: "root",
|
|
418
|
-
staticClass: "mds-modal-container",
|
|
419
|
-
},
|
|
420
|
-
[
|
|
421
|
-
_c("div", {
|
|
524
|
+
return _c("mds-transition", { attrs: { type: "fade" } }, [
|
|
525
|
+
_c(
|
|
526
|
+
"div",
|
|
527
|
+
{
|
|
422
528
|
directives: [
|
|
423
529
|
{
|
|
424
530
|
name: "show",
|
|
425
531
|
rawName: "v-show",
|
|
426
|
-
value: _vm.
|
|
427
|
-
expression: "
|
|
532
|
+
value: _vm.visibility,
|
|
533
|
+
expression: "visibility",
|
|
428
534
|
},
|
|
429
535
|
],
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
}
|
|
433
|
-
|
|
434
|
-
"div",
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
536
|
+
ref: "root",
|
|
537
|
+
class: ["mds-modal-container", _vm.customClass],
|
|
538
|
+
},
|
|
539
|
+
[
|
|
540
|
+
_c("div", {
|
|
541
|
+
directives: [
|
|
542
|
+
{
|
|
543
|
+
name: "show",
|
|
544
|
+
rawName: "v-show",
|
|
545
|
+
value: _vm.mask,
|
|
546
|
+
expression: "mask",
|
|
547
|
+
},
|
|
548
|
+
],
|
|
549
|
+
class: _vm.prefixClsMask,
|
|
550
|
+
on: { click: _vm.handleCancel },
|
|
551
|
+
}),
|
|
552
|
+
_c(
|
|
553
|
+
"div",
|
|
554
|
+
{
|
|
555
|
+
class: _vm.prefixClsWrap,
|
|
556
|
+
on: {
|
|
557
|
+
click: function (e) {
|
|
558
|
+
return _vm.onMaskClick(e)
|
|
559
|
+
},
|
|
440
560
|
},
|
|
441
561
|
},
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
_c("div", { class: _vm.prefixCls, style: _vm.styles }, [
|
|
445
|
-
_c("div", { class: _vm.prefixClsContent }, [
|
|
562
|
+
[
|
|
563
|
+
_c("div", { class: _vm.prefixCls, style: _vm.styles }, [
|
|
446
564
|
_c(
|
|
447
565
|
"div",
|
|
448
|
-
{
|
|
449
|
-
|
|
566
|
+
{ class: [_vm.prefixClsContent, _vm.customContentClass] },
|
|
567
|
+
[
|
|
568
|
+
_c(
|
|
569
|
+
"div",
|
|
570
|
+
{
|
|
571
|
+
directives: [
|
|
572
|
+
{
|
|
573
|
+
name: "show",
|
|
574
|
+
rawName: "v-show",
|
|
575
|
+
value: _vm.showClose,
|
|
576
|
+
expression: "showClose",
|
|
577
|
+
},
|
|
578
|
+
],
|
|
579
|
+
class: _vm.prefixClsClose,
|
|
580
|
+
on: { click: _vm.handleCancel },
|
|
581
|
+
},
|
|
582
|
+
[
|
|
583
|
+
_vm.modalType === "base"
|
|
584
|
+
? _c("mds-icon", { attrs: { type: "line-close" } })
|
|
585
|
+
: _vm._e(),
|
|
586
|
+
],
|
|
587
|
+
1
|
|
588
|
+
),
|
|
589
|
+
_c(
|
|
590
|
+
"div",
|
|
450
591
|
{
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
592
|
+
class: [
|
|
593
|
+
_vm.prefixClsHeader,
|
|
594
|
+
_vm.modalType === "base" ? _vm.prefixClsBottom : "",
|
|
595
|
+
],
|
|
455
596
|
},
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
597
|
+
[
|
|
598
|
+
_vm.modalType !== "base"
|
|
599
|
+
? _c(
|
|
600
|
+
"div",
|
|
601
|
+
{ class: _vm.prefixClsIcon },
|
|
602
|
+
[
|
|
603
|
+
_c("mds-icon", {
|
|
604
|
+
style: _vm.iconStyle,
|
|
605
|
+
attrs: { type: _vm.iconType },
|
|
606
|
+
}),
|
|
607
|
+
],
|
|
608
|
+
1
|
|
609
|
+
)
|
|
610
|
+
: _vm._e(),
|
|
611
|
+
_vm.renderSlot
|
|
612
|
+
? _c(
|
|
613
|
+
"div",
|
|
614
|
+
{
|
|
615
|
+
class:
|
|
616
|
+
((_obj = {}),
|
|
617
|
+
(_obj["" + _vm.prefixClsTitle] = true),
|
|
618
|
+
(_obj.center = _vm.modalType !== "base"),
|
|
619
|
+
_obj),
|
|
620
|
+
},
|
|
621
|
+
[
|
|
622
|
+
_vm._t("title", [
|
|
623
|
+
_vm._v(
|
|
624
|
+
"\n " +
|
|
625
|
+
_vm._s(_vm.title) +
|
|
626
|
+
"\n "
|
|
627
|
+
),
|
|
628
|
+
]),
|
|
629
|
+
],
|
|
630
|
+
2
|
|
631
|
+
)
|
|
632
|
+
: _vm._e(),
|
|
633
|
+
]
|
|
634
|
+
),
|
|
489
635
|
_vm.renderSlot
|
|
490
636
|
? _c(
|
|
491
637
|
"div",
|
|
492
638
|
{
|
|
493
|
-
class:
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
_obj),
|
|
639
|
+
class: [
|
|
640
|
+
_vm.prefixClsBody,
|
|
641
|
+
_vm.modalType === "base" ? _vm.prefixClsBottom : "",
|
|
642
|
+
],
|
|
498
643
|
},
|
|
499
|
-
[
|
|
500
|
-
_vm._t("title", [
|
|
501
|
-
_vm._v(
|
|
502
|
-
"\n " +
|
|
503
|
-
_vm._s(_vm.title) +
|
|
504
|
-
"\n "
|
|
505
|
-
),
|
|
506
|
-
]),
|
|
507
|
-
],
|
|
644
|
+
[_vm._t("default")],
|
|
508
645
|
2
|
|
509
646
|
)
|
|
510
647
|
: _vm._e(),
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
: _c(
|
|
531
|
-
"div",
|
|
532
|
-
{ class: _vm.prefixClsFooterDefault },
|
|
533
|
-
[
|
|
534
|
-
_vm.modalType !== "success"
|
|
535
|
-
? _c(
|
|
648
|
+
_vm.footer && _vm.renderSlot
|
|
649
|
+
? _c("div", { class: _vm.prefixClsFooter }, [
|
|
650
|
+
_vm.$slots.footer
|
|
651
|
+
? _c("div", [_vm._t("footer")], 2)
|
|
652
|
+
: _c(
|
|
653
|
+
"div",
|
|
654
|
+
{ class: _vm.prefixClsFooterDefault },
|
|
655
|
+
[
|
|
656
|
+
_vm.modalType !== "success"
|
|
657
|
+
? _c(
|
|
658
|
+
"mds-button",
|
|
659
|
+
{
|
|
660
|
+
class: _vm.prefixClsButton,
|
|
661
|
+
on: { click: _vm.handleCancel },
|
|
662
|
+
},
|
|
663
|
+
[_vm._v(_vm._s(_vm.cancelText))]
|
|
664
|
+
)
|
|
665
|
+
: _vm._e(),
|
|
666
|
+
_c(
|
|
536
667
|
"mds-button",
|
|
537
668
|
{
|
|
538
|
-
|
|
539
|
-
|
|
669
|
+
style: _vm.okButtonStyle,
|
|
670
|
+
attrs: { type: "primary" },
|
|
671
|
+
on: { click: _vm.handleOk },
|
|
540
672
|
},
|
|
541
|
-
[_vm._v(_vm._s(_vm.
|
|
542
|
-
)
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
"mds-button",
|
|
546
|
-
{
|
|
547
|
-
style: _vm.okButtonStyle,
|
|
548
|
-
attrs: { type: "primary" },
|
|
549
|
-
on: { click: _vm.handleOk },
|
|
550
|
-
},
|
|
551
|
-
[_vm._v(_vm._s(_vm.okText))]
|
|
673
|
+
[_vm._v(_vm._s(_vm.okText))]
|
|
674
|
+
),
|
|
675
|
+
],
|
|
676
|
+
1
|
|
552
677
|
),
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
: _vm._e(),
|
|
678
|
+
])
|
|
679
|
+
: _vm._e(),
|
|
680
|
+
]
|
|
681
|
+
),
|
|
558
682
|
]),
|
|
559
|
-
]
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
)
|
|
683
|
+
]
|
|
684
|
+
),
|
|
685
|
+
]
|
|
686
|
+
),
|
|
687
|
+
])
|
|
564
688
|
}
|
|
565
689
|
var staticRenderFns = []
|
|
566
690
|
render._withStripped = true
|
|
@@ -569,19 +693,26 @@ render._withStripped = true
|
|
|
569
693
|
// CONCATENATED MODULE: ./components/modal/modal.vue?vue&type=template&id=64c3d160&
|
|
570
694
|
|
|
571
695
|
// EXTERNAL MODULE: external "babel-runtime/core-js/number/is-finite"
|
|
572
|
-
var is_finite_ = __webpack_require__(
|
|
696
|
+
var is_finite_ = __webpack_require__(70);
|
|
573
697
|
var is_finite_default = /*#__PURE__*/__webpack_require__.n(is_finite_);
|
|
574
698
|
|
|
575
699
|
// EXTERNAL MODULE: external "./icon"
|
|
576
|
-
var external_icon_ = __webpack_require__(
|
|
700
|
+
var external_icon_ = __webpack_require__(8);
|
|
577
701
|
var external_icon_default = /*#__PURE__*/__webpack_require__.n(external_icon_);
|
|
578
702
|
|
|
579
703
|
// EXTERNAL MODULE: external "./button"
|
|
580
|
-
var external_button_ = __webpack_require__(
|
|
704
|
+
var external_button_ = __webpack_require__(13);
|
|
581
705
|
var external_button_default = /*#__PURE__*/__webpack_require__.n(external_button_);
|
|
582
706
|
|
|
583
707
|
// EXTERNAL MODULE: ./components/_util/util.js
|
|
584
|
-
var util = __webpack_require__(
|
|
708
|
+
var util = __webpack_require__(15);
|
|
709
|
+
|
|
710
|
+
// EXTERNAL MODULE: ./components/_util/_popper/popup/popup-main.js
|
|
711
|
+
var popup_main = __webpack_require__(14);
|
|
712
|
+
|
|
713
|
+
// EXTERNAL MODULE: external "./transition"
|
|
714
|
+
var external_transition_ = __webpack_require__(11);
|
|
715
|
+
var external_transition_default = /*#__PURE__*/__webpack_require__.n(external_transition_);
|
|
585
716
|
|
|
586
717
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./components/modal/modal.vue?vue&type=script&lang=js&
|
|
587
718
|
|
|
@@ -627,6 +758,43 @@ var util = __webpack_require__(11);
|
|
|
627
758
|
//
|
|
628
759
|
//
|
|
629
760
|
//
|
|
761
|
+
//
|
|
762
|
+
//
|
|
763
|
+
//
|
|
764
|
+
//
|
|
765
|
+
//
|
|
766
|
+
//
|
|
767
|
+
//
|
|
768
|
+
//
|
|
769
|
+
//
|
|
770
|
+
//
|
|
771
|
+
//
|
|
772
|
+
//
|
|
773
|
+
//
|
|
774
|
+
//
|
|
775
|
+
//
|
|
776
|
+
//
|
|
777
|
+
//
|
|
778
|
+
//
|
|
779
|
+
//
|
|
780
|
+
//
|
|
781
|
+
//
|
|
782
|
+
//
|
|
783
|
+
//
|
|
784
|
+
//
|
|
785
|
+
//
|
|
786
|
+
//
|
|
787
|
+
//
|
|
788
|
+
//
|
|
789
|
+
//
|
|
790
|
+
//
|
|
791
|
+
//
|
|
792
|
+
//
|
|
793
|
+
//
|
|
794
|
+
//
|
|
795
|
+
//
|
|
796
|
+
|
|
797
|
+
|
|
630
798
|
|
|
631
799
|
|
|
632
800
|
|
|
@@ -637,8 +805,10 @@ var PREFIXCLS = 'mds-modal';
|
|
|
637
805
|
name: 'MdsModal',
|
|
638
806
|
components: {
|
|
639
807
|
MdsIcon: external_icon_default.a,
|
|
640
|
-
MdsButton: external_button_default.a
|
|
808
|
+
MdsButton: external_button_default.a,
|
|
809
|
+
mdsTransition: external_transition_default.a
|
|
641
810
|
},
|
|
811
|
+
mixins: [popup_main["b" /* default */]],
|
|
642
812
|
props: {
|
|
643
813
|
width: {
|
|
644
814
|
type: [String, Number],
|
|
@@ -692,8 +862,14 @@ var PREFIXCLS = 'mds-modal';
|
|
|
692
862
|
type: Boolean,
|
|
693
863
|
default: true
|
|
694
864
|
},
|
|
865
|
+
customClass: String,
|
|
866
|
+
customContentClass: String,
|
|
695
867
|
destroyOnClose: Boolean,
|
|
696
|
-
beforeClose: Function
|
|
868
|
+
beforeClose: Function,
|
|
869
|
+
disabledScroll: {
|
|
870
|
+
type: Boolean,
|
|
871
|
+
default: true
|
|
872
|
+
}
|
|
697
873
|
},
|
|
698
874
|
data: function data() {
|
|
699
875
|
return {
|
|
@@ -767,6 +943,12 @@ var PREFIXCLS = 'mds-modal';
|
|
|
767
943
|
|
|
768
944
|
watch: {
|
|
769
945
|
visibility: function visibility(newVal, oldVal) {
|
|
946
|
+
if (newVal === oldVal) {
|
|
947
|
+
return;
|
|
948
|
+
}
|
|
949
|
+
if (this.disabledScroll) {
|
|
950
|
+
Object(util["d" /* fixBodyScroll */])(newVal);
|
|
951
|
+
}
|
|
770
952
|
if (newVal) {
|
|
771
953
|
this.renderSlot = newVal;
|
|
772
954
|
} else {
|
|
@@ -785,7 +967,7 @@ var PREFIXCLS = 'mds-modal';
|
|
|
785
967
|
_this.$emit('close');
|
|
786
968
|
_this.$emit('update:visibility', false);
|
|
787
969
|
};
|
|
788
|
-
if (Object(util["
|
|
970
|
+
if (Object(util["g" /* isFunction */])(this.beforeClose)) {
|
|
789
971
|
this.beforeClose(done);
|
|
790
972
|
} else {
|
|
791
973
|
done();
|
|
@@ -798,14 +980,26 @@ var PREFIXCLS = 'mds-modal';
|
|
|
798
980
|
if (e.target === e.currentTarget && this.maskClosable) {
|
|
799
981
|
this.handleCancel();
|
|
800
982
|
}
|
|
983
|
+
},
|
|
984
|
+
initZindex: function initZindex() {
|
|
985
|
+
var _this2 = this;
|
|
986
|
+
|
|
987
|
+
if (this._opening) return;
|
|
988
|
+
if (!this.rendered) {
|
|
989
|
+
this.rendered = true;
|
|
990
|
+
this.$nextTick(function () {
|
|
991
|
+
_this2.open();
|
|
992
|
+
});
|
|
993
|
+
} else {
|
|
994
|
+
this.open();
|
|
995
|
+
}
|
|
801
996
|
}
|
|
802
997
|
},
|
|
803
|
-
|
|
804
|
-
document.body.removeChild(this.$refs.root);
|
|
805
|
-
},
|
|
998
|
+
|
|
806
999
|
mounted: function mounted() {
|
|
807
1000
|
if (this.visibility) {
|
|
808
1001
|
this.renderSlot = true;
|
|
1002
|
+
this.initZindex();
|
|
809
1003
|
}
|
|
810
1004
|
document.body.appendChild(this.$refs.root);
|
|
811
1005
|
}
|
|
@@ -849,45 +1043,690 @@ modal.install = function (Vue) {
|
|
|
849
1043
|
|
|
850
1044
|
/***/ }),
|
|
851
1045
|
|
|
852
|
-
/***/
|
|
1046
|
+
/***/ 13:
|
|
1047
|
+
/***/ (function(module, exports) {
|
|
1048
|
+
|
|
1049
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__13__;
|
|
1050
|
+
|
|
1051
|
+
/***/ }),
|
|
1052
|
+
|
|
1053
|
+
/***/ 139:
|
|
853
1054
|
/***/ (function(module, exports) {
|
|
854
1055
|
|
|
855
1056
|
// removed by extract-text-webpack-plugin
|
|
856
1057
|
|
|
857
1058
|
/***/ }),
|
|
858
1059
|
|
|
859
|
-
/***/
|
|
1060
|
+
/***/ 14:
|
|
1061
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1062
|
+
|
|
1063
|
+
"use strict";
|
|
1064
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
|
|
1065
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
1066
|
+
/* harmony import */ var _dom_helper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
|
|
1067
|
+
/* harmony import */ var _popup_manager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5);
|
|
1068
|
+
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _popup_manager__WEBPACK_IMPORTED_MODULE_2__["a"]; });
|
|
1069
|
+
|
|
1070
|
+
|
|
1071
|
+
|
|
1072
|
+
|
|
1073
|
+
|
|
1074
|
+
var idSeed = 1;
|
|
1075
|
+
|
|
1076
|
+
var scrollBarWidth = void 0;
|
|
1077
|
+
|
|
1078
|
+
/* harmony default export */ __webpack_exports__["b"] = ({
|
|
1079
|
+
props: {
|
|
1080
|
+
visibility: {
|
|
1081
|
+
type: Boolean,
|
|
1082
|
+
default: false
|
|
1083
|
+
},
|
|
1084
|
+
openDelay: {},
|
|
1085
|
+
closeDelay: {},
|
|
1086
|
+
zIndex: {},
|
|
1087
|
+
modal: {
|
|
1088
|
+
type: Boolean,
|
|
1089
|
+
default: false
|
|
1090
|
+
},
|
|
1091
|
+
modalFade: {
|
|
1092
|
+
type: Boolean,
|
|
1093
|
+
default: true
|
|
1094
|
+
},
|
|
1095
|
+
modalClass: {},
|
|
1096
|
+
modalAppendToBody: {
|
|
1097
|
+
type: Boolean,
|
|
1098
|
+
default: false
|
|
1099
|
+
},
|
|
1100
|
+
lockScroll: {
|
|
1101
|
+
type: Boolean,
|
|
1102
|
+
default: true
|
|
1103
|
+
},
|
|
1104
|
+
closeOnPressEscape: {
|
|
1105
|
+
type: Boolean,
|
|
1106
|
+
default: false
|
|
1107
|
+
},
|
|
1108
|
+
closeOnClickModal: {
|
|
1109
|
+
type: Boolean,
|
|
1110
|
+
default: false
|
|
1111
|
+
}
|
|
1112
|
+
},
|
|
1113
|
+
|
|
1114
|
+
beforeMount: function beforeMount() {
|
|
1115
|
+
this._popupId = 'popup-' + idSeed++;
|
|
1116
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].register(this._popupId, this);
|
|
1117
|
+
},
|
|
1118
|
+
beforeDestroy: function beforeDestroy() {
|
|
1119
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].deregister(this._popupId);
|
|
1120
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].closeModal(this._popupId);
|
|
1121
|
+
|
|
1122
|
+
this.restoreBodyStyle();
|
|
1123
|
+
},
|
|
1124
|
+
data: function data() {
|
|
1125
|
+
return {
|
|
1126
|
+
opened: false,
|
|
1127
|
+
bodyPaddingRight: null,
|
|
1128
|
+
computedBodyPaddingRight: 0,
|
|
1129
|
+
withoutHiddenClass: true,
|
|
1130
|
+
rendered: false
|
|
1131
|
+
};
|
|
1132
|
+
},
|
|
1133
|
+
|
|
1134
|
+
|
|
1135
|
+
watch: {
|
|
1136
|
+
visibility: function visibility(val) {
|
|
1137
|
+
var _this = this;
|
|
1138
|
+
|
|
1139
|
+
if (val) {
|
|
1140
|
+
if (this._opening) return;
|
|
1141
|
+
if (!this.rendered) {
|
|
1142
|
+
this.rendered = true;
|
|
1143
|
+
vue__WEBPACK_IMPORTED_MODULE_0___default.a.nextTick(function () {
|
|
1144
|
+
_this.open();
|
|
1145
|
+
});
|
|
1146
|
+
} else {
|
|
1147
|
+
this.open();
|
|
1148
|
+
}
|
|
1149
|
+
} else {
|
|
1150
|
+
this.close();
|
|
1151
|
+
}
|
|
1152
|
+
}
|
|
1153
|
+
},
|
|
1154
|
+
|
|
1155
|
+
methods: {
|
|
1156
|
+
open: function open(options) {
|
|
1157
|
+
var _this2 = this;
|
|
1158
|
+
|
|
1159
|
+
if (!this.rendered) {
|
|
1160
|
+
this.rendered = true;
|
|
1161
|
+
}
|
|
1162
|
+
var props = Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* merge */ "e"])({}, this.$props || this, options);
|
|
1163
|
+
|
|
1164
|
+
if (this._closeTimer) {
|
|
1165
|
+
clearTimeout(this._closeTimer);
|
|
1166
|
+
this._closeTimer = null;
|
|
1167
|
+
}
|
|
1168
|
+
clearTimeout(this._openTimer);
|
|
1169
|
+
|
|
1170
|
+
var openDelay = Number(props.openDelay);
|
|
1171
|
+
if (openDelay > 0) {
|
|
1172
|
+
this._openTimer = setTimeout(function () {
|
|
1173
|
+
_this2._openTimer = null;
|
|
1174
|
+
_this2.doOpen(props);
|
|
1175
|
+
}, openDelay);
|
|
1176
|
+
} else {
|
|
1177
|
+
this.doOpen(props);
|
|
1178
|
+
}
|
|
1179
|
+
},
|
|
1180
|
+
doOpen: function doOpen(props) {
|
|
1181
|
+
if (this.$isServer) return;
|
|
1182
|
+
if (this.willOpen && !this.willOpen()) return;
|
|
1183
|
+
if (this.opened) return;
|
|
1184
|
+
|
|
1185
|
+
this._opening = true;
|
|
1186
|
+
|
|
1187
|
+
var dom = this.$el;
|
|
1188
|
+
|
|
1189
|
+
var modal = props.modal;
|
|
1190
|
+
|
|
1191
|
+
var zIndex = props.zIndex;
|
|
1192
|
+
if (zIndex) {
|
|
1193
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].zIndex = zIndex;
|
|
1194
|
+
}
|
|
1195
|
+
|
|
1196
|
+
if (modal) {
|
|
1197
|
+
if (this._closing) {
|
|
1198
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].closeModal(this._popupId);
|
|
1199
|
+
this._closing = false;
|
|
1200
|
+
}
|
|
1201
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].openModal(this._popupId, _popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].nextZIndex(), this.modalAppendToBody ? undefined : dom, props.modalClass, props.modalFade);
|
|
1202
|
+
if (props.lockScroll) {
|
|
1203
|
+
this.withoutHiddenClass = !Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* hasClass */ "d"])(document.body, 'mds-popup-parent--hidden');
|
|
1204
|
+
if (this.withoutHiddenClass) {
|
|
1205
|
+
this.bodyPaddingRight = document.body.style.paddingRight;
|
|
1206
|
+
this.computedBodyPaddingRight = parseInt(Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* getStyle */ "c"])(document.body, 'paddingRight'), 10);
|
|
1207
|
+
}
|
|
1208
|
+
scrollBarWidth = Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* getScrollBarWidth */ "b"])();
|
|
1209
|
+
var bodyHasOverflow = document.documentElement.clientHeight < document.body.scrollHeight;
|
|
1210
|
+
var bodyOverflowY = Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* getStyle */ "c"])(document.body, 'overflowY');
|
|
1211
|
+
if (scrollBarWidth > 0 && (bodyHasOverflow || bodyOverflowY === 'scroll') && this.withoutHiddenClass) {
|
|
1212
|
+
document.body.style.paddingRight = this.computedBodyPaddingRight + scrollBarWidth + 'px';
|
|
1213
|
+
}
|
|
1214
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* addClass */ "a"])(document.body, 'mds-popup-parent--hidden');
|
|
1215
|
+
}
|
|
1216
|
+
}
|
|
1217
|
+
|
|
1218
|
+
if (getComputedStyle(dom).position === 'static') {
|
|
1219
|
+
dom.style.position = 'absolute';
|
|
1220
|
+
}
|
|
1221
|
+
|
|
1222
|
+
dom.style.zIndex = _popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].nextZIndex();
|
|
1223
|
+
this.opened = true;
|
|
1224
|
+
|
|
1225
|
+
this.onOpen && this.onOpen();
|
|
1226
|
+
|
|
1227
|
+
this.doAfterOpen();
|
|
1228
|
+
},
|
|
1229
|
+
doAfterOpen: function doAfterOpen() {
|
|
1230
|
+
this._opening = false;
|
|
1231
|
+
},
|
|
1232
|
+
close: function close() {
|
|
1233
|
+
var _this3 = this;
|
|
1234
|
+
|
|
1235
|
+
if (this.willClose && !this.willClose()) return;
|
|
1236
|
+
|
|
1237
|
+
if (this._openTimer !== null) {
|
|
1238
|
+
clearTimeout(this._openTimer);
|
|
1239
|
+
this._openTimer = null;
|
|
1240
|
+
}
|
|
1241
|
+
clearTimeout(this._closeTimer);
|
|
1242
|
+
|
|
1243
|
+
var closeDelay = Number(this.closeDelay);
|
|
1244
|
+
|
|
1245
|
+
if (closeDelay > 0) {
|
|
1246
|
+
this._closeTimer = setTimeout(function () {
|
|
1247
|
+
_this3._closeTimer = null;
|
|
1248
|
+
_this3.doClose();
|
|
1249
|
+
}, closeDelay);
|
|
1250
|
+
} else {
|
|
1251
|
+
this.doClose();
|
|
1252
|
+
}
|
|
1253
|
+
},
|
|
1254
|
+
doClose: function doClose() {
|
|
1255
|
+
this._closing = true;
|
|
1256
|
+
|
|
1257
|
+
this.onClose && this.onClose();
|
|
1258
|
+
|
|
1259
|
+
if (this.lockScroll) {
|
|
1260
|
+
setTimeout(this.restoreBodyStyle, 200);
|
|
1261
|
+
}
|
|
1262
|
+
|
|
1263
|
+
this.opened = false;
|
|
1264
|
+
|
|
1265
|
+
this.doAfterClose();
|
|
1266
|
+
},
|
|
1267
|
+
doAfterClose: function doAfterClose() {
|
|
1268
|
+
_popup_manager__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].closeModal(this._popupId);
|
|
1269
|
+
this._closing = false;
|
|
1270
|
+
},
|
|
1271
|
+
restoreBodyStyle: function restoreBodyStyle() {
|
|
1272
|
+
if (this.modal && this.withoutHiddenClass) {
|
|
1273
|
+
document.body.style.paddingRight = this.bodyPaddingRight;
|
|
1274
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* removeClass */ "h"])(document.body, 'mds-popup-parent--hidden');
|
|
1275
|
+
}
|
|
1276
|
+
this.withoutHiddenClass = true;
|
|
1277
|
+
}
|
|
1278
|
+
}
|
|
1279
|
+
});
|
|
1280
|
+
|
|
1281
|
+
|
|
1282
|
+
|
|
1283
|
+
/***/ }),
|
|
1284
|
+
|
|
1285
|
+
/***/ 15:
|
|
1286
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1287
|
+
|
|
1288
|
+
"use strict";
|
|
1289
|
+
/* unused harmony export noop */
|
|
1290
|
+
/* unused harmony export getOffsetLeft */
|
|
1291
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getValueByPath; });
|
|
1292
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return valueEquals; });
|
|
1293
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return arrayFindIndex; });
|
|
1294
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return arrayFind; });
|
|
1295
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return coerceTruthyValueToArray; });
|
|
1296
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return isIE; });
|
|
1297
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isEdge; });
|
|
1298
|
+
/* unused harmony export isFirefox */
|
|
1299
|
+
/* unused harmony export assert */
|
|
1300
|
+
/* unused harmony export escapeRegexpString */
|
|
1301
|
+
/* unused harmony export getOffsetWidth */
|
|
1302
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isFunction; });
|
|
1303
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return fixBodyScroll; });
|
|
1304
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
|
|
1305
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
1306
|
+
|
|
1307
|
+
|
|
1308
|
+
// import { getScrollBarWidth } from './_popper/dom-helper'
|
|
1309
|
+
var currentBodyOverflow = '';
|
|
1310
|
+
// let currentBodyPaddingRight = ''
|
|
1311
|
+
var noop = function noop() {};
|
|
1312
|
+
|
|
1313
|
+
var getScroll = function getScroll(w, top) {
|
|
1314
|
+
var ret = top ? w.pageYOffset : w.pageXOffset;
|
|
1315
|
+
var method = top ? 'scrollTop' : 'scrollLeft';
|
|
1316
|
+
if (typeof ret !== 'number') {
|
|
1317
|
+
var d = w.document;
|
|
1318
|
+
// ie6,7,8 standard mode
|
|
1319
|
+
ret = d.documentElement[method];
|
|
1320
|
+
if (typeof ret !== 'number') {
|
|
1321
|
+
// quirks mode
|
|
1322
|
+
ret = d.body[method];
|
|
1323
|
+
}
|
|
1324
|
+
}
|
|
1325
|
+
return ret;
|
|
1326
|
+
};
|
|
1327
|
+
|
|
1328
|
+
var getClientPosition = function getClientPosition(elem) {
|
|
1329
|
+
var box = void 0;
|
|
1330
|
+
var x = void 0;
|
|
1331
|
+
var y = void 0;
|
|
1332
|
+
var doc = elem.ownerDocument;
|
|
1333
|
+
var body = doc.body;
|
|
1334
|
+
var docElem = doc && doc.documentElement;
|
|
1335
|
+
box = elem.getBoundingClientRect();
|
|
1336
|
+
x = box.left;
|
|
1337
|
+
y = box.top;
|
|
1338
|
+
x -= docElem.clientLeft || body.clientLeft || 0;
|
|
1339
|
+
y -= docElem.clientTop || body.clientTop || 0;
|
|
1340
|
+
return {
|
|
1341
|
+
left: x,
|
|
1342
|
+
top: y
|
|
1343
|
+
};
|
|
1344
|
+
};
|
|
1345
|
+
|
|
1346
|
+
var getOffsetLeft = function getOffsetLeft(el) {
|
|
1347
|
+
var pos = getClientPosition(el);
|
|
1348
|
+
var doc = el.ownerDocument;
|
|
1349
|
+
var w = doc.defaultView || doc.parentWindow;
|
|
1350
|
+
pos.left += getScroll(w);
|
|
1351
|
+
return pos.left;
|
|
1352
|
+
};
|
|
1353
|
+
/**
|
|
1354
|
+
* 获取对象深层级的对象,避免循环
|
|
1355
|
+
* @export
|
|
1356
|
+
* @param {*} sourceObj 源对象 {a:{b:{d:1}}}
|
|
1357
|
+
* @param {*} pathName path组成的数组 例如:'a.b.c'
|
|
1358
|
+
* @param {*} defaultValue 如果没有值默认的值 []
|
|
1359
|
+
*/
|
|
1360
|
+
function getValueByPath(sourceObj, pathName, defaultValue) {
|
|
1361
|
+
var getValue = function getValue(sourceObj, pathNameArray) {
|
|
1362
|
+
var key = pathNameArray.shift();
|
|
1363
|
+
var value = sourceObj[key];
|
|
1364
|
+
if (value === undefined || value === null) {
|
|
1365
|
+
return defaultValue;
|
|
1366
|
+
} else if (pathNameArray.length === 0) {
|
|
1367
|
+
return value;
|
|
1368
|
+
} else if (pathNameArray.length > 0) {
|
|
1369
|
+
return getValue(value, pathNameArray);
|
|
1370
|
+
}
|
|
1371
|
+
};
|
|
1372
|
+
var pathNameArray = pathName.split('.');
|
|
1373
|
+
return getValue(sourceObj, pathNameArray);
|
|
1374
|
+
}
|
|
1375
|
+
/**
|
|
1376
|
+
*
|
|
1377
|
+
* 判断两个数是否相等
|
|
1378
|
+
* @param {*} a
|
|
1379
|
+
* @param {*} b
|
|
1380
|
+
* @returns
|
|
1381
|
+
*/
|
|
1382
|
+
var valueEquals = function valueEquals(a, b) {
|
|
1383
|
+
// see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
|
|
1384
|
+
if (a === b) return true;
|
|
1385
|
+
if (!(a instanceof Array)) return false;
|
|
1386
|
+
if (!(b instanceof Array)) return false;
|
|
1387
|
+
if (a.length !== b.length) return false;
|
|
1388
|
+
for (var i = 0; i !== a.length; ++i) {
|
|
1389
|
+
if (a[i] !== b[i]) return false;
|
|
1390
|
+
}
|
|
1391
|
+
return true;
|
|
1392
|
+
};
|
|
1393
|
+
// TODO: use native Array.find, Array.findIndex when IE support is dropped
|
|
1394
|
+
var arrayFindIndex = function arrayFindIndex(arr, pred) {
|
|
1395
|
+
for (var i = 0; i !== arr.length; ++i) {
|
|
1396
|
+
if (pred(arr[i])) {
|
|
1397
|
+
return i;
|
|
1398
|
+
}
|
|
1399
|
+
}
|
|
1400
|
+
return -1;
|
|
1401
|
+
};
|
|
1402
|
+
|
|
1403
|
+
var arrayFind = function arrayFind(arr, pred) {
|
|
1404
|
+
var idx = arrayFindIndex(arr, pred);
|
|
1405
|
+
return idx !== -1 ? arr[idx] : undefined;
|
|
1406
|
+
};
|
|
1407
|
+
|
|
1408
|
+
// coerce truthy value to array
|
|
1409
|
+
var coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
|
|
1410
|
+
if (Array.isArray(val)) {
|
|
1411
|
+
return val;
|
|
1412
|
+
} else if (val) {
|
|
1413
|
+
return [val];
|
|
1414
|
+
} else {
|
|
1415
|
+
return [];
|
|
1416
|
+
}
|
|
1417
|
+
};
|
|
1418
|
+
|
|
1419
|
+
var isIE = function isIE() {
|
|
1420
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !isNaN(Number(document.documentMode));
|
|
1421
|
+
};
|
|
1422
|
+
|
|
1423
|
+
var isEdge = function isEdge() {
|
|
1424
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && navigator.userAgent.indexOf('Edge') > -1;
|
|
1425
|
+
};
|
|
1426
|
+
|
|
1427
|
+
var isFirefox = function isFirefox() {
|
|
1428
|
+
return !vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i);
|
|
1429
|
+
};
|
|
1430
|
+
|
|
1431
|
+
var assert = function assert(condition, msg) {
|
|
1432
|
+
if (!condition) throw new Error('[mds-ui] ' + msg);
|
|
1433
|
+
};
|
|
1434
|
+
/**
|
|
1435
|
+
*
|
|
1436
|
+
* 特殊字符转译
|
|
1437
|
+
* @param {string} [value='']
|
|
1438
|
+
*/
|
|
1439
|
+
var escapeRegexpString = function escapeRegexpString() {
|
|
1440
|
+
var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
1441
|
+
return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
|
|
1442
|
+
};
|
|
1443
|
+
/**
|
|
1444
|
+
* Get element offset width
|
|
1445
|
+
* @param {*} node HTMLDOMElemment
|
|
1446
|
+
* @return {Number} width
|
|
1447
|
+
*/
|
|
1448
|
+
/**
|
|
1449
|
+
* Get element offset width
|
|
1450
|
+
* @param {*} node HTMLDOMElemment
|
|
1451
|
+
* @return {Number} width
|
|
1452
|
+
*/
|
|
1453
|
+
var getOffsetWidth = function getOffsetWidth(node) {
|
|
1454
|
+
return node ? node.offsetWidth : 0;
|
|
1455
|
+
};
|
|
1456
|
+
|
|
1457
|
+
/** 判断是否为函数
|
|
1458
|
+
* @param {*} functionToCheck
|
|
1459
|
+
* @returns
|
|
1460
|
+
*/
|
|
1461
|
+
var isFunction = function isFunction(functionToCheck) {
|
|
1462
|
+
var getType = {};
|
|
1463
|
+
return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
|
|
1464
|
+
};
|
|
1465
|
+
|
|
1466
|
+
/**
|
|
1467
|
+
* 弹窗类组件显现时修正body滚动
|
|
1468
|
+
* @param {Boolean} visible 弹窗显现状态
|
|
1469
|
+
*/
|
|
1470
|
+
function fixBodyScroll(visible) {
|
|
1471
|
+
var bodyStyle = document.body.style;
|
|
1472
|
+
if (visible) {
|
|
1473
|
+
currentBodyOverflow = bodyStyle.overflow;
|
|
1474
|
+
// currentBodyPaddingRight = bodyStyle.paddingRight
|
|
1475
|
+
bodyStyle.overflow = 'hidden';
|
|
1476
|
+
// const basePaddingRight = parseInt(currentBodyPaddingRight || 0)
|
|
1477
|
+
// const baseScrollWidth = parseInt(getScrollBarWidth())
|
|
1478
|
+
// 防止页面抖动,后续需要自定义滚动条解决
|
|
1479
|
+
// bodyStyle.paddingRight = basePaddingRight + baseScrollWidth + 'px'
|
|
1480
|
+
} else {
|
|
1481
|
+
var timer = setTimeout(function () {
|
|
1482
|
+
clearTimeout(timer);
|
|
1483
|
+
bodyStyle.overflow = currentBodyOverflow;
|
|
1484
|
+
// bodyStyle.paddingRight = currentBodyPaddingRight
|
|
1485
|
+
// currentBodyPaddingRight = ''
|
|
1486
|
+
}, 180);
|
|
1487
|
+
}
|
|
1488
|
+
}
|
|
1489
|
+
|
|
1490
|
+
/***/ }),
|
|
1491
|
+
|
|
1492
|
+
/***/ 193:
|
|
860
1493
|
/***/ (function(module, exports) {
|
|
861
1494
|
|
|
862
1495
|
// removed by extract-text-webpack-plugin
|
|
863
1496
|
|
|
864
1497
|
/***/ }),
|
|
865
1498
|
|
|
866
|
-
/***/
|
|
1499
|
+
/***/ 2:
|
|
867
1500
|
/***/ (function(module, exports) {
|
|
868
1501
|
|
|
869
|
-
module.exports =
|
|
1502
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__2__;
|
|
870
1503
|
|
|
871
1504
|
/***/ }),
|
|
872
1505
|
|
|
873
1506
|
/***/ 5:
|
|
874
|
-
/***/ (function(module,
|
|
1507
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
875
1508
|
|
|
876
|
-
|
|
1509
|
+
"use strict";
|
|
1510
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
|
|
1511
|
+
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
|
|
1512
|
+
/* harmony import */ var _dom_helper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
|
|
1513
|
+
|
|
1514
|
+
|
|
1515
|
+
|
|
1516
|
+
var hasModal = false;
|
|
1517
|
+
var hasInitZIndex = false;
|
|
1518
|
+
var zIndex = void 0;
|
|
1519
|
+
|
|
1520
|
+
var getModal = function getModal() {
|
|
1521
|
+
if (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer) return;
|
|
1522
|
+
var modalDom = PopupManager.modalDom;
|
|
1523
|
+
if (modalDom) {
|
|
1524
|
+
hasModal = true;
|
|
1525
|
+
} else {
|
|
1526
|
+
hasModal = false;
|
|
1527
|
+
modalDom = document.createElement('div');
|
|
1528
|
+
PopupManager.modalDom = modalDom;
|
|
1529
|
+
|
|
1530
|
+
modalDom.addEventListener('touchmove', function (event) {
|
|
1531
|
+
event.preventDefault();
|
|
1532
|
+
event.stopPropagation();
|
|
1533
|
+
});
|
|
1534
|
+
|
|
1535
|
+
modalDom.addEventListener('click', function () {
|
|
1536
|
+
PopupManager.doOnModalClick && PopupManager.doOnModalClick();
|
|
1537
|
+
});
|
|
1538
|
+
}
|
|
1539
|
+
|
|
1540
|
+
return modalDom;
|
|
1541
|
+
};
|
|
1542
|
+
|
|
1543
|
+
var instances = {};
|
|
1544
|
+
|
|
1545
|
+
var PopupManager = {
|
|
1546
|
+
modalFade: true,
|
|
1547
|
+
|
|
1548
|
+
getInstance: function getInstance(id) {
|
|
1549
|
+
return instances[id];
|
|
1550
|
+
},
|
|
1551
|
+
|
|
1552
|
+
register: function register(id, instance) {
|
|
1553
|
+
if (id && instance) {
|
|
1554
|
+
instances[id] = instance;
|
|
1555
|
+
}
|
|
1556
|
+
},
|
|
1557
|
+
|
|
1558
|
+
deregister: function deregister(id) {
|
|
1559
|
+
if (id) {
|
|
1560
|
+
instances[id] = null;
|
|
1561
|
+
delete instances[id];
|
|
1562
|
+
}
|
|
1563
|
+
},
|
|
1564
|
+
|
|
1565
|
+
nextZIndex: function nextZIndex() {
|
|
1566
|
+
return PopupManager.zIndex++;
|
|
1567
|
+
},
|
|
1568
|
+
|
|
1569
|
+
modalStack: [],
|
|
1570
|
+
|
|
1571
|
+
doOnModalClick: function doOnModalClick() {
|
|
1572
|
+
var topItem = PopupManager.modalStack[PopupManager.modalStack.length - 1];
|
|
1573
|
+
if (!topItem) return;
|
|
1574
|
+
|
|
1575
|
+
var instance = PopupManager.getInstance(topItem.id);
|
|
1576
|
+
if (instance && instance.closeOnClickModal) {
|
|
1577
|
+
instance.close();
|
|
1578
|
+
}
|
|
1579
|
+
},
|
|
1580
|
+
|
|
1581
|
+
openModal: function openModal(id, zIndex, dom, modalClass, modalFade) {
|
|
1582
|
+
if (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer) return;
|
|
1583
|
+
if (!id || zIndex === undefined) return;
|
|
1584
|
+
this.modalFade = modalFade;
|
|
1585
|
+
|
|
1586
|
+
var modalStack = this.modalStack;
|
|
1587
|
+
|
|
1588
|
+
for (var i = 0, j = modalStack.length; i < j; i++) {
|
|
1589
|
+
var item = modalStack[i];
|
|
1590
|
+
if (item.id === id) {
|
|
1591
|
+
return;
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1594
|
+
|
|
1595
|
+
var modalDom = getModal();
|
|
1596
|
+
|
|
1597
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* addClass */ "a"])(modalDom, 'v-modal');
|
|
1598
|
+
if (this.modalFade && !hasModal) {
|
|
1599
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* addClass */ "a"])(modalDom, 'v-modal-enter');
|
|
1600
|
+
}
|
|
1601
|
+
if (modalClass) {
|
|
1602
|
+
var classArr = modalClass.trim().split(/\s+/);
|
|
1603
|
+
classArr.forEach(function (item) {
|
|
1604
|
+
return Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* addClass */ "a"])(modalDom, item);
|
|
1605
|
+
});
|
|
1606
|
+
}
|
|
1607
|
+
setTimeout(function () {
|
|
1608
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* removeClass */ "h"])(modalDom, 'v-modal-enter');
|
|
1609
|
+
}, 200);
|
|
1610
|
+
|
|
1611
|
+
if (dom && dom.parentNode && dom.parentNode.nodeType !== 11) {
|
|
1612
|
+
dom.parentNode.appendChild(modalDom);
|
|
1613
|
+
} else {
|
|
1614
|
+
document.body.appendChild(modalDom);
|
|
1615
|
+
}
|
|
1616
|
+
|
|
1617
|
+
if (zIndex) {
|
|
1618
|
+
modalDom.style.zIndex = zIndex;
|
|
1619
|
+
}
|
|
1620
|
+
modalDom.tabIndex = 0;
|
|
1621
|
+
modalDom.style.display = '';
|
|
1622
|
+
|
|
1623
|
+
this.modalStack.push({ id: id, zIndex: zIndex, modalClass: modalClass });
|
|
1624
|
+
},
|
|
1625
|
+
|
|
1626
|
+
closeModal: function closeModal(id) {
|
|
1627
|
+
var modalStack = this.modalStack;
|
|
1628
|
+
var modalDom = getModal();
|
|
1629
|
+
|
|
1630
|
+
if (modalStack.length > 0) {
|
|
1631
|
+
var topItem = modalStack[modalStack.length - 1];
|
|
1632
|
+
if (topItem.id === id) {
|
|
1633
|
+
if (topItem.modalClass) {
|
|
1634
|
+
var classArr = topItem.modalClass.trim().split(/\s+/);
|
|
1635
|
+
classArr.forEach(function (item) {
|
|
1636
|
+
return Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* removeClass */ "h"])(modalDom, item);
|
|
1637
|
+
});
|
|
1638
|
+
}
|
|
1639
|
+
|
|
1640
|
+
modalStack.pop();
|
|
1641
|
+
if (modalStack.length > 0) {
|
|
1642
|
+
modalDom.style.zIndex = modalStack[modalStack.length - 1].zIndex;
|
|
1643
|
+
}
|
|
1644
|
+
} else {
|
|
1645
|
+
for (var i = modalStack.length - 1; i >= 0; i--) {
|
|
1646
|
+
if (modalStack[i].id === id) {
|
|
1647
|
+
modalStack.splice(i, 1);
|
|
1648
|
+
break;
|
|
1649
|
+
}
|
|
1650
|
+
}
|
|
1651
|
+
}
|
|
1652
|
+
}
|
|
1653
|
+
|
|
1654
|
+
if (modalStack.length === 0) {
|
|
1655
|
+
if (this.modalFade) {
|
|
1656
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* addClass */ "a"])(modalDom, 'v-modal-leave');
|
|
1657
|
+
}
|
|
1658
|
+
setTimeout(function () {
|
|
1659
|
+
if (modalStack.length === 0) {
|
|
1660
|
+
if (modalDom.parentNode) modalDom.parentNode.removeChild(modalDom);
|
|
1661
|
+
modalDom.style.display = 'none';
|
|
1662
|
+
PopupManager.modalDom = undefined;
|
|
1663
|
+
}
|
|
1664
|
+
Object(_dom_helper__WEBPACK_IMPORTED_MODULE_1__[/* removeClass */ "h"])(modalDom, 'v-modal-leave');
|
|
1665
|
+
}, 200);
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1668
|
+
};
|
|
1669
|
+
|
|
1670
|
+
Object.defineProperty(PopupManager, 'zIndex', {
|
|
1671
|
+
configurable: true,
|
|
1672
|
+
get: function get() {
|
|
1673
|
+
if (!hasInitZIndex) {
|
|
1674
|
+
zIndex = zIndex || (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$ELEMENT || {}).zIndex || 2000;
|
|
1675
|
+
hasInitZIndex = true;
|
|
1676
|
+
}
|
|
1677
|
+
return zIndex;
|
|
1678
|
+
},
|
|
1679
|
+
set: function set(value) {
|
|
1680
|
+
zIndex = value;
|
|
1681
|
+
}
|
|
1682
|
+
});
|
|
1683
|
+
|
|
1684
|
+
var getTopPopup = function getTopPopup() {
|
|
1685
|
+
if (vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer) return;
|
|
1686
|
+
if (PopupManager.modalStack.length > 0) {
|
|
1687
|
+
var topPopup = PopupManager.modalStack[PopupManager.modalStack.length - 1];
|
|
1688
|
+
if (!topPopup) return;
|
|
1689
|
+
var instance = PopupManager.getInstance(topPopup.id);
|
|
1690
|
+
|
|
1691
|
+
return instance;
|
|
1692
|
+
}
|
|
1693
|
+
};
|
|
1694
|
+
|
|
1695
|
+
if (!vue__WEBPACK_IMPORTED_MODULE_0___default.a.prototype.$isServer) {
|
|
1696
|
+
// handle `esc` key when the popup is shown
|
|
1697
|
+
window.addEventListener('keydown', function (event) {
|
|
1698
|
+
if (event.keyCode === 27) {
|
|
1699
|
+
var topPopup = getTopPopup();
|
|
1700
|
+
|
|
1701
|
+
if (topPopup && topPopup.closeOnPressEscape) {
|
|
1702
|
+
topPopup.handleClose ? topPopup.handleClose() : topPopup.handleAction ? topPopup.handleAction('cancel') : topPopup.close();
|
|
1703
|
+
}
|
|
1704
|
+
}
|
|
1705
|
+
});
|
|
1706
|
+
}
|
|
1707
|
+
|
|
1708
|
+
/* harmony default export */ __webpack_exports__["a"] = (PopupManager);
|
|
877
1709
|
|
|
878
1710
|
/***/ }),
|
|
879
1711
|
|
|
880
|
-
/***/
|
|
1712
|
+
/***/ 70:
|
|
881
1713
|
/***/ (function(module, exports) {
|
|
882
1714
|
|
|
883
1715
|
module.exports = require("babel-runtime/core-js/number/is-finite");
|
|
884
1716
|
|
|
885
1717
|
/***/ }),
|
|
886
1718
|
|
|
887
|
-
/***/
|
|
1719
|
+
/***/ 8:
|
|
1720
|
+
/***/ (function(module, exports) {
|
|
1721
|
+
|
|
1722
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__8__;
|
|
1723
|
+
|
|
1724
|
+
/***/ }),
|
|
1725
|
+
|
|
1726
|
+
/***/ 9:
|
|
888
1727
|
/***/ (function(module, exports) {
|
|
889
1728
|
|
|
890
|
-
module.exports =
|
|
1729
|
+
module.exports = require("babel-runtime/helpers/typeof");
|
|
891
1730
|
|
|
892
1731
|
/***/ })
|
|
893
1732
|
|