@para-ui/core 4.0.61 → 4.0.62

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.
Files changed (73) hide show
  1. package/Anchor/index.js +2 -1
  2. package/Argv/index.js +3 -2
  3. package/AutoButton/index.js +3 -2
  4. package/AutoTips/index.js +248 -7
  5. package/Breadcrumbs/index.js +2 -1
  6. package/Button/index.js +3 -2
  7. package/ButtonGroup/index.js +3 -2
  8. package/Card/index.js +33 -23
  9. package/Cascader/index.js +4 -3
  10. package/ComboSelect/index.js +4 -3
  11. package/CopyText/index.js +2 -1
  12. package/CycleSelector/index.js +3 -2
  13. package/DatePicker/index.js +6 -5
  14. package/Descriptions/index.js +3 -2
  15. package/Desktop/index.js +6 -5
  16. package/Drawer/index.js +3 -2
  17. package/DynamicMultiBox/index.js +4 -3
  18. package/Form/index.js +5 -4
  19. package/FormItem/index.js +5 -4
  20. package/FunctionModal/index.js +5 -4
  21. package/InputCode/index.js +3 -2
  22. package/InputLang/index.d.ts +2 -0
  23. package/InputLang/index.js +12 -3
  24. package/Menu/index.js +2 -1
  25. package/Modal/index.js +3 -2
  26. package/MultiBox/index.js +6 -5
  27. package/OperateBtn/index.js +3 -2
  28. package/PageHeader/index.js +3 -2
  29. package/Pagination/index.js +3 -2
  30. package/PopConfirm/index.js +3 -2
  31. package/PopMenu/index.js +2 -1
  32. package/QuickReply/index.js +3 -2
  33. package/README.md +6 -0
  34. package/Result/index.js +2 -1
  35. package/Search/index.js +2 -1
  36. package/Select/index.js +2 -1
  37. package/SelectInput/index.js +2 -1
  38. package/Selector/index.js +2 -1
  39. package/SelectorPicker/index.js +2 -1
  40. package/SingleBox/index.js +6 -5
  41. package/Stepper/index.js +2 -1
  42. package/Table/index.js +3 -2
  43. package/Tabs/index.js +6 -5
  44. package/Tag/index.js +2 -1
  45. package/TextField/index.js +2 -1
  46. package/TimePicker/index.js +6 -5
  47. package/Title/index.js +2 -1
  48. package/ToggleButton/index.js +3 -2
  49. package/Transfer/index.js +3 -2
  50. package/Tree/index.js +4 -3
  51. package/Upload/index.js +3 -2
  52. package/Utils/Hooks/useResizeObserver.d.ts +2 -0
  53. package/_verture/{index-7d115f38.js → index-0163a7b0.js} +2 -2
  54. package/_verture/{index-2055d357.js → index-09404080.js} +1 -1
  55. package/_verture/{index-3f811a6c.js → index-78f0f0e7.js} +1 -1
  56. package/_verture/{index-6bbcdc7f.js → index-98ae8a30.js} +1 -1
  57. package/_verture/useResizeObserver-edda059a.js +69 -0
  58. package/index.js +7 -6
  59. package/package.json +1 -1
  60. package/umd/AutoButton.js +1 -1
  61. package/umd/AutoTips.js +1 -1
  62. package/umd/Breadcrumbs.js +1 -1
  63. package/umd/Card.js +1 -1
  64. package/umd/ComboSelect.js +3 -3
  65. package/umd/DynamicMultiBox.js +1 -1
  66. package/umd/Form.js +1 -1
  67. package/umd/FormItem.js +1 -1
  68. package/umd/InputLang.js +1 -1
  69. package/umd/Selector.js +1 -1
  70. package/umd/SelectorPicker.js +1 -1
  71. package/umd/Table.js +1 -1
  72. package/_verture/index-f62daef9.js +0 -298
  73. /package/_verture/{modalContext-15114682.js → modalContext-e3beaf4b.js} +0 -0
package/Anchor/index.js CHANGED
@@ -5,7 +5,7 @@ import clsx from 'clsx';
5
5
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
6
6
  import Down from '@para-ui/icons/Down';
7
7
  import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
8
- import { A as AutoTips } from '../_verture/index-f62daef9.js';
8
+ import AutoTips from '../AutoTips/index.js';
9
9
  import ToRight from '@para-ui/icons/ToRight';
10
10
  import ToLeft from '@para-ui/icons/ToLeft';
11
11
  import PreviewOpen from '@para-ui/icons/PreviewOpen';
@@ -16,6 +16,7 @@ import '../Tooltip/index.js';
16
16
  import 'rc-tooltip';
17
17
  import 'rc-tooltip/lib/placements';
18
18
  import '@para-ui/icons/Forbid';
19
+ import '../_verture/useResizeObserver-edda059a.js';
19
20
  import '../TextField/index.js';
20
21
  import '../Label/index.js';
21
22
  import '../Help/index.js';
package/Argv/index.js CHANGED
@@ -5,7 +5,7 @@ import clsx from 'clsx';
5
5
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
6
6
  import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
