react-native-system-ui 0.0.6 → 1.0.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 (366) hide show
  1. package/README.md +53 -30
  2. package/dist/cjs/components/action-sheet/ActionSheet.js +97 -105
  3. package/dist/cjs/components/action-sheet/tokens.js +16 -27
  4. package/dist/cjs/components/area/Area.js +54 -67
  5. package/dist/cjs/components/area/tokens.js +6 -3
  6. package/dist/cjs/components/avatar/Avatar.js +25 -23
  7. package/dist/cjs/components/badge/Badge.js +31 -31
  8. package/dist/cjs/components/badge/tokens.js +6 -8
  9. package/dist/cjs/components/button/Button.js +115 -151
  10. package/dist/cjs/components/button/ButtonGroup.js +8 -42
  11. package/dist/cjs/components/button/tokens.js +1 -8
  12. package/dist/cjs/components/calendar/Calendar.js +212 -223
  13. package/dist/cjs/components/calendar/tokens.js +3 -3
  14. package/dist/cjs/components/cascader/Cascader.js +177 -180
  15. package/dist/cjs/components/cascader/tokens.js +2 -2
  16. package/dist/cjs/components/cascader/useCascaderExtend.js +25 -29
  17. package/dist/cjs/components/cell/Cell.js +70 -83
  18. package/dist/cjs/components/cell/CellGroup.js +16 -29
  19. package/dist/cjs/components/checkbox/Checkbox.js +139 -132
  20. package/dist/cjs/components/checkbox/CheckboxGroup.js +4 -35
  21. package/dist/cjs/components/checkbox/tokens.js +7 -10
  22. package/dist/cjs/components/circle/Circle.js +25 -24
  23. package/dist/cjs/components/collapse/Collapse.js +75 -91
  24. package/dist/cjs/components/config-provider/ConfigProvider.js +16 -3
  25. package/dist/cjs/components/config-provider/DirectionContext.js +15 -0
  26. package/dist/cjs/components/config-provider/index.js +7 -0
  27. package/dist/cjs/components/config-provider/locale/en-US.js +32 -0
  28. package/dist/cjs/components/config-provider/locale/zh-CN.js +32 -0
  29. package/dist/cjs/components/config-provider/useDirection.js +16 -0
  30. package/dist/cjs/components/count-down/CountDown.js +20 -15
  31. package/dist/cjs/components/datetime-picker/DatetimePicker.js +61 -84
  32. package/dist/cjs/components/datetime-picker/tokens.js +14 -3
  33. package/dist/cjs/components/dialog/Dialog.js +153 -121
  34. package/dist/cjs/components/dialog/imperative.js +17 -30
  35. package/dist/cjs/components/divider/Divider.js +26 -28
  36. package/dist/cjs/components/empty/Empty.js +35 -39
  37. package/dist/cjs/components/error-boundary/ErrorBoundary.js +73 -0
  38. package/dist/cjs/components/error-boundary/index.js +19 -0
  39. package/dist/cjs/components/field/Field.js +109 -106
  40. package/dist/cjs/components/flex/Flex.js +18 -18
  41. package/dist/cjs/components/flex/FlexItem.js +26 -27
  42. package/dist/cjs/components/form/Form.js +142 -161
  43. package/dist/cjs/components/form/FormItem.js +69 -97
  44. package/dist/cjs/components/form/FormList.js +49 -37
  45. package/dist/cjs/components/form/tokens.js +6 -3
  46. package/dist/cjs/components/form/utils.js +15 -34
  47. package/dist/cjs/components/grid/Grid.js +30 -29
  48. package/dist/cjs/components/grid/GridItem.js +84 -85
  49. package/dist/cjs/components/image/Image.js +55 -59
  50. package/dist/cjs/components/image/tokens.js +2 -2
  51. package/dist/cjs/components/image-preview/ImagePreview.js +124 -112
  52. package/dist/cjs/components/image-preview/imperative.js +4 -13
  53. package/dist/cjs/components/index.js +13 -0
  54. package/dist/cjs/components/input/Input.js +30 -22
  55. package/dist/cjs/components/loading/Loading.js +14 -15
  56. package/dist/cjs/components/nav-bar/NavBar.js +68 -83
  57. package/dist/cjs/components/nav-bar/tokens.js +1 -9
  58. package/dist/cjs/components/notice-bar/NoticeBar.js +74 -77
  59. package/dist/cjs/components/notify/Notify.js +88 -84
  60. package/dist/cjs/components/notify/imperative.js +20 -43
  61. package/dist/cjs/components/notify/tokens.js +1 -11
  62. package/dist/cjs/components/number-keyboard/NumberKeyboard.js +187 -209
  63. package/dist/cjs/components/overlay/Overlay.js +37 -52
  64. package/dist/cjs/components/overlay/tokens.js +5 -3
  65. package/dist/cjs/components/password-input/PasswordInput.js +98 -79
  66. package/dist/cjs/components/picker/Picker.js +440 -421
  67. package/dist/cjs/components/picker/tokens.js +1 -1
  68. package/dist/cjs/components/popup/Popup.js +263 -293
  69. package/dist/cjs/components/portal/Portal.js +12 -29
  70. package/dist/cjs/components/portal/PortalHost.js +151 -234
  71. package/dist/cjs/components/progress/Progress.js +51 -48
  72. package/dist/cjs/components/radio/Radio.js +45 -42
  73. package/dist/cjs/components/radio/RadioGroup.js +8 -40
  74. package/dist/cjs/components/radio/tokens.js +7 -10
  75. package/dist/cjs/components/safe-area-view/SafeAreaView.js +22 -26
  76. package/dist/cjs/components/search/Search.js +51 -43
  77. package/dist/cjs/components/selector/Selector.js +14 -13
  78. package/dist/cjs/components/share-sheet/ShareSheet.js +160 -161
  79. package/dist/cjs/components/sidebar/Sidebar.js +39 -45
  80. package/dist/cjs/components/sidebar/SidebarContext.js +1 -2
  81. package/dist/cjs/components/sidebar/SidebarItem.js +13 -16
  82. package/dist/cjs/components/sidebar/tokens.js +1 -3
  83. package/dist/cjs/components/skeleton/Skeleton.js +30 -37
  84. package/dist/cjs/components/skeleton/tokens.js +1 -2
  85. package/dist/cjs/components/slider/Slider.js +156 -135
  86. package/dist/cjs/components/space/Space.js +46 -69
  87. package/dist/cjs/components/stepper/Stepper.js +177 -155
  88. package/dist/cjs/components/swiper/Swiper.js +251 -253
  89. package/dist/cjs/components/swiper/SwiperPagIndicator.js +25 -27
  90. package/dist/cjs/components/swiper/tokens.js +10 -3
  91. package/dist/cjs/components/switch/Switch.js +13 -15
  92. package/dist/cjs/components/tabbar/Tabbar.js +35 -27
  93. package/dist/cjs/components/tabbar/TabbarContext.js +1 -2
  94. package/dist/cjs/components/tabbar/TabbarItem.js +65 -68
  95. package/dist/cjs/components/tabs/Tabs.js +286 -313
  96. package/dist/cjs/components/tag/Tag.js +46 -37
  97. package/dist/cjs/components/toast/Toast.js +90 -90
  98. package/dist/cjs/components/toast/imperative.js +16 -41
  99. package/dist/cjs/components/typography/Typography.js +3 -5
  100. package/dist/cjs/components/water-mark/WaterMark.js +31 -29
  101. package/dist/cjs/design-system/ThemeProvider.js +5 -11
  102. package/dist/cjs/design-system/createComponentTokensHook.js +11 -13
  103. package/dist/cjs/design-system/presets.js +2 -3
  104. package/dist/cjs/design-system/tokens.js +2 -11
  105. package/dist/cjs/hooks/animation/index.js +25 -0
  106. package/dist/cjs/hooks/animation/useAnimatedTransition.js +72 -0
  107. package/dist/cjs/hooks/animation/useReducedMotion.js +75 -0
  108. package/dist/cjs/hooks/aria/useAriaListBox.js +8 -16
  109. package/dist/cjs/hooks/aria/useAriaOverlay.js +3 -3
  110. package/dist/cjs/hooks/aria/useAriaPress.js +8 -21
  111. package/dist/cjs/hooks/aria/useAriaToggle.js +3 -3
  112. package/dist/cjs/hooks/gesture/useGestureScroll.js +60 -61
  113. package/dist/cjs/hooks/index.js +12 -0
  114. package/dist/cjs/hooks/overlay/OverlayStackStore.js +49 -69
  115. package/dist/cjs/hooks/overlay/useOverlayStack.js +13 -19
  116. package/dist/cjs/hooks/useControllableValue.js +10 -21
  117. package/dist/cjs/hooks/useCountDown.js +14 -22
  118. package/dist/cjs/hooks/useHairline.js +17 -29
  119. package/dist/cjs/hooks/useSafeAreaPadding.js +1 -4
  120. package/dist/cjs/index.js +67 -1
  121. package/dist/cjs/platform/animation.js +10 -2
  122. package/dist/cjs/platform/measure.js +18 -36
  123. package/dist/cjs/utils/color.js +21 -35
  124. package/dist/cjs/utils/compare.js +7 -12
  125. package/dist/cjs/utils/createPlatformShadow.js +28 -39
  126. package/dist/cjs/utils/date.js +20 -50
  127. package/dist/cjs/utils/deepMerge.js +16 -26
  128. package/dist/cjs/utils/hairline.js +74 -71
  129. package/dist/cjs/utils/index.js +22 -0
  130. package/dist/cjs/utils/number.js +21 -29
  131. package/dist/cjs/utils/render.js +27 -0
  132. package/dist/cjs/utils/rtl.js +25 -0
  133. package/dist/cjs/utils/string.js +8 -25
  134. package/dist/es/components/action-sheet/ActionSheet.js +99 -107
  135. package/dist/es/components/action-sheet/tokens.js +16 -27
  136. package/dist/es/components/area/Area.js +55 -68
  137. package/dist/es/components/area/tokens.js +6 -3
  138. package/dist/es/components/avatar/Avatar.js +25 -23
  139. package/dist/es/components/avatar/index.js +1 -2
  140. package/dist/es/components/badge/Badge.js +33 -33
  141. package/dist/es/components/badge/tokens.js +6 -8
  142. package/dist/es/components/button/Button.js +116 -152
  143. package/dist/es/components/button/ButtonGroup.js +9 -43
  144. package/dist/es/components/button/tokens.js +2 -3
  145. package/dist/es/components/calendar/Calendar.js +214 -225
  146. package/dist/es/components/calendar/tokens.js +3 -3
  147. package/dist/es/components/cascader/Cascader.js +180 -183
  148. package/dist/es/components/cascader/tokens.js +2 -2
  149. package/dist/es/components/cascader/useCascaderExtend.js +25 -29
  150. package/dist/es/components/cell/Cell.js +71 -84
  151. package/dist/es/components/cell/CellGroup.js +16 -28
  152. package/dist/es/components/checkbox/Checkbox.js +140 -133
  153. package/dist/es/components/checkbox/CheckboxGroup.js +5 -36
  154. package/dist/es/components/checkbox/tokens.js +7 -10
  155. package/dist/es/components/circle/Circle.js +25 -23
  156. package/dist/es/components/collapse/Collapse.js +77 -92
  157. package/dist/es/components/config-provider/ConfigProvider.js +10 -3
  158. package/dist/es/components/config-provider/DirectionContext.js +2 -0
  159. package/dist/es/components/config-provider/index.js +1 -0
  160. package/dist/es/components/config-provider/locale/en-US.js +32 -0
  161. package/dist/es/components/config-provider/locale/zh-CN.js +32 -0
  162. package/dist/es/components/config-provider/useDirection.js +3 -0
  163. package/dist/es/components/count-down/CountDown.js +23 -18
  164. package/dist/es/components/datetime-picker/DatetimePicker.js +61 -84
  165. package/dist/es/components/datetime-picker/tokens.js +14 -3
  166. package/dist/es/components/dialog/Dialog.js +154 -121
  167. package/dist/es/components/dialog/imperative.js +17 -30
  168. package/dist/es/components/divider/Divider.js +28 -29
  169. package/dist/es/components/empty/Empty.js +36 -39
  170. package/dist/es/components/error-boundary/ErrorBoundary.js +61 -0
  171. package/dist/es/components/error-boundary/index.js +1 -0
  172. package/dist/es/components/field/Field.js +109 -106
  173. package/dist/es/components/flex/Flex.js +18 -17
  174. package/dist/es/components/flex/FlexItem.js +27 -27
  175. package/dist/es/components/form/Form.js +143 -162
  176. package/dist/es/components/form/FormItem.js +68 -95
  177. package/dist/es/components/form/FormList.js +49 -37
  178. package/dist/es/components/form/tokens.js +6 -3
  179. package/dist/es/components/form/utils.js +15 -34
  180. package/dist/es/components/grid/Grid.js +30 -28
  181. package/dist/es/components/grid/GridItem.js +84 -84
  182. package/dist/es/components/image/Image.js +58 -62
  183. package/dist/es/components/image/tokens.js +2 -2
  184. package/dist/es/components/image-preview/ImagePreview.js +124 -112
  185. package/dist/es/components/image-preview/imperative.js +4 -13
  186. package/dist/es/components/index.js +3 -1
  187. package/dist/es/components/input/Input.js +31 -23
  188. package/dist/es/components/loading/Loading.js +16 -16
  189. package/dist/es/components/nav-bar/NavBar.js +68 -83
  190. package/dist/es/components/nav-bar/tokens.js +1 -3
  191. package/dist/es/components/notice-bar/NoticeBar.js +74 -76
  192. package/dist/es/components/notify/Notify.js +92 -87
  193. package/dist/es/components/notify/imperative.js +21 -44
  194. package/dist/es/components/notify/tokens.js +1 -5
  195. package/dist/es/components/number-keyboard/NumberKeyboard.js +187 -209
  196. package/dist/es/components/overlay/Overlay.js +36 -51
  197. package/dist/es/components/overlay/tokens.js +5 -3
  198. package/dist/es/components/password-input/PasswordInput.js +98 -79
  199. package/dist/es/components/picker/Picker.js +440 -421
  200. package/dist/es/components/picker/tokens.js +1 -1
  201. package/dist/es/components/popup/Popup.js +263 -292
  202. package/dist/es/components/portal/Portal.js +13 -29
  203. package/dist/es/components/portal/PortalHost.js +152 -234
  204. package/dist/es/components/progress/Progress.js +51 -48
  205. package/dist/es/components/radio/Radio.js +47 -44
  206. package/dist/es/components/radio/RadioGroup.js +10 -41
  207. package/dist/es/components/radio/tokens.js +7 -10
  208. package/dist/es/components/safe-area-view/SafeAreaView.js +22 -25
  209. package/dist/es/components/search/Search.js +52 -44
  210. package/dist/es/components/selector/Selector.js +14 -13
  211. package/dist/es/components/share-sheet/ShareSheet.js +162 -163
  212. package/dist/es/components/sidebar/Sidebar.js +41 -47
  213. package/dist/es/components/sidebar/SidebarContext.js +1 -2
  214. package/dist/es/components/sidebar/SidebarItem.js +13 -15
  215. package/dist/es/components/sidebar/tokens.js +1 -3
  216. package/dist/es/components/skeleton/Skeleton.js +30 -37
  217. package/dist/es/components/skeleton/tokens.js +1 -2
  218. package/dist/es/components/slider/Slider.js +156 -134
  219. package/dist/es/components/space/Space.js +48 -71
  220. package/dist/es/components/stepper/Stepper.js +178 -156
  221. package/dist/es/components/swiper/Swiper.js +252 -254
  222. package/dist/es/components/swiper/SwiperPagIndicator.js +25 -27
  223. package/dist/es/components/swiper/tokens.js +10 -3
  224. package/dist/es/components/switch/Switch.js +13 -15
  225. package/dist/es/components/tabbar/Tabbar.js +36 -28
  226. package/dist/es/components/tabbar/TabbarContext.js +1 -2
  227. package/dist/es/components/tabbar/TabbarItem.js +66 -69
  228. package/dist/es/components/tabs/Tabs.js +286 -313
  229. package/dist/es/components/tag/Tag.js +49 -39
  230. package/dist/es/components/toast/Toast.js +93 -91
  231. package/dist/es/components/toast/imperative.js +16 -41
  232. package/dist/es/components/typography/Typography.js +3 -5
  233. package/dist/es/components/water-mark/WaterMark.js +32 -30
  234. package/dist/es/design-system/ThemeProvider.js +5 -11
  235. package/dist/es/design-system/createComponentTokensHook.js +11 -13
  236. package/dist/es/design-system/presets.js +2 -3
  237. package/dist/es/design-system/tokens.js +1 -9
  238. package/dist/es/hooks/animation/index.js +2 -0
  239. package/dist/es/hooks/animation/useAnimatedTransition.js +53 -0
  240. package/dist/es/hooks/animation/useReducedMotion.js +54 -0
  241. package/dist/es/hooks/aria/useAriaListBox.js +8 -16
  242. package/dist/es/hooks/aria/useAriaOverlay.js +3 -3
  243. package/dist/es/hooks/aria/useAriaPress.js +8 -21
  244. package/dist/es/hooks/aria/useAriaToggle.js +3 -3
  245. package/dist/es/hooks/gesture/useGestureScroll.js +60 -61
  246. package/dist/es/hooks/index.js +1 -0
  247. package/dist/es/hooks/overlay/OverlayStackStore.js +49 -69
  248. package/dist/es/hooks/overlay/useOverlayStack.js +13 -19
  249. package/dist/es/hooks/useControllableValue.js +10 -21
  250. package/dist/es/hooks/useCountDown.js +14 -22
  251. package/dist/es/hooks/useHairline.js +16 -28
  252. package/dist/es/hooks/useSafeAreaPadding.js +1 -4
  253. package/dist/es/index.js +8 -1
  254. package/dist/es/platform/animation.js +9 -1
  255. package/dist/es/platform/measure.js +18 -36
  256. package/dist/es/utils/color.js +21 -35
  257. package/dist/es/utils/compare.js +7 -12
  258. package/dist/es/utils/createPlatformShadow.js +28 -39
  259. package/dist/es/utils/date.js +20 -50
  260. package/dist/es/utils/deepMerge.js +16 -26
  261. package/dist/es/utils/hairline.js +73 -65
  262. package/dist/es/utils/index.js +2 -0
  263. package/dist/es/utils/number.js +21 -29
  264. package/dist/es/utils/render.js +7 -0
  265. package/dist/es/utils/rtl.js +17 -0
  266. package/dist/es/utils/string.js +8 -25
  267. package/dist/types/components/action-sheet/ActionSheet.d.ts +1 -1
  268. package/dist/types/components/area/Area.d.ts +1 -1
  269. package/dist/types/components/area/tokens.d.ts +4 -0
  270. package/dist/types/components/avatar/Avatar.d.ts +1 -1
  271. package/dist/types/components/avatar/index.d.ts +1 -2
  272. package/dist/types/components/badge/Badge.d.ts +1 -1
  273. package/dist/types/components/button/Button.d.ts +1 -1
  274. package/dist/types/components/button/index.d.ts +1 -1
  275. package/dist/types/components/calendar/Calendar.d.ts +1 -1
  276. package/dist/types/components/cascader/Cascader.d.ts +1 -1
  277. package/dist/types/components/cell/Cell.d.ts +1 -1
  278. package/dist/types/components/cell/CellGroup.d.ts +1 -1
  279. package/dist/types/components/cell/index.d.ts +2 -2
  280. package/dist/types/components/checkbox/Checkbox.d.ts +1 -1
  281. package/dist/types/components/circle/Circle.d.ts +1 -1
  282. package/dist/types/components/collapse/Collapse.d.ts +1 -2
  283. package/dist/types/components/config-provider/DirectionContext.d.ts +3 -0
  284. package/dist/types/components/config-provider/index.d.ts +2 -1
  285. package/dist/types/components/config-provider/locale/en-US.d.ts +32 -0
  286. package/dist/types/components/config-provider/locale/zh-CN.d.ts +32 -0
  287. package/dist/types/components/config-provider/useDirection.d.ts +1 -0
  288. package/dist/types/components/count-down/CountDown.d.ts +1 -1
  289. package/dist/types/components/datetime-picker/DatetimePicker.d.ts +1 -1
  290. package/dist/types/components/datetime-picker/tokens.d.ts +12 -0
  291. package/dist/types/components/dialog/Dialog.d.ts +1 -1
  292. package/dist/types/components/divider/Divider.d.ts +1 -1
  293. package/dist/types/components/empty/Empty.d.ts +1 -1
  294. package/dist/types/components/error-boundary/ErrorBoundary.d.ts +6 -0
  295. package/dist/types/components/error-boundary/index.d.ts +2 -0
  296. package/dist/types/components/field/Field.d.ts +1 -1
  297. package/dist/types/components/flex/Flex.d.ts +1 -1
  298. package/dist/types/components/flex/FlexItem.d.ts +1 -1
  299. package/dist/types/components/flex/index.d.ts +2 -2
  300. package/dist/types/components/form/Form.d.ts +1 -1
  301. package/dist/types/components/form/FormItem.d.ts +2 -1
  302. package/dist/types/components/form/index.d.ts +2 -2
  303. package/dist/types/components/form/tokens.d.ts +4 -0
  304. package/dist/types/components/grid/Grid.d.ts +1 -1
  305. package/dist/types/components/grid/GridItem.d.ts +1 -1
  306. package/dist/types/components/grid/index.d.ts +2 -2
  307. package/dist/types/components/image/Image.d.ts +1 -1
  308. package/dist/types/components/image-preview/ImagePreview.d.ts +1 -1
  309. package/dist/types/components/index.d.ts +4 -1
  310. package/dist/types/components/input/Input.d.ts +3 -3
  311. package/dist/types/components/loading/Loading.d.ts +1 -1
  312. package/dist/types/components/nav-bar/NavBar.d.ts +1 -1
  313. package/dist/types/components/notice-bar/NoticeBar.d.ts +1 -1
  314. package/dist/types/components/notify/Notify.d.ts +2 -2
  315. package/dist/types/components/notify/index.d.ts +1 -1
  316. package/dist/types/components/overlay/Overlay.d.ts +1 -5
  317. package/dist/types/components/overlay/tokens.d.ts +3 -0
  318. package/dist/types/components/password-input/PasswordInput.d.ts +1 -1
  319. package/dist/types/components/picker/Picker.d.ts +5 -5
  320. package/dist/types/components/popup/Popup.d.ts +3 -42
  321. package/dist/types/components/portal/Portal.d.ts +9 -6
  322. package/dist/types/components/portal/PortalHost.d.ts +1 -1
  323. package/dist/types/components/radio/RadioGroup.d.ts +1 -1
  324. package/dist/types/components/safe-area-view/SafeAreaView.d.ts +1 -1
  325. package/dist/types/components/search/Search.d.ts +1 -1
  326. package/dist/types/components/share-sheet/ShareSheet.d.ts +1 -1
  327. package/dist/types/components/sidebar/Sidebar.d.ts +1 -1
  328. package/dist/types/components/sidebar/SidebarContext.d.ts +1 -1
  329. package/dist/types/components/sidebar/SidebarItem.d.ts +1 -1
  330. package/dist/types/components/sidebar/index.d.ts +2 -2
  331. package/dist/types/components/skeleton/Skeleton.d.ts +1 -1
  332. package/dist/types/components/slider/Slider.d.ts +1 -1
  333. package/dist/types/components/stepper/Stepper.d.ts +1 -1
  334. package/dist/types/components/swiper/Swiper.d.ts +1 -1
  335. package/dist/types/components/swiper/index.d.ts +1 -1
  336. package/dist/types/components/swiper/tokens.d.ts +8 -0
  337. package/dist/types/components/tabbar/Tabbar.d.ts +2 -2
  338. package/dist/types/components/tabbar/TabbarContext.d.ts +1 -1
  339. package/dist/types/components/tabbar/TabbarItem.d.ts +2 -2
  340. package/dist/types/components/tabs/Tabs.d.ts +1 -1
  341. package/dist/types/components/tabs/index.d.ts +1 -1
  342. package/dist/types/components/tag/Tag.d.ts +1 -1
  343. package/dist/types/components/toast/Toast.d.ts +2 -2
  344. package/dist/types/components/toast/index.d.ts +1 -1
  345. package/dist/types/components/water-mark/WaterMark.d.ts +1 -1
  346. package/dist/types/design-system/tokens.d.ts +0 -1
  347. package/dist/types/hooks/animation/index.d.ts +3 -0
  348. package/dist/types/hooks/animation/useAnimatedTransition.d.ts +13 -0
  349. package/dist/types/hooks/animation/useReducedMotion.d.ts +3 -0
  350. package/dist/types/hooks/aria/useAriaOverlay.d.ts +1 -1
  351. package/dist/types/hooks/gesture/useGestureScroll.d.ts +11 -10
  352. package/dist/types/hooks/index.d.ts +1 -0
  353. package/dist/types/hooks/overlay/OverlayStackStore.d.ts +8 -8
  354. package/dist/types/hooks/useHairline.d.ts +1 -1
  355. package/dist/types/index.d.ts +5 -0
  356. package/dist/types/platform/animation.d.ts +8 -0
  357. package/dist/types/platform/measure.d.ts +1 -1
  358. package/dist/types/utils/compare.d.ts +1 -1
  359. package/dist/types/utils/createPlatformShadow.d.ts +2 -2
  360. package/dist/types/utils/date.d.ts +2 -2
  361. package/dist/types/utils/hairline.d.ts +5 -10
  362. package/dist/types/utils/index.d.ts +2 -0
  363. package/dist/types/utils/number.d.ts +2 -2
  364. package/dist/types/utils/render.d.ts +5 -0
  365. package/dist/types/utils/rtl.d.ts +5 -0
  366. package/package.json +10 -3
