react-native-system-ui 0.0.7 → 1.0.1

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 (411) hide show
  1. package/README.md +46 -31
  2. package/dist/cjs/components/action-sheet/ActionSheet.js +128 -142
  3. package/dist/cjs/components/action-sheet/tokens.js +16 -27
  4. package/dist/cjs/components/area/Area.js +57 -70
  5. package/dist/cjs/components/area/tokens.js +6 -3
  6. package/dist/cjs/components/avatar/Avatar.js +38 -36
  7. package/dist/cjs/components/badge/Badge.js +68 -73
  8. package/dist/cjs/components/badge/tokens.js +6 -8
  9. package/dist/cjs/components/button/Button.js +135 -176
  10. package/dist/cjs/components/button/ButtonGroup.js +11 -45
  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 +257 -267
  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 +94 -104
  18. package/dist/cjs/components/cell/CellGroup.js +37 -49
  19. package/dist/cjs/components/checkbox/Checkbox.js +140 -132
  20. package/dist/cjs/components/checkbox/CheckboxGroup.js +21 -51
  21. package/dist/cjs/components/checkbox/tokens.js +7 -10
  22. package/dist/cjs/components/circle/Circle.js +87 -74
  23. package/dist/cjs/components/collapse/Collapse.js +88 -104
  24. package/dist/cjs/components/config-provider/ConfigProvider.js +17 -4
  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 +32 -27
  31. package/dist/cjs/components/datetime-picker/DatetimePicker.js +80 -104
  32. package/dist/cjs/components/datetime-picker/tokens.js +14 -3
  33. package/dist/cjs/components/dialog/Dialog.js +159 -121
  34. package/dist/cjs/components/dialog/imperative.js +24 -43
  35. package/dist/cjs/components/dialog/tokens.js +1 -0
  36. package/dist/cjs/components/divider/Divider.js +57 -62
  37. package/dist/cjs/components/empty/Empty.js +53 -52
  38. package/dist/cjs/components/error-boundary/ErrorBoundary.js +74 -0
  39. package/dist/cjs/components/error-boundary/index.js +19 -0
  40. package/dist/cjs/components/field/Field.js +109 -106
  41. package/dist/cjs/components/flex/Flex.js +32 -32
  42. package/dist/cjs/components/flex/FlexItem.js +27 -27
  43. package/dist/cjs/components/form/Form.js +178 -196
  44. package/dist/cjs/components/form/FormItem.js +87 -109
  45. package/dist/cjs/components/form/FormList.js +57 -45
  46. package/dist/cjs/components/form/tokens.js +6 -3
  47. package/dist/cjs/components/form/utils.js +15 -34
  48. package/dist/cjs/components/grid/Grid.js +44 -43
  49. package/dist/cjs/components/grid/GridItem.js +92 -86
  50. package/dist/cjs/components/image/Image.js +76 -79
  51. package/dist/cjs/components/image/tokens.js +5 -3
  52. package/dist/cjs/components/image-preview/ImagePreview.js +125 -113
  53. package/dist/cjs/components/image-preview/imperative.js +4 -13
  54. package/dist/cjs/components/image-preview/tokens.js +3 -1
  55. package/dist/cjs/components/index.js +13 -0
  56. package/dist/cjs/components/input/Input.js +40 -35
  57. package/dist/cjs/components/loading/Loading.js +32 -33
  58. package/dist/cjs/components/nav-bar/NavBar.js +88 -100
  59. package/dist/cjs/components/nav-bar/tokens.js +4 -10
  60. package/dist/cjs/components/notice-bar/NoticeBar.js +81 -80
  61. package/dist/cjs/components/notice-bar/tokens.js +3 -1
  62. package/dist/cjs/components/notify/Notify.js +89 -84
  63. package/dist/cjs/components/notify/imperative.js +32 -55
  64. package/dist/cjs/components/notify/tokens.js +2 -11
  65. package/dist/cjs/components/number-keyboard/NumberKeyboard.js +277 -283
  66. package/dist/cjs/components/number-keyboard/tokens.js +7 -1
  67. package/dist/cjs/components/overlay/Overlay.js +37 -52
  68. package/dist/cjs/components/overlay/tokens.js +5 -3
  69. package/dist/cjs/components/password-input/PasswordInput.js +114 -95
  70. package/dist/cjs/components/picker/Picker.js +465 -454
  71. package/dist/cjs/components/picker/tokens.js +1 -1
  72. package/dist/cjs/components/popup/Popup.js +269 -299
  73. package/dist/cjs/components/popup/tokens.js +1 -0
  74. package/dist/cjs/components/portal/Portal.js +12 -30
  75. package/dist/cjs/components/portal/PortalHost.js +151 -234
  76. package/dist/cjs/components/progress/Progress.js +103 -101
  77. package/dist/cjs/components/progress/tokens.js +1 -0
  78. package/dist/cjs/components/radio/Radio.js +98 -91
  79. package/dist/cjs/components/radio/RadioGroup.js +13 -45
  80. package/dist/cjs/components/radio/tokens.js +7 -10
  81. package/dist/cjs/components/safe-area-view/SafeAreaView.js +22 -26
  82. package/dist/cjs/components/search/Search.js +65 -57
  83. package/dist/cjs/components/selector/Selector.js +21 -27
  84. package/dist/cjs/components/share-sheet/ShareSheet.js +165 -161
  85. package/dist/cjs/components/share-sheet/tokens.js +3 -1
  86. package/dist/cjs/components/sidebar/Sidebar.js +51 -51
  87. package/dist/cjs/components/sidebar/SidebarContext.js +1 -2
  88. package/dist/cjs/components/sidebar/SidebarItem.js +19 -21
  89. package/dist/cjs/components/sidebar/tokens.js +4 -4
  90. package/dist/cjs/components/skeleton/Skeleton.js +71 -77
  91. package/dist/cjs/components/skeleton/tokens.js +1 -2
  92. package/dist/cjs/components/slider/Slider.js +156 -135
  93. package/dist/cjs/components/space/Space.js +57 -76
  94. package/dist/cjs/components/space/tokens.js +7 -1
  95. package/dist/cjs/components/stepper/Stepper.js +182 -158
  96. package/dist/cjs/components/stepper/tokens.js +1 -0
  97. package/dist/cjs/components/swiper/Swiper.js +256 -255
  98. package/dist/cjs/components/swiper/SwiperPagIndicator.js +26 -27
  99. package/dist/cjs/components/swiper/tokens.js +10 -3
  100. package/dist/cjs/components/switch/Switch.js +23 -25
  101. package/dist/cjs/components/tabbar/Tabbar.js +48 -40
  102. package/dist/cjs/components/tabbar/TabbarContext.js +1 -2
  103. package/dist/cjs/components/tabbar/TabbarItem.js +65 -68
  104. package/dist/cjs/components/tabs/Tabs.js +402 -439
  105. package/dist/cjs/components/tabs/tokens.js +3 -1
  106. package/dist/cjs/components/tag/Tag.js +68 -59
  107. package/dist/cjs/components/toast/Toast.js +91 -90
  108. package/dist/cjs/components/toast/imperative.js +16 -41
  109. package/dist/cjs/components/toast/tokens.js +1 -0
  110. package/dist/cjs/components/typography/Typography.js +25 -25
  111. package/dist/cjs/components/water-mark/WaterMark.js +80 -78
  112. package/dist/cjs/design-system/Text.js +38 -0
  113. package/dist/cjs/design-system/ThemeProvider.js +5 -11
  114. package/dist/cjs/design-system/createComponentTokensHook.js +11 -13
  115. package/dist/cjs/design-system/index.js +7 -0
  116. package/dist/cjs/design-system/mergeTokensOverride.js +1 -4
  117. package/dist/cjs/design-system/presets.js +2 -3
  118. package/dist/cjs/design-system/tokens.js +2 -11
  119. package/dist/cjs/hooks/animation/index.js +25 -0
  120. package/dist/cjs/hooks/animation/useAnimatedTransition.js +72 -0
  121. package/dist/cjs/hooks/animation/useReducedMotion.js +75 -0
  122. package/dist/cjs/hooks/aria/useAriaListBox.js +8 -16
  123. package/dist/cjs/hooks/aria/useAriaOverlay.js +3 -3
  124. package/dist/cjs/hooks/aria/useAriaPress.js +8 -21
  125. package/dist/cjs/hooks/aria/useAriaToggle.js +3 -3
  126. package/dist/cjs/hooks/gesture/useGestureScroll.js +60 -61
  127. package/dist/cjs/hooks/index.js +12 -0
  128. package/dist/cjs/hooks/overlay/OverlayStackStore.js +49 -69
  129. package/dist/cjs/hooks/overlay/useOverlayStack.js +13 -19
  130. package/dist/cjs/hooks/useControllableValue.js +13 -24
  131. package/dist/cjs/hooks/useCountDown.js +30 -38
  132. package/dist/cjs/hooks/useHairline.js +17 -29
  133. package/dist/cjs/hooks/useSafeAreaPadding.js +1 -4
  134. package/dist/cjs/index.js +67 -1
  135. package/dist/cjs/platform/animation.js +10 -2
  136. package/dist/cjs/platform/measure.js +21 -37
  137. package/dist/cjs/utils/color.js +20 -39
  138. package/dist/cjs/utils/compare.js +7 -12
  139. package/dist/cjs/utils/createPlatformShadow.js +28 -39
  140. package/dist/cjs/utils/date.js +20 -50
  141. package/dist/cjs/utils/deepMerge.js +16 -26
  142. package/dist/cjs/utils/hairline.js +75 -71
  143. package/dist/cjs/utils/index.js +22 -0
  144. package/dist/cjs/utils/number.js +21 -29
  145. package/dist/cjs/utils/render.js +21 -0
  146. package/dist/cjs/utils/rtl.js +25 -0
  147. package/dist/cjs/utils/string.js +8 -25
  148. package/dist/cjs/utils/validate.js +2 -4
  149. package/dist/es/components/action-sheet/ActionSheet.js +130 -144
  150. package/dist/es/components/action-sheet/tokens.js +16 -27
  151. package/dist/es/components/area/Area.js +58 -71
  152. package/dist/es/components/area/tokens.js +6 -3
  153. package/dist/es/components/avatar/Avatar.js +38 -36
  154. package/dist/es/components/avatar/index.js +1 -2
  155. package/dist/es/components/badge/Badge.js +70 -75
  156. package/dist/es/components/badge/tokens.js +6 -8
  157. package/dist/es/components/button/Button.js +136 -177
  158. package/dist/es/components/button/ButtonGroup.js +12 -46
  159. package/dist/es/components/button/tokens.js +2 -3
  160. package/dist/es/components/calendar/Calendar.js +214 -225
  161. package/dist/es/components/calendar/tokens.js +3 -3
  162. package/dist/es/components/cascader/Cascader.js +260 -270
  163. package/dist/es/components/cascader/tokens.js +2 -2
  164. package/dist/es/components/cascader/useCascaderExtend.js +25 -29
  165. package/dist/es/components/cell/Cell.js +95 -105
  166. package/dist/es/components/cell/CellGroup.js +37 -48
  167. package/dist/es/components/checkbox/Checkbox.js +141 -133
  168. package/dist/es/components/checkbox/CheckboxGroup.js +22 -52
  169. package/dist/es/components/checkbox/tokens.js +7 -10
  170. package/dist/es/components/circle/Circle.js +87 -73
  171. package/dist/es/components/collapse/Collapse.js +90 -105
  172. package/dist/es/components/config-provider/ConfigProvider.js +11 -4
  173. package/dist/es/components/config-provider/DirectionContext.js +2 -0
  174. package/dist/es/components/config-provider/index.js +1 -0
  175. package/dist/es/components/config-provider/locale/en-US.js +32 -0
  176. package/dist/es/components/config-provider/locale/zh-CN.js +32 -0
  177. package/dist/es/components/config-provider/useDirection.js +3 -0
  178. package/dist/es/components/count-down/CountDown.js +35 -30
  179. package/dist/es/components/datetime-picker/DatetimePicker.js +80 -104
  180. package/dist/es/components/datetime-picker/tokens.js +14 -3
  181. package/dist/es/components/dialog/Dialog.js +160 -121
  182. package/dist/es/components/dialog/imperative.js +24 -43
  183. package/dist/es/components/dialog/tokens.js +1 -0
  184. package/dist/es/components/divider/Divider.js +59 -63
  185. package/dist/es/components/empty/Empty.js +54 -52
  186. package/dist/es/components/error-boundary/ErrorBoundary.js +62 -0
  187. package/dist/es/components/error-boundary/index.js +1 -0
  188. package/dist/es/components/field/Field.js +109 -106
  189. package/dist/es/components/flex/Flex.js +32 -31
  190. package/dist/es/components/flex/FlexItem.js +28 -27
  191. package/dist/es/components/form/Form.js +179 -197
  192. package/dist/es/components/form/FormItem.js +86 -107
  193. package/dist/es/components/form/FormList.js +57 -45
  194. package/dist/es/components/form/tokens.js +6 -3
  195. package/dist/es/components/form/utils.js +15 -34
  196. package/dist/es/components/grid/Grid.js +44 -42
  197. package/dist/es/components/grid/GridItem.js +94 -87
  198. package/dist/es/components/image/Image.js +79 -82
  199. package/dist/es/components/image/tokens.js +5 -3
  200. package/dist/es/components/image-preview/ImagePreview.js +125 -113
  201. package/dist/es/components/image-preview/imperative.js +4 -13
  202. package/dist/es/components/image-preview/tokens.js +3 -1
  203. package/dist/es/components/index.js +3 -1
  204. package/dist/es/components/input/Input.js +41 -36
  205. package/dist/es/components/loading/Loading.js +34 -34
  206. package/dist/es/components/nav-bar/NavBar.js +88 -100
  207. package/dist/es/components/nav-bar/tokens.js +4 -4
  208. package/dist/es/components/notice-bar/NoticeBar.js +81 -79
  209. package/dist/es/components/notice-bar/tokens.js +3 -1
  210. package/dist/es/components/notify/Notify.js +93 -87
  211. package/dist/es/components/notify/imperative.js +33 -56
  212. package/dist/es/components/notify/tokens.js +2 -5
  213. package/dist/es/components/number-keyboard/NumberKeyboard.js +277 -283
  214. package/dist/es/components/number-keyboard/tokens.js +7 -1
  215. package/dist/es/components/overlay/Overlay.js +36 -51
  216. package/dist/es/components/overlay/tokens.js +5 -3
  217. package/dist/es/components/password-input/PasswordInput.js +114 -95
  218. package/dist/es/components/picker/Picker.js +465 -454
  219. package/dist/es/components/picker/tokens.js +1 -1
  220. package/dist/es/components/popup/Popup.js +269 -298
  221. package/dist/es/components/popup/tokens.js +1 -0
  222. package/dist/es/components/portal/Portal.js +13 -30
  223. package/dist/es/components/portal/PortalHost.js +152 -234
  224. package/dist/es/components/progress/Progress.js +103 -101
  225. package/dist/es/components/progress/tokens.js +1 -0
  226. package/dist/es/components/radio/Radio.js +100 -93
  227. package/dist/es/components/radio/RadioGroup.js +15 -46
  228. package/dist/es/components/radio/tokens.js +7 -10
  229. package/dist/es/components/safe-area-view/SafeAreaView.js +22 -25
  230. package/dist/es/components/search/Search.js +66 -58
  231. package/dist/es/components/selector/Selector.js +21 -27
  232. package/dist/es/components/share-sheet/ShareSheet.js +167 -163
  233. package/dist/es/components/share-sheet/tokens.js +3 -1
  234. package/dist/es/components/sidebar/Sidebar.js +53 -53
  235. package/dist/es/components/sidebar/SidebarContext.js +1 -2
  236. package/dist/es/components/sidebar/SidebarItem.js +19 -20
  237. package/dist/es/components/sidebar/tokens.js +4 -4
  238. package/dist/es/components/skeleton/Skeleton.js +71 -77
  239. package/dist/es/components/skeleton/tokens.js +1 -2
  240. package/dist/es/components/slider/Slider.js +156 -134
  241. package/dist/es/components/space/Space.js +59 -78
  242. package/dist/es/components/space/tokens.js +7 -1
  243. package/dist/es/components/stepper/Stepper.js +183 -159
  244. package/dist/es/components/stepper/tokens.js +1 -0
  245. package/dist/es/components/swiper/Swiper.js +258 -257
  246. package/dist/es/components/swiper/SwiperPagIndicator.js +26 -27
  247. package/dist/es/components/swiper/tokens.js +10 -3
  248. package/dist/es/components/switch/Switch.js +23 -25
  249. package/dist/es/components/tabbar/Tabbar.js +49 -41
  250. package/dist/es/components/tabbar/TabbarContext.js +1 -2
  251. package/dist/es/components/tabbar/TabbarItem.js +66 -69
  252. package/dist/es/components/tabs/Tabs.js +403 -440
  253. package/dist/es/components/tabs/tokens.js +3 -1
  254. package/dist/es/components/tag/Tag.js +71 -61
  255. package/dist/es/components/toast/Toast.js +94 -91
  256. package/dist/es/components/toast/imperative.js +16 -41
  257. package/dist/es/components/toast/tokens.js +1 -0
  258. package/dist/es/components/typography/Typography.js +25 -25
  259. package/dist/es/components/water-mark/WaterMark.js +81 -79
  260. package/dist/es/design-system/Text.js +19 -0
  261. package/dist/es/design-system/ThemeProvider.js +5 -11
  262. package/dist/es/design-system/createComponentTokensHook.js +11 -13
  263. package/dist/es/design-system/index.js +1 -0
  264. package/dist/es/design-system/mergeTokensOverride.js +1 -4
  265. package/dist/es/design-system/presets.js +2 -3
  266. package/dist/es/design-system/tokens.js +1 -9
  267. package/dist/es/hooks/animation/index.js +2 -0
  268. package/dist/es/hooks/animation/useAnimatedTransition.js +53 -0
  269. package/dist/es/hooks/animation/useReducedMotion.js +54 -0
  270. package/dist/es/hooks/aria/useAriaListBox.js +8 -16
  271. package/dist/es/hooks/aria/useAriaOverlay.js +3 -3
  272. package/dist/es/hooks/aria/useAriaPress.js +8 -21
  273. package/dist/es/hooks/aria/useAriaToggle.js +3 -3
  274. package/dist/es/hooks/gesture/useGestureScroll.js +60 -61
  275. package/dist/es/hooks/index.js +1 -0
  276. package/dist/es/hooks/overlay/OverlayStackStore.js +49 -69
  277. package/dist/es/hooks/overlay/useOverlayStack.js +13 -19
  278. package/dist/es/hooks/useControllableValue.js +13 -24
  279. package/dist/es/hooks/useCountDown.js +30 -38
  280. package/dist/es/hooks/useHairline.js +16 -28
  281. package/dist/es/hooks/useSafeAreaPadding.js +1 -4
  282. package/dist/es/index.js +8 -1
  283. package/dist/es/platform/animation.js +9 -1
  284. package/dist/es/platform/measure.js +21 -37
  285. package/dist/es/utils/color.js +18 -35
  286. package/dist/es/utils/compare.js +7 -12
  287. package/dist/es/utils/createPlatformShadow.js +28 -39
  288. package/dist/es/utils/date.js +20 -50
  289. package/dist/es/utils/deepMerge.js +16 -26
  290. package/dist/es/utils/hairline.js +74 -65
  291. package/dist/es/utils/index.js +2 -0
  292. package/dist/es/utils/number.js +21 -29
  293. package/dist/es/utils/render.js +7 -0
  294. package/dist/es/utils/rtl.js +17 -0
  295. package/dist/es/utils/string.js +8 -25
  296. package/dist/es/utils/validate.js +1 -2
  297. package/dist/types/components/action-sheet/ActionSheet.d.ts +1 -1
  298. package/dist/types/components/area/Area.d.ts +1 -1
  299. package/dist/types/components/area/tokens.d.ts +4 -0
  300. package/dist/types/components/avatar/Avatar.d.ts +1 -1
  301. package/dist/types/components/avatar/index.d.ts +1 -2
  302. package/dist/types/components/badge/Badge.d.ts +1 -1
  303. package/dist/types/components/button/Button.d.ts +1 -1
  304. package/dist/types/components/button/index.d.ts +1 -1
  305. package/dist/types/components/calendar/Calendar.d.ts +1 -1
  306. package/dist/types/components/cascader/Cascader.d.ts +1 -1
  307. package/dist/types/components/cell/Cell.d.ts +1 -1
  308. package/dist/types/components/cell/CellGroup.d.ts +1 -1
  309. package/dist/types/components/cell/index.d.ts +2 -2
  310. package/dist/types/components/checkbox/Checkbox.d.ts +1 -1
  311. package/dist/types/components/circle/Circle.d.ts +1 -1
  312. package/dist/types/components/collapse/Collapse.d.ts +1 -2
  313. package/dist/types/components/config-provider/DirectionContext.d.ts +3 -0
  314. package/dist/types/components/config-provider/index.d.ts +2 -1
  315. package/dist/types/components/config-provider/locale/en-US.d.ts +32 -0
  316. package/dist/types/components/config-provider/locale/zh-CN.d.ts +32 -0
  317. package/dist/types/components/config-provider/useDirection.d.ts +1 -0
  318. package/dist/types/components/count-down/CountDown.d.ts +1 -1
  319. package/dist/types/components/datetime-picker/DatetimePicker.d.ts +1 -1
  320. package/dist/types/components/datetime-picker/tokens.d.ts +12 -0
  321. package/dist/types/components/dialog/Dialog.d.ts +1 -1
  322. package/dist/types/components/dialog/tokens.d.ts +1 -0
  323. package/dist/types/components/divider/Divider.d.ts +1 -1
  324. package/dist/types/components/empty/Empty.d.ts +1 -1
  325. package/dist/types/components/error-boundary/ErrorBoundary.d.ts +6 -0
  326. package/dist/types/components/error-boundary/index.d.ts +2 -0
  327. package/dist/types/components/field/Field.d.ts +1 -1
  328. package/dist/types/components/flex/Flex.d.ts +1 -1
  329. package/dist/types/components/flex/FlexItem.d.ts +1 -1
  330. package/dist/types/components/flex/index.d.ts +2 -2
  331. package/dist/types/components/form/Form.d.ts +1 -1
  332. package/dist/types/components/form/FormItem.d.ts +2 -1
  333. package/dist/types/components/form/index.d.ts +2 -2
  334. package/dist/types/components/form/tokens.d.ts +4 -0
  335. package/dist/types/components/grid/Grid.d.ts +1 -1
  336. package/dist/types/components/grid/GridItem.d.ts +1 -1
  337. package/dist/types/components/grid/index.d.ts +2 -2
  338. package/dist/types/components/image/Image.d.ts +1 -1
  339. package/dist/types/components/image-preview/ImagePreview.d.ts +1 -1
  340. package/dist/types/components/image-preview/tokens.d.ts +1 -0
  341. package/dist/types/components/index.d.ts +4 -1
  342. package/dist/types/components/input/Input.d.ts +3 -3
  343. package/dist/types/components/loading/Loading.d.ts +1 -1
  344. package/dist/types/components/nav-bar/NavBar.d.ts +1 -1
  345. package/dist/types/components/nav-bar/tokens.d.ts +1 -1
  346. package/dist/types/components/notice-bar/NoticeBar.d.ts +1 -1
  347. package/dist/types/components/notice-bar/tokens.d.ts +1 -0
  348. package/dist/types/components/notify/Notify.d.ts +2 -2
  349. package/dist/types/components/notify/index.d.ts +1 -1
  350. package/dist/types/components/number-keyboard/tokens.d.ts +5 -0
  351. package/dist/types/components/overlay/Overlay.d.ts +1 -5
  352. package/dist/types/components/overlay/tokens.d.ts +3 -0
  353. package/dist/types/components/password-input/PasswordInput.d.ts +1 -1
  354. package/dist/types/components/picker/Picker.d.ts +6 -6
  355. package/dist/types/components/popup/Popup.d.ts +3 -42
  356. package/dist/types/components/popup/tokens.d.ts +1 -0
  357. package/dist/types/components/portal/Portal.d.ts +9 -6
  358. package/dist/types/components/portal/PortalHost.d.ts +1 -1
  359. package/dist/types/components/radio/RadioGroup.d.ts +1 -1
  360. package/dist/types/components/safe-area-view/SafeAreaView.d.ts +1 -1
  361. package/dist/types/components/search/Search.d.ts +1 -1
  362. package/dist/types/components/share-sheet/ShareSheet.d.ts +1 -1
  363. package/dist/types/components/share-sheet/tokens.d.ts +1 -0
  364. package/dist/types/components/sidebar/Sidebar.d.ts +1 -1
  365. package/dist/types/components/sidebar/SidebarContext.d.ts +1 -1
  366. package/dist/types/components/sidebar/SidebarItem.d.ts +1 -1
  367. package/dist/types/components/sidebar/index.d.ts +2 -2
  368. package/dist/types/components/skeleton/Skeleton.d.ts +1 -1
  369. package/dist/types/components/slider/Slider.d.ts +1 -1
  370. package/dist/types/components/stepper/Stepper.d.ts +1 -1
  371. package/dist/types/components/stepper/tokens.d.ts +1 -0
  372. package/dist/types/components/swiper/Swiper.d.ts +1 -1
  373. package/dist/types/components/swiper/index.d.ts +1 -1
  374. package/dist/types/components/swiper/tokens.d.ts +8 -0
  375. package/dist/types/components/tabbar/Tabbar.d.ts +2 -2
  376. package/dist/types/components/tabbar/TabbarContext.d.ts +1 -1
  377. package/dist/types/components/tabbar/TabbarItem.d.ts +2 -2
  378. package/dist/types/components/tabs/Tabs.d.ts +1 -1
  379. package/dist/types/components/tabs/index.d.ts +1 -1
  380. package/dist/types/components/tabs/tokens.d.ts +1 -0
  381. package/dist/types/components/tag/Tag.d.ts +1 -1
  382. package/dist/types/components/toast/Toast.d.ts +2 -2
  383. package/dist/types/components/toast/index.d.ts +1 -1
  384. package/dist/types/components/toast/tokens.d.ts +1 -0
  385. package/dist/types/components/water-mark/WaterMark.d.ts +1 -1
  386. package/dist/types/design-system/Text.d.ts +3 -0
  387. package/dist/types/design-system/index.d.ts +1 -0
  388. package/dist/types/design-system/tokens.d.ts +0 -1
  389. package/dist/types/hooks/animation/index.d.ts +3 -0
  390. package/dist/types/hooks/animation/useAnimatedTransition.d.ts +13 -0
  391. package/dist/types/hooks/animation/useReducedMotion.d.ts +3 -0
  392. package/dist/types/hooks/aria/useAriaOverlay.d.ts +1 -1
  393. package/dist/types/hooks/gesture/useGestureScroll.d.ts +11 -10
  394. package/dist/types/hooks/index.d.ts +1 -0
  395. package/dist/types/hooks/overlay/OverlayStackStore.d.ts +8 -8
  396. package/dist/types/hooks/useCountDown.d.ts +1 -1
  397. package/dist/types/hooks/useHairline.d.ts +1 -1
  398. package/dist/types/index.d.ts +5 -0
  399. package/dist/types/platform/animation.d.ts +8 -0
  400. package/dist/types/platform/measure.d.ts +1 -1
  401. package/dist/types/utils/color.d.ts +0 -2
  402. package/dist/types/utils/compare.d.ts +1 -1
  403. package/dist/types/utils/createPlatformShadow.d.ts +2 -2
  404. package/dist/types/utils/date.d.ts +2 -2
  405. package/dist/types/utils/hairline.d.ts +5 -10
  406. package/dist/types/utils/index.d.ts +2 -0
  407. package/dist/types/utils/number.d.ts +2 -2
  408. package/dist/types/utils/render.d.ts +5 -0
  409. package/dist/types/utils/rtl.d.ts +5 -0
  410. package/dist/types/utils/validate.d.ts +0 -1
  411. package/package.json +25 -4
