@unicom-cloud/ui 0.8.66 → 0.8.67

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 (357) hide show
  1. package/Affix.js +79 -79
  2. package/Alert.js +46 -46
  3. package/Anchor.js +1 -1
  4. package/AutoComplete.js +74 -74
  5. package/Avatar.js +36 -36
  6. package/BackTop.js +35 -35
  7. package/Badge.js +55 -55
  8. package/Breadcrumb.js +42 -42
  9. package/Button.js +24 -24
  10. package/Calendar.js +230 -230
  11. package/Card.js +18 -18
  12. package/Carousel.js +165 -165
  13. package/Cascader.js +1 -1
  14. package/Checkbox.js +1 -1
  15. package/Collapse.js +1 -1
  16. package/ColorPicker.js +26 -26
  17. package/Comment.js +18 -18
  18. package/ConfigProvider.js +2 -2
  19. package/Copy.js +28 -27
  20. package/DatePicker.js +872 -871
  21. package/Descriptions.js +34 -34
  22. package/Divider.js +19 -19
  23. package/Draggable.js +27 -26
  24. package/Drawer.js +1 -1
  25. package/Dropdown.js +110 -110
  26. package/Empty.js +3 -3
  27. package/Form.js +984 -945
  28. package/Grid.js +34 -34
  29. package/Icon.js +16 -16
  30. package/IconHover.js +2 -2
  31. package/Image.js +2 -2
  32. package/Input.js +7 -6
  33. package/InputNumber.js +6 -6
  34. package/InputTag.js +1 -1
  35. package/Layout.js +24 -24
  36. package/Link.js +30 -30
  37. package/List.js +95 -95
  38. package/Mentions.js +85 -84
  39. package/Menu.js +2 -2
  40. package/Message.js +7 -6
  41. package/Modal.js +1 -1
  42. package/Notice.js +14 -3
  43. package/Notification.js +9 -7
  44. package/OverflowEllipsis.js +64 -62
  45. package/PageHeader.js +73 -73
  46. package/Pagination.js +1 -1
  47. package/Picker.js +1 -1
  48. package/Popconfirm.js +60 -60
  49. package/Popover.js +31 -31
  50. package/Portal.js +23 -31
  51. package/Progress.js +22 -22
  52. package/Radio.js +2 -2
  53. package/Rate.js +24 -24
  54. package/ResizeBox.js +274 -271
  55. package/Result.js +3 -3
  56. package/Select.js +4 -4
  57. package/SelectView.js +257 -238
  58. package/Skeleton.js +46 -46
  59. package/Slider.js +286 -283
  60. package/Space.js +28 -28
  61. package/SpeechSynthesis.js +62 -55
  62. package/Spin.js +23 -23
  63. package/Statistic.js +80 -80
  64. package/Steps.js +67 -67
  65. package/Switch.js +47 -47
  66. package/Table.js +1445 -1380
  67. package/Tabs.js +5 -5
  68. package/Tag.js +45 -45
  69. package/TimePicker.js +154 -154
  70. package/Timeline.js +2 -2
  71. package/Tooltip.js +80 -79
  72. package/Transfer.js +103 -102
  73. package/Tree.js +3 -2
  74. package/TreeSelect.js +2 -2
  75. package/Trigger.js +699 -772
  76. package/Typography.js +756 -6
  77. package/Upload.js +2 -2
  78. package/VerificationCode.js +1 -1
  79. package/Version.js +1 -1
  80. package/VirtualList.js +1 -1
  81. package/Watermark.js +1 -1
  82. package/chunk/{BHgJ5Y3T.js → -UuKKT0Z.js} +29 -29
  83. package/chunk/{B8QV6E2b.js → AwZqeapI.js} +5 -5
  84. package/chunk/B5gK1Idp.js +19 -0
  85. package/chunk/B7FlazNB.js +24 -0
  86. package/chunk/{DTBtQQ2H.js → BBvWDeuZ.js} +67 -67
  87. package/chunk/BCftTxEy.js +626 -0
  88. package/chunk/{CZOP_ZHJ.js → BGny4zSb.js} +60 -60
  89. package/chunk/BHF15Dog.js +98 -0
  90. package/chunk/BJQ5UNa-.js +1585 -0
  91. package/chunk/BP9sYyk9.js +8 -0
  92. package/chunk/BUdtVdnv.js +38 -0
  93. package/chunk/BVQlOzTS.js +11 -0
  94. package/chunk/B__a_gb_.js +519 -0
  95. package/chunk/BbEYToV1.js +10 -0
  96. package/chunk/BbdDQAnm.js +15 -0
  97. package/chunk/BdUcgWdu.js +11 -0
  98. package/chunk/BfbXSG70.js +26 -0
  99. package/chunk/BndfNLK4.js +186 -0
  100. package/chunk/BoMCZV6K.js +1098 -0
  101. package/chunk/Br0B6y1T.js +18 -0
  102. package/chunk/BrOW642m.js +130 -0
  103. package/chunk/BxUs8_Cr.js +9 -0
  104. package/chunk/{CcV4wQB1.js → C42LIMP9.js} +244 -242
  105. package/chunk/C4YkFMzC.js +778 -0
  106. package/chunk/{Bh23P4l7.js → C9Wcraj7.js} +21 -21
  107. package/chunk/{4-gvEY5y.js → CANgSlh3.js} +10 -10
  108. package/chunk/CJ_o9tZM.js +5 -0
  109. package/chunk/{DNAigumg.js → CK5m7rLl.js} +36 -36
  110. package/chunk/{CANaGbGR.js → CKNyIitu.js} +57 -56
  111. package/chunk/CLiqJm_T.js +10 -0
  112. package/chunk/{BnSVm1YC.js → CNmmhbCn.js} +32 -32
  113. package/chunk/{BFipyA67.js → CP0odX99.js} +51 -51
  114. package/chunk/CPT-OZH2.js +14 -0
  115. package/chunk/CVSF8p0O.js +698 -0
  116. package/chunk/C_agcwLN.js +31 -0
  117. package/chunk/{jhQQCFMn.js → C_gJWGGh.js} +201 -201
  118. package/chunk/{Bc7t9jkb.js → CaasmWg_.js} +11 -11
  119. package/chunk/Ce1j9KTi.js +6 -0
  120. package/chunk/{D_-UD4vO.js → Cf5QNhkG.js} +18 -18
  121. package/chunk/CkNSv2U7.js +56 -0
  122. package/chunk/Cp2f70gB.js +9 -0
  123. package/chunk/CpegYjdC.js +16 -0
  124. package/chunk/CucI3KZr.js +20 -0
  125. package/chunk/CwoFBTYz.js +11 -0
  126. package/chunk/D2KPqPhV.js +17 -0
  127. package/chunk/D7NyvE5f.js +17 -0
  128. package/chunk/D8oTPQ2H.js +384 -0
  129. package/chunk/{CLBavO5c.js → DC1iHEiy.js} +87 -87
  130. package/chunk/{DnvO8A0Z.js → DFrfrmfK.js} +120 -119
  131. package/chunk/DGTIZ_0O.js +6 -0
  132. package/chunk/DJfpiZn_.js +25 -0
  133. package/chunk/DKr2_PYd.js +34 -0
  134. package/chunk/DNUz6zgo.js +11 -0
  135. package/chunk/DRtM649q.js +11 -0
  136. package/chunk/DS_mUWn6.js +41 -0
  137. package/chunk/DU6bs_19.js +10 -0
  138. package/chunk/DWdbwz22.js +10 -0
  139. package/chunk/DcveZuqd.js +6 -0
  140. package/chunk/DdVFknul.js +24 -0
  141. package/chunk/DgRfikwe.js +16 -0
  142. package/chunk/{znkyQ-HR.js → DkyR2EfG.js} +66 -66
  143. package/chunk/{DUeHQKtx.js → DleQ5HwG.js} +42 -42
  144. package/chunk/DnrZEnQ_.js +27 -0
  145. package/chunk/DsRSHWtX.js +1025 -0
  146. package/chunk/Dz5BdmXo.js +270 -0
  147. package/chunk/EANe01DF.js +1030 -0
  148. package/chunk/{CwhPMMWy.js → Ey4YJCkX.js} +7 -7
  149. package/chunk/GoNx5R4F.js +873 -0
  150. package/chunk/HDUQku8d.js +20 -0
  151. package/chunk/HrAP__Hi.js +25 -0
  152. package/chunk/JPPo5nY_.js +9 -0
  153. package/chunk/{Du-bw6qA.js → SLWP34OR.js} +90 -85
  154. package/chunk/VVKtwaGf.js +278 -0
  155. package/chunk/WPNpLxSI.js +16 -0
  156. package/chunk/{CPvvjMwZ.js → WpO_DsK4.js} +49 -48
  157. package/chunk/fdU3ang6.js +14 -0
  158. package/chunk/{DQAot004.js → fkclKOAL.js} +298 -292
  159. package/chunk/flvYlqx3.js +22 -0
  160. package/chunk/kTDayEpF.js +288 -0
  161. package/chunk/{CssIjN1g.js → pZoNQ75H.js} +31 -31
  162. package/chunk/qFf1w_Jq.js +8 -0
  163. package/chunk/{CHnFKgbk.js → w-kM1L5W.js} +155 -155
  164. package/hooks/index.js +53 -49
  165. package/hooks/useComputedState.js +2 -10
  166. package/hooks/useCreate.js +2 -7
  167. package/hooks/useForceUpdate.js +2 -7
  168. package/hooks/useId.js +2 -10
  169. package/hooks/useInView.js +2 -30
  170. package/hooks/useIntersectionObserver.js +2 -23
  171. package/hooks/useInterval.js +2 -17
  172. package/hooks/useIsFirstRender.js +2 -9
  173. package/hooks/useIsomorphicLayoutEffect.js +2 -5
  174. package/hooks/useKeyboardEvent.js +2 -16
  175. package/hooks/useMedia.js +2 -15
  176. package/hooks/useMergeProps.js +2 -18
  177. package/hooks/useMergeValue.js +2 -19
  178. package/hooks/useOnlineStatus.js +4 -0
  179. package/hooks/useOverflowHidden.js +2 -25
  180. package/hooks/useOverrideRef.js +2 -13
  181. package/hooks/usePersistCallback.js +2 -13
  182. package/hooks/usePrefersColorSchemeDark.js +4 -0
  183. package/hooks/usePrevious.js +2 -9
  184. package/hooks/useRefs.js +2 -9
  185. package/hooks/useResizeObserver.js +2 -15
  186. package/hooks/useStateCallback.js +2 -15
  187. package/hooks/useStateWithPromise.js +2 -24
  188. package/hooks/useUpdateEffect.js +2 -9
  189. package/hooks/useVerificationCode.js +73 -0
  190. package/hooks/useWatch.js +2 -10
  191. package/hooks/{use-watermark.js → useWatermark.js} +27 -26
  192. package/hooks/useWindowSize.js +2 -20
  193. package/index.js +571 -584
  194. package/locale/en-US.js +4 -2
  195. package/locale/interface.js +1 -4
  196. package/locale/ja-JP.js +3 -1
  197. package/locale/tr-TR.js +1 -1
  198. package/locale/zh-CN.js +3 -1
  199. package/locale/zh-HK.js +3 -1
  200. package/locale/zh-TW.js +3 -1
  201. package/package.json +1 -1
  202. package/style.css +1 -1
  203. package/types/anchor/util.d.ts +1 -1
  204. package/types/button/index.d.ts +2 -2
  205. package/types/color-picker/hooks/useColorPicker.d.ts +2 -2
  206. package/types/form/Control-old.d.ts +56 -0
  207. package/types/form/Control.d.ts +6 -54
  208. package/types/form/FormItem.d.ts +1 -1
  209. package/types/form/store.d.ts +0 -1
  210. package/types/hooks/index.d.ts +2 -0
  211. package/types/hooks/useComputedState.d.ts +1 -4
  212. package/types/hooks/useCreate.d.ts +1 -2
  213. package/types/hooks/useForceUpdate.d.ts +1 -2
  214. package/types/hooks/useId.d.ts +1 -2
  215. package/types/hooks/useInView.d.ts +1 -11
  216. package/types/hooks/useIntersectionObserver.d.ts +1 -7
  217. package/types/hooks/useInterval.d.ts +1 -2
  218. package/types/hooks/useIsFirstRender.d.ts +1 -2
  219. package/types/hooks/useIsomorphicLayoutEffect.d.ts +1 -3
  220. package/types/hooks/useKeyboardEvent.d.ts +1 -8
  221. package/types/hooks/useMedia.d.ts +1 -2
  222. package/types/hooks/useMergeProps.d.ts +1 -5
  223. package/types/hooks/useMergeValue.d.ts +1 -6
  224. package/types/hooks/useOnlineStatus.d.ts +1 -0
  225. package/types/hooks/useOverflowHidden.d.ts +1 -5
  226. package/types/hooks/useOverrideRef.d.ts +1 -6
  227. package/types/hooks/usePersistCallback.d.ts +1 -2
  228. package/types/hooks/usePrefersColorSchemeDark.d.ts +1 -0
  229. package/types/hooks/usePrevious.d.ts +1 -3
  230. package/types/hooks/useRefs.d.ts +1 -2
  231. package/types/hooks/useResizeObserver.d.ts +1 -6
  232. package/types/hooks/useStateCallback.d.ts +1 -5
  233. package/types/hooks/useStateWithPromise.d.ts +1 -2
  234. package/types/hooks/useUpdateEffect.d.ts +1 -3
  235. package/types/hooks/useWatch.d.ts +1 -3
  236. package/types/hooks/useWindowSize.d.ts +1 -5
  237. package/types/image/interface.d.ts +1 -0
  238. package/types/index.d.ts +157 -86
  239. package/types/input/Input.d.ts +1 -1
  240. package/types/input/Textarea.d.ts +2 -2
  241. package/types/locale/en-US.d.ts +2 -0
  242. package/types/locale/interface.d.ts +1 -2
  243. package/types/locale/ja-JP.d.ts +2 -0
  244. package/types/locale/zh-CN.d.ts +2 -0
  245. package/types/locale/zh-HK.d.ts +2 -0
  246. package/types/locale/zh-TW.d.ts +2 -0
  247. package/types/menu/context.d.ts +1 -1
  248. package/types/message/index.d.ts +14 -14
  249. package/types/message/interface.d.ts +2 -0
  250. package/types/modal/config.d.ts +0 -1
  251. package/types/modal/interface.d.ts +0 -1
  252. package/types/notice/index.d.ts +2 -27
  253. package/types/notification/index.d.ts +15 -16
  254. package/types/notification/interface.d.ts +2 -0
  255. package/types/notification/withNotification.d.ts +2 -0
  256. package/types/select/util.d.ts +1 -2
  257. package/types/select-view/interface.d.ts +2 -1
  258. package/types/speech-synthesis/index.d.ts +1 -1
  259. package/types/table/constant.d.ts +2 -0
  260. package/types/table/hook/useThResizable.d.ts +7 -0
  261. package/types/table/index.d.ts +10 -1
  262. package/types/table/style/index.d.ts +1 -0
  263. package/types/table/th-resizable/index.d.ts +2 -0
  264. package/types/table/thead/Column.d.ts +1 -2
  265. package/types/tree/Tree.d.ts +12 -67
  266. package/types/tree-select/Select.d.ts +2 -2
  267. package/types/trigger/index.d.ts +2 -120
  268. package/types/trigger/interface.d.ts +2 -1
  269. package/types/utils/CSSTransition.d.ts +2 -3
  270. package/types/utils/caseName.d.ts +1 -1
  271. package/types/utils/className.d.ts +1 -1
  272. package/types/utils/constant.d.ts +2 -2
  273. package/types/utils/copy.d.ts +1 -1
  274. package/types/utils/dayjs.d.ts +1 -21
  275. package/types/utils/dom.d.ts +1 -6
  276. package/types/utils/fileToURL.d.ts +1 -1
  277. package/types/utils/fillNBSP.d.ts +1 -1
  278. package/types/utils/getHighlightText.d.ts +1 -5
  279. package/types/utils/getHotkeyHandler.d.ts +1 -8
  280. package/types/utils/getStringLength.d.ts +1 -1
  281. package/types/utils/include.d.ts +1 -1
  282. package/types/utils/index.d.ts +3 -4
  283. package/types/utils/is.d.ts +1 -16
  284. package/types/utils/keyboardCode.d.ts +3 -0
  285. package/types/utils/lodash.d.ts +1 -17
  286. package/types/utils/mergeProps.d.ts +1 -1
  287. package/types/utils/mergedToString.d.ts +1 -1
  288. package/types/utils/omit.d.ts +1 -1
  289. package/types/utils/pad.d.ts +1 -2
  290. package/types/utils/pick.d.ts +2 -4
  291. package/types/utils/reactDOM.d.ts +1 -7
  292. package/types/utils/resizeObserverEffect.d.ts +2 -0
  293. package/types/utils/saveAs.d.ts +1 -1
  294. package/types/utils/screenfull.d.ts +2 -0
  295. package/types/utils/scrollIntoView.d.ts +1 -2
  296. package/types/utils/style.d.ts +1 -3
  297. package/types/utils/throttleByRaf.d.ts +1 -5
  298. package/types/utils/throttleByRaf2.d.ts +1 -0
  299. package/types/utils/warning.d.ts +1 -2
  300. package/types/version/index.d.ts +1 -1
  301. package/utils/CSSTransition.js +2 -6
  302. package/utils/className.js +2 -2
  303. package/utils/constant.js +8 -9
  304. package/utils/contextHolder.js +1 -1
  305. package/utils/copy.js +1 -1
  306. package/utils/dayjs.js +14 -173
  307. package/utils/dom.js +33 -29
  308. package/utils/fillNBSP.js +2 -4
  309. package/utils/getHighlightText.js +2 -38
  310. package/utils/getHotkeyHandler.js +2 -25
  311. package/utils/getStringLength.js +2 -7
  312. package/utils/include.js +2 -7
  313. package/utils/index.js +237 -240
  314. package/utils/is.js +116 -156
  315. package/utils/keyboardCode.js +27 -0
  316. package/utils/mergeProps.js +2 -9
  317. package/utils/mergedToString.js +2 -13
  318. package/utils/omit.js +2 -9
  319. package/utils/pad.js +12 -12
  320. package/utils/pick.js +4 -15
  321. package/utils/reactDOM.js +3 -54
  322. package/utils/resizeObserverEffect.js +4 -0
  323. package/utils/saveAs.js +1 -1
  324. package/utils/screenfull.js +4 -0
  325. package/utils/scrollIntoView.js +2 -21
  326. package/utils/style.js +12 -11
  327. package/utils/throttleByRaf.js +13 -12
  328. package/utils/throttleByRaf2.js +5 -0
  329. package/utils/warning.js +5 -4
  330. package/NotificationBase.js +0 -53
  331. package/chunk/-zpSUpGE.js +0 -1501
  332. package/chunk/BAWsPQBM.js +0 -11
  333. package/chunk/BIT0j3HT.js +0 -269
  334. package/chunk/BbLKnaNO.js +0 -871
  335. package/chunk/Bfhv56O2.js +0 -638
  336. package/chunk/C2lIz2F9.js +0 -60
  337. package/chunk/C6QWSzsM.js +0 -376
  338. package/chunk/CVkHTbic.js +0 -995
  339. package/chunk/CeGEvXby.js +0 -278
  340. package/chunk/D3NFxdmG.js +0 -518
  341. package/chunk/DApXtulb.js +0 -1102
  342. package/chunk/DPByB1ab.js +0 -698
  343. package/chunk/DV1Ab_cG.js +0 -284
  344. package/chunk/dBnNCOIU.js +0 -778
  345. package/chunk/it8qlDZ3.js +0 -1032
  346. package/chunk/l0sNRNKZ.js +0 -1
  347. package/chunk/te_43YrB.js +0 -776
  348. package/hooks/use-verification-code.js +0 -73
  349. package/types/notification-base/index.d.ts +0 -15
  350. package/types/notification-base/style/index.d.ts +0 -2
  351. package/types/trigger/Portal.d.ts +0 -7
  352. package/types/utils/keyCode.d.ts +0 -45
  353. package/types/utils/raf.d.ts +0 -3
  354. package/types/utils/throttleByRafV2.d.ts +0 -5
  355. package/utils/keyCode.js +0 -12
  356. package/utils/raf.js +0 -19
  357. package/utils/throttleByRafV2.js +0 -16