@@ -1,7 +1,7 @@
1
1
  import React, { type FC } from 'react';
2
2
  import type { TabPaneProps, TabsProps, TabsRef } from './types';
3
3
  declare const TabPane: FC<TabPaneProps>;
4
- declare const TabsWithPane: React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<TabsRef>> & {
4
+ declare const TabsWithPane: React.NamedExoticComponent<TabsProps & React.RefAttributes<TabsRef>> & {
5
5
  TabPane: React.FC<TabPaneProps>;
6
6
  };
7
7
  export { TabPane };
@@ -1,7 +1,7 @@
1
1
  import { TabPane } from './Tabs';
2
2
  export type { TabsProps, TabPaneProps, TabsValue, TabsType, TabsAlign, TabsSwipeableConfig, TabsRef, } from './types';
3
3
  export { useTabsTokens } from './tokens';
4
- declare const Tabs: import("react").ForwardRefExoticComponent<import("./types").TabsProps & import("react").RefAttributes<import("./types").TabsRef>> & {
4
+ declare const Tabs: import("react").NamedExoticComponent<import("./types").TabsProps & import("react").RefAttributes<import("./types").TabsRef>> & {
5
5
  TabPane: import("react").FC<import("./types").TabPaneProps>;
6
6
  } & {
7
7
  TabPane: import("react").FC<import("./types").TabPaneProps>;
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  import type { TagProps } from './types';
3
- export declare const Tag: React.FC<TagProps>;
3
+ export declare const Tag: React.NamedExoticComponent<TagProps>;
@@ -28,6 +28,6 @@ export interface ToastProps {
28
28
  onOpened?: () => void;
29
29
  onClosed?: () => void;
30
30
  }
31
- export declare const ToastContent: React.FC<ToastProps>;
32
- export declare const Toast: React.FC<ToastProps>;
31
+ export declare const ToastContent: React.NamedExoticComponent<ToastProps>;
32
+ export declare const Toast: React.NamedExoticComponent<ToastProps>;
33
33
  export default Toast;
@@ -1,4 +1,4 @@
1
- declare const Toast: import("react").FC<import("./Toast").ToastProps> & {
1
+ declare const Toast: import("react").NamedExoticComponent<import("./Toast").ToastProps> & {
2
2
  show: (options?: import("./imperative").ToastInput) => import("./imperative").ToastReturnType;
3
3
  info: (options?: import("./imperative").ToastInput) => import("./imperative").ToastReturnType;
4
4
  success: (options?: import("./imperative").ToastInput) => import("./imperative").ToastReturnType;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  import type { WaterMarkProps } from './types';
3
- declare const WaterMark: React.FC<WaterMarkProps>;
3
+ declare const WaterMark: React.NamedExoticComponent<WaterMarkProps>;
4
4
  export default WaterMark;
@@ -68,7 +68,6 @@ export interface Foundations {
68
68
  };
69
69
  }
70
70
  export declare const defaultFoundations: Foundations;
71
- export declare const buildFoundations: (overrides?: DeepPartial<Foundations>) => Foundations;
72
71
  export type ThemeTokens = Foundations;
73
72
  export declare const createTokens: (overrides?: DeepPartial<Foundations>) => ThemeTokens;
74
73
  export declare const defaultTokens: Foundations;
@@ -0,0 +1,3 @@
1
+ export { useReducedMotion, getReducedMotion } from './useReducedMotion';
2
+ export { useAnimatedTransition } from './useAnimatedTransition';
3
+ export type { AnimatedTransitionOptions, AnimatedTransitionResult } from './useAnimatedTransition';
@@ -0,0 +1,13 @@
1
+ import { Animated } from 'react-native';
2
+ export interface AnimatedTransitionOptions {
3
+ visible: boolean;
4
+ duration?: number;
5
+ enterEasing?: (v: number) => number;
6
+ exitEasing?: (v: number) => number;
7
+ useNativeDriver?: boolean;
8
+ }
9
+ export interface AnimatedTransitionResult {
10
+ mounted: boolean;
11
+ progress: Animated.Value;
12
+ }
13
+ export declare const useAnimatedTransition: ({ visible, duration, enterEasing, exitEasing, useNativeDriver: driver }: AnimatedTransitionOptions) => AnimatedTransitionResult;
@@ -0,0 +1,3 @@
1
+ export declare const useReducedMotion: () => boolean;
2
+ export declare const getReducedMotion: () => boolean;
3
+ export declare const _resetForTesting: () => void;
@@ -11,4 +11,4 @@ export interface UseAriaOverlayResult {
11
11
  overlayRef: React.RefObject<unknown>;
12
12
  overlayProps: Partial<ViewProps> & Record<string, unknown>;
13
13
  }
14
- export declare const useAriaOverlay: ({ isOpen, onClose, isDismissable, shouldCloseOnInteractOutside, overlayProps: overlayPropOverrides, }: UseAriaOverlayOptions) => UseAriaOverlayResult;
14
+ export declare const useAriaOverlay: ({ isOpen, onClose, isDismissable, shouldCloseOnInteractOutside, overlayProps: overrides }: UseAriaOverlayOptions) => UseAriaOverlayResult;
@@ -2,24 +2,25 @@ import type { NativeScrollEvent, NativeSyntheticEvent } from 'react-native';
2
2
  import { Animated } from 'react-native';
3
3
  export type ScrollAxis = 'x' | 'y';
4
4
  export type ScrollDirection = 'forward' | 'backward' | null;
5
+ type SE = NativeSyntheticEvent<NativeScrollEvent>;
5
6
  export interface UseGestureScrollOptions {
6
7
  axis?: ScrollAxis;
7
8
  scrollEventThrottle?: number;
8
- onScroll?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
9
- onScrollBeginDrag?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
10
- onScrollEndDrag?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
11
- onMomentumScrollBegin?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
12
- onMomentumScrollEnd?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
9
+ onScroll?: (event: SE) => void;
10
+ onScrollBeginDrag?: (event: SE) => void;
11
+ onScrollEndDrag?: (event: SE) => void;
12
+ onMomentumScrollBegin?: (event: SE) => void;
13
+ onMomentumScrollEnd?: (event: SE) => void;
13
14
  }
14
15
  export interface UseGestureScrollResult {
15
16
  scrollValue: Animated.Value;
16
17
  scrollProps: {
17
- onScroll: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
18
+ onScroll: (event: SE) => void;
18
19
  scrollEventThrottle: number;
19
- onScrollBeginDrag?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
20
- onScrollEndDrag?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
21
- onMomentumScrollBegin?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
22
- onMomentumScrollEnd?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
20
+ onScrollBeginDrag?: (event: SE) => void;
21
+ onScrollEndDrag?: (event: SE) => void;
22
+ onMomentumScrollBegin?: (event: SE) => void;
23
+ onMomentumScrollEnd?: (event: SE) => void;
23
24
  };
24
25
  direction: ScrollDirection;
25
26
  isDragging: boolean;
@@ -1,4 +1,5 @@
1
1
  export * from './useSafeAreaPadding';
2
+ export * from './animation';
2
3
  export * from './aria';
3
4
  export * from './gesture';
4
5
  export * from './overlay';
@@ -18,21 +18,21 @@ export interface OverlayStackMountOptions {
18
18
  }
19
19
  type Listener = () => void;
20
20
  export declare class OverlayStackStore {
21
- private readonly baseZIndex;
22
- private readonly zIndexStep;
21
+ private readonly baseZ;
22
+ private readonly zStep;
23
23
  private listeners;
24
24
  private entries;
25
25
  private keySeed;
26
- constructor(baseZIndex?: number, zIndexStep?: number);
27
- subscribe: (listener: Listener) => () => void;
26
+ constructor(baseZ?: number, zStep?: number);
27
+ subscribe: (l: Listener) => () => void;
28
28
  getSnapshot: () => OverlayStackSnapshot;
29
- mount: (options: OverlayStackMountOptions) => OverlayStackEntry;
30
- update: (key: number, options: Partial<OverlayStackMountOptions>) => OverlayStackEntry | undefined;
31
- unmount: (key: number) => void;
32
29
  peek: () => OverlayStackEntry | undefined;
33
30
  size: () => number;
34
31
  getBaseZIndex: () => number;
35
- private resolveZIndex;
32
+ mount: (o: OverlayStackMountOptions) => OverlayStackEntry;
33
+ update: (key: number, o: Partial<OverlayStackMountOptions>) => OverlayStackEntry | undefined;
34
+ unmount: (key: number) => void;
35
+ private resolveZ;
36
36
  private emit;
37
37
  }
38
38
  export declare const overlayStackStore: OverlayStackStore;
@@ -7,4 +7,4 @@ export interface UseHairlineOptions {
7
7
  width: number;
8
8
  defaultPaddingHorizontal?: number;
9
9
  }
10
- export declare const useHairline: ({ show, containerStyle, color, width, defaultPaddingHorizontal, }: UseHairlineOptions) => React.JSX.Element | null;
10
+ export declare const useHairline: ({ show, containerStyle, color, width, defaultPaddingHorizontal }: UseHairlineOptions) => React.JSX.Element | null;
@@ -2,3 +2,8 @@ export * from './components';
2
2
  export * from './design-system';
3
3
  export * from './hooks';
4
4
  export type { DeepPartial, ValueOf } from './types';
5
+ export { flipStyle, rtlRow } from './utils/rtl';
6
+ export { deepMerge } from './utils/deepMerge';
7
+ export { createPlatformShadow } from './utils/createPlatformShadow';
8
+ export { nativeDriverEnabled } from './platform/animation';
9
+ export { isWeb, isIOS, isAndroid } from './platform/runtime';
@@ -1 +1,9 @@
1
1
  export declare const nativeDriverEnabled: boolean;
2
+ export declare const defaultAnimationConfig: {
3
+ useNativeDriver: boolean;
4
+ isInteraction: false;
5
+ };
6
+ export declare const hardwareAccelerationProps: {
7
+ renderToHardwareTextureAndroid: boolean;
8
+ shouldRasterizeIOS: boolean;
9
+ };
@@ -4,4 +4,4 @@ export interface WindowRect {
4
4
  width: number;
5
5
  height: number;
6
6
  }
7
- export declare const measureInWindow: (node: unknown, callback: (rect: WindowRect | null) => void) => void;
7
+ export declare const measureInWindow: (node: unknown, cb: (rect: WindowRect | null) => void) => void;
@@ -1,2 +1,2 @@
1
1
  export declare const shallowEqualArray: <T>(a?: T[], b?: T[]) => boolean;
2
- export declare const shallowEqualObject: (prev?: Record<string, unknown> | null, next?: Record<string, unknown> | null) => boolean;
2
+ export declare const shallowEqualObject: (a?: Record<string, unknown> | null, b?: Record<string, unknown> | null) => boolean;
@@ -1,4 +1,4 @@
1
- import type { ViewStyle } from 'react-native';
1
+ import { type ViewStyle } from 'react-native';
2
2
  interface ShadowConfig {
3
3
  color: string;
4
4
  opacity: number;
@@ -7,5 +7,5 @@ interface ShadowConfig {
7
7
  offsetX?: number;
8
8
  elevation?: number;
9
9
  }
10
- export declare const createPlatformShadow: (config: ShadowConfig) => ViewStyle;
10
+ export declare const createPlatformShadow: ({ color, opacity, radius, offsetY, offsetX, elevation }: ShadowConfig) => ViewStyle;
11
11
  export default createPlatformShadow;
@@ -1,5 +1,5 @@
1
1
  export declare const padZero: (value: number | string, length?: number) => string;
2
- export declare const times: (count: number, iteratee: (index: number) => string) => string[];
2
+ export declare const times: (count: number, fn: (index: number) => string) => string[];
3
3
  export declare const getTrueValue: (value?: string) => number;
4
4
  export declare const getMonthEndDay: (year: number, month: number) => number;
5
5
  export declare const isValidDate: (value: unknown) => value is Date;
@@ -10,4 +10,4 @@ export interface TimeDuration {
10
10
  seconds: number;
11
11
  milliseconds: number;
12
12
  }
13
- export declare const formatDuration: (format: string, currentTime: TimeDuration) => string;
13
+ export declare const formatDuration: (format: string, time: TimeDuration) => string;
@@ -1,20 +1,15 @@
1
1
  import { type ViewStyle } from 'react-native';
2
2
  export declare const getHairlineWidth: () => number;
3
- export interface HairlineBorderOptions {
3
+ export type HairlinePosition = 'top' | 'right' | 'bottom' | 'left' | 'all';
4
+ export interface HairlineViewOptions {
4
5
  color?: string;
5
- position?: 'top' | 'right' | 'bottom' | 'left' | 'all';
6
+ position?: HairlinePosition;
6
7
  enabled?: boolean;
7
- }
8
- export declare const createHairlineBorder: ({ color, position, enabled, }?: HairlineBorderOptions) => ViewStyle;
9
- export declare const createHairlineBorderTop: (color?: string) => ViewStyle;
10
- export declare const createHairlineBorderRight: (color?: string) => ViewStyle;
11
- export declare const createHairlineBorderBottom: (color?: string) => ViewStyle;
12
- export declare const createHairlineBorderLeft: (color?: string) => ViewStyle;
13
- export interface HairlineViewOptions extends HairlineBorderOptions {
14
8
  left?: number;
15
9
  right?: number;
16
10
  top?: number;
17
11
  bottom?: number;
18
12
  width?: number;
13
+ borderRadius?: number;
19
14
  }
20
- export declare const createHairlineView: ({ left, right, top, bottom, width, color, position, }?: HairlineViewOptions) => ViewStyle;
15
+ export declare const createHairlineView: ({ left, right, top, bottom, width, color, position, enabled, borderRadius }?: HairlineViewOptions) => ViewStyle;
@@ -8,4 +8,6 @@ export * from './hairline';
8
8
  export * from './number';
9
9
  export * from './promise';
10
10
  export * from './string';
11
+ export * from './render';
11
12
  export * from './validate';
13
+ export * from './rtl';
@@ -2,9 +2,9 @@ export declare const clamp: (value: number, min: number, max: number) => number;
2
2
  export declare const clamp01: (value: number) => number;
3
3
  export declare const parseNumberLike: (value: unknown, fallback?: number) => number | undefined;
4
4
  export declare const parseNumber: (value: unknown, fallback?: number) => number;
5
- export declare const parsePercentage: (percentage: unknown) => number;
5
+ export declare const parsePercentage: (value: unknown) => number;
6
6
  export declare const isNumericLike: (value: unknown) => value is number | string;
7
- export declare const addNumber: (num1: number, num2: number) => number;
7
+ export declare const addNumber: (a: number, b: number) => number;
8
8
  export declare const formatNumber: (value: number, integer: boolean, decimalLength?: number) => number;
9
9
  export declare const numberToString: (value: number | null | undefined, decimalLength?: number) => string;
10
10
  export declare const parseDecimalLength: (value: number | string | undefined) => number | undefined;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { type StyleProp, type TextStyle } from 'react-native';
3
+ export declare const renderTextOrNode: (content: React.ReactNode, textStyle?: StyleProp<TextStyle>, textProps?: {
4
+ numberOfLines?: number;
5
+ }) => React.ReactNode;
@@ -0,0 +1,5 @@
1
+ import type { FlexStyle } from 'react-native';
2
+ type Dir = 'ltr' | 'rtl';
3
+ export declare const flipStyle: <T extends FlexStyle>(style: T, dir: Dir) => T;
4
+ export declare const rtlRow: (dir: Dir) => FlexStyle["flexDirection"];
5
+ export {};
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "react-native-system-ui",
3
- "version": "0.0.6",
3
+ "version": "1.0.0",
4
4
  "description": "面向 React Native 的设计系统级组件库,Tokens + ThemeProvider 主题体系,按需引入、体积小;API 统一可组合、高效可靠,支持可访问性与多端一致。",
5
- "homepage": "https://react-native-system-ui.netlify.app/",
5
+ "homepage": "https://rn-system-ui.netlify.app/",
6
6
  "main": "./dist/cjs/index.js",
7
7
  "module": "./dist/es/index.js",
8
8
  "types": "./dist/types/index.d.ts",
@@ -23,6 +23,8 @@
23
23
  "build:types": "tsc -p tsconfig.types.json",
24
24
  "docs:update-size": "node scripts/generate-docs-size-data.mjs",
25
25
  "docs:build": "npm run build && npm run docs:update-size && NODE_OPTIONS=\"--require ./scripts/polyfills.js\" rndoc docs-build",
26
+ "git:push:gitee": "git remote set-url --push origin https://gitee.com/ws18250840411/react-native-system-ui.git",
27
+ "git:push:github": "git remote set-url --push origin https://github.com/ws18250840411/react-native-system-ui.git",
26
28
  "preview": "NODE_OPTIONS=\"--require ./scripts/polyfills.js\" rndoc preview",
27
29
  "rn:demos:sync": "node scripts/generate-rn-demo-registry.js",
28
30
  "rn:demos:watch": "node scripts/generate-rn-demo-registry.js --watch",
@@ -81,7 +83,6 @@
81
83
  "@react-stately/toggle": "^3.9.3",
82
84
  "@react-types/checkbox": "^3.10.2",
83
85
  "@react-types/listbox": "^3.7.4",
84
- "react-native-image-picker": "^8.2.1",
85
86
  "react-native-system-icon": "^1.0.2"
86
87
  },
87
88
  "react-native": "./dist/es/index.js",
@@ -423,6 +424,12 @@
423
424
  "import": "./dist/es/components/safe-area-view/index.js",
424
425
  "require": "./dist/cjs/components/safe-area-view/index.js"
425
426
  },
427
+ "./error-boundary": {
428
+ "react-native": "./dist/es/components/error-boundary/index.js",
429
+ "types": "./dist/types/components/error-boundary/index.d.ts",
430
+ "import": "./dist/es/components/error-boundary/index.js",
431
+ "require": "./dist/cjs/components/error-boundary/index.js"
432
+ },
426
433
  "./package.json": "./package.json"
427
434
  }
428
435
  }