@1money/react-ui 1.15.3 → 1.17.0

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 (378) hide show
  1. package/AGENTS.md +393 -0
  2. package/es/components/CheckboxGroup/CheckboxGroup.d.ts +3 -3
  3. package/es/components/CheckboxGroup/CheckboxGroup.js +94 -91
  4. package/es/components/CheckboxGroup/interface.d.ts +21 -15
  5. package/es/components/CheckboxGroup/style/CheckboxGroup.scss +0 -7
  6. package/es/components/Flex/Flex.d.ts +5 -0
  7. package/es/components/Flex/Flex.js +50 -0
  8. package/es/components/Flex/constants.d.ts +41 -0
  9. package/es/components/Flex/constants.js +45 -0
  10. package/es/components/Flex/index.d.ts +5 -0
  11. package/es/components/Flex/index.js +6 -0
  12. package/es/components/Flex/interface.d.ts +13 -0
  13. package/es/components/Flex/interface.js +2 -0
  14. package/es/components/Flex/style/Flex.css +1 -0
  15. package/es/components/Flex/style/Flex.scss +70 -0
  16. package/es/components/Flex/style/css.js +2 -0
  17. package/es/components/Flex/style/index.d.ts +1 -0
  18. package/es/components/Flex/style/index.js +2 -0
  19. package/es/components/Form/Form.d.ts +29 -0
  20. package/es/components/Form/Form.js +188 -0
  21. package/es/components/Form/FormItem.d.ts +4 -0
  22. package/es/components/Form/FormItem.js +165 -0
  23. package/es/components/Form/FormItemContent.d.ts +18 -0
  24. package/es/components/Form/FormItemContent.js +146 -0
  25. package/es/components/Form/constants.d.ts +46 -0
  26. package/es/components/Form/constants.js +65 -0
  27. package/es/components/Form/helper.d.ts +120 -0
  28. package/es/components/Form/helper.js +284 -0
  29. package/es/components/Form/index.d.ts +20 -0
  30. package/es/components/Form/index.js +21 -0
  31. package/es/components/Form/interface.d.ts +238 -0
  32. package/es/components/Form/interface.js +2 -0
  33. package/es/components/Form/style/Form.css +1 -0
  34. package/es/components/Form/style/Form.scss +167 -0
  35. package/es/components/Form/style/css.js +2 -0
  36. package/es/components/Form/style/index.d.ts +1 -0
  37. package/es/components/Form/style/index.js +2 -0
  38. package/es/components/Form/useFormItemContext.d.ts +32 -0
  39. package/es/components/Form/useFormItemContext.js +55 -0
  40. package/es/components/Form/useFormItemWatch.d.ts +51 -0
  41. package/es/components/Form/useFormItemWatch.js +69 -0
  42. package/es/components/Form/useValidationTrigger.d.ts +40 -0
  43. package/es/components/Form/useValidationTrigger.js +74 -0
  44. package/es/components/Grid/Col.d.ts +5 -0
  45. package/es/components/Grid/Col.js +97 -0
  46. package/es/components/Grid/Grid.d.ts +12 -0
  47. package/es/components/Grid/Grid.js +12 -0
  48. package/es/components/Grid/Row.d.ts +5 -0
  49. package/es/components/Grid/Row.js +48 -0
  50. package/es/components/Grid/constants.d.ts +55 -0
  51. package/es/components/Grid/constants.js +66 -0
  52. package/es/components/Grid/helper.d.ts +10 -0
  53. package/es/components/Grid/helper.js +44 -0
  54. package/es/components/Grid/index.d.ts +7 -0
  55. package/es/components/Grid/index.js +8 -0
  56. package/es/components/Grid/interface.d.ts +38 -0
  57. package/es/components/Grid/interface.js +2 -0
  58. package/es/components/Grid/style/Grid.css +1 -0
  59. package/es/components/Grid/style/Grid.scss +196 -0
  60. package/es/components/Grid/style/css.js +2 -0
  61. package/es/components/Grid/style/index.d.ts +1 -0
  62. package/es/components/Grid/style/index.js +2 -0
  63. package/es/components/Input/Input.js +72 -74
  64. package/es/components/Input/interface.d.ts +9 -9
  65. package/es/components/InputAmount/InputAmount.js +228 -276
  66. package/es/components/InputAmount/helper.d.ts +46 -0
  67. package/es/components/InputAmount/helper.js +115 -0
  68. package/es/components/InputAmount/style/normal.css +1 -1
  69. package/es/components/InputAmount/style/normal.scss +2 -2
  70. package/es/components/InputAmount/style/primary.css +1 -1
  71. package/es/components/InputAmount/style/primary.scss +2 -2
  72. package/es/components/Message/style/Message.css +1 -1
  73. package/es/components/Message/style/Message.scss +3 -3
  74. package/es/components/ProForm/ProForm.d.ts +33 -0
  75. package/es/components/ProForm/ProForm.js +208 -0
  76. package/es/components/ProForm/ProFormDependency.d.ts +12 -0
  77. package/es/components/ProForm/ProFormDependency.js +61 -0
  78. package/es/components/ProForm/ProFormList.d.ts +19 -0
  79. package/es/components/ProForm/ProFormList.js +348 -0
  80. package/es/components/ProForm/Submitter.d.ts +21 -0
  81. package/es/components/ProForm/Submitter.js +76 -0
  82. package/es/components/ProForm/constants.d.ts +34 -0
  83. package/es/components/ProForm/constants.js +40 -0
  84. package/es/components/ProForm/fields/ProFormCheckbox.d.ts +6 -0
  85. package/es/components/ProForm/fields/ProFormCheckbox.js +11 -0
  86. package/es/components/ProForm/fields/ProFormCheckboxGroup.d.ts +6 -0
  87. package/es/components/ProForm/fields/ProFormCheckboxGroup.js +46 -0
  88. package/es/components/ProForm/fields/ProFormDigit.d.ts +6 -0
  89. package/es/components/ProForm/fields/ProFormDigit.js +15 -0
  90. package/es/components/ProForm/fields/ProFormMoney.d.ts +6 -0
  91. package/es/components/ProForm/fields/ProFormMoney.js +10 -0
  92. package/es/components/ProForm/fields/ProFormMultiSelect.d.ts +6 -0
  93. package/es/components/ProForm/fields/ProFormMultiSelect.js +27 -0
  94. package/es/components/ProForm/fields/ProFormPassword.d.ts +6 -0
  95. package/es/components/ProForm/fields/ProFormPassword.js +16 -0
  96. package/es/components/ProForm/fields/ProFormRadio.d.ts +6 -0
  97. package/es/components/ProForm/fields/ProFormRadio.js +13 -0
  98. package/es/components/ProForm/fields/ProFormSelect.d.ts +6 -0
  99. package/es/components/ProForm/fields/ProFormSelect.js +13 -0
  100. package/es/components/ProForm/fields/ProFormSwitch.d.ts +6 -0
  101. package/es/components/ProForm/fields/ProFormSwitch.js +11 -0
  102. package/es/components/ProForm/fields/ProFormText.d.ts +6 -0
  103. package/es/components/ProForm/fields/ProFormText.js +15 -0
  104. package/es/components/ProForm/fields/ProFormTextArea.d.ts +6 -0
  105. package/es/components/ProForm/fields/ProFormTextArea.js +16 -0
  106. package/es/components/ProForm/fields/createProFormField.d.ts +43 -0
  107. package/es/components/ProForm/fields/createProFormField.js +200 -0
  108. package/es/components/ProForm/fields/index.d.ts +12 -0
  109. package/es/components/ProForm/fields/index.js +13 -0
  110. package/es/components/ProForm/index.d.ts +7 -0
  111. package/es/components/ProForm/index.js +7 -0
  112. package/es/components/ProForm/interface.d.ts +306 -0
  113. package/es/components/ProForm/interface.js +2 -0
  114. package/es/components/ProForm/layouts/DrawerForm.d.ts +16 -0
  115. package/es/components/ProForm/layouts/DrawerForm.js +79 -0
  116. package/es/components/ProForm/layouts/ModalForm.d.ts +16 -0
  117. package/es/components/ProForm/layouts/ModalForm.js +89 -0
  118. package/es/components/ProForm/layouts/QueryFilter.d.ts +21 -0
  119. package/es/components/ProForm/layouts/QueryFilter.js +132 -0
  120. package/es/components/ProForm/layouts/StepsForm.d.ts +13 -0
  121. package/es/components/ProForm/layouts/StepsForm.js +295 -0
  122. package/es/components/ProForm/layouts/index.d.ts +4 -0
  123. package/es/components/ProForm/layouts/index.js +5 -0
  124. package/es/components/ProForm/layouts/useOverlayForm.d.ts +53 -0
  125. package/es/components/ProForm/layouts/useOverlayForm.js +143 -0
  126. package/es/components/ProForm/style/ProForm.module.css +1 -0
  127. package/es/components/ProForm/style/ProForm.module.scss +59 -0
  128. package/es/components/ProForm/style/css.js +3 -0
  129. package/es/components/ProForm/style/index.d.ts +1 -0
  130. package/es/components/ProForm/style/index.js +3 -0
  131. package/es/components/ProForm/utils.d.ts +72 -0
  132. package/es/components/ProForm/utils.js +206 -0
  133. package/es/components/RadioGroup/RadioGroup.js +46 -23
  134. package/es/components/RadioGroup/interface.d.ts +3 -1
  135. package/es/components/Select/Select.d.ts +1 -1
  136. package/es/components/Select/Select.js +113 -106
  137. package/es/components/Select/constants.d.ts +18 -0
  138. package/es/components/Select/constants.js +19 -0
  139. package/es/components/Sidebar/Sidebar.js +21 -23
  140. package/es/components/Sidebar/SidebarLogo.d.ts +7 -0
  141. package/es/components/Sidebar/SidebarLogo.js +33 -0
  142. package/es/components/Sidebar/SimplySidebar.d.ts +2 -2
  143. package/es/components/Sidebar/SimplySidebar.js +18 -22
  144. package/es/components/Sidebar/Stepper.js +14 -14
  145. package/es/components/Sidebar/constants.d.ts +16 -0
  146. package/es/components/Sidebar/constants.js +17 -0
  147. package/es/components/Sidebar/style/Sidebar.css +1 -1
  148. package/es/components/Sidebar/style/Sidebar.scss +1 -1
  149. package/es/components/Sidebar/style/SimplySidebar.css +1 -1
  150. package/es/components/Sidebar/style/SimplySidebar.scss +1 -1
  151. package/es/components/Sidebar/style/Stepper.css +1 -1
  152. package/es/components/Sidebar/style/Stepper.scss +11 -1
  153. package/es/components/Space/Space.d.ts +5 -0
  154. package/es/components/Space/Space.js +71 -0
  155. package/es/components/Space/constants.d.ts +33 -0
  156. package/es/components/Space/constants.js +37 -0
  157. package/es/components/Space/index.d.ts +5 -0
  158. package/es/components/Space/index.js +6 -0
  159. package/es/components/Space/interface.d.ts +12 -0
  160. package/es/components/Space/interface.js +2 -0
  161. package/es/components/Space/style/Space.css +1 -0
  162. package/es/components/Space/style/Space.scss +40 -0
  163. package/es/components/Space/style/css.js +2 -0
  164. package/es/components/Space/style/index.d.ts +1 -0
  165. package/es/components/Space/style/index.js +2 -0
  166. package/es/components/Switch/Switch.js +28 -25
  167. package/es/components/Switch/interface.d.ts +9 -4
  168. package/es/components/useControlledState/index.d.ts +14 -0
  169. package/es/components/useControlledState/index.js +32 -0
  170. package/es/components/useEventCallback/index.d.ts +11 -0
  171. package/es/components/useEventCallback/index.js +17 -0
  172. package/es/components/useLayoutEffect/index.d.ts +11 -0
  173. package/es/components/useLayoutEffect/index.js +17 -0
  174. package/es/components/useLayoutState/index.d.ts +13 -0
  175. package/es/components/useLayoutState/index.js +71 -0
  176. package/es/components/useMemoizedFn/index.d.ts +12 -0
  177. package/es/components/useMemoizedFn/index.js +27 -0
  178. package/es/components/usePrevious/index.d.ts +11 -0
  179. package/es/components/usePrevious/index.js +19 -0
  180. package/es/components/useSafeState/index.d.ts +12 -0
  181. package/es/components/useSafeState/index.js +24 -0
  182. package/es/components/useSyncState/index.d.ts +14 -0
  183. package/es/components/useSyncState/index.js +37 -0
  184. package/es/components/useUpdateEffect/index.d.ts +9 -0
  185. package/es/components/useUpdateEffect/index.js +19 -0
  186. package/es/index.css +1 -1
  187. package/es/index.d.ts +32 -2
  188. package/es/index.js +30 -1
  189. package/jest.setup.d.ts +1 -0
  190. package/jest.setup.ts +1 -0
  191. package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +3 -3
  192. package/lib/components/CheckboxGroup/CheckboxGroup.js +92 -89
  193. package/lib/components/CheckboxGroup/interface.d.ts +21 -15
  194. package/lib/components/CheckboxGroup/style/CheckboxGroup.scss +0 -7
  195. package/lib/components/Flex/Flex.d.ts +5 -0
  196. package/lib/components/Flex/Flex.js +60 -0
  197. package/lib/components/Flex/constants.d.ts +41 -0
  198. package/lib/components/Flex/constants.js +51 -0
  199. package/lib/components/Flex/index.d.ts +5 -0
  200. package/lib/components/Flex/index.js +60 -0
  201. package/lib/components/Flex/interface.d.ts +13 -0
  202. package/lib/components/Flex/interface.js +6 -0
  203. package/lib/components/Flex/style/Flex.css +1 -0
  204. package/lib/components/Flex/style/Flex.scss +70 -0
  205. package/lib/components/Flex/style/css.js +4 -0
  206. package/lib/components/Flex/style/index.d.ts +1 -0
  207. package/lib/components/Flex/style/index.js +4 -0
  208. package/lib/components/Form/Form.d.ts +29 -0
  209. package/lib/components/Form/Form.js +199 -0
  210. package/lib/components/Form/FormItem.d.ts +4 -0
  211. package/lib/components/Form/FormItem.js +176 -0
  212. package/lib/components/Form/FormItemContent.d.ts +18 -0
  213. package/lib/components/Form/FormItemContent.js +156 -0
  214. package/lib/components/Form/constants.d.ts +46 -0
  215. package/lib/components/Form/constants.js +71 -0
  216. package/lib/components/Form/helper.d.ts +120 -0
  217. package/lib/components/Form/helper.js +290 -0
  218. package/lib/components/Form/index.d.ts +20 -0
  219. package/lib/components/Form/index.js +45 -0
  220. package/lib/components/Form/interface.d.ts +238 -0
  221. package/lib/components/Form/interface.js +6 -0
  222. package/lib/components/Form/style/Form.css +1 -0
  223. package/lib/components/Form/style/Form.scss +167 -0
  224. package/lib/components/Form/style/css.js +4 -0
  225. package/lib/components/Form/style/index.d.ts +1 -0
  226. package/lib/components/Form/style/index.js +4 -0
  227. package/lib/components/Form/useFormItemContext.d.ts +32 -0
  228. package/lib/components/Form/useFormItemContext.js +62 -0
  229. package/lib/components/Form/useFormItemWatch.d.ts +51 -0
  230. package/lib/components/Form/useFormItemWatch.js +76 -0
  231. package/lib/components/Form/useValidationTrigger.d.ts +40 -0
  232. package/lib/components/Form/useValidationTrigger.js +81 -0
  233. package/lib/components/Grid/Col.d.ts +5 -0
  234. package/lib/components/Grid/Col.js +107 -0
  235. package/lib/components/Grid/Grid.d.ts +12 -0
  236. package/lib/components/Grid/Grid.js +18 -0
  237. package/lib/components/Grid/Row.d.ts +5 -0
  238. package/lib/components/Grid/Row.js +58 -0
  239. package/lib/components/Grid/constants.d.ts +55 -0
  240. package/lib/components/Grid/constants.js +72 -0
  241. package/lib/components/Grid/helper.d.ts +10 -0
  242. package/lib/components/Grid/helper.js +51 -0
  243. package/lib/components/Grid/index.d.ts +7 -0
  244. package/lib/components/Grid/index.js +62 -0
  245. package/lib/components/Grid/interface.d.ts +38 -0
  246. package/lib/components/Grid/interface.js +6 -0
  247. package/lib/components/Grid/style/Grid.css +1 -0
  248. package/lib/components/Grid/style/Grid.scss +196 -0
  249. package/lib/components/Grid/style/css.js +4 -0
  250. package/lib/components/Grid/style/index.d.ts +1 -0
  251. package/lib/components/Grid/style/index.js +4 -0
  252. package/lib/components/Input/Input.js +71 -73
  253. package/lib/components/Input/interface.d.ts +9 -9
  254. package/lib/components/InputAmount/InputAmount.js +230 -278
  255. package/lib/components/InputAmount/helper.d.ts +46 -0
  256. package/lib/components/InputAmount/helper.js +122 -0
  257. package/lib/components/InputAmount/style/normal.css +1 -1
  258. package/lib/components/InputAmount/style/normal.scss +2 -2
  259. package/lib/components/InputAmount/style/primary.css +1 -1
  260. package/lib/components/InputAmount/style/primary.scss +2 -2
  261. package/lib/components/Message/style/Message.css +1 -1
  262. package/lib/components/Message/style/Message.scss +3 -3
  263. package/lib/components/ProForm/ProForm.d.ts +33 -0
  264. package/lib/components/ProForm/ProForm.js +216 -0
  265. package/lib/components/ProForm/ProFormDependency.d.ts +12 -0
  266. package/lib/components/ProForm/ProFormDependency.js +67 -0
  267. package/lib/components/ProForm/ProFormList.d.ts +19 -0
  268. package/lib/components/ProForm/ProFormList.js +355 -0
  269. package/lib/components/ProForm/Submitter.d.ts +21 -0
  270. package/lib/components/ProForm/Submitter.js +83 -0
  271. package/lib/components/ProForm/constants.d.ts +34 -0
  272. package/lib/components/ProForm/constants.js +46 -0
  273. package/lib/components/ProForm/fields/ProFormCheckbox.d.ts +6 -0
  274. package/lib/components/ProForm/fields/ProFormCheckbox.js +18 -0
  275. package/lib/components/ProForm/fields/ProFormCheckboxGroup.d.ts +6 -0
  276. package/lib/components/ProForm/fields/ProFormCheckboxGroup.js +53 -0
  277. package/lib/components/ProForm/fields/ProFormDigit.d.ts +6 -0
  278. package/lib/components/ProForm/fields/ProFormDigit.js +22 -0
  279. package/lib/components/ProForm/fields/ProFormMoney.d.ts +6 -0
  280. package/lib/components/ProForm/fields/ProFormMoney.js +17 -0
  281. package/lib/components/ProForm/fields/ProFormMultiSelect.d.ts +6 -0
  282. package/lib/components/ProForm/fields/ProFormMultiSelect.js +34 -0
  283. package/lib/components/ProForm/fields/ProFormPassword.d.ts +6 -0
  284. package/lib/components/ProForm/fields/ProFormPassword.js +23 -0
  285. package/lib/components/ProForm/fields/ProFormRadio.d.ts +6 -0
  286. package/lib/components/ProForm/fields/ProFormRadio.js +20 -0
  287. package/lib/components/ProForm/fields/ProFormSelect.d.ts +6 -0
  288. package/lib/components/ProForm/fields/ProFormSelect.js +20 -0
  289. package/lib/components/ProForm/fields/ProFormSwitch.d.ts +6 -0
  290. package/lib/components/ProForm/fields/ProFormSwitch.js +18 -0
  291. package/lib/components/ProForm/fields/ProFormText.d.ts +6 -0
  292. package/lib/components/ProForm/fields/ProFormText.js +22 -0
  293. package/lib/components/ProForm/fields/ProFormTextArea.d.ts +6 -0
  294. package/lib/components/ProForm/fields/ProFormTextArea.js +23 -0
  295. package/lib/components/ProForm/fields/createProFormField.d.ts +43 -0
  296. package/lib/components/ProForm/fields/createProFormField.js +208 -0
  297. package/lib/components/ProForm/fields/index.d.ts +12 -0
  298. package/lib/components/ProForm/fields/index.js +90 -0
  299. package/lib/components/ProForm/index.d.ts +7 -0
  300. package/lib/components/ProForm/index.js +73 -0
  301. package/lib/components/ProForm/interface.d.ts +306 -0
  302. package/lib/components/ProForm/interface.js +6 -0
  303. package/lib/components/ProForm/layouts/DrawerForm.d.ts +16 -0
  304. package/lib/components/ProForm/layouts/DrawerForm.js +86 -0
  305. package/lib/components/ProForm/layouts/ModalForm.d.ts +16 -0
  306. package/lib/components/ProForm/layouts/ModalForm.js +96 -0
  307. package/lib/components/ProForm/layouts/QueryFilter.d.ts +21 -0
  308. package/lib/components/ProForm/layouts/QueryFilter.js +139 -0
  309. package/lib/components/ProForm/layouts/StepsForm.d.ts +13 -0
  310. package/lib/components/ProForm/layouts/StepsForm.js +302 -0
  311. package/lib/components/ProForm/layouts/index.d.ts +4 -0
  312. package/lib/components/ProForm/layouts/index.js +40 -0
  313. package/lib/components/ProForm/layouts/useOverlayForm.d.ts +53 -0
  314. package/lib/components/ProForm/layouts/useOverlayForm.js +150 -0
  315. package/lib/components/ProForm/style/ProForm.module.css +1 -0
  316. package/lib/components/ProForm/style/ProForm.module.scss +59 -0
  317. package/lib/components/ProForm/style/css.js +4 -0
  318. package/lib/components/ProForm/style/index.d.ts +1 -0
  319. package/lib/components/ProForm/style/index.js +4 -0
  320. package/lib/components/ProForm/utils.d.ts +72 -0
  321. package/lib/components/ProForm/utils.js +213 -0
  322. package/lib/components/RadioGroup/RadioGroup.js +45 -22
  323. package/lib/components/RadioGroup/interface.d.ts +3 -1
  324. package/lib/components/Select/Select.d.ts +1 -1
  325. package/lib/components/Select/Select.js +114 -107
  326. package/lib/components/Select/constants.d.ts +18 -0
  327. package/lib/components/Select/constants.js +25 -0
  328. package/lib/components/Sidebar/Sidebar.js +21 -23
  329. package/lib/components/Sidebar/SidebarLogo.d.ts +7 -0
  330. package/lib/components/Sidebar/SidebarLogo.js +39 -0
  331. package/lib/components/Sidebar/SimplySidebar.d.ts +2 -2
  332. package/lib/components/Sidebar/SimplySidebar.js +17 -21
  333. package/lib/components/Sidebar/Stepper.js +14 -14
  334. package/lib/components/Sidebar/constants.d.ts +16 -0
  335. package/lib/components/Sidebar/constants.js +23 -0
  336. package/lib/components/Sidebar/style/Sidebar.css +1 -1
  337. package/lib/components/Sidebar/style/Sidebar.scss +1 -1
  338. package/lib/components/Sidebar/style/SimplySidebar.css +1 -1
  339. package/lib/components/Sidebar/style/SimplySidebar.scss +1 -1
  340. package/lib/components/Sidebar/style/Stepper.css +1 -1
  341. package/lib/components/Sidebar/style/Stepper.scss +11 -1
  342. package/lib/components/Space/Space.d.ts +5 -0
  343. package/lib/components/Space/Space.js +81 -0
  344. package/lib/components/Space/constants.d.ts +33 -0
  345. package/lib/components/Space/constants.js +43 -0
  346. package/lib/components/Space/index.d.ts +5 -0
  347. package/lib/components/Space/index.js +53 -0
  348. package/lib/components/Space/interface.d.ts +12 -0
  349. package/lib/components/Space/interface.js +6 -0
  350. package/lib/components/Space/style/Space.css +1 -0
  351. package/lib/components/Space/style/Space.scss +40 -0
  352. package/lib/components/Space/style/css.js +4 -0
  353. package/lib/components/Space/style/index.d.ts +1 -0
  354. package/lib/components/Space/style/index.js +4 -0
  355. package/lib/components/Switch/Switch.js +27 -24
  356. package/lib/components/Switch/interface.d.ts +9 -4
  357. package/lib/components/useControlledState/index.d.ts +14 -0
  358. package/lib/components/useControlledState/index.js +39 -0
  359. package/lib/components/useEventCallback/index.d.ts +11 -0
  360. package/lib/components/useEventCallback/index.js +24 -0
  361. package/lib/components/useLayoutEffect/index.d.ts +11 -0
  362. package/lib/components/useLayoutEffect/index.js +23 -0
  363. package/lib/components/useLayoutState/index.d.ts +13 -0
  364. package/lib/components/useLayoutState/index.js +79 -0
  365. package/lib/components/useMemoizedFn/index.d.ts +12 -0
  366. package/lib/components/useMemoizedFn/index.js +33 -0
  367. package/lib/components/usePrevious/index.d.ts +11 -0
  368. package/lib/components/usePrevious/index.js +25 -0
  369. package/lib/components/useSafeState/index.d.ts +12 -0
  370. package/lib/components/useSafeState/index.js +31 -0
  371. package/lib/components/useSyncState/index.d.ts +14 -0
  372. package/lib/components/useSyncState/index.js +44 -0
  373. package/lib/components/useUpdateEffect/index.d.ts +9 -0
  374. package/lib/components/useUpdateEffect/index.js +25 -0
  375. package/lib/index.css +1 -1
  376. package/lib/index.d.ts +32 -2
  377. package/lib/index.js +251 -1
  378. package/package.json +31 -1