@@ -0,0 +1,8 @@
1
+ import { useReducer as n } from "react";
2
+ function c() {
3
+ const [o, e] = n((r) => (r + 1) % 27, 0);
4
+ return e;
5
+ }
6
+ export {
7
+ c
8
+ };
@@ -0,0 +1,38 @@
1
+ import { Component as f } from "react";
2
+ import { findDOMNode as r } from "react-dom";
3
+ import { x as c } from "./CkNSv2U7.js";
4
+ import u from "../utils/warning.js";
5
+ import "./CSC_V_25.js";
6
+ import i from "lodash/isFunction.js";
7
+ let n;
8
+ function d(e) {
9
+ const t = e.constructor;
10
+ if (typeof t != "function")
11
+ return !1;
12
+ !n && typeof WeakSet == "function" && (n = /* @__PURE__ */ new WeakSet());
13
+ const o = !!(n != null && n.has(t));
14
+ return n == null || n.add(t), o;
15
+ }
16
+ const M = (e, t) => {
17
+ if (e) {
18
+ if (e instanceof Element)
19
+ return e;
20
+ if (e.current instanceof Element)
21
+ return e.current;
22
+ if (i(e.getRootDOMNode))
23
+ return e.getRootDOMNode();
24
+ if (e instanceof f && r)
25
+ return r(e);
26
+ }
27
+ return t && (u(
28
+ c && !d(t),
29
+ "Element does not define the `getRootDOMNode` method causing a call to React.findDOMNode. but findDOMNode is deprecated in StrictMode. Please check the code logic",
30
+ { element: e, instance: t }
31
+ ), r) ? r(t) : null;
32
+ }, g = (e, t) => {
33
+ e && e.ref && (i(e.ref) && (e == null || e.ref(t)), "current" in e.ref && (e.ref.current = t));
34
+ };
35
+ export {
36
+ g as D,
37
+ M as g
38
+ };
@@ -0,0 +1,11 @@
1
+ import { useEffect as c } from "react";
2
+ import { n as m } from "./DU6bs_19.js";
3
+ function e(t, r) {
4
+ const f = m(t);
5
+ c(() => {
6
+ t !== f && r(t, f);
7
+ }, [t]);
8
+ }
9
+ export {
10
+ e as c
11
+ };
@@ -0,0 +1,519 @@
1
+ import { jsx as P, jsxs as Ot, Fragment as Lt } from "react/jsx-runtime";
2
+ import Ct from "lodash/isFunction";
3
+ import Tt from "lodash/isNumber";
4
+ import it, { useRef as A, useState as kt, useMemo as Ft, useEffect as N, useImperativeHandle as Vt } from "react";
5
+ import { c as Ut } from "./BP9sYyk9.js";
6
+ import { u as Dt } from "./CLiqJm_T.js";
7
+ import { s as Kt } from "./DcveZuqd.js";
8
+ import { n as jt } from "./DU6bs_19.js";
9
+ import { i as Bt } from "./DJfpiZn_.js";
10
+ import { l as Yt } from "./flvYlqx3.js";
11
+ import { l as qt } from "./Cp2f70gB.js";
12
+ import { g as Gt } from "./BUdtVdnv.js";
13
+ const xt = ({
14
+ height: i,
15
+ offset: r,
16
+ children: o,
17
+ outerStyle: e,
18
+ innerStyle: l
19
+ }) => {
20
+ let n = {}, c = {
21
+ display: "flex",
22
+ flexDirection: "column"
23
+ };
24
+ return r !== void 0 ? (n = {
25
+ height: i,
26
+ position: "relative",
27
+ overflow: "hidden",
28
+ zIndex: 0,
29
+ ...e
30
+ }, c = {
31
+ ...c,
32
+ transform: `translateY(${r}px)`,
33
+ position: "absolute",
34
+ left: 0,
35
+ right: 0,
36
+ top: 0,
37
+ ...l
38
+ }) : (n = { ...e }, c = { ...c, ...l }), /* @__PURE__ */ P("div", { style: n, children: /* @__PURE__ */ P("div", { style: c, children: o }) });
39
+ };
40
+ function $t(i, r, o, e) {
41
+ const l = o - i, n = r - o, c = Math.min(l, n) * 2;
42
+ if (e <= c) {
43
+ const H = Math.floor(e / 2);
44
+ return e % 2 ? o + H + 1 : o - H;
45
+ }
46
+ return l > n ? o - (e - n) : o + (e - l);
47
+ }
48
+ function zt(i, r, o) {
49
+ const e = i.length, l = r.length;
50
+ let n, c;
51
+ if (e === 0 && l === 0)
52
+ return null;
53
+ e < l ? (n = i, c = r) : (n = r, c = i);
54
+ const H = { __EMPTY_ITEM__: !0 };
55
+ function _(I, v) {
56
+ return I !== void 0 ? o(I, v) : H;
57
+ }
58
+ let R = null, T = Math.abs(e - l) !== 1;
59
+ for (let I = 0; I < c.length; I += 1) {
60
+ const v = _(n[I], I), D = _(c[I], I);
61
+ if (v !== D) {
62
+ R = I, T = T || v !== _(c[I + 1], I + 1);
63
+ break;
64
+ }
65
+ }
66
+ return R === null ? null : { index: R, multiple: T };
67
+ }
68
+ const Wt = "__rc_ghost_item__";
69
+ function Mt(i, r) {
70
+ const o = Math.floor(i * r), e = o / r, l = (i - e) / (1 / r);
71
+ return {
72
+ index: o,
73
+ // scrollPtg >= itemTopPtg,计算结果为元素应当补充的滚动距离相对自身高度的偏移量
74
+ offsetPtg: Number.isNaN(l) ? 0 : l
75
+ };
76
+ }
77
+ function yt(i, r = !1) {
78
+ const o = Gt(i);
79
+ let e = 0;
80
+ if (r) {
81
+ const { marginTop: l, marginBottom: n } = window.getComputedStyle(i);
82
+ e = Number(l.replace(/\D/g, "")) + Number(n.replace(/\D/g, "")), e = isNaN(e) ? 0 : e;
83
+ }
84
+ return o ? o.offsetHeight + e : 0;
85
+ }
86
+ function st(i, r) {
87
+ return i < 0 ? 0 : i > r ? r : i;
88
+ }
89
+ function V({
90
+ scrollTop: i,
91
+ scrollHeight: r,
92
+ clientHeight: o
93
+ }) {
94
+ const e = r - o;
95
+ return e <= 0 ? 0 : st(i, e) / e;
96
+ }
97
+ function Ht(i, r, o) {
98
+ const { index: e, offsetPtg: l } = Mt(i, r), n = Math.ceil(i * o), c = Math.ceil((1 - i) * o);
99
+ return {
100
+ itemIndex: e,
101
+ itemOffsetPtg: l,
102
+ startIndex: Math.max(0, e - n),
103
+ endIndex: Math.min(r - 1, e + c)
104
+ };
105
+ }
106
+ function X({
107
+ itemHeight: i,
108
+ itemOffsetPtg: r,
109
+ scrollPtg: o,
110
+ clientHeight: e
111
+ }) {
112
+ return Math.floor(e * o - i * r);
113
+ }
114
+ function Xt({ scrollTop: i, ...r }) {
115
+ return i + X(r);
116
+ }
117
+ function Jt({
118
+ locatedItemRelativeTop: i,
119
+ locatedItemIndex: r,
120
+ compareItemIndex: o,
121
+ startIndex: e,
122
+ endIndex: l,
123
+ getItemKey: n,
124
+ itemElementHeights: c,
125
+ itemHeight: H
126
+ }) {
127
+ let _ = i;
128
+ const R = n(o);
129
+ if (o <= r)
130
+ for (let T = r; T >= e && n(T) !== R; T -= 1) {
131
+ const v = n(T - 1);
132
+ _ -= c[v] || H;
133
+ }
134
+ else
135
+ for (let T = r; T <= l; T += 1) {
136
+ const I = n(T);
137
+ if (I === R)
138
+ break;
139
+ _ += c[I] || H;
140
+ }
141
+ return _;
142
+ }
143
+ function Qt(i) {
144
+ let r = -1, o = 0;
145
+ return i.forEach((e, l) => {
146
+ var n;
147
+ if (e = typeof e == "string" ? e : (n = e.props) == null ? void 0 : n.children, typeof e == "string") {
148
+ const c = qt(e);
149
+ c > o && (o = c, r = l);
150
+ }
151
+ }), r;
152
+ }
153
+ const Zt = 32, U = `__virtual_item_height_${Math.random().toFixed(5).slice(2)}`, te = (i) => {
154
+ const r = Ut(), { current: o } = i;
155
+ N(() => {
156
+ Object.keys(o).length && !o[U] && (o[U] = Object.entries(o).reduce(
157
+ (e, [, l], n, c) => {
158
+ const H = e + l;
159
+ return n === c.length - 1 ? Math.round(H / c.length) : H;
160
+ },
161
+ 0
162
+ ), r());
163
+ }, [Object.keys(o).length]);
164
+ }, ee = (i) => {
165
+ const r = A({}), o = A(i);
166
+ return N(() => {
167
+ o.current = i;
168
+ }, [i]), i !== o.current && (r.current = {}), (e, l, n) => (Object.prototype.hasOwnProperty.call(r.current, l) || (r.current[l] = i(e, l, n)), r.current[l]);
169
+ }, ne = it.forwardRef((i, r) => {
170
+ const {
171
+ style: o,
172
+ className: e,
173
+ children: l,
174
+ data: n = [],
175
+ itemKey: c,
176
+ threshold: H = 100,
177
+ wrapper: _ = "div",
178
+ height: R = "100%",
179
+ isStaticItemHeight: T = !0,
180
+ itemHeight: I,
181
+ measureLongestItem: v,
182
+ scrollOptions: D,
183
+ onScroll: O,
184
+ needFiller: bt = !0,
185
+ outerStyle: lt,
186
+ innerStyle: ct,
187
+ wrapperChild: J = it.Fragment,
188
+ ...St
189
+ } = i, q = o && o.maxHeight || R, K = A({}), [_t, Et] = kt(200), ut = ee(l);
190
+ te(K);
191
+ const L = n.length, C = I || K.current[U] || Zt, G = Tt(q) ? q : _t, k = Math.ceil(G / C), Q = C * L, E = H !== null && L >= H && Q > G, m = A(null), w = A(null), j = A(!1), ft = A(E), at = Ft(() => {
192
+ if (m.current) {
193
+ const t = (s) => +window.getComputedStyle(m.current)[s].replace(/\D/g, "");
194
+ return {
195
+ top: t("paddingTop"),
196
+ bottom: t("paddingBottom")
197
+ };
198
+ }
199
+ return { top: 0, bottom: 0 };
200
+ }, [m.current]), [d, B] = Bt({
201
+ // measure status
202
+ status: "NONE",
203
+ // render range info
204
+ startIndex: 0,
205
+ endIndex: 0,
206
+ itemIndex: 0,
207
+ itemOffsetPtg: 0,
208
+ // scroll info
209
+ startItemTop: 0,
210
+ scrollTop: 0
211
+ }), $ = jt(n) || [], Pt = Dt(), Y = (t, s) => typeof c == "function" ? c(t, s) : typeof c == "string" ? t[c] : t.key || s, b = (t, s = n) => {
212
+ if (t === s.length)
213
+ return Wt;
214
+ const g = s[t];
215
+ return g !== void 0 ? Y(g, t) : null;
216
+ }, S = (t) => K.current[t] || C, mt = (t) => {
217
+ const { itemIndex: s, relativeTop: g } = t, { scrollHeight: f, clientHeight: p } = m.current, u = d.scrollTop, x = f - p;
218
+ let a = Number.MAX_VALUE, h = null, M = null, y = null, W = null, F = null, tt = 0;
219
+ for (let et = 0; et < x; et++) {
220
+ const gt = $t(0, x, u, et), pt = V({
221
+ scrollTop: gt,
222
+ scrollHeight: f,
223
+ clientHeight: p
224
+ }), { itemIndex: nt, itemOffsetPtg: ht, startIndex: rt, endIndex: ot } = Ht(
225
+ pt,
226
+ L,
227
+ k
228
+ );
229
+ if (rt <= s && s <= ot) {
230
+ const wt = X({
231
+ itemHeight: S(b(nt)),
232
+ itemOffsetPtg: ht,
233
+ clientHeight: p,
234
+ scrollPtg: pt
235
+ }), Nt = Jt({
236
+ locatedItemRelativeTop: wt,
237
+ locatedItemIndex: nt,
238
+ compareItemIndex: s,
239
+ startIndex: rt,
240
+ endIndex: ot,
241
+ itemHeight: C,
242
+ getItemKey: b,
243
+ itemElementHeights: K.current
244
+ }), It = Math.abs(Nt - g);
245
+ It < a ? (a = It, h = gt, M = nt, y = ht, W = rt, F = ot, tt = 0) : tt += 1;
246
+ }
247
+ if (tt > 10)
248
+ break;
249
+ }
250
+ h !== null && (j.current = !0, m.current.scrollTop = h, B({
251
+ ...d,
252
+ status: "MEASURE_START",
253
+ scrollTop: h,
254
+ itemIndex: M,
255
+ itemOffsetPtg: y,
256
+ startIndex: W,
257
+ endIndex: F
258
+ })), w.current = requestAnimationFrame(() => {
259
+ j.current = !1;
260
+ });
261
+ }, Rt = (t) => {
262
+ const {
263
+ scrollTop: s,
264
+ clientHeight: g,
265
+ scrollHeight: f
266
+ } = m.current, p = st(
267
+ s,
268
+ f - g
269
+ ), u = V({
270
+ scrollTop: p,
271
+ clientHeight: g,
272
+ scrollHeight: f
273
+ }), { index: x, offsetPtg: a } = Mt(u, L);
274
+ B({
275
+ ...d,
276
+ scrollTop: p,
277
+ itemIndex: x,
278
+ itemOffsetPtg: a
279
+ }), t && (O == null || O(t, { index: x }));
280
+ }, dt = (t, s = !1) => {
281
+ const g = Q, { scrollTop: f, clientHeight: p } = m.current, u = st(
282
+ f,
283
+ g - p
284
+ );
285
+ if (!s && (u === d.scrollTop || j.current))
286
+ return;
287
+ const x = V({
288
+ scrollTop: u,
289
+ clientHeight: p,
290
+ scrollHeight: g
291
+ }), { itemIndex: a, itemOffsetPtg: h, startIndex: M, endIndex: y } = Ht(
292
+ x,
293
+ L,
294
+ k
295
+ );
296
+ B({
297
+ ...d,
298
+ scrollTop: u,
299
+ itemIndex: a,
300
+ itemOffsetPtg: h,
301
+ startIndex: M,
302
+ endIndex: y,
303
+ status: "MEASURE_START"
304
+ }), t && (O == null || O(t, { index: a }));
305
+ };
306
+ N(() => () => {
307
+ w.current && cancelAnimationFrame(w.current);
308
+ }, []), N(() => {
309
+ m.current && (Pt && (m.current.scrollTop = 0), dt(null, !0));
310
+ }, [k]), N(() => {
311
+ if (!m.current)
312
+ return;
313
+ let t = null;
314
+ const s = ft.current !== E ? E ? "virtual" : "raw" : "";
315
+ if (ft.current = E, G && $.length !== n.length) {
316
+ const g = zt($, n, Y);
317
+ t = g ? g.index : null;
318
+ }
319
+ if (s || E && t) {
320
+ const { clientHeight: g } = m.current, f = X({
321
+ itemHeight: S(
322
+ b(d.itemIndex, $)
323
+ ),
324
+ itemOffsetPtg: d.itemOffsetPtg,
325
+ scrollPtg: V({
326
+ scrollTop: d.scrollTop,
327
+ scrollHeight: $.length * C,
328
+ clientHeight: g
329
+ }),
330
+ clientHeight: g
331
+ });
332
+ if (s === "raw") {
333
+ let p = f;
334
+ for (let u = 0; u < d.itemIndex; u++)
335
+ p -= S(b(u));
336
+ m.current.scrollTop = -p, j.current = !0, w.current = requestAnimationFrame(() => {
337
+ j.current = !1;
338
+ });
339
+ } else
340
+ mt({
341
+ itemIndex: d.itemIndex,
342
+ relativeTop: f
343
+ });
344
+ }
345
+ }, [n, E]), Kt(() => {
346
+ if (d.status === "MEASURE_START" && m.current) {
347
+ const { scrollTop: t, scrollHeight: s, clientHeight: g } = m.current, f = V({
348
+ scrollTop: t,
349
+ scrollHeight: s,
350
+ clientHeight: g
351
+ });
352
+ let p = Xt({
353
+ scrollPtg: f,
354
+ clientHeight: g,
355
+ scrollTop: t - (at.top + at.bottom) * f,
356
+ itemHeight: S(b(d.itemIndex)),
357
+ itemOffsetPtg: d.itemOffsetPtg
358
+ });
359
+ for (let u = d.itemIndex - 1; u >= d.startIndex; u--)
360
+ p -= S(b(u));
361
+ B({
362
+ ...d,
363
+ startItemTop: p,
364
+ status: "MEASURE_DONE"
365
+ });
366
+ }
367
+ }, [d]), Vt(
368
+ r,
369
+ () => ({
370
+ dom: m.current,
371
+ getRootDOMNode: () => m.current,
372
+ // Scroll to a certain height or an element
373
+ scrollTo: (t) => {
374
+ w.current && cancelAnimationFrame(w.current), w.current = requestAnimationFrame(() => {
375
+ var x;
376
+ if (!m.current)
377
+ return;
378
+ if (typeof t == "number") {
379
+ m.current.scrollTop = t;
380
+ return;
381
+ }
382
+ const s = "index" in t ? t.index : "key" in t ? n.findIndex(
383
+ (a, h) => Y(a, h) === t.key
384
+ ) : 0, g = n[s];
385
+ if (!g)
386
+ return;
387
+ let f = typeof t == "object" && ((x = t.options) != null && x.block) ? t.options.block : (D == null ? void 0 : D.block) || "nearest";
388
+ const { clientHeight: p, scrollTop: u } = m.current;
389
+ if (E && !T) {
390
+ if (f === "nearest") {
391
+ const { itemIndex: a, itemOffsetPtg: h } = d;
392
+ if (Math.abs(a - s) < k) {
393
+ let M = X({
394
+ itemHeight: S(b(a)),
395
+ itemOffsetPtg: h,
396
+ clientHeight: p,
397
+ scrollPtg: V(m.current)
398
+ });
399
+ if (s < a)
400
+ for (let y = s; y < a; y++)
401
+ M -= S(b(y));
402
+ else
403
+ for (let y = a; y < s; y++)
404
+ M += S(b(y));
405
+ if (M < 0 || M > p)
406
+ f = M < 0 ? "start" : "end";
407
+ else
408
+ return;
409
+ } else
410
+ f = s < a ? "start" : "end";
411
+ }
412
+ B({
413
+ ...d,
414
+ startIndex: Math.max(0, s - k),
415
+ endIndex: Math.min(L - 1, s + k)
416
+ }).then(() => {
417
+ const a = S(Y(g, s));
418
+ mt({
419
+ itemIndex: s,
420
+ relativeTop: f === "start" ? 0 : (p - a) / (f === "center" ? 2 : 1)
421
+ });
422
+ });
423
+ } else {
424
+ const a = S(
425
+ b(s)
426
+ );
427
+ let h = 0;
428
+ for (let F = 0; F < s; F++)
429
+ h += S(b(F));
430
+ const M = h + a, y = h + a / 2;
431
+ if (y > u && y < p + u)
432
+ return;
433
+ f === "nearest" && (h < u ? f = "start" : M > u + p && (f = "end"));
434
+ const W = p - a;
435
+ m.current.scrollTop = h - (f === "start" ? 0 : W / (f === "center" ? 2 : 1));
436
+ }
437
+ });
438
+ }
439
+ }),
440
+ [n, C, d]
441
+ );
442
+ const Z = (t, s) => t.map((g, f) => {
443
+ const p = s + f, u = ut(g, p, {
444
+ style: {},
445
+ itemIndex: f
446
+ }), x = Y(g, p);
447
+ return it.cloneElement(u, {
448
+ key: x,
449
+ ref: (a) => {
450
+ const { current: h } = K;
451
+ a && d.status === "MEASURE_START" && (!T || h[x] === void 0) && (T ? (h[U] || (h[U] = yt(a, !0)), h[x] = h[U]) : h[x] = yt(a, !0)), Ct(u == null ? void 0 : u.ref) && (u == null || u.ref(a));
452
+ }
453
+ });
454
+ }), z = A(null);
455
+ N(() => {
456
+ z.current = null;
457
+ }, [n]);
458
+ const vt = () => {
459
+ if (v) {
460
+ const t = z.current === null ? Qt(n) : z.current, s = n[t];
461
+ return z.current = t, s ? /* @__PURE__ */ P("div", { style: { height: 1, overflow: "hidden", opacity: 0 }, children: ut(s, t, { style: {} }) }) : null;
462
+ }
463
+ return null;
464
+ };
465
+ function At() {
466
+ if (m.current && !Tt(q)) {
467
+ const { clientHeight: t } = m.current;
468
+ Et(t);
469
+ }
470
+ }
471
+ return N(() => {
472
+ const t = Yt([m.current], At);
473
+ return () => {
474
+ t();
475
+ };
476
+ }, [m.current]), /* @__PURE__ */ P(
477
+ _,
478
+ {
479
+ ref: m,
480
+ style: {
481
+ overflowY: "auto",
482
+ overflowAnchor: "none",
483
+ ...o,
484
+ maxHeight: q
485
+ },
486
+ className: e,
487
+ onScroll: E ? dt : Rt,
488
+ ...St,
489
+ children: E ? /* @__PURE__ */ Ot(Lt, { children: [
490
+ /* @__PURE__ */ P(
491
+ xt,
492
+ {
493
+ height: Q,
494
+ outerStyle: lt,
495
+ innerStyle: ct,
496
+ offset: d.status === "MEASURE_DONE" ? d.startItemTop : 0,
497
+ children: /* @__PURE__ */ P(J, { children: Z(
498
+ n.slice(d.startIndex, d.endIndex + 1),
499
+ d.startIndex
500
+ ) })
501
+ }
502
+ ),
503
+ vt()
504
+ ] }) : bt ? /* @__PURE__ */ P(
505
+ xt,
506
+ {
507
+ height: G,
508
+ outerStyle: lt,
509
+ innerStyle: ct,
510
+ children: /* @__PURE__ */ P(J, { children: Z(n, 0) })
511
+ }
512
+ ) : /* @__PURE__ */ P(J, { children: Z(n, 0) })
513
+ }
514
+ );
515
+ });
516
+ ne.displayName = "VirtualList";
517
+ export {
518
+ ne as V
519
+ };
@@ -0,0 +1,10 @@
1
+ import { useRef as c, useEffect as f } from "react";
2
+ function n(r, t = []) {
3
+ const e = c(!1);
4
+ f(() => {
5
+ e.current ? r() : e.current = !0;
6
+ }, t);
7
+ }
8
+ export {
9
+ n as c
10
+ };
@@ -0,0 +1,15 @@
1
+ import c from "lodash/isNumber";
2
+ import s from "lodash/isPlainObject";
3
+ import m from "lodash/isString";
4
+ import h from "react";
5
+ const p = (o) => m(o) || c(o);
6
+ function l(o) {
7
+ const i = [""];
8
+ return s(o) && o.children && (o = o.children), h.Children.forEach(o, (r) => {
9
+ const n = i.length - 1, t = i[n];
10
+ p(r) && p(t) ? i[n] = `${t}${r}` : r && r.props && r.props.children && i.push(l(r.props.children));
11
+ }), i.join("");
12
+ }
13
+ export {
14
+ l as u
15
+ };
@@ -0,0 +1,11 @@
1
+ function o(c, e) {
2
+ const t = {
3
+ ...c
4
+ };
5
+ return e.forEach((n) => {
6
+ n in t && delete t[n];
7
+ }), t;
8
+ }
9
+ export {
10
+ o as c
11
+ };
@@ -0,0 +1,26 @@
1
+ import { useRef as f, useEffect as u } from "react";
2
+ function w(c, { hidden: d }) {
3
+ const r = f(!1), o = f({}), l = (e) => e.tagName === "BODY" ? window.innerWidth - (document.body.clientWidth || document.documentElement.clientWidth) : e.offsetWidth - e.clientWidth, s = () => {
4
+ const e = c();
5
+ if (e && e.style.overflow !== "hidden") {
6
+ const t = e.style;
7
+ r.current = !0;
8
+ const n = l(e);
9
+ n && (o.current.width = t.width, e.style.width = `calc(${e.style.width || "100%"} - ${n}px)`), o.current.overflow = t.overflow, e.style.overflow = "hidden";
10
+ }
11
+ }, i = () => {
12
+ if (r.current && c()) {
13
+ const e = c(), t = o.current;
14
+ Object.keys(t).forEach(
15
+ (n) => e.style[n] = t[n]
16
+ );
17
+ }
18
+ r.current = !1, o.current = {};
19
+ };
20
+ return u(() => (d ? s() : i(), () => {
21
+ i();
22
+ }), [c, d]), [i, s];
23
+ }
24
+ export {
25
+ w as y
26
+ };