@@ -37,6 +37,7 @@ const createPopupTokens = foundations => {
37
37
  closeIconPadding: spacing.ssm
38
38
  },
39
39
  typography: {
40
+ fontFamily: typography.fontFamily,
40
41
  titleSize: fontSize.md,
41
42
  titleWeight: typography.weight.medium,
42
43
  descriptionSize: fontSize.sm,
@@ -11,52 +11,34 @@ function _react() {
11
11
  };
12
12
  return data;
13
13
  }
14
- var _overlay = _interopRequireDefault(require("../overlay"));
15
14
  var _PortalHost = require("./PortalHost");
16
15
  var _PortalContext = require("./PortalContext");
17
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
16
  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); }
19
- const PortalComponent = /*#__PURE__*/_react().default.forwardRef(({
17
+ const PortalComponentImpl = ({
20
18
  children,
21
19
  isOpen,
22
- visible,
23
- useRNModal,
24
- useRNModalOnAndroid,
25
- isKeyboardDismissable,
26
- animationPreset,
27
- onRequestClose,
28
- style
20
+ visible
29
21
  }, _ref) => {
30
22
  const manager = (0, _react().useContext)(_PortalContext.PortalContext) ?? _PortalHost.portalManager;
31
23
  const keyRef = (0, _react().useRef)(null);
32
- const resolvedOpen = isOpen ?? visible ?? true;
33
- const overlayNode = (0, _react().useMemo)(() => /*#__PURE__*/_react().default.createElement(_overlay.default, {
34
- isOpen: resolvedOpen,
35
- useRNModal: useRNModal,
36
- useRNModalOnAndroid: useRNModalOnAndroid,
37
- isKeyboardDismissable: isKeyboardDismissable,
38
- animationPreset: animationPreset,
39
- onRequestClose: onRequestClose,
40
- style: style
41
- }, children), [animationPreset, children, isKeyboardDismissable, onRequestClose, resolvedOpen, style, useRNModal, useRNModalOnAndroid]);
24
+ const content = isOpen ?? visible ?? true ? children : null;
42
25
  (0, _react().useLayoutEffect)(() => {
43
- if (keyRef.current === null) {
44
- keyRef.current = manager.mount(overlayNode);
45
- } else {
46
- manager.update(keyRef.current, overlayNode);
47
- }
48
- }, [manager, overlayNode]);
26
+ keyRef.current === null ? keyRef.current = manager.mount(content) : manager.update(keyRef.current, content);
27
+ }, [manager, content]);
49
28
  (0, _react().useLayoutEffect)(() => () => {
50
- if (keyRef.current !== null) {
29
+ if (keyRef.current != null) {
51
30
  manager.unmount(keyRef.current);
52
31
  keyRef.current = null;
53
32
  }
54
33
  }, [manager]);
55
34
  return null;
56
- });
57
- const add = (children, key) => _PortalHost.portalManager.mount(children, key);
35
+ };
36
+ const PortalComponentRef = /*#__PURE__*/_react().default.forwardRef(PortalComponentImpl);
37
+ PortalComponentRef.displayName = 'Portal';
38
+ const PortalComponent = /*#__PURE__*/_react().default.memo(PortalComponentRef);
39
+ const add = (content, key) => _PortalHost.portalManager.mount(content, key);
58
40
  const remove = key => _PortalHost.portalManager.unmount(key);