7
7
  import { UUID, debounce } from '@paraview/lib';
8
- import { B as Button } from '../_verture/index-6bbcdc7f.js';
8
+ import { B as Button } from '../_verture/index-98ae8a30.js';
9
9
  import { TextField } from '../TextField/index.js';
10
10
  import { Modal } from '../Modal/index.js';
11
11
  import { Message } from '../Message/index.js';
@@ -28,7 +28,8 @@ import '../_verture/index-bde7aabe.js';
28
28
  import 'rc-dropdown';
29
29
  import '../_verture/usePopupContainer-635f66f4.js';
30
30
  import 'dayjs';
31
- import '../_verture/index-f62daef9.js';
31
+ import '../AutoTips/index.js';
32
+ import '../_verture/useResizeObserver-edda059a.js';
32
33
  import '@para-ui/icons/CheckCircleF';
33
34
  import '@para-ui/icons/WarningCircle';
34
35
  import '@para-ui/icons/CloseCircleF';
@@ -1,14 +1,15 @@
1
1
  import { _ as __rest } from '../_verture/tslib.es6-55ed4bd2.js';
2
2
  import { jsxs, jsx } from 'react/jsx-runtime';
3
3
  import { useState, useRef, useEffect, Fragment } from 'react';
4
- import { B as Button, P as PopConfirm } from '../_verture/index-6bbcdc7f.js';
5
- import { u as useResizeObserver, A as AutoTips } from '../_verture/index-f62daef9.js';
4
+ import { B as Button, P as PopConfirm } from '../_verture/index-98ae8a30.js';
5
+ import AutoTips from '../AutoTips/index.js';
6
6
  import MoreVert from '@para-ui/icons/MoreVert';
7
7
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
8
8
  import { D as Dropdown } from '../_verture/index-bde7aabe.js';
9
9
  import { Tooltip } from '../Tooltip/index.js';
10
10
  import clsx from 'clsx';
11
11
  import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
12
+ import { u as useResizeObserver } from '../_verture/useResizeObserver-edda059a.js';
12
13
  import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
13
14
  import '@para-ui/icons/LoadingF';
14
15
  import '@para-ui/icons/Down';
package/AutoTips/index.js CHANGED
@@ -1,12 +1,253 @@
1
- import 'react/jsx-runtime';
2
- import 'react';
3
- import '../Tooltip/index.js';
4
- import '../_verture/constant-5317fc89.js';
5
- import '@paraview/lib';
6
- export { a as AutoTipsMultiline, A as default } from '../_verture/index-f62daef9.js';
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { useRef, useState, useEffect, useMemo } from 'react';
3
+ import { Tooltip } from '../Tooltip/index.js';
4
+ import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
5
+ import { isIE } from '@paraview/lib';
6
+ import { u as useResizeObserver } from '../_verture/useResizeObserver-edda059a.js';
7
+ import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
7
8
  import '../_verture/tslib.es6-55ed4bd2.js';
8
9
  import 'rc-tooltip';
9
10
  import 'rc-tooltip/lib/placements';
10
11
  import 'clsx';
11
12
  import '@para-ui/icons/Forbid';
