@para-ui/core 4.0.0-rc.4 → 4.0.0-rc.5
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/AutoBox/index.js +72 -85
- package/AutoTips/index.js +72 -95
- package/Badge/index.js +17 -16
- package/Breadcrumbs/index.js +57 -73
- package/Button/index.js +89 -117
- package/ButtonGroup/index.js +30 -33
- package/Carousel/index.js +29 -33
- package/Cascader/index.js +7 -9
- package/Checkbox/index.js +28 -35
- package/CheckboxGroup/index.js +43 -58
- package/Collapse/index.js +52 -49
- package/CollapseBox/index.js +65 -70
- package/CollapseLayout/index.js +106 -101
- package/ColorPicker/index.js +3 -3
- package/ComboSelect/index.js +242 -330
- package/Container/index.js +17 -21
- package/CopyText/index.js +50 -83
- package/DatePicker/index.js +22 -27
- package/Descriptions/index.js +50 -59
- package/Desktop/index.js +161 -180
- package/DragVerify/index.js +77 -113
- package/Drawer/index.js +80 -95
- package/Dropdown/index.js +3 -3
- package/DynamicMultiBox/index.js +219 -224
- package/DynamicMultiBox/interface.d.ts +7 -0
- package/Empty/index.js +26 -28
- package/Form/index.js +66 -74
- package/FormItem/index.js +14 -15
- package/FunctionModal/index.js +7 -14
- package/GlobalContext/index.js +17 -20
- package/Help/index.js +9 -12
- package/HelperText/index.js +11 -11
- package/InputLang/index.js +104 -124
- package/InputNumber/index.js +62 -81
- package/Label/index.js +19 -21
- package/Loading/index.js +11 -10
- package/Menu/index.js +302 -371
- package/Message/index.js +104 -113
- package/Modal/index.js +122 -148
- package/MultiBox/index.d.ts +5 -0
- package/MultiBox/index.js +111 -115
- package/Notification/index.js +105 -103
- package/OperateBtn/index.d.ts +3 -0
- package/OperateBtn/index.js +77 -107
- package/PageHeader/index.js +327 -406
- package/Pagination/index.js +107 -137
- package/ParauiProvider/index.js +20 -22
- package/PasswordRules/index.js +36 -40
- package/PopConfirm/index.js +60 -77
- package/Popover/index.js +12 -12
- package/Progress/index.js +72 -74
- package/Querying/index.js +22 -23
- package/README.md +2 -0
- package/Radio/index.js +27 -34
- package/RadioGroup/index.js +38 -52
- package/Search/index.js +34 -43
- package/Select/index.js +281 -345
- package/SelectInput/index.js +8 -13
- package/Selector/index.js +905 -796
- package/SelectorPicker/index.js +111 -133
- package/SingleBox/index.d.ts +5 -0
- package/SingleBox/index.js +92 -88
- package/Slider/index.js +46 -57
- package/Status/index.js +14 -13
- package/Stepper/index.js +25 -26
- package/Styles/theme.scss +9 -9
- package/Switch/index.js +32 -35
- package/Table/index.js +767 -963
- package/Tabs/index.js +102 -102
- package/Tag/index.js +115 -162
- package/TextEditor/index.js +81 -103
- package/TextField/index.js +142 -183
- package/TimePicker/index.js +27 -28
- package/Timeline/index.js +67 -58
- package/Title/index.js +32 -34
- package/ToggleButton/index.js +53 -52
- package/Tooltip/index.js +79 -82
- package/Transfer/index.js +159 -201
- package/Tree/index.js +7 -12
- package/Upload/index.js +523 -758
- package/Upload/interface.d.ts +2 -0
- package/_verture/{constant-0d9802f7.js → constant-5317fc89.js} +2 -2
- package/_verture/{index-5a7e2438.js → index-0ced30f7.js} +1127 -1079
- package/_verture/{index-024bbc9b.js → index-775ad32d.js} +29 -25
- package/_verture/{index-05f7bf11.js → index-c568f272.js} +2 -2
- package/_verture/index-da9097d3.js +239 -0
- package/_verture/{index-9331b116.js → index-ef1235fb.js} +125 -134
- package/_verture/{index-b1f80962.js → index-f186b5e8.js} +314 -398
- package/_verture/intl-f2f27722.js +69 -0
- package/_verture/{modalContext-736ff215.js → modalContext-5df08980.js} +36 -64
- package/_verture/{slicedToArray-a8206399.js → slicedToArray-8223a2ef.js} +15 -2
- package/_verture/{useFormatMessage-703f8b20.js → useFormatMessage-eb13cf56.js} +5 -4
- package/_verture/{useGlobalProps-1b846a65.js → useGlobalProps-1e416658.js} +4 -3
- package/_verture/{usePopupContainer-87febeb9.js → usePopupContainer-635f66f4.js} +16 -15
- package/_verture/{util-7e1fb1e2.js → util-82646c4f.js} +5 -4
- package/_verture/{utils-418da0a4.js → utils-46e99c9a.js} +34 -25
- package/index.js +21 -22
- package/locale/index.js +6 -6
- package/package.json +1 -1
- package/umd/AutoBox.js +9 -8
- package/umd/AutoTips.js +9 -8
- package/umd/Badge.js +1 -1
- package/umd/Breadcrumbs.js +9 -8
- package/umd/Button.js +9 -8
- package/umd/ButtonGroup.js +9 -8
- package/umd/Carousel.js +5 -5
- package/umd/Cascader.js +9 -8
- package/umd/Checkbox.js +9 -8
- package/umd/CheckboxGroup.js +9 -8
- package/umd/Collapse.js +8 -7
- package/umd/CollapseBox.js +1 -1
- package/umd/CollapseLayout.js +4 -4
- package/umd/ColorPicker.js +1 -1
- package/umd/ComboSelect.js +9 -8
- package/umd/Container.js +1 -1
- package/umd/CopyText.js +9 -8
- package/umd/DatePicker.js +9 -8
- package/umd/Descriptions.js +9 -8
- package/umd/Desktop.js +9 -8
- package/umd/DragVerify.js +4 -4
- package/umd/Drawer.js +9 -8
- package/umd/Dropdown.js +6 -5
- package/umd/DynamicMultiBox.js +11 -10
- package/umd/Empty.js +1 -1
- package/umd/Form.js +9 -8
- package/umd/FormItem.js +9 -8
- package/umd/FunctionModal.js +9 -8
- package/umd/GlobalContext.js +1 -1
- package/umd/Help.js +9 -8
- package/umd/HelperText.js +1 -1
- package/umd/InputLang.js +9 -8
- package/umd/InputNumber.js +9 -8
- package/umd/Label.js +9 -8
- package/umd/Loading.js +4 -4
- package/umd/Menu.js +4 -4
- package/umd/Message.js +4 -4
- package/umd/Modal.js +9 -8
- package/umd/MultiBox.js +9 -8
- package/umd/Notification.js +8 -7
- package/umd/OperateBtn.js +9 -8
- package/umd/PageHeader.js +9 -8
- package/umd/Pagination.js +9 -8
- package/umd/ParauiProvider.js +1 -1
- package/umd/PasswordRules.js +4 -4
- package/umd/PopConfirm.js +9 -8
- package/umd/Popover.js +9 -8
- package/umd/Progress.js +5 -5
- package/umd/Querying.js +1 -1
- package/umd/Radio.js +9 -8
- package/umd/RadioGroup.js +9 -8
- package/umd/Search.js +9 -8
- package/umd/Select.js +9 -8
- package/umd/SelectInput.js +9 -8
- package/umd/Selector.js +9 -8
- package/umd/SelectorPicker.js +9 -8
- package/umd/SingleBox.js +9 -8
- package/umd/Slider.js +6 -5
- package/umd/Status.js +4 -4
- package/umd/Stepper.js +9 -8
- package/umd/Switch.js +9 -8
- package/umd/Table.js +9 -8
- package/umd/Tabs.js +9 -8
- package/umd/Tag.js +9 -8
- package/umd/TextEditor.js +22 -21
- package/umd/TextField.js +9 -8
- package/umd/TimePicker.js +9 -8
- package/umd/Timeline.js +1 -1
- package/umd/Title.js +9 -8
- package/umd/ToggleButton.js +9 -8
- package/umd/Tooltip.js +9 -8
- package/umd/Transfer.js +10 -9
- package/umd/Tree.js +9 -8
- package/umd/Upload.js +10 -9
- package/umd/locale.js +1 -1
- package/_verture/index-232d890b.js +0 -327
- package/_verture/index-e9007d6a.js +0 -236
- package/_verture/intl-5c1ec055.js +0 -81
- package/_verture/toConsumableArray-8f4c9589.js +0 -19
- package/_verture/unsupportedIterableToArray-cb478f24.js +0 -16
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { SwatchesPicker as SwatchesPicker$1, CompactPicker as CompactPicker$1, ChromePicker as ChromePicker$1, SketchPicker as SketchPicker$1 } from 'react-color';
|
|
3
3
|
import clsx from 'clsx';
|
|
4
|
-
import { $ as $prefixCls } from './constant-
|
|
4
|
+
import { $ as $prefixCls } from './constant-5317fc89.js';
|
|
5
5
|
import { s as styleInject } from './style-inject.es-300983ab.js';
|
|
6
6
|
import { useRef } from 'react';
|
|
7
7
|
|
|
8
8
|
var css_248z$4 = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-swatches-picker .swatches-picker {\n box-shadow: 0px 2px 8px 0px #eaecf1 !important;\n}\n.paraui-v4-swatches-picker .swatches-picker > div > div {\n box-shadow: unset;\n}\n.paraui-v4-swatches-picker > div > div > div > div > div > div {\n margin-right: 8px !important;\n}";
|
|
9
9
|
styleInject(css_248z$4);
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
className =
|
|
11
|
+
const SwatchesPicker = props => {
|
|
12
|
+
const {
|
|
13
|
+
className = ''
|
|
14
|
+
} = props;
|
|
14
15
|
return jsx("div", Object.assign({
|
|
15
16
|
className: clsx("".concat($prefixCls, "-swatches-picker"), className)
|
|
16
17
|
}, {
|
|
@@ -38,9 +39,10 @@ var colorCardSketchList = colorCardList.map(function (color) {
|
|
|
38
39
|
var css_248z$3 = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-compact-picker > div > div {\n box-shadow: unset !important;\n}\n.paraui-v4-compact-picker .compact-picker {\n width: 220px !important;\n box-shadow: 0px 2px 8px 0px #eaecf1 !important;\n padding-top: 10px !important;\n padding-left: 10px !important;\n padding-right: 6px !important;\n}\n.paraui-v4-compact-picker .compact-picker > div > span > div {\n width: 14px !important;\n height: 14px !important;\n margin-right: 4px !important;\n margin-bottom: 4px !important;\n box-shadow: unset !important;\n border: 1px solid rgba(29, 33, 38, 0.4);\n border-radius: 2px !important;\n}\n.paraui-v4-compact-picker .compact-picker > div > span > div > div {\n inset: 4px !important;\n background: rgb(255, 255, 255) !important;\n}\n.paraui-v4-compact-picker .compact-picker > div > span > div[title=\"#FFFFFF\"] > div {\n background: rgb(0, 0, 0) !important;\n}\n.paraui-v4-compact-picker .compact-picker > div:nth-child(2) > div:nth-child(1) {\n top: 4px !important;\n left: 0px !important;\n height: 12px !important;\n width: 12px !important;\n}\n.paraui-v4-compact-picker .compact-picker > div:nth-child(2) > div > label {\n color: rgb(92, 101, 115) !important;\n}";
|
|
39
40
|
styleInject(css_248z$3);
|
|
40
41
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
className =
|
|
42
|
+
const CompactPicker = props => {
|
|
43
|
+
const {
|
|
44
|
+
className = ''
|
|
45
|
+
} = props;
|
|
44
46
|
return jsx("div", Object.assign({
|
|
45
47
|
className: clsx("".concat($prefixCls, "-compact-picker"), className)
|
|
46
48
|
}, {
|
|
@@ -61,9 +63,10 @@ var CompactPicker = function CompactPicker(props) {
|
|
|
61
63
|
var css_248z$2 = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-chrome-picker .chrome-picker > div > div > div > div > div > div > div > div {\n margin-top: 1px !important;\n width: 4px !important;\n border-radius: 1px !important;\n height: 8px !important;\n box-shadow: rgba(0, 0, 0, 0.6) 0px 0px 2px !important;\n background: rgb(255, 255, 255) !important;\n transform: translateX(-2px) !important;\n}\n.paraui-v4-chrome-picker .chrome-picker > div:nth-child(1) > div > div > div > div {\n width: 10px !important;\n height: 10px !important;\n transform: translate(-5px, -5px) !important;\n}";
|
|
62
64
|
styleInject(css_248z$2);
|
|
63
65
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
className =
|
|
66
|
+
const ChromePicker = props => {
|
|
67
|
+
const {
|
|
68
|
+
className = ''
|
|
69
|
+
} = props;
|
|
67
70
|
return jsx("div", Object.assign({
|
|
68
71
|
className: clsx("".concat($prefixCls, "-chrome-picker"), className)
|
|
69
72
|
}, {
|
|
@@ -86,23 +89,24 @@ var ChromePicker = function ChromePicker(props) {
|
|
|
86
89
|
var css_248z$1 = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-sketch-picker {\n width: 236px;\n box-sizing: border-box;\n padding: 10px 10px 6px;\n background: #ffffff;\n border-radius: 4px;\n box-shadow: 0px 2px 8px 0px #eaecf1;\n}\n.paraui-v4-sketch-picker .sketch-picker > div > div > span > div {\n position: relative !important;\n width: 16px !important;\n height: 16px !important;\n border: 1px solid rgba(29, 33, 38, 0.4) !important;\n border-radius: 2px !important;\n box-shadow: unset !important;\n box-sizing: border-box !important;\n}\n.paraui-v4-sketch-picker .sketch-picker > div:nth-child(1) > div > div > div > div {\n box-shadow: rgb(255, 255, 255) 0px 0px 0px 1px inset !important;\n width: 10px !important;\n height: 10px !important;\n transform: translate(-5px, -5px) !important;\n}\n.paraui-v4-sketch-picker .sketch-picker > div:nth-child(3) > div > div > input {\n box-shadow: unset !important;\n border: 1px solid #d4dae3 !important;\n border-radius: 2px !important;\n color: rgb(29, 33, 38) !important;\n}\n.paraui-v4-sketch-picker .sketch-picker > div:nth-child(4) {\n margin: 0 !important;\n padding: 0 !important;\n padding-top: 10px !important;\n margin-right: -4px !important;\n}\n.paraui-v4-sketch-picker .sketch-picker > div:nth-child(4) > div {\n margin: 0px 4px 4px 0px !important;\n}\n.paraui-v4-sketch-picker .sketch-picker > div > div > span > div.active::after {\n content: \"\";\n position: absolute;\n border-radius: 50%;\n inset: 4px;\n background: rgb(255, 255, 255);\n}\n.paraui-v4-sketch-picker .sketch-picker > div > div > span > div[title=\"#FFFFFF\"]::after {\n background: rgb(0, 0, 0) !important;\n}\n.paraui-v4-sketch-picker .square {\n width: 16px;\n height: 16px;\n background: #ffffff;\n border: 1px solid rgba(29, 33, 38, 0.4);\n border-radius: 2px;\n position: relative;\n overflow: hidden;\n cursor: pointer;\n user-select: none;\n}\n.paraui-v4-sketch-picker .square::before {\n width: 24px;\n content: \"\";\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%) rotate(-45deg);\n height: 1px;\n background-color: #a4a6a8;\n}";
|
|
87
90
|
styleInject(css_248z$1);
|
|
88
91
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
className =
|
|
92
|
+
const SketchPicker = props => {
|
|
93
|
+
const {
|
|
94
|
+
onChange,
|
|
95
|
+
clear,
|
|
96
|
+
onClear,
|
|
97
|
+
className = ''
|
|
98
|
+
} = props;
|
|
95
99
|
// 容器节点
|
|
96
|
-
|
|
97
|
-
|
|
100
|
+
const wrapperRef = useRef(null);
|
|
101
|
+
const onPickerChange = (color, event) => {
|
|
98
102
|
var _a, _b, _c, _d;
|
|
99
|
-
|
|
103
|
+
const hex = (_a = color === null || color === void 0 ? void 0 : color.hex) === null || _a === void 0 ? void 0 : _a.toUpperCase();
|
|
100
104
|
// 找到标签上title属性为hex的元素
|
|
101
|
-
|
|
105
|
+
const el = document.querySelector("div[title=\"".concat(hex, "\"]"));
|
|
102
106
|
// 现移除el父元素下所有的active类名
|
|
103
|
-
|
|
107
|
+
const parents = (_c = (_b = el === null || el === void 0 ? void 0 : el.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement) === null || _c === void 0 ? void 0 : _c.parentElement;
|
|
104
108
|
if (parents) {
|
|
105
|
-
(_d = parents.querySelectorAll(".active")) === null || _d === void 0 ? void 0 : _d.forEach(
|
|
109
|
+
(_d = parents.querySelectorAll(".active")) === null || _d === void 0 ? void 0 : _d.forEach(item => {
|
|
106
110
|
item.classList.remove("active");
|
|
107
111
|
});
|
|
108
112
|
}
|
|
@@ -110,11 +114,11 @@ var SketchPicker = function SketchPicker(props) {
|
|
|
110
114
|
el === null || el === void 0 ? void 0 : el.classList.add("active");
|
|
111
115
|
onChange && onChange(color, event);
|
|
112
116
|
};
|
|
113
|
-
|
|
117
|
+
const onClearCallback = () => {
|
|
114
118
|
var _a;
|
|
115
|
-
|
|
119
|
+
const elList = (_a = wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".active");
|
|
116
120
|
if (elList === null || elList === void 0 ? void 0 : elList.length) {
|
|
117
|
-
elList.forEach(
|
|
121
|
+
elList.forEach(item => {
|
|
118
122
|
item.classList.remove("active");
|
|
119
123
|
});
|
|
120
124
|
}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
import RcDropdown from 'rc-dropdown';
|
|
4
|
+
import { a as $rcPrefixCls, $ as $prefixCls } from './constant-5317fc89.js';
|
|
5
|
+
import { g as getNearestOverflowAncestor, u as usePopupContainer } from './usePopupContainer-635f66f4.js';
|
|
6
|
+
import clsx from 'clsx';
|
|
7
|
+
import dayjs from 'dayjs';
|
|
8
|
+
import { UUID } from '@paraview/lib';
|
|
9
|
+
import { s as styleInject } from './style-inject.es-300983ab.js';
|
|
10
|
+
|
|
11
|
+
function getPlaceholder(picker, locale, customizePlaceholder) {
|
|
12
|
+
if (customizePlaceholder !== undefined) {
|
|
13
|
+
return customizePlaceholder;
|
|
14
|
+
}
|
|
15
|
+
if (picker === 'year' && locale.lang.yearPlaceholder) {
|
|
16
|
+
return locale.lang.yearPlaceholder;
|
|
17
|
+
}
|
|
18
|
+
if (picker === 'quarter' && locale.lang.quarterPlaceholder) {
|
|
19
|
+
return locale.lang.quarterPlaceholder;
|
|
20
|
+
}
|
|
21
|
+
if (picker === 'month' && locale.lang.monthPlaceholder) {
|
|
22
|
+
return locale.lang.monthPlaceholder;
|
|
23
|
+
}
|
|
24
|
+
if (picker === 'week' && locale.lang.weekPlaceholder) {
|
|
25
|
+
return locale.lang.weekPlaceholder;
|
|
26
|
+
}
|
|
27
|
+
if (picker === 'time' && locale.timePickerLocale.placeholder) {
|
|
28
|
+
return locale.timePickerLocale.placeholder;
|
|
29
|
+
}
|
|
30
|
+
return locale.lang.placeholder;
|
|
31
|
+
}
|
|
32
|
+
function getRangePlaceholder(picker, locale, customizePlaceholder) {
|
|
33
|
+
if (customizePlaceholder !== undefined) {
|
|
34
|
+
return customizePlaceholder;
|
|
35
|
+
}
|
|
36
|
+
if (picker === 'year' && locale.lang.yearPlaceholder) {
|
|
37
|
+
return locale.lang.rangeYearPlaceholder;
|
|
38
|
+
}
|
|
39
|
+
if (picker === 'month' && locale.lang.monthPlaceholder) {
|
|
40
|
+
return locale.lang.rangeMonthPlaceholder;
|
|
41
|
+
}
|
|
42
|
+
if (picker === 'week' && locale.lang.weekPlaceholder) {
|
|
43
|
+
return locale.lang.rangeWeekPlaceholder;
|
|
44
|
+
}
|
|
45
|
+
if (picker === 'time' && locale.timePickerLocale.placeholder) {
|
|
46
|
+
return locale.timePickerLocale.rangePlaceholder;
|
|
47
|
+
}
|
|
48
|
+
return locale.lang.rangePlaceholder;
|
|
49
|
+
}
|
|
50
|
+
function toArray(list) {
|
|
51
|
+
if (!list) {
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
return Array.isArray(list) ? list : [list];
|
|
55
|
+
}
|
|
56
|
+
function getTimeProps(props) {
|
|
57
|
+
const {
|
|
58
|
+
format,
|
|
59
|
+
picker,
|
|
60
|
+
showHour,
|
|
61
|
+
showMinute,
|
|
62
|
+
showSecond,
|
|
63
|
+
use12Hours
|
|
64
|
+
} = props;
|
|
65
|
+
const firstFormat = toArray(format)[0];
|
|
66
|
+
const showTimeObj = Object.assign({}, props);
|
|
67
|
+
if (firstFormat && typeof firstFormat === 'string') {
|
|
68
|
+
if (!firstFormat.includes('s') && showSecond === undefined) {
|
|
69
|
+
showTimeObj.showSecond = false;
|
|
70
|
+
}
|
|
71
|
+
if (!firstFormat.includes('m') && showMinute === undefined) {
|
|
72
|
+
showTimeObj.showMinute = false;
|
|
73
|
+
}
|
|
74
|
+
if (!firstFormat.includes('H') && !firstFormat.includes('h') && !firstFormat.includes('K') && !firstFormat.includes('k') && showHour === undefined) {
|
|
75
|
+
showTimeObj.showHour = false;
|
|
76
|
+
}
|
|
77
|
+
if ((firstFormat.includes('a') || firstFormat.includes('A')) && use12Hours === undefined) {
|
|
78
|
+
showTimeObj.use12Hours = true;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (picker === 'time') {
|
|
82
|
+
return showTimeObj;
|
|
83
|
+
}
|
|
84
|
+
if (typeof firstFormat === 'function') {
|
|
85
|
+
// format of showTime should use default when format is custom format function
|
|
86
|
+
delete showTimeObj.format;
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
showTime: showTimeObj
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function formatPickerValue(value, format) {
|
|
93
|
+
if (typeof value === 'string') {
|
|
94
|
+
if (value === '') return null;
|
|
95
|
+
if (format) {
|
|
96
|
+
if (dayjs(value, format).isValid()) return dayjs(value, format);
|
|
97
|
+
} else {
|
|
98
|
+
if (dayjs(value).isValid()) return dayjs(value);
|
|
99
|
+
}
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
return value;
|
|
103
|
+
}
|
|
104
|
+
function mergedLocale(locale, defaultLocale) {
|
|
105
|
+
const lang = Object.assign(Object.assign({}, defaultLocale === null || defaultLocale === void 0 ? void 0 : defaultLocale.lang), (locale === null || locale === void 0 ? void 0 : locale.lang) || {});
|
|
106
|
+
const timePickerLocale = Object.assign(Object.assign({}, defaultLocale === null || defaultLocale === void 0 ? void 0 : defaultLocale.timePickerLocale), (locale === null || locale === void 0 ? void 0 : locale.timeLang) || {});
|
|
107
|
+
return {
|
|
108
|
+
lang,
|
|
109
|
+
timePickerLocale
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
//最近的绝对定位滚动元素
|
|
113
|
+
function getNearestAbsoluteAncestor(node, pos) {
|
|
114
|
+
var _a;
|
|
115
|
+
const parentNode = node.parentNode;
|
|
116
|
+
const nodeName = ((_a = parentNode === null || parentNode === void 0 ? void 0 : parentNode.nodeName) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || '';
|
|
117
|
+
if (['html', 'body', '#document'].includes(nodeName)) {
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
if (parentNode instanceof window.HTMLElement) {
|
|
121
|
+
const {
|
|
122
|
+
position
|
|
123
|
+
} = window.getComputedStyle(parentNode);
|
|
124
|
+
if (new RegExp(pos).test(position)) return parentNode;
|
|
125
|
+
}
|
|
126
|
+
return getNearestAbsoluteAncestor(parentNode, pos);
|
|
127
|
+
}
|
|
128
|
+
//下拉弹出框关闭时,隔离dom污染
|
|
129
|
+
function isolationPopupPollution(open, uniqueCls) {
|
|
130
|
+
const popupDom = document.getElementsByClassName("".concat(uniqueCls))[0];
|
|
131
|
+
if (!popupDom) return;
|
|
132
|
+
const position = open ? 'fixed' : 'absolute';
|
|
133
|
+
const nearestDom = getNearestAbsoluteAncestor(popupDom, position);
|
|
134
|
+
if (!nearestDom) return;
|
|
135
|
+
if (!open) {
|
|
136
|
+
//关闭弹框
|
|
137
|
+
nearestDom.style.position = 'fixed';
|
|
138
|
+
nearestDom.style.left = '-9999px';
|
|
139
|
+
nearestDom.style.top = '-9999px';
|
|
140
|
+
} else {
|
|
141
|
+
//打开弹框
|
|
142
|
+
nearestDom.style.position = 'absolute';
|
|
143
|
+
nearestDom.style.left = '0';
|
|
144
|
+
nearestDom.style.top = '0';
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
//浮层渲染容器
|
|
148
|
+
function getPopupContainer(triggerNode, customizeContainer, wrapRef) {
|
|
149
|
+
var _a, _b;
|
|
150
|
+
let container;
|
|
151
|
+
if (!customizeContainer) {
|
|
152
|
+
const rootNode = wrapRef.current;
|
|
153
|
+
if (rootNode) {
|
|
154
|
+
container = getNearestOverflowAncestor(rootNode);
|
|
155
|
+
const scrollHeight = container.scrollHeight;
|
|
156
|
+
const clientHeight = container.clientHeight;
|
|
157
|
+
if (scrollHeight <= clientHeight) {
|
|
158
|
+
container = document.body;
|
|
159
|
+
}
|
|
160
|
+
} else {
|
|
161
|
+
container = document.body;
|
|
162
|
+
}
|
|
163
|
+
const nodeName = (_a = container.nodeName) === null || _a === void 0 ? void 0 : _a.toLowerCase();
|
|
164
|
+
if (nodeName !== 'body') {
|
|
165
|
+
if (((_b = window.getComputedStyle(container)) === null || _b === void 0 ? void 0 : _b.position) === 'static') {
|
|
166
|
+
container.style.position = 'relative';
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
} else {
|
|
170
|
+
container = customizeContainer(triggerNode) || document.body;
|
|
171
|
+
}
|
|
172
|
+
return container;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
var css_248z = "@charset \"UTF-8\";\n/**\n* @author Hanz\n* @date 2022/5/27 上午9:58\n* @description\n*/\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-dropdown {\n position: absolute;\n left: -9999px;\n top: -9999px;\n z-index: 1500;\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5715;\n background-color: rgb(255, 255, 255);\n box-shadow: 1px 1px 10px 2px rgba(212, 218, 227, 0.4);\n border-radius: 4px;\n border: 1px solid rgba(212, 218, 227, 0.4);\n}\n.paraui-v4-dropdown.component-dropdown-hidden {\n display: none;\n}\n.paraui-v4-dropdown .component-dropdown-arrow {\n position: absolute;\n border-width: 4px;\n border-color: transparent;\n box-shadow: 1px 1px 10px 2px rgba(212, 218, 227, 0.4);\n border-style: solid;\n transform: rotate(45deg);\n}\n.paraui-v4-dropdown.component-dropdown-show-arrow.component-dropdown-placement-top, .paraui-v4-dropdown.component-dropdown-show-arrow.component-dropdown-placement-topLeft, .paraui-v4-dropdown.component-dropdown-show-arrow.component-dropdown-placement-topRight {\n padding-bottom: 6px;\n}\n.paraui-v4-dropdown.component-dropdown-show-arrow.component-dropdown-placement-bottom, .paraui-v4-dropdown.component-dropdown-show-arrow.component-dropdown-placement-bottomLeft, .paraui-v4-dropdown.component-dropdown-show-arrow.component-dropdown-placement-bottomRight {\n padding-top: 6px;\n}\n.paraui-v4-dropdown.component-dropdown-placement-top .component-dropdown-arrow, .paraui-v4-dropdown.component-dropdown-placement-topLeft .component-dropdown-arrow, .paraui-v4-dropdown.component-dropdown-placement-topRight .component-dropdown-arrow {\n bottom: 4px;\n border-top-color: rgb(255, 255, 255);\n}\n.paraui-v4-dropdown.component-dropdown-placement-top .component-dropdown-arrow {\n left: 50%;\n}\n.paraui-v4-dropdown.component-dropdown-placement-topLeft .component-dropdown-arrow {\n left: 15%;\n}\n.paraui-v4-dropdown.component-dropdown-placement-topRight .component-dropdown-arrow {\n right: 15%;\n}\n.paraui-v4-dropdown.component-dropdown-placement-bottom .component-dropdown-arrow, .paraui-v4-dropdown.component-dropdown-placement-bottomLeft .component-dropdown-arrow, .paraui-v4-dropdown.component-dropdown-placement-bottomRight .component-dropdown-arrow {\n top: 4px;\n border-bottom-color: rgb(255, 255, 255);\n}\n.paraui-v4-dropdown.component-dropdown-placement-bottom .component-dropdown-arrow {\n left: 50%;\n}\n.paraui-v4-dropdown.component-dropdown-placement-bottomLeft .component-dropdown-arrow {\n left: 15%;\n}\n.paraui-v4-dropdown.component-dropdown-placement-bottomRight .component-dropdown-arrow {\n right: 15%;\n}\n\n.component-dropdown-slide-up-enter,\n.component-dropdown-slide-up-appear {\n animation-duration: 0.3s;\n animation-fill-mode: both;\n transform-origin: 0 0;\n display: block !important;\n opacity: 0;\n animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1);\n animation-play-state: paused;\n}\n\n.component-dropdown-slide-up-leave {\n animation-duration: 0.3s;\n animation-fill-mode: both;\n transform-origin: 0 0;\n display: block !important;\n opacity: 1;\n animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.34);\n animation-play-state: paused;\n}\n\n.component-dropdown-slide-up-enter.component-dropdown-slide-up-enter-active.component-dropdown-placement-bottomLeft,\n.component-dropdown-slide-up-appear.component-dropdown-slide-up-appear-active.component-dropdown-placement-bottomLeft,\n.component-dropdown-slide-up-enter.component-dropdown-slide-up-enter-active.component-dropdown-placement-bottomCenter,\n.component-dropdown-slide-up-appear.component-dropdown-slide-up-appear-active.component-dropdown-placement-bottomCenter,\n.component-dropdown-slide-up-enter.component-dropdown-slide-up-enter-active.component-dropdown-placement-bottomRight,\n.component-dropdown-slide-up-appear.component-dropdown-slide-up-appear-active.component-dropdown-placement-bottomRight {\n animation-name: componentDropdownSlideUpIn;\n animation-play-state: running;\n}\n\n.component-dropdown-slide-up-enter.component-dropdown-slide-up-enter-active.component-dropdown-placement-topLeft,\n.component-dropdown-slide-up-appear.component-dropdown-slide-up-appear-active.component-dropdown-placement-topLeft,\n.component-dropdown-slide-up-enter.component-dropdown-slide-up-enter-active.component-dropdown-placement-topCenter,\n.component-dropdown-slide-up-appear.component-dropdown-slide-up-appear-active.component-dropdown-placement-topCenter,\n.component-dropdown-slide-up-enter.component-dropdown-slide-up-enter-active.component-dropdown-placement-topRight,\n.component-dropdown-slide-up-appear.component-dropdown-slide-up-appear-active.component-dropdown-placement-topRight {\n animation-name: componentDropdownSlideDownIn;\n animation-play-state: running;\n}\n\n.component-dropdown-slide-up-leave.component-dropdown-slide-up-leave-active.component-dropdown-placement-bottomLeft,\n.component-dropdown-slide-up-leave.component-dropdown-slide-up-leave-active.component-dropdown-placement-bottomCenter,\n.component-dropdown-slide-up-leave.component-dropdown-slide-up-leave-active.component-dropdown-placement-bottomRight {\n animation-name: componentDropdownSlideUpOut;\n animation-play-state: running;\n}\n\n.component-dropdown-slide-up-leave.component-dropdown-slide-up-leave-active.component-dropdown-placement-topLeft,\n.component-dropdown-slide-up-leave.component-dropdown-slide-up-leave-active.component-dropdown-placement-topCenter,\n.component-dropdown-slide-up-leave.component-dropdown-slide-up-leave-active.component-dropdown-placement-topRight {\n animation-name: componentDropdownSlideDownOut;\n animation-play-state: running;\n}\n\n@keyframes componentDropdownSlideUpIn {\n 0% {\n opacity: 0;\n transform-origin: 0% 0%;\n transform: scaleY(0);\n }\n 100% {\n opacity: 1;\n transform-origin: 0% 0%;\n transform: scaleY(1);\n }\n}\n@keyframes componentDropdownSlideUpOut {\n 0% {\n opacity: 1;\n transform-origin: 0% 0%;\n transform: scaleY(1);\n }\n 100% {\n opacity: 0;\n transform-origin: 0% 0%;\n transform: scaleY(0);\n }\n}\n@keyframes componentDropdownSlideDownIn {\n 0% {\n opacity: 0;\n transform-origin: 0% 100%;\n transform: scaleY(0);\n }\n 100% {\n opacity: 1;\n transform-origin: 0% 100%;\n transform: scaleY(1);\n }\n}\n@keyframes componentDropdownSlideDownOut {\n 0% {\n opacity: 1;\n transform-origin: 0% 100%;\n transform: scaleY(1);\n }\n 100% {\n opacity: 0;\n transform-origin: 0% 100%;\n transform: scaleY(0);\n }\n}";
|
|
176
|
+
styleInject(css_248z);
|
|
177
|
+
|
|
178
|
+
//dropdown偏移量
|
|
179
|
+
const getDropdownOffset = place => {
|
|
180
|
+
var _a, _b;
|
|
181
|
+
const offsetMap = {
|
|
182
|
+
top: {
|
|
183
|
+
offset: [0, -8]
|
|
184
|
+
},
|
|
185
|
+
topLeft: {
|
|
186
|
+
offset: [0, -8]
|
|
187
|
+
},
|
|
188
|
+
topRight: {
|
|
189
|
+
offset: [0, -8]
|
|
190
|
+
},
|
|
191
|
+
bottom: {
|
|
192
|
+
offset: [0, 8]
|
|
193
|
+
},
|
|
194
|
+
bottomRight: {
|
|
195
|
+
offset: [0, 8]
|
|
196
|
+
},
|
|
197
|
+
bottomLeft: {
|
|
198
|
+
offset: [0, 8]
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
return (_b = (_a = offsetMap[place]) === null || _a === void 0 ? void 0 : _a.offset) !== null && _b !== void 0 ? _b : [0, 0];
|
|
202
|
+
};
|
|
203
|
+
//dropdown
|
|
204
|
+
const Dropdown = props => {
|
|
205
|
+
const wrapRef = React__default.useRef();
|
|
206
|
+
const getPopupContainer = usePopupContainer(wrapRef, props.getPopupContainer);
|
|
207
|
+
const uuidRef = React__default.useRef(UUID());
|
|
208
|
+
//visible change
|
|
209
|
+
const handleVisibleChange = visible => {
|
|
210
|
+
var _a;
|
|
211
|
+
(_a = props.onVisibleChange) === null || _a === void 0 ? void 0 : _a.call(props, visible);
|
|
212
|
+
if (props.isolationPopupOnHide) {
|
|
213
|
+
//关闭时隔离dom污染
|
|
214
|
+
isolationPopupPollution(visible, uuidRef.current);
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
return jsx(RcDropdown, Object.assign({}, props, {
|
|
218
|
+
prefixCls: "".concat($rcPrefixCls, "-dropdown"),
|
|
219
|
+
overlayClassName: clsx("".concat($prefixCls, "-dropdown"), props.overlayClassName, uuidRef.current),
|
|
220
|
+
animation: "slide-up",
|
|
221
|
+
align: {
|
|
222
|
+
offset: getDropdownOffset(props.placement)
|
|
223
|
+
},
|
|
224
|
+
getPopupContainer: getPopupContainer,
|
|
225
|
+
ref: wrapRef,
|
|
226
|
+
onVisibleChange: handleVisibleChange
|
|
227
|
+
}, {
|
|
228
|
+
children: props.children
|
|
229
|
+
}));
|
|
230
|
+
};
|
|
231
|
+
Dropdown.defaultProps = {
|
|
232
|
+
mouseEnterDelay: 0.15,
|
|
233
|
+
mouseLeaveDelay: 0.1,
|
|
234
|
+
trigger: ['hover'],
|
|
235
|
+
placement: 'bottomRight',
|
|
236
|
+
isolationPopupOnHide: false
|
|
237
|
+
};
|
|
238
|
+
|
|
239
|
+
export { Dropdown as D, getPlaceholder as a, getPopupContainer as b, getRangePlaceholder as c, formatPickerValue as f, getTimeProps as g, isolationPopupPollution as i, mergedLocale as m };
|