@kdcloudjs/kdesign 1.7.1 → 1.7.2
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 +17 -0
- package/dist/kdesign-complete.less +5 -1
- package/dist/kdesign.css +9 -3
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +1571 -1785
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +2 -2
- package/dist/kdesign.min.js +5 -5
- package/dist/kdesign.min.js.map +1 -1
- package/es/color-picker/constant/colorTypes.js +3 -3
- package/es/color-picker/style/index.css +8 -2
- package/es/color-picker/style/index.less +5 -1
- package/es/dropdown/dropdown.js +2 -7
- package/es/dropdown/menu.js +3 -0
- package/es/modal/modal.d.ts +7 -1
- package/es/modal/modal.js +29 -5
- package/lib/color-picker/constant/colorTypes.js +3 -3
- package/lib/color-picker/style/index.css +8 -2
- package/lib/color-picker/style/index.less +5 -1
- package/lib/dropdown/dropdown.js +2 -7
- package/lib/dropdown/menu.js +3 -0
- package/lib/modal/modal.d.ts +7 -1
- package/lib/modal/modal.js +31 -7
- package/package.json +1 -1
|
@@ -3,11 +3,11 @@ export var colorTypes = [{
|
|
|
3
3
|
value: '#b2b2b2'
|
|
4
4
|
}, {
|
|
5
5
|
type: 'HSB',
|
|
6
|
-
value: 'hsb(0,0%,70%)'
|
|
6
|
+
value: 'hsb(0, 0%, 70%)'
|
|
7
7
|
}, {
|
|
8
8
|
type: 'RGB',
|
|
9
|
-
value: 'rgb(178,178,178)'
|
|
9
|
+
value: 'rgb(178, 178, 178)'
|
|
10
10
|
}, {
|
|
11
11
|
type: 'HSL',
|
|
12
|
-
value: 'hsl(0,0%,70%)'
|
|
12
|
+
value: 'hsl(0, 0%, 70%)'
|
|
13
13
|
}];
|
|
@@ -254,8 +254,14 @@
|
|
|
254
254
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
255
255
|
border-radius: 2px;
|
|
256
256
|
}
|
|
257
|
-
.kd-color-picker-pop .kd-color-picker-panel-input .kd-select .kd-select-dropdown {
|
|
258
|
-
|
|
257
|
+
.kd-color-picker-pop .kd-color-picker-panel-input .kd-select .kd-select-dropdown .kd-select-item-option {
|
|
258
|
+
display: -webkit-box;
|
|
259
|
+
display: -ms-flexbox;
|
|
260
|
+
display: flex;
|
|
261
|
+
-webkit-box-pack: center;
|
|
262
|
+
-ms-flex-pack: center;
|
|
263
|
+
justify-content: center;
|
|
264
|
+
min-width: unset;
|
|
259
265
|
}
|
|
260
266
|
.kd-color-picker-pop .kd-color-picker-panel-input .kd-select-bordered {
|
|
261
267
|
border-radius: 2px;
|
package/es/dropdown/dropdown.js
CHANGED
|
@@ -16,7 +16,7 @@ var findItem = function findItem(element) {
|
|
|
16
16
|
}
|
|
17
17
|
};
|
|
18
18
|
var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
19
|
-
var _a, _b, _c
|
|
19
|
+
var _a, _b, _c;
|
|
20
20
|
var _React$useContext = React.useContext(ConfigContext),
|
|
21
21
|
getPrefixCls = _React$useContext.getPrefixCls,
|
|
22
22
|
pkgPrefixCls = _React$useContext.prefixCls,
|
|
@@ -74,12 +74,7 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
74
74
|
onClick: handleItemClick,
|
|
75
75
|
selectable: menuSelectable
|
|
76
76
|
});
|
|
77
|
-
var
|
|
78
|
-
var menuElement = isMenu ? Array.isArray((_q = menu.props) === null || _q === void 0 ? void 0 : _q.children) || isItem ? cloneObj : /*#__PURE__*/React.createElement("ul", {
|
|
79
|
-
className: "".concat(prefixCls, "-menu"),
|
|
80
|
-
onClick: handleItemClick,
|
|
81
|
-
role: "menu"
|
|
82
|
-
}, menu.props.children) : /*#__PURE__*/React.createElement("ul", {
|
|
77
|
+
var menuElement = isMenu ? cloneObj : /*#__PURE__*/React.createElement("ul", {
|
|
83
78
|
className: "".concat(prefixCls, "-menu"),
|
|
84
79
|
onClick: handleItemClick,
|
|
85
80
|
role: "menu"
|
package/es/dropdown/menu.js
CHANGED
|
@@ -30,6 +30,9 @@ var Menu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
30
30
|
// className前缀
|
|
31
31
|
var prefixCls = getPrefixCls(pkgPrefixCls, 'dropdown-menu', customPrefixcls);
|
|
32
32
|
var cloneItem = function cloneItem(item, index) {
|
|
33
|
+
if (! /*#__PURE__*/React.isValidElement(item)) {
|
|
34
|
+
return item;
|
|
35
|
+
}
|
|
33
36
|
var key = item.key || index;
|
|
34
37
|
var selected = selectable && String(selectedKey) === String(key);
|
|
35
38
|
return /*#__PURE__*/React.cloneElement(item, {
|
package/es/modal/modal.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { ReactNode, CSSProperties } from 'react';
|
|
2
2
|
import { IButtonProps } from '../button/button';
|
|
3
|
+
import type { DraggableBounds, DraggableEventHandler } from 'react-draggable';
|
|
3
4
|
declare type CSSSelector = string;
|
|
4
5
|
export declare const ConfirmModalTypes: string[];
|
|
5
6
|
export declare const ModalTypes: ["confirm", "warning", "error", "normal"];
|
|
@@ -8,6 +9,7 @@ export interface IModalProps {
|
|
|
8
9
|
body?: ReactNode;
|
|
9
10
|
bodyClassName?: string;
|
|
10
11
|
bodyStyle?: CSSProperties;
|
|
12
|
+
style?: CSSProperties;
|
|
11
13
|
cancelButtonProps?: IButtonProps;
|
|
12
14
|
cancelText?: ReactNode;
|
|
13
15
|
className?: string;
|
|
@@ -40,6 +42,10 @@ export interface IModalProps {
|
|
|
40
42
|
visible?: boolean;
|
|
41
43
|
width?: number;
|
|
42
44
|
showline?: boolean;
|
|
45
|
+
bounds?: DraggableBounds | string | false;
|
|
46
|
+
onDragStart?: DraggableEventHandler;
|
|
47
|
+
onDrag?: DraggableEventHandler;
|
|
48
|
+
onDragStop?: DraggableEventHandler;
|
|
43
49
|
}
|
|
44
|
-
declare const Modal: React.
|
|
50
|
+
declare const Modal: React.ForwardRefExoticComponent<IModalProps & React.RefAttributes<unknown>>;
|
|
45
51
|
export default Modal;
|
package/es/modal/modal.js
CHANGED
|
@@ -1,8 +1,17 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
|
|
2
2
|
import _extends from "@babel/runtime-corejs3/helpers/extends";
|
|
3
3
|
import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
|
|
4
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
|
4
5
|
import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
|
|
5
6
|
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
|
7
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
8
|
+
var t = {};
|
|
9
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
10
|
+
if (s != null && typeof _Object$getOwnPropertySymbols === "function") for (var i = 0, p = _Object$getOwnPropertySymbols(s); i < p.length; i++) {
|
|
11
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
6
15
|
import React, { useContext, useEffect, useState, useRef, useCallback } from 'react';
|
|
7
16
|
import { Icon } from '../index';
|
|
8
17
|
import Button from '../button/button';
|
|
@@ -17,7 +26,7 @@ import { getLangMsg } from '../locale/locale';
|
|
|
17
26
|
import { useHideDocumentScrollBar } from '../_utils/hooks';
|
|
18
27
|
export var ConfirmModalTypes = ['confirm', 'normal'];
|
|
19
28
|
export var ModalTypes = tuple('confirm', 'warning', 'error', 'normal');
|
|
20
|
-
var
|
|
29
|
+
var InternalModal = function InternalModal(props, ref) {
|
|
21
30
|
var _classNames3, _classNames4, _context2, _context3;
|
|
22
31
|
var _useContext = useContext(ConfigContext),
|
|
23
32
|
getPrefixCls = _useContext.getPrefixCls,
|
|
@@ -55,14 +64,20 @@ var Modal = function Modal(props) {
|
|
|
55
64
|
type = modalProps.type,
|
|
56
65
|
visible = modalProps.visible,
|
|
57
66
|
width = modalProps.width,
|
|
58
|
-
showline = modalProps.showline
|
|
67
|
+
showline = modalProps.showline,
|
|
68
|
+
onDragStart = modalProps.onDragStart,
|
|
69
|
+
onDrag = modalProps.onDrag,
|
|
70
|
+
onDragStop = modalProps.onDragStop,
|
|
71
|
+
bounds = modalProps.bounds,
|
|
72
|
+
others = __rest(modalProps, ["body", "bodyClassName", "bodyStyle", "cancelButtonProps", "cancelText", "className", "closable", "closeIcon", "destroyOnClose", "draggable", "focusTriggerAfterClose", "footer", "footerClassName", "footerStyle", "footerBtnOrder", "getContainer", "height", "keyboard", "mask", "maskClosable", "maskStyle", "okButtonProps", "okText", "onCancel", "onOk", "prefixCls", "title", "titleIcon", "type", "visible", "width", "showline", "onDragStart", "onDrag", "onDragStop", "bounds"]);
|
|
59
73
|
var isForceController = visible !== undefined;
|
|
60
74
|
var _useState = useState(isForceController ? visible : true),
|
|
61
75
|
_useState2 = _slicedToArray(_useState, 2),
|
|
62
76
|
innerVisible = _useState2[0],
|
|
63
77
|
setInnerVisible = _useState2[1]; // 需要根据visible来判断,不能一开始为true再去设置false
|
|
64
78
|
var previousActiveElement = useRef(null);
|
|
65
|
-
var
|
|
79
|
+
var innerRef = useRef(null);
|
|
80
|
+
var containerRef = ref || innerRef;
|
|
66
81
|
var modalPrefixCls = getPrefixCls(prefixCls, 'modal', customPrefixcls);
|
|
67
82
|
devWarning(ModalTypes.indexOf(type) === -1, 'modal', "cannot found modal type '".concat(type, "'"));
|
|
68
83
|
var modalContainer = typeof getContainer === 'function' ? getContainer() : getContainer;
|
|
@@ -207,6 +222,10 @@ var Modal = function Modal(props) {
|
|
|
207
222
|
}, footer || generatorFooterByType(type)));
|
|
208
223
|
// 没有容器应该是不用居中的
|
|
209
224
|
// 但仍可拖拽
|
|
225
|
+
var handleDragStart = function handleDragStart(e, data) {
|
|
226
|
+
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
|
227
|
+
onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(e, data);
|
|
228
|
+
};
|
|
210
229
|
var defaultPosition = modalContainer ? {
|
|
211
230
|
x: -(width / 2),
|
|
212
231
|
y: -(height / 2)
|
|
@@ -214,9 +233,9 @@ var Modal = function Modal(props) {
|
|
|
214
233
|
x: 0,
|
|
215
234
|
y: 0
|
|
216
235
|
};
|
|
217
|
-
var comp = /*#__PURE__*/React.createElement("div", {
|
|
236
|
+
var comp = /*#__PURE__*/React.createElement("div", _extends({
|
|
218
237
|
className: modalClasses
|
|
219
|
-
}, mask && /*#__PURE__*/React.createElement("div", {
|
|
238
|
+
}, others), mask && /*#__PURE__*/React.createElement("div", {
|
|
220
239
|
onClick: handleMaskClick,
|
|
221
240
|
className: "".concat(modalPrefixCls, "-mask"),
|
|
222
241
|
style: maskStyle
|
|
@@ -224,11 +243,16 @@ var Modal = function Modal(props) {
|
|
|
224
243
|
defaultPosition: defaultPosition,
|
|
225
244
|
handle: ".".concat(headerClass),
|
|
226
245
|
disabled: !draggable,
|
|
246
|
+
onStart: handleDragStart,
|
|
247
|
+
onDrag: onDrag,
|
|
248
|
+
onStop: onDragStop,
|
|
249
|
+
bounds: bounds,
|
|
227
250
|
cancel: _concatInstanceProperty(_context3 = ".".concat(modalPrefixCls, "-title-container, .")).call(_context3, modalPrefixCls, "-close-icon")
|
|
228
251
|
}, container));
|
|
229
252
|
var renderComp = ((isForceController ? visible : innerVisible) || !destroyOnClose) && comp;
|
|
230
253
|
if (modalContainer && renderComp) return /*#__PURE__*/ReactDOM.createPortal(renderComp, modalContainer);
|
|
231
254
|
return renderComp || null;
|
|
232
255
|
};
|
|
256
|
+
var Modal = /*#__PURE__*/React.forwardRef(InternalModal);
|
|
233
257
|
Modal.displayName = 'Modal';
|
|
234
258
|
export default Modal;
|
|
@@ -9,12 +9,12 @@ var colorTypes = [{
|
|
|
9
9
|
value: '#b2b2b2'
|
|
10
10
|
}, {
|
|
11
11
|
type: 'HSB',
|
|
12
|
-
value: 'hsb(0,0%,70%)'
|
|
12
|
+
value: 'hsb(0, 0%, 70%)'
|
|
13
13
|
}, {
|
|
14
14
|
type: 'RGB',
|
|
15
|
-
value: 'rgb(178,178,178)'
|
|
15
|
+
value: 'rgb(178, 178, 178)'
|
|
16
16
|
}, {
|
|
17
17
|
type: 'HSL',
|
|
18
|
-
value: 'hsl(0,0%,70%)'
|
|
18
|
+
value: 'hsl(0, 0%, 70%)'
|
|
19
19
|
}];
|
|
20
20
|
exports.colorTypes = colorTypes;
|
|
@@ -254,8 +254,14 @@
|
|
|
254
254
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
255
255
|
border-radius: 2px;
|
|
256
256
|
}
|
|
257
|
-
.kd-color-picker-pop .kd-color-picker-panel-input .kd-select .kd-select-dropdown {
|
|
258
|
-
|
|
257
|
+
.kd-color-picker-pop .kd-color-picker-panel-input .kd-select .kd-select-dropdown .kd-select-item-option {
|
|
258
|
+
display: -webkit-box;
|
|
259
|
+
display: -ms-flexbox;
|
|
260
|
+
display: flex;
|
|
261
|
+
-webkit-box-pack: center;
|
|
262
|
+
-ms-flex-pack: center;
|
|
263
|
+
justify-content: center;
|
|
264
|
+
min-width: unset;
|
|
259
265
|
}
|
|
260
266
|
.kd-color-picker-pop .kd-color-picker-panel-input .kd-select-bordered {
|
|
261
267
|
border-radius: 2px;
|
package/lib/dropdown/dropdown.js
CHANGED
|
@@ -28,7 +28,7 @@ var findItem = function findItem(element) {
|
|
|
28
28
|
}
|
|
29
29
|
};
|
|
30
30
|
var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
31
|
-
var _a, _b, _c
|
|
31
|
+
var _a, _b, _c;
|
|
32
32
|
var _React$useContext = React.useContext(_ConfigContext.default),
|
|
33
33
|
getPrefixCls = _React$useContext.getPrefixCls,
|
|
34
34
|
pkgPrefixCls = _React$useContext.prefixCls,
|
|
@@ -86,12 +86,7 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
86
86
|
onClick: handleItemClick,
|
|
87
87
|
selectable: menuSelectable
|
|
88
88
|
});
|
|
89
|
-
var
|
|
90
|
-
var menuElement = isMenu ? Array.isArray((_q = menu.props) === null || _q === void 0 ? void 0 : _q.children) || isItem ? cloneObj : /*#__PURE__*/React.createElement("ul", {
|
|
91
|
-
className: "".concat(prefixCls, "-menu"),
|
|
92
|
-
onClick: handleItemClick,
|
|
93
|
-
role: "menu"
|
|
94
|
-
}, menu.props.children) : /*#__PURE__*/React.createElement("ul", {
|
|
89
|
+
var menuElement = isMenu ? cloneObj : /*#__PURE__*/React.createElement("ul", {
|
|
95
90
|
className: "".concat(prefixCls, "-menu"),
|
|
96
91
|
onClick: handleItemClick,
|
|
97
92
|
role: "menu"
|
package/lib/dropdown/menu.js
CHANGED
|
@@ -42,6 +42,9 @@ var Menu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
42
42
|
// className前缀
|
|
43
43
|
var prefixCls = getPrefixCls(pkgPrefixCls, 'dropdown-menu', customPrefixcls);
|
|
44
44
|
var cloneItem = function cloneItem(item, index) {
|
|
45
|
+
if (! /*#__PURE__*/React.isValidElement(item)) {
|
|
46
|
+
return item;
|
|
47
|
+
}
|
|
45
48
|
var key = item.key || index;
|
|
46
49
|
var selected = selectable && String(selectedKey) === String(key);
|
|
47
50
|
return /*#__PURE__*/React.cloneElement(item, {
|
package/lib/modal/modal.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { ReactNode, CSSProperties } from 'react';
|
|
2
2
|
import { IButtonProps } from '../button/button';
|
|
3
|
+
import type { DraggableBounds, DraggableEventHandler } from 'react-draggable';
|
|
3
4
|
declare type CSSSelector = string;
|
|
4
5
|
export declare const ConfirmModalTypes: string[];
|
|
5
6
|
export declare const ModalTypes: ["confirm", "warning", "error", "normal"];
|
|
@@ -8,6 +9,7 @@ export interface IModalProps {
|
|
|
8
9
|
body?: ReactNode;
|
|
9
10
|
bodyClassName?: string;
|
|
10
11
|
bodyStyle?: CSSProperties;
|
|
12
|
+
style?: CSSProperties;
|
|
11
13
|
cancelButtonProps?: IButtonProps;
|
|
12
14
|
cancelText?: ReactNode;
|
|
13
15
|
className?: string;
|
|
@@ -40,6 +42,10 @@ export interface IModalProps {
|
|
|
40
42
|
visible?: boolean;
|
|
41
43
|
width?: number;
|
|
42
44
|
showline?: boolean;
|
|
45
|
+
bounds?: DraggableBounds | string | false;
|
|
46
|
+
onDragStart?: DraggableEventHandler;
|
|
47
|
+
onDrag?: DraggableEventHandler;
|
|
48
|
+
onDragStop?: DraggableEventHandler;
|
|
43
49
|
}
|
|
44
|
-
declare const Modal: React.
|
|
50
|
+
declare const Modal: React.ForwardRefExoticComponent<IModalProps & React.RefAttributes<unknown>>;
|
|
45
51
|
export default Modal;
|
package/lib/modal/modal.js
CHANGED
|
@@ -8,11 +8,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
10
|
exports.default = exports.ModalTypes = exports.ConfirmModalTypes = void 0;
|
|
11
|
-
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
12
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
13
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
14
12
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
15
13
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
14
|
+
var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
|
|
15
|
+
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
16
|
+
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
16
17
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
18
|
var _index = require("../index");
|
|
18
19
|
var _button = _interopRequireDefault(require("../button/button"));
|
|
@@ -27,11 +28,19 @@ var _locale = require("../locale/locale");
|
|
|
27
28
|
var _hooks = require("../_utils/hooks");
|
|
28
29
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
30
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
+
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
32
|
+
var t = {};
|
|
33
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
34
|
+
if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
|
|
35
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
36
|
+
}
|
|
37
|
+
return t;
|
|
38
|
+
};
|
|
30
39
|
var ConfirmModalTypes = ['confirm', 'normal'];
|
|
31
40
|
exports.ConfirmModalTypes = ConfirmModalTypes;
|
|
32
41
|
var ModalTypes = (0, _type.tuple)('confirm', 'warning', 'error', 'normal');
|
|
33
42
|
exports.ModalTypes = ModalTypes;
|
|
34
|
-
var
|
|
43
|
+
var InternalModal = function InternalModal(props, ref) {
|
|
35
44
|
var _classNames3, _classNames4, _context2, _context3;
|
|
36
45
|
var _useContext = (0, _react.useContext)(_ConfigContext.default),
|
|
37
46
|
getPrefixCls = _useContext.getPrefixCls,
|
|
@@ -69,14 +78,20 @@ var Modal = function Modal(props) {
|
|
|
69
78
|
type = modalProps.type,
|
|
70
79
|
visible = modalProps.visible,
|
|
71
80
|
width = modalProps.width,
|
|
72
|
-
showline = modalProps.showline
|
|
81
|
+
showline = modalProps.showline,
|
|
82
|
+
onDragStart = modalProps.onDragStart,
|
|
83
|
+
onDrag = modalProps.onDrag,
|
|
84
|
+
onDragStop = modalProps.onDragStop,
|
|
85
|
+
bounds = modalProps.bounds,
|
|
86
|
+
others = __rest(modalProps, ["body", "bodyClassName", "bodyStyle", "cancelButtonProps", "cancelText", "className", "closable", "closeIcon", "destroyOnClose", "draggable", "focusTriggerAfterClose", "footer", "footerClassName", "footerStyle", "footerBtnOrder", "getContainer", "height", "keyboard", "mask", "maskClosable", "maskStyle", "okButtonProps", "okText", "onCancel", "onOk", "prefixCls", "title", "titleIcon", "type", "visible", "width", "showline", "onDragStart", "onDrag", "onDragStop", "bounds"]);
|
|
73
87
|
var isForceController = visible !== undefined;
|
|
74
88
|
var _useState = (0, _react.useState)(isForceController ? visible : true),
|
|
75
89
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
76
90
|
innerVisible = _useState2[0],
|
|
77
91
|
setInnerVisible = _useState2[1]; // 需要根据visible来判断,不能一开始为true再去设置false
|
|
78
92
|
var previousActiveElement = (0, _react.useRef)(null);
|
|
79
|
-
var
|
|
93
|
+
var innerRef = (0, _react.useRef)(null);
|
|
94
|
+
var containerRef = ref || innerRef;
|
|
80
95
|
var modalPrefixCls = getPrefixCls(prefixCls, 'modal', customPrefixcls);
|
|
81
96
|
(0, _devwarning.default)(ModalTypes.indexOf(type) === -1, 'modal', "cannot found modal type '".concat(type, "'"));
|
|
82
97
|
var modalContainer = typeof getContainer === 'function' ? getContainer() : getContainer;
|
|
@@ -221,6 +236,10 @@ var Modal = function Modal(props) {
|
|
|
221
236
|
}, footer || generatorFooterByType(type)));
|
|
222
237
|
// 没有容器应该是不用居中的
|
|
223
238
|
// 但仍可拖拽
|
|
239
|
+
var handleDragStart = function handleDragStart(e, data) {
|
|
240
|
+
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
|
241
|
+
onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(e, data);
|
|
242
|
+
};
|
|
224
243
|
var defaultPosition = modalContainer ? {
|
|
225
244
|
x: -(width / 2),
|
|
226
245
|
y: -(height / 2)
|
|
@@ -228,9 +247,9 @@ var Modal = function Modal(props) {
|
|
|
228
247
|
x: 0,
|
|
229
248
|
y: 0
|
|
230
249
|
};
|
|
231
|
-
var comp = /*#__PURE__*/_react.default.createElement("div", {
|
|
250
|
+
var comp = /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
232
251
|
className: modalClasses
|
|
233
|
-
}, mask && /*#__PURE__*/_react.default.createElement("div", {
|
|
252
|
+
}, others), mask && /*#__PURE__*/_react.default.createElement("div", {
|
|
234
253
|
onClick: handleMaskClick,
|
|
235
254
|
className: "".concat(modalPrefixCls, "-mask"),
|
|
236
255
|
style: maskStyle
|
|
@@ -238,12 +257,17 @@ var Modal = function Modal(props) {
|
|
|
238
257
|
defaultPosition: defaultPosition,
|
|
239
258
|
handle: ".".concat(headerClass),
|
|
240
259
|
disabled: !draggable,
|
|
260
|
+
onStart: handleDragStart,
|
|
261
|
+
onDrag: onDrag,
|
|
262
|
+
onStop: onDragStop,
|
|
263
|
+
bounds: bounds,
|
|
241
264
|
cancel: (0, _concat.default)(_context3 = ".".concat(modalPrefixCls, "-title-container, .")).call(_context3, modalPrefixCls, "-close-icon")
|
|
242
265
|
}, container));
|
|
243
266
|
var renderComp = ((isForceController ? visible : innerVisible) || !destroyOnClose) && comp;
|
|
244
267
|
if (modalContainer && renderComp) return /*#__PURE__*/_reactDom.default.createPortal(renderComp, modalContainer);
|
|
245
268
|
return renderComp || null;
|
|
246
269
|
};
|
|
270
|
+
var Modal = /*#__PURE__*/_react.default.forwardRef(InternalModal);
|
|
247
271
|
Modal.displayName = 'Modal';
|
|
248
272
|
var _default = Modal;
|
|
249
273
|
exports.default = _default;
|