@@ -10,26 +10,32 @@ interface CheckboxGroupBaseProps {
10
10
  labelCls?: string;
11
11
  size?: 'sm' | 'md' | 'lg';
12
12
  }
13
+ interface CheckboxGroupNormalItem {
14
+ key: string;
15
+ label?: ReactNode;
16
+ defaultChecked?: boolean;
17
+ onChange?: (checked: boolean) => any;
18
+ }
19
+ interface CheckboxGroupTriStateItem {
20
+ key: string;
21
+ label?: ReactNode;
22
+ defaultValue?: boolean | null;
23
+ onChange?: (state: boolean | null) => any;
24
+ }
25
+ type NormalItem = CheckboxGroupNormalItem & Omit<PrimeCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange'>;
26
+ type TriStateItem = CheckboxGroupTriStateItem & Omit<TriStateCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange' | 'defaultValue'>;
27
+ export type CheckboxGroupItem = NormalItem | TriStateItem;
13
28
  interface CheckboxGroupNormalProps extends CheckboxGroupBaseProps {
14
29
  tristate?: false;
15
- onChange?: (checkedList: string[]) => any;
16
- items: ({
17
- key: string;
18
- label?: ReactNode;
19
- checked?: boolean;
20
- onChange?: (checked: boolean) => any;
21
- } & Omit<PrimeCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange'>)[];
30
+ value?: string[];
31
+ onChange?: (checkedList: string[]) => void;
32
+ items: NormalItem[];
22
33
  }
23
34
  interface CheckboxGroupTriStateProps extends CheckboxGroupBaseProps {
24
35
  tristate: true;
25
- onChange?: (itemsState: Record<string, boolean | null>) => any;
26
- items: ({
27
- key: string;
28
- label?: ReactNode;
29
- checked?: boolean;
30
- defaultValue?: boolean | null;
31
- onChange?: (state: boolean | null) => any;
32
- } & Omit<TriStateCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange' | 'defaultValue'>)[];
36
+ value?: Record<string, boolean | null>;
37
+ onChange?: (itemsState: Record<string, boolean | null>) => void;
38
+ items: TriStateItem[];
33
39
  }
34
40
  export type CheckboxGroupProps = CheckboxGroupNormalProps | CheckboxGroupTriStateProps;
35
41
  export {};
@@ -75,13 +75,6 @@ $component: 'checkboxgroup';
75
75
  border: 2px solid $color-primary;
76
76
  box-shadow: none;
77
77
  }
78
-
79
- // &:has(.p-checkbox-input:checked) {
80
- // .p-checkbox-box {
81
- // // background-color: $color-primary-active;
82
- // // border-color: $color-primary-active;
83
- // }
84
- // }
85
78
  }