59
- const update = (key, children) => _PortalHost.portalManager.update(key, children);
41
+ const update = (key, content) => _PortalHost.portalManager.update(key, content);
60
42
  const clear = () => _PortalHost.portalStore.clear();
61
43
  const Portal = exports.Portal = Object.assign(PortalComponent, {
62
44
  Host: _PortalHost.PortalHost,
@@ -19,318 +19,235 @@ function _reactNative() {
19
19
  return data;
20
20
  }
21
21
  var _utils = require("../../utils");
22
- var _overlay = require("../overlay");
23
22
  var _PortalContext = require("./PortalContext");
24
23
  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); }
25
- const ADD_EVENT = 'RNSU_PORTAL_ADD';
26
- const UPDATE_EVENT = 'RNSU_PORTAL_UPDATE';
27
- const REMOVE_EVENT = 'RNSU_PORTAL_REMOVE';
28
- const CLEAR_EVENT = 'RNSU_PORTAL_CLEAR';
29
- const TopViewEventEmitter = _reactNative().DeviceEventEmitter || new (_reactNative().NativeEventEmitter)();
30
- const getMaxZIndex = node => {
31
- if (!node) return undefined;
32
- if (Array.isArray(node)) {
33
- let max;
34
- for (const child of node) {
35
- const value = getMaxZIndex(child);
36
- if (!(0, _utils.isNumber)(value)) continue;
37
- max = (0, _utils.isNumber)(max) ? Math.max(max, value) : value;
38
- }
39
- return max;
40
- }
41
- if (! /*#__PURE__*/_react().default.isValidElement(node)) return undefined;
42
- const element = node;
43
- const style = element.props.style;
44
- let max;
45
- if (style && typeof style !== 'function') {
46
- const flattened = typeof style === 'object' && !Array.isArray(style) && style !== null ? style : _reactNative().StyleSheet.flatten(style);
47
- const zIndex = flattened?.zIndex;
48
- if ((0, _utils.isNumber)(zIndex)) {
49
- max = zIndex;
50
- }
51
- }
52
- const childMax = getMaxZIndex(element.props.children);
53
- if (!(0, _utils.isNumber)(childMax)) return max;
54
- if (!(0, _utils.isNumber)(max)) return childMax;
55
- return Math.max(max, childMax);
56
- };
57
- const applyOperation = (manager, operation) => {
58
- if (operation.type === 'mount') {
59
- manager.mount(operation.children, operation.key);
60
- } else if (operation.type === 'update') {
61
- manager.update(operation.key, operation.children);
62
- } else if (operation.type === 'clear') {
63
- manager.clear();
64
- } else {
65
- manager.unmount(operation.key);
66
- }
24
+ const AE = 'RNSU_PORTAL_ADD';
25
+ const UE = 'RNSU_PORTAL_UPDATE';
26
+ const RE = 'RNSU_PORTAL_REMOVE';
27
+ const CE = 'RNSU_PORTAL_CLEAR';
28
+ const TVE = _reactNative().DeviceEventEmitter || new (_reactNative().NativeEventEmitter)();
29
+ const IW = _reactNative().Platform.OS === 'web';
30
+ const ao = (m, o) => {
31
+ if (o.type === 'mount') m.mount(o.children, o.key);else if (o.type === 'update') m.update(o.key, o.children);else if (o.type === 'clear') m.clear();else m.unmount(o.key);
67
32
  };
68
33
  const PortalManagerView = /*#__PURE__*/_react().default.forwardRef((_, ref) => {
69
- const [entries, setEntries] = (0, _react().useState)([]);
70
- const keySeed = (0, _react().useRef)(0);
71
- const mount = (0, _react().useCallback)((children, key) => {
72
- const resolvedKey = key ?? ++keySeed.current;
73
- if ((0, _utils.isNumber)(key) && key >= keySeed.current) {
74
- keySeed.current = key + 1;
75
- }
76
- const entry = {
77
- key: resolvedKey,
78
- children,
79
- zIndex: getMaxZIndex(children)
80
- };
81
- setEntries(prev => {
82
- const index = prev.findIndex(item => item.key === resolvedKey);
83
- if (index === -1) {
84
- return [...prev, entry];
85
- }
86
- return [...prev.slice(0, index), entry, ...prev.slice(index + 1)];
34
+ const [e, setE] = (0, _react().useState)([]);
35
+ const ks = (0, _react().useRef)(0);
36
+ const us = (0, _react().useCallback)(en => {
37
+ setE(p => {
38
+ const i = p.findIndex(it => it.key === en.key);
39
+ return i === -1 ? [...p, en] : [...p.slice(0, i), en, ...p.slice(i + 1)];
87
40
  });
88
- return resolvedKey;
89
41
  }, []);
90
- const update = (0, _react().useCallback)((key, children) => {
91
- setEntries(prev => {
92
- const index = prev.findIndex(item => item.key === key);
93
- const entry = {
94
- key,
95
- children,
96
- zIndex: getMaxZIndex(children)
97
- };
98
- if (index === -1) {
99
- return [...prev, entry];
100
- }
101
- return [...prev.slice(0, index), entry, ...prev.slice(index + 1)];
42
+ const mt = (0, _react().useCallback)((c, k) => {
43
+ const rk = k ?? ++ks.current;
44
+ if ((0, _utils.isNumber)(k) && k >= ks.current) ks.current = k + 1;
45
+ us({
46
+ key: rk,
47
+ children: c
102
48
  });
49
+ return rk;
50
+ }, [us]);
51
+ const up = (0, _react().useCallback)((k, c) => {
52
+ us({
53
+ key: k,
54
+ children: c
55
+ });
56
+ }, [us]);
57
+ const um = (0, _react().useCallback)(k => {
58
+ setE(p => p.filter(it => it.key !== k));
103
59
  }, []);
104
- const unmount = (0, _react().useCallback)(key => {
105
- setEntries(prev => prev.filter(item => item.key !== key));
106
- }, []);
107
- const clear = (0, _react().useCallback)(() => {
108
- setEntries([]);
60
+ const cl = (0, _react().useCallback)(() => {
61
+ setE([]);
109
62
  }, []);
110
63
  _react().default.useImperativeHandle(ref, () => ({
111
- mount,
112
- update,
113
- unmount,
114
- clear
115
- }), [mount, update, unmount, clear]);
116
- if (entries.length === 0) return null;
64
+ mount: mt,
65
+ update: up,
66
+ unmount: um,
67
+ clear: cl
68
+ }), [mt, up, um, cl]);
69
+ if (e.length === 0) return null;
117
70
  return /*#__PURE__*/_react().default.createElement(_reactNative().View, {
118
71
  pointerEvents: "box-none",
119
- style: styles.portalLayer,
72
+ style: S.pl,
120
73
  collapsable: false
121
- }, entries.map(entry => /*#__PURE__*/_react().default.createElement(_reactNative().View, {
122
- key: entry.key,
74
+ }, e.map(en => /*#__PURE__*/_react().default.createElement(_reactNative().View, {
75
+ key: en.key,
123
76
  pointerEvents: "box-none",
124
77
  collapsable: false,
125
- style: [styles.portalEntry, (0, _utils.isNumber)(entry.zIndex) && {
126
- zIndex: entry.zIndex
127
- }]
128
- }, entry.children)));
78
+ style: S.pe
79
+ }, en.children)));
129
80
  });
130
- let activeHostId = 0;
131
- let nextHostId = 1;
132
- let nextGlobalKey = 1;
133
- const globalManager = {
134
- mount: (children, key) => {
135
- if (typeof __DEV__ !== 'undefined' && __DEV__ && activeHostId === 0) {
136
- console.warn('[Portal] 请在根节点挂载 <PortalHost> <ConfigProvider> 以启用静态组件能力。');
137
- }
138
- const resolvedKey = key ?? nextGlobalKey++;
139
- if ((0, _utils.isNumber)(key) && key >= nextGlobalKey) {
140
- nextGlobalKey = key + 1;
141
- }
142
- TopViewEventEmitter.emit(ADD_EVENT, {
143
- key: resolvedKey,
144
- children
81
+ let ah = 0;
82
+ let nh = 1;
83
+ let ngk = 10000;
84
+ const gm = {
85
+ mount: (c, k) => {
86
+ if (typeof __DEV__ !== 'undefined' && __DEV__ && ah === 0) console.warn('[Portal] Please mount <PortalHost> or <ConfigProvider> at the root to enable imperative APIs.');
87
+ const rk = k ?? ngk++;
88
+ if ((0, _utils.isNumber)(k) && k >= ngk) ngk = k + 1;
89
+ TVE.emit(AE, {
90
+ key: rk,
91
+ children: c
145
92
  });
146
- return resolvedKey;
93
+ return rk;
147
94
  },
148
- update: (key, children) => {
149
- TopViewEventEmitter.emit(UPDATE_EVENT, {
150
- key,
151
- children
95
+ update: (k, c) => {
96
+ TVE.emit(UE, {
97
+ key: k,
98
+ children: c
152
99
  });
153
100
  },
154
- unmount: key => {
155
- TopViewEventEmitter.emit(REMOVE_EVENT, {
156
- key
101
+ unmount: k => {
102
+ TVE.emit(RE, {
103
+ key: k
157
104
  });
158
105
  }
159
106
  };
160
- const PortalHost = ({
107
+ const PortalHostImpl = ({
161
108
  children
162
109
  }) => {
163
- const hostIdRef = (0, _react().useRef)(nextHostId++);
164
- const managerRef = (0, _react().useRef)(null);
165
- const queueRef = (0, _react().useRef)([]);
166
- const nextKeyRef = (0, _react().useRef)(1);
167
- const enqueueOrRun = (0, _react().useCallback)(operation => {
168
- const manager = managerRef.current;
169
- if (manager) {
170
- applyOperation(manager, operation);
171
- } else {
172
- queueRef.current.push(operation);
173
- }
110
+ const hir = (0, _react().useRef)(nh++),
111
+ mr = (0, _react().useRef)(null),
112
+ qr = (0, _react().useRef)([]),
113
+ nkr = (0, _react().useRef)(1);
114
+ const eor = (0, _react().useCallback)(o => {
115
+ const m = mr.current;
116
+ if (m) ao(m, o);else qr.current.push(o);
174
117
  }, []);
175
- const scopedManager = (0, _react().useMemo)(() => ({
176
- mount: (children, key) => {
177
- const resolvedKey = key ?? nextKeyRef.current++;
178
- if ((0, _utils.isNumber)(key) && key >= nextKeyRef.current) {
179
- nextKeyRef.current = key + 1;
180
- }
181
- enqueueOrRun({
118
+ const sm = (0, _react().useMemo)(() => ({
119
+ mount: (c, k) => {
120
+ const rk = k ?? nkr.current++;
121
+ if ((0, _utils.isNumber)(k) && k >= nkr.current) nkr.current = k + 1;
122
+ eor({
182
123
  type: 'mount',
183
- key: resolvedKey,
184
- children
124
+ key: rk,
125
+ children: c
185
126
  });
186
- return resolvedKey;
127
+ return rk;
187
128
  },
188
- update: (key, children) => {
189
- enqueueOrRun({
129
+ update: (k, c) => {
130
+ eor({
190
131
  type: 'update',
191
- key,
192
- children
132
+ key: k,
133
+ children: c
193
134
  });
194
135
  },
195
- unmount: key => {
196
- enqueueOrRun({
136
+ unmount: k => {
137
+ eor({
197
138
  type: 'unmount',
198
- key
139
+ key: k
199
140
  });
200
141
  }
201
- }), [enqueueOrRun]);
202
- const handleManagerRef = (0, _react().useCallback)(manager => {
203
- managerRef.current = manager;
204
- if (manager) {
205
- if (queueRef.current.length > 0) {
206
- const pending = queueRef.current.splice(0, queueRef.current.length);
207
- pending.forEach(operation => applyOperation(manager, operation));
208
- }
209
- if (activeHostId === 0 || activeHostId === hostIdRef.current) {
210
- activeHostId = hostIdRef.current;
211
- if (typeof __DEV__ !== 'undefined' && __DEV__) {
212
- console.log('[PortalHost] activeHost', activeHostId);
213
- }
214
- } else if (typeof __DEV__ !== 'undefined' && __DEV__) {
215
- console.warn('[PortalHost] 检测到多个 Portal.Host,静态 API 仅会使用第一个挂载的 Host。建议全局只挂载一个。');
142
+ }), [eor]);
143
+ const hmr = (0, _react().useCallback)(m => {
144
+ mr.current = m;
145
+ if (m) {
146
+ if (qr.current.length > 0) {
147
+ const pd = qr.current.splice(0, qr.current.length);
148
+ pd.forEach(o => ao(m, o));
216
149
  }
150
+ ;
151
+ if (ah === 0 || ah === hir.current) ah = hir.current;else if (typeof __DEV__ !== 'undefined' && __DEV__) console.warn('[PortalHost] Multiple PortalHost instances detected. Imperative APIs will only use the first mounted host.');
217
152
  }
218
153
  }, []);
219
154
  (0, _react().useEffect)(() => () => {
220
- if (activeHostId === hostIdRef.current) {
221
- activeHostId = 0;
222
- queueRef.current = [];
155
+ if (ah === hir.current) {
156
+ ah = 0;
157
+ qr.current = [];
223
158
  portalStore.clear();
224
159
  }
225
160
  }, []);
226
161
  (0, _react().useEffect)(() => {
227
- if (typeof __DEV__ !== 'undefined' && __DEV__) {
228
- console.log('[PortalHost] mounted', {
229
- hostId: hostIdRef.current,
230
- activeHostId
231
- });
232
- }
233
- }, []);
234
- (0, _react().useEffect)(() => {
235
- const handleAdd = ({
236
- key,
237
- children
162
+ const ha = ({
163
+ key: k,
164
+ children: c
238
165
  }) => {
239
- if (activeHostId !== hostIdRef.current) return;
240
- if (typeof __DEV__ !== 'undefined' && __DEV__) {
241
- console.log('[PortalHost] add', key);
242
- }
243
- enqueueOrRun({
166
+ if (ah !== hir.current) return;
167
+ eor({
244
168
  type: 'mount',
245
- key,
246
- children
169
+ key: k,
170
+ children: c
247
171
  });
248
172
  };
249
- const handleUpdate = ({
250
- key,
251
- children
173
+ const hu = ({
174
+ key: k,
175
+ children: c
252
176
  }) => {
253
- if (activeHostId !== hostIdRef.current) return;
254
- if (typeof __DEV__ !== 'undefined' && __DEV__) {
255
- console.log('[PortalHost] update', key);
256
- }
257
- enqueueOrRun({
177
+ if (ah !== hir.current) return;
178
+ eor({
258
179
  type: 'update',
259
- key,
260
- children
180
+ key: k,
181
+ children: c
261
182
  });
262
183
  };
263
- const handleRemove = ({
264
- key
184
+ const hr = ({
185
+ key: k
265
186
  }) => {
266
- if (activeHostId !== hostIdRef.current) return;
267
- if (typeof __DEV__ !== 'undefined' && __DEV__) {
268
- console.log('[PortalHost] remove', key);
269
- }
270
- enqueueOrRun({
187
+ if (ah !== hir.current) return;
188
+ eor({
271
189
  type: 'unmount',
272
- key
190
+ key: k
273
191
  });
274
192
  };
275
- const handleClear = () => {
276
- if (activeHostId !== hostIdRef.current) return;
277
- if (typeof __DEV__ !== 'undefined' && __DEV__) {
278
- console.log('[PortalHost] clear');
279
- }
280
- queueRef.current = [];
281
- enqueueOrRun({
193
+ const hc = () => {
194
+ if (ah !== hir.current) return;
195
+ qr.current = [];
196
+ eor({
282
197
  type: 'clear'
283
198
  });
284
199
  };
285
- const addSub = TopViewEventEmitter.addListener(ADD_EVENT, handleAdd);
286
- const updateSub = TopViewEventEmitter.addListener(UPDATE_EVENT, handleUpdate);
287
- const removeSub = TopViewEventEmitter.addListener(REMOVE_EVENT, handleRemove);
288
- const clearSub = TopViewEventEmitter.addListener(CLEAR_EVENT, handleClear);
200
+ const as = TVE.addListener(AE, ha);
201
+ const us = TVE.addListener(UE, hu);
202
+ const rs = TVE.addListener(RE, hr);
203
+ const cs = TVE.addListener(CE, hc);
289
204
  return () => {
290
- addSub.remove?.();
291
- updateSub.remove?.();
292
- removeSub.remove?.();
293
- clearSub.remove?.();
294
- const emitter = TopViewEventEmitter;
295
- emitter.removeListener?.(ADD_EVENT, handleAdd);
296
- emitter.removeListener?.(UPDATE_EVENT, handleUpdate);
297
- emitter.removeListener?.(REMOVE_EVENT, handleRemove);
298
- emitter.removeListener?.(CLEAR_EVENT, handleClear);
205
+ as.remove();
206
+ us.remove();
207
+ rs.remove();
208
+ cs.remove();
299
209
  };
300
- }, [enqueueOrRun]);
301
- return /*#__PURE__*/_react().default.createElement(_overlay.OverlayProvider, null, /*#__PURE__*/_react().default.createElement(_PortalContext.PortalContext.Provider, {
302
- value: scopedManager
210
+ }, [eor]);
211
+ return /*#__PURE__*/_react().default.createElement(_PortalContext.PortalContext.Provider, {
212
+ value: sm
303
213
  }, /*#__PURE__*/_react().default.createElement(_reactNative().View, {
304
- style: styles.host,
214
+ style: S.h,
305
215
  collapsable: false
306
216
  }, /*#__PURE__*/_react().default.createElement(_reactNative().View, {
307
- style: styles.root,
217
+ style: S.r,
308
218
  collapsable: false,
309
219
  pointerEvents: "box-none"
310
220
  }, children), /*#__PURE__*/_react().default.createElement(PortalManagerView, {
311
- ref: handleManagerRef
312
- }))));
221
+ ref: hmr
222
+ })));
313
223
  };
314
- exports.PortalHost = PortalHost;
315
- const styles = _reactNative().StyleSheet.create({
316
- host: {
224
+ const PortalHost = exports.PortalHost = /*#__PURE__*/_react().default.memo(PortalHostImpl);
225
+ PortalHost.displayName = 'PortalHost';
226
+ const S = _reactNative().StyleSheet.create({
227
+ h: {
317
228
  position: 'relative',
318
229
  flex: 1
319
230
  },
320
- root: {
231
+ r: {
321
232
  flex: 1
322
233
  },
323
- portalLayer: {
234
+ pl: IW ? {
235
+ position: 'fixed',
236
+ top: 0,
237
+ left: 0,
238
+ right: 0,
239
+ bottom: 0
240
+ } : {
324
241
  ..._reactNative().StyleSheet.absoluteFillObject
325
242
  },
326
- portalEntry: {
243
+ pe: {
327
244
  ..._reactNative().StyleSheet.absoluteFillObject
328
245
  }
329
246
  });
330
- const portalManager = exports.portalManager = globalManager;
247
+ const portalManager = exports.portalManager = gm;
331
248
  const portalStore = exports.portalStore = {
332
249
  clear: () => {
333
- TopViewEventEmitter.emit(CLEAR_EVENT);
250
+ TVE.emit(CE);
334
251
  },
335
- hasHosts: () => activeHostId !== 0
252
+ hasHosts: () => ah !== 0
336
253
  };