bkui-vue 0.0.2-modal-refactor.2 → 0.0.2-modal-refactor.4

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.
@@ -1,15 +1,25 @@
1
1
  import { type ComponentPublicInstance } from 'vue';
2
- import type { DatePickerPanelType } from './interface';
2
+ import type { DatePickerPanelType, SelectionModeType } from './interface';
3
3
  export declare function useCalendar(props: any, slots: any, emit: any): {
4
- resolveClassName: (cls: string) => string;
5
4
  longWidthCls: import("vue").ComputedRef<string>;
6
5
  fontSizeCls: import("vue").ComputedRef<string>;
6
+ hasHeader: import("vue").ComputedRef<boolean>;
7
+ hasFooter: import("vue").ComputedRef<boolean>;
8
+ hasShortcuts: import("vue").ComputedRef<boolean>;
9
+ hasConfirm: import("vue").ComputedRef<boolean>;
7
10
  forceInputRerender: import("vue").Ref<number>;
8
11
  internalValue: any;
9
12
  localReadonly: import("vue").ComputedRef<any>;
13
+ ownPickerProps: import("vue").ComputedRef<any>;
14
+ allowCrossDayProp: import("vue").ComputedRef<any>;
10
15
  displayValue: import("vue").ComputedRef<any>;
16
+ selectionMode: import("vue").Ref<SelectionModeType>;
17
+ focusedDate: any;
11
18
  inputRef: any;
12
19
  setInputRef: (el: Element | ComponentPublicInstance | null) => void;
20
+ pickerDropdownRef: any;
21
+ reset: () => void;
22
+ handleClose: (e?: Event) => boolean;
13
23
  handleFocus: (e: any) => void;
14
24
  handleBlur: (e: any) => void;
15
25
  showClose: import("vue").Ref<boolean>;
@@ -20,5 +30,6 @@ export declare function useCalendar(props: any, slots: any, emit: any): {
20
30
  handleClear: () => void;
21
31
  panel: import("vue").ComputedRef<DatePickerPanelType>;
22
32
  opened: import("vue").ComputedRef<any>;
33
+ handleInputMouseenter: () => void;
34
+ handleInputMouseleave: (_e: any) => void;
23
35
  };
24
- export declare function defaultTrigger(props: any, slots: any, emit: any): JSX.Element;
@@ -95,6 +95,7 @@
95
95
  }
96
96
  .bk-modal-wrapper .bk-modal-body {
97
97
  height: 100%;
98
+ width: 100%;
98
99
  background: #fff;
99
100
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
100
101
  }
@@ -221,6 +221,7 @@
221
221
  }
222
222
  .bk-modal-wrapper .bk-modal-body {
223
223
  height: 100%;
224
+ width: 100%;
224
225
  background: #fff;
225
226
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
226
227
  }