86
79
 
87
80
  // 选中状态
@@ -0,0 +1,5 @@
1
+ import type { FC, PropsWithChildren } from 'react';
2
+ import type { FlexProps } from './interface';
3
+ export declare const Flex: FC<PropsWithChildren<FlexProps>>;
4
+ declare const _default: import("react").NamedExoticComponent<PropsWithChildren<FlexProps>>;
5
+ export default _default;
@@ -0,0 +1,50 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ var __rest = this && this.__rest || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
6
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
7
+ }
8
+ return t;
9
+ };
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { memo } from 'react';
12
+ import classnames, { joinCls } from '../../utils/classnames';
13
+ import { FLEX_CLASS, FLEX_CSS_VARS, FLEX_GAP_DEFAULT, FLEX_GAP_MAP, FLEX_PREFIX, FLEX_WRAP } from './constants';
14
+ var normalizeGap = function normalizeGap(gap) {
15
+ var _a;
16
+ if (gap === undefined || gap === null) return FLEX_GAP_DEFAULT;
17
+ if (typeof gap === 'number') return gap;
18
+ return (_a = FLEX_GAP_MAP[gap]) !== null && _a !== void 0 ? _a : FLEX_GAP_DEFAULT;
19
+ };
20
+ var normalizeWrap = function normalizeWrap(wrap) {
21
+ if (wrap === true) return FLEX_WRAP.wrap;
22
+ if (wrap === false) return FLEX_WRAP.nowrap;
23
+ return wrap;
24
+ };
25
+ export var Flex = function Flex(props) {
26
+ var children = props.children,
27
+ vertical = props.vertical,
28
+ wrap = props.wrap,
29
+ align = props.align,
30
+ justify = props.justify,
31
+ gap = props.gap,
32
+ className = props.className,
33
+ style = props.style,
34
+ _props$prefixCls = props.prefixCls,
35
+ prefixCls = _props$prefixCls === void 0 ? FLEX_PREFIX : _props$prefixCls,
36
+ rest = __rest(props, ["children", "vertical", "wrap", "align", "justify", "gap", "className", "style", "prefixCls"]);
37
+ var classes = classnames(prefixCls);
38
+ var gapValue = normalizeGap(gap);
39
+ var wrapValue = normalizeWrap(wrap);
40
+ var wrapClass = wrapValue ? classes("".concat(FLEX_CLASS.wrap, "-").concat(wrapValue)) : undefined;
41
+ var mergedStyle = Object.assign(Object.assign({}, style), _defineProperty({}, FLEX_CSS_VARS.gap, "".concat(gapValue, "px")));
42
+ var classNameValue = classes(void 0, joinCls(vertical && classes(FLEX_CLASS.vertical), wrapClass, align && classes("".concat(FLEX_CLASS.align, "-").concat(align)), justify && classes("".concat(FLEX_CLASS.justify, "-").concat(justify)), className));
43
+ return _jsx("div", Object.assign({}, rest, {
44
+ style: mergedStyle,
45
+ className: classNameValue,
46
+ children: children
47
+ }));
48
+ };
49
+ export default /*#__PURE__*/memo(Flex);
50
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRmxleC9GbGV4LmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9GbGV4L0ZsZXgudHN4Il0sIm5hbWVzIjpbIl9fcmVzdCIsInMiLCJlIiwidCIsInAiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiaSIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwianN4IiwiX2pzeCIsIm1lbW8iLCJjbGFzc25hbWVzIiwiam9pbkNscyIsIkZMRVhfQ0xBU1MiLCJGTEVYX0NTU19WQVJTIiwiRkxFWF9HQVBfREVGQVVMVCIsIkZMRVhfR0FQX01BUCIsIkZMRVhfUFJFRklYIiwiRkxFWF9XUkFQIiwibm9ybWFsaXplR2FwIiwiZ2FwIiwiX2EiLCJ1bmRlZmluZWQiLCJub3JtYWxpemVXcmFwIiwid3JhcCIsIm5vd3JhcCIsIkZsZXgiLCJwcm9wcyIsImNoaWxkcmVuIiwidmVydGljYWwiLCJhbGlnbiIsImp1c3RpZnkiLCJjbGFzc05hbWUiLCJzdHlsZSIsIl9wcm9wcyRwcmVmaXhDbHMiLCJwcmVmaXhDbHMiLCJyZXN0IiwiY2xhc3NlcyIsImdhcFZhbHVlIiwid3JhcFZhbHVlIiwid3JhcENsYXNzIiwiY29uY2F0IiwibWVyZ2VkU3R5bGUiLCJhc3NpZ24iLCJfZGVmaW5lUHJvcGVydHkiLCJjbGFzc05hbWVWYWx1ZSJdLCJtYXBwaW5ncyI6IjtBQUFBLElBQUlBLE1BQU0sR0FBSSxJQUFJLElBQUksSUFBSSxDQUFDQSxNQUFNLElBQUssVUFBVUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSUMsQ0FBQyxJQUFJSCxDQUFDLEVBQUUsSUFBSUksTUFBTSxDQUFDQyxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDUCxDQUFDLEVBQUVHLENBQUMsQ0FB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QVEsQ0FBQSxDQUFBLENBQ0w7QUFFVixDQUFDO0FBRUQsNEJBQWVsQixJQUFJLENBQUNnQixJQUFJLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9GbGV4L0ZsZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzLCB7IGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IEZMRVhfQ0xBU1MsIEZMRVhfQ1NTX1ZBUlMsIEZMRVhfR0FQX0RFRkFVTFQsIEZMRVhfR0FQX01BUCwgRkxFWF9QUkVGSVgsIEZMRVhfV1JBUCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmNvbnN0IG5vcm1hbGl6ZUdhcCA9IChnYXApID0+IHtcbiAgICB2YXIgX2E7XG4gICAgaWYgKGdhcCA9PT0gdW5kZWZpbmVkIHx8IGdhcCA9PT0gbnVsbClcbiAgICAgICAgcmV0dXJuIEZMRVhfR0FQX0RFRkFVTFQ7XG4gICAgaWYgKHR5cGVvZiBnYXAgPT09ICdudW1iZXInKVxuICAgICAgICByZXR1cm4gZ2FwO1xuICAgIHJldHVybiAoX2EgPSBGTEVYX0dBUF9NQVBbZ2FwXSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogRkxFWF9HQVBfREVGQVVMVDtcbn07XG5jb25zdCBub3JtYWxpemVXcmFwID0gKHdyYXApID0+IHtcbiAgICBpZiAod3JhcCA9PT0gdHJ1ZSlcbiAgICAgICAgcmV0dXJuIEZMRVhfV1JBUC53cmFwO1xuICAgIGlmICh3cmFwID09PSBmYWxzZSlcbiAgICAgICAgcmV0dXJuIEZMRVhfV1JBUC5ub3dyYXA7XG4gICAgcmV0dXJuIHdyYXA7XG59O1xuZXhwb3J0IGNvbnN0IEZsZXggPSBwcm9wcyA9PiB7XG4gICAgY29uc3QgeyBjaGlsZHJlbiwgdmVydGljYWwsIHdyYXAsIGFsaWduLCBqdXN0aWZ5LCBnYXAsIGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9IEZMRVhfUFJFRklYIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2hpbGRyZW5cIiwgXCJ2ZXJ0aWNhbFwiLCBcIndyYXBcIiwgXCJhbGlnblwiLCBcImp1c3RpZnlcIiwgXCJnYXBcIiwgXCJjbGFzc05hbWVcIiwgXCJzdHlsZVwiLCBcInByZWZpeENsc1wiXSk7XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBnYXBWYWx1ZSA9IG5vcm1hbGl6ZUdhcChnYXApO1xuICAgIGNvbnN0IHdyYXBWYWx1ZSA9IG5vcm1hbGl6ZVdyYXAod3JhcCk7XG4gICAgY29uc3Qgd3JhcENsYXNzID0gd3JhcFZhbHVlID8gY2xhc3NlcyhgJHtGTEVYX0NMQVNTLndyYXB9LSR7d3JhcFZhbHVlfWApIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IG1lcmdlZFN0eWxlID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzdHlsZSksIHsgW0ZMRVhfQ1NTX1ZBUlMuZ2FwXTogYCR7Z2FwVmFsdWV9cHhgIH0pO1xuICAgIGNvbnN0IGNsYXNzTmFtZVZhbHVlID0gY2xhc3Nlcyh2b2lkIDAsIGpvaW5DbHModmVydGljYWwgJiYgY2xhc3NlcyhGTEVYX0NMQVNTLnZlcnRpY2FsKSwgd3JhcENsYXNzLCBhbGlnbiAmJiBjbGFzc2VzKGAke0ZMRVhfQ0xBU1MuYWxpZ259LSR7YWxpZ259YCksIGp1c3RpZnkgJiYgY2xhc3NlcyhgJHtGTEVYX0NMQVNTLmp1c3RpZnl9LSR7anVzdGlmeX1gKSwgY2xhc3NOYW1lKSk7XG4gICAgcmV0dXJuIChfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgc3R5bGU6IG1lcmdlZFN0eWxlLCBjbGFzc05hbWU6IGNsYXNzTmFtZVZhbHVlLCBjaGlsZHJlbjogY2hpbGRyZW4gfSkpKTtcbn07XG5leHBvcnQgZGVmYXVsdCBtZW1vKEZsZXgpOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1,41 @@
1
+ import type { FlexGap } from './interface';
2
+ export declare const FLEX_ALIGN: {
3
+ readonly start: "start";
4
+ readonly end: "end";
5
+ readonly center: "center";
6
+ readonly baseline: "baseline";
7
+ readonly stretch: "stretch";
8
+ };
9
+ export declare const FLEX_JUSTIFY: {
10
+ readonly start: "start";
11
+ readonly end: "end";
12
+ readonly center: "center";
13
+ readonly spaceAround: "space-around";
14
+ readonly spaceBetween: "space-between";
15
+ readonly spaceEvenly: "space-evenly";
16
+ };
17
+ export declare const FLEX_WRAP: {
18
+ readonly nowrap: "nowrap";
19
+ readonly wrap: "wrap";
20
+ readonly wrapReverse: "wrap-reverse";
21
+ };
22
+ export declare const FLEX_GAP: {
23
+ readonly small: "small";
24
+ readonly middle: "middle";
25
+ readonly large: "large";
26
+ };
27
+ export declare const FLEX_PREFIX = "flex";
28
+ export declare const FLEX_GAP_DEFAULT = 0;
29
+ export declare const FLEX_GAP_SMALL = 8;
30
+ export declare const FLEX_GAP_MIDDLE = 16;
31
+ export declare const FLEX_GAP_LARGE = 24;
32
+ export declare const FLEX_CSS_VARS: {
33
+ readonly gap: "--om-flex-gap";
34
+ };
35
+ export declare const FLEX_CLASS: {
36
+ readonly vertical: "vertical";
37
+ readonly wrap: "wrap";
38
+ readonly align: "align";
39
+ readonly justify: "justify";
40
+ };
41
+ export declare const FLEX_GAP_MAP: Record<Exclude<FlexGap, number>, number>;
@@ -0,0 +1,45 @@
1
+ export var FLEX_ALIGN = {
2
+ start: 'start',
3
+ end: 'end',
4
+ center: 'center',
5
+ baseline: 'baseline',
6
+ stretch: 'stretch'
7
+ };
8
+ export var FLEX_JUSTIFY = {
9
+ start: 'start',
10
+ end: 'end',
11
+ center: 'center',
12
+ spaceAround: 'space-around',
13
+ spaceBetween: 'space-between',
14
+ spaceEvenly: 'space-evenly'
15
+ };
16
+ export var FLEX_WRAP = {
17
+ nowrap: 'nowrap',
18
+ wrap: 'wrap',
19
+ wrapReverse: 'wrap-reverse'
20
+ };
21
+ export var FLEX_GAP = {
22
+ small: 'small',
23
+ middle: 'middle',
24
+ large: 'large'
25
+ };
26
+ export var FLEX_PREFIX = 'flex';
27
+ export var FLEX_GAP_DEFAULT = 0;
28
+ export var FLEX_GAP_SMALL = 8;
29
+ export var FLEX_GAP_MIDDLE = 16;
30
+ export var FLEX_GAP_LARGE = 24;
31
+ export var FLEX_CSS_VARS = {
32
+ gap: '--om-flex-gap'
33
+ };
34
+ export var FLEX_CLASS = {
35
+ vertical: 'vertical',
36
+ wrap: 'wrap',
37
+ align: 'align',
38
+ justify: 'justify'
39
+ };
40
+ export var FLEX_GAP_MAP = {
41
+ small: FLEX_GAP_SMALL,
42
+ middle: FLEX_GAP_MIDDLE,
43
+ large: FLEX_GAP_LARGE
44
+ };
45
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRmxleC9jb25zdGFudHMudHMiLCJjb21wb25lbnRzL0ZsZXgvY29uc3RhbnRzLmpzIl0sIm5hbWVzIjpbIkZMRVhfQUxJR04iLCJzdGFydCIsImVuZCIsImNlbnRlciIsImJhc2VsaW5lIiwic3RyZXRjaCIsIkZMRVhfSlVTVElGWSIsInNwYWNlQXJvdW5kIiwic3BhY2VCZXR3ZWVuIiwic3BhY2VFdmVubHkiLCJGTEVYX1dSQVAiLCJub3dyYXAiLCJ3cmFwIiwid3JhcFJldmVyc2UiLCJGTEVYX0dBUCIsInNtYWxsIiwibWlkZGxlIiwibGFyZ2UiLCJGTEVYX1BSRUZJWCIsIkZMRVhfR0FQX0RFRkFVTFQiLCJGTEVYX0dBUF9TTUFMTCIsIkZMRVhfR0FQX01JRERMRSIsIkZMRVhfR0FQX0xBUkdFIiwiRkxFWF9DU1NfVkFSUyIsImdhcCIsIkZMRVhfQ0xBU1MiLCJ2ZXJ0aWNhbCIsImFsaWduIiwianVzdGlmeSIsIkZMRVhfR0FQX01BUCJdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxJQUFNQSxVQUFVLEdBQUc7RUFDeEJDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLEdBQUcsRUFBRSxLQUFLO0VBQ1ZDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxRQUFRLEVBQUUsVUFBVTtFQUNwQkMsT0FBTyxFQUFFO0FDRFgsQ0RFVTtBQUVWLE9BQU8sSUFBTUMsWUFBWSxHQUFHO0VBQzFCTCxLQUFLLEVBQUUsT0FBTztFQUNkQyxHQUFHLEVBQUUsS0FBSztFQUNWQyxNQUFNLEVBQUUsUUFBUTtFQUNoQkksV0FBVyxFQUFFLGNBQWM7RUFDM0JDLFlBQVksRUFBRSxlQUFlO0VBQzdCQyxXQUFXLEVBQUU7QUNGZixDREdVO0FBRVYsT0FBTyxJQUFNQyxTQUFTLEdBQUc7RUFDdkJDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxXQUFXLEVBQUU7QUNIZixDRElVO0FBRVYsT0FBTyxJQUFNQyxRQUFRLEdBQUc7RUFDdEJDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxLQUFLLEVBQUU7QUNKVCxDREtVO0FBRVYsT0FBTyxJQUFNQyxXQUFXLEdBQUcsTUFBTTtBQUNqQyxPQUFPLElBQU1DLGdCQUFnQixHQUFHLENBQUM7QUFDakMsT0FBTyxJQUFNQyxjQUFjLEdBQUcsQ0FBQztBQUMvQixPQUFPLElBQU1DLGVBQWUsR0FBRyxFQUFFO0FBQ2pDLE9BQU8sSUFBTUMsY0FBYyxHQUFHLEVBQUU7QUFFaEMsT0FBTyxJQUFNQyxhQUFhLEdBQUc7RUFDM0JDLEdBQUcsRUFBRTtBQ05QLENET1U7QUFFVixPQUFPLElBQU1DLFVBQVUsR0FBRztFQUN4QkMsUUFBUSxFQUFFLFVBQVU7RUFDcEJkLElBQUksRUFBRSxNQUFNO0VBQ1plLEtBQUssRUFBRSxPQUFPO0VBQ2RDLE9BQU8sRUFBRTtBQ1BYLENEUVU7QUFFVixPQUFPLElBQU1DLFlBQVksR0FBNkM7RUFDcEVkLEtBQUssRUFBRUssY0FBYztFQUNyQkosTUFBTSxFQUFFSyxlQUFlO0VBQ3ZCSixLQUFLLEVBQUVLO0FDUlQsQ0RTQyIsImZpbGUiOiJjb21wb25lbnRzL0ZsZXgvY29uc3RhbnRzLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJleHBvcnQgY29uc3QgRkxFWF9BTElHTiA9IHtcbiAgICBzdGFydDogJ3N0YXJ0JyxcbiAgICBlbmQ6ICdlbmQnLFxuICAgIGNlbnRlcjogJ2NlbnRlcicsXG4gICAgYmFzZWxpbmU6ICdiYXNlbGluZScsXG4gICAgc3RyZXRjaDogJ3N0cmV0Y2gnXG59O1xuZXhwb3J0IGNvbnN0IEZMRVhfSlVTVElGWSA9IHtcbiAgICBzdGFydDogJ3N0YXJ0JyxcbiAgICBlbmQ6ICdlbmQnLFxuICAgIGNlbnRlcjogJ2NlbnRlcicsXG4gICAgc3BhY2VBcm91bmQ6ICdzcGFjZS1hcm91bmQnLFxuICAgIHNwYWNlQmV0d2VlbjogJ3NwYWNlLWJldHdlZW4nLFxuICAgIHNwYWNlRXZlbmx5OiAnc3BhY2UtZXZlbmx5J1xufTtcbmV4cG9ydCBjb25zdCBGTEVYX1dSQVAgPSB7XG4gICAgbm93cmFwOiAnbm93cmFwJyxcbiAgICB3cmFwOiAnd3JhcCcsXG4gICAgd3JhcFJldmVyc2U6ICd3cmFwLXJldmVyc2UnXG59O1xuZXhwb3J0IGNvbnN0IEZMRVhfR0FQID0ge1xuICAgIHNtYWxsOiAnc21hbGwnLFxuICAgIG1pZGRsZTogJ21pZGRsZScsXG4gICAgbGFyZ2U6ICdsYXJnZSdcbn07XG5leHBvcnQgY29uc3QgRkxFWF9QUkVGSVggPSAnZmxleCc7XG5leHBvcnQgY29uc3QgRkxFWF9HQVBfREVGQVVMVCA9IDA7XG5leHBvcnQgY29uc3QgRkxFWF9HQVBfU01BTEwgPSA4O1xuZXhwb3J0IGNvbnN0IEZMRVhfR0FQX01JRERMRSA9IDE2O1xuZXhwb3J0IGNvbnN0IEZMRVhfR0FQX0xBUkdFID0gMjQ7XG5leHBvcnQgY29uc3QgRkxFWF9DU1NfVkFSUyA9IHtcbiAgICBnYXA6ICctLW9tLWZsZXgtZ2FwJ1xufTtcbmV4cG9ydCBjb25zdCBGTEVYX0NMQVNTID0ge1xuICAgIHZlcnRpY2FsOiAndmVydGljYWwnLFxuICAgIHdyYXA6ICd3cmFwJyxcbiAgICBhbGlnbjogJ2FsaWduJyxcbiAgICBqdXN0aWZ5OiAnanVzdGlmeSdcbn07XG5leHBvcnQgY29uc3QgRkxFWF9HQVBfTUFQID0ge1xuICAgIHNtYWxsOiBGTEVYX0dBUF9TTUFMTCxcbiAgICBtaWRkbGU6IEZMRVhfR0FQX01JRERMRSxcbiAgICBsYXJnZTogRkxFWF9HQVBfTEFSR0Vcbn07Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1,5 @@
1
+ import Flex from './Flex';
2
+ export { Flex };
3
+ export default Flex;
4
+ export * from './interface';
5
+ export { FLEX_ALIGN, FLEX_GAP, FLEX_JUSTIFY, FLEX_WRAP } from './constants';
@@ -0,0 +1,6 @@
1
+ import Flex from './Flex';
2
+ export { Flex };
3
+ export default Flex;
4
+ export * from './interface';
5
+ export { FLEX_ALIGN, FLEX_GAP, FLEX_JUSTIFY, FLEX_WRAP } from './constants';
6
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRmxleC9pbmRleC50cyJdLCJuYW1lcyI6WyJGbGV4IiwiRkxFWF9BTElHTiIsIkZMRVhfR0FQIiwiRkxFWF9KVVNUSUZZIiwiRkxFWF9XUkFQIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxJQUFJLE1BQU0sUUFBUTtBQUV6QixTQUFTQSxJQUFJO0FBQ2IsZUFBZUEsSUFBSTtBQUNuQixjQUFjLGFBQWE7QUFDM0IsU0FBU0MsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLFlBQVksRUFBRUMsU0FBUyxRQUFRLGFBQWEiLCJmaWxlIjoiY29tcG9uZW50cy9GbGV4L2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -0,0 +1,13 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ export type FlexAlign = 'start' | 'end' | 'center' | 'baseline' | 'stretch';
3
+ export type FlexJustify = 'start' | 'end' | 'center' | 'space-around' | 'space-between' | 'space-evenly';
4
+ export type FlexWrap = 'nowrap' | 'wrap' | 'wrap-reverse';
5
+ export type FlexGap = 'small' | 'middle' | 'large' | number;
6
+ export interface FlexProps extends HTMLAttributes<HTMLDivElement> {
7
+ vertical?: boolean;
8
+ wrap?: boolean | FlexWrap;
9
+ align?: FlexAlign;
10
+ justify?: FlexJustify;
11
+ gap?: FlexGap;
12
+ prefixCls?: string;
13
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy9GbGV4L2ludGVyZmFjZS5qcyIsIm5hbWVzIjpbXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9GbGV4L2ludGVyZmFjZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge307Il0sIm1hcHBpbmdzIjoiQUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1 @@
1
+ .om-react-ui-flex{display:flex;gap:var(--om-flex-gap,0)}.om-react-ui-flex-vertical{flex-direction:column}.om-react-ui-flex-wrap-wrap{flex-wrap:wrap}.om-react-ui-flex-wrap-nowrap{flex-wrap:nowrap}.om-react-ui-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse}.om-react-ui-flex-justify-start{justify-content:flex-start}.om-react-ui-flex-justify-end{justify-content:flex-end}.om-react-ui-flex-justify-center{justify-content:center}.om-react-ui-flex-justify-space-between{justify-content:space-between}.om-react-ui-flex-justify-space-around{justify-content:space-around}.om-react-ui-flex-justify-space-evenly{justify-content:space-evenly}.om-react-ui-flex-align-start{align-items:flex-start}.om-react-ui-flex-align-end{align-items:flex-end}.om-react-ui-flex-align-center{align-items:center}.om-react-ui-flex-align-baseline{align-items:baseline}.om-react-ui-flex-align-stretch{align-items:stretch}
@@ -0,0 +1,70 @@
1
+ @use '../../../variable.scss' as *;
2
+
3
+ $component: 'flex';
4
+ $flex-gap-fallback: 0px;
5
+ $flex-var-gap: '--om-flex-gap';
6
+
7
+ .#{$prefix}-#{$component} {
8
+ display: flex;
9
+ gap: var(#{$flex-var-gap}, #{$flex-gap-fallback});
10
+
11
+ &-vertical {
12
+ flex-direction: column;
13
+ }
14
+
15
+ &-wrap-wrap {
16
+ flex-wrap: wrap;
17
+ }
18
+
19
+ &-wrap-nowrap {
20
+ flex-wrap: nowrap;
21
+ }
22
+
23
+ &-wrap-wrap-reverse {
24
+ flex-wrap: wrap-reverse;
25
+ }
26
+
27
+ &-justify-start {
28
+ justify-content: flex-start;
29
+ }
30
+
31
+ &-justify-end {
32
+ justify-content: flex-end;
33
+ }
34
+
35
+ &-justify-center {
36
+ justify-content: center;
37
+ }
38
+
39
+ &-justify-space-between {
40
+ justify-content: space-between;
41
+ }
42
+
43
+ &-justify-space-around {
44
+ justify-content: space-around;
45
+ }
46
+
47
+ &-justify-space-evenly {
48
+ justify-content: space-evenly;
49
+ }
50
+
51
+ &-align-start {
52
+ align-items: flex-start;
53
+ }
54
+
55
+ &-align-end {
56
+ align-items: flex-end;
57
+ }
58
+
59
+ &-align-center {
60
+ align-items: center;
61
+ }
62
+
63
+ &-align-baseline {
64
+ align-items: baseline;
65
+ }
66
+
67
+ &-align-stretch {
68
+ align-items: stretch;
69
+ }
70
+ }
@@ -0,0 +1,2 @@
1
+ import './Flex.css';
2
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRmxleC9zcmMvY29tcG9uZW50cy9GbGV4L3N0eWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sYUFBYSIsImZpbGUiOiJjb21wb25lbnRzL0ZsZXgvc3R5bGUvY3NzLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -0,0 +1 @@
1
+ import './Flex.scss';
@@ -0,0 +1,2 @@
1
+ import './Flex.scss';
2
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRmxleC9zcmMvY29tcG9uZW50cy9GbGV4L3N0eWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sYUFBYSIsImZpbGUiOiJjb21wb25lbnRzL0ZsZXgvc3R5bGUvaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6W251bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import type { FieldValues } from 'react-hook-form';
3
+ import type { FormContextValue, FormProps } from './interface';
4
+ /** React context that distributes form layout and state to descendant `<FormItem>` components. */
5
+ export declare const FormContext: React.Context<FormContextValue | null>;
6
+ /**
7
+ * Form component that wraps `react-hook-form` with layout, context distribution,
8
+ * value-change subscriptions, and scroll-to-error behavior.
9
+ *
10
+ * Renders a `<FormProvider>` and native `<form>` element. All `<FormItem>` children
11
+ * receive form methods and layout configuration via {@link FormContext}.
12
+ *
13
+ * Supports both controlled mode (pass an external `form` instance) and uncontrolled
14
+ * mode (internal `useForm` is created automatically).
15
+ *
16
+ * @template TFieldValues - The shape of the form values.
17
+ * @param props - {@link FormProps}
18
+ *
19
+ * @example
20
+ * ```tsx
21
+ * <Form defaultValues={{ name: '' }} onFinish={(values) => save(values)}>
22
+ * <FormItem name="name" label="Name" rules={{ required: true }}>
23
+ * <Input />
24
+ * </FormItem>
25
+ * </Form>
26
+ * ```
27
+ */
28
+ export declare function Form<TFieldValues extends FieldValues = FieldValues>(props: FormProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
29
+ export default Form;
@@ -0,0 +1,188 @@
1
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
2
+ var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) {
4
+ return value instanceof P ? value : new P(function (resolve) {
5
+ resolve(value);
6
+ });
7
+ }
8
+ return new (P || (P = Promise))(function (resolve, reject) {
9
+ function fulfilled(value) {
10
+ try {
11
+ step(generator.next(value));
12
+ } catch (e) {
13
+ reject(e);
14
+ }
15
+ }
16
+ function rejected(value) {
17
+ try {
18
+ step(generator["throw"](value));
19
+ } catch (e) {
20
+ reject(e);
21
+ }
22
+ }
23
+ function step(result) {
24
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
25
+ }
26
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
27
+ });
28
+ };
29
+ var __rest = this && this.__rest || function (s, e) {
30
+ var t = {};
31
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
32
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
33
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
34
+ }
35
+ return t;
36
+ };
37
+ import { jsx as _jsx } from "react/jsx-runtime";
38
+ import React, { createContext, useEffect, useMemo } from 'react';
39
+ import { FormProvider, useForm } from 'react-hook-form';
40
+ import { default as classnames, joinCls } from '../../utils/classnames';
41
+ import useLatest from '../useLatest';
42
+ import useMemoizedFn from '../useMemoizedFn';
43
+ import { DEFAULT_LABEL_ALIGN, DEFAULT_LABEL_COL, DEFAULT_LAYOUT, DEFAULT_SIZE, DEFAULT_WRAPPER_COL } from './constants';
44
+ import { getFirstErrorPath, scrollToField } from './helper';
45
+ /** React context that distributes form layout and state to descendant `<FormItem>` components. */
46
+ export var FormContext = /*#__PURE__*/createContext(null);
47
+ /**
48
+ * Form component that wraps `react-hook-form` with layout, context distribution,
49
+ * value-change subscriptions, and scroll-to-error behavior.
50
+ *
51
+ * Renders a `<FormProvider>` and native `<form>` element. All `<FormItem>` children
52
+ * receive form methods and layout configuration via {@link FormContext}.
53
+ *
54
+ * Supports both controlled mode (pass an external `form` instance) and uncontrolled
55
+ * mode (internal `useForm` is created automatically).
56
+ *
57
+ * @template TFieldValues - The shape of the form values.
58
+ * @param props - {@link FormProps}
59
+ *
60
+ * @example
61
+ * ```tsx
62
+ * <Form defaultValues={{ name: '' }} onFinish={(values) => save(values)}>
63
+ * <FormItem name="name" label="Name" rules={{ required: true }}>
64
+ * <Input />
65
+ * </FormItem>
66
+ * </Form>
67
+ * ```
68
+ */
69
+ export function Form(props) {
70
+ var _this = this;
71
+ // Form is a thin wrapper over react-hook-form with layout + UX helpers.
72
+ var form = props.form,
73
+ defaultValues = props.defaultValues,
74
+ onFinish = props.onFinish,
75
+ onFinishFailed = props.onFinishFailed,
76
+ onValuesChange = props.onValuesChange,
77
+ watchNames = props.watchNames,
78
+ scrollToFirstError = props.scrollToFirstError,
79
+ _props$layout = props.layout,
80
+ layout = _props$layout === void 0 ? DEFAULT_LAYOUT : _props$layout,
81
+ _props$labelAlign = props.labelAlign,
82
+ labelAlign = _props$labelAlign === void 0 ? DEFAULT_LABEL_ALIGN : _props$labelAlign,
83
+ _props$labelCol = props.labelCol,
84
+ labelCol = _props$labelCol === void 0 ? DEFAULT_LABEL_COL : _props$labelCol,
85
+ _props$wrapperCol = props.wrapperCol,
86
+ wrapperCol = _props$wrapperCol === void 0 ? DEFAULT_WRAPPER_COL : _props$wrapperCol,
87
+ _props$size = props.size,
88
+ size = _props$size === void 0 ? DEFAULT_SIZE : _props$size,
89
+ disabled = props.disabled,
90
+ _props$colon = props.colon,
91
+ colon = _props$colon === void 0 ? true : _props$colon,
92
+ _props$requiredMark = props.requiredMark,
93
+ requiredMark = _props$requiredMark === void 0 ? true : _props$requiredMark,
94
+ className = props.className,
95
+ style = props.style,
96
+ children = props.children,
97
+ useFormProps = __rest(props, ["form", "defaultValues", "onFinish", "onFinishFailed", "onValuesChange", "watchNames", "scrollToFirstError", "layout", "labelAlign", "labelCol", "wrapperCol", "size", "disabled", "colon", "requiredMark", "className", "style", "children"]);
98
+ // Always create an internal form to keep hook ordering stable.
99
+ // When an external `form` is passed via the `form` prop, this instance is
100
+ // unused but must remain so that React's hook call order is consistent
101
+ // across renders. We pass `shouldUnregister: true` to minimize overhead
102
+ // of the unused form instance.
103
+ var internalMethods = useForm(Object.assign({
104
+ defaultValues: defaultValues,
105
+ shouldUnregister: true
106
+ }, useFormProps));
107
+ // Use provided form methods when controlled; otherwise use internal form state.
108
+ var methods = form !== null && form !== void 0 ? form : internalMethods;
109
+ var valuesChangeRef = useLatest(onValuesChange);
110
+ var watchNamesRef = useLatest((watchNames === null || watchNames === void 0 ? void 0 : watchNames.length) ? new Set(watchNames) : null);
111
+ // Provide layout + disabled state + form methods to FormItem via context.
112
+ var ctx = useMemo(function () {
113
+ return {
114
+ layout: layout,
115
+ labelAlign: labelAlign,
116
+ labelCol: labelCol,
117
+ wrapperCol: wrapperCol,
118
+ size: size,
119
+ disabled: disabled,
120
+ colon: colon,
121
+ requiredMark: requiredMark,
122
+ methods: methods
123
+ };
124
+ }, [layout, labelAlign, labelCol, wrapperCol, size, disabled, colon, requiredMark, methods]);
125
+ // Subscribe to all value changes when handler provided.
126
+ useEffect(function () {
127
+ if (!onValuesChange) return;
128
+ var subscription = methods.watch(function (values, info) {
129
+ var _a;
130
+ var watchSet = watchNamesRef.current;
131
+ if (watchSet) {
132
+ var name = info.name;
133
+ if (!name || !watchSet.has(name)) return;
134
+ }
135
+ (_a = valuesChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(valuesChangeRef, values, {
136
+ name: info.name,
137
+ type: info.type
138
+ });
139
+ });
140
+ return function () {
141
+ return subscription.unsubscribe();
142
+ };
143
+ // `valuesChangeRef` and `watchNamesRef` are stable refs accessed via `.current`
144
+ // so they do not need to be in the dependency array.
145
+ }, [methods, onValuesChange]);
146
+ // Submit success handler.
147
+ var handleFinish = useMemoizedFn(function (values) {
148
+ return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
149
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
150
+ while (1) switch (_context.prev = _context.next) {
151
+ case 0:
152
+ _context.next = 2;
153
+ return onFinish === null || onFinish === void 0 ? void 0 : onFinish(values);
154
+ case 2:
155
+ case "end":
156
+ return _context.stop();
157
+ }
158
+ }, _callee);
159
+ }));
160
+ });
161
+ // Submit failure handler with optional scroll-to-error.
162
+ var handleFinishFailed = useMemoizedFn(function (errors) {
163
+ var _a;
164
+ if (scrollToFirstError) {
165
+ var first = getFirstErrorPath(errors);
166
+ if (first) {
167
+ (_a = methods.setFocus) === null || _a === void 0 ? void 0 : _a.call(methods, first);
168
+ scrollToField(first, scrollToFirstError);
169
+ }
170
+ }
171
+ onFinishFailed === null || onFinishFailed === void 0 ? void 0 : onFinishFailed(errors);
172
+ });
173
+ var classes = classnames('form');
174
+ return _jsx(FormProvider, Object.assign({}, methods, {
175
+ children: _jsx(FormContext.Provider, {
176
+ value: ctx,
177
+ children: _jsx("form", {
178
+ className: classes('root', joinCls(className, classes("layout-".concat(layout)), classes("size-".concat(size)), labelAlign === 'left' && classes('label-left'))),
179
+ style: style,
180
+ onSubmit: methods.handleSubmit(handleFinish, handleFinishFailed),
181
+ noValidate: true,
182
+ children: children
183
+ })
184
+ })
185
+ }));
186
+ }
187
+ export default Form;
188
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRm9ybS9Gb3JtLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Gb3JtL0Zvcm0udHN4Il0sIm5hbWVzIjpbIl9fYXdhaXRlciIsInRoaXNBcmciLCJfYXJndW1lbnRzIiwiUCIsImdlbmVyYXRvciIsImFkb3B0IiwidmFsdWUiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwiZSIsInJlamVjdGVkIiwicmVzdWx0IiwiZG9uZSIsInRoZW4iLCJhcHBseSIsIl9fcmVzdCIsInMiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJqc3giLCJfanN4IiwiUmVhY3QiLCJjcmVhdGVDb250ZXh0IiwidXNlRWZmZWN0IiwidXNlTWVtbyIsIkZvcm1Qcm92aWRlciIsInVzZUZvcm0iLCJkZWZhdWx0IiwiY2xhc3NuYW1lcyIsImpvaW5DbHMiLCJ1c2VMYXRlc3QiLCJ1c2VNZW1vaXplZEZuIiwiREVGQVVMVF9MQUJFTF9BTElHTiIsIkRFRkFVTFRfTEFCRUxfQ09MIiwiREVGQVVMVF9MQVlPVVQiLCJERUZBVUxUX1NJWkUiLCJERUZBVUxUX1dSQVBQRVJfQ09MIiwiZ2V0Rmlyc3RFcnJvclBhdGgiLCJzY3JvbGxUb0ZpZWxkIiwiRm9ybUNvbnRleHQiLCJGb3JtIiwicHJvcHMiLCJfdGhpcyIsImZvcm0iLCJkZWZhdWx0VmFsdWVzIiwib25GaW5pc2giLCJvbkZpbmlzaEZhaWxlZCIsIm9uVmFsdWVzQ2hhbmdlIiwid2F0Y2hOYW1lcyIsInNjcm9sbFRvRmlyc3RFcnJvciIsIl9wcm9wcyRsYXlvdXQiLCJsYXlvdXQiLCJfcHJvcHMkbGFiZWxBbGlnbiIsImxhYmVsQWxpZ24iLCJfcHJvcHMkbGFiZWxDb2wiLCJsYWJlbENvbCIsIl9wcm9wcyR3cmFwcGVyQ29sIiwid3JhcHBlckNvbCIsIl9wcm9wcyRzaXplIiwic2l6ZSIsImRpc2FibGVkIiwiX3Byb3BzJGNvbG9uIiwiY29sb24iLCJfcHJvcHMkcmVxdWlyZWRNYXJrIiwicmVxdWlyZWRNYXJrIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJjaGlsZHJlbiIsInVzZUZvcm1Qcm9wcyIsImludGVybmFsTWV0aG9kcyIsImFzc2lnbiIsInNob3VsZFVucmVnaXN0ZXIiLCJtZXRob2RzIiwidmFsdWVzQ2hhbmdlUmVmIiwid2F0Y2hOYW1lc1JlZiIsIlNldCIsImN0eCIsInN1YnNjcmlwdGlvbiIsIndhdGNoIiwidmFsdWVzIiwiaW5mbyIsIl9hIiwid2F0Y2hTZXQiLCJjdXJyZW50IiwibmFtZSIsImhhcyIsInR5cGUiLCJ1bnN1YnNjcmliZSIsImhhbmRsZUZpbmlzaCIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsInN0b3AiLCJoYW5kbGVGaW5pc2hGYWlsZWQiLCJlcnJvcnMiLCJmaXJzdCIsInNldEZvY3VzIiwiY2xhc3NlcyIsIlByb3ZpZGVyIiwiY29uY2F0Iiwib25TdWJtaXQiLCJoYW5kbGVTdWJtaXQiLCJub1ZhbGlkYXRlIl0sIm1hcHBpbmdzIjoiO0FBQUEsSUFBSUEsU0FBUyxHQUFJLElBQUksSUFBSSxJQUFJLENBQUNBLFNBQVMsSUFBSyxVQUFVQyxPQUFPLEVBQUVDLFVBQVUsRUFBRUMsQ0FBQyxFQUFFQyxTQUFTLEVBQUU7RUFDckYsU0FBU0MsS0FBS0EsQ0FBQ0MsS0FBSyxFQUFFO0lBQUUsT0FBT0EsS0FBSyxZQUFZSCxDQUFDLEdBQUdHLEtBQUssR0FBRyxJQUFJSCxDQUFDLENBQUMsVUFBVUksT0FBTyxFQUFFO01BQUVBLE9BQU8sQ0FBQ0QsS0FBSyxDQUFDO0lBQUUsQ0FBQyxDQUFDO0VBQUU7RUFDM0csT0FBTyxLQUFLSCxDQUFDLEtBQUtBLENBQUMs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LEVBQUEsSUFBQTtRQUFBdkMsUUFBQSxFQUVUQTtNQUFRLENBQUE7SUFDSixDQUFBO0VBQ2MsQ0FBQSxDQUFBLENBQ1Y7QUFFbkI7QUFFQSxlQUFlM0IsSUFBSSIsImZpbGUiOiJjb21wb25lbnRzL0Zvcm0vRm9ybS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX2F3YWl0ZXIgPSAodGhpcyAmJiB0aGlzLl9fYXdhaXRlcikgfHwgZnVuY3Rpb24gKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xuICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxuICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XG4gICAgfSk7XG59O1xudmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VFZmZlY3QsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBGb3JtUHJvdmlkZXIsIHVzZUZvcm0gfSBmcm9tICdyZWFjdC1ob29rLWZvcm0nO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBjbGFzc25hbWVzLCBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgdXNlTGF0ZXN0IGZyb20gJy4uL3VzZUxhdGVzdCc7XG5pbXBvcnQgdXNlTWVtb2l6ZWRGbiBmcm9tICcuLi91c2VNZW1vaXplZEZuJztcbmltcG9ydCB7IERFRkFVTFRfTEFCRUxfQUxJR04sIERFRkFVTFRfTEFCRUxfQ09MLCBERUZBVUxUX0xBWU9VVCwgREVGQVVMVF9TSVpFLCBERUZBVUxUX1dSQVBQRVJfQ09MLCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGdldEZpcnN0RXJyb3JQYXRoLCBzY3JvbGxUb0ZpZWxkIH0gZnJvbSAnLi9oZWxwZXInO1xuLyoqIFJlYWN0IGNvbnRleHQgdGhhdCBkaXN0cmlidXRlcyBmb3JtIGxheW91dCBhbmQgc3RhdGUgdG8gZGVzY2VuZGFudCBgPEZvcm1JdGVtPmAgY29tcG9uZW50cy4gKi9cbmV4cG9ydCBjb25zdCBGb3JtQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQobnVsbCk7XG4vKipcbiAqIEZvcm0gY29tcG9uZW50IHRoYXQgd3JhcHMgYHJlYWN0LWhvb2stZm9ybWAgd2l0aCBsYXlvdXQsIGNvbnRleHQgZGlzdHJpYnV0aW9uLFxuICogdmFsdWUtY2hhbmdlIHN1YnNjcmlwdGlvbnMsIGFuZCBzY3JvbGwtdG8tZXJyb3IgYmVoYXZpb3IuXG4gKlxuICogUmVuZGVycyBhIGA8Rm9ybVByb3ZpZGVyPmAgYW5kIG5hdGl2ZSBgPGZvcm0+YCBlbGVtZW50LiBBbGwgYDxGb3JtSXRlbT5gIGNoaWxkcmVuXG4gKiByZWNlaXZlIGZvcm0gbWV0aG9kcyBhbmQgbGF5b3V0IGNvbmZpZ3VyYXRpb24gdmlhIHtAbGluayBGb3JtQ29udGV4dH0uXG4gKlxuICogU3VwcG9ydHMgYm90aCBjb250cm9sbGVkIG1vZGUgKHBhc3MgYW4gZXh0ZXJuYWwgYGZvcm1gIGluc3RhbmNlKSBhbmQgdW5jb250cm9sbGVkXG4gKiBtb2RlIChpbnRlcm5hbCBgdXNlRm9ybWAgaXMgY3JlYXRlZCBhdXRvbWF0aWNhbGx5KS5cbiAqXG4gKiBAdGVtcGxhdGUgVEZpZWxkVmFsdWVzIC0gVGhlIHNoYXBlIG9mIHRoZSBmb3JtIHZhbHVlcy5cbiAqIEBwYXJhbSBwcm9wcyAtIHtAbGluayBGb3JtUHJvcHN9XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogPEZvcm0gZGVmYXVsdFZhbHVlcz17eyBuYW1lOiAnJyB9fSBvbkZpbmlzaD17KHZhbHVlcykgPT4gc2F2ZSh2YWx1ZXMpfT5cbiAqICAgPEZvcm1JdGVtIG5hbWU9XCJuYW1lXCIgbGFiZWw9XCJOYW1lXCIgcnVsZXM9e3sgcmVxdWlyZWQ6IHRydWUgfX0+XG4gKiAgICAgPElucHV0IC8+XG4gKiAgIDwvRm9ybUl0ZW0+XG4gKiA8L0Zvcm0+XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEZvcm0ocHJvcHMpIHtcbiAgICAvLyBGb3JtIGlzIGEgdGhpbiB3cmFwcGVyIG92ZXIgcmVhY3QtaG9vay1mb3JtIHdpdGggbGF5b3V0ICsgVVggaGVscGVycy5cbiAgICBjb25zdCB7IGZvcm0sIGRlZmF1bHRWYWx1ZXMsIG9uRmluaXNoLCBvbkZpbmlzaEZhaWxlZCwgb25WYWx1ZXNDaGFuZ2UsIHdhdGNoTmFtZXMsIHNjcm9sbFRvRmlyc3RFcnJvciwgbGF5b3V0ID0gREVGQVVMVF9MQVlPVVQsIGxhYmVsQWxpZ24gPSBERUZBVUxUX0xBQkVMX0FMSUdOLCBsYWJlbENvbCA9IERFRkFVTFRfTEFCRUxfQ09MLCB3cmFwcGVyQ29sID0gREVGQVVMVF9XUkFQUEVSX0NPTCwgc2l6ZSA9IERFRkFVTFRfU0laRSwgZGlzYWJsZWQsIGNvbG9uID0gdHJ1ZSwgcmVxdWlyZWRNYXJrID0gdHJ1ZSwgY2xhc3NOYW1lLCBzdHlsZSwgY2hpbGRyZW4gfSA9IHByb3BzLCB1c2VGb3JtUHJvcHMgPSBfX3Jlc3QocHJvcHMsIFtcImZvcm1cIiwgXCJkZWZhdWx0VmFsdWVzXCIsIFwib25GaW5pc2hcIiwgXCJvbkZpbmlzaEZhaWxlZFwiLCBcIm9uVmFsdWVzQ2hhbmdlXCIsIFwid2F0Y2hOYW1lc1wiLCBcInNjcm9sbFRvRmlyc3RFcnJvclwiLCBcImxheW91dFwiLCBcImxhYmVsQWxpZ25cIiwgXCJsYWJlbENvbFwiLCBcIndyYXBwZXJDb2xcIiwgXCJzaXplXCIsIFwiZGlzYWJsZWRcIiwgXCJjb2xvblwiLCBcInJlcXVpcmVkTWFya1wiLCBcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwiY2hpbGRyZW5cIl0pO1xuICAgIC8vIEFsd2F5cyBjcmVhdGUgYW4gaW50ZXJuYWwgZm9ybSB0byBrZWVwIGhvb2sgb3JkZXJpbmcgc3RhYmxlLlxuICAgIC8vIFdoZW4gYW4gZXh0ZXJuYWwgYGZvcm1gIGlzIHBhc3NlZCB2aWEgdGhlIGBmb3JtYCBwcm9wLCB0aGlzIGluc3RhbmNlIGlzXG4gICAgLy8gdW51c2VkIGJ1dCBtdXN0IHJlbWFpbiBzbyB0aGF0IFJlYWN0J3MgaG9vayBjYWxsIG9yZGVyIGlzIGNvbnNpc3RlbnRcbiAgICAvLyBhY3Jvc3MgcmVuZGVycy4gV2UgcGFzcyBgc2hvdWxkVW5yZWdpc3RlcjogdHJ1ZWAgdG8gbWluaW1pemUgb3ZlcmhlYWRcbiAgICAvLyBvZiB0aGUgdW51c2VkIGZvcm0gaW5zdGFuY2UuXG4gICAgY29uc3QgaW50ZXJuYWxNZXRob2RzID0gdXNlRm9ybShPYmplY3QuYXNzaWduKHsgZGVmYXVsdFZhbHVlcywgc2hvdWxkVW5yZWdpc3RlcjogdHJ1ZSB9LCB1c2VGb3JtUHJvcHMpKTtcbiAgICAvLyBVc2UgcHJvdmlkZWQgZm9ybSBtZXRob2RzIHdoZW4gY29udHJvbGxlZDsgb3RoZXJ3aXNlIHVzZSBpbnRlcm5hbCBmb3JtIHN0YXRlLlxuICAgIGNvbnN0IG1ldGhvZHMgPSBmb3JtICE9PSBudWxsICYmIGZvcm0gIT09IHZvaWQgMCA/IGZvcm0gOiBpbnRlcm5hbE1ldGhvZHM7XG4gICAgY29uc3QgdmFsdWVzQ2hhbmdlUmVmID0gdXNlTGF0ZXN0KG9uVmFsdWVzQ2hhbmdlKTtcbiAgICBjb25zdCB3YXRjaE5hbWVzUmVmID0gdXNlTGF0ZXN0KCh3YXRjaE5hbWVzID09PSBudWxsIHx8IHdhdGNoTmFtZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdhdGNoTmFtZXMubGVuZ3RoKSA/IG5ldyBTZXQod2F0Y2hOYW1lcykgOiBudWxsKTtcbiAgICAvLyBQcm92aWRlIGxheW91dCArIGRpc2FibGVkIHN0YXRlICsgZm9ybSBtZXRob2RzIHRvIEZvcm1JdGVtIHZpYSBjb250ZXh0LlxuICAgIGNvbnN0IGN0eCA9IHVzZU1lbW8oKCkgPT4gKHtcbiAgICAgICAgbGF5b3V0LFxuICAgICAgICBsYWJlbEFsaWduLFxuICAgICAgICBsYWJlbENvbCxcbiAgICAgICAgd3JhcHBlckNvbCxcbiAgICAgICAgc2l6ZSxcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIGNvbG9uLFxuICAgICAgICByZXF1aXJlZE1hcmssXG4gICAgICAgIG1ldGhvZHM6IG1ldGhvZHMsXG4gICAgfSksIFtsYXlvdXQsIGxhYmVsQWxpZ24sIGxhYmVsQ29sLCB3cmFwcGVyQ29sLCBzaXplLCBkaXNhYmxlZCwgY29sb24sIHJlcXVpcmVkTWFyaywgbWV0aG9kc10pO1xuICAgIC8vIFN1YnNjcmliZSB0byBhbGwgdmFsdWUgY2hhbmdlcyB3aGVuIGhhbmRsZXIgcHJvdmlkZWQuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFvblZhbHVlc0NoYW5nZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbWV0aG9kcy53YXRjaCgodmFsdWVzLCBpbmZvKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCB3YXRjaFNldCA9IHdhdGNoTmFtZXNSZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICh3YXRjaFNldCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBpbmZvLm5hbWU7XG4gICAgICAgICAgICAgICAgaWYgKCFuYW1lIHx8ICF3YXRjaFNldC5oYXMobmFtZSkpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIChfYSA9IHZhbHVlc0NoYW5nZVJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh2YWx1ZXNDaGFuZ2VSZWYsIHZhbHVlcywgeyBuYW1lOiBpbmZvLm5hbWUsIHR5cGU6IGluZm8udHlwZSB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiAoKSA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gYHZhbHVlc0NoYW5nZVJlZmAgYW5kIGB3YXRjaE5hbWVzUmVmYCBhcmUgc3RhYmxlIHJlZnMgYWNjZXNzZWQgdmlhIGAuY3VycmVudGBcbiAgICAgICAgLy8gc28gdGhleSBkbyBub3QgbmVlZCB0byBiZSBpbiB0aGUgZGVwZW5kZW5jeSBhcnJheS5cbiAgICB9LCBbbWV0aG9kcywgb25WYWx1ZXNDaGFuZ2VdKTtcbiAgICAvLyBTdWJtaXQgc3VjY2VzcyBoYW5kbGVyLlxuICAgIGNvbnN0IGhhbmRsZUZpbmlzaCA9IHVzZU1lbW9pemVkRm4oKHZhbHVlcykgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB5aWVsZCAob25GaW5pc2ggPT09IG51bGwgfHwgb25GaW5pc2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uRmluaXNoKHZhbHVlcykpO1xuICAgIH0pKTtcbiAgICAvLyBTdWJtaXQgZmFpbHVyZSBoYW5kbGVyIHdpdGggb3B0aW9uYWwgc2Nyb2xsLXRvLWVycm9yLlxuICAgIGNvbnN0IGhhbmRsZUZpbmlzaEZhaWxlZCA9IHVzZU1lbW9pemVkRm4oKGVycm9ycykgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGlmIChzY3JvbGxUb0ZpcnN0RXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0ID0gZ2V0Rmlyc3RFcnJvclBhdGgoZXJyb3JzKTtcbiAgICAgICAgICAgIGlmIChmaXJzdCkge1xuICAgICAgICAgICAgICAgIChfYSA9IG1ldGhvZHMuc2V0Rm9jdXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG1ldGhvZHMsIGZpcnN0KTtcbiAgICAgICAgICAgICAgICBzY3JvbGxUb0ZpZWxkKGZpcnN0LCBzY3JvbGxUb0ZpcnN0RXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG9uRmluaXNoRmFpbGVkID09PSBudWxsIHx8IG9uRmluaXNoRmFpbGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkZpbmlzaEZhaWxlZChlcnJvcnMpO1xuICAgIH0pO1xuICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc25hbWVzKCdmb3JtJyk7XG4gICAgcmV0dXJuIChfanN4KEZvcm1Qcm92aWRlciwgT2JqZWN0LmFzc2lnbih7fSwgbWV0aG9kcywgeyBjaGlsZHJlbjogX2pzeChGb3JtQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZTogY3R4LCBjaGlsZHJlbjogX2pzeChcImZvcm1cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3Jvb3QnLCBqb2luQ2xzKGNsYXNzTmFtZSwgY2xhc3NlcyhgbGF5b3V0LSR7bGF5b3V0fWApLCBjbGFzc2VzKGBzaXplLSR7c2l6ZX1gKSwgbGFiZWxBbGlnbiA9PT0gJ2xlZnQnICYmIGNsYXNzZXMoJ2xhYmVsLWxlZnQnKSkpLCBzdHlsZTogc3R5bGUsIG9uU3VibWl0OiBtZXRob2RzLmhhbmRsZVN1Ym1pdChoYW5kbGVGaW5pc2gsIGhhbmRsZUZpbmlzaEZhaWxlZCksIG5vVmFsaWRhdGU6IHRydWUsIGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSB9KSkpO1xufVxuZXhwb3J0IGRlZmF1bHQgRm9ybTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -0,0 +1,4 @@
1
+ import type { FieldValues } from 'react-hook-form';
2
+ import type { FormItemProps } from './interface';
3
+ export declare function FormItem<TFieldValues extends FieldValues = FieldValues>(props: FormItemProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
4
+ export default FormItem;