12
- import '../_verture/style-inject.es-300983ab.js';
13
+
14
+ var css_248z$1 = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2021/11/1 20:28\n* @description 文字隐藏...\n*/\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-auto-tips-multiline {\n max-width: 100%;\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.paraui-v4-auto-tips-multiline > .auto-tips-multiline-content-box {\n position: relative;\n}\n.paraui-v4-auto-tips-multiline > .auto-tips-multiline-content-box > .auto-tips-multiline-content > .last-line {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.paraui-v4-auto-tips-multiline > .auto-tips-multiline-content-box > .hidden {\n opacity: 0;\n visibility: hidden;\n position: absolute;\n bottom: 0;\n left: 0;\n z-index: -100000;\n}\n.paraui-v4-auto-tips-multiline.paraui-v4-auto-tips-multiline-safari > .auto-tips-multiline-content-box > .auto-tips-multiline-content > .last-line::before {\n content: \"\";\n display: block;\n}\n\n.paraui-v4-auto-tips-multiline-tooltip .component-tooltip-inner {\n max-height: 80vh;\n overflow: auto;\n}";
15
+ styleInject(css_248z$1);
16
+
17
+ const AutoTipsMultiline = props => {
18
+ const {
19
+ children,
20
+ arrow = false,
21
+ placement = 'bottom-start',
22
+ tips = '',
23
+ className = '',
24
+ interactive = true,
25
+ tipMaxWidth,
26
+ line = 2,
27
+ refresh,
28
+ style
29
+ } = props;
30
+ const boxRef = useRef(null);
31
+ const singleWordRefs = useRef([]);
32
+ const [lineClamp, setLineClamp] = useState();
33
+ const constData = useRef({
34
+ line,
35
+ tips
36
+ });
37
+ constData.current.line = line;
38
+ constData.current.tips = tips;
39
+ const [tTips, setTTips] = useState('');
40
+ useResizeObserver({
41
+ dom: boxRef.current,
42
+ cb: () => calcLine()
43
+ });
44
+ useEffect(() => {
45
+ calcLine();
46
+ }, [children, refresh]);
47
+ // 计算行数
48
+ const calcLine = () => {
49
+ var _a;
50
+ if (!children) return;
51
+ const lineArr = [];
52
+ let showTooltip = false;
53
+ const boxRefWidth = ((_a = boxRef === null || boxRef === void 0 ? void 0 : boxRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0;
54
+ let addWidth = 0;
55
+ let linePos = 0;
56
+ for (let i = 0; i < singleWordRefs.current.length; i++) {
57
+ const dom = singleWordRefs.current[i];
58
+ const offsetWidth = dom.offsetWidth;
59
+ addWidth += offsetWidth;
60
+ // 累计宽度超出了一行宽度
61
+ if (addWidth > boxRefWidth) {
62
+ if (lineArr.length < constData.current.line - 1) {
63
+ lineArr.push(children.slice(linePos, i));
64
+ linePos = i;
65
+ addWidth = offsetWidth; // 重置宽度
66
+ // 最后一个字
67
+ if (i === singleWordRefs.current.length - 1) {
68
+ if (lineArr.length < constData.current.line) {
69
+ // 没超出行数
70
+ lineArr.push(children.slice(linePos, children.length));
71
+ } else {
72
+ showTooltip = true;
73
+ setTTips(constData.current.tips || children);
74
+ lineArr.push(children.slice(linePos, children.length));
75
+ }
76
+ }
77
+ } else {
78
+ // 超出
79
+ showTooltip = true;
80
+ setTTips(constData.current.tips || children);
81
+ lineArr.push(children.slice(linePos, children.length));
82
+ break;
83
+ }
84
+ } else {
85
+ // 未超过且是最后一个字符
86
+ if (i === singleWordRefs.current.length - 1) {
87
+ lineArr.push(children.slice(linePos, children.length));
88
+ }
89
+ }
90
+ }
91
+ setLineClamp({
92
+ lineArr,
93
+ showTooltip
94
+ });
95
+ };
96
+ /**
97
+ * 描述文字span包裹
98
+ */
99
+ const descriptionRender = useMemo(() => {
100
+ singleWordRefs.current = [];
101
+ return jsx("div", Object.assign({
102
+ className: 'hidden'
103
+ }, {
104
+ children: children === null || children === void 0 ? void 0 : children.split('').map((word, wIdx) => jsx("span", Object.assign({
105
+ ref: dom => dom && singleWordRefs.current.push(dom)
106
+ }, {
107
+ children: word
108
+ }), wIdx))
109
+ }));
110
+ }, [children]);
111
+ // 判断浏览器是否是safari
112
+ const isSafari = () => {
113
+ const userAgent = navigator.userAgent;
114
+ if (userAgent.indexOf('Safari') > -1) {
115
+ return true;
116
+ }
117
+ };
118
+ // 处理class
119
+ const handClass = () => {
120
+ let str = "".concat($prefixCls, "-auto-tips-multiline");
121
+ if (isSafari()) str += " ".concat($prefixCls, "-auto-tips-multiline-safari");
122
+ if (className) str += " ".concat(className);
123
+ return str;
124
+ };
125
+ return jsx("div", Object.assign({
126
+ ref: boxRef,
127
+ className: handClass(),
128
+ style: style
129
+ }, {
130
+ children: jsx(Tooltip, Object.assign({
131
+ arrow: arrow,
132
+ title: tTips,
133
+ placement: placement,
134
+ interactive: interactive,
135
+ boundariesElement: 'viewport',
136
+ overlayClassName: "".concat($prefixCls, "-auto-tips-multiline-tooltip")
137
+ }, {
138
+ children: jsxs("div", Object.assign({
139
+ className: "auto-tips-multiline-content-box"
140
+ }, {
141
+ children: [jsx("div", Object.assign({
142
+ className: 'auto-tips-multiline-content'
143
+ }, {
144
+ children: lineClamp === null || lineClamp === void 0 ? void 0 : lineClamp.lineArr.map((line, lIdx) => {
145
+ let str = 'line-text';
146
+ if (lIdx === lineClamp.lineArr.length - 1) str += ' last-line';
147
+ return jsx("div", Object.assign({
148
+ className: str
149
+ }, {
150
+ children: line
151
+ }), lIdx);
152
+ })
153
+ })), descriptionRender]
154
+ }))
155
+ }))
156
+ }));
157
+ };
158
+
159
+ var css_248z = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2021/11/1 20:28\n* @description 文字隐藏...\n*/\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-auto-tips {\n max-width: 100%;\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.paraui-v4-auto-tips > .auto-tips-content {\n display: inline;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.paraui-v4-auto-tips.paraui-v4-auto-tips-safari > .auto-tips-content::before {\n content: \"\";\n display: block;\n}\n\n.paraui-v4-auto-tips-tooltip .component-tooltip-inner {\n max-height: 80vh;\n overflow: auto;\n}";
160
+ styleInject(css_248z);
161
+
162
+ const AutoTips = props => {
163
+ const {
164
+ children,
165
+ arrow = false,
166
+ placement = 'bottom-start',
167
+ tips = '',
168
+ className = '',
169
+ beyondText = true,
170
+ interactive = true,
171
+ tipMaxWidth,
172
+ style
173
+ } = props;
174
+ const tipsElm = useRef();
175
+ const textElm = useRef();
176
+ const [tTips, setTTips] = useState('');
177
+ useEffect(() => {
178
+ setTTips(tips);
179
+ }, [tips]);
180
+ // 鼠标移入事件
181
+ const mouseHover = () => {
182
+ let val = '';
183
+ const tipsEle = tipsElm.current;
184
+ const tipsEleRect = tipsEle.getBoundingClientRect();
185
+ const textEleRect = textElm.current.getBoundingClientRect();
186
+ if (tipsElm.current) {
187
+ if (isIE()) {
188
+ if (tipsEleRect.width > textEleRect.width) {
189
+ if (tips) {
190
+ val = tips;
191
+ } else {
192
+ val = beyondText ? tipsEle.innerText : children;
193
+ }
194
+ }
195
+ } else {
196
+ // mac:safari,firefox,chrome
197
+ // windows: firefox,chrome
198
+ if (textEleRect.width > tipsEleRect.width) {
199
+ if (tips) {
200
+ val = tips;
201
+ } else {
202
+ val = beyondText ? tipsEle.innerText : children;
203
+ }
204
+ }
205
+ }
206
+ }
207
+ setTTips(val);
208
+ };
209
+ // 处理最大宽度
210
+ /*const handMaxWidth = () => {
211
+ if (tipMaxWidth) return tipMaxWidth;
212
+ return tipsElm && tipsElm.current ? tipsElm.current.offsetWidth : 0;
213
+ }*/
214
+ // 判断浏览器是否是safari
215
+ const isSafari = () => {
216
+ const userAgent = navigator.userAgent;
217
+ if (/^((?!chrome|android).)*safari/i.test(userAgent)) {
218
+ return true;
219
+ }
220
+ };
221
+ // 处理class
222
+ const handClass = () => {
223
+ let str = "".concat($prefixCls, "-auto-tips");
224
+ if (isSafari()) str += " ".concat($prefixCls, "-auto-tips-safari");
225
+ if (className) str += " ".concat(className);
226
+ return str;
227
+ };
228
+ return jsx(Tooltip, Object.assign({
229
+ arrow: arrow,
230
+ title: tTips,
231
+ placement: placement,
232
+ interactive: interactive,
233
+ boundariesElement: 'viewport',
234
+ overlayClassName: "".concat($prefixCls, "-auto-tips-tooltip"),
235
+ maxWidth: tipMaxWidth
236
+ }, {
237
+ children: jsx("div", Object.assign({
238
+ ref: tipsElm,
239
+ className: handClass(),
240
+ onMouseOver: mouseHover,
241
+ style: style
242
+ }, {
243
+ children: jsx("div", Object.assign({
244
+ className: "auto-tips-content",
245
+ ref: textElm
246
+ }, {
247
+ children: children
248
+ }))
249
+ }))
250
+ }));
251
+ };
252
+
253
+ export { AutoTipsMultiline, AutoTips as default };
@@ -1,11 +1,12 @@
1
1
  import { jsxs, jsx, Fragment as Fragment$1 } from 'react/jsx-runtime';
2
2
  import { useState, useRef, useEffect, Fragment } from 'react';
3
3
  import { Popover } from '../Popover/index.js';
4
- import { u as useResizeObserver, A as AutoTips } from '../_verture/index-f62daef9.js';
4
+ import AutoTips from '../AutoTips/index.js';
5
5
  import More from '@para-ui/icons/More';
6
6
  import Return from '@para-ui/icons/Return';
7
7
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
8
8
  import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
9
+ import { u as useResizeObserver } from '../_verture/useResizeObserver-edda059a.js';
9
10
  import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
10
11
  import '../_verture/tslib.es6-55ed4bd2.js';
11
12
  import '../Tooltip/index.js';
package/Button/index.js CHANGED
@@ -4,7 +4,7 @@ import 'react';
4
4
  import 'clsx';
5
5
  import '@para-ui/icons/LoadingF';
6
6
  import '../Tooltip/index.js';
7
- export { B as Button, B as default } from '../_verture/index-6bbcdc7f.js';
7
+ export { B as Button, B as default } from '../_verture/index-98ae8a30.js';
8
8
  import '../_verture/constant-5317fc89.js';
9
9
  import 'rc-tooltip';
10
10
  import 'rc-tooltip/lib/placements';
@@ -18,7 +18,8 @@ import 'dayjs';
18
18
  import '@paraview/lib';
19
19
  import '../_verture/useFormatMessage-1fc7c957.js';
20
20
  import '../_verture/index-ca413216.js';
21
- import '../_verture/index-f62daef9.js';
21
+ import '../AutoTips/index.js';
22
+ import '../_verture/useResizeObserver-edda059a.js';
22
23
  import '@para-ui/icons/CheckCircleF';
23
24
  import '@para-ui/icons/WarningCircle';
24
25
  import '@para-ui/icons/CloseCircleF';
@@ -1,6 +1,6 @@
1
1
  import { _ as __rest } from '../_verture/tslib.es6-55ed4bd2.js';
2
2
  import { jsx, jsxs } from 'react/jsx-runtime';
3
- import { B as Button } from '../_verture/index-6bbcdc7f.js';
3
+ import { B as Button } from '../_verture/index-98ae8a30.js';
4
4
  import clsx from 'clsx';
5
5
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
6
6
  import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
@@ -18,7 +18,8 @@ import 'dayjs';
18
18
  import '@paraview/lib';
19
19
  import '../_verture/useFormatMessage-1fc7c957.js';
20
20
  import '../_verture/index-ca413216.js';
21
- import '../_verture/index-f62daef9.js';
21
+ import '../AutoTips/index.js';
22
+ import '../_verture/useResizeObserver-edda059a.js';
22
23
  import '@para-ui/icons/CheckCircleF';
23
24
  import '@para-ui/icons/WarningCircle';
24
25
  import '@para-ui/icons/CloseCircleF';
package/Card/index.js CHANGED
@@ -4,6 +4,7 @@ import { useState, useRef, useEffect } from 'react';
4
4
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
5
5
  import clsx from 'clsx';
6
6
  import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
7
+ import { u as useResizeObserver } from '../_verture/useResizeObserver-edda059a.js';
7
8
  import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
8
9
  import '../_verture/index-ca413216.js';
9
10
  import '@paraview/lib';
@@ -23,7 +24,7 @@ var localeJson = {
23
24
  en
24
25
  };
25
26
 
26
- var css_248z = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-card {\n width: 100%;\n height: 100%;\n overflow: auto;\n}\n.paraui-v4-card > .card-list {\n display: flex;\n flex-wrap: wrap;\n}\n.paraui-v4-card > .card-list > .card-item {\n border-radius: 4px;\n overflow: auto;\n}\n.paraui-v4-card > .more {\n text-align: center;\n}\n.paraui-v4-card > .more > .more-content {\n font-size: 14px;\n text-align: center;\n color: rgb(161, 168, 179);\n display: inline-block;\n}\n.paraui-v4-card.paraui-v4-card-more > .more > .more-content {\n cursor: pointer;\n}\n.paraui-v4-card.paraui-v4-card-more > .more > .more-content:hover {\n color: rgb(46, 101, 230);\n}";
27
+ var css_248z = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-card {\n width: 100%;\n height: 100%;\n overflow: auto;\n}\n.paraui-v4-card > .card-list {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n}\n.paraui-v4-card > .card-list > .card-item {\n border-radius: 4px;\n overflow: auto;\n}\n.paraui-v4-card > .more {\n text-align: center;\n}\n.paraui-v4-card > .more > .more-content {\n font-size: 14px;\n text-align: center;\n color: rgb(161, 168, 179);\n display: inline-block;\n}\n.paraui-v4-card.paraui-v4-card-more > .more > .more-content {\n cursor: pointer;\n}\n.paraui-v4-card.paraui-v4-card-more > .more > .more-content:hover {\n color: rgb(46, 101, 230);\n}";
27
28
  styleInject(css_248z);
28
29
 
29
30
  const Card = props => {
@@ -46,22 +47,23 @@ const Card = props => {
46
47
  } = props;
47
48
  const intl = useFormatMessage('Card', localeJson);
48
49
  const [lineNumCom, setLineNumCom] = useState();
49
- //const [itemWidth, setItemWidth] = useState<string>('');
50
50
  const [loadingMore, setLoadingMore] = useState(false);
51
51
  const constData = useRef({});
52
52
  const refBox = useRef(null);
53
+ constData.current.onMore = onMore;
54
+ useResizeObserver({
55
+ dom: refBox.current,
56
+ cb: () => resize(),
57
+ timer: 0
58
+ });
53
59
  useEffect(() => {
54
- var _a, _b;
55
- window.removeEventListener('resize', resize);
56
- (_a = refBox.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', scroll);
57
- window.addEventListener('resize', resize);
58
- (_b = refBox.current) === null || _b === void 0 ? void 0 : _b.addEventListener('scroll', scroll);
60
+ var _a;
61
+ (_a = refBox.current) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', scroll);
59
62
  return () => {
60
63
  var _a;
61
- window.removeEventListener('resize', resize);
62
64
  (_a = refBox.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', scroll);
63
65
  };
64
- }, [showMore, onMore]);
66
+ }, []);
65
67
  useEffect(() => {
66
68
  resize();
67
69
  }, [list, lineNum]);
@@ -69,13 +71,11 @@ const Card = props => {
69
71
  if (!refBox.current) return;
70
72
  const refBoxRect = refBox.current.getBoundingClientRect();
71
73
  const card = refBox.current.querySelector('.card-list');
72
- const cardRect = card.getBoundingClientRect();
73
74
  const cardItem = refBox.current.querySelector('.card-list > .card-item');
74
75
  const cardItemRect = cardItem.getBoundingClientRect();
75
76
  const cardItemMarginRight = parseFloat(cardItem.style.marginRight);
76
- const scrollWidth = refBoxRect.width - cardRect.width; // 滚动条宽度
77
- const boxWidt = scrollWidth !== 0 ? refBoxRect.width - scrollWidth - 4 : refBoxRect.width;
78
- let n = Math.floor((boxWidt + cardItemMarginRight) / (cardItemRect.width + cardItemMarginRight));
77
+ const scrollBol = refBox.current.scrollHeight > refBox.current.clientHeight;
78
+ let n = Math.floor((card.clientWidth + cardItemMarginRight) / (cardItemRect.width + cardItemMarginRight));
79
79
  if (props.width === undefined && props.lineNum) {
80
80
  if (typeof lineNum === "number") {
81
81
  n = lineNum;
@@ -93,15 +93,13 @@ const Card = props => {
93
93
  }
94
94
  }
95
95
  }
96
- //constData.current.itemWidth = (refBoxRect.width + cardItemMarginRight) / n - cardItemMarginRight;
97
96
  let rightTotal = (n - 1) * cardItemMarginRight;
98
- if (scrollWidth) {
97
+ if (scrollBol) {
99
98
  // 出现滚动条,加4
100
99
  rightTotal = rightTotal + 4;
101
100
  }
102
101
  const right = rightTotal / n + 'px';
103
102
  constData.current.itemWidth = "calc(".concat(1 / n * 100, "% - ").concat(right, ")");
104
- //setItemWidth(constData.current.itemWidth);
105
103
  const cardArr = refBox.current.querySelectorAll('.card-list > .card-item');
106
104
  cardArr.forEach(item => {
107
105
  item.style.width = constData.current.itemWidth;
@@ -114,7 +112,7 @@ const Card = props => {
114
112
  };
115
113
  const scroll = () => {
116
114
  var _a, _b, _c;
117
- if (!showMore || !refBox.current || !props.onMore || constData.current.loadingMore) return;
115
+ if (!showMore || !refBox.current || !constData.current.onMore || constData.current.loadingMore) return;
118
116
  if (refBox.current.scrollHeight - (refBox.current.clientHeight + refBox.current.scrollTop) < 1) {
119
117
  if (((_a = constData.current.pos) === null || _a === void 0 ? void 0 : _a.clientHeight) === refBox.current.clientHeight && ((_b = constData.current.pos) === null || _b === void 0 ? void 0 : _b.scrollTop) === refBox.current.scrollTop && ((_c = constData.current.pos) === null || _c === void 0 ? void 0 : _c.scrollHeight) === refBox.current.scrollHeight) {
120
118
  constData.current.pos = {};
@@ -133,7 +131,7 @@ const Card = props => {
133
131
  if (constData.current.loadingMore) return;
134
132
  constData.current.loadingMore = true;
135
133
  setLoadingMore(true);
136
- yield props.onMore();
134
+ yield constData.current.onMore();
137
135
  setLoadingMore(false);
138
136
  constData.current.loadingMore = false;
139
137
  });
@@ -166,11 +164,23 @@ const Card = props => {
166
164
  if (lineNum === undefined) {
167
165
  styleCard.width = width;
168
166
  }
169
- /*if (props.width === undefined && lineNum) {
170
- styleCard.width = constData.current.itemWidth;
171
- }*/
172
- if (constData.current.lineNumCom && (index + 1) % constData.current.lineNumCom === 0) {
173
- styleCard.marginRight = 0;
167
+ if (props.width) {
168
+ if (refBox.current) {
169
+ const card = refBox.current.querySelector('.card-list');
170
+ const cardWidth = card.clientWidth;
171
+ const cardItemMarginRight = parseFloat(marginRight);
172
+ const widthItem = parseFloat(props.width);
173
+ const widthTotal = constData.current.lineNumCom * (widthItem + cardItemMarginRight) - cardItemMarginRight;
174
+ if (cardWidth - widthTotal <= widthItem) {
175
+ if (constData.current.lineNumCom && (index + 1) % constData.current.lineNumCom === 0) {
176
+ styleCard.marginRight = 0;
177
+ }
178
+ }
179
+ }
180
+ } else {
181
+ if (constData.current.lineNumCom && (index + 1) % constData.current.lineNumCom === 0) {
182
+ styleCard.marginRight = 0;
183
+ }
174
184
  }
175
185
  return Object.assign(Object.assign({}, styleCard), item.style);
176
186
  };
package/Cascader/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { C as Cascader } from '../_verture/index-3f811a6c.js';
2
- export { C as default } from '../_verture/index-3f811a6c.js';
1
+ import { C as Cascader } from '../_verture/index-78f0f0e7.js';
2
+ export { C as default } from '../_verture/index-78f0f0e7.js';
3
3
  import '../_verture/tslib.es6-55ed4bd2.js';
4
4
  import 'react/jsx-runtime';
5
5
  import '../_verture/index-1856bbeb.js';
@@ -27,8 +27,9 @@ import '@para-ui/icons/Forbid';
27
27
  import '../_verture/style-inject.es-300983ab.js';
28
28
  import '@para-ui/icons';
29
29
  import '@para-ui/icons/LoadingF';
30
- import '../_verture/index-f62daef9.js';
30
+ import '../AutoTips/index.js';
31
31
  import '@paraview/lib';
32
+ import '../_verture/useResizeObserver-edda059a.js';
32
33
  import '../_verture/useFormatMessage-1fc7c957.js';
33
34
  import '../_verture/index-ca413216.js';
34
35
  import '../HelperText/index.js';
@@ -6,11 +6,11 @@ import SearchIcon from '@para-ui/icons/Search';
6
6
  import Close from '@para-ui/icons/Close';
7
7
  import CloseCircleF from '@para-ui/icons/CloseCircleF';
8
8
  import Table from '../Table/index.js';
9
- import { T as Tree } from '../_verture/index-2055d357.js';
10
- import { B as Button } from '../_verture/index-6bbcdc7f.js';
9
+ import { T as Tree } from '../_verture/index-09404080.js';
10
+ import { B as Button } from '../_verture/index-98ae8a30.js';
11
11
  import { D as Dropdown } from '../_verture/index-bde7aabe.js';
12
12
  import { Popover } from '../Popover/index.js';
13
- import { A as AutoTips } from '../_verture/index-f62daef9.js';
13
+ import AutoTips from '../AutoTips/index.js';
14
14
  import { Tooltip } from '../Tooltip/index.js';
15
15
  import clsx from 'clsx';
16
16
  import { g as getReplaceField, i as isRemoteLoad, d as debounce, t as toArray, c as closest, a as getOverlaySize } from '../_verture/utils-c17b5265.js';
@@ -58,6 +58,7 @@ import '@para-ui/icons/Right';
58
58
  import '@para-ui/icons/DoubleLeft';
59
59
  import '@para-ui/icons/DoubleRight';
60
60
  import '../ScrollBar/index.js';
61
+ import '../_verture/useResizeObserver-edda059a.js';
61
62
  import '../_verture/toConsumableArray-599cd94a.js';
62
63
  import '../_verture/index-8ac46bd9.js';
63
64
  import '../_verture/typeof-6ec38efd.js';
package/CopyText/index.js CHANGED
@@ -5,7 +5,7 @@ import Copy from '@para-ui/icons/Copy';
5
5
  import CheckS from '@para-ui/icons/CheckS';
6
6
  import { TextField } from '../TextField/index.js';
7
7
  import Label from '../Label/index.js';
8
- import { A as AutoTips } from '../_verture/index-f62daef9.js';
8
+ import AutoTips from '../AutoTips/index.js';
9
9
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
10
10
  import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
11
11
  import '@paraview/lib';
@@ -28,6 +28,7 @@ import '../_verture/usePopupContainer-635f66f4.js';
28
28
  import 'dayjs';
29
29
  import '../Help/index.js';
30
30
  import '@para-ui/icons/Help';
31
+ import '../_verture/useResizeObserver-edda059a.js';
31
32
 
32
33
  var css_248z = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/5/9 13:57\n* @description 复制文本\n*/\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-copy-text .copy-text-input .text-field-content .text-field-content-within .right-icon .copy-text-icon {\n justify-items: center;\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n.paraui-v4-copy-text .copy-text-input .text-field-content .text-field-content-within .right-icon .copy-text-icon.copy-text-icon-check svg {\n color: rgb(19, 191, 76);\n}\n.paraui-v4-copy-text .copy-text-input .text-field-content .text-field-content-within .right-icon .copy-text-icon.copy-text-icon-check:hover svg {\n color: rgb(19, 191, 76);\n}\n.paraui-v4-copy-text .copy-text-input .text-field-content .text-field-content-within .right-icon .copy-text-icon:hover svg {\n color: rgb(87, 131, 235);\n}\n.paraui-v4-copy-text .copy-text-input .text-field-content .text-field-content-within .right-icon .copy-text-icon svg {\n color: rgb(92, 101, 115);\n font-size: 18px;\n}\n.paraui-v4-copy-text .copy-text-input .text-field-content .text-field-content-within .right-icon .copy-text-icon:hover svg {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-copy-text .copy-text-text {\n display: flex;\n align-items: center;\n}\n.paraui-v4-copy-text .copy-text-text > .paraui-v4-label {\n margin-bottom: 0;\n margin-right: 4px;\n white-space: nowrap;\n}\n.paraui-v4-copy-text .copy-text-text > .content {\n font-size: 14px;\n color: rgb(29, 33, 38);\n margin-right: 10px;\n line-height: 1.43;\n overflow: hidden;\n}\n.paraui-v4-copy-text .copy-text-text > .copy-text-icon {\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n.paraui-v4-copy-text .copy-text-text > .copy-text-icon.copy-text-icon-check svg {\n color: rgb(19, 191, 76);\n}\n.paraui-v4-copy-text .copy-text-text > .copy-text-icon.copy-text-icon-check:hover svg {\n color: rgb(19, 191, 76);\n}\n.paraui-v4-copy-text .copy-text-text > .copy-text-icon:hover svg {\n color: rgb(87, 131, 235);\n}\n.paraui-v4-copy-text .copy-text-text > .copy-text-icon svg {\n color: rgb(92, 101, 115);\n font-size: 18px;\n}\n.paraui-v4-copy-text .copy-text-text > .copy-text-icon svg {\n color: rgb(46, 101, 230);\n}";
33
34
  styleInject(css_248z);
@@ -9,7 +9,7 @@ import DatePicker from '../DatePicker/index.js';
9
9
  import Select from '../Select/index.js';
10
10
  import { TextField } from '../TextField/index.js';
11
11
  import { Popover } from '../Popover/index.js';
12
- import { B as Button } from '../_verture/index-6bbcdc7f.js';
12
+ import { B as Button } from '../_verture/index-98ae8a30.js';
13
13
  import { G as GlobalContext } from '../_verture/index-ca413216.js';
14
14
  import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
15
15
  import HelperText from '../HelperText/index.js';
@@ -22,12 +22,13 @@ import '@para-ui/icons/EditOutline';
22
22
  import '../_verture/toConsumableArray-599cd94a.js';
23
23
  import '../_verture/slicedToArray-61604a6c.js';
24
24
  import '../_verture/typeof-adeedc13.js';
25
- import '../_verture/index-f62daef9.js';
25
+ import '../AutoTips/index.js';
26
26
  import '../Tooltip/index.js';
27
27
  import 'rc-tooltip';
28
28
  import 'rc-tooltip/lib/placements';
29
29
  import '@para-ui/icons/Forbid';
30
30
  import '@paraview/lib';
31
+ import '../_verture/useResizeObserver-edda059a.js';
31
32
  import '../_verture/tinycolor-ece3542d.js';
32
33
  import '../_verture/useGlobalProps-4ae1a007.js';
33
34
  import '@para-ui/icons/Plus';
@@ -1,6 +1,6 @@
1
1
  import dayjsGenerateConfig from 'rc-picker/es/generate/dayjs';
2
2
  import { jsx, jsxs } from 'react/jsx-runtime';
3
- import { B as Button } from '../_verture/index-6bbcdc7f.js';
3
+ import { B as Button } from '../_verture/index-98ae8a30.js';
4
4
  import { Tag } from '../Tag/index.js';
5
5
  import { _ as _defineProperty } from '../_verture/defineProperty-6f62bb2a.js';
6
6
  import { _ as __rest } from '../_verture/tslib.es6-55ed4bd2.js';
@@ -24,7 +24,11 @@ import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
24
24
  import '@para-ui/icons/LoadingF';
25
25
  import '@para-ui/icons/Down';
26
26
  import '../_verture/useFormatMessage-1fc7c957.js';
27
- import '../_verture/index-f62daef9.js';
27
+ import '../AutoTips/index.js';
28
+ import '../_verture/useResizeObserver-edda059a.js';
29
+ import 'rc-tooltip';
30
+ import 'rc-tooltip/lib/placements';
31
+ import '@para-ui/icons/Forbid';
28
32
  import '@para-ui/icons/CheckCircleF';
29
33
  import '@para-ui/icons/WarningCircle';
30
34
  import '@para-ui/icons/WarningCircleF';
@@ -41,9 +45,6 @@ import 'rc-dropdown';
41
45
  import 'dayjs';
42
46
  import '../Help/index.js';
43
47
  import '@para-ui/icons/Help';
44
- import 'rc-tooltip';
45
- import 'rc-tooltip/lib/placements';
46
- import '@para-ui/icons/Forbid';
47
48
 
48
49
  function PickerButton(props) {
49
50
  return jsx(Button, Object.assign({}, props, {
@@ -1,9 +1,9 @@
1
1
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
2
  import { useState, useEffect, Fragment as Fragment$1 } from 'react';
3
3
  import { Title } from '../Title/index.js';
4
- import { A as AutoTips } from '../_verture/index-f62daef9.js';
4
+ import AutoTips from '../AutoTips/index.js';
5
5
  import CollapseBox from '../CollapseBox/index.js';
6
- import { B as Button } from '../_verture/index-6bbcdc7f.js';
6
+ import { B as Button } from '../_verture/index-98ae8a30.js';
7
7
  import clsx from 'clsx';
8
8
  import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
9
9
  import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
@@ -20,6 +20,7 @@ import '../Collapse/index.js';
20
20
  import 'rc-collapse';
21
21
  import '@para-ui/icons/Right';
22
22
  import '@paraview/lib';
23
+ import '../_verture/useResizeObserver-edda059a.js';
23
24
  import 'react-transition-group';
24
25
  import '../_verture/util-82646c4f.js';
25
26
  import '@para-ui/icons/LoadingF';