@tendaui/react 1.1.1 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/es/_chunks/{dep-D7LanWes.js → dep-4LYjB3c6.js} +3 -18
  2. package/es/_chunks/dep-4LYjB3c6.js.map +1 -0
  3. package/es/_chunks/dep-5U9UjDaf.js +345 -0
  4. package/es/_chunks/dep-5U9UjDaf.js.map +1 -0
  5. package/es/_chunks/{dep-B7HmDtze.js → dep-B4_O1Vgv.js} +2 -2
  6. package/es/_chunks/{dep-B7HmDtze.js.map → dep-B4_O1Vgv.js.map} +1 -1
  7. package/es/_chunks/dep-BP0-apUT.js.map +1 -1
  8. package/es/_chunks/dep-BRbJGDI9.js +7 -0
  9. package/es/_chunks/dep-BRbJGDI9.js.map +1 -0
  10. package/es/_chunks/{dep-EcrDKDlu.js → dep-BYlJzn45.js} +10 -9
  11. package/es/_chunks/dep-BYlJzn45.js.map +1 -0
  12. package/es/_chunks/dep-BbeHB7S3.js +116 -0
  13. package/es/_chunks/dep-BbeHB7S3.js.map +1 -0
  14. package/es/_chunks/{dep-DB5wmwh1.js → dep-Bjfn7Zv_.js} +2 -2
  15. package/es/_chunks/{dep-DB5wmwh1.js.map → dep-Bjfn7Zv_.js.map} +1 -1
  16. package/es/_chunks/{dep-C36au4Ip.js → dep-BuIAffJt.js} +2 -2
  17. package/es/_chunks/{dep-C36au4Ip.js.map → dep-BuIAffJt.js.map} +1 -1
  18. package/es/_chunks/{dep-bWaVq_y3.js → dep-ByzdZjUR.js} +2 -2
  19. package/es/_chunks/dep-ByzdZjUR.js.map +1 -0
  20. package/es/_chunks/dep-CD_4-1Xb.js +103 -0
  21. package/es/_chunks/dep-CD_4-1Xb.js.map +1 -0
  22. package/es/_chunks/{dep-Dk2xX8lh.js → dep-CJCt0IS0.js} +5 -212
  23. package/es/_chunks/dep-CJCt0IS0.js.map +1 -0
  24. package/es/_chunks/dep-CMPsNAXF.js +52 -0
  25. package/es/_chunks/dep-CMPsNAXF.js.map +1 -0
  26. package/es/_chunks/dep-COy5g3FT.js +512 -0
  27. package/es/_chunks/dep-COy5g3FT.js.map +1 -0
  28. package/es/_chunks/{dep-CoIiHOgo.js → dep-CRURwzDj.js} +3 -3
  29. package/es/_chunks/{dep-CoIiHOgo.js.map → dep-CRURwzDj.js.map} +1 -1
  30. package/es/_chunks/dep-C_wPqvpm.js +36 -0
  31. package/es/_chunks/dep-C_wPqvpm.js.map +1 -0
  32. package/es/_chunks/dep-Ccktr_jk.js +33 -0
  33. package/es/_chunks/dep-Ccktr_jk.js.map +1 -0
  34. package/es/_chunks/dep-Chz4ZJCb.js +20 -0
  35. package/es/_chunks/dep-Chz4ZJCb.js.map +1 -0
  36. package/es/_chunks/dep-CkmtEv0Y.js +55 -0
  37. package/es/_chunks/dep-CkmtEv0Y.js.map +1 -0
  38. package/es/_chunks/dep-DJmE940f.js +764 -0
  39. package/es/_chunks/dep-DJmE940f.js.map +1 -0
  40. package/es/_chunks/{dep-DHWwZ2Nj.js → dep-DQ6kXoi8.js} +2 -2
  41. package/es/_chunks/{dep-DHWwZ2Nj.js.map → dep-DQ6kXoi8.js.map} +1 -1
  42. package/es/_chunks/{dep-0QH2Ee4R.js → dep-DRwijJcv.js} +5 -5
  43. package/es/_chunks/dep-DRwijJcv.js.map +1 -0
  44. package/es/_chunks/dep-DTlQ2dCA.js +46 -0
  45. package/es/_chunks/dep-DTlQ2dCA.js.map +1 -0
  46. package/es/_chunks/dep-DURB9x8g.js +170 -0
  47. package/es/_chunks/dep-DURB9x8g.js.map +1 -0
  48. package/es/_chunks/{dep-DZ_0EvBk.js → dep-DX65P8M9.js} +4 -45
  49. package/es/_chunks/dep-DX65P8M9.js.map +1 -0
  50. package/es/_chunks/{dep-BH5n5r1M.js → dep-DbVHGoUC.js} +2 -2
  51. package/es/_chunks/dep-DbVHGoUC.js.map +1 -0
  52. package/es/_chunks/dep-Dlppf0JU.js +214 -0
  53. package/es/_chunks/dep-Dlppf0JU.js.map +1 -0
  54. package/es/_chunks/dep-Dr5wkz0z.js +266 -0
  55. package/es/_chunks/dep-Dr5wkz0z.js.map +1 -0
  56. package/es/_chunks/dep-DwWrhxkd.js.map +1 -1
  57. package/es/_chunks/dep-Tshfumgl.js +31 -0
  58. package/es/_chunks/dep-Tshfumgl.js.map +1 -0
  59. package/es/_chunks/{dep-u1x3x6MJ.js → dep-gy8uvBaS.js} +2 -2
  60. package/es/_chunks/{dep-u1x3x6MJ.js.map → dep-gy8uvBaS.js.map} +1 -1
  61. package/es/_chunks/dep-oUgTcXgm.js +11 -0
  62. package/es/_chunks/dep-oUgTcXgm.js.map +1 -0
  63. package/es/_chunks/dep-zOZQ0R9g.js +1181 -0
  64. package/es/_chunks/dep-zOZQ0R9g.js.map +1 -0
  65. package/es/alert/Alert.d.ts +7 -0
  66. package/es/alert/Alert.js +4 -3
  67. package/es/alert/Alert.js.map +1 -1
  68. package/es/alert/defaultProps.d.ts +2 -0
  69. package/es/alert/index.d.ts +5 -0
  70. package/es/alert/index.js +4 -3
  71. package/es/alert/index.js.map +1 -1
  72. package/es/alert/style/css.d.ts +1 -0
  73. package/es/alert/style/index.d.ts +1 -0
  74. package/es/alert/type.d.ts +45 -0
  75. package/es/badge/Badge.d.ts +7 -0
  76. package/es/badge/Badge.js +3 -2
  77. package/es/badge/Badge.js.map +1 -1
  78. package/es/badge/defaultProps.d.ts +2 -0
  79. package/es/badge/index.d.ts +5 -0
  80. package/es/badge/index.js +3 -2
  81. package/es/badge/index.js.map +1 -1
  82. package/es/badge/style/css.d.ts +1 -0
  83. package/es/badge/style/index.d.ts +1 -0
  84. package/es/badge/type.d.ts +50 -0
  85. package/es/button/Button.d.ts +6 -0
  86. package/es/button/Button.js +7 -5
  87. package/es/button/Button.js.map +1 -1
  88. package/es/button/_example/base.js +171 -0
  89. package/es/button/_example/base.js.map +1 -0
  90. package/es/button/_example/icon.js +181 -0
  91. package/es/button/_example/icon.js.map +1 -0
  92. package/es/button/defaultProps.d.ts +2 -0
  93. package/es/button/index.d.ts +5 -0
  94. package/es/button/index.js +7 -5
  95. package/es/button/index.js.map +1 -1
  96. package/es/button/style/css.d.ts +1 -0
  97. package/es/button/style/index.d.ts +1 -0
  98. package/es/button/type.d.ts +81 -0
  99. package/es/checkbox/Checkbox.d.ts +10 -0
  100. package/es/checkbox/Checkbox.js +5 -4
  101. package/es/checkbox/Checkbox.js.map +1 -1
  102. package/es/checkbox/CheckboxGroup.d.ts +14 -0
  103. package/es/checkbox/CheckboxGroup.js +5 -4
  104. package/es/checkbox/CheckboxGroup.js.map +1 -1
  105. package/es/checkbox/defaultProps.d.ts +3 -0
  106. package/es/checkbox/index.d.ts +11 -0
  107. package/es/checkbox/index.js +5 -4
  108. package/es/checkbox/index.js.map +1 -1
  109. package/es/checkbox/style/css.d.ts +1 -0
  110. package/es/checkbox/style/index.d.ts +1 -0
  111. package/es/checkbox/type.d.ts +115 -0
  112. package/es/color-picker/ColorPickPanel.d.ts +4 -0
  113. package/es/color-picker/ColorPickPanel.js +44 -0
  114. package/es/color-picker/ColorPickPanel.js.map +1 -0
  115. package/es/color-picker/ColorPicker.d.ts +4 -0
  116. package/es/color-picker/ColorPicker.js +118 -0
  117. package/es/color-picker/ColorPicker.js.map +1 -0
  118. package/es/color-picker/components/panel/alpha.d.ts +4 -0
  119. package/es/color-picker/components/panel/alpha.js +44 -0
  120. package/es/color-picker/components/panel/alpha.js.map +1 -0
  121. package/es/color-picker/components/panel/format/index.d.ts +10 -0
  122. package/es/color-picker/components/panel/format/index.js +128 -0
  123. package/es/color-picker/components/panel/format/index.js.map +1 -0
  124. package/es/color-picker/components/panel/format/inputs.d.ts +4 -0
  125. package/es/color-picker/components/panel/format/inputs.js +147 -0
  126. package/es/color-picker/components/panel/format/inputs.js.map +1 -0
  127. package/es/color-picker/components/panel/header.d.ts +13 -0
  128. package/es/color-picker/components/panel/header.js +60 -0
  129. package/es/color-picker/components/panel/header.js.map +1 -0
  130. package/es/color-picker/components/panel/hue.d.ts +4 -0
  131. package/es/color-picker/components/panel/hue.js +33 -0
  132. package/es/color-picker/components/panel/hue.js.map +1 -0
  133. package/es/color-picker/components/panel/index.d.ts +4 -0
  134. package/es/color-picker/components/panel/index.js +32 -0
  135. package/es/color-picker/components/panel/index.js.map +1 -0
  136. package/es/color-picker/components/panel/saturation.d.ts +4 -0
  137. package/es/color-picker/components/panel/saturation.js +101 -0
  138. package/es/color-picker/components/panel/saturation.js.map +1 -0
  139. package/es/color-picker/components/panel/slider.d.ts +11 -0
  140. package/es/color-picker/components/panel/slider.js +121 -0
  141. package/es/color-picker/components/panel/slider.js.map +1 -0
  142. package/es/color-picker/components/panel/swatches.d.ts +11 -0
  143. package/es/color-picker/components/panel/swatches.js +100 -0
  144. package/es/color-picker/components/panel/swatches.js.map +1 -0
  145. package/es/color-picker/components/trigger.d.ts +9 -0
  146. package/es/color-picker/components/trigger.js +73 -0
  147. package/es/color-picker/components/trigger.js.map +1 -0
  148. package/es/color-picker/defaultProps.d.ts +2 -0
  149. package/es/color-picker/helpers.d.ts +5 -0
  150. package/es/color-picker/hooks/useClassNames.d.ts +2 -0
  151. package/es/color-picker/hooks/useStyles.d.ts +14 -0
  152. package/es/color-picker/index.d.ts +6 -0
  153. package/es/color-picker/index.js +62 -0
  154. package/es/color-picker/index.js.map +1 -0
  155. package/es/color-picker/style/index.css +597 -0
  156. package/es/color-picker/style/index.d.ts +1 -0
  157. package/es/color-picker/style/index.js +2 -0
  158. package/es/color-picker/style/index.js.map +1 -0
  159. package/es/color-picker/type.d.ts +135 -0
  160. package/es/color-picker/utils/color-picker/cmyk.d.ts +27 -0
  161. package/es/color-picker/utils/color-picker/color.d.ts +144 -0
  162. package/es/color-picker/utils/color-picker/constants.d.ts +30 -0
  163. package/es/color-picker/utils/color-picker/draggable.d.ts +23 -0
  164. package/es/color-picker/utils/color-picker/format.d.ts +64 -0
  165. package/es/color-picker/utils/color-picker/gradient.d.ts +22 -0
  166. package/es/color-picker/utils/color-picker/index.d.ts +7 -0
  167. package/es/color-picker/utils/color-picker/index.js +147 -0
  168. package/es/color-picker/utils/color-picker/index.js.map +1 -0
  169. package/es/color-picker/utils/color-picker/types.d.ts +28 -0
  170. package/es/common/Check.d.ts +22 -0
  171. package/es/common/Check.js +4 -3
  172. package/es/common/Check.js.map +1 -1
  173. package/es/common/FakeArrow.d.ts +9 -0
  174. package/es/common/FakeArrow.js +3 -2
  175. package/es/common/FakeArrow.js.map +1 -1
  176. package/es/common/PluginContainer.d.ts +9 -0
  177. package/es/common/PluginContainer.js +2 -1
  178. package/es/common/PluginContainer.js.map +1 -1
  179. package/es/common/Portal.d.ts +16 -0
  180. package/es/common/Portal.js +6 -3
  181. package/es/common/Portal.js.map +1 -1
  182. package/es/common/observe.d.ts +1 -0
  183. package/es/common.d.ts +81 -0
  184. package/es/config-provider/ConfigContext.d.ts +13 -0
  185. package/es/config-provider/ConfigContext.js +5 -16
  186. package/es/config-provider/ConfigContext.js.map +1 -1
  187. package/es/config-provider/ConfigProvider.d.ts +25 -0
  188. package/es/config-provider/ConfigProvider.js +2 -1
  189. package/es/config-provider/ConfigProvider.js.map +1 -1
  190. package/es/config-provider/index.d.ts +7 -0
  191. package/es/config-provider/index.js +2 -1
  192. package/es/config-provider/index.js.map +1 -1
  193. package/es/config-provider/type.d.ts +1029 -0
  194. package/es/dialog/Dialog.d.ts +8 -0
  195. package/es/dialog/Dialog.js +12 -149
  196. package/es/dialog/Dialog.js.map +1 -1
  197. package/es/dialog/DialogCard.d.ts +8 -0
  198. package/es/dialog/DialogCard.js +9 -7
  199. package/es/dialog/DialogCard.js.map +1 -1
  200. package/es/dialog/defaultProps.d.ts +6 -0
  201. package/es/dialog/hooks/useDialogDrag.d.ts +7 -0
  202. package/es/dialog/hooks/useDialogEsc.d.ts +3 -0
  203. package/es/dialog/hooks/useDialogPosition.d.ts +2 -0
  204. package/es/dialog/hooks/useLockStyle.d.ts +2 -0
  205. package/es/dialog/index.d.ts +8 -0
  206. package/es/dialog/index.js +12 -8
  207. package/es/dialog/index.js.map +1 -1
  208. package/es/dialog/plugin.d.ts +6 -0
  209. package/es/dialog/plugin.js +15 -10
  210. package/es/dialog/plugin.js.map +1 -1
  211. package/es/dialog/style/css.d.ts +1 -0
  212. package/es/dialog/style/index.d.ts +1 -0
  213. package/es/dialog/type.d.ts +227 -0
  214. package/es/dialog/utils.d.ts +1 -0
  215. package/es/drawer/Drawer.d.ts +11 -0
  216. package/es/drawer/Drawer.js +458 -0
  217. package/es/drawer/Drawer.js.map +1 -0
  218. package/es/drawer/defaultProps.d.ts +2 -0
  219. package/es/drawer/hooks/useDrag.d.ts +8 -0
  220. package/es/drawer/hooks/useLockStyle.d.ts +1 -0
  221. package/es/drawer/index.d.ts +4 -0
  222. package/es/drawer/index.js +39 -0
  223. package/es/drawer/index.js.map +1 -0
  224. package/es/drawer/style/css.d.ts +1 -0
  225. package/es/drawer/style/css.js +1 -0
  226. package/es/drawer/style/index.css +231 -0
  227. package/es/drawer/style/index.d.ts +1 -0
  228. package/es/drawer/style/index.js +2 -0
  229. package/es/drawer/style/index.js.map +1 -0
  230. package/es/drawer/type.d.ts +199 -0
  231. package/es/drawer/utils/index.d.ts +23 -0
  232. package/es/drawer/utils/index.js +46 -0
  233. package/es/drawer/utils/index.js.map +1 -0
  234. package/es/fireworks/Fireworks.d.ts +7 -0
  235. package/es/fireworks/Fireworks.js +139 -0
  236. package/es/fireworks/Fireworks.js.map +1 -0
  237. package/es/fireworks/index.d.ts +5 -0
  238. package/es/fireworks/index.js +16 -0
  239. package/es/fireworks/index.js.map +1 -0
  240. package/es/fireworks/style/css.d.ts +1 -0
  241. package/es/fireworks/style/css.js +2 -0
  242. package/es/fireworks/style/index.css +121 -0
  243. package/es/fireworks/style/index.d.ts +1 -0
  244. package/es/fireworks/style/index.js +2 -0
  245. package/es/fireworks/style/index.js.map +1 -0
  246. package/es/fireworks/type.d.ts +69 -0
  247. package/es/form/Form.d.ts +8 -0
  248. package/es/form/Form.js +14 -10
  249. package/es/form/Form.js.map +1 -1
  250. package/es/form/FormContext.d.ts +59 -0
  251. package/es/form/FormItem.d.ts +23 -0
  252. package/es/form/FormItem.js +14 -10
  253. package/es/form/FormItem.js.map +1 -1
  254. package/es/form/FormList.d.ts +4 -0
  255. package/es/form/FormList.js +2 -1
  256. package/es/form/FormList.js.map +1 -1
  257. package/es/form/const.d.ts +6 -0
  258. package/es/form/defaultProps.d.ts +3 -0
  259. package/es/form/easing.d.ts +2 -0
  260. package/es/form/formModel.d.ts +37 -0
  261. package/es/form/hooks/interface.d.ts +16 -0
  262. package/es/form/hooks/useForm.d.ts +3 -0
  263. package/es/form/hooks/useFormItemInitialData.d.ts +9 -0
  264. package/es/form/hooks/useFormItemStyle.d.ts +10 -0
  265. package/es/form/hooks/useFormItemStyle.js +4 -3
  266. package/es/form/hooks/useFormItemStyle.js.map +1 -1
  267. package/es/form/hooks/useInstance.d.ts +16 -0
  268. package/es/form/hooks/useInstance.js +5 -4
  269. package/es/form/hooks/useInstance.js.map +1 -1
  270. package/es/form/hooks/useWatch.d.ts +3 -0
  271. package/es/form/index.d.ts +7 -0
  272. package/es/form/index.js +14 -10
  273. package/es/form/index.js.map +1 -1
  274. package/es/form/scroll.d.ts +39 -0
  275. package/es/form/style/css.d.ts +1 -0
  276. package/es/form/style/index.d.ts +1 -0
  277. package/es/form/type.d.ts +486 -0
  278. package/es/form/utils/index.d.ts +5 -0
  279. package/es/global-config/default-config.d.ts +84 -0
  280. package/es/global-config/locale/ar_KW.d.ts +239 -0
  281. package/es/global-config/locale/en_US.d.ts +263 -0
  282. package/es/global-config/locale/it_IT.d.ts +263 -0
  283. package/es/global-config/locale/ja_JP.d.ts +263 -0
  284. package/es/global-config/locale/ko_KR.d.ts +263 -0
  285. package/es/global-config/locale/ru_RU.d.ts +263 -0
  286. package/es/global-config/locale/zh_CN.d.ts +263 -0
  287. package/es/global-config/locale/zh_TW.d.ts +263 -0
  288. package/es/global-config/mobile/default-config.d.ts +7 -0
  289. package/es/global-config/mobile/locale/ar_KW.d.ts +98 -0
  290. package/es/global-config/mobile/locale/en_US.d.ts +99 -0
  291. package/es/global-config/mobile/locale/it_IT.d.ts +99 -0
  292. package/es/global-config/mobile/locale/ja_JP.d.ts +99 -0
  293. package/es/global-config/mobile/locale/ko_KR.d.ts +99 -0
  294. package/es/global-config/mobile/locale/ru_RU.d.ts +99 -0
  295. package/es/global-config/mobile/locale/zh_CN.d.ts +99 -0
  296. package/es/global-config/mobile/locale/zh_TW.d.ts +99 -0
  297. package/es/global-config/t.d.ts +25 -0
  298. package/es/hooks/useAttach.d.ts +10 -0
  299. package/es/hooks/useCommonClassName.d.ts +54 -0
  300. package/es/hooks/useConfig.d.ts +2 -0
  301. package/es/hooks/useControlled.d.ts +9 -0
  302. package/es/hooks/useDeepEffect.d.ts +7 -0
  303. package/es/hooks/useDefaultProps.d.ts +1 -0
  304. package/es/hooks/useDomCallback.d.ts +1 -0
  305. package/es/hooks/useDomRefCallback.d.ts +1 -0
  306. package/es/hooks/useDragSorter.d.ts +28 -0
  307. package/es/hooks/useEventCallback.d.ts +9 -0
  308. package/es/hooks/useGlobalConfig.d.ts +1 -0
  309. package/es/hooks/useGlobalIcon.d.ts +5 -0
  310. package/es/hooks/useLastest.d.ts +2 -0
  311. package/es/hooks/useLayoutEffect.d.ts +3 -0
  312. package/es/hooks/useMouseEvent.d.ts +25 -0
  313. package/es/hooks/useMutationObserver.d.ts +4 -0
  314. package/es/hooks/usePopper.d.ts +19 -0
  315. package/es/hooks/useResizeObserve.d.ts +1 -0
  316. package/es/hooks/useRipple.d.ts +0 -0
  317. package/es/hooks/useSetState.d.ts +7 -0
  318. package/es/hooks/useVirtualScroll.d.ts +30 -0
  319. package/es/hooks/useWindowSize.d.ts +6 -0
  320. package/es/index.d.ts +25 -0
  321. package/es/index.js +68 -14
  322. package/es/index.js.map +1 -1
  323. package/es/input/Input.d.ts +16 -0
  324. package/es/input/Input.js +5 -5
  325. package/es/input/Input.js.map +1 -1
  326. package/es/input/InputGroup.d.ts +10 -0
  327. package/es/input/defaultProps.d.ts +17 -0
  328. package/es/input/index.d.ts +6 -0
  329. package/es/input/index.js +5 -3
  330. package/es/input/index.js.map +1 -1
  331. package/es/input/style/css.d.ts +1 -0
  332. package/es/input/style/index.d.ts +1 -0
  333. package/es/input/type.d.ts +237 -0
  334. package/es/input-number/InputNumber.d.ts +17 -0
  335. package/es/input-number/InputNumber.js +139 -0
  336. package/es/input-number/InputNumber.js.map +1 -0
  337. package/es/input-number/defaultProps.d.ts +2 -0
  338. package/es/input-number/index.d.ts +5 -0
  339. package/es/input-number/index.js +43 -0
  340. package/es/input-number/index.js.map +1 -0
  341. package/es/input-number/style/css.d.ts +1 -0
  342. package/es/input-number/style/css.js +1 -0
  343. package/es/input-number/style/index.css +331 -0
  344. package/es/input-number/style/index.d.ts +1 -0
  345. package/es/input-number/style/index.js +2 -0
  346. package/es/input-number/style/index.js.map +1 -0
  347. package/es/input-number/type.d.ts +156 -0
  348. package/es/input-number/useInputNumber.d.ts +51 -0
  349. package/es/input-number/useInputNumber.js +809 -0
  350. package/es/input-number/useInputNumber.js.map +1 -0
  351. package/es/ip-input/IPInput.d.ts +5 -0
  352. package/es/ip-input/IPInput.js +16 -0
  353. package/es/ip-input/IPInput.js.map +1 -0
  354. package/es/ip-input/defaultProps.d.ts +2 -0
  355. package/es/ip-input/index.d.ts +3 -0
  356. package/es/ip-input/index.js +16 -0
  357. package/es/ip-input/index.js.map +1 -0
  358. package/es/ip-input/style/index.css +323 -0
  359. package/es/ip-input/style/index.d.ts +1 -0
  360. package/es/ip-input/style/index.js +2 -0
  361. package/es/ip-input/style/index.js.map +1 -0
  362. package/es/ip-input/type.d.ts +113 -0
  363. package/es/ip-input/utils.d.ts +35 -0
  364. package/es/layout/Aside.d.ts +11 -0
  365. package/es/layout/Aside.js +41 -0
  366. package/es/layout/Aside.js.map +1 -0
  367. package/es/layout/Layout.d.ts +26 -0
  368. package/es/layout/Layout.js +106 -0
  369. package/es/layout/Layout.js.map +1 -0
  370. package/es/layout/defaultProps.d.ts +5 -0
  371. package/es/layout/index.d.ts +10 -0
  372. package/es/layout/index.js +19 -0
  373. package/es/layout/index.js.map +1 -0
  374. package/es/layout/style/index.css +56 -0
  375. package/es/layout/style/index.d.ts +1 -0
  376. package/es/layout/style/index.js +2 -0
  377. package/es/layout/style/index.js.map +1 -0
  378. package/es/layout/type.d.ts +38 -0
  379. package/es/list/List.d.ts +17 -0
  380. package/es/list/List.js +217 -0
  381. package/es/list/List.js.map +1 -0
  382. package/es/list/ListItem.d.ts +15 -0
  383. package/es/list/ListItem.js +31 -0
  384. package/es/list/ListItem.js.map +1 -0
  385. package/es/list/ListItemMeta.d.ts +10 -0
  386. package/es/list/ListItemMeta.js +45 -0
  387. package/es/list/ListItemMeta.js.map +1 -0
  388. package/es/list/defaultProps.d.ts +7 -0
  389. package/es/list/hooks/useListVirtualScroll.d.ts +24 -0
  390. package/es/list/index.d.ts +10 -0
  391. package/es/list/index.js +40 -0
  392. package/es/list/index.js.map +1 -0
  393. package/es/list/style/css.d.ts +1 -0
  394. package/es/list/style/css.js +1 -0
  395. package/es/list/style/index.css +172 -0
  396. package/es/list/style/index.d.ts +1 -0
  397. package/es/list/style/index.js +2 -0
  398. package/es/list/style/index.js.map +1 -0
  399. package/es/list/type.d.ts +92 -0
  400. package/es/loading/Gradient.d.ts +6 -0
  401. package/es/loading/Gradient.js +4 -3
  402. package/es/loading/Gradient.js.map +1 -1
  403. package/es/loading/Loading.d.ts +7 -0
  404. package/es/loading/Loading.js +7 -5
  405. package/es/loading/Loading.js.map +1 -1
  406. package/es/loading/circleAdapter.d.ts +1 -0
  407. package/es/loading/defaultProps.d.ts +2 -0
  408. package/es/loading/index.d.ts +5 -0
  409. package/es/loading/index.js +7 -5
  410. package/es/loading/index.js.map +1 -1
  411. package/es/loading/style/css.d.ts +1 -0
  412. package/es/loading/style/index.d.ts +1 -0
  413. package/es/loading/type.d.ts +68 -0
  414. package/es/loading/utils/setStyle.d.ts +7 -0
  415. package/es/locale/LocalReceiver.d.ts +6 -0
  416. package/es/locale/ar_KW.d.ts +3 -0
  417. package/es/locale/en_US.d.ts +3 -0
  418. package/es/locale/it_IT.d.ts +3 -0
  419. package/es/locale/ja_JP.d.ts +3 -0
  420. package/es/locale/ko_KR.d.ts +3 -0
  421. package/es/locale/ru_RU.d.ts +3 -0
  422. package/es/locale/zh_CN.d.ts +3 -0
  423. package/es/locale/zh_TW.d.ts +3 -0
  424. package/es/myform/index.d.ts +0 -0
  425. package/es/notification/Notify.d.ts +11 -0
  426. package/es/notification/NotifyContainer.d.ts +13 -0
  427. package/es/notification/NotifyContainer.js +3 -2
  428. package/es/notification/NotifyContainer.js.map +1 -1
  429. package/es/notification/NotifyContext.d.ts +23 -0
  430. package/es/notification/NotifyContext.js +3 -2
  431. package/es/notification/NotifyContext.js.map +1 -1
  432. package/es/notification/NotifyItem.d.ts +4 -0
  433. package/es/notification/NotifyItem.js +3 -2
  434. package/es/notification/NotifyItem.js.map +1 -1
  435. package/es/notification/index.d.ts +3 -0
  436. package/es/notification/index.js +3 -2
  437. package/es/notification/index.js.map +1 -1
  438. package/es/notification/style/css.d.ts +1 -0
  439. package/es/notification/style/index.d.ts +1 -0
  440. package/es/notification/type.d.ts +22 -0
  441. package/es/popup/Popup.d.ts +21 -0
  442. package/es/popup/Popup.js +36 -100
  443. package/es/popup/Popup.js.map +1 -1
  444. package/es/popup/defaultProps.d.ts +5 -0
  445. package/es/popup/hooks/useTrigger.d.ts +20 -0
  446. package/es/popup/index.d.ts +5 -0
  447. package/es/popup/index.js +8 -4
  448. package/es/popup/index.js.map +1 -1
  449. package/es/popup/style/css.d.ts +1 -0
  450. package/es/popup/style/index.d.ts +1 -0
  451. package/es/popup/type.d.ts +109 -0
  452. package/es/portal/Portal.d.ts +16 -0
  453. package/es/portal/Portal.js +2 -1
  454. package/es/portal/Portal.js.map +1 -1
  455. package/es/portal/index.d.ts +1 -0
  456. package/es/portal/index.js +2 -1
  457. package/es/portal/index.js.map +1 -1
  458. package/es/radio/Radio.d.ts +8 -0
  459. package/es/radio/Radio.js +22 -0
  460. package/es/radio/Radio.js.map +1 -0
  461. package/es/radio/RadioGroup.d.ts +14 -0
  462. package/es/radio/RadioGroup.js +22 -0
  463. package/es/radio/RadioGroup.js.map +1 -0
  464. package/es/radio/defaultProps.d.ts +3 -0
  465. package/es/radio/index.d.ts +10 -0
  466. package/es/radio/index.js +28 -0
  467. package/es/radio/index.js.map +1 -0
  468. package/es/radio/style/css.d.ts +0 -0
  469. package/es/radio/style/css.js +0 -0
  470. package/es/radio/style/index.css +333 -0
  471. package/es/radio/style/index.d.ts +1 -0
  472. package/es/radio/style/index.js +2 -0
  473. package/es/radio/style/index.js.map +1 -0
  474. package/es/radio/type.d.ts +117 -0
  475. package/es/radio/useKeyboard.d.ts +4 -0
  476. package/es/select/Option.d.ts +24 -0
  477. package/es/select/Option.js +3 -2
  478. package/es/select/Option.js.map +1 -1
  479. package/es/select/OptionGroup.d.ts +7 -0
  480. package/es/select/OptionGroup.js +4 -3
  481. package/es/select/OptionGroup.js.map +1 -1
  482. package/es/select/PopupContent.d.ts +24 -0
  483. package/es/select/PopupContent.js +6 -4
  484. package/es/select/PopupContent.js.map +1 -1
  485. package/es/select/Select.d.ts +13 -0
  486. package/es/select/Select.js +21 -12
  487. package/es/select/Select.js.map +1 -1
  488. package/es/select/defaultProps.d.ts +4 -0
  489. package/es/select/hooks/useOptions.d.ts +16 -0
  490. package/es/select/hooks/usePanelVirtualScroll.d.ts +24 -0
  491. package/es/select/index.d.ts +8 -0
  492. package/es/select/index.js +14 -8
  493. package/es/select/index.js.map +1 -1
  494. package/es/select/style/css.d.ts +1 -0
  495. package/es/select/style/index.d.ts +1 -0
  496. package/es/select/type.d.ts +344 -0
  497. package/es/select/utils/helper.d.ts +18 -0
  498. package/es/select-input/SelectInput.d.ts +11 -0
  499. package/es/select-input/SelectInput.js +10 -5
  500. package/es/select-input/SelectInput.js.map +1 -1
  501. package/es/select-input/defaultProps.d.ts +2 -0
  502. package/es/select-input/hook/useMultiple.d.ts +23 -0
  503. package/es/select-input/hook/useMultiple.js +7 -4
  504. package/es/select-input/hook/useMultiple.js.map +1 -1
  505. package/es/select-input/hook/useOverlayInnerStyle.d.ts +11 -0
  506. package/es/select-input/hook/useSingle.d.ts +16 -0
  507. package/es/select-input/hook/useSingle.js +5 -3
  508. package/es/select-input/hook/useSingle.js.map +1 -1
  509. package/es/select-input/index.d.ts +5 -0
  510. package/es/select-input/index.js +10 -5
  511. package/es/select-input/index.js.map +1 -1
  512. package/es/select-input/interface.d.ts +17 -0
  513. package/es/select-input/style/css.d.ts +1 -0
  514. package/es/select-input/style/index.d.ts +1 -0
  515. package/es/select-input/type.d.ts +243 -0
  516. package/es/slider/Slider.d.ts +7 -0
  517. package/es/slider/Slider.js +668 -0
  518. package/es/slider/Slider.js.map +1 -0
  519. package/es/slider/SliderHandleButton.d.ts +11 -0
  520. package/es/slider/SliderHandleButton.js +48 -0
  521. package/es/slider/SliderHandleButton.js.map +1 -0
  522. package/es/slider/defaultProps.d.ts +5 -0
  523. package/es/slider/index.d.ts +5 -0
  524. package/es/slider/index.js +46 -0
  525. package/es/slider/index.js.map +1 -0
  526. package/es/slider/style/css.d.ts +1 -0
  527. package/es/slider/style/css.js +1 -0
  528. package/es/slider/style/index.css +252 -0
  529. package/es/slider/style/index.d.ts +1 -0
  530. package/es/slider/style/index.js +2 -0
  531. package/es/slider/style/index.js.map +1 -0
  532. package/es/slider/type.d.ts +78 -0
  533. package/es/space/defaultProps.d.ts +0 -0
  534. package/es/space/index.d.ts +0 -0
  535. package/es/space/type.d.ts +0 -0
  536. package/es/style/index.css +24 -34
  537. package/es/style/index.d.ts +1 -0
  538. package/es/switch/Switch.d.ts +9 -0
  539. package/es/switch/Switch.js +9 -47
  540. package/es/switch/Switch.js.map +1 -1
  541. package/es/switch/defaultProps.d.ts +2 -0
  542. package/es/switch/index.d.ts +4 -0
  543. package/es/switch/index.js +8 -5
  544. package/es/switch/index.js.map +1 -1
  545. package/es/switch/style/css.d.ts +1 -0
  546. package/es/switch/style/index.d.ts +1 -0
  547. package/es/switch/type.d.ts +48 -0
  548. package/es/tab/TabBar.d.ts +9 -0
  549. package/es/tab/TabBar.js +109 -0
  550. package/es/tab/TabBar.js.map +1 -0
  551. package/es/tab/TabNav.d.ts +10 -0
  552. package/es/tab/TabNav.js +123 -0
  553. package/es/tab/TabNav.js.map +1 -0
  554. package/es/tab/TabNavItem.d.ts +15 -0
  555. package/es/tab/TabNavItem.js +65 -0
  556. package/es/tab/TabNavItem.js.map +1 -0
  557. package/es/tab/TabPanel.d.ts +9 -0
  558. package/es/tab/TabPanel.js +11 -0
  559. package/es/tab/TabPanel.js.map +1 -0
  560. package/es/tab/Tabs.d.ts +10 -0
  561. package/es/tab/Tabs.js +95 -0
  562. package/es/tab/Tabs.js.map +1 -0
  563. package/es/tab/defaultProps.d.ts +3 -0
  564. package/es/tab/index.d.ts +8 -0
  565. package/es/tab/index.js +31 -0
  566. package/es/tab/index.js.map +1 -0
  567. package/es/tab/style/index.css +159 -0
  568. package/es/tab/style/index.d.ts +1 -0
  569. package/es/tab/style/index.js +2 -0
  570. package/es/tab/style/index.js.map +1 -0
  571. package/es/tab/type.d.ts +130 -0
  572. package/es/tab/useTabClass.d.ts +8 -0
  573. package/es/table/Cell.d.ts +18 -0
  574. package/es/table/Cell.js +73 -0
  575. package/es/table/Cell.js.map +1 -0
  576. package/es/table/TBody.d.ts +28 -0
  577. package/es/table/TBody.js +70 -0
  578. package/es/table/TBody.js.map +1 -0
  579. package/es/table/THead.d.ts +10 -0
  580. package/es/table/THead.js +56 -0
  581. package/es/table/THead.js.map +1 -0
  582. package/es/table/TR.d.ts +28 -0
  583. package/es/table/TR.js +76 -0
  584. package/es/table/TR.js.map +1 -0
  585. package/es/table/Table.d.ts +6 -0
  586. package/es/table/Table.js +98 -0
  587. package/es/table/Table.js.map +1 -0
  588. package/es/table/defaultProps.d.ts +2 -0
  589. package/es/table/hooks/index.d.ts +4 -0
  590. package/es/table/hooks/index.js +98 -0
  591. package/es/table/hooks/index.js.map +1 -0
  592. package/es/table/hooks/useTableClassName.d.ts +26 -0
  593. package/es/table/hooks/useTableStyle.d.ts +11 -0
  594. package/es/table/index.d.ts +5 -0
  595. package/es/table/index.js +22 -0
  596. package/es/table/index.js.map +1 -0
  597. package/es/table/style/css.d.ts +1 -0
  598. package/es/table/style/css.js +1 -0
  599. package/es/table/style/index.css +139 -0
  600. package/es/table/style/index.d.ts +1 -0
  601. package/es/table/style/index.js +2 -0
  602. package/es/table/style/index.js.map +1 -0
  603. package/es/table/type.d.ts +195 -0
  604. package/es/tag/Tag.d.ts +14 -0
  605. package/es/tag/Tag.js +5 -1182
  606. package/es/tag/Tag.js.map +1 -1
  607. package/es/tag/defaultProps.d.ts +7 -0
  608. package/es/tag/index.d.ts +4 -0
  609. package/es/tag/index.js +5 -3
  610. package/es/tag/index.js.map +1 -1
  611. package/es/tag/style/css.d.ts +1 -0
  612. package/es/tag/style/index.d.ts +1 -0
  613. package/es/tag/type.d.ts +169 -0
  614. package/es/tag-input/TagInput.d.ts +9 -0
  615. package/es/tag-input/TagInput.js +7 -4
  616. package/es/tag-input/TagInput.js.map +1 -1
  617. package/es/tag-input/defaultProps.d.ts +2 -0
  618. package/es/tag-input/hooks/useHover.d.ts +17 -0
  619. package/es/tag-input/hooks/useTagList.d.ts +30 -0
  620. package/es/tag-input/hooks/useTagList.js +5 -3
  621. package/es/tag-input/hooks/useTagList.js.map +1 -1
  622. package/es/tag-input/hooks/useTagScroll.d.ts +25 -0
  623. package/es/tag-input/index.d.ts +5 -0
  624. package/es/tag-input/index.js +7 -4
  625. package/es/tag-input/index.js.map +1 -1
  626. package/es/tag-input/style/css.d.ts +1 -0
  627. package/es/tag-input/style/index.d.ts +1 -0
  628. package/es/tag-input/type.d.ts +235 -0
  629. package/es/tag-input/useTagList.d.ts +30 -0
  630. package/es/tag-input/useTagList.js +5 -3
  631. package/es/tag-input/useTagList.js.map +1 -1
  632. package/es/utils/composeRefs.d.ts +2 -0
  633. package/es/utils/dom.d.ts +7 -0
  634. package/es/utils/forwardRefWithStatics.d.ts +2 -0
  635. package/es/utils/getScrollbarWidth.d.ts +6 -0
  636. package/es/utils/helper.d.ts +46 -0
  637. package/es/utils/input-number/large-number.d.ts +85 -0
  638. package/es/utils/input-number/number.d.ts +81 -0
  639. package/es/utils/isFragment.d.ts +4 -0
  640. package/es/utils/listener.d.ts +4 -0
  641. package/es/utils/log/index.d.ts +2 -0
  642. package/es/utils/log/index.js +27 -0
  643. package/es/utils/log/index.js.map +1 -0
  644. package/es/utils/log/log.d.ts +3 -0
  645. package/es/utils/log/types.d.ts +8 -0
  646. package/es/utils/noop.d.ts +2 -0
  647. package/es/utils/number.d.ts +7 -0
  648. package/es/utils/parentTNode.d.ts +10 -0
  649. package/es/utils/parseTNode.d.ts +10 -0
  650. package/es/utils/react-render.d.ts +16 -0
  651. package/es/utils/ref.d.ts +1 -0
  652. package/es/utils/refs.d.ts +13 -0
  653. package/es/utils/scroll.d.ts +3 -0
  654. package/es/utils/style.d.ts +4 -0
  655. package/es/utils/transition.d.ts +20 -0
  656. package/package.json +60 -59
  657. package/LICENSE +0 -21
  658. package/es/_chunks/dep-0QH2Ee4R.js.map +0 -1
  659. package/es/_chunks/dep-BH5n5r1M.js.map +0 -1
  660. package/es/_chunks/dep-D7LanWes.js.map +0 -1
  661. package/es/_chunks/dep-DZ_0EvBk.js.map +0 -1
  662. package/es/_chunks/dep-Dk2xX8lh.js.map +0 -1
  663. package/es/_chunks/dep-EcrDKDlu.js.map +0 -1
  664. package/es/_chunks/dep-bWaVq_y3.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FormList.js","sources":["../../../components/form/FormList.tsx"],"sourcesContent":["import React, { useEffect, useImperativeHandle, useRef, useState } from \"react\";\nimport { flattenDeep, get, merge, set, unset } from \"lodash-es\";\n// import log from '@tdesign/common-js/log/index';\nimport { FormListContext, useFormContext } from \"./FormContext\";\nimport type { FormItemInstance } from \"./FormItem\";\nimport { HOOK_MARK } from \"./hooks/useForm\";\nimport type { FormListField, FormListFieldOperation, TdFormListProps } from \"./type\";\nimport { calcFieldValue } from \"./utils\";\n\nlet key = 0;\n\nconst FormList: React.FC<TdFormListProps> = (props) => {\n const {\n formMapRef,\n form,\n onFormItemValueChange,\n initialData: initialDataFromForm,\n resetType: resetTypeFromContext\n } = useFormContext();\n const { name, rules, children } = props;\n\n const initialData = props.initialData || get(initialDataFromForm, name) || [];\n\n const [formListValue, setFormListValue] = useState(initialData);\n const [fields, setFields] = useState<Array<FormListField>>(() =>\n initialData.map((data, index) => ({\n data: { ...data },\n key: (key += 1),\n name: index,\n isListField: true\n }))\n );\n const formListMapRef = useRef(new Map()); // 收集 formItem 实例\n const formListRef = useRef<FormItemInstance>(null); // 当前 formList 实例\n const fieldsTaskQueueRef = useRef([]); // 记录更改 fields 数据后 callback 队列\n const snakeName = []\n .concat(name)\n .filter((item) => item !== undefined)\n .toString(); // 转化 name\n\n const isMounted = useRef(false);\n\n useEffect(\n () => () => {\n isMounted.current = false;\n },\n []\n );\n\n const operation: FormListFieldOperation = {\n add(defaultValue?: unknown, insertIndex?: number) {\n const cloneFields = [...fields];\n const index = insertIndex ?? cloneFields.length;\n cloneFields.splice(index, 0, {\n key: (key += 1),\n name: index,\n isListField: true\n });\n cloneFields.forEach((field, index) => Object.assign(field, { name: index }));\n setFields(cloneFields);\n\n const nextFormListValue = [...formListValue];\n if (typeof defaultValue !== \"undefined\") {\n nextFormListValue[index] = defaultValue;\n setFormListValue(nextFormListValue);\n }\n\n set(form?.store, flattenDeep([name, index]), nextFormListValue);\n\n const fieldValue = calcFieldValue(name, nextFormListValue);\n requestAnimationFrame(() => {\n onFormItemValueChange?.({ ...fieldValue });\n });\n },\n remove(index: number | number[]) {\n const nextFields = fields\n .filter((item) => {\n if (Array.isArray(index)) return !index.includes(item.name);\n return item.name !== index;\n })\n .map((field, i) => ({ ...field, name: i }));\n setFields(nextFields);\n\n const nextFormListValue = formListValue.filter((_, idx) => idx !== index);\n setFormListValue(nextFormListValue);\n\n unset(form?.store, flattenDeep([name, index]));\n\n const fieldValue = calcFieldValue(name, nextFormListValue);\n requestAnimationFrame(() => {\n onFormItemValueChange?.({ ...fieldValue });\n });\n },\n move(from: number, to: number) {\n const cloneFields = [...fields];\n const fromItem = { ...cloneFields[from] };\n const toItem = { ...cloneFields[to] };\n cloneFields[to] = fromItem;\n cloneFields[from] = toItem;\n set(form?.store, name, []);\n setFields(cloneFields);\n }\n };\n\n // 外部设置 fields 优先级最高,可以更改渲染的节点\n function setListFields(fieldData: unknown[], callback: (...args: unknown[]) => unknown, originData: unknown) {\n setFields(\n fieldData.map((_, index) => ({\n key: (key += 1),\n name: index,\n isListField: true\n }))\n );\n // 添加至队列中 等待下次渲染完成执行对应逻辑\n fieldsTaskQueueRef.current.push({ callback, fieldData, originData });\n }\n\n useEffect(() => {\n if (!name || !formMapRef) return;\n formMapRef.current.set(name, formListRef);\n\n return () => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n formMapRef.current.delete(name);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [snakeName]);\n\n useEffect(() => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n const { name, isUpdated } = formItemRef.current;\n if (isUpdated) return; // 内部更新过值则跳过\n\n const data = get(formListValue, name);\n formItemRef.current.setField({ value: data, status: \"not\" });\n });\n }, [formListValue]);\n\n useEffect(() => {\n if (!isMounted.current) {\n isMounted.current = true;\n return;\n }\n // fields 变化通知 watch 事件\n form?.getInternalHooks?.(HOOK_MARK)?.notifyWatch?.(name);\n\n // 等待子节点渲染完毕\n Promise.resolve().then(() => {\n if (!fieldsTaskQueueRef.current.length) return;\n\n // fix multiple formlist stuck\n const currentQueue = fieldsTaskQueueRef.current.pop();\n const { fieldData, callback, originData } = currentQueue;\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name: itemName } = formItemRef.current;\n const data = get(fieldData, itemName);\n callback(formItemRef, data);\n });\n\n // formList 嵌套 formList\n if (!formMapRef || !formMapRef.current) return;\n [...formMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name: itemName, isFormList } = formItemRef.current;\n if (String(itemName) === String(name) || !isFormList) return;\n const data = get(originData, itemName);\n if (data) callback(formItemRef, data);\n });\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form, snakeName, fields, formMapRef]);\n\n useImperativeHandle(\n formListRef,\n (): FormItemInstance => ({\n name,\n isFormList: true,\n getValue() {\n const formListValue = [];\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name, getValue } = formItemRef.current;\n const fieldValue = calcFieldValue(name, getValue());\n merge(formListValue, fieldValue);\n });\n return formListValue;\n },\n validate: (trigger = \"all\") => {\n const resultList = [];\n const validates = [...formListMapRef.current.values()].map((formItemRef) =>\n formItemRef?.current?.validate?.(trigger)\n );\n return new Promise((resolve) => {\n Promise.all(validates).then((validateResult) => {\n validateResult.forEach((result) => {\n const errorValue = Object.values(result)[0];\n merge(resultList, errorValue);\n });\n const errorItems = validateResult.filter((item) => Object.values(item)[0] !== true);\n if (errorItems.length) {\n resolve({ [snakeName]: resultList });\n } else {\n resolve({ [snakeName]: true });\n }\n });\n });\n },\n // TODO 支持局部更新数据\n setValue: (fieldData: unknown[], originData) => {\n setListFields(\n fieldData,\n (formItemRef, data) => {\n (formItemRef as React.RefObject<FormItemInstance>)?.current?.setValue?.(data);\n },\n originData\n );\n },\n setField: (fieldData: { value?: unknown[]; status?: string }, originData) => {\n const { value, status } = fieldData;\n setListFields(\n value,\n (formItemRef, data) => {\n (formItemRef as React.RefObject<FormItemInstance>)?.current?.setField?.({ value: data, status });\n },\n originData\n );\n },\n resetField: (type: string) => {\n const resetType = type || resetTypeFromContext;\n\n if (resetType === \"initial\") {\n setFormListValue(initialData);\n\n const newFields = initialData.map((data, index) => ({\n data: { ...data },\n key: (key += 1),\n name: index,\n isListField: true\n }));\n setFields(newFields);\n set(form?.store, flattenDeep([name]), initialData);\n\n requestAnimationFrame(() => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n const { name: itemName } = formItemRef.current;\n const itemValue = get(initialData, itemName);\n if (itemValue !== undefined) {\n formItemRef.current.setField({ value: itemValue, status: \"not\" });\n }\n });\n });\n } else {\n // 重置为空\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetField?.();\n });\n\n fieldsTaskQueueRef.current = [];\n\n setFormListValue([]);\n setFields([]);\n unset(form?.store, flattenDeep([name]));\n }\n },\n setValidateMessage: (fieldData) => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name } = formItemRef.current;\n const data = get(fieldData, name);\n\n formItemRef?.current?.setValidateMessage?.(data);\n });\n },\n resetValidate: () => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetValidate?.();\n });\n }\n })\n );\n\n if (typeof children !== \"function\") {\n console.error(\"Form\", `FormList's children must be a function!`);\n return null;\n }\n\n return (\n <FormListContext.Provider value={{ name, rules, formListMapRef, initialData, form }}>\n {children(fields, operation)}\n </FormListContext.Provider>\n );\n};\n\nFormList.displayName = \"FormList\";\n\nexport default FormList;\n"],"names":["key","FormList","props","_useFormContext","useFormContext","formMapRef","form","onFormItemValueChange","initialDataFromForm","initialData","resetTypeFromContext","resetType","name","rules","children","get","_useState","useState","_useState2","_slicedToArray","formListValue","setFormListValue","_useState3","map","data","index","_objectSpread","isListField","_useState4","fields","setFields","formListMapRef","useRef","Map","formListRef","fieldsTaskQueueRef","snakeName","concat","filter","item","toString","isMounted","useEffect","current","operation","add","defaultValue","insertIndex","cloneFields","_toConsumableArray","length","splice","forEach","field","Object","assign","nextFormListValue","set","store","flattenDeep","fieldValue","calcFieldValue","requestAnimationFrame","remove","nextFields","Array","isArray","includes","i","_","idx","unset","move","from","to","fromItem","toItem","setListFields","fieldData","callback","originData","push","values","formItemRef","_formItemRef$current","isUpdated","setField","value","status","_form$getInternalHook","_form$getInternalHook2","getInternalHooks","call","HOOK_MARK","notifyWatch","Promise","resolve","then","currentQueue","pop","itemName","_formItemRef$current2","isFormList","String","useImperativeHandle","getValue","_formItemRef$current3","merge","validate","trigger","arguments","undefined","resultList","validates","_formItemRef$current4","_formItemRef$current5","all","validateResult","result","errorValue","errorItems","_defineProperty","setValue","_formItemRef$current6","_formItemRef$current7","_formItemRef$current8","_formItemRef$current9","resetField","type","newFields","itemValue","_formItemRef$current0","_formItemRef$current1","setValidateMessage","_formItemRef$current10","_formItemRef$current11","resetValidate","_formItemRef$current12","_formItemRef$current13","console","error","React","createElement","FormListContext","Provider","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"FormList.js","sources":["../../../components/form/FormList.tsx"],"sourcesContent":["import React, { useEffect, useImperativeHandle, useRef, useState } from \"react\";\nimport { flattenDeep, get, merge, set, unset } from \"lodash-es\";\n// import log from '@tdesign/common-js/log/index';\nimport { FormListContext, useFormContext } from \"./FormContext\";\nimport type { FormItemInstance } from \"./FormItem\";\nimport { HOOK_MARK } from \"./hooks/useForm\";\nimport type { FormListField, FormListFieldOperation, TdFormListProps } from \"./type\";\nimport { calcFieldValue } from \"./utils\";\n\nlet key = 0;\n\nconst FormList: React.FC<TdFormListProps> = (props) => {\n const {\n formMapRef,\n form,\n onFormItemValueChange,\n initialData: initialDataFromForm,\n resetType: resetTypeFromContext\n } = useFormContext();\n const { name, rules, children } = props;\n\n const initialData = props.initialData || get(initialDataFromForm, name) || [];\n\n const [formListValue, setFormListValue] = useState(initialData);\n const [fields, setFields] = useState<Array<FormListField>>(() =>\n initialData.map((data, index) => ({\n data: { ...data },\n key: (key += 1),\n name: index,\n isListField: true\n }))\n );\n const formListMapRef = useRef(new Map()); // 收集 formItem 实例\n const formListRef = useRef<FormItemInstance>(null); // 当前 formList 实例\n const fieldsTaskQueueRef = useRef([]); // 记录更改 fields 数据后 callback 队列\n const snakeName = []\n .concat(name)\n .filter((item) => item !== undefined)\n .toString(); // 转化 name\n\n const isMounted = useRef(false);\n\n useEffect(\n () => () => {\n isMounted.current = false;\n },\n []\n );\n\n const operation: FormListFieldOperation = {\n add(defaultValue?: unknown, insertIndex?: number) {\n const cloneFields = [...fields];\n const index = insertIndex ?? cloneFields.length;\n cloneFields.splice(index, 0, {\n key: (key += 1),\n name: index,\n isListField: true\n });\n cloneFields.forEach((field, index) => Object.assign(field, { name: index }));\n setFields(cloneFields);\n\n const nextFormListValue = [...formListValue];\n if (typeof defaultValue !== \"undefined\") {\n nextFormListValue[index] = defaultValue;\n setFormListValue(nextFormListValue);\n }\n\n set(form?.store, flattenDeep([name, index]), nextFormListValue);\n\n const fieldValue = calcFieldValue(name, nextFormListValue);\n requestAnimationFrame(() => {\n onFormItemValueChange?.({ ...fieldValue });\n });\n },\n remove(index: number | number[]) {\n const nextFields = fields\n .filter((item) => {\n if (Array.isArray(index)) return !index.includes(item.name);\n return item.name !== index;\n })\n .map((field, i) => ({ ...field, name: i }));\n setFields(nextFields);\n\n const nextFormListValue = formListValue.filter((_, idx) => idx !== index);\n setFormListValue(nextFormListValue);\n\n unset(form?.store, flattenDeep([name, index]));\n\n const fieldValue = calcFieldValue(name, nextFormListValue);\n requestAnimationFrame(() => {\n onFormItemValueChange?.({ ...fieldValue });\n });\n },\n move(from: number, to: number) {\n const cloneFields = [...fields];\n const fromItem = { ...cloneFields[from] };\n const toItem = { ...cloneFields[to] };\n cloneFields[to] = fromItem;\n cloneFields[from] = toItem;\n set(form?.store, name, []);\n setFields(cloneFields);\n }\n };\n\n // 外部设置 fields 优先级最高,可以更改渲染的节点\n function setListFields(fieldData: unknown[], callback: (...args: unknown[]) => unknown, originData: unknown) {\n setFields(\n fieldData.map((_, index) => ({\n key: (key += 1),\n name: index,\n isListField: true\n }))\n );\n // 添加至队列中 等待下次渲染完成执行对应逻辑\n fieldsTaskQueueRef.current.push({ callback, fieldData, originData });\n }\n\n useEffect(() => {\n if (!name || !formMapRef) return;\n formMapRef.current.set(name, formListRef);\n\n return () => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n formMapRef.current.delete(name);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [snakeName]);\n\n useEffect(() => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n const { name, isUpdated } = formItemRef.current;\n if (isUpdated) return; // 内部更新过值则跳过\n\n const data = get(formListValue, name);\n formItemRef.current.setField({ value: data, status: \"not\" });\n });\n }, [formListValue]);\n\n useEffect(() => {\n if (!isMounted.current) {\n isMounted.current = true;\n return;\n }\n // fields 变化通知 watch 事件\n form?.getInternalHooks?.(HOOK_MARK)?.notifyWatch?.(name);\n\n // 等待子节点渲染完毕\n Promise.resolve().then(() => {\n if (!fieldsTaskQueueRef.current.length) return;\n\n // fix multiple formlist stuck\n const currentQueue = fieldsTaskQueueRef.current.pop();\n const { fieldData, callback, originData } = currentQueue;\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name: itemName } = formItemRef.current;\n const data = get(fieldData, itemName);\n callback(formItemRef, data);\n });\n\n // formList 嵌套 formList\n if (!formMapRef || !formMapRef.current) return;\n [...formMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name: itemName, isFormList } = formItemRef.current;\n if (String(itemName) === String(name) || !isFormList) return;\n const data = get(originData, itemName);\n if (data) callback(formItemRef, data);\n });\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form, snakeName, fields, formMapRef]);\n\n useImperativeHandle(\n formListRef,\n (): FormItemInstance => ({\n name,\n isFormList: true,\n getValue() {\n const formListValue = [];\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name, getValue } = formItemRef.current;\n const fieldValue = calcFieldValue(name, getValue());\n merge(formListValue, fieldValue);\n });\n return formListValue;\n },\n validate: (trigger = \"all\") => {\n const resultList = [];\n const validates = [...formListMapRef.current.values()].map((formItemRef) =>\n formItemRef?.current?.validate?.(trigger)\n );\n return new Promise((resolve) => {\n Promise.all(validates).then((validateResult) => {\n validateResult.forEach((result) => {\n const errorValue = Object.values(result)[0];\n merge(resultList, errorValue);\n });\n const errorItems = validateResult.filter((item) => Object.values(item)[0] !== true);\n if (errorItems.length) {\n resolve({ [snakeName]: resultList });\n } else {\n resolve({ [snakeName]: true });\n }\n });\n });\n },\n // TODO 支持局部更新数据\n setValue: (fieldData: unknown[], originData) => {\n setListFields(\n fieldData,\n (formItemRef, data) => {\n (formItemRef as React.RefObject<FormItemInstance>)?.current?.setValue?.(data);\n },\n originData\n );\n },\n setField: (fieldData: { value?: unknown[]; status?: string }, originData) => {\n const { value, status } = fieldData;\n setListFields(\n value,\n (formItemRef, data) => {\n (formItemRef as React.RefObject<FormItemInstance>)?.current?.setField?.({ value: data, status });\n },\n originData\n );\n },\n resetField: (type: string) => {\n const resetType = type || resetTypeFromContext;\n\n if (resetType === \"initial\") {\n setFormListValue(initialData);\n\n const newFields = initialData.map((data, index) => ({\n data: { ...data },\n key: (key += 1),\n name: index,\n isListField: true\n }));\n setFields(newFields);\n set(form?.store, flattenDeep([name]), initialData);\n\n requestAnimationFrame(() => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n const { name: itemName } = formItemRef.current;\n const itemValue = get(initialData, itemName);\n if (itemValue !== undefined) {\n formItemRef.current.setField({ value: itemValue, status: \"not\" });\n }\n });\n });\n } else {\n // 重置为空\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetField?.();\n });\n\n fieldsTaskQueueRef.current = [];\n\n setFormListValue([]);\n setFields([]);\n unset(form?.store, flattenDeep([name]));\n }\n },\n setValidateMessage: (fieldData) => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n if (!formItemRef.current) return;\n\n const { name } = formItemRef.current;\n const data = get(fieldData, name);\n\n formItemRef?.current?.setValidateMessage?.(data);\n });\n },\n resetValidate: () => {\n [...formListMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetValidate?.();\n });\n }\n })\n );\n\n if (typeof children !== \"function\") {\n console.error(\"Form\", `FormList's children must be a function!`);\n return null;\n }\n\n return (\n <FormListContext.Provider value={{ name, rules, formListMapRef, initialData, form }}>\n {children(fields, operation)}\n </FormListContext.Provider>\n );\n};\n\nFormList.displayName = \"FormList\";\n\nexport default FormList;\n"],"names":["key","FormList","props","_useFormContext","useFormContext","formMapRef","form","onFormItemValueChange","initialDataFromForm","initialData","resetTypeFromContext","resetType","name","rules","children","get","_useState","useState","_useState2","_slicedToArray","formListValue","setFormListValue","_useState3","map","data","index","_objectSpread","isListField","_useState4","fields","setFields","formListMapRef","useRef","Map","formListRef","fieldsTaskQueueRef","snakeName","concat","filter","item","toString","isMounted","useEffect","current","operation","add","defaultValue","insertIndex","cloneFields","_toConsumableArray","length","splice","forEach","field","Object","assign","nextFormListValue","set","store","flattenDeep","fieldValue","calcFieldValue","requestAnimationFrame","remove","nextFields","Array","isArray","includes","i","_","idx","unset","move","from","to","fromItem","toItem","setListFields","fieldData","callback","originData","push","values","formItemRef","_formItemRef$current","isUpdated","setField","value","status","_form$getInternalHook","_form$getInternalHook2","getInternalHooks","call","HOOK_MARK","notifyWatch","Promise","resolve","then","currentQueue","pop","itemName","_formItemRef$current2","isFormList","String","useImperativeHandle","getValue","_formItemRef$current3","merge","validate","trigger","arguments","undefined","resultList","validates","_formItemRef$current4","_formItemRef$current5","all","validateResult","result","errorValue","errorItems","_defineProperty","setValue","_formItemRef$current6","_formItemRef$current7","_formItemRef$current8","_formItemRef$current9","resetField","type","newFields","itemValue","_formItemRef$current0","_formItemRef$current1","setValidateMessage","_formItemRef$current10","_formItemRef$current11","resetValidate","_formItemRef$current12","_formItemRef$current13","console","error","React","createElement","FormListContext","Provider","displayName"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare const enum ValidateStatus {
2
+ SUCCESS = "success",
3
+ WARNING = "warning",
4
+ ERROR = "error",
5
+ VALIDATING = "validating"
6
+ }
@@ -0,0 +1,3 @@
1
+ import { TdFormProps, TdFormItemProps } from "./type";
2
+ export declare const formDefaultProps: TdFormProps;
3
+ export declare const formItemDefaultProps: TdFormItemProps;
@@ -0,0 +1,2 @@
1
+ export type EasingFunction = (t: number, b: number, c: number, d: number) => number;
2
+ export declare const easeInOutCubic: EasingFunction;
@@ -0,0 +1,37 @@
1
+ import isDate from "validator/lib/isDate";
2
+ import isEmail from "validator/lib/isEmail";
3
+ import isURL from "validator/lib/isURL";
4
+ import { CustomValidator, FormRule, ValueType, AllValidateResult } from "./type";
5
+ export declare function isValueEmpty(val: ValueType): boolean;
6
+ declare const VALIDATE_MAP: {
7
+ date: typeof isDate;
8
+ url: typeof isURL;
9
+ email: typeof isEmail;
10
+ required: (val: ValueType) => boolean;
11
+ whitespace: (val: ValueType) => boolean;
12
+ boolean: (val: ValueType) => boolean;
13
+ max: (val: ValueType, num: number) => boolean;
14
+ min: (val: ValueType, num: number) => boolean;
15
+ len: (val: ValueType, num: number) => boolean;
16
+ number: (val: ValueType) => boolean;
17
+ enum: (val: ValueType, strs: Array<string>) => boolean;
18
+ idcard: (val: ValueType) => boolean;
19
+ telnumber: (val: ValueType) => boolean;
20
+ pattern: (val: ValueType, regexp: RegExp) => boolean;
21
+ validator: (val: ValueType, validate: CustomValidator) => ReturnType<CustomValidator>;
22
+ };
23
+ export type ValidateFuncType = (typeof VALIDATE_MAP)[keyof typeof VALIDATE_MAP];
24
+ /**
25
+ * 校验某一条数据的某一条规则,一种校验规则不满足则不再进行校验。
26
+ * @param value 值
27
+ * @param rule 校验规则
28
+ * @returns 两种校验结果,一种是内置校验规则的校验结果,二种是自定义校验规则(validator)的校验结果
29
+ */
30
+ export declare function validateOneRule(value: ValueType, rule: FormRule): Promise<AllValidateResult>;
31
+ export declare function validate(value: ValueType, rules: Array<FormRule>): Promise<AllValidateResult[]>;
32
+ /**
33
+ * Replace with template.
34
+ * `${name} is wrong` + { name: 'password' } = password is wrong
35
+ */
36
+ export declare function parseMessage(template: string, options: Record<string, string>): string;
37
+ export {};
@@ -0,0 +1,16 @@
1
+ import type { NamePath, FormInstanceFunctions } from "../type";
2
+ export type Store = Record<string, unknown>;
3
+ export type WatchCallBack = (values: Store, namePathList: NamePath) => void;
4
+ export interface InternalHooks {
5
+ notifyWatch: (name: NamePath) => void;
6
+ registerWatch: (callback: WatchCallBack) => () => void;
7
+ getPrevStore: () => Store;
8
+ setPrevStore: (store: Store) => void;
9
+ flashQueue: () => void;
10
+ setForm: (form: FormInstanceFunctions) => void;
11
+ }
12
+ export interface InternalFormInstance extends FormInstanceFunctions {
13
+ _init?: boolean;
14
+ store?: Store;
15
+ getInternalHooks?: (secret: string) => InternalHooks | null;
16
+ }
@@ -0,0 +1,3 @@
1
+ import type { InternalFormInstance } from "./interface";
2
+ export declare const HOOK_MARK = "TD_FORM_INTERNAL_HOOKS";
3
+ export default function useForm(form?: InternalFormInstance): InternalFormInstance[];
@@ -0,0 +1,9 @@
1
+ import { FormItemProps } from "../FormItem";
2
+ export declare const ctrlKeyMap: Map<any, any>;
3
+ export declare const initialDataMap: Map<any, any>;
4
+ export default function useFormItemInitialData(name: FormItemProps["name"]): {
5
+ getDefaultInitialData: ({ children, initialData }: {
6
+ children: FormItemProps["children"];
7
+ initialData: FormItemProps["initialData"];
8
+ }) => any;
9
+ };
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ export default function useFormItemStyle(props: any): {
3
+ formItemClass: string;
4
+ formItemLabelClass: string;
5
+ contentClass: () => string;
6
+ labelStyle: {};
7
+ contentStyle: {};
8
+ helpNode: React.JSX.Element;
9
+ extraNode: React.JSX.Element;
10
+ };
@@ -1,10 +1,11 @@
1
1
  import '../../_chunks/dep-Cwish4GD.js';
2
2
  import 'react';
3
3
  import 'classnames';
4
- import '../../_chunks/dep-u1x3x6MJ.js';
4
+ import '../../_chunks/dep-gy8uvBaS.js';
5
5
  import '../../_chunks/dep-D6YxJv-F.js';
6
- export { u as default } from '../../_chunks/dep-C36au4Ip.js';
6
+ export { u as default } from '../../_chunks/dep-BuIAffJt.js';
7
7
  import '../../_chunks/dep-D-UKOauR.js';
8
- import '../../config-provider/ConfigContext.js';
8
+ import '../../_chunks/dep-5U9UjDaf.js';
9
+ import 'dayjs';
9
10
  import 'lodash-es';
10
11
  //# sourceMappingURL=useFormItemStyle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFormItemStyle.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
1
+ {"version":3,"file":"useFormItemStyle.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -0,0 +1,16 @@
1
+ import type { TdFormProps, FormValidateResult, FormResetParams, FormValidateMessage, NamePath } from "../type";
2
+ import type { FormItemInstance } from "../FormItem";
3
+ export default function useInstance(props: TdFormProps, formRef: any, formMapRef: React.MutableRefObject<Map<NamePath, React.RefObject<FormItemInstance>>>, floatingFormDataRef: React.RefObject<Record<string, unknown>>): {
4
+ submit: (e?: React.FormEvent<HTMLFormElement>) => void;
5
+ reset: (params: FormResetParams<FormData>) => void;
6
+ validate: (param?: Record<string, unknown>) => Promise<FormValidateResult<FormData>>;
7
+ validateOnly: (param?: Record<string, unknown>) => Promise<FormValidateResult<FormData>>;
8
+ clearValidate: (fields?: Array<keyof FormData>) => void;
9
+ setFields: (fields?: any[]) => void;
10
+ setFieldsValue: (fields?: {}) => void;
11
+ setValidateMessage: (message: FormValidateMessage<FormData>) => void;
12
+ getValidateMessage: (fields?: Array<keyof FormData>) => {};
13
+ getFieldValue: (name: NamePath) => unknown;
14
+ getFieldsValue: (nameList: string[] | boolean) => {};
15
+ getCurrentElement: () => any;
16
+ };
@@ -1,14 +1,15 @@
1
1
  import { _ as _objectWithoutProperties } from '../../_chunks/dep-DN7d1SzH.js';
2
2
  import { _ as _toConsumableArray } from '../../_chunks/dep-CgyDw_YI.js';
3
- import { _ as _asyncToGenerator, a as _regeneratorRuntime } from '../../_chunks/dep-DZ_0EvBk.js';
3
+ import { _ as _asyncToGenerator, a as _regeneratorRuntime } from '../../_chunks/dep-DX65P8M9.js';
4
4
  import { _ as _slicedToArray } from '../../_chunks/dep-CzLhKWCf.js';
5
5
  import { merge, isEmpty, isFunction, get, isEqual, set } from 'lodash-es';
6
- import { u as useConfig } from '../../_chunks/dep-u1x3x6MJ.js';
6
+ import { u as useConfig } from '../../_chunks/dep-gy8uvBaS.js';
7
7
  import { calcFieldValue, getMapValue, objectToArray, travelMapFromObject } from '../utils/index.js';
8
- import 'react';
9
- import '../../config-provider/ConfigContext.js';
8
+ import '../../_chunks/dep-5U9UjDaf.js';
10
9
  import '../../_chunks/dep-Cwish4GD.js';
11
10
  import '../../_chunks/dep-D-UKOauR.js';
11
+ import 'react';
12
+ import 'dayjs';
12
13
 
13
14
  var _excluded = ["name"];
14
15
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
@@ -1 +1 @@
1
- {"version":3,"file":"useInstance.js","sources":["../../../../components/form/hooks/useInstance.tsx"],"sourcesContent":["import { isEmpty, isFunction, isEqual, merge, get, set } from \"lodash-es\";\n// import log from '@tdesign/common-js/log/index';\nimport type {\n TdFormProps,\n FormValidateResult,\n FormResetParams,\n FormValidateMessage,\n AllValidateResult,\n NamePath\n} from \"../type\";\nimport type { FormItemInstance } from \"../FormItem\";\nimport useConfig from \"../../hooks/useConfig\";\nimport { getMapValue, objectToArray, travelMapFromObject, calcFieldValue } from \"../utils\";\n\n// 检测是否需要校验 默认全量校验\nfunction needValidate(name: NamePath, fields: string[]) {\n if (!fields || !Array.isArray(fields)) return true;\n return fields.some((item) => String(item) === String(name));\n}\n\n// 整理校验结果\nfunction formatValidateResult(validateResultList) {\n const result = validateResultList.reduce((r, err) => Object.assign(r || {}, err), {});\n Object.keys(result).forEach((key) => {\n if (result[key] === true) {\n delete result[key];\n } else {\n result[key] = result[key].filter((fr: AllValidateResult) => fr.result === false);\n }\n\n // 整理嵌套数据\n if (result[key] && key.includes(\",\")) {\n const keyList = key.split(\",\");\n const fieldValue = calcFieldValue(keyList, result[key]);\n merge(result, fieldValue);\n delete result[key];\n }\n });\n return isEmpty(result) ? true : result;\n}\n\nexport default function useInstance(\n props: TdFormProps,\n formRef,\n formMapRef: React.MutableRefObject<Map<NamePath, React.RefObject<FormItemInstance>>>,\n floatingFormDataRef: React.RefObject<Record<string, unknown>>\n) {\n const { classPrefix } = useConfig();\n\n const { scrollToFirstError, preventSubmitDefault = true, onSubmit, onReset } = props;\n\n // 获取第一个错误表单\n function getFirstError(r: FormValidateResult<FormData>) {\n if (r === true) return;\n const [firstKey] = Object.keys(r);\n if (scrollToFirstError) {\n scrollTo(`.${classPrefix}-form--has-error`);\n }\n return r[firstKey][0]?.message;\n }\n\n // 校验不通过时,滚动到第一个错误表单\n function scrollTo(selector: string) {\n const dom = formRef.current.querySelector?.(selector);\n const behavior = scrollToFirstError as ScrollBehavior;\n if (dom) {\n dom.scrollIntoView({ behavior });\n }\n }\n\n // 对外方法 手动提交表单\n function submit(e?: React.FormEvent<HTMLFormElement>) {\n if (preventSubmitDefault) {\n e?.preventDefault?.();\n e?.stopPropagation?.();\n }\n validate().then((r) => {\n const firstError = getFirstError(r);\n const fields = getFieldsValue(true);\n onSubmit?.({ validateResult: r, firstError, e, fields });\n });\n }\n\n // 对外方法,该方法会触发全部表单组件错误信息显示\n async function validate(param?: Record<string, unknown>): Promise<FormValidateResult<FormData>> {\n const { fields, trigger = \"all\", showErrorMessage } = param || {};\n const list = [...formMapRef.current.values()]\n .filter(\n (formItemRef) =>\n isFunction(formItemRef?.current?.validate) && needValidate(formItemRef?.current?.name, fields as string[])\n )\n .map((formItemRef) => formItemRef?.current?.validate?.(trigger as string, showErrorMessage as boolean));\n\n const validateList = await Promise.all(list);\n return formatValidateResult(validateList);\n }\n\n // 对外方法,该方法只会校验不会触发信息提示\n async function validateOnly(param?: Record<string, unknown>): Promise<FormValidateResult<FormData>> {\n const { fields, trigger = \"all\" } = param || {};\n const list = [...formMapRef.current.values()]\n .filter(\n (formItemRef) =>\n isFunction(formItemRef?.current?.validateOnly) && needValidate(formItemRef?.current?.name, fields as string[])\n )\n .map((formItemRef) => formItemRef?.current?.validateOnly?.(trigger as string));\n\n const validateList = await Promise.all(list);\n return formatValidateResult(validateList);\n }\n\n // 对外方法,获取对应 formItem 的值\n function getFieldValue(name: NamePath) {\n if (!name) return null;\n\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n return formItemRef?.current?.getValue?.();\n }\n\n // 对外方法,获取一组字段名对应的值,当调用 getFieldsValue(true) 时返回所有值\n function getFieldsValue(nameList: string[] | boolean) {\n const fieldsValue = {};\n\n if (nameList === true) {\n // 嵌套数组子节点先添加导致外层数据覆盖因而需要倒序遍历\n for (const [name, formItemRef] of [...formMapRef.current.entries()].reverse()) {\n let fieldValue = null;\n const currentRef = formItemRef as React.RefObject<FormItemInstance>;\n if (currentRef?.current?.isFormList) {\n fieldValue = calcFieldValue(name, currentRef?.current?.getValue?.());\n } else {\n fieldValue = calcFieldValue(name, currentRef?.current?.getValue?.(), !props.supportNumberKey);\n }\n merge(fieldsValue, fieldValue);\n }\n } else {\n if (!Array.isArray(nameList)) {\n console.error(\"Form\", \"`getFieldsValue` 参数需要 Array 类型\");\n return {};\n }\n\n nameList.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n if (!formItemRef) return;\n\n const fieldValue = calcFieldValue(name, formItemRef?.current.getValue?.());\n merge(fieldsValue, fieldValue);\n });\n }\n return fieldsValue;\n }\n\n // 对外方法,设置对应 formItem 的值\n function setFieldsValue(fields = {}) {\n const nameLists = objectToArray(fields);\n\n nameLists.forEach((nameList) => {\n const fieldValue = get(fields, nameList);\n\n let formItemRef;\n if (nameList.length > 1) {\n // 如果是数组,由于内存地址不一致,不能直接使用 Map.get 获取到 formItemRef\n for (const [mapNameList, _formItemRef] of formMapRef.current.entries()) {\n if (isEqual(nameList, mapNameList)) {\n formItemRef = _formItemRef;\n break;\n }\n }\n } else {\n formItemRef = formMapRef.current.get(nameList[0]);\n }\n\n if (formItemRef?.current) {\n formItemRef?.current?.setValue?.(fieldValue, fields);\n } else {\n set(floatingFormDataRef.current, nameList, fieldValue);\n }\n });\n }\n\n // 对外方法,设置对应 formItem 的数据\n function setFields(fields = []) {\n if (!Array.isArray(fields)) throw new Error(\"setFields 参数需要 Array 类型\");\n\n fields.forEach((field) => {\n const { name, ...restFields } = field;\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n\n formItemRef?.current?.setField(restFields, field);\n });\n }\n\n // 对外方法,重置对应 formItem 的数据\n function reset(params: FormResetParams<FormData>) {\n // reset all\n if (typeof params === \"undefined\") {\n [...formMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetField?.();\n });\n } else {\n const { type = \"initial\", fields = [] } = params;\n\n fields.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n formItemRef?.current?.resetField(type);\n });\n }\n onReset?.({});\n }\n\n // 对外方法,重置对应 formItem 的状态\n function clearValidate(fields?: Array<keyof FormData>) {\n // reset all\n if (typeof fields === \"undefined\") {\n [...formMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetValidate();\n });\n } else {\n if (!Array.isArray(fields)) throw new Error(\"clearValidate 参数需要 Array 类型\");\n\n fields.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n formItemRef?.current?.resetValidate();\n });\n }\n }\n\n // 对外方法,设置 formItem 的错误信息\n function setValidateMessage(message: FormValidateMessage<FormData>) {\n travelMapFromObject(message, formMapRef, (formItemRef, fieldValue) => {\n (formItemRef as React.RefObject<FormItemInstance>)?.current?.setValidateMessage?.(fieldValue);\n });\n }\n\n // 对外方法,获取 formItem 的错误信息\n function getValidateMessage(fields?: Array<keyof FormData>) {\n const message = {};\n\n if (typeof fields === \"undefined\") {\n [...formMapRef.current.values()].forEach((formItemRef) => {\n const item = formItemRef?.current?.getValidateMessage?.();\n if (isEmpty(item)) return;\n message[String(formItemRef?.current?.name)] = item;\n });\n } else {\n if (!Array.isArray(fields)) throw new Error(\"getValidateMessage 参数需要 Array 类型\");\n\n fields.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n const item = formItemRef?.current?.getValidateMessage?.();\n if (isEmpty(item)) return;\n message[String(formItemRef?.current?.name)] = item;\n });\n }\n\n if (isEmpty(message)) return;\n\n return message;\n }\n\n return {\n submit,\n reset,\n validate,\n validateOnly,\n clearValidate,\n setFields,\n setFieldsValue,\n setValidateMessage,\n getValidateMessage,\n getFieldValue,\n getFieldsValue,\n getCurrentElement: () => formRef.current\n };\n}\n"],"names":["needValidate","name","fields","Array","isArray","some","item","String","formatValidateResult","validateResultList","result","reduce","r","err","Object","assign","keys","forEach","key","filter","fr","includes","keyList","split","fieldValue","calcFieldValue","merge","isEmpty","useInstance","props","formRef","formMapRef","floatingFormDataRef","_useConfig","useConfig","classPrefix","scrollToFirstError","_props$preventSubmitD","preventSubmitDefault","onSubmit","onReset","getFirstError","_r$firstKey$","_Object$keys","_Object$keys2","_slicedToArray","firstKey","scrollTo","concat","message","selector","_formRef$current$quer","_formRef$current","dom","current","querySelector","call","behavior","scrollIntoView","submit","e","_e$preventDefault","_e$stopPropagation","preventDefault","stopPropagation","validate","then","firstError","getFieldsValue","validateResult","_callee","param","_ref","_ref$trigger","trigger","showErrorMessage","list","validateList","_regeneratorRuntime","wrap","_context","prev","next","_toConsumableArray","values","formItemRef","_formItemRef$current15","_formItemRef$current16","isFunction","map","_formItemRef$current17","_formItemRef$current18","Promise","all","sent","abrupt","stop","_validate","apply","arguments","validateOnly","_callee2","_ref2","_ref2$trigger","_context2","_formItemRef$current19","_formItemRef$current20","_formItemRef$current21","_formItemRef$current22","_validateOnly","getFieldValue","_formItemRef$current","_formItemRef$current$","getMapValue","getValue","nameList","fieldsValue","_iterator","_createForOfIteratorHelper","entries","reverse","_step","s","n","done","_currentRef$current","_step$value","value","currentRef","isFormList","_currentRef$current2","_currentRef$current2$","_currentRef$current3","_currentRef$current3$","supportNumberKey","f","console","error","_formItemRef$current$2","_formItemRef$current2","setFieldsValue","length","undefined","nameLists","objectToArray","_formItemRef2","get","_iterator2","_step2","_step2$value","mapNameList","_formItemRef","isEqual","_formItemRef3","_formItemRef3$setValu","setValue","set","setFields","Error","field","_formItemRef$current3","restFields","_objectWithoutProperties","_excluded","setField","reset","params","_formItemRef$current4","_formItemRef$current5","resetField","_params$type","type","_params$fields","_formItemRef$current6","clearValidate","_formItemRef$current7","resetValidate","_formItemRef$current8","setValidateMessage","travelMapFromObject","_formItemRef$current9","_formItemRef$current0","getValidateMessage","_formItemRef$current1","_formItemRef$current10","_formItemRef$current11","_formItemRef$current12","_formItemRef$current13","_formItemRef$current14","getCurrentElement"],"mappings":"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"}
1
+ {"version":3,"file":"useInstance.js","sources":["../../../../components/form/hooks/useInstance.tsx"],"sourcesContent":["import { isEmpty, isFunction, isEqual, merge, get, set } from \"lodash-es\";\n// import log from '@tdesign/common-js/log/index';\nimport type {\n TdFormProps,\n FormValidateResult,\n FormResetParams,\n FormValidateMessage,\n AllValidateResult,\n NamePath\n} from \"../type\";\nimport type { FormItemInstance } from \"../FormItem\";\nimport useConfig from \"../../hooks/useConfig\";\nimport { getMapValue, objectToArray, travelMapFromObject, calcFieldValue } from \"../utils\";\n\n// 检测是否需要校验 默认全量校验\nfunction needValidate(name: NamePath, fields: string[]) {\n if (!fields || !Array.isArray(fields)) return true;\n return fields.some((item) => String(item) === String(name));\n}\n\n// 整理校验结果\nfunction formatValidateResult(validateResultList) {\n const result = validateResultList.reduce((r, err) => Object.assign(r || {}, err), {});\n Object.keys(result).forEach((key) => {\n if (result[key] === true) {\n delete result[key];\n } else {\n result[key] = result[key].filter((fr: AllValidateResult) => fr.result === false);\n }\n\n // 整理嵌套数据\n if (result[key] && key.includes(\",\")) {\n const keyList = key.split(\",\");\n const fieldValue = calcFieldValue(keyList, result[key]);\n merge(result, fieldValue);\n delete result[key];\n }\n });\n return isEmpty(result) ? true : result;\n}\n\nexport default function useInstance(\n props: TdFormProps,\n formRef,\n formMapRef: React.MutableRefObject<Map<NamePath, React.RefObject<FormItemInstance>>>,\n floatingFormDataRef: React.RefObject<Record<string, unknown>>\n) {\n const { classPrefix } = useConfig();\n\n const { scrollToFirstError, preventSubmitDefault = true, onSubmit, onReset } = props;\n\n // 获取第一个错误表单\n function getFirstError(r: FormValidateResult<FormData>) {\n if (r === true) return;\n const [firstKey] = Object.keys(r);\n if (scrollToFirstError) {\n scrollTo(`.${classPrefix}-form--has-error`);\n }\n return r[firstKey][0]?.message;\n }\n\n // 校验不通过时,滚动到第一个错误表单\n function scrollTo(selector: string) {\n const dom = formRef.current.querySelector?.(selector);\n const behavior = scrollToFirstError as ScrollBehavior;\n if (dom) {\n dom.scrollIntoView({ behavior });\n }\n }\n\n // 对外方法 手动提交表单\n function submit(e?: React.FormEvent<HTMLFormElement>) {\n if (preventSubmitDefault) {\n e?.preventDefault?.();\n e?.stopPropagation?.();\n }\n validate().then((r) => {\n const firstError = getFirstError(r);\n const fields = getFieldsValue(true);\n onSubmit?.({ validateResult: r, firstError, e, fields });\n });\n }\n\n // 对外方法,该方法会触发全部表单组件错误信息显示\n async function validate(param?: Record<string, unknown>): Promise<FormValidateResult<FormData>> {\n const { fields, trigger = \"all\", showErrorMessage } = param || {};\n const list = [...formMapRef.current.values()]\n .filter(\n (formItemRef) =>\n isFunction(formItemRef?.current?.validate) && needValidate(formItemRef?.current?.name, fields as string[])\n )\n .map((formItemRef) => formItemRef?.current?.validate?.(trigger as string, showErrorMessage as boolean));\n\n const validateList = await Promise.all(list);\n return formatValidateResult(validateList);\n }\n\n // 对外方法,该方法只会校验不会触发信息提示\n async function validateOnly(param?: Record<string, unknown>): Promise<FormValidateResult<FormData>> {\n const { fields, trigger = \"all\" } = param || {};\n const list = [...formMapRef.current.values()]\n .filter(\n (formItemRef) =>\n isFunction(formItemRef?.current?.validateOnly) && needValidate(formItemRef?.current?.name, fields as string[])\n )\n .map((formItemRef) => formItemRef?.current?.validateOnly?.(trigger as string));\n\n const validateList = await Promise.all(list);\n return formatValidateResult(validateList);\n }\n\n // 对外方法,获取对应 formItem 的值\n function getFieldValue(name: NamePath) {\n if (!name) return null;\n\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n return formItemRef?.current?.getValue?.();\n }\n\n // 对外方法,获取一组字段名对应的值,当调用 getFieldsValue(true) 时返回所有值\n function getFieldsValue(nameList: string[] | boolean) {\n const fieldsValue = {};\n\n if (nameList === true) {\n // 嵌套数组子节点先添加导致外层数据覆盖因而需要倒序遍历\n for (const [name, formItemRef] of [...formMapRef.current.entries()].reverse()) {\n let fieldValue = null;\n const currentRef = formItemRef as React.RefObject<FormItemInstance>;\n if (currentRef?.current?.isFormList) {\n fieldValue = calcFieldValue(name, currentRef?.current?.getValue?.());\n } else {\n fieldValue = calcFieldValue(name, currentRef?.current?.getValue?.(), !props.supportNumberKey);\n }\n merge(fieldsValue, fieldValue);\n }\n } else {\n if (!Array.isArray(nameList)) {\n console.error(\"Form\", \"`getFieldsValue` 参数需要 Array 类型\");\n return {};\n }\n\n nameList.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n if (!formItemRef) return;\n\n const fieldValue = calcFieldValue(name, formItemRef?.current.getValue?.());\n merge(fieldsValue, fieldValue);\n });\n }\n return fieldsValue;\n }\n\n // 对外方法,设置对应 formItem 的值\n function setFieldsValue(fields = {}) {\n const nameLists = objectToArray(fields);\n\n nameLists.forEach((nameList) => {\n const fieldValue = get(fields, nameList);\n\n let formItemRef;\n if (nameList.length > 1) {\n // 如果是数组,由于内存地址不一致,不能直接使用 Map.get 获取到 formItemRef\n for (const [mapNameList, _formItemRef] of formMapRef.current.entries()) {\n if (isEqual(nameList, mapNameList)) {\n formItemRef = _formItemRef;\n break;\n }\n }\n } else {\n formItemRef = formMapRef.current.get(nameList[0]);\n }\n\n if (formItemRef?.current) {\n formItemRef?.current?.setValue?.(fieldValue, fields);\n } else {\n set(floatingFormDataRef.current, nameList, fieldValue);\n }\n });\n }\n\n // 对外方法,设置对应 formItem 的数据\n function setFields(fields = []) {\n if (!Array.isArray(fields)) throw new Error(\"setFields 参数需要 Array 类型\");\n\n fields.forEach((field) => {\n const { name, ...restFields } = field;\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n\n formItemRef?.current?.setField(restFields, field);\n });\n }\n\n // 对外方法,重置对应 formItem 的数据\n function reset(params: FormResetParams<FormData>) {\n // reset all\n if (typeof params === \"undefined\") {\n [...formMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetField?.();\n });\n } else {\n const { type = \"initial\", fields = [] } = params;\n\n fields.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n formItemRef?.current?.resetField(type);\n });\n }\n onReset?.({});\n }\n\n // 对外方法,重置对应 formItem 的状态\n function clearValidate(fields?: Array<keyof FormData>) {\n // reset all\n if (typeof fields === \"undefined\") {\n [...formMapRef.current.values()].forEach((formItemRef) => {\n formItemRef?.current?.resetValidate();\n });\n } else {\n if (!Array.isArray(fields)) throw new Error(\"clearValidate 参数需要 Array 类型\");\n\n fields.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n formItemRef?.current?.resetValidate();\n });\n }\n }\n\n // 对外方法,设置 formItem 的错误信息\n function setValidateMessage(message: FormValidateMessage<FormData>) {\n travelMapFromObject(message, formMapRef, (formItemRef, fieldValue) => {\n (formItemRef as React.RefObject<FormItemInstance>)?.current?.setValidateMessage?.(fieldValue);\n });\n }\n\n // 对外方法,获取 formItem 的错误信息\n function getValidateMessage(fields?: Array<keyof FormData>) {\n const message = {};\n\n if (typeof fields === \"undefined\") {\n [...formMapRef.current.values()].forEach((formItemRef) => {\n const item = formItemRef?.current?.getValidateMessage?.();\n if (isEmpty(item)) return;\n message[String(formItemRef?.current?.name)] = item;\n });\n } else {\n if (!Array.isArray(fields)) throw new Error(\"getValidateMessage 参数需要 Array 类型\");\n\n fields.forEach((name) => {\n const formItemRef = getMapValue(name, formMapRef) as React.RefObject<FormItemInstance> | undefined;\n const item = formItemRef?.current?.getValidateMessage?.();\n if (isEmpty(item)) return;\n message[String(formItemRef?.current?.name)] = item;\n });\n }\n\n if (isEmpty(message)) return;\n\n return message;\n }\n\n return {\n submit,\n reset,\n validate,\n validateOnly,\n clearValidate,\n setFields,\n setFieldsValue,\n setValidateMessage,\n getValidateMessage,\n getFieldValue,\n getFieldsValue,\n getCurrentElement: () => formRef.current\n };\n}\n"],"names":["needValidate","name","fields","Array","isArray","some","item","String","formatValidateResult","validateResultList","result","reduce","r","err","Object","assign","keys","forEach","key","filter","fr","includes","keyList","split","fieldValue","calcFieldValue","merge","isEmpty","useInstance","props","formRef","formMapRef","floatingFormDataRef","_useConfig","useConfig","classPrefix","scrollToFirstError","_props$preventSubmitD","preventSubmitDefault","onSubmit","onReset","getFirstError","_r$firstKey$","_Object$keys","_Object$keys2","_slicedToArray","firstKey","scrollTo","concat","message","selector","_formRef$current$quer","_formRef$current","dom","current","querySelector","call","behavior","scrollIntoView","submit","e","_e$preventDefault","_e$stopPropagation","preventDefault","stopPropagation","validate","then","firstError","getFieldsValue","validateResult","_callee","param","_ref","_ref$trigger","trigger","showErrorMessage","list","validateList","_regeneratorRuntime","wrap","_context","prev","next","_toConsumableArray","values","formItemRef","_formItemRef$current15","_formItemRef$current16","isFunction","map","_formItemRef$current17","_formItemRef$current18","Promise","all","sent","abrupt","stop","_validate","apply","arguments","validateOnly","_callee2","_ref2","_ref2$trigger","_context2","_formItemRef$current19","_formItemRef$current20","_formItemRef$current21","_formItemRef$current22","_validateOnly","getFieldValue","_formItemRef$current","_formItemRef$current$","getMapValue","getValue","nameList","fieldsValue","_iterator","_createForOfIteratorHelper","entries","reverse","_step","s","n","done","_currentRef$current","_step$value","value","currentRef","isFormList","_currentRef$current2","_currentRef$current2$","_currentRef$current3","_currentRef$current3$","supportNumberKey","f","console","error","_formItemRef$current$2","_formItemRef$current2","setFieldsValue","length","undefined","nameLists","objectToArray","_formItemRef2","get","_iterator2","_step2","_step2$value","mapNameList","_formItemRef","isEqual","_formItemRef3","_formItemRef3$setValu","setValue","set","setFields","Error","field","_formItemRef$current3","restFields","_objectWithoutProperties","_excluded","setField","reset","params","_formItemRef$current4","_formItemRef$current5","resetField","_params$type","type","_params$fields","_formItemRef$current6","clearValidate","_formItemRef$current7","resetValidate","_formItemRef$current8","setValidateMessage","travelMapFromObject","_formItemRef$current9","_formItemRef$current0","getValidateMessage","_formItemRef$current1","_formItemRef$current10","_formItemRef$current11","_formItemRef$current12","_formItemRef$current13","_formItemRef$current14","getCurrentElement"],"mappings":";;;;;;;;;;;;;;;;;AAeA,SAASA,YAAAA,CAAaC,MAAgBC,MAAA,EAAkB;AACtD,EAAA,IAAI,CAACA,MAAA,IAAU,CAACC,MAAMC,OAAA,CAAQF,MAAM,GAAG,OAAO,IAAA;AAC9C,EAAA,OAAOA,MAAA,CAAOG,KAAK,UAACC,IAAA,EAAA;IAAA,OAASC,OAAOD,IAAI,CAAA,KAAMC,MAAA,CAAON,IAAI,CAAC;EAAA,CAAA,CAAA;AAC5D;AAGA,SAASO,qBAAqBC,kBAAA,EAAoB;EAChD,IAAMC,MAAA,GAASD,kBAAA,CAAmBE,MAAA,CAAO,UAACC,GAAGC,GAAA,EAAA;IAAA,OAAQC,MAAA,CAAOC,MAAA,CAAOH,CAAA,IAAK,EAAC,EAAGC,GAAG,CAAA;EAAA,CAAA,EAAG,EAAE,CAAA;EACpFC,MAAA,CAAOE,IAAA,CAAKN,MAAM,CAAA,CAAEO,OAAA,CAAQ,UAACC,GAAA,EAAQ;AACnC,IAAA,IAAIR,MAAA,CAAOQ,GAAG,CAAA,KAAM,IAAA,EAAM;MACxB,OAAOR,OAAOQ,GAAG,CAAA;AACnB,IAAA,CAAA,MAAO;AACLR,MAAAA,MAAA,CAAOQ,GAAG,CAAA,GAAIR,MAAA,CAAOQ,GAAG,CAAA,CAAEC,OAAO,UAACC,EAAA,EAAA;AAAA,QAAA,OAA0BA,EAAA,CAAGV,MAAA,KAAW,KAAK;MAAA,CAAA,CAAA;AACjF,IAAA;IAGA,IAAIA,OAAOQ,GAAG,CAAA,IAAKA,GAAA,CAAIG,QAAA,CAAS,GAAG,CAAA,EAAG;AACpC,MAAA,IAAMC,OAAA,GAAUJ,GAAA,CAAIK,KAAA,CAAM,GAAG,CAAA;MAC7B,IAAMC,UAAA,GAAaC,cAAA,CAAeH,OAAA,EAASZ,MAAA,CAAOQ,GAAG,CAAC,CAAA;AACtDQ,MAAAA,KAAA,CAAMhB,QAAQc,UAAU,CAAA;MACxB,OAAOd,OAAOQ,GAAG,CAAA;AACnB,IAAA;AACF,EAAA,CAAC,CAAA;AACD,EAAA,OAAOS,OAAA,CAAQjB,MAAM,CAAA,GAAI,IAAA,GAAOA,MAAA;AAClC;AAEA,SAAwBkB,WAAAA,CACtBC,KAAA,EACAC,OAAA,EACAC,UAAA,EACAC,mBAAA,EACA;AACA,EAAA,IAAAC,UAAA,GAAwBC,SAAA,EAAU;IAA1BC,WAAA,GAAAF,UAAA,CAAAE,WAAA;AAER,EAAA,IAAQC,kBAAA,GAAuEP,KAAA,CAAvEO,kBAAA;IAAAC,qBAAA,GAAuER,KAAA,CAAnDS,oBAAA;AAAAA,IAAAA,oBAAA,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAuB,IAAA,GAAAA,qBAAA;IAAME,QAAA,GAAsBV,KAAA,CAAtBU,QAAA;IAAUC,UAAYX,KAAA,CAAZW;EAGnE,SAASC,cAAc7B,CAAA,EAAiC;AAAA,IAAA,IAAA8B,YAAA;IACtD,IAAI9B,MAAM,IAAA,EAAM;AAChB,IAAA,IAAA+B,YAAA,GAAmB7B,MAAA,CAAOE,KAAKJ,CAAC,CAAA;MAAAgC,aAAA,GAAAC,cAAA,CAAAF,YAAA,EAAA,CAAA,CAAA;AAAzBG,MAAAA,QAAQ,GAAAF,aAAA,CAAA,CAAA,CAAA;AACf,IAAA,IAAIR,kBAAA,EAAoB;AACtBW,MAAAA,QAAA,CAAA,GAAA,CAAAC,MAAA,CAAab,WAAW,qBAAkB,CAAA;AAC5C,IAAA;AACA,IAAA,OAAA,CAAAO,YAAA,GAAO9B,CAAA,CAAEkC,QAAQ,CAAA,CAAE,CAAC,CAAA,MAAA,IAAA,IAAAJ,YAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,YAAA,CAAgBO,OAAA;AACzB,EAAA;EAGA,SAASF,SAASG,QAAA,EAAkB;IAAA,IAAAC,qBAAA,EAAAC,gBAAA;IAClC,IAAMC,GAAA,IAAAF,qBAAA,GAAM,CAAAC,gBAAA,GAAAtB,OAAA,CAAQwB,OAAA,EAAQC,aAAA,MAAA,IAAA,IAAAJ,qBAAA,uBAAhBA,qBAAA,CAAAK,IAAA,CAAAJ,gBAAA,EAAgCF,QAAQ,CAAA;IACpD,IAAMO,QAAA,GAAWrB,kBAAA;AACjB,IAAA,IAAIiB,GAAA,EAAK;MACPA,GAAA,CAAIK,cAAA,CAAe;AAAED,QAAAA,QAAA,EAAAA;AAAS,OAAC,CAAA;AACjC,IAAA;AACF,EAAA;EAGA,SAASE,OAAOC,CAAA,EAAsC;AACpD,IAAA,IAAItB,oBAAA,EAAsB;MAAA,IAAAuB,iBAAA,EAAAC,kBAAA;AACxBF,MAAAA,CAAA,aAAAA,CAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,iBAAA,GAAAD,CAAA,CAAGG,cAAA,MAAA,IAAA,IAAAF,iBAAA,eAAHA,iBAAA,CAAAL,IAAA,CAAAI,CAAoB,CAAA;AACpBA,MAAAA,CAAA,aAAAA,CAAA,KAAA,KAAA,CAAA,IAAA,CAAAE,kBAAA,GAAAF,CAAA,CAAGI,eAAA,MAAA,IAAA,IAAAF,kBAAA,eAAHA,kBAAA,CAAAN,IAAA,CAAAI,CAAqB,CAAA;AACvB,IAAA;AACAK,IAAAA,QAAA,EAAS,CAAEC,IAAA,CAAK,UAACtD,CAAA,EAAM;AACrB,MAAA,IAAMuD,UAAA,GAAa1B,cAAc7B,CAAC,CAAA;AAClC,MAAA,IAAMV,MAAA,GAASkE,eAAe,IAAI,CAAA;AAClC7B,MAAAA,QAAA,KAAA,IAAA,IAAAA,QAAA,KAAA,KAAA,CAAA,IAAAA,QAAA,CAAW;AAAE8B,QAAAA,cAAA,EAAgBzD,CAAA;AAAGuD,QAAAA,UAAA,EAAAA,UAAA;AAAYP,QAAAA,CAAA,EAAAA,CAAA;AAAG1D,QAAAA,QAAAA;AAAO,OAAC,CAAA;AACzD,IAAA,CAAC,CAAA;AACH,EAAA;EAAA,SAGe+D;;;;wEAAf,SAAAK,OAAAA,CAAwBC,KAAA,EAAA;AAAA,MAAA,IAAAC,IAAA,EAAAtE,MAAA,EAAAuE,YAAA,EAAAC,OAAA,EAAAC,gBAAA,EAAAC,IAAA,EAAAC,YAAA;AAAA,MAAA,OAAAC,mBAAA,CAAAC,IAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,UAAA,KAAA,CAAA;AAAAV,YAAAA,IAAA,GACgCD,SAAS,EAAC,EAAxDrE,MAAA,GAAAsE,IAAA,CAAAtE,MAAA,EAAAuE,YAAA,GAAAD,IAAA,CAAQE,OAAA,EAAAA,OAAA,GAAAD,YAAA,KAAA,KAAA,CAAA,GAAU,sBAAOE,gBAAA,GAAAH,IAAA,CAAAG,gBAAA;AAC3BC,YAAAA,OAAOO,kBAAA,CAAIpD,WAAWuB,OAAA,CAAQ8B,MAAA,EAAQ,CAAA,CACzCjE,MAAA,CACC,UAACkE,WAAA,EAAA;cAAA,IAAAC,sBAAA,EAAAC,sBAAA;AAAA,cAAA,OACCC,UAAA,CAAWH,WAAA,KAAA,IAAA,IAAAA,WAAA,gBAAAC,sBAAA,GAAAD,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAgC,sBAAA,uBAAbA,sBAAA,CAAsBrB,QAAQ,CAAA,IAAKjE,YAAA,CAAaqF,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAE,sBAAA,GAAAF,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAiC,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,sBAAA,CAAsBtF,IAAA,EAAMC,MAAkB,CAAA;AAAA,YAAA,CAC7G,CAAA,CACCuF,IAAI,UAACJ,WAAA,EAAA;cAAA,IAAAK,sBAAA,EAAAC,sBAAA;AAAA,cAAA,OAAgBN,wBAAAA,oDAAAA,YAAa/B,OAAA,MAAA,IAAA,IAAAoC,sBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,sBAAA,GAAbD,sBAAA,CAAsBzB,QAAA,MAAA,IAAA,IAAA0B,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAtBA,sBAAA,CAAAnC,IAAA,CAAAkC,sBAAA,EAAiChB,OAAA,EAAmBC,gBAA2B,CAAC;YAAA,CAAA,CAAA;AAAAK,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;AAAA,YAAA,OAE7EU,OAAA,CAAQC,GAAA,CAAIjB,IAAI,CAAA;AAAA,UAAA,KAAA,CAAA;YAArCC,YAAA,GAAAG,QAAA,CAAAc,IAAA;AAAA,YAAA,OAAAd,QAAA,CAAAe,MAAA,WACCvF,qBAAqBqE,YAAY,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAAG,QAAA,CAAAgB,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAA1B,OAAA,CAAA;IAAA,CAC1C,CAAA,CAAA;AAAA,IAAA,OAAA2B,SAAA,CAAAC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,EAAA;EAAA,SAGeC;;;;4EAAf,SAAAC,QAAAA,CAA4B9B,KAAA,EAAA;MAAA,IAAA+B,KAAA,EAAApG,MAAA,EAAAqG,aAAA,EAAA7B,OAAA,EAAAE,IAAA,EAAAC,YAAA;AAAA,MAAA,OAAAC,mBAAA,CAAAC,IAAA,CAAA,UAAAyB,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAvB,IAAA,GAAAuB,SAAA,CAAAtB,IAAA;AAAA,UAAA,KAAA,CAAA;YAAAoB,KAAA,GACU/B,SAAS,EAAC,EAAtCrE,MAAA,GAAAoG,KAAA,CAAApG,MAAA,EAAAqG,aAAA,GAAAD,KAAA,CAAQ5B,OAAA,EAAAA,OAAA,GAAA6B,aAAA,KAAA,KAAA,CAAA,GAAU,KAAA,GAAAA,aAAA;AACpB3B,YAAAA,OAAOO,kBAAA,CAAIpD,WAAWuB,OAAA,CAAQ8B,MAAA,EAAQ,CAAA,CACzCjE,MAAA,CACC,UAACkE,WAAA,EAAA;cAAA,IAAAoB,sBAAA,EAAAC,sBAAA;AAAA,cAAA,OACClB,UAAA,CAAWH,WAAA,KAAA,IAAA,IAAAA,WAAA,gBAAAoB,sBAAA,GAAApB,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAmD,sBAAA,uBAAbA,sBAAA,CAAsBL,YAAY,CAAA,IAAKpG,YAAA,CAAaqF,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAqB,sBAAA,GAAArB,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAoD,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,sBAAA,CAAsBzG,IAAA,EAAMC,MAAkB,CAAA;AAAA,YAAA,CACjH,CAAA,CACCuF,IAAI,UAACJ,WAAA,EAAA;cAAA,IAAAsB,sBAAA,EAAAC,sBAAA;cAAA,OAAgBvB,wBAAAA,oDAAAA,YAAa/B,OAAA,MAAA,IAAA,IAAAqD,sBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,sBAAA,GAAbD,sBAAA,CAAsBP,YAAA,MAAA,IAAA,IAAAQ,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAtBA,sBAAA,CAAApD,IAAA,CAAAmD,sBAAA,EAAqCjC,OAAiB,CAAC;YAAA,CAAA,CAAA;AAAA8B,YAAAA,SAAA,CAAAtB,IAAA,GAAA,CAAA;AAAA,YAAA,OAEpDU,OAAA,CAAQC,GAAA,CAAIjB,IAAI,CAAA;AAAA,UAAA,KAAA,CAAA;YAArCC,YAAA,GAAA2B,SAAA,CAAAV,IAAA;AAAA,YAAA,OAAAU,SAAA,CAAAT,MAAA,WACCvF,qBAAqBqE,YAAY,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAA2B,SAAA,CAAAR,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAAK,QAAA,CAAA;IAAA,CAC1C,CAAA,CAAA;AAAA,IAAA,OAAAQ,aAAA,CAAAX,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,EAAA;EAGA,SAASW,cAAc7G,IAAA,EAAgB;IAAA,IAAA8G,oBAAA,EAAAC,qBAAA;AACrC,IAAA,IAAI,CAAC/G,MAAM,OAAO,IAAA;AAElB,IAAA,IAAMoF,WAAA,GAAc4B,WAAA,CAAYhH,IAAA,EAAM8B,UAAU,CAAA;IAChD,OAAOsD,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAA0B,oBAAA,GAAA1B,WAAA,CAAa/B,iFAAbyD,oBAAA,CAAsBG,QAAA,MAAA,IAAA,IAAAF,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAtBA,qBAAA,CAAAxD,IAAA,CAAAuD,oBAAiC,CAAA;AAC1C,EAAA;EAGA,SAAS3C,eAAe+C,QAAA,EAA8B;IACpD,IAAMC,cAAc,EAAC;IAErB,IAAID,aAAa,IAAA,EAAM;AAAA,MAAA,IAAAE,SAAA,GAAAC,0BAAA,CAEanC,kBAAA,CAAIpD,UAAA,CAAWuB,OAAA,CAAQiE,OAAA,EAAS,CAAA,CAAEC,OAAA,EAAQ,CAAA;QAAAC,KAAA;AAAA,MAAA,IAAA;QAA5E,KAAAJ,SAAA,CAAAK,CAAA,EAAA,EAAA,CAAA,CAAAD,KAAA,GAAAJ,SAAA,CAAAM,CAAA,EAAA,EAAAC,IAAA,GAA+E;AAAA,UAAA,IAAAC,mBAAA;AAAA,UAAA,IAAAC,WAAA,GAAAjF,cAAA,CAAA4E,KAAA,CAAAM,KAAA,EAAA,CAAA,CAAA;AAAnE9H,YAAAA,IAAA,GAAA6H,WAAA,CAAA,CAAA,CAAA;AAAMzC,YAAAA,WAAW,GAAAyC,WAAA,CAAA,CAAA,CAAA;UAC3B,IAAItG,UAAA,GAAa,IAAA;UACjB,IAAMwG,UAAA,GAAa3C,WAAA;AACnB,UAAA,IAAI2C,UAAA,KAAA,IAAA,IAAAA,UAAA,KAAA,KAAA,CAAA,IAAA,CAAAH,mBAAA,GAAAG,UAAA,CAAY1E,uDAAZuE,mBAAA,CAAqBI,UAAA,EAAY;YAAA,IAAAC,oBAAA,EAAAC,qBAAA;AACnC3G,YAAAA,UAAA,GAAaC,cAAA,CAAexB,IAAA,EAAM+H,UAAA,KAAA,IAAA,IAAAA,UAAA,KAAA,KAAA,CAAA,IAAA,CAAAE,oBAAA,GAAAF,UAAA,CAAY1E,OAAA,MAAA,IAAA,IAAA4E,oBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,qBAAA,GAAZD,oBAAA,CAAqBhB,kEAArBiB,qBAAA,CAAA3E,IAAA,CAAA0E,oBAAgC,CAAC,CAAA;AACrE,UAAA,CAAA,MAAO;YAAA,IAAAE,oBAAA,EAAAC,qBAAA;AACL7G,YAAAA,UAAA,GAAaC,cAAA,CAAexB,MAAM+H,UAAA,KAAA,IAAA,IAAAA,UAAA,KAAA,KAAA,CAAA,IAAA,CAAAI,oBAAA,GAAAJ,UAAA,CAAY1E,OAAA,MAAA,IAAA,IAAA8E,oBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,qBAAA,GAAZD,oBAAA,CAAqBlB,kEAArBmB,qBAAA,CAAA7E,IAAA,CAAA4E,oBAAgC,CAAA,EAAG,CAACvG,MAAMyG,gBAAgB,CAAA;AAC9F,UAAA;AACA5G,UAAAA,KAAA,CAAM0F,aAAa5F,UAAU,CAAA;AAC/B,QAAA;AAAA,MAAA,CAAA,CAAA,OAAAX,GAAA,EAAA;QAAAwG,SAAA,CAAAzD,CAAA,CAAA/C,GAAA,CAAA;AAAA,MAAA,CAAA,SAAA;AAAAwG,QAAAA,SAAA,CAAAkB,CAAA,EAAA;AAAA,MAAA;AACF,IAAA,CAAA,MAAO;AACL,MAAA,IAAI,CAACpI,KAAA,CAAMC,OAAA,CAAQ+G,QAAQ,CAAA,EAAG;AAC5BqB,QAAAA,OAAA,CAAQC,KAAA,CAAM,QAAQ,8DAAgC,CAAA;AACtD,QAAA,OAAO,EAAC;AACV,MAAA;AAEAtB,MAAAA,QAAA,CAASlG,OAAA,CAAQ,UAAChB,IAAA,EAAS;QAAA,IAAAyI,sBAAA,EAAAC,qBAAA;AACzB,QAAA,IAAMtD,WAAA,GAAc4B,WAAA,CAAYhH,IAAA,EAAM8B,UAAU,CAAA;QAChD,IAAI,CAACsD,WAAA,EAAa;AAElB,QAAA,IAAM7D,aAAaC,cAAA,CAAexB,IAAA,EAAMoF,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAqD,sBAAA,GAAA,CAAAC,qBAAA,GAAAtD,WAAA,CAAa/B,OAAA,EAAQ4D,mEAArBwB,sBAAA,CAAAlF,IAAA,CAAAmF,qBAAgC,CAAC,CAAA;AACzEjH,QAAAA,KAAA,CAAM0F,aAAa5F,UAAU,CAAA;AAC/B,MAAA,CAAC,CAAA;AACH,IAAA;AACA,IAAA,OAAO4F,WAAA;AACT,EAAA;EAGA,SAASwB,cAAAA,GAA4B;AAAA,IAAA,IAAb1I,MAAA,GAAAiG,SAAA,CAAA0C,MAAA,GAAA,CAAA,IAAA1C,SAAA,CAAA,CAAA,CAAA,KAAA2C,SAAA,GAAA3C,SAAA,CAAA,CAAA,CAAA,GAAS,EAAC;AAChC,IAAA,IAAM4C,SAAA,GAAYC,cAAc9I,MAAM,CAAA;AAEtC6I,IAAAA,SAAA,CAAU9H,OAAA,CAAQ,UAACkG,QAAA,EAAa;AAAA,MAAA,IAAA8B,aAAA;AAC9B,MAAA,IAAMzH,UAAA,GAAa0H,GAAA,CAAIhJ,MAAA,EAAQiH,QAAQ,CAAA;AAEvC,MAAA,IAAI9B,WAAA;AACJ,MAAA,IAAI8B,QAAA,CAAS0B,SAAS,CAAA,EAAG;QAAA,IAAAM,UAAA,GAAA7B,0BAAA,CAEmBvF,UAAA,CAAWuB,OAAA,CAAQiE,SAAQ,CAAA;UAAA6B,MAAA;AAAA,QAAA,IAAA;UAArE,KAAAD,UAAA,CAAAzB,CAAA,EAAA,EAAA,CAAA,CAAA0B,MAAA,GAAAD,UAAA,CAAAxB,CAAA,EAAA,EAAAC,IAAA,GAAwE;AAAA,YAAA,IAAAyB,YAAA,GAAAxG,cAAA,CAAAuG,MAAA,CAAArB,KAAA,EAAA,CAAA,CAAA;AAA5DuB,cAAAA,WAAA,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAaE,cAAAA,YAAY,GAAAF,YAAA,CAAA,CAAA,CAAA;AACnC,YAAA,IAAIG,OAAA,CAAQrC,QAAA,EAAUmC,WAAW,CAAA,EAAG;AAClCjE,cAAAA,WAAA,GAAckE,YAAA;AACd,cAAA;AACF,YAAA;AACF,UAAA;AAAA,QAAA,CAAA,CAAA,OAAA1I,GAAA,EAAA;UAAAsI,UAAA,CAAAvF,CAAA,CAAA/C,GAAA,CAAA;AAAA,QAAA,CAAA,SAAA;AAAAsI,UAAAA,UAAA,CAAAZ,CAAA,EAAA;AAAA,QAAA;AACF,MAAA,CAAA,MAAO;QACLlD,WAAA,GAActD,UAAA,CAAWuB,OAAA,CAAQ4F,GAAA,CAAI/B,QAAA,CAAS,CAAC,CAAC,CAAA;AAClD,MAAA;MAEA,IAAA,CAAA8B,aAAA,GAAI5D,qDAAA4D,aAAA,CAAa3F,OAAA,EAAS;QAAA,IAAAmG,aAAA,EAAAC,qBAAA;AACxB,QAAA,CAAAD,aAAA,GAAApE,WAAA,MAAA,IAAA,IAAAoE,aAAA,KAAA,KAAA,CAAA,IAAA,CAAAA,aAAA,GAAAA,aAAA,CAAanG,OAAA,MAAA,IAAA,IAAAmG,aAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,qBAAA,GAAbD,aAAA,CAAsBE,QAAA,MAAA,IAAA,IAAAD,qBAAA,eAAtBA,qBAAA,CAAAlG,IAAA,CAAAiG,aAAA,EAAiCjI,UAAA,EAAYtB,MAAM,CAAA;AACrD,MAAA,CAAA,MAAO;QACL0J,GAAA,CAAI5H,mBAAA,CAAoBsB,OAAA,EAAS6D,QAAA,EAAU3F,UAAU,CAAA;AACvD,MAAA;AACF,IAAA,CAAC,CAAA;AACH,EAAA;EAGA,SAASqI,SAAAA,GAAuB;AAAA,IAAA,IAAb3J,MAAA,GAAAiG,SAAA,CAAA0C,MAAA,GAAA,CAAA,IAAA1C,SAAA,CAAA,CAAA,CAAA,KAAA2C,SAAA,GAAA3C,SAAA,CAAA,CAAA,CAAA,GAAS,EAAC;AAC3B,IAAA,IAAI,CAAChG,MAAMC,OAAA,CAAQF,MAAM,GAAG,MAAM,IAAI4J,MAAM,uDAAyB,CAAA;AAErE5J,IAAAA,MAAA,CAAOe,OAAA,CAAQ,UAAC8I,KAAA,EAAU;AAAA,MAAA,IAAAC,qBAAA;AACxB,MAAA,IAAQ/J,IAAA,GAAwB8J,KAAA,CAAxB9J,IAAA;AAASgK,QAAAA,UAAA,GAAAC,wBAAA,CAAeH,KAAA,EAAAI,SAAA,CAAA;AAChC,MAAA,IAAM9E,WAAA,GAAc4B,WAAA,CAAYhH,IAAA,EAAM8B,UAAU,CAAA;AAEhDsD,MAAAA,WAAA,aAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAA2E,qBAAA,GAAA3E,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAA0G,qBAAA,KAAA,KAAA,CAAA,IAAbA,qBAAA,CAAsBI,QAAA,CAASH,UAAA,EAAYF,KAAK,CAAA;AAClD,IAAA,CAAC,CAAA;AACH,EAAA;EAGA,SAASM,MAAMC,MAAA,EAAmC;AAEhD,IAAA,IAAI,OAAOA,WAAW,WAAA,EAAa;AACjCnF,MAAAA,kBAAA,CAAIpD,WAAWuB,OAAA,CAAQ8B,MAAA,EAAQ,CAAA,CAAEnE,OAAA,CAAQ,UAACoE,WAAA,EAAgB;QAAA,IAAAkF,qBAAA,EAAAC,qBAAA;QACxDnF,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAkF,qBAAA,GAAAlF,WAAA,CAAa/B,kFAAbiH,qBAAA,CAAsBE,UAAA,MAAA,IAAA,IAAAD,qBAAA,KAAA,KAAA,CAAA,IAAtBA,qBAAA,CAAAhH,IAAA,CAAA+G,qBAAmC,CAAA;AACrC,MAAA,CAAC,CAAA;AACH,IAAA,CAAA,MAAO;AACL,MAAA,IAAAG,YAAA,GAA0CJ,MAAA,CAAlCK,IAAA;AAAAA,QAAAA,IAAA,GAAAD,YAAA,KAAA,KAAA,CAAA,GAAO,SAAA,GAAAA,YAAA;QAAAE,cAAA,GAA2BN,MAAA,CAAhBpK,MAAA;AAAAA,QAAAA,MAAA,GAAA0K,cAAA,KAAA,KAAA,CAAA,GAAS;AAEnC1K,MAAAA,MAAA,CAAOe,OAAA,CAAQ,UAAChB,IAAA,EAAS;AAAA,QAAA,IAAA4K,qBAAA;AACvB,QAAA,IAAMxF,WAAA,GAAc4B,WAAA,CAAYhH,IAAA,EAAM8B,UAAU,CAAA;AAChDsD,QAAAA,WAAA,aAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAwF,qBAAA,GAAAxF,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAuH,qBAAA,eAAbA,qBAAA,CAAsBJ,WAAWE,IAAI,CAAA;AACvC,MAAA,CAAC,CAAA;AACH,IAAA;AACAnI,IAAAA,OAAA,aAAAA,OAAA,KAAA,KAAA,CAAA,IAAAA,OAAA,CAAU,EAAE,CAAA;AACd,EAAA;EAGA,SAASsI,cAAc5K,MAAA,EAAgC;AAErD,IAAA,IAAI,OAAOA,WAAW,WAAA,EAAa;AACjCiF,MAAAA,kBAAA,CAAIpD,WAAWuB,OAAA,CAAQ8B,MAAA,EAAQ,CAAA,CAAEnE,OAAA,CAAQ,UAACoE,WAAA,EAAgB;AAAA,QAAA,IAAA0F,qBAAA;AACxD1F,QAAAA,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAA0F,qBAAA,GAAA1F,WAAA,CAAa/B,yDAAbyH,qBAAA,CAAsBC,aAAA,EAAc;AACtC,MAAA,CAAC,CAAA;AACH,IAAA,CAAA,MAAO;AACL,MAAA,IAAI,CAAC7K,MAAMC,OAAA,CAAQF,MAAM,GAAG,MAAM,IAAI4J,MAAM,2DAA6B,CAAA;AAEzE5J,MAAAA,MAAA,CAAOe,OAAA,CAAQ,UAAChB,IAAA,EAAS;AAAA,QAAA,IAAAgL,qBAAA;AACvB,QAAA,IAAM5F,WAAA,GAAc4B,WAAA,CAAYhH,IAAA,EAAM8B,UAAU,CAAA;AAChDsD,QAAAA,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAA4F,qBAAA,GAAA5F,WAAA,CAAa/B,yDAAb2H,qBAAA,CAAsBD,aAAA,EAAc;AACtC,MAAA,CAAC,CAAA;AACH,IAAA;AACF,EAAA;EAGA,SAASE,mBAAmBjI,OAAA,EAAwC;IAClEkI,mBAAA,CAAoBlI,OAAA,EAASlB,UAAA,EAAY,UAACsD,WAAA,EAAa7D,UAAA,EAAe;MAAA,IAAA4J,qBAAA,EAAAC,qBAAA;MACnEhG,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAA+F,qBAAA,GAAA/F,WAAA,CAAmD/B,OAAA,MAAA,IAAA,IAAA8H,qBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,qBAAA,GAAnDD,qBAAA,CAA4DF,kBAAA,MAAA,IAAA,IAAAG,qBAAA,KAAA,KAAA,CAAA,IAA5DA,qBAAA,CAAA7H,IAAA,CAAA4H,qBAAA,EAAiF5J,UAAU,CAAA;AAC9F,IAAA,CAAC,CAAA;AACH,EAAA;EAGA,SAAS8J,mBAAmBpL,MAAA,EAAgC;IAC1D,IAAM+C,UAAU,EAAC;AAEjB,IAAA,IAAI,OAAO/C,WAAW,WAAA,EAAa;AACjCiF,MAAAA,kBAAA,CAAIpD,WAAWuB,OAAA,CAAQ8B,MAAA,EAAQ,CAAA,CAAEnE,OAAA,CAAQ,UAACoE,WAAA,EAAgB;AAAA,QAAA,IAAAkG,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;QACxD,IAAMnL,IAAA,GAAO+E,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAkG,qBAAA,GAAAlG,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAiI,qBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,sBAAA,GAAbD,qBAAA,CAAsBD,kBAAA,MAAA,IAAA,IAAAE,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAtBA,sBAAA,CAAAhI,IAAA,CAAA+H,qBAA2C,CAAA;AACxD,QAAA,IAAI5J,OAAA,CAAQrB,IAAI,CAAA,EAAG;QACnB2C,OAAA,CAAQ1C,MAAA,CAAO8E,WAAA,aAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAoG,sBAAA,GAAApG,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAmI,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,sBAAA,CAAsBxL,IAAI,CAAC,CAAA,GAAIK,IAAA;AAChD,MAAA,CAAC,CAAA;AACH,IAAA,CAAA,MAAO;AACL,MAAA,IAAI,CAACH,MAAMC,OAAA,CAAQF,MAAM,GAAG,MAAM,IAAI4J,MAAM,gEAAkC,CAAA;AAE9E5J,MAAAA,MAAA,CAAOe,OAAA,CAAQ,UAAChB,IAAA,EAAS;AAAA,QAAA,IAAAyL,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;AACvB,QAAA,IAAMvG,WAAA,GAAc4B,WAAA,CAAYhH,IAAA,EAAM8B,UAAU,CAAA;QAChD,IAAMzB,IAAA,GAAO+E,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAqG,sBAAA,GAAArG,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAoI,sBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,sBAAA,GAAbD,sBAAA,CAAsBJ,kBAAA,MAAA,IAAA,IAAAK,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAtBA,sBAAA,CAAAnI,IAAA,CAAAkI,sBAA2C,CAAA;AACxD,QAAA,IAAI/J,OAAA,CAAQrB,IAAI,CAAA,EAAG;QACnB2C,OAAA,CAAQ1C,MAAA,CAAO8E,WAAA,aAAAA,WAAA,KAAA,KAAA,CAAA,IAAA,CAAAuG,sBAAA,GAAAvG,WAAA,CAAa/B,OAAA,MAAA,IAAA,IAAAsI,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,sBAAA,CAAsB3L,IAAI,CAAC,CAAA,GAAIK,IAAA;AAChD,MAAA,CAAC,CAAA;AACH,IAAA;AAEA,IAAA,IAAIqB,OAAA,CAAQsB,OAAO,CAAA,EAAG;AAEtB,IAAA,OAAOA,OAAA;AACT,EAAA;EAEA,OAAO;AACLU,IAAAA,MAAA,EAAAA,MAAA;AACA0G,IAAAA,KAAA,EAAAA,KAAA;AACApG,IAAAA,QAAA,EAAAA,QAAA;AACAmC,IAAAA,YAAA,EAAAA,YAAA;AACA0E,IAAAA,aAAA,EAAAA,aAAA;AACAjB,IAAAA,SAAA,EAAAA,SAAA;AACAjB,IAAAA,cAAA,EAAAA,cAAA;AACAsC,IAAAA,kBAAA,EAAAA,kBAAA;AACAI,IAAAA,kBAAA,EAAAA,kBAAA;AACAxE,IAAAA,aAAA,EAAAA,aAAA;AACA1C,IAAAA,cAAA,EAAAA,cAAA;IACAyH,iBAAA,EAAmB,SAAnBA,iBAAAA,GAAA;MAAA,OAAyB/J,OAAA,CAAQwB,OAAA;AAAA,IAAA;GACnC;AACF;;;;"}
@@ -0,0 +1,3 @@
1
+ import type { NamePath } from "../type";
2
+ import type { InternalFormInstance } from "./interface";
3
+ export default function useWatch(name: NamePath, form: InternalFormInstance): any;
@@ -0,0 +1,7 @@
1
+ import "./style/index.js";
2
+ export type { FormProps } from "./Form";
3
+ export type { FormItemProps } from "./FormItem";
4
+ export * from "./type";
5
+ export * from "./hooks/interface";
6
+ export declare const Form: import("react").FunctionComponent<import("./Form").FormProps & import("react").RefAttributes<import("./type").FormInstanceFunctions<import("./type").Data>>> & Record<string, unknown>;
7
+ export default Form;
package/es/form/index.js CHANGED
@@ -6,37 +6,41 @@ import '../_chunks/dep-Cwish4GD.js';
6
6
  import '../_chunks/dep-D-UKOauR.js';
7
7
  import 'react';
8
8
  import 'classnames';
9
- import '../_chunks/dep-u1x3x6MJ.js';
10
- import '../config-provider/ConfigContext.js';
9
+ import '../_chunks/dep-gy8uvBaS.js';
10
+ import '../_chunks/dep-5U9UjDaf.js';
11
+ import 'dayjs';
11
12
  import '../_chunks/dep-U1T8CQY9.js';
12
13
  import '../_chunks/dep-BP0-apUT.js';
13
14
  import 'hoist-non-react-statics';
14
15
  import './hooks/useInstance.js';
15
16
  import '../_chunks/dep-DN7d1SzH.js';
16
- import '../_chunks/dep-DZ_0EvBk.js';
17
+ import '../_chunks/dep-DX65P8M9.js';
17
18
  import 'lodash-es';
18
19
  import './utils/index.js';
19
- import '../_chunks/dep-D7LanWes.js';
20
+ import '../_chunks/dep-4LYjB3c6.js';
21
+ import '../_chunks/dep-Chz4ZJCb.js';
20
22
  import './FormContext.js';
21
- import '../_chunks/dep-EcrDKDlu.js';
23
+ import '../_chunks/dep-BYlJzn45.js';
22
24
  import '@tendaui/icons';
23
25
  import '../_chunks/dep-DGvfel3I.js';
24
- import '../_chunks/dep-bWaVq_y3.js';
25
- import '../_chunks/dep-C36au4Ip.js';
26
+ import '../_chunks/dep-ByzdZjUR.js';
27
+ import '../_chunks/dep-BuIAffJt.js';
26
28
  import '../_chunks/dep-D6YxJv-F.js';
27
- import '../_chunks/dep-DHWwZ2Nj.js';
28
- import '../_chunks/dep-B7HmDtze.js';
29
+ import '../_chunks/dep-DQ6kXoi8.js';
30
+ import '../_chunks/dep-B4_O1Vgv.js';
29
31
  import '../common/Check.js';
30
32
  import '../_chunks/dep-DwWrhxkd.js';
31
33
  import '../tag-input/TagInput.js';
32
34
  import '../input/index.js';
33
35
  import '../input/Input.js';
34
- import '../_chunks/dep-0QH2Ee4R.js';
36
+ import '../_chunks/dep-BRbJGDI9.js';
37
+ import '../_chunks/dep-DRwijJcv.js';
35
38
  import '../input/InputGroup.js';
36
39
  import '../input/style/css.js';
37
40
  import '../tag-input/hooks/useTagList.js';
38
41
  import '../tag/index.js';
39
42
  import '../tag/Tag.js';
43
+ import '../_chunks/dep-zOZQ0R9g.js';
40
44
  import '../tag/style/css.js';
41
45
  import '../hooks/useDragSorter.js';
42
46
  import './FormList.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../components/form/index.ts"],"sourcesContent":["import _Form from \"./Form\";\n\nimport \"./style/index.js\";\n\nexport type { FormProps } from \"./Form\";\nexport type { FormItemProps } from \"./FormItem\";\nexport * from \"./type\";\nexport * from \"./hooks/interface\";\n\nexport const Form = _Form;\nexport default Form;\n"],"names":["Form","_Form"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAMA,IAAA,GAAOC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../components/form/index.ts"],"sourcesContent":["import _Form from \"./Form\";\n\nimport \"./style/index.js\";\n\nexport type { FormProps } from \"./Form\";\nexport type { FormItemProps } from \"./FormItem\";\nexport * from \"./type\";\nexport * from \"./hooks/interface\";\n\nexport const Form = _Form;\nexport default Form;\n"],"names":["Form","_Form"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAMA,IAAA,GAAOC;;;;"}
@@ -0,0 +1,39 @@
1
+ import { ScrollContainer, ScrollContainerElement } from "../common";
2
+ import { EasingFunction } from "./easing";
3
+ export declare function hasBodyScrollbar(): boolean;
4
+ export declare const isNodeOverflow: (ele: Element | Element[]) => boolean;
5
+ /**
6
+ * 获取滚动容器
7
+ * 因为 document 不存在 scroll 等属性, 因此排除 document
8
+ * window | HTMLElement
9
+ * @param {ScrollContainerElement} [container='body']
10
+ * @returns {ScrollContainer}
11
+ */
12
+ export declare const getScrollContainer: (container?: ScrollContainer) => ScrollContainerElement;
13
+ /**
14
+ * 获取滚动距离
15
+ *
16
+ * @export
17
+ * @param {ScrollTarget} target
18
+ * @param {boolean} isLeft true 为获取 scrollLeft, false 为获取 scrollTop
19
+ * @returns {number}
20
+ */
21
+ export declare function getScroll(target: ScrollTarget, isLeft?: boolean): number;
22
+ export type ScrollTarget = HTMLElement | Window | Document;
23
+ interface ScrollTopOptions {
24
+ container?: ScrollTarget;
25
+ duration?: number;
26
+ easing?: EasingFunction;
27
+ }
28
+ export declare function scrollTo(target: number, opt: ScrollTopOptions): Promise<unknown>;
29
+ /**
30
+ * 获取当前视图滑动的距离
31
+ * @returns { scrollTop: number, scrollLeft: number }
32
+ */
33
+ export declare function getWindowScroll(): {
34
+ scrollTop: number;
35
+ scrollLeft: number;
36
+ };
37
+ export type AnchorContainer = HTMLElement | Window;
38
+ export declare function getOffsetTop(target: HTMLElement, container: AnchorContainer): number;
39
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};