react-native-system-ui 0.0.4 → 0.0.6

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 (371) hide show
  1. package/dist/cjs/components/action-sheet/ActionSheet.js +28 -22
  2. package/dist/cjs/components/area/Area.js +72 -6
  3. package/dist/cjs/components/area/tokens.js +11 -0
  4. package/dist/cjs/components/avatar/Avatar.js +42 -10
  5. package/dist/cjs/components/badge/Badge.js +10 -10
  6. package/dist/cjs/components/badge/tokens.js +4 -0
  7. package/dist/cjs/components/button/Button.js +16 -65
  8. package/dist/cjs/components/button/ButtonContext.js +7 -10
  9. package/dist/cjs/components/button/ButtonGroup.js +13 -15
  10. package/dist/cjs/components/button/tokens.js +1 -5
  11. package/dist/cjs/components/calendar/Calendar.js +23 -12
  12. package/dist/cjs/components/cascader/Cascader.js +18 -13
  13. package/dist/cjs/components/cell/Cell.js +3 -3
  14. package/dist/cjs/components/cell/CellGroup.js +26 -21
  15. package/dist/cjs/components/checkbox/Checkbox.js +5 -4
  16. package/dist/cjs/components/checkbox/CheckboxContext.js +7 -10
  17. package/dist/cjs/components/checkbox/CheckboxGroup.js +24 -21
  18. package/dist/cjs/components/circle/Circle.js +6 -6
  19. package/dist/cjs/components/collapse/Collapse.js +10 -10
  20. package/dist/cjs/components/config-provider/locale/en-US.js +66 -4
  21. package/dist/cjs/components/config-provider/locale/zh-CN.js +74 -2
  22. package/dist/cjs/components/config-provider/tokens.js +11 -0
  23. package/dist/cjs/components/count-down/CountDown.js +6 -6
  24. package/dist/cjs/components/datetime-picker/DatetimePicker.js +6 -6
  25. package/dist/cjs/components/datetime-picker/tokens.js +11 -0
  26. package/dist/cjs/components/dialog/Dialog.js +39 -34
  27. package/dist/cjs/components/dialog/tokens.js +1 -4
  28. package/dist/cjs/components/divider/Divider.js +36 -1
  29. package/dist/cjs/components/field/Field.js +303 -201
  30. package/dist/cjs/components/flex/Flex.js +7 -3
  31. package/dist/cjs/components/flex/FlexContext.js +7 -14
  32. package/dist/cjs/components/form/Form.js +112 -122
  33. package/dist/cjs/components/form/FormContext.js +7 -10
  34. package/dist/cjs/components/form/FormItem.js +30 -4
  35. package/dist/cjs/components/form/FormList.js +16 -3
  36. package/dist/cjs/components/form/tokens.js +11 -0
  37. package/dist/cjs/components/form/utils.js +2 -1
  38. package/dist/cjs/components/grid/Grid.js +45 -31
  39. package/dist/cjs/components/grid/GridContext.js +7 -10
  40. package/dist/cjs/components/grid/GridItem.js +22 -22
  41. package/dist/cjs/components/image/Image.js +17 -13
  42. package/dist/cjs/components/image-preview/ImagePreview.js +43 -41
  43. package/dist/cjs/components/index.js +43 -141
  44. package/dist/cjs/components/input/Input.js +19 -5
  45. package/dist/cjs/components/loading/Loading.js +10 -139
  46. package/dist/cjs/components/loading/tokens.js +0 -24
  47. package/dist/cjs/components/notice-bar/NoticeBar.js +45 -41
  48. package/dist/cjs/components/notify/Notify.js +72 -30
  49. package/dist/cjs/components/notify/imperative.js +2 -2
  50. package/dist/cjs/components/notify/tokens.js +11 -1
  51. package/dist/cjs/components/number-keyboard/NumberKeyboard.js +6 -6
  52. package/dist/cjs/components/overlay/Overlay.js +70 -77
  53. package/dist/cjs/components/overlay/index.js +13 -27
  54. package/dist/cjs/components/overlay/tokens.js +4 -31
  55. package/dist/cjs/components/password-input/PasswordInput.js +2 -41
  56. package/dist/cjs/components/password-input/tokens.js +53 -0
  57. package/dist/cjs/components/picker/Picker.js +618 -38
  58. package/dist/cjs/components/popup/Popup.js +60 -47
  59. package/dist/cjs/components/portal/Portal.js +39 -31
  60. package/dist/cjs/components/portal/PortalHost.js +258 -213
  61. package/dist/cjs/components/portal/tokens.js +11 -0
  62. package/dist/cjs/components/progress/Progress.js +77 -36
  63. package/dist/cjs/components/progress/index.js +6 -0
  64. package/dist/cjs/components/radio/Radio.js +35 -12
  65. package/dist/cjs/components/radio/RadioContext.js +7 -10
  66. package/dist/cjs/components/radio/RadioGroup.js +23 -20
  67. package/dist/cjs/components/safe-area-view/tokens.js +11 -0
  68. package/dist/cjs/components/search/Search.js +16 -16
  69. package/dist/cjs/components/selector/Selector.js +6 -6
  70. package/dist/cjs/components/share-sheet/ShareSheet.js +50 -46
  71. package/dist/cjs/components/sidebar/Sidebar.js +27 -22
  72. package/dist/cjs/components/sidebar/SidebarItem.js +27 -22
  73. package/dist/cjs/components/skeleton/Skeleton.js +34 -21
  74. package/dist/cjs/components/slider/Slider.js +135 -78
  75. package/dist/cjs/components/stepper/Stepper.js +12 -10
  76. package/dist/cjs/components/swiper/Swiper.js +247 -710
  77. package/dist/cjs/components/swiper/SwiperItem.js +5 -33
  78. package/dist/cjs/components/swiper/tokens.js +11 -0
  79. package/dist/cjs/components/switch/Switch.js +46 -98
  80. package/dist/cjs/components/switch/tokens.js +1 -55
  81. package/dist/cjs/components/tabbar/Tabbar.js +26 -22
  82. package/dist/cjs/components/tabbar/TabbarItem.js +23 -22
  83. package/dist/cjs/components/tabbar/tokens.js +0 -2
  84. package/dist/cjs/components/tabs/Tabs.js +268 -94
  85. package/dist/cjs/components/tabs/index.js +4 -5
  86. package/dist/cjs/components/toast/Toast.js +72 -27
  87. package/dist/cjs/components/toast/imperative.js +2 -2
  88. package/dist/cjs/hooks/gesture/useGestureScroll.js +1 -2
  89. package/dist/cjs/hooks/index.js +12 -12
  90. package/dist/cjs/hooks/overlay/index.js +27 -0
  91. package/dist/cjs/hooks/useHairline.js +0 -4
  92. package/dist/cjs/platform/scrollLock.js +1 -1
  93. package/dist/cjs/utils/compare.js +26 -0
  94. package/dist/cjs/utils/index.js +11 -0
  95. package/dist/es/components/action-sheet/ActionSheet.js +29 -23
  96. package/dist/es/components/area/Area.js +73 -7
  97. package/dist/es/components/area/tokens.js +5 -0
  98. package/dist/es/components/avatar/Avatar.js +42 -10
  99. package/dist/es/components/badge/Badge.js +11 -11
  100. package/dist/es/components/badge/tokens.js +4 -0
  101. package/dist/es/components/button/Button.js +17 -65
  102. package/dist/es/components/button/ButtonContext.js +1 -2
  103. package/dist/es/components/button/ButtonGroup.js +10 -12
  104. package/dist/es/components/button/tokens.js +1 -5
  105. package/dist/es/components/calendar/Calendar.js +24 -13
  106. package/dist/es/components/cascader/Cascader.js +16 -11
  107. package/dist/es/components/cell/Cell.js +4 -4
  108. package/dist/es/components/cell/CellGroup.js +25 -20
  109. package/dist/es/components/checkbox/Checkbox.js +5 -4
  110. package/dist/es/components/checkbox/CheckboxContext.js +1 -2
  111. package/dist/es/components/checkbox/CheckboxGroup.js +24 -21
  112. package/dist/es/components/circle/Circle.js +7 -7
  113. package/dist/es/components/collapse/Collapse.js +11 -11
  114. package/dist/es/components/config-provider/locale/en-US.js +66 -4
  115. package/dist/es/components/config-provider/locale/zh-CN.js +74 -2
  116. package/dist/es/components/config-provider/tokens.js +5 -0
  117. package/dist/es/components/count-down/CountDown.js +7 -7
  118. package/dist/es/components/datetime-picker/DatetimePicker.js +7 -7
  119. package/dist/es/components/datetime-picker/tokens.js +5 -0
  120. package/dist/es/components/dialog/Dialog.js +40 -35
  121. package/dist/es/components/dialog/tokens.js +1 -4
  122. package/dist/es/components/divider/Divider.js +36 -1
  123. package/dist/es/components/field/Field.js +304 -202
  124. package/dist/es/components/flex/Flex.js +5 -1
  125. package/dist/es/components/flex/FlexContext.js +1 -6
  126. package/dist/es/components/form/Form.js +89 -99
  127. package/dist/es/components/form/FormContext.js +1 -2
  128. package/dist/es/components/form/FormItem.js +32 -6
  129. package/dist/es/components/form/FormList.js +18 -5
  130. package/dist/es/components/form/tokens.js +5 -0
  131. package/dist/es/components/form/utils.js +1 -0
  132. package/dist/es/components/grid/Grid.js +43 -29
  133. package/dist/es/components/grid/GridContext.js +1 -2
  134. package/dist/es/components/grid/GridItem.js +24 -24
  135. package/dist/es/components/image/Image.js +18 -14
  136. package/dist/es/components/image-preview/ImagePreview.js +44 -42
  137. package/dist/es/components/index.js +2 -17
  138. package/dist/es/components/input/Input.js +20 -6
  139. package/dist/es/components/loading/Loading.js +10 -139
  140. package/dist/es/components/loading/tokens.js +0 -24
  141. package/dist/es/components/notice-bar/NoticeBar.js +46 -42
  142. package/dist/es/components/notify/Notify.js +72 -30
  143. package/dist/es/components/notify/imperative.js +2 -2
  144. package/dist/es/components/notify/tokens.js +5 -1
  145. package/dist/es/components/number-keyboard/NumberKeyboard.js +7 -7
  146. package/dist/es/components/overlay/Overlay.js +58 -75
  147. package/dist/es/components/overlay/index.js +3 -4
  148. package/dist/es/components/overlay/tokens.js +3 -29
  149. package/dist/es/components/password-input/PasswordInput.js +1 -40
  150. package/dist/es/components/password-input/tokens.js +41 -0
  151. package/dist/es/components/picker/Picker.js +610 -34
  152. package/dist/es/components/popup/Popup.js +62 -49
  153. package/dist/es/components/portal/Portal.js +37 -31
  154. package/dist/es/components/portal/PortalHost.js +257 -211
  155. package/dist/es/components/portal/tokens.js +5 -0
  156. package/dist/es/components/progress/Progress.js +76 -36
  157. package/dist/es/components/progress/index.js +2 -1
  158. package/dist/es/components/radio/Radio.js +37 -14
  159. package/dist/es/components/radio/RadioContext.js +1 -2
  160. package/dist/es/components/radio/RadioGroup.js +23 -20
  161. package/dist/es/components/safe-area-view/tokens.js +5 -0
  162. package/dist/es/components/search/Search.js +17 -17
  163. package/dist/es/components/selector/Selector.js +7 -7
  164. package/dist/es/components/share-sheet/ShareSheet.js +51 -47
  165. package/dist/es/components/sidebar/Sidebar.js +26 -21
  166. package/dist/es/components/sidebar/SidebarItem.js +26 -22
  167. package/dist/es/components/skeleton/Skeleton.js +35 -22
  168. package/dist/es/components/slider/Slider.js +132 -75
  169. package/dist/es/components/stepper/Stepper.js +13 -11
  170. package/dist/es/components/swiper/Swiper.js +248 -711
  171. package/dist/es/components/swiper/SwiperItem.js +1 -21
  172. package/dist/es/components/swiper/tokens.js +5 -0
  173. package/dist/es/components/switch/Switch.js +49 -101
  174. package/dist/es/components/switch/tokens.js +1 -49
  175. package/dist/es/components/tabbar/Tabbar.js +27 -23
  176. package/dist/es/components/tabbar/TabbarItem.js +22 -22
  177. package/dist/es/components/tabbar/tokens.js +0 -2
  178. package/dist/es/components/tabs/Tabs.js +264 -90
  179. package/dist/es/components/tabs/index.js +1 -2
  180. package/dist/es/components/toast/Toast.js +72 -28
  181. package/dist/es/components/toast/imperative.js +2 -2
  182. package/dist/es/hooks/gesture/useGestureScroll.js +1 -2
  183. package/dist/es/hooks/index.js +1 -1
  184. package/dist/es/hooks/overlay/index.js +3 -0
  185. package/dist/es/hooks/useHairline.js +0 -4
  186. package/dist/es/platform/scrollLock.js +1 -1
  187. package/dist/es/utils/compare.js +18 -0
  188. package/dist/es/utils/index.js +1 -1
  189. package/dist/types/components/area/tokens.d.ts +3 -0
  190. package/dist/types/components/avatar/Avatar.d.ts +4 -2
  191. package/dist/types/components/button/ButtonContext.d.ts +2 -16
  192. package/dist/types/components/button/ButtonGroup.d.ts +14 -1
  193. package/dist/types/components/button/index.d.ts +1 -1
  194. package/dist/types/components/checkbox/CheckboxContext.d.ts +2 -16
  195. package/dist/types/components/checkbox/CheckboxGroup.d.ts +15 -1
  196. package/dist/types/components/collapse/Collapse.d.ts +0 -1
  197. package/dist/types/components/config-provider/LocaleContext.d.ts +2 -74
  198. package/dist/types/components/config-provider/tokens.d.ts +3 -0
  199. package/dist/types/components/config-provider/useLocale.d.ts +1 -74
  200. package/dist/types/components/datetime-picker/tokens.d.ts +3 -0
  201. package/dist/types/components/flex/Flex.d.ts +6 -0
  202. package/dist/types/components/flex/FlexContext.d.ts +2 -8
  203. package/dist/types/components/form/Form.d.ts +15 -1
  204. package/dist/types/components/form/FormContext.d.ts +2 -17
  205. package/dist/types/components/form/tokens.d.ts +3 -0
  206. package/dist/types/components/form/utils.d.ts +1 -0
  207. package/dist/types/components/grid/Grid.d.ts +16 -1
  208. package/dist/types/components/grid/GridContext.d.ts +2 -17
  209. package/dist/types/components/index.d.ts +3 -33
  210. package/dist/types/components/loading/index.d.ts +1 -1
  211. package/dist/types/components/notify/Notify.d.ts +1 -0
  212. package/dist/types/components/overlay/Overlay.d.ts +6 -1
  213. package/dist/types/components/overlay/index.d.ts +2 -3
  214. package/dist/types/components/overlay/tokens.d.ts +2 -3
  215. package/dist/types/components/password-input/PasswordInput.d.ts +0 -39
  216. package/dist/types/components/password-input/tokens.d.ts +40 -0
  217. package/dist/types/components/picker/Picker.d.ts +18 -2
  218. package/dist/types/components/picker/index.d.ts +1 -1
  219. package/dist/types/components/portal/Portal.d.ts +4 -6
  220. package/dist/types/components/portal/PortalHost.d.ts +1 -15
  221. package/dist/types/components/portal/tokens.d.ts +3 -0
  222. package/dist/types/components/progress/Progress.d.ts +4 -0
  223. package/dist/types/components/progress/index.d.ts +2 -1
  224. package/dist/types/components/radio/RadioContext.d.ts +2 -13
  225. package/dist/types/components/radio/RadioGroup.d.ts +12 -1
  226. package/dist/types/components/safe-area-view/tokens.d.ts +3 -0
  227. package/dist/types/components/swiper/Swiper.d.ts +4 -2
  228. package/dist/types/components/swiper/SwiperItem.d.ts +1 -5
  229. package/dist/types/components/swiper/tokens.d.ts +3 -0
  230. package/dist/types/components/tabs/Tabs.d.ts +8 -4
  231. package/dist/types/components/tabs/index.d.ts +3 -1
  232. package/dist/types/components/toast/Toast.d.ts +1 -4
  233. package/dist/types/hooks/aria/useAriaListBox.d.ts +0 -6
  234. package/dist/types/hooks/aria/useAriaOverlay.d.ts +0 -10
  235. package/dist/types/hooks/aria/useAriaPress.d.ts +0 -20
  236. package/dist/types/hooks/aria/useAriaToggle.d.ts +0 -3
  237. package/dist/types/hooks/index.d.ts +1 -1
  238. package/dist/types/hooks/overlay/index.d.ts +2 -0
  239. package/dist/types/hooks/useHairline.d.ts +0 -21
  240. package/dist/types/utils/compare.d.ts +2 -0
  241. package/dist/types/utils/index.d.ts +1 -0
  242. package/package.json +10 -48
  243. package/dist/cjs/components/area/utils.js +0 -74
  244. package/dist/cjs/components/cascader/utils.js +0 -20
  245. package/dist/cjs/components/config-provider/locale/base.js +0 -80
  246. package/dist/cjs/components/dropdown-menu/DropdownItem.js +0 -288
  247. package/dist/cjs/components/dropdown-menu/DropdownMenu.js +0 -340
  248. package/dist/cjs/components/dropdown-menu/DropdownMenuContext.js +0 -21
  249. package/dist/cjs/components/dropdown-menu/index.js +0 -25
  250. package/dist/cjs/components/dropdown-menu/tokens.js +0 -67
  251. package/dist/cjs/components/field/utils.js +0 -24
  252. package/dist/cjs/components/index-bar/IndexAnchor.js +0 -74
  253. package/dist/cjs/components/index-bar/IndexBar.js +0 -436
  254. package/dist/cjs/components/index-bar/index.js +0 -25
  255. package/dist/cjs/components/index-bar/tokens.js +0 -45
  256. package/dist/cjs/components/list/List.js +0 -165
  257. package/dist/cjs/components/list/index.js +0 -9
  258. package/dist/cjs/components/list/tokens.js +0 -39
  259. package/dist/cjs/components/notify/defaults.js +0 -15
  260. package/dist/cjs/components/pagination/Pagination.js +0 -160
  261. package/dist/cjs/components/pagination/index.js +0 -22
  262. package/dist/cjs/components/pagination/tokens.js +0 -103
  263. package/dist/cjs/components/picker/WheelPicker.js +0 -492
  264. package/dist/cjs/components/picker/utils.js +0 -138
  265. package/dist/cjs/components/pull-refresh/PullRefresh.js +0 -378
  266. package/dist/cjs/components/pull-refresh/index.js +0 -16
  267. package/dist/cjs/components/pull-refresh/tokens.js +0 -22
  268. package/dist/cjs/components/rate/Rate.js +0 -269
  269. package/dist/cjs/components/rate/index.js +0 -15
  270. package/dist/cjs/components/rate/tokens.js +0 -60
  271. package/dist/cjs/components/slider/utils.js +0 -60
  272. package/dist/cjs/components/swiper/useSwiperWeb.js +0 -209
  273. package/dist/cjs/components/swiper/utils.js +0 -49
  274. package/dist/cjs/components/tabs/TabPane.js +0 -9
  275. package/dist/cjs/components/tabs/useTabsAnimation.js +0 -74
  276. package/dist/cjs/components/tabs/useTabsScroll.js +0 -133
  277. package/dist/cjs/components/tabs/utils.js +0 -34
  278. package/dist/cjs/components/types.js +0 -1
  279. package/dist/cjs/components/uploader/Uploader.js +0 -557
  280. package/dist/cjs/components/uploader/index.js +0 -22
  281. package/dist/cjs/components/uploader/tokens.js +0 -58
  282. package/dist/cjs/components/uploader/utils.js +0 -72
  283. package/dist/cjs/hooks/usePresenceAnimation.js +0 -70
  284. package/dist/es/components/area/utils.js +0 -67
  285. package/dist/es/components/cascader/utils.js +0 -13
  286. package/dist/es/components/config-provider/locale/base.js +0 -74
  287. package/dist/es/components/dropdown-menu/DropdownItem.js +0 -269
  288. package/dist/es/components/dropdown-menu/DropdownMenu.js +0 -320
  289. package/dist/es/components/dropdown-menu/DropdownMenuContext.js +0 -7
  290. package/dist/es/components/dropdown-menu/index.js +0 -7
  291. package/dist/es/components/dropdown-menu/tokens.js +0 -61
  292. package/dist/es/components/field/utils.js +0 -17
  293. package/dist/es/components/index-bar/IndexAnchor.js +0 -55
  294. package/dist/es/components/index-bar/IndexBar.js +0 -417
  295. package/dist/es/components/index-bar/index.js +0 -7
  296. package/dist/es/components/index-bar/tokens.js +0 -39
  297. package/dist/es/components/list/List.js +0 -145
  298. package/dist/es/components/list/index.js +0 -2
  299. package/dist/es/components/list/tokens.js +0 -32
  300. package/dist/es/components/notify/defaults.js +0 -9
  301. package/dist/es/components/pagination/Pagination.js +0 -141
  302. package/dist/es/components/pagination/index.js +0 -4
  303. package/dist/es/components/pagination/tokens.js +0 -91
  304. package/dist/es/components/picker/WheelPicker.js +0 -473
  305. package/dist/es/components/picker/utils.js +0 -127
  306. package/dist/es/components/pull-refresh/PullRefresh.js +0 -359
  307. package/dist/es/components/pull-refresh/index.js +0 -3
  308. package/dist/es/components/pull-refresh/tokens.js +0 -16
  309. package/dist/es/components/rate/Rate.js +0 -250
  310. package/dist/es/components/rate/index.js +0 -3
  311. package/dist/es/components/rate/tokens.js +0 -53
  312. package/dist/es/components/slider/utils.js +0 -49
  313. package/dist/es/components/swiper/useSwiperWeb.js +0 -190
  314. package/dist/es/components/swiper/utils.js +0 -37
  315. package/dist/es/components/tabs/TabPane.js +0 -3
  316. package/dist/es/components/tabs/useTabsAnimation.js +0 -55
  317. package/dist/es/components/tabs/useTabsScroll.js +0 -114
  318. package/dist/es/components/tabs/utils.js +0 -19
  319. package/dist/es/components/types.js +0 -1
  320. package/dist/es/components/uploader/Uploader.js +0 -537
  321. package/dist/es/components/uploader/index.js +0 -4
  322. package/dist/es/components/uploader/tokens.js +0 -52
  323. package/dist/es/components/uploader/utils.js +0 -60
  324. package/dist/es/hooks/usePresenceAnimation.js +0 -51
  325. package/dist/types/components/area/utils.d.ts +0 -2
  326. package/dist/types/components/cascader/utils.d.ts +0 -6
  327. package/dist/types/components/config-provider/locale/base.d.ts +0 -74
  328. package/dist/types/components/dropdown-menu/DropdownItem.d.ts +0 -4
  329. package/dist/types/components/dropdown-menu/DropdownMenu.d.ts +0 -4
  330. package/dist/types/components/dropdown-menu/DropdownMenuContext.d.ts +0 -17
  331. package/dist/types/components/dropdown-menu/index.d.ts +0 -8
  332. package/dist/types/components/dropdown-menu/tokens.d.ts +0 -52
  333. package/dist/types/components/field/utils.d.ts +0 -4
  334. package/dist/types/components/index-bar/IndexAnchor.d.ts +0 -4
  335. package/dist/types/components/index-bar/IndexBar.d.ts +0 -4
  336. package/dist/types/components/index-bar/index.d.ts +0 -9
  337. package/dist/types/components/index-bar/tokens.d.ts +0 -31
  338. package/dist/types/components/list/List.d.ts +0 -4
  339. package/dist/types/components/list/index.d.ts +0 -3
  340. package/dist/types/components/list/tokens.d.ts +0 -4
  341. package/dist/types/components/notify/defaults.d.ts +0 -10
  342. package/dist/types/components/pagination/Pagination.d.ts +0 -5
  343. package/dist/types/components/pagination/index.d.ts +0 -5
  344. package/dist/types/components/pagination/tokens.d.ts +0 -2
  345. package/dist/types/components/picker/WheelPicker.d.ts +0 -21
  346. package/dist/types/components/picker/utils.d.ts +0 -17
  347. package/dist/types/components/pull-refresh/PullRefresh.d.ts +0 -5
  348. package/dist/types/components/pull-refresh/index.d.ts +0 -4
  349. package/dist/types/components/pull-refresh/tokens.d.ts +0 -10
  350. package/dist/types/components/rate/Rate.d.ts +0 -4
  351. package/dist/types/components/rate/index.d.ts +0 -4
  352. package/dist/types/components/rate/tokens.d.ts +0 -4
  353. package/dist/types/components/slider/utils.d.ts +0 -42
  354. package/dist/types/components/swiper/useSwiperWeb.d.ts +0 -41
  355. package/dist/types/components/swiper/utils.d.ts +0 -17
  356. package/dist/types/components/tabs/TabPane.d.ts +0 -4
  357. package/dist/types/components/tabs/useTabsAnimation.d.ts +0 -30
  358. package/dist/types/components/tabs/useTabsScroll.d.ts +0 -23
  359. package/dist/types/components/tabs/utils.d.ts +0 -5
  360. package/dist/types/components/types.d.ts +0 -59
  361. package/dist/types/components/uploader/Uploader.d.ts +0 -4
  362. package/dist/types/components/uploader/index.d.ts +0 -5
  363. package/dist/types/components/uploader/tokens.d.ts +0 -42
  364. package/dist/types/components/uploader/utils.d.ts +0 -11
  365. package/dist/types/hooks/usePresenceAnimation.d.ts +0 -20
  366. /package/dist/cjs/{components → hooks}/overlay/OverlayStackStore.js +0 -0
  367. /package/dist/cjs/{components → hooks}/overlay/useOverlayStack.js +0 -0
  368. /package/dist/es/{components → hooks}/overlay/OverlayStackStore.js +0 -0
  369. /package/dist/es/{components → hooks}/overlay/useOverlayStack.js +0 -0
  370. /package/dist/types/{components → hooks}/overlay/OverlayStackStore.d.ts +0 -0
  371. /package/dist/types/{components → hooks}/overlay/useOverlayStack.d.ts +0 -0
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useWatch = exports.default = exports.FormSubscribe = void 0;
6
+ exports.useWatch = exports.default = exports.FormSubscribe = exports.FormContext = void 0;
7
7
  function _react() {
8
8
  const data = _interopRequireWildcard(require("react"));
9
9
  _react = function () {
@@ -18,12 +18,13 @@ function _reactNative() {
18
18
  };
19
19
  return data;
20
20
  }
21
+ var _utils = require("../../utils");
21
22
  var _promise = require("../../utils/promise");
22
23
  var _validate = require("../../utils/validate");
23
- var _FormContext = require("./FormContext");
24
- var _utils = require("./utils");
24
+ var _utils2 = require("./utils");
25
25
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
26
26
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
27
+ const FormContext = exports.FormContext = /*#__PURE__*/_react().default.createContext(null);
27
28
  const runRuleValidation = (rule, value, values) => {
28
29
  const message = rule.message ?? '表单验证未通过';
29
30
  const empty = value == null || value === '' || Array.isArray(value) && value.length === 0;
@@ -43,21 +44,6 @@ const runRuleValidation = (rule, value, values) => {
43
44
  const result = rule.validator(value, values);
44
45
  return (0, _promise.isPromiseLike)(result) ? result.then(handle) : handle(result);
45
46
  };
46
- const shallowEqual = (prev, next) => {
47
- if (prev === next) return true;
48
- if (!prev || !next) return false;
49
- const prevKeys = Object.keys(prev);
50
- const nextKeys = Object.keys(next);
51
- if (prevKeys.length !== nextKeys.length) {
52
- return false;
53
- }
54
- for (const key of prevKeys) {
55
- if (prev[key] !== next[key]) {
56
- return false;
57
- }
58
- }
59
- return true;
60
- };
61
47
  const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
62
48
  const {
63
49
  initialValues: initialValuesProp,
@@ -73,55 +59,61 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
73
59
  } = props;
74
60
  const defaultInitialValuesRef = (0, _react().useRef)({});
75
61
  const mergedInitialValues = initialValuesProp ?? defaultInitialValuesRef.current;
76
- const [values, setValues] = (0, _react().useState)(mergedInitialValues);
77
- const [errors, setErrors] = (0, _react().useState)({});
62
+ const [, setFormVersion] = (0, _react().useState)(0);
63
+ const errorsRef = (0, _react().useRef)({});
78
64
  const lastInitialValuesRef = (0, _react().useRef)(mergedInitialValues);
79
65
  const fieldsRef = (0, _react().useRef)({});
80
66
  const dependencyGraphRef = (0, _react().useRef)(new Map());
81
- const valuesRef = (0, _react().useRef)(values);
82
- const errorsRef = (0, _react().useRef)(errors);
67
+ const valuesRef = (0, _react().useRef)(mergedInitialValues);
83
68
  const validationSeqRef = (0, _react().useRef)({});
84
69
  const subscribersRef = (0, _react().useRef)(new Set());
70
+ const notify = (0, _react().useCallback)((changedValues, nextValues) => {
71
+ subscribersRef.current.forEach(listener => listener(changedValues, nextValues));
72
+ }, []);
85
73
  (0, _react().useEffect)(() => {
86
- if (shallowEqual(lastInitialValuesRef.current, mergedInitialValues)) {
74
+ if ((0, _utils.shallowEqualObject)(lastInitialValuesRef.current, mergedInitialValues)) {
87
75
  return;
88
76
  }
89
77
  lastInitialValuesRef.current = mergedInitialValues;
90
78
  valuesRef.current = mergedInitialValues;
91
79
  errorsRef.current = {};
92
- setValues(mergedInitialValues);
93
- setErrors({});
94
- }, [mergedInitialValues]);
80
+ setFormVersion(version => version + 1);
81
+ notify({
82
+ [_utils2.FORM_ALL_FIELDS_KEY]: true
83
+ }, mergedInitialValues);
84
+ }, [mergedInitialValues, notify]);
95
85
  const setFieldErrors = (0, _react().useCallback)((name, nextErrors) => {
96
- const key = (0, _utils.serializeNamePath)(name);
97
- setErrors(prev => {
98
- const prevErrors = prev[key];
99
- if (!nextErrors.length) {
100
- if (!prevErrors) return prev;
101
- const clone = {
102
- ...prev
103
- };
104
- delete clone[key];
105
- errorsRef.current = clone;
106
- return clone;
107
- }
108
- if (prevErrors?.[0] === nextErrors[0] && prevErrors.length === nextErrors.length) {
109
- return prev;
110
- }
86
+ const key = (0, _utils2.serializeNamePath)(name);
87
+ const prevErrors = errorsRef.current[key];
88
+ if (!nextErrors.length) {
89
+ if (!prevErrors) return;
111
90
  const clone = {
112
- ...prev,
113
- [key]: nextErrors
91
+ ...errorsRef.current
114
92
  };
93
+ delete clone[key];
115
94
  errorsRef.current = clone;
116
- return clone;
117
- });
118
- }, []);
95
+ notify({
96
+ [key]: (0, _utils2.getValueByName)(valuesRef.current, name)
97
+ }, valuesRef.current);
98
+ return;
99
+ }
100
+ if (prevErrors?.[0] === nextErrors[0] && prevErrors.length === nextErrors.length) {
101
+ return;
102
+ }
103
+ errorsRef.current = {
104
+ ...errorsRef.current,
105
+ [key]: nextErrors
106
+ };
107
+ notify({
108
+ [key]: (0, _utils2.getValueByName)(valuesRef.current, name)
109
+ }, valuesRef.current);
110
+ }, [notify]);
119
111
  const registerField = (0, _react().useCallback)((name, options) => {
120
- const key = (0, _utils.serializeNamePath)(name);
112
+ const key = (0, _utils2.serializeNamePath)(name);
121
113
  const prev = fieldsRef.current[key];
122
114
  if (prev?.dependencies?.length) {
123
115
  for (const dep of prev.dependencies) {
124
- const depKey = (0, _utils.serializeNamePath)(dep);
116
+ const depKey = (0, _utils2.serializeNamePath)(dep);
125
117
  const set = dependencyGraphRef.current.get(depKey);
126
118
  if (!set) continue;
127
119
  set.delete(key);
@@ -134,7 +126,7 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
134
126
  };
135
127
  if (options.dependencies?.length) {
136
128
  for (const dep of options.dependencies) {
137
- const depKey = (0, _utils.serializeNamePath)(dep);
129
+ const depKey = (0, _utils2.serializeNamePath)(dep);
138
130
  const set = dependencyGraphRef.current.get(depKey);
139
131
  if (set) {
140
132
  set.add(key);
@@ -144,18 +136,17 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
144
136
  }
145
137
  }
146
138
  if (options.initialValue !== undefined) {
147
- const existsInInitial = (0, _utils.getValueByName)(lastInitialValuesRef.current, name);
139
+ const existsInInitial = (0, _utils2.getValueByName)(lastInitialValuesRef.current, name);
148
140
  if (existsInInitial === undefined) {
149
- lastInitialValuesRef.current = (0, _utils.setValueByName)(lastInitialValuesRef.current, name, options.initialValue);
141
+ lastInitialValuesRef.current = (0, _utils2.setValueByName)(lastInitialValuesRef.current, name, options.initialValue);
150
142
  }
151
- const existsInState = (0, _utils.getValueByName)(valuesRef.current, name);
143
+ const existsInState = (0, _utils2.getValueByName)(valuesRef.current, name);
152
144
  if (existsInState === undefined) {
153
- setValues(prev => {
154
- if ((0, _utils.getValueByName)(prev, name) !== undefined) return prev;
155
- const next = (0, _utils.setValueByName)(prev, name, options.initialValue);
156
- valuesRef.current = next;
157
- return next;
158
- });
145
+ const next = (0, _utils2.setValueByName)(valuesRef.current, name, options.initialValue);
146
+ valuesRef.current = next;
147
+ notify({
148
+ [key]: options.initialValue
149
+ }, next);
159
150
  }
160
151
  }
161
152
  return () => {
@@ -163,7 +154,7 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
163
154
  delete fieldsRef.current[key];
164
155
  if (current?.dependencies?.length) {
165
156
  for (const dep of current.dependencies) {
166
- const depKey = (0, _utils.serializeNamePath)(dep);
157
+ const depKey = (0, _utils2.serializeNamePath)(dep);
167
158
  const set = dependencyGraphRef.current.get(depKey);
168
159
  if (!set) continue;
169
160
  set.delete(key);
@@ -173,11 +164,8 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
173
164
  setFieldErrors(name, []);
174
165
  };
175
166
  }, [setFieldErrors]);
176
- const notify = (0, _react().useCallback)((changedValues, nextValues) => {
177
- subscribersRef.current.forEach(listener => listener(changedValues, nextValues));
178
- }, []);
179
167
  const runFieldValidation = (0, _react().useCallback)(async (name, trigger, valueOverride, valuesOverride) => {
180
- const key = (0, _utils.serializeNamePath)(name);
168
+ const key = (0, _utils2.serializeNamePath)(name);
181
169
  const validationSeq = (validationSeqRef.current[key] ?? 0) + 1;
182
170
  validationSeqRef.current[key] = validationSeq;
183
171
  const fieldOptions = fieldsRef.current[key];
@@ -188,14 +176,14 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
188
176
  }
189
177
  let activeRules = trigger ? fieldRules.filter(rule => {
190
178
  const ruleTrigger = rule.validateTrigger ?? fieldOptions.validateTrigger;
191
- return !ruleTrigger || (0, _utils.normalizeTrigger)(ruleTrigger).includes(trigger);
179
+ return !ruleTrigger || (0, _utils2.normalizeTrigger)(ruleTrigger).includes(trigger);
192
180
  }) : fieldRules;
193
181
  if (!activeRules.length) {
194
182
  if (!errorsRef.current[key]?.length) return true;
195
183
  activeRules = fieldRules;
196
184
  }
197
185
  const currentValues = valuesOverride ?? valuesRef.current;
198
- const value = valueOverride ?? (0, _utils.getValueByName)(currentValues, name);
186
+ const value = valueOverride ?? (0, _utils2.getValueByName)(currentValues, name);
199
187
  for (const rule of activeRules) {
200
188
  const result = runRuleValidation(rule, value, currentValues);
201
189
  const error = (0, _promise.isPromiseLike)(result) ? await result : result;
@@ -223,27 +211,25 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
223
211
  return valuesRef.current;
224
212
  }, [runFieldValidation]);
225
213
  const setFieldValue = (0, _react().useCallback)((name, value, trigger) => {
226
- const nameKey = (0, _utils.serializeNamePath)(name);
227
- setValues(prev => {
228
- const prevValue = (0, _utils.getValueByName)(prev, name);
229
- if (prevValue === value) return prev;
230
- const next = (0, _utils.setValueByName)(prev, name, value);
231
- valuesRef.current = next;
232
- onValuesChange?.(next, nameKey, value);
233
- runFieldValidation(name, trigger, value, next);
234
- const dependents = dependencyGraphRef.current.get(nameKey);
235
- if (dependents?.size) {
236
- for (const dependentKey of dependents) {
237
- const meta = fieldsRef.current[dependentKey];
238
- if (!meta) continue;
239
- runFieldValidation(meta.name, trigger, (0, _utils.getValueByName)(next, meta.name), next);
240
- }
214
+ const nameKey = (0, _utils2.serializeNamePath)(name);
215
+ const prev = valuesRef.current;
216
+ const prevValue = (0, _utils2.getValueByName)(prev, name);
217
+ if (prevValue === value) return;
218
+ const next = (0, _utils2.setValueByName)(prev, name, value);
219
+ valuesRef.current = next;
220
+ onValuesChange?.(next, nameKey, value);
221
+ runFieldValidation(name, trigger, value, next);
222
+ const dependents = dependencyGraphRef.current.get(nameKey);
223
+ if (dependents?.size) {
224
+ for (const dependentKey of dependents) {
225
+ const meta = fieldsRef.current[dependentKey];
226
+ if (!meta) continue;
227
+ runFieldValidation(meta.name, trigger, (0, _utils2.getValueByName)(next, meta.name), next);
241
228
  }
242
- notify({
243
- [nameKey]: value
244
- }, next);
245
- return next;
246
- });
229
+ }
230
+ notify({
231
+ [nameKey]: value
232
+ }, next);
247
233
  }, [notify, onValuesChange, runFieldValidation]);
248
234
  const formApi = {
249
235
  submit: async () => {
@@ -256,60 +242,57 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
256
242
  }
257
243
  },
258
244
  getFieldsValue: () => valuesRef.current,
259
- setFieldsValue: next => {
260
- setValues(prev => {
261
- let merged = prev;
262
- const changed = {};
263
- Object.keys(next).forEach(key => {
264
- const newVal = next[key];
265
- if ((0, _utils.getValueByName)(merged, key) === newVal) return;
266
- changed[key] = newVal;
267
- merged = (0, _utils.setValueByName)(merged, key, newVal);
268
- onValuesChange?.(merged, key, newVal);
245
+ setFieldsValue: (next, options) => {
246
+ const shouldValidate = options?.validate ?? false;
247
+ const prev = valuesRef.current;
248
+ let merged = prev;
249
+ const changed = {};
250
+ Object.keys(next).forEach(key => {
251
+ const newVal = next[key];
252
+ if ((0, _utils2.getValueByName)(merged, key) === newVal) return;
253
+ changed[key] = newVal;
254
+ merged = (0, _utils2.setValueByName)(merged, key, newVal);
255
+ onValuesChange?.(merged, key, newVal);
256
+ if (shouldValidate) {
269
257
  runFieldValidation(key, undefined, newVal, merged);
270
258
  const dependents = dependencyGraphRef.current.get(key);
271
259
  if (dependents?.size) {
272
260
  for (const dependentKey of dependents) {
273
261
  const meta = fieldsRef.current[dependentKey];
274
262
  if (!meta) continue;
275
- runFieldValidation(meta.name, undefined, (0, _utils.getValueByName)(merged, meta.name), merged);
263
+ runFieldValidation(meta.name, undefined, (0, _utils2.getValueByName)(merged, meta.name), merged);
276
264
  }
277
265
  }
278
- });
279
- if (merged === prev) return prev;
280
- valuesRef.current = merged;
281
- notify(changed, merged);
282
- return merged;
266
+ }
283
267
  });
268
+ if (merged === prev) return;
269
+ valuesRef.current = merged;
270
+ notify(changed, merged);
284
271
  },
285
272
  resetFields: () => {
286
273
  let next = lastInitialValuesRef.current;
287
274
  Object.values(fieldsRef.current).forEach(meta => {
288
275
  if (meta.initialValue === undefined) return;
289
- if ((0, _utils.getValueByName)(next, meta.name) !== undefined) return;
290
- next = (0, _utils.setValueByName)(next, meta.name, meta.initialValue);
276
+ if ((0, _utils2.getValueByName)(next, meta.name) !== undefined) return;
277
+ next = (0, _utils2.setValueByName)(next, meta.name, meta.initialValue);
291
278
  });
292
279
  valuesRef.current = next;
293
280
  errorsRef.current = {};
294
- setValues(next);
295
- setErrors({});
296
- notify(next, next);
281
+ notify({
282
+ [_utils2.FORM_ALL_FIELDS_KEY]: true
283
+ }, next);
297
284
  },
298
285
  validateFields,
299
- getFieldError: name => errorsRef.current[(0, _utils.serializeNamePath)(name)] ?? []
286
+ getFieldError: name => errorsRef.current[(0, _utils2.serializeNamePath)(name)] ?? []
300
287
  };
301
288
  (0, _react().useImperativeHandle)(ref, () => formApi, [formApi]);
302
- const getFieldError = (0, _react().useCallback)(name => errors[(0, _utils.serializeNamePath)(name)], [errors]);
303
- const getFieldValue = (0, _react().useCallback)(name => (0, _utils.getValueByName)(values, name), [values]);
304
- const contextValidateField = (0, _react().useCallback)((name, trigger) => runFieldValidation(name, trigger), [runFieldValidation]);
305
289
  const contextValue = {
306
- values,
307
- getFieldValue,
290
+ getFieldValue: name => (0, _utils2.getValueByName)(valuesRef.current, name),
308
291
  setFieldValue,
309
292
  registerField,
310
- getFieldError,
311
- validateField: contextValidateField,
312
- getFieldsValue: () => values,
293
+ getFieldError: name => errorsRef.current[(0, _utils2.serializeNamePath)(name)],
294
+ validateField: (name, trigger) => runFieldValidation(name, trigger),
295
+ getFieldsValue: () => valuesRef.current,
313
296
  subscribe: listener => {
314
297
  subscribersRef.current.add(listener);
315
298
  return () => subscribersRef.current.delete(listener);
@@ -319,7 +302,7 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
319
302
  labelWidth,
320
303
  showValidateMessage
321
304
  };
322
- return /*#__PURE__*/_react().default.createElement(_FormContext.FormContext.Provider, {
305
+ return /*#__PURE__*/_react().default.createElement(FormContext.Provider, {
323
306
  value: contextValue
324
307
  }, /*#__PURE__*/_react().default.createElement(_reactNative().View, _extends({
325
308
  style: style
@@ -327,25 +310,32 @@ const InternalForm = /*#__PURE__*/_react().default.forwardRef((props, ref) => {
327
310
  });
328
311
  InternalForm.displayName = 'Form';
329
312
  const useWatch = (name, formRef) => {
330
- const context = (0, _react().useContext)(_FormContext.FormContext);
313
+ const context = (0, _react().useContext)(FormContext);
331
314
  const names = name === undefined ? undefined : !Array.isArray(name) ? [name] : name.length && (0, _validate.isText)(name[0]) ? [name] : name;
332
315
  const getSnapshot = (0, _react().useCallback)(allValues => {
333
316
  const source = allValues ?? context?.getFieldsValue?.() ?? formRef?.current?.getFieldsValue?.() ?? {};
334
317
  if (!names) return source;
335
- if (names.length === 1) return (0, _utils.getValueByName)(source, names[0]);
318
+ if (names.length === 1) return (0, _utils2.getValueByName)(source, names[0]);
336
319
  const picked = {};
337
- for (const key of names) picked[(0, _utils.serializeNamePath)(key)] = (0, _utils.getValueByName)(source, key);
320
+ for (const key of names) picked[(0, _utils2.serializeNamePath)(key)] = (0, _utils2.getValueByName)(source, key);
338
321
  return picked;
339
322
  }, [context, formRef, names]);
340
323
  const [value, setValue] = (0, _react().useState)(() => getSnapshot());
341
324
  (0, _react().useEffect)(() => {
342
325
  if (!context?.subscribe) return undefined;
343
326
  return context.subscribe((changed, all) => {
344
- if (!names || names.some(key => (0, _utils.serializeNamePath)(key) in changed)) {
327
+ if (_utils2.FORM_ALL_FIELDS_KEY in changed) {
328
+ setValue(getSnapshot(all));
329
+ return;
330
+ }
331
+ if (!names || names.some(key => (0, _utils2.serializeNamePath)(key) in changed)) {
345
332
  setValue(getSnapshot(all));
346
333
  }
347
334
  });
348
335
  }, [context, getSnapshot, names]);
336
+ (0, _react().useEffect)(() => {
337
+ setValue(getSnapshot());
338
+ }, [getSnapshot]);
349
339
  return value;
350
340
  };
351
341
  exports.useWatch = useWatch;
@@ -353,12 +343,12 @@ const FormSubscribe = ({
353
343
  to,
354
344
  children
355
345
  }) => {
356
- const context = (0, _react().useContext)(_FormContext.FormContext);
346
+ const context = (0, _react().useContext)(FormContext);
357
347
  const [changed, setChanged] = (0, _react().useState)({});
358
348
  (0, _react().useEffect)(() => {
359
349
  if (!context?.subscribe) return undefined;
360
350
  return context.subscribe(next => {
361
- if (to && !Object.keys(next).some(key => to.includes(key))) return;
351
+ if (to && !(_utils2.FORM_ALL_FIELDS_KEY in next) && !Object.keys(next).some(key => to.includes(key))) return;
362
352
  setChanged(next);
363
353
  });
364
354
  }, [context, to]);
@@ -3,13 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.FormContext = void 0;
7
- function _react() {
8
- const data = _interopRequireDefault(require("react"));
9
- _react = function () {
10
- return data;
11
- };
12
- return data;
13
- }
14
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
- const FormContext = exports.FormContext = /*#__PURE__*/_react().default.createContext(null);
6
+ Object.defineProperty(exports, "FormContext", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Form.FormContext;
10
+ }
11
+ });
12
+ var _Form = require("./Form");
@@ -46,11 +46,37 @@ const FormItem = ({
46
46
  return /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, children);
47
47
  }
48
48
  const normalizedRules = rules ?? EMPTY_RULES;
49
- const prevValuesRef = (0, _react().useRef)(context.values);
49
+ const prevValuesRef = (0, _react().useRef)(context.getFieldsValue());
50
+ const [, forceUpdate] = (0, _react().useState)(0);
51
+ const nameKey = name ? (0, _utils2.serializeNamePath)(name) : undefined;
52
+ const subscribeAll = renderProps && !nameKey && !shouldUpdate;
50
53
  (0, _react().useEffect)(() => {
51
- prevValuesRef.current = context.values;
52
- }, [context.values]);
53
- const shouldRender = !shouldUpdate || shouldUpdate(prevValuesRef.current, context.values);
54
+ if (!context?.subscribe) return undefined;
55
+ return context.subscribe((changed, all) => {
56
+ if (_utils2.FORM_ALL_FIELDS_KEY in changed) {
57
+ forceUpdate(version => version + 1);
58
+ return;
59
+ }
60
+ if (subscribeAll) {
61
+ forceUpdate(version => version + 1);
62
+ return;
63
+ }
64
+ if (shouldUpdate) {
65
+ if (shouldUpdate(prevValuesRef.current, all)) {
66
+ forceUpdate(version => version + 1);
67
+ }
68
+ return;
69
+ }
70
+ if (nameKey && nameKey in changed) {
71
+ forceUpdate(version => version + 1);
72
+ }
73
+ });
74
+ }, [context, nameKey, shouldUpdate, subscribeAll]);
75
+ const currentValues = context.getFieldsValue();
76
+ (0, _react().useEffect)(() => {
77
+ prevValuesRef.current = currentValues;
78
+ }, [currentValues]);
79
+ const shouldRender = !shouldUpdate || shouldUpdate(prevValuesRef.current, currentValues);
54
80
  (0, _react().useEffect)(() => {
55
81
  if (!name) return undefined;
56
82
  return context.registerField(name, {
@@ -21,9 +21,15 @@ const FormList = ({
21
21
  }) => {
22
22
  const context = (0, _react().useContext)(_FormContext.FormContext);
23
23
  const keyRef = (0, _react().useRef)(0);
24
+ const nameKey = (0, _utils.serializeNamePath)(name);
25
+ const [listValue, setListValue] = (0, _react().useState)(() => {
26
+ if (!context) return [];
27
+ const current = (0, _utils.getValueByName)(context.getFieldsValue(), name);
28
+ return Array.isArray(current) ? current : [];
29
+ });
24
30
  const ensureInitial = (0, _react().useCallback)(() => {
25
31
  if (!context) return;
26
- const current = (0, _utils.getValueByName)(context.values, name);
32
+ const current = (0, _utils.getValueByName)(context.getFieldsValue(), name);
27
33
  if (current === undefined && initialValue !== undefined) {
28
34
  context.setFieldValue(name, initialValue);
29
35
  }
@@ -31,11 +37,18 @@ const FormList = ({
31
37
  (0, _react().useEffect)(() => {
32
38
  ensureInitial();
33
39
  }, [ensureInitial]);
40
+ (0, _react().useEffect)(() => {
41
+ if (!context?.subscribe) return undefined;
42
+ return context.subscribe((changed, all) => {
43
+ if (_utils.FORM_ALL_FIELDS_KEY in changed || nameKey in changed) {
44
+ const nextRaw = (0, _utils.getValueByName)(all, name);
45
+ setListValue(Array.isArray(nextRaw) ? nextRaw : []);
46
+ }
47
+ });
48
+ }, [context, name, nameKey]);
34
49
  if (!context) {
35
50
  return null;
36
51
  }
37
- const listValueRaw = (0, _utils.getValueByName)(context.values, name);
38
- const listValue = Array.isArray(listValueRaw) ? listValueRaw : [];
39
52
  const fields = listValue.map((_, index) => ({
40
53
  name: index,
41
54
  key: keyRef.current + index,
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useFormTokens = void 0;
7
+ var _designSystem = require("../../design-system");
8
+ const createFormTokens = _foundations => {
9
+ return {};
10
+ };
11
+ const useFormTokens = exports.useFormTokens = (0, _designSystem.createComponentTokensHook)('form', createFormTokens);
@@ -3,10 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.toNamePath = exports.setValueByName = exports.serializeNamePath = exports.normalizeTrigger = exports.getValueByName = void 0;
6
+ exports.toNamePath = exports.setValueByName = exports.serializeNamePath = exports.normalizeTrigger = exports.getValueByName = exports.FORM_ALL_FIELDS_KEY = void 0;
7
7
  var _utils = require("../../utils");
8
8
  const normalizeTrigger = trigger => trigger ? Array.isArray(trigger) ? trigger : [trigger] : [];
9
9
  exports.normalizeTrigger = normalizeTrigger;
10
+ const FORM_ALL_FIELDS_KEY = exports.FORM_ALL_FIELDS_KEY = '__form_all__';
10
11
  const toNamePath = name => {
11
12
  if (name === undefined || name === null) return [];
12
13
  if (Array.isArray(name)) return name;