@@ -1005,56 +1005,73 @@ var InfoBox = function InfoBox(config) {
1005
1005
  name: 'DialogConfirm',
1006
1006
  setup: function setup(_props, _ref) {
1007
1007
  var expose = _ref.expose;
1008
- var onClosed = /*#__PURE__*/function () {
1009
- var _ref2 = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee() {
1010
- var _modalFuncProps$value;
1011
- var _modalFuncProps$value2;
1008
+ var beforeHiddenFn = [];
1009
+ var resolveUserCallbackFnBeforeClose = /*#__PURE__*/function () {
1010
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee(userCallbackFn) {
1012
1011
  return regenerator_default().wrap(function _callee$(_context) {
1013
1012
  while (1) switch (_context.prev = _context.next) {
1014
1013
  case 0:
1015
- if (!(typeof ((_modalFuncProps$value = modalFuncProps.value) === null || _modalFuncProps$value === void 0 ? void 0 : _modalFuncProps$value.onClosed) === 'function')) {
1016
- _context.next = 3;
1014
+ if (!(typeof userCallbackFn === 'function')) {
1015
+ _context.next = 7;
1017
1016
  break;
1018
1017
  }
1019
- _context.next = 3;
1020
- return (_modalFuncProps$value2 = modalFuncProps.value) === null || _modalFuncProps$value2 === void 0 ? void 0 : _modalFuncProps$value2.onClosed();
1021
- case 3:
1022
- isShow.value = false;
1018
+ if (!(userCallbackFn instanceof Promise)) {
1019
+ _context.next = 6;
1020
+ break;
1021
+ }
1022
+ _context.next = 4;
1023
+ return userCallbackFn();
1023
1024
  case 4:
1025
+ _context.next = 7;
1026
+ break;
1027
+ case 6:
1028
+ beforeHiddenFn.push(userCallbackFn);
1029
+ case 7:
1030
+ isShow.value = false;
1031
+ case 8:
1024
1032
  case "end":
1025
1033
  return _context.stop();
1026
1034
  }
1027
1035
  }, _callee);
1028
1036
  }));
1029
- return function onClosed() {
1037
+ return function resolveUserCallbackFnBeforeClose(_x) {
1030
1038
  return _ref2.apply(this, arguments);
1031
1039
  };
1032
1040
  }();
1033
- var onConfirm = /*#__PURE__*/function () {
1041
+ var onClosed = /*#__PURE__*/function () {
1034
1042
  var _ref3 = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee2() {
1035
- var _modalFuncProps$value3;
1036
- var _modalFuncProps$value4;
1043
+ var _modalFuncProps$value;
1037
1044
  return regenerator_default().wrap(function _callee2$(_context2) {
1038
1045
  while (1) switch (_context2.prev = _context2.next) {
1039
1046
  case 0:
1040
- if (!(typeof ((_modalFuncProps$value3 = modalFuncProps.value) === null || _modalFuncProps$value3 === void 0 ? void 0 : _modalFuncProps$value3.onConfirm) === 'function')) {
1041
- _context2.next = 3;
1042
- break;
1043
- }
1044
- _context2.next = 3;
1045
- return (_modalFuncProps$value4 = modalFuncProps.value) === null || _modalFuncProps$value4 === void 0 ? void 0 : _modalFuncProps$value4.onConfirm();
1046
- case 3:
1047
- isShow.value = false;
1048
- case 4:
1047
+ resolveUserCallbackFnBeforeClose((_modalFuncProps$value = modalFuncProps.value) === null || _modalFuncProps$value === void 0 ? void 0 : _modalFuncProps$value.onClosed);
1048
+ case 1:
1049
1049
  case "end":
1050
1050
  return _context2.stop();
1051
1051
  }
1052
1052
  }, _callee2);
1053
1053
  }));
1054
- return function onConfirm() {
1054
+ return function onClosed() {
1055
1055
  return _ref3.apply(this, arguments);
1056
1056
  };
1057
1057
  }();
1058
+ var onConfirm = /*#__PURE__*/function () {
1059
+ var _ref4 = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee3() {
1060
+ var _modalFuncProps$value2;
1061
+ return regenerator_default().wrap(function _callee3$(_context3) {
1062
+ while (1) switch (_context3.prev = _context3.next) {
1063
+ case 0:
1064
+ resolveUserCallbackFnBeforeClose((_modalFuncProps$value2 = modalFuncProps.value) === null || _modalFuncProps$value2 === void 0 ? void 0 : _modalFuncProps$value2.onConfirm);
1065
+ case 1:
1066
+ case "end":
1067
+ return _context3.stop();
1068
+ }
1069
+ }, _callee3);
1070
+ }));
1071
+ return function onConfirm() {
1072
+ return _ref4.apply(this, arguments);
1073
+ };
1074
+ }();
1058
1075
  function update(newValue) {
1059
1076
  modalFuncProps.value = info_box_objectSpread(info_box_objectSpread({}, modalFuncProps.value), newValue);
1060
1077
  }
@@ -1088,6 +1105,10 @@ var InfoBox = function InfoBox(config) {
1088
1105
  return subTitleBox;
1089
1106
  };
1090
1107
  var onHidden = function onHidden() {
1108
+ beforeHiddenFn.forEach(function (fn) {
1109
+ return fn();
1110
+ });
1111
+ beforeHiddenFn.length = 0;
1091
1112
  container.remove();
1092
1113
  };
1093
1114
  return function () {
@@ -1095,10 +1116,10 @@ var InfoBox = function InfoBox(config) {
1095
1116
  "class": resolveClassName('info-wrapper'),
1096
1117
  headerAlign: 'center',
1097
1118
  footerAlign: 'center',
1098
- transfer: true,
1099
1119
  fullscreen: false
1100
1120
  }, modalFuncProps.value), {}, {
1101
1121
  isShow: isShow.value,
1122
+ transfer: false,
1102
1123
  onClosed: onClosed,
1103
1124
  onConfirm: onConfirm,
1104
1125
  onHidden: onHidden
@@ -36,7 +36,7 @@ __webpack_require__.d(__webpack_exports__, {
36
36
  ;// CONCATENATED MODULE: external "../shared"
37
37
  var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
38
38
  var y = x => () => x
39
- const external_shared_namespaceObject = x({ ["PropTypes"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.PropTypes, ["bkZIndexManager"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.bkZIndexManager, ["dialogTypeUnion"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.dialogTypeUnion, ["mask"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.mask, ["renderDirectiveType"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.renderDirectiveType, ["withInstallProps"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.withInstallProps });
39
+ const external_shared_namespaceObject = x({ ["PropTypes"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.PropTypes, ["bkZIndexManager"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.bkZIndexManager, ["dialogTypeUnion"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.dialogTypeUnion, ["isElement"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.isElement, ["mask"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.mask, ["renderDirectiveType"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.renderDirectiveType, ["withInstallProps"]: () => __WEBPACK_EXTERNAL_MODULE__shared_65459f0a__.withInstallProps });
40
40
  ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/typeof.js
41
41
  function _typeof(obj) {
42
42
  "@babel/helpers - typeof";
@@ -257,13 +257,24 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
257
257
  resolveClassName = _usePrefix.resolveClassName;
258
258
  var resolveClosetModal = function resolveClosetModal() {
259
259
  var _refRoot$value;
260
+ if (enableTeleport.value) {
261
+ if (typeof teleportTo.value === 'string') {
262
+ var target = document.querySelector(teleportTo.value);
263
+ target === null || target === void 0 ? void 0 : target.appendChild(refRoot.value);
264
+ return;
265
+ }
266
+ if ((0,external_shared_namespaceObject.isElement)(teleportTo.value)) {
267
+ teleportTo.value.appendChild(refRoot.value);
268
+ return;
269
+ }
270
+ }
260
271
  var className = ".".concat(resolveClassName('modal-ctx'));
261
272
  var parentNode = (_refRoot$value = refRoot.value) === null || _refRoot$value === void 0 || (_refRoot$value = _refRoot$value.parentElement) === null || _refRoot$value === void 0 ? void 0 : _refRoot$value.closest(className);
262
273
  if (parentNode) {
263
274
  enableTeleport.value = true;
264
275
  teleportTo.value = 'body';
265
- var target = document.querySelector(teleportTo.value);
266
- target === null || target === void 0 ? void 0 : target.appendChild(refRoot.value);
276
+ var _target = document.querySelector(teleportTo.value);
277
+ _target === null || _target === void 0 ? void 0 : _target.appendChild(refRoot.value);
267
278
  }
268
279
  };
269
280
  var fullscreenStyle = (0,external_vue_namespaceObject.computed)(function () {
@@ -272,16 +283,32 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
272
283
  height: "".concat(100, "%")
273
284
  };
274
285
  });
286
+ var closeModal = function closeModal() {
287
+ external_shared_namespaceObject.mask.hideMask({
288
+ el: refRoot.value,
289
+ mask: refMask.value,
290
+ showMask: props.showMask,
291
+ backgroundColor: backgroundColor.value
292
+ });
293
+ closeTimer = setTimeout(function () {
294
+ // 直接设为false会失去离开的动画效果,这里延迟设置
295
+ ctx.emit('hidden'); // 为false直接触发hidden事件,在上层有200ms的延时
296
+ if (enableTeleport.value) {
297
+ var _refRoot$value2;
298
+ (_refRoot$value2 = refRoot.value) === null || _refRoot$value2 === void 0 ? void 0 : _refRoot$value2.remove();
299
+ }
300
+ }, 250);
301
+ };
275
302
  (0,external_vue_namespaceObject.watch)(function () {
276
303
  return props.isShow;
277
304
  }, function (val) {
278
- visible.value = val;
279
305
  if (val) {
280
306
  closeTimer && clearTimeout(closeTimer);
281
307
  closeTimer = null;
282
308
  if (!props.zIndex) {
283
309
  zIndex.value = external_shared_namespaceObject.bkZIndexManager.getModalNextIndex();
284
310
  }
311
+ visible.value = true;
285
312
  (0,external_vue_namespaceObject.nextTick)(function () {
286
313
  ctx.emit('shown');
287
314
  resolveClosetModal();
@@ -294,27 +321,29 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
294
321
  });
295
322
  return;
296
323
  }
297
- external_shared_namespaceObject.mask.hideMask({
298
- el: refRoot.value,
299
- mask: refMask.value,
300
- showMask: props.showMask,
301
- backgroundColor: backgroundColor.value
302
- });
303
- closeTimer = setTimeout(function () {
304
- // 直接设为false会失去离开的动画效果,这里延迟设置
305
- ctx.emit('hidden'); // 为false直接触发hidden事件,在上层有200ms的延时
306
- }, 250);
324
+ visible.value = false;
325
+ closeModal();
307
326
  }, {
308
327
  immediate: true
309
328
  });
329
+ var handleBeforeClose = function handleBeforeClose(callbackFn) {
330
+ if (typeof props.beforeClose === 'function') {
331
+ if (props.beforeClose() !== true) {
332
+ return;
333
+ }
334
+ }
335
+ callbackFn === null || callbackFn === void 0 ? void 0 : callbackFn();
336
+ };
310
337
  var handleClickOutSide = function handleClickOutSide(e) {
311
338
  e.stopImmediatePropagation();
312
339
  e.stopPropagation();
313
340
  e.preventDefault();
314
341
  if (props.quickClose) {
315
- ctx.emit('close');
316
- ctx.emit('quick-close');
317
- ctx.emit('quickClose');
342
+ handleBeforeClose(function () {
343
+ ctx.emit('close');
344
+ ctx.emit('quick-close');
345
+ ctx.emit('quickClose');
346
+ });
318
347
  }
319
348
  };
320
349
  return {
@@ -95,6 +95,7 @@
95
95
  }
96
96
  .bk-modal-wrapper .bk-modal-body {
97
97
  height: 100%;
98
+ width: 100%;
98
99
  background: #fff;
99
100
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
100
101
  }
@@ -73,6 +73,7 @@
73
73
 
74
74
  .@{bk-prefix}-modal-body {
75
75
  height: 100%;
76
+ width: 100%;
76
77
  background: #fff;
77
78
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
78
79
  }
@@ -221,6 +221,7 @@
221
221
  }
222
222
  .bk-modal-wrapper .bk-modal-body {
223
223
  height: 100%;
224
+ width: 100%;
224
225
  background: #fff;
225
226
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
226
227
  }
@@ -1809,6 +1809,9 @@ var showMask = function showMask(options) {
1809
1809
  referenceParent: activeModal
1810
1810
  }));
1811
1811
  }
1812
+ var mask = options.mask,
1813
+ backgroundColor = options.backgroundColor;
1814
+ mask === null || mask === void 0 ? void 0 : mask.style.setProperty('background-color', backgroundColor);
1812
1815
  loopSetMaskStyle(activeModal, options.showMask);
1813
1816
  activeModal = options.el;
1814
1817
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkui-vue",
3
- "version": "0.0.2-modal-refactor.2",
3
+ "version": "0.0.2-modal-refactor.4",
4
4
  "workspaces": {
5
5
  "packages": [
6
6
  "packages/!(**.bak)*",