react-native-system-ui 1.0.4 → 1.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 (220) hide show
  1. package/README.md +23 -23
  2. package/dist/cjs/components/action-sheet/ActionSheet.js +1 -1
  3. package/dist/cjs/components/action-sheet/types.js +1 -0
  4. package/dist/cjs/components/area/types.js +1 -0
  5. package/dist/cjs/components/avatar/types.js +1 -0
  6. package/dist/cjs/components/badge/types.js +1 -0
  7. package/dist/cjs/components/button/types.js +1 -0
  8. package/dist/cjs/components/calendar/types.js +1 -0
  9. package/dist/cjs/components/cascader/types.js +1 -0
  10. package/dist/cjs/components/cell/types.js +1 -0
  11. package/dist/cjs/components/checkbox/Checkbox.js +1 -1
  12. package/dist/cjs/components/checkbox/types.js +1 -0
  13. package/dist/cjs/components/circle/types.js +1 -0
  14. package/dist/cjs/components/collapse/Collapse.js +1 -1
  15. package/dist/cjs/components/collapse/types.js +1 -0
  16. package/dist/cjs/components/config-provider/locale/types.js +1 -0
  17. package/dist/cjs/components/config-provider/types.js +1 -0
  18. package/dist/cjs/components/count-down/types.js +1 -0
  19. package/dist/cjs/components/datetime-picker/types.js +1 -0
  20. package/dist/cjs/components/dialog/Dialog.js +1 -1
  21. package/dist/cjs/components/dialog/types.js +1 -0
  22. package/dist/cjs/components/divider/types.js +1 -0
  23. package/dist/cjs/components/empty/types.js +1 -0
  24. package/dist/cjs/components/error-boundary/types.js +1 -0
  25. package/dist/cjs/components/field/types.js +1 -0
  26. package/dist/cjs/components/flex/Flex.js +1 -1
  27. package/dist/cjs/components/flex/FlexItem.js +1 -1
  28. package/dist/cjs/components/flex/types.js +1 -0
  29. package/dist/cjs/components/form/Form.js +1 -1
  30. package/dist/cjs/components/form/FormItem.js +1 -1
  31. package/dist/cjs/components/form/FormList.js +1 -1
  32. package/dist/cjs/components/form/types.js +1 -0
  33. package/dist/cjs/components/grid/Grid.js +1 -1
  34. package/dist/cjs/components/grid/GridItem.js +1 -1
  35. package/dist/cjs/components/grid/types.js +1 -0
  36. package/dist/cjs/components/image/types.js +1 -0
  37. package/dist/cjs/components/image-preview/ImagePreview.js +1 -1
  38. package/dist/cjs/components/image-preview/types.js +1 -0
  39. package/dist/cjs/components/input/types.js +1 -0
  40. package/dist/cjs/components/loading/types.js +1 -0
  41. package/dist/cjs/components/nav-bar/NavBar.js +1 -1
  42. package/dist/cjs/components/nav-bar/types.js +1 -0
  43. package/dist/cjs/components/notice-bar/NoticeBar.js +1 -1
  44. package/dist/cjs/components/notice-bar/types.js +1 -0
  45. package/dist/cjs/components/notify/types.js +1 -0
  46. package/dist/cjs/components/number-keyboard/types.js +1 -0
  47. package/dist/cjs/components/overlay/types.js +1 -0
  48. package/dist/cjs/components/password-input/types.js +1 -0
  49. package/dist/cjs/components/picker/Picker.js +1 -1
  50. package/dist/cjs/components/picker/types.js +1 -0
  51. package/dist/cjs/components/popup/Popup.js +1 -1
  52. package/dist/cjs/components/popup/types.js +1 -0
  53. package/dist/cjs/components/portal/types.js +1 -0
  54. package/dist/cjs/components/progress/types.js +1 -0
  55. package/dist/cjs/components/radio/types.js +1 -0
  56. package/dist/cjs/components/safe-area-view/types.js +1 -0
  57. package/dist/cjs/components/search/types.js +1 -0
  58. package/dist/cjs/components/selector/Selector.js +1 -1
  59. package/dist/cjs/components/selector/types.js +1 -0
  60. package/dist/cjs/components/share-sheet/ShareSheet.js +1 -1
  61. package/dist/cjs/components/share-sheet/types.js +1 -0
  62. package/dist/cjs/components/sidebar/types.js +1 -0
  63. package/dist/cjs/components/skeleton/types.js +1 -0
  64. package/dist/cjs/components/slider/Slider.js +1 -1
  65. package/dist/cjs/components/slider/types.js +1 -0
  66. package/dist/cjs/components/space/types.js +1 -0
  67. package/dist/cjs/components/stepper/types.js +1 -0
  68. package/dist/cjs/components/swiper/types.js +1 -0
  69. package/dist/cjs/components/switch/types.js +1 -0
  70. package/dist/cjs/components/tabbar/types.js +1 -0
  71. package/dist/cjs/components/tabs/Tabs.js +1 -1
  72. package/dist/cjs/components/tabs/types.js +1 -0
  73. package/dist/cjs/components/tag/types.js +1 -0
  74. package/dist/cjs/components/theme.js +1 -0
  75. package/dist/cjs/components/toast/Toast.js +1 -1
  76. package/dist/cjs/components/toast/types.js +1 -0
  77. package/dist/cjs/components/typography/types.js +1 -0
  78. package/dist/cjs/components/water-mark/types.js +1 -0
  79. package/dist/es/components/action-sheet/ActionSheet.js +1 -1
  80. package/dist/es/components/action-sheet/types.js +1 -0
  81. package/dist/es/components/area/types.js +1 -0
  82. package/dist/es/components/avatar/types.js +1 -0
  83. package/dist/es/components/badge/types.js +1 -0
  84. package/dist/es/components/button/types.js +1 -0
  85. package/dist/es/components/calendar/types.js +1 -0
  86. package/dist/es/components/cascader/types.js +1 -0
  87. package/dist/es/components/cell/types.js +1 -0
  88. package/dist/es/components/checkbox/Checkbox.js +1 -1
  89. package/dist/es/components/checkbox/types.js +1 -0
  90. package/dist/es/components/circle/types.js +1 -0
  91. package/dist/es/components/collapse/Collapse.js +1 -1
  92. package/dist/es/components/collapse/types.js +1 -0
  93. package/dist/es/components/config-provider/locale/types.js +1 -0
  94. package/dist/es/components/config-provider/types.js +1 -0
  95. package/dist/es/components/count-down/types.js +1 -0
  96. package/dist/es/components/datetime-picker/types.js +1 -0
  97. package/dist/es/components/dialog/Dialog.js +1 -1
  98. package/dist/es/components/dialog/types.js +1 -0
  99. package/dist/es/components/divider/types.js +1 -0
  100. package/dist/es/components/empty/types.js +1 -0
  101. package/dist/es/components/error-boundary/types.js +1 -0
  102. package/dist/es/components/field/types.js +1 -0
  103. package/dist/es/components/flex/Flex.js +1 -1
  104. package/dist/es/components/flex/FlexItem.js +1 -1
  105. package/dist/es/components/flex/types.js +1 -0
  106. package/dist/es/components/form/Form.js +1 -1
  107. package/dist/es/components/form/FormItem.js +1 -1
  108. package/dist/es/components/form/FormList.js +1 -1
  109. package/dist/es/components/form/types.js +1 -0
  110. package/dist/es/components/grid/Grid.js +1 -1
  111. package/dist/es/components/grid/GridItem.js +1 -1
  112. package/dist/es/components/grid/types.js +1 -0
  113. package/dist/es/components/image/types.js +1 -0
  114. package/dist/es/components/image-preview/ImagePreview.js +1 -1
  115. package/dist/es/components/image-preview/types.js +1 -0
  116. package/dist/es/components/input/types.js +1 -0
  117. package/dist/es/components/loading/types.js +1 -0
  118. package/dist/es/components/nav-bar/NavBar.js +1 -1
  119. package/dist/es/components/nav-bar/types.js +1 -0
  120. package/dist/es/components/notice-bar/NoticeBar.js +1 -1
  121. package/dist/es/components/notice-bar/types.js +1 -0
  122. package/dist/es/components/notify/types.js +1 -0
  123. package/dist/es/components/number-keyboard/types.js +1 -0
  124. package/dist/es/components/overlay/types.js +1 -0
  125. package/dist/es/components/password-input/types.js +1 -0
  126. package/dist/es/components/picker/Picker.js +1 -1
  127. package/dist/es/components/picker/types.js +1 -0
  128. package/dist/es/components/popup/Popup.js +1 -1
  129. package/dist/es/components/popup/types.js +1 -0
  130. package/dist/es/components/portal/types.js +1 -0
  131. package/dist/es/components/progress/types.js +1 -0
  132. package/dist/es/components/radio/types.js +1 -0
  133. package/dist/es/components/safe-area-view/types.js +1 -0
  134. package/dist/es/components/search/types.js +1 -0
  135. package/dist/es/components/selector/Selector.js +1 -1
  136. package/dist/es/components/selector/types.js +1 -0
  137. package/dist/es/components/share-sheet/ShareSheet.js +1 -1
  138. package/dist/es/components/share-sheet/types.js +1 -0
  139. package/dist/es/components/sidebar/types.js +1 -0
  140. package/dist/es/components/skeleton/types.js +1 -0
  141. package/dist/es/components/slider/Slider.js +1 -1
  142. package/dist/es/components/slider/types.js +1 -0
  143. package/dist/es/components/space/types.js +1 -0
  144. package/dist/es/components/stepper/types.js +1 -0
  145. package/dist/es/components/swiper/types.js +1 -0
  146. package/dist/es/components/switch/types.js +1 -0
  147. package/dist/es/components/tabbar/types.js +1 -0
  148. package/dist/es/components/tabs/Tabs.js +1 -1
  149. package/dist/es/components/tabs/types.js +1 -0
  150. package/dist/es/components/tag/types.js +1 -0
  151. package/dist/es/components/theme.js +1 -0
  152. package/dist/es/components/toast/Toast.js +1 -1
  153. package/dist/es/components/toast/types.js +1 -0
  154. package/dist/es/components/typography/types.js +1 -0
  155. package/dist/es/components/water-mark/types.js +1 -0
  156. package/dist/types/components/action-sheet/types.d.ts +87 -0
  157. package/dist/types/components/area/types.d.ts +20 -0
  158. package/dist/types/components/avatar/types.d.ts +62 -0
  159. package/dist/types/components/badge/types.d.ts +57 -0
  160. package/dist/types/components/button/types.d.ts +109 -0
  161. package/dist/types/components/calendar/types.d.ts +111 -0
  162. package/dist/types/components/cascader/types.d.ts +142 -0
  163. package/dist/types/components/cell/types.d.ts +112 -0
  164. package/dist/types/components/checkbox/types.d.ts +99 -0
  165. package/dist/types/components/circle/types.d.ts +51 -0
  166. package/dist/types/components/collapse/types.d.ts +45 -0
  167. package/dist/types/components/config-provider/locale/types.d.ts +130 -0
  168. package/dist/types/components/config-provider/types.d.ts +10 -0
  169. package/dist/types/components/count-down/types.d.ts +29 -0
  170. package/dist/types/components/datetime-picker/types.d.ts +38 -0
  171. package/dist/types/components/dialog/types.d.ts +70 -0
  172. package/dist/types/components/divider/types.d.ts +48 -0
  173. package/dist/types/components/empty/types.d.ts +44 -0
  174. package/dist/types/components/error-boundary/types.d.ts +18 -0
  175. package/dist/types/components/field/types.d.ts +86 -0
  176. package/dist/types/components/flex/types.d.ts +37 -0
  177. package/dist/types/components/form/Form.d.ts +6 -0
  178. package/dist/types/components/form/types.d.ts +68 -0
  179. package/dist/types/components/grid/Grid.d.ts +1 -0
  180. package/dist/types/components/grid/types.d.ts +77 -0
  181. package/dist/types/components/image/types.d.ts +53 -0
  182. package/dist/types/components/image-preview/types.d.ts +55 -0
  183. package/dist/types/components/input/types.d.ts +42 -0
  184. package/dist/types/components/loading/types.d.ts +32 -0
  185. package/dist/types/components/nav-bar/types.d.ts +67 -0
  186. package/dist/types/components/notice-bar/types.d.ts +26 -0
  187. package/dist/types/components/notify/types.d.ts +64 -0
  188. package/dist/types/components/number-keyboard/types.d.ts +35 -0
  189. package/dist/types/components/overlay/types.d.ts +13 -0
  190. package/dist/types/components/password-input/types.d.ts +35 -0
  191. package/dist/types/components/picker/types.d.ts +73 -0
  192. package/dist/types/components/popup/types.d.ts +41 -0
  193. package/dist/types/components/portal/types.d.ts +1 -0
  194. package/dist/types/components/progress/types.d.ts +51 -0
  195. package/dist/types/components/radio/types.d.ts +95 -0
  196. package/dist/types/components/safe-area-view/types.d.ts +1 -0
  197. package/dist/types/components/search/types.d.ts +28 -0
  198. package/dist/types/components/selector/types.d.ts +74 -0
  199. package/dist/types/components/share-sheet/types.d.ts +26 -0
  200. package/dist/types/components/sidebar/types.d.ts +64 -0
  201. package/dist/types/components/skeleton/types.d.ts +45 -0
  202. package/dist/types/components/slider/types.d.ts +38 -0
  203. package/dist/types/components/space/types.d.ts +39 -0
  204. package/dist/types/components/stepper/types.d.ts +46 -0
  205. package/dist/types/components/swiper/types.d.ts +29 -0
  206. package/dist/types/components/switch/types.d.ts +33 -0
  207. package/dist/types/components/tabbar/types.d.ts +39 -0
  208. package/dist/types/components/tabs/types.d.ts +64 -0
  209. package/dist/types/components/tag/types.d.ts +69 -0
  210. package/dist/types/components/theme.d.ts +112 -0
  211. package/dist/types/components/toast/types.d.ts +1 -0
  212. package/dist/types/components/typography/types.d.ts +66 -0
  213. package/dist/types/components/water-mark/types.d.ts +58 -0
  214. package/package.json +3 -3
  215. package/dist/cjs/components/form/FormContext.js +0 -1
  216. package/dist/cjs/components/form/utils.js +0 -1
  217. package/dist/es/components/form/FormContext.js +0 -1
  218. package/dist/es/components/form/utils.js +0 -1
  219. package/dist/types/components/form/FormContext.d.ts +0 -2
  220. package/dist/types/components/form/utils.d.ts +0 -7
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # react-native-system-ui
2
2
 
3
- 面向 React Native 的高性能设计系统组件库。基于 Design Tokens 驱动主题体系,50+ 组件全量覆盖移动端场景;原生 StyleSheet 零运行时开销,单组件均值 **2.9 KB gzip**;iOS / Android / Web 三端同构,API 一致、行为对齐。
3
+ 面向 React Native 的高性能设计系统组件库。基于 Design Tokens 驱动主题体系,50+ 组件全量覆盖移动端场景;原生 StyleSheet 零运行时开销,单组件均值 **2.7 KB gzip**;iOS / Android / Web 三端同构,API 一致、行为对齐。
4
4
 
5
5
  ## 核心优势
6
6
 
7
- - **极致轻量**:全组件经过逐行精简——冗余 Hook 移除、StyleSheet 合并、计算内联、辅助函数提取;构建产物 esbuild 压缩;按需引入 + Tree Shaking,单组件平均 gzip 仅 **2.9 KB**,最小组件(SafeAreaView)仅 **0.6 KB**。
7
+ - **极致轻量**:全组件经过逐行精简——冗余 Hook 移除、StyleSheet 合并、计算内联、辅助函数提取;构建产物 esbuild 压缩;按需引入 + Tree Shaking,单组件平均 gzip 仅 **2.7 KB**,最小组件(SafeAreaView)仅 **0.5 KB**。
8
8
  - **原生性能**:纯 StyleSheet 驱动,零 CSS-in-JS 运行时;动画基于原生 Animated / LayoutAnimation,无 JS 线程阻塞;列表类组件(Picker、Swiper、Tabs)基于 FlatList / ScrollView 原生滚动,确保 60fps 流畅交互。
9
9
  - **三端同构**:iOS / Android / Web 统一 API 与交互行为;Swiper、Picker 等核心组件在 Web 端自动适配桌面鼠标拖拽与移动端触控,无需业务层额外处理。
10
10
  - **设计系统**:Design Tokens + ThemeProvider 分层架构,组件自管 tokens;支持 light / dark / 品牌主题一键切换,样式定制不侵入组件实现。
@@ -17,7 +17,7 @@
17
17
  pnpm add react-native-system-ui react-native-svg
18
18
 
19
19
  # 如需在业务中直接使用图标组件(可 Tree Shaking)
20
- pnpm add react-native-system-icon
20
+ pnpm add react-native-system-icon react-native-svg
21
21
 
22
22
  # 同时保证项目已安装 react 和 react-native(>=18.2 / >=0.79)
23
23
  ```
@@ -151,29 +151,29 @@ enableNativeWind(cssInterop)
151
151
 
152
152
  ## 组件体积
153
153
 
154
- 按需引入后单组件均值约 **2.9 KB**(各组件目录 gzip 相加估算)。支持 Tree Shaking,实际打包体积以构建结果为准。
154
+ 按需引入后单组件均值约 **2.7 KB**(各组件目录 gzip 相加估算,数据由 `pnpm run build && pnpm run docs:update-size` 生成)。支持 Tree Shaking,实际打包体积以构建结果为准。
155
155
 
156
156
  | 组件 | gzip | 组件 | gzip | 组件 | gzip |
157
157
  | --- | ---: | --- | ---: | --- | ---: |
158
- | picker | 6.6 KB | tabs | 6.4 KB | form | 5.6 KB |
159
- | dialog | 4.9 KB | cascader | 4.8 KB | field | 4.6 KB |
160
- | calendar | 4.4 KB | slider | 4.4 KB | number-keyboard | 4.1 KB |
161
- | toast | 4.1 KB | swiper | 4.0 KB | popup | 4.0 KB |
162
- | notify | 3.9 KB | checkbox | 3.8 KB | image-preview | 3.7 KB |
163
- | button | 3.7 KB | stepper | 3.7 KB | cell | 3.6 KB |
164
- | radio | 3.5 KB | grid | 3.4 KB | config-provider | 3.2 KB |
165
- | tabbar | 3.2 KB | notice-bar | 3.0 KB | collapse | 2.9 KB |
166
- | password-input | 2.9 KB | action-sheet | 2.8 KB | sidebar | 2.8 KB |
167
- | image | 2.8 KB | datetime-picker | 2.7 KB | share-sheet | 2.5 KB |
168
- | progress | 2.4 KB | selector | 2.3 KB | portal | 2.3 KB |
169
- | nav-bar | 2.3 KB | typography | 2.1 KB | circle | 2.1 KB |
170
- | search | 2.1 KB | skeleton | 2.0 KB | badge | 2.0 KB |
171
- | water-mark | 2.0 KB | tag | 2.0 KB | flex | 1.7 KB |
172
- | space | 1.7 KB | avatar | 1.6 KB | divider | 1.5 KB |
173
- | empty | 1.5 KB | input | 1.4 KB | area | 1.3 KB |
174
- | count-down | 1.2 KB | loading | 1.2 KB | switch | 1.1 KB |
175
- | overlay | 0.9 KB | error-boundary | 0.7 KB | safe-area-view | 0.6 KB |
158
+ | picker | 6.3 KB | tabs | 6.2 KB | form | 4.7 KB |
159
+ | dialog | 4.6 KB | cascader | 4.5 KB | field | 4.4 KB |
160
+ | calendar | 4.2 KB | slider | 4.1 KB | number-keyboard | 4.0 KB |
161
+ | toast | 3.9 KB | swiper | 3.9 KB | popup | 3.8 KB |
162
+ | notify | 3.7 KB | image-preview | 3.6 KB | checkbox | 3.6 KB |
163
+ | stepper | 3.6 KB | button | 3.6 KB | cell | 3.4 KB |
164
+ | radio | 3.3 KB | grid | 3.2 KB | tabbar | 3.0 KB |
165
+ | notice-bar | 2.9 KB | collapse | 2.8 KB | config-provider | 2.8 KB |
166
+ | password-input | 2.8 KB | action-sheet | 2.8 KB | image | 2.7 KB |
167
+ | sidebar | 2.6 KB | datetime-picker | 2.5 KB | share-sheet | 2.4 KB |
168
+ | progress | 2.3 KB | selector | 2.2 KB | nav-bar | 2.2 KB |
169
+ | portal | 2.1 KB | typography | 2.1 KB | circle | 2.0 KB |
170
+ | search | 2.0 KB | skeleton | 1.9 KB | badge | 1.9 KB |
171
+ | water-mark | 1.9 KB | tag | 1.8 KB | flex | 1.6 KB |
172
+ | space | 1.6 KB | avatar | 1.5 KB | divider | 1.4 KB |
173
+ | empty | 1.4 KB | input | 1.3 KB | area | 1.2 KB |
174
+ | count-down | 1.1 KB | loading | 1.1 KB | switch | 1.0 KB |
175
+ | overlay | 0.8 KB | error-boundary | 0.6 KB | safe-area-view | 0.5 KB |
176
176
 
177
177
  ## 版本与反馈
178
178
 
179
- 当前为 v1.0.3,欢迎 issue / PR。
179
+ 当前为 v1.0.6,欢迎 issue / PR。
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}function _reactNativeSystemIcon(){const e=require("react-native-system-icon");return _reactNativeSystemIcon=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _hooks=require("../../hooks"),_utils=require("../../utils"),_loading=_interopRequireDefault(require("../loading")),_popup=_interopRequireDefault(require("../popup")),_tokens=require("./tokens");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,l,c={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return c;if(o=t?a:r){if(o.has(e))return o.get(e);o.set(e,c)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((l=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(l.get||l.set)?o(c,t,l):c[t]=e[t]);return c})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},_extends.apply(null,arguments)}const defaultCloseIcon=_react().default.createElement(_reactNativeSystemIcon().Close,{size:18}),ActionSheetHeader=_react().default.memo(({title:e,closeable:t,closeIcon:r,tokens:a,onClose:o})=>{const l=(0,_hooks.useAriaPress)({onPress:o}),{colors:c,typography:n}=a;return _react().default.createElement(_reactNative().View,{style:a.layout.header},_react().default.createElement(_reactNative().View,{style:a.layout.titleContainer},(0,_utils.isText)(e)?(0,_utils.renderTextOrNode)(e,[a.layout.title,{color:c.title,fontSize:n.title}]):_react().default.createElement(_reactNative().View,{style:a.layout.titleNode},e)),t&&_react().default.createElement(_reactNative().Pressable,_extends({style:a.layout.closeButton,accessibilityRole:"button",hitSlop:8},l.interactionProps),_react().default.isValidElement(r)?_react().default.cloneElement(r,{fill:c.description,color:c.description}):(0,_utils.renderTextOrNode)(r,[{color:c.description}])))}),ActionSheetItem=_react().default.memo(({action:e,index:t,tokens:r,onActionPress:a})=>{const{disabled:o,loading:l,name:c,subname:n,icon:i}=e,{colors:s,spacing:u,typography:d}=r,_=(0,_hooks.useAriaPress)({disabled:!!o||!!l,onPress:(0,_react().useCallback)(()=>a(e,t),[e,t,a]),extraProps:{accessibilityRole:"menuitem",accessibilityLabel:(0,_utils.isText)(c)?String(c):void 0,accessibilityState:{disabled:!!o,busy:!!l},testID:`rv-action-sheet-item-${t}`}});return _react().default.createElement(_reactNative().Pressable,_extends({style:({pressed:t})=>[r.layout.item,!!i&&r.layout.itemWithIcon,{paddingVertical:u.vertical,paddingHorizontal:u.horizontal,backgroundColor:!t||e.disabled||e.loading?s.itemBackground:s.itemPressedBackground},e.style]},_.interactionProps),!!i&&_react().default.createElement(_reactNative().View,{style:r.layout.icon},(0,_utils.isText)(i)?(0,_utils.renderTextOrNode)(i,[{color:s.item}]):i),l?_react().default.createElement(_loading.default,{size:20}):(0,_utils.isRenderable)(c)?_react().default.createElement(_reactNative().View,{style:r.layout.itemTextWrapper},(0,_utils.renderTextOrNode)(c,[r.layout.itemText,{color:e.disabled?s.disabled:e.color??s.item,fontSize:d.item}]),(0,_utils.isRenderable)(n)&&((0,_utils.isText)(n)?(0,_utils.renderTextOrNode)(n,[r.layout.subname,{color:s.subitem}]):_react().default.createElement(_reactNative().View,{style:r.layout.subnameNode},n))):null)}),ActionSheetCancel=_react().default.memo(({cancelText:e,tokens:t,onPress:r})=>{const{colors:a,spacing:o,typography:l}=t,c=(0,_hooks.useAriaPress)({onPress:r,extraProps:{accessibilityRole:"button",testID:"rv-action-sheet-cancel"}});return _react().default.createElement(_react().default.Fragment,null,_react().default.createElement(_reactNative().View,{style:[t.layout.cancelGap,{height:o.cancelGap,backgroundColor:a.cancelGapBackground}]}),_react().default.createElement(_reactNative().Pressable,_extends({style:[t.layout.cancel,{paddingVertical:o.vertical,paddingHorizontal:o.horizontal,backgroundColor:a.cancelBackground}]},c.interactionProps),(0,_utils.renderTextOrNode)(e,[t.layout.cancelText,{color:a.cancel,fontSize:l.item}])))}),ActionSheetImpl=e=>{const{tokensOverride:t,visible:r,title:a,description:o,cancelText:l,actions:c=[],closeOnClickAction:n,closeOnSelect:i,closeable:s,closeIcon:u=defaultCloseIcon,beforeClose:d,onSelect:_,onCancel:f,onClose:p,children:y,round:m,safeAreaInsetBottom:b,overlay:k,lockScroll:v,style:h,...g}=e,x=(0,_tokens.useActionSheetTokens)(t),N=s??x.defaults.closeable,S=m??x.defaults.round,C=b??x.defaults.safeAreaInsetBottom,P=k??x.defaults.overlay,A=v??x.defaults.lockScroll,E=n??i??x.defaults.closeOnClickAction,R=(0,_utils.isRenderable)(a),w=(0,_utils.isRenderable)(o),T=(0,_utils.isRenderable)(l),I=(0,_react().useRef)("close"),O=(0,_react().useRef)(!1),V=(0,_react().useRef)(d);V.current=d;const q=(0,_react().useRef)(p);q.current=p;const z=(0,_react().useRef)(f);z.current=f;const B=(0,_react().useRef)(_);B.current=_;const W=(0,_react().useCallback)(async e=>{if(!V.current)return!0;try{return!1!==await V.current(e)}catch{return!0}},[]),M=(0,_react().useCallback)(e=>{if(q.current)return"cancel"===e&&z.current?.(),void q.current();z.current?.()},[]),j=(0,_react().useCallback)(async e=>{if(!O.current){O.current=!0;try{if(!await W(e))return;M(e)}finally{O.current=!1}}},[M,W]),D=(0,_react().useCallback)(e=>(I.current=e,W(e)),[W]),H=(0,_react().useCallback)(()=>{M(I.current)},[M]),G=(0,_react().useCallback)((e,t)=>{e.disabled||e.loading||(e.onPress?.(e),e.callback?.(e),B.current?.(e,t),E&&j("action"))},[j,E]),F=(0,_react().useMemo)(()=>[x.layout.popup,h],[x.layout.popup,h]);return _react().default.createElement(_popup.default,_extends({visible:r,placement:"bottom",round:S,safeAreaInsetTop:R&&N,safeAreaInsetBottom:C,overlay:P,lockScroll:A,beforeClose:D,onClose:H,style:F},g),_react().default.createElement(_reactNative().View,{accessibilityRole:"menu",style:[x.layout.panel,{backgroundColor:x.colors.background}]},R&&_react().default.createElement(ActionSheetHeader,{title:a,closeable:N,closeIcon:u,tokens:x,onClose:()=>{j("close-icon")}}),w&&_react().default.createElement(_reactNative().View,{style:x.layout.descriptionContainer},(0,_utils.isText)(o)?(0,_utils.renderTextOrNode)(o,[x.layout.description,{color:x.colors.description,fontSize:x.typography.description}]):_react().default.createElement(_reactNative().View,{style:x.layout.descriptionNode},o),_react().default.createElement(_reactNative().View,{style:(0,_utils.createHairlineView)({position:"bottom",color:x.colors.border,left:0,right:0})})),_react().default.createElement(_reactNative().View,{style:x.layout.actions},c.map((e,t)=>_react().default.createElement(ActionSheetItem,{key:e.key??t,action:e,index:t,tokens:x,onActionPress:G}))),y,T&&_react().default.createElement(ActionSheetCancel,{cancelText:l,tokens:x,onPress:()=>{j("cancel")}})))},ActionSheet=_react().default.memo(ActionSheetImpl);ActionSheet.displayName="ActionSheet";var _default=exports.default=ActionSheet;
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}function _reactNativeSystemIcon(){const e=require("react-native-system-icon");return _reactNativeSystemIcon=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _hooks=require("../../hooks"),_utils=require("../../utils"),_loading=_interopRequireDefault(require("../loading")),_popup=_interopRequireDefault(require("../popup")),_tokens=require("./tokens");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,l,c={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return c;if(o=t?a:r){if(o.has(e))return o.get(e);o.set(e,c)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((l=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(l.get||l.set)?o(c,t,l):c[t]=e[t]);return c})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},_extends.apply(null,arguments)}const defaultCloseIcon=_react().default.createElement(_reactNativeSystemIcon().Close,{size:18}),ActionSheetHeader=_react().default.memo(({title:e,closeable:t,closeIcon:r,tokens:a,onClose:o})=>{const l=(0,_hooks.useAriaPress)({onPress:o}),{colors:c,typography:n}=a;return _react().default.createElement(_reactNative().View,{style:a.layout.header},_react().default.createElement(_reactNative().View,{style:a.layout.titleContainer},(0,_utils.isText)(e)?(0,_utils.renderTextOrNode)(e,[a.layout.title,{color:c.title,fontSize:n.title}]):_react().default.createElement(_reactNative().View,{style:a.layout.titleNode},e)),t&&_react().default.createElement(_reactNative().Pressable,_extends({style:a.layout.closeButton,accessibilityRole:"button",hitSlop:8},l.interactionProps),_react().default.isValidElement(r)?_react().default.cloneElement(r,{fill:c.description,color:c.description}):(0,_utils.renderTextOrNode)(r,[{color:c.description}])))}),ActionSheetItem=_react().default.memo(({action:e,index:t,tokens:r,onActionPress:a})=>{const{disabled:o,loading:l,name:c,subname:n,icon:i}=e,{colors:s,spacing:u,typography:d}=r,_=(0,_hooks.useAriaPress)({disabled:!!o||!!l,onPress:(0,_react().useCallback)(()=>a(e,t),[e,t,a]),extraProps:{accessibilityRole:"web"===_reactNative().Platform.OS?"menuitem":"button",accessibilityLabel:(0,_utils.isText)(c)?String(c):void 0,accessibilityState:{disabled:!!o,busy:!!l},testID:`rv-action-sheet-item-${t}`}});return _react().default.createElement(_reactNative().Pressable,_extends({style:({pressed:t})=>[r.layout.item,!!i&&r.layout.itemWithIcon,{paddingVertical:u.vertical,paddingHorizontal:u.horizontal,backgroundColor:!t||e.disabled||e.loading?s.itemBackground:s.itemPressedBackground},e.style]},_.interactionProps),!!i&&_react().default.createElement(_reactNative().View,{style:r.layout.icon},(0,_utils.isText)(i)?(0,_utils.renderTextOrNode)(i,[{color:s.item}]):i),l?_react().default.createElement(_loading.default,{size:20}):(0,_utils.isRenderable)(c)?_react().default.createElement(_reactNative().View,{style:r.layout.itemTextWrapper},(0,_utils.renderTextOrNode)(c,[r.layout.itemText,{color:e.disabled?s.disabled:e.color??s.item,fontSize:d.item}]),(0,_utils.isRenderable)(n)&&((0,_utils.isText)(n)?(0,_utils.renderTextOrNode)(n,[r.layout.subname,{color:s.subitem}]):_react().default.createElement(_reactNative().View,{style:r.layout.subnameNode},n))):null)}),ActionSheetCancel=_react().default.memo(({cancelText:e,tokens:t,onPress:r})=>{const{colors:a,spacing:o,typography:l}=t,c=(0,_hooks.useAriaPress)({onPress:r,extraProps:{accessibilityRole:"button",testID:"rv-action-sheet-cancel"}});return _react().default.createElement(_react().default.Fragment,null,_react().default.createElement(_reactNative().View,{style:[t.layout.cancelGap,{height:o.cancelGap,backgroundColor:a.cancelGapBackground}]}),_react().default.createElement(_reactNative().Pressable,_extends({style:[t.layout.cancel,{paddingVertical:o.vertical,paddingHorizontal:o.horizontal,backgroundColor:a.cancelBackground}]},c.interactionProps),(0,_utils.renderTextOrNode)(e,[t.layout.cancelText,{color:a.cancel,fontSize:l.item}])))}),ActionSheetImpl=e=>{const{tokensOverride:t,visible:r,title:a,description:o,cancelText:l,actions:c=[],closeOnClickAction:n,closeOnSelect:i,closeable:s,closeIcon:u=defaultCloseIcon,beforeClose:d,onSelect:_,onCancel:f,onClose:p,children:y,round:m,safeAreaInsetBottom:b,overlay:v,lockScroll:k,style:h,...g}=e,x=(0,_tokens.useActionSheetTokens)(t),N=s??x.defaults.closeable,S=m??x.defaults.round,C=b??x.defaults.safeAreaInsetBottom,P=v??x.defaults.overlay,A=k??x.defaults.lockScroll,E=n??i??x.defaults.closeOnClickAction,w=(0,_utils.isRenderable)(a),R=(0,_utils.isRenderable)(o),O=(0,_utils.isRenderable)(l),T=(0,_react().useRef)("close"),I=(0,_react().useRef)(!1),V=(0,_react().useRef)(d);V.current=d;const q=(0,_react().useRef)(p);q.current=p;const z=(0,_react().useRef)(f);z.current=f;const B=(0,_react().useRef)(_);B.current=_;const W=(0,_react().useCallback)(async e=>{if(!V.current)return!0;try{return!1!==await V.current(e)}catch{return!0}},[]),M=(0,_react().useCallback)(e=>{if(q.current)return"cancel"===e&&z.current?.(),void q.current();z.current?.()},[]),j=(0,_react().useCallback)(async e=>{if(!I.current){I.current=!0;try{if(!await W(e))return;M(e)}finally{I.current=!1}}},[M,W]),D=(0,_react().useCallback)(e=>(T.current=e,W(e)),[W]),H=(0,_react().useCallback)(()=>{M(T.current)},[M]),G=(0,_react().useCallback)((e,t)=>{e.disabled||e.loading||(e.onPress?.(e),e.callback?.(e),B.current?.(e,t),E&&j("action"))},[j,E]),F=(0,_react().useMemo)(()=>[x.layout.popup,h],[x.layout.popup,h]);return _react().default.createElement(_popup.default,_extends({visible:r,placement:"bottom",round:S,safeAreaInsetTop:w&&N,safeAreaInsetBottom:C,overlay:P,lockScroll:A,beforeClose:D,onClose:H,style:F},g),_react().default.createElement(_reactNative().View,{accessibilityRole:"menu",style:[x.layout.panel,{backgroundColor:x.colors.background}]},w&&_react().default.createElement(ActionSheetHeader,{title:a,closeable:N,closeIcon:u,tokens:x,onClose:()=>{j("close-icon")}}),R&&_react().default.createElement(_reactNative().View,{style:x.layout.descriptionContainer},(0,_utils.isText)(o)?(0,_utils.renderTextOrNode)(o,[x.layout.description,{color:x.colors.description,fontSize:x.typography.description}]):_react().default.createElement(_reactNative().View,{style:x.layout.descriptionNode},o),_react().default.createElement(_reactNative().View,{style:(0,_utils.createHairlineView)({position:"bottom",color:x.colors.border,left:0,right:0})})),_react().default.createElement(_reactNative().View,{style:x.layout.actions},c.map((e,t)=>_react().default.createElement(ActionSheetItem,{key:e.key??t,action:e,index:t,tokens:x,onActionPress:G}))),y,O&&_react().default.createElement(ActionSheetCancel,{cancelText:l,tokens:x,onPress:()=>{j("cancel")}})))},ActionSheet=_react().default.memo(ActionSheetImpl);ActionSheet.displayName="ActionSheet";var _default=exports.default=ActionSheet;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}function _checkbox(){const e=require("@react-native-aria/checkbox");return _checkbox=function(){return e},e}function _toggle(){const e=require("@react-stately/toggle");return _toggle=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Checkbox=void 0;var _CheckboxContext=require("./CheckboxContext"),_tokens=require("./tokens"),_utils=require("../../utils"),_validate=require("../../utils/validate");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var a=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var l,i,c={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return c;if(l=t?r:a){if(l.has(e))return l.get(e);l.set(e,c)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(l=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?l(c,t,i):c[t]=e[t]);return c})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(null,arguments)}const EMPTY_CHECKBOX_GROUP_STATE={value:[],isDisabled:!1,isReadOnly:!1,isSelected:()=>!1,setValue:()=>{},addValue:()=>{},removeValue:()=>{},toggleValue:()=>{}},CheckboxImpl=(e,t)=>{const{children:a,name:r,value:l,iconRender:i,bindGroup:c,shape:o,iconSize:n,checkedColor:s,labelPosition:u,labelDisabled:d,disabled:b,style:f,labelStyle:_,tokensOverride:p,hitSlop:h=8,accessibilityLabel:g,"aria-label":k,onClick:y,onChange:v,...x}=e,m=(0,_tokens.useCheckboxTokens)(p),C=(0,_react().useContext)(_CheckboxContext.CheckboxGroupContext),S=c??m.defaults.bindGroup,E=o??C?.shape??m.defaults.shape,R=n??C?.iconSize??m.defaults.iconSize,P=s??C?.checkedColor??m.colors.checkedBackground,w=i??C?.iconRender,O=u??m.defaults.labelPosition,V=d??C?.labelDisabled??m.defaults.labelDisabled,N=Boolean(b||C?.state.isDisabled),q=l??r,T=null==q?void 0:String(q),W=(0,_react().useRef)(null);(0,_react().useImperativeHandle)(t,()=>W.current);const B=(0,_toggle().useToggleState)({isSelected:e.checked,defaultSelected:e.defaultChecked,onChange:v}),D=!!C&&void 0!==T&&S,{onBlur:M,onFocus:z,...F}=x;(0,_react().useEffect)(()=>{if(C&&S&&void 0!==T&&void 0!==q)return C.registerValue(T,q,N),()=>C.unregisterValue(T)},[S,C,T,q,N]);const j=g??k??((0,_validate.isText)(a)?String(a):void 0)??T??"checkbox",G=W,{inputProps:H}=(0,_checkbox().useCheckboxGroupItem)({...F,value:T??"",isDisabled:N,"aria-label":j},D&&C?C.state:EMPTY_CHECKBOX_GROUP_STATE,G),{inputProps:L}=(0,_checkbox().useCheckbox)({...F,isDisabled:N,value:T,"aria-label":j},B,G),I=D&&C?H:L,A=D&&C?C.state.isSelected(T):void 0!==e.checked?e.checked:B.isSelected,K="round"===E?R/2:m.radii.square,U=N?m.colors.disabledBorder:A?P:m.colors.border,X=N?m.colors.disabledBackground:A?P:m.colors.background,Y=N||V?m.colors.labelDisabled:m.colors.label,J="left"===O?{marginRight:m.spacing.gap}:{marginLeft:m.spacing.gap},Q=I?.onPress,Z=I?{...I,onPress:t=>{y?.(t),D&&C?.max&&!A&&C.state.value.length>=C.max||(Q?Q(t):D&&C&&void 0!==T?A?C.state.removeValue(T):C.state.addValue(T):void 0===e.checked?v&&B.setSelected(!B.isSelected):v?.(!e.checked))}}:{},$=(0,_validate.isRenderable)(a)?(0,_validate.isText)(a)?_react().default.createElement(_reactNative().Text,{accessible:!1,style:[m.layout.label,{color:Y,fontSize:m.typography.fontSize,lineHeight:m.typography.fontSize*m.typography.lineHeightMultiplier,fontFamily:m.typography.fontFamily,fontWeight:m.typography.fontWeight},_]},a):_react().default.createElement(_reactNative().View,{accessible:!1,style:_},a):null,ee={width:R,height:R,borderRadius:K,backgroundColor:X};let te=_react().default.createElement(_reactNative().View,{style:[m.layout.icon,ee]},A&&_react().default.createElement(_reactNative().Text,{style:[m.layout.checkmark,{color:m.colors.checkmark,fontSize:R*m.icon.scale}]},"✓"),_react().default.createElement(_reactNative().View,{style:(0,_utils.createHairlineView)({position:"all",color:U,borderRadius:K})}));w&&(te=w({checked:Boolean(A),disabled:Boolean(N)})??null);const ae=!N&&!V,re=$&&_react().default.createElement(_reactNative().View,{style:[m.layout.labelWrapper,J],pointerEvents:V?"none":void 0,accessible:!1},$),le=[m.layout.iconWrapper,"left"===O?{marginLeft:m.spacing.gap}:{marginRight:m.spacing.gap}],ie=ae?_react().default.createElement(_reactNative().View,{style:le},te):_react().default.createElement(_reactNative().Pressable,_extends({},Z,{ref:W,disabled:N,accessibilityLabel:j,accessibilityRole:"checkbox",accessibilityState:{checked:A,disabled:!!N},style:le,hitSlop:h}),te),ce="left"===O?_react().default.createElement(_react().default.Fragment,null,re,ie):_react().default.createElement(_react().default.Fragment,null,ie,re);return ae?_react().default.createElement(_reactNative().Pressable,_extends({},Z,{ref:W,disabled:N,accessibilityLabel:j,accessibilityRole:"checkbox",accessibilityState:{checked:A,disabled:!!N},style:({pressed:e})=>[m.layout.container,f,"web"===_reactNative().Platform.OS&&{cursor:"pointer"},e&&{opacity:.8}],hitSlop:h}),ce):_react().default.createElement(_reactNative().View,{style:[m.layout.container,f]},ce)},CheckboxForwardRef=_react().default.forwardRef(CheckboxImpl),Checkbox=exports.Checkbox=_react().default.memo(CheckboxForwardRef);var _default=exports.default=Checkbox;
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}function _checkbox(){const e=require("@react-native-aria/checkbox");return _checkbox=function(){return e},e}function _toggle(){const e=require("@react-stately/toggle");return _toggle=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Checkbox=void 0;var _CheckboxContext=require("./CheckboxContext"),_tokens=require("./tokens"),_utils=require("../../utils"),_validate=require("../../utils/validate");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var a=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var l,i,c={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return c;if(l=t?r:a){if(l.has(e))return l.get(e);l.set(e,c)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(l=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?l(c,t,i):c[t]=e[t]);return c})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(null,arguments)}const EMPTY_CHECKBOX_GROUP_STATE={value:[],isDisabled:!1,isReadOnly:!1,isSelected:()=>!1,setValue:()=>{},addValue:()=>{},removeValue:()=>{},toggleValue:()=>{}},CheckboxImpl=(e,t)=>{const{children:a,name:r,value:l,iconRender:i,bindGroup:c,shape:o,iconSize:n,checkedColor:s,labelPosition:u,labelDisabled:d,disabled:b,style:f,labelStyle:_,tokensOverride:p,hitSlop:h=8,accessibilityLabel:g,"aria-label":k,onClick:y,onChange:v,...x}=e,m=(0,_tokens.useCheckboxTokens)(p),C=(0,_react().useContext)(_CheckboxContext.CheckboxGroupContext),S=c??m.defaults.bindGroup,E=o??C?.shape??m.defaults.shape,R=n??C?.iconSize??m.defaults.iconSize,P=s??C?.checkedColor??m.colors.checkedBackground,w=i??C?.iconRender,O=u??m.defaults.labelPosition,V=d??C?.labelDisabled??m.defaults.labelDisabled,N=Boolean(b||C?.state.isDisabled),q=l??r,T=null==q?void 0:String(q),W=(0,_react().useRef)(null);(0,_react().useImperativeHandle)(t,()=>W.current);const B=(0,_toggle().useToggleState)({isSelected:e.checked,defaultSelected:e.defaultChecked,onChange:v}),D=!!C&&void 0!==T&&S,{onBlur:M,onFocus:z,...F}=x;(0,_react().useEffect)(()=>{if(C&&S&&void 0!==T&&void 0!==q)return C.registerValue(T,q,N),()=>C.unregisterValue(T)},[S,C,T,q,N]);const j=g??k??((0,_validate.isText)(a)?String(a):void 0)??T??"checkbox",G=W,{inputProps:H}=(0,_checkbox().useCheckboxGroupItem)({...F,value:T??"",isDisabled:N,"aria-label":j},D&&C?C.state:EMPTY_CHECKBOX_GROUP_STATE,G),{inputProps:L}=(0,_checkbox().useCheckbox)({...F,isDisabled:N,value:T,"aria-label":j},B,G),I=D&&C?H:L,A=D&&C?C.state.isSelected(T):void 0!==e.checked?e.checked:B.isSelected,K="round"===E?R/2:m.radii.square,U=N?m.colors.disabledBorder:A?P:m.colors.border,X=N?m.colors.disabledBackground:A?P:m.colors.background,Y=N||V?m.colors.labelDisabled:m.colors.label,J="left"===O?{marginRight:m.spacing.gap}:{marginLeft:m.spacing.gap},Q=I?.onPress,Z=I?{...I,onPress:t=>{y?.(t),D&&C?.max&&!A&&C.state.value.length>=C.max||(Q?Q(t):D&&C&&void 0!==T?A?C.state.removeValue(T):C.state.addValue(T):void 0===e.checked?v&&B.setSelected(!B.isSelected):v?.(!e.checked))}}:{},$=(0,_validate.isRenderable)(a)?(0,_validate.isText)(a)?_react().default.createElement(_reactNative().Text,{accessible:!1,style:[m.layout.label,{color:Y,fontSize:m.typography.fontSize,lineHeight:m.typography.fontSize*m.typography.lineHeightMultiplier,fontFamily:m.typography.fontFamily,fontWeight:m.typography.fontWeight},_]},a):_react().default.createElement(_reactNative().View,{accessible:!1,style:_},a):null,ee={width:R,height:R,borderRadius:K,backgroundColor:X},te=_react().default.createElement(_reactNative().View,{style:[m.layout.icon,ee]},A&&_react().default.createElement(_reactNative().Text,{style:[m.layout.checkmark,{color:m.colors.checkmark,fontSize:R*m.icon.scale}]},"✓"),_react().default.createElement(_reactNative().View,{style:(0,_utils.createHairlineView)({position:"all",color:U,borderRadius:K})})),ae=w?w({checked:Boolean(A),disabled:Boolean(N)})??null:te,re=!N&&!V,le=$&&_react().default.createElement(_reactNative().View,{style:[m.layout.labelWrapper,J],pointerEvents:V?"none":void 0,accessible:!1},$),ie=[m.layout.iconWrapper,"left"===O?{marginLeft:m.spacing.gap}:{marginRight:m.spacing.gap}],ce=re?_react().default.createElement(_reactNative().View,{style:ie},ae):_react().default.createElement(_reactNative().Pressable,_extends({},Z,{ref:W,disabled:N,accessibilityLabel:j,accessibilityRole:"checkbox",accessibilityState:{checked:A,disabled:!!N},style:ie,hitSlop:h}),ae),oe="left"===O?_react().default.createElement(_react().default.Fragment,null,le,ce):_react().default.createElement(_react().default.Fragment,null,ce,le);return re?_react().default.createElement(_reactNative().Pressable,_extends({},Z,{ref:W,disabled:N,accessibilityLabel:j,accessibilityRole:"checkbox",accessibilityState:{checked:A,disabled:!!N},style:({pressed:e})=>[m.layout.container,f,"web"===_reactNative().Platform.OS&&{cursor:"pointer"},e&&{opacity:.8}],hitSlop:h}),oe):_react().default.createElement(_reactNative().View,{style:[m.layout.container,f]},oe)},CheckboxForwardRef=_react().default.forwardRef(CheckboxImpl),Checkbox=exports.Checkbox=_react().default.memo(CheckboxForwardRef);var _default=exports.default=Checkbox;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}function _reactNativeSystemIcon(){const e=require("react-native-system-icon");return _reactNativeSystemIcon=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Collapse=void 0;var _animation=require("../../hooks/animation"),_cell=require("../cell"),_utils=require("../../utils"),_tokens=require("./tokens");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var a=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,i,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?r:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?n(l,t,i):l[t]=e[t]);return l})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(null,arguments)}const CollapseContext=_react().default.createContext(null),normalizeValue=e=>{if(void 0!==e)return Array.isArray(e)?e.map(String):null===e?[]:[String(e)]},buildOutputValue=(e,t)=>t?e[0]??"":e,CollapseImpl=e=>{const{tokensOverride:t,children:a,accordion:r,value:n,defaultValue:i,onChange:l,border:o,iconPosition:c,expandIcon:s,disabled:u,style:d,...p}=e,_=(0,_tokens.useCollapseTokens)(t),f=r??_.defaults.accordion,m=o??_.defaults.border,b=c??_.defaults.iconPosition,{colors:y}=_,g=void 0!==n,v=normalizeValue(n),C=normalizeValue(i)??[],k=(0,_react().useRef)(l);k.current=l;const[h,w]=(0,_react().useState)(()=>f?C.slice(0,1):C),x=g?f?(v??[]).slice(0,1):v??[]:h,E=(0,_react().useCallback)((e,t)=>{if(u)return;const a=x.includes(e),r=t??!a,n=f?r?[e]:a?[]:x:r?a?x:[...x,e]:a?x.filter(t=>t!==e):x;g||w(n),k.current?.(buildOutputValue(n,f))},[f,x,g,u]),N=(0,_react().useMemo)(()=>({activeKeys:x,toggle:E,accordion:f,iconPosition:b,expandIcon:s,border:m,disabled:u,tokens:_}),[f,x,m,u,s,b,_,E]),V=(0,_react().useMemo)(()=>_react().default.Children.toArray(a).map((e,t)=>{if(!_react().default.isValidElement(e))return e;if(!(0,_utils.isFunction)(e.type)&&!(0,_utils.isObject)(e.type))return e;const a=e.props.name??String(t);return _react().default.cloneElement(e,{name:a,index:t})}),[a]);return _react().default.createElement(CollapseContext.Provider,{value:N},_react().default.createElement(_reactNative().View,_extends({style:[_.layout.container,m&&{backgroundColor:y.background},d]},p),m&&_react().default.createElement(Hairline,{tokens:_,position:"top",color:y.border}),m&&_react().default.createElement(Hairline,{tokens:_,position:"bottom",color:y.border}),V))},Hairline=_react().default.memo(({tokens:e,position:t,color:a,inset:r=0})=>{const n=(0,_utils.createHairlineView)({position:t,color:a,left:r,right:r});return _react().default.createElement(_reactNative().View,{pointerEvents:"none",style:[e.layout.hairline,n]})}),CollapsePanel=_react().default.forwardRef((e,t)=>{const a=(0,_react().useContext)(CollapseContext),r=(0,_animation.useReducedMotion)();if(!a)throw new Error("Collapse.Panel must be used within Collapse");const{activeKeys:n,toggle:i,iconPosition:l,expandIcon:o,disabled:c,tokens:s}=a,{name:u="0",index:d=0,title:p,description:_,label:f,icon:m,extra:b,value:y,border:g=s.defaults.panelBorder,isLink:v=s.defaults.panelIsLink,size:C=s.defaults.panelSize,disabled:k,readOnly:h,children:w,style:x,titleStyle:E,descriptionStyle:N,...V}=e,S=String(u),P=n.includes(S),I=c||k,{colors:z,spacing:O,typography:R}=s,[H,M]=(0,_react().useState)(0),q=(0,_react().useRef)(new(_reactNative().Animated.Value)(P?1:0)).current,j=(0,_react().useRef)(null),A=q.interpolate({inputRange:[0,1],outputRange:["90deg","-90deg"]});(0,_react().useEffect)(()=>{j.current?.stop();const e=_reactNative().Animated.timing(q,{toValue:P?1:0,duration:r?0:s.defaults.animationDuration,easing:_reactNative().Easing.ease,useNativeDriver:!1,isInteraction:!1});return j.current=e,e.start(({finished:e})=>{e&&(j.current=null)}),()=>{j.current?.stop(),j.current=null}},[q,P,r,s.defaults.animationDuration]);const W=_??f,F=b??y,D=(0,_react().useCallback)(()=>{I||h||i(S)},[I,S,h,i]);(0,_react().useImperativeHandle)(t,()=>({toggle:e=>{I||h||i(S,e)}}),[I,S,h,i]);const L=(0,_react().useCallback)(e=>{const t=e.nativeEvent.layout.height;(0,_utils.isNumber)(t)&&Number.isFinite(t)&&M(e=>e===t?e:t)},[]),B=(0,_react().useMemo)(()=>({height:q.interpolate({inputRange:[0,1],outputRange:[0,H]})}),[q,H]),K=(0,_react().useCallback)(()=>(0,_utils.isFunction)(o)?o(P):o||_react().default.createElement(_reactNative().Animated.View,{style:{transform:[{rotate:A}]}},_react().default.createElement(_reactNativeSystemIcon().Arrow,{size:16,fill:I?z.disabled:z.arrow})),[z.arrow,z.disabled,o,P,I,A]),T=(0,_react().useMemo)(()=>(0,_utils.renderTextOrNode)(w,{color:I?z.disabled:z.description,fontFamily:R.fontFamily,fontSize:R.descriptionSize,lineHeight:Math.round(1.5*R.descriptionSize)}),[w,z.description,z.disabled,I,R.descriptionSize,R.fontFamily]),G=Boolean(g),J=d>0&&G,Q=P&&G,U=v&&!h,X="left"===l?U||(0,_utils.isRenderable)(m)?_react().default.createElement(_reactNative().View,{style:s.layout.headerIconRow},U&&_react().default.createElement(_reactNative().View,{style:{marginRight:m?s.spacing.iconGap:0}},K()),m):void 0:m,Y="right"===l&&U?K():void 0;return _react().default.createElement(_reactNative().View,_extends({style:[s.layout.panel,{backgroundColor:z.background},x]},V),J&&_react().default.createElement(Hairline,{tokens:s,position:"top",color:z.border,inset:O.paddingHorizontal}),_react().default.createElement(_reactNative().View,{style:s.layout.headerWrapper},_react().default.createElement(_cell.Cell,{title:p,label:W,icon:X,value:F,size:C,border:!1,disabled:I,onPress:h?void 0:D,accessibilityState:{expanded:P,disabled:I},titleStyle:I?[E,{color:z.disabled}]:E,labelStyle:I?[N,{color:z.disabled}]:N,valueStyle:I?{color:z.disabled}:void 0,rightIcon:Y}),Q&&_react().default.createElement(Hairline,{tokens:s,position:"bottom",color:z.border,inset:O.paddingHorizontal})),_react().default.createElement(_reactNative().Animated.View,{style:[s.layout.bodyWrapper,B]},_react().default.createElement(_reactNative().View,{onLayout:L,style:[s.layout.bodyContent,{paddingVertical:O.paddingVertical,paddingHorizontal:O.paddingHorizontal,backgroundColor:z.background}]},T)))});CollapseImpl.Panel=CollapsePanel,CollapseImpl.Item=CollapsePanel;const Collapse=exports.Collapse=Object.assign(_react().default.memo(CollapseImpl),{Panel:CollapsePanel,Item:CollapsePanel});var _default=exports.default=Collapse;
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}function _reactNativeSystemIcon(){const e=require("react-native-system-icon");return _reactNativeSystemIcon=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Collapse=void 0;var _animation=require("../../hooks/animation"),_cell=require("../cell"),_utils=require("../../utils"),_tokens=require("./tokens");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var a=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,i,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?r:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?n(l,t,i):l[t]=e[t]);return l})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(null,arguments)}const CollapseContext=_react().default.createContext(null),normalizeValue=e=>void 0===e?void 0:Array.isArray(e)?e.map(String):null===e?[]:[String(e)],buildOutputValue=(e,t)=>t?e[0]??"":e,CollapseImpl=e=>{const{tokensOverride:t,children:a,accordion:r,value:n,defaultValue:i,onChange:l,border:o,iconPosition:c,expandIcon:s,disabled:u,style:d,...p}=e,_=(0,_tokens.useCollapseTokens)(t),f=r??_.defaults.accordion,m=o??_.defaults.border,b=c??_.defaults.iconPosition,{colors:y}=_,g=void 0!==n,v=normalizeValue(n),C=normalizeValue(i)??[],k=(0,_react().useRef)(l);k.current=l;const[h,w]=(0,_react().useState)(()=>f?C.slice(0,1):C),x=g?f?(v??[]).slice(0,1):v??[]:h,E=(0,_react().useCallback)((e,t)=>{if(u)return;const a=x.includes(e),r=t??!a,n=f?r?[e]:a?[]:x:r?a?x:[...x,e]:a?x.filter(t=>t!==e):x;g||w(n),k.current?.(buildOutputValue(n,f))},[f,x,g,u]),N=(0,_react().useMemo)(()=>({activeKeys:x,toggle:E,accordion:f,iconPosition:b,expandIcon:s,border:m,disabled:u,tokens:_}),[f,x,m,u,s,b,_,E]),V=(0,_react().useMemo)(()=>_react().default.Children.toArray(a).map((e,t)=>{if(!_react().default.isValidElement(e))return e;if(!(0,_utils.isFunction)(e.type)&&!(0,_utils.isObject)(e.type))return e;const a=e.props.name??String(t);return _react().default.cloneElement(e,{name:a,index:t})}),[a]);return _react().default.createElement(CollapseContext.Provider,{value:N},_react().default.createElement(_reactNative().View,_extends({style:[_.layout.container,m&&{backgroundColor:y.background},d]},p),m&&_react().default.createElement(Hairline,{tokens:_,position:"top",color:y.border}),m&&_react().default.createElement(Hairline,{tokens:_,position:"bottom",color:y.border}),V))},Hairline=_react().default.memo(({tokens:e,position:t,color:a,inset:r=0})=>{const n=(0,_utils.createHairlineView)({position:t,color:a,left:r,right:r});return _react().default.createElement(_reactNative().View,{pointerEvents:"none",style:[e.layout.hairline,n]})}),CollapsePanel=_react().default.forwardRef((e,t)=>{const a=(0,_react().useContext)(CollapseContext),r=(0,_animation.useReducedMotion)();if(!a)throw new Error("Collapse.Panel must be used within Collapse");const{activeKeys:n,toggle:i,iconPosition:l,expandIcon:o,disabled:c,tokens:s}=a,{name:u="0",index:d=0,title:p,description:_,label:f,icon:m,extra:b,value:y,border:g=s.defaults.panelBorder,isLink:v=s.defaults.panelIsLink,size:C=s.defaults.panelSize,disabled:k,readOnly:h,children:w,style:x,titleStyle:E,descriptionStyle:N,...V}=e,S=String(u),P=n.includes(S),I=c||k,{colors:z,spacing:O,typography:R}=s,[H,M]=(0,_react().useState)(0),q=(0,_react().useRef)(new(_reactNative().Animated.Value)(P?1:0)).current,j=(0,_react().useRef)(null),A=q.interpolate({inputRange:[0,1],outputRange:["90deg","-90deg"]});(0,_react().useEffect)(()=>{j.current?.stop();const e=_reactNative().Animated.timing(q,{toValue:P?1:0,duration:r?0:s.defaults.animationDuration,easing:_reactNative().Easing.ease,useNativeDriver:!1,isInteraction:!1});return j.current=e,e.start(({finished:e})=>{e&&(j.current=null)}),()=>{j.current?.stop(),j.current=null}},[q,P,r,s.defaults.animationDuration]);const W=_??f,F=b??y,D=(0,_react().useCallback)(()=>{I||h||i(S)},[I,S,h,i]);(0,_react().useImperativeHandle)(t,()=>({toggle:e=>{I||h||i(S,e)}}),[I,S,h,i]);const L=(0,_react().useCallback)(e=>{const t=e.nativeEvent.layout.height;(0,_utils.isNumber)(t)&&Number.isFinite(t)&&M(e=>e===t?e:t)},[]),B=(0,_react().useMemo)(()=>({height:q.interpolate({inputRange:[0,1],outputRange:[0,H]})}),[q,H]),K=(0,_react().useCallback)(()=>(0,_utils.isFunction)(o)?o(P):o||_react().default.createElement(_reactNative().Animated.View,{style:{transform:[{rotate:A}]}},_react().default.createElement(_reactNativeSystemIcon().Arrow,{size:16,fill:I?z.disabled:z.arrow})),[z.arrow,z.disabled,o,P,I,A]),T=(0,_react().useMemo)(()=>(0,_utils.renderTextOrNode)(w,{color:I?z.disabled:z.description,fontFamily:R.fontFamily,fontSize:R.descriptionSize,lineHeight:Math.round(1.5*R.descriptionSize)}),[w,z.description,z.disabled,I,R.descriptionSize,R.fontFamily]),G=Boolean(g),J=d>0&&G,Q=P&&G,U=v&&!h,X="left"===l?U||(0,_utils.isRenderable)(m)?_react().default.createElement(_reactNative().View,{style:s.layout.headerIconRow},U&&_react().default.createElement(_reactNative().View,{style:{marginRight:m?s.spacing.iconGap:0}},K()),m):void 0:m,Y="right"===l&&U?K():void 0;return _react().default.createElement(_reactNative().View,_extends({style:[s.layout.panel,{backgroundColor:z.background},x]},V),J&&_react().default.createElement(Hairline,{tokens:s,position:"top",color:z.border,inset:O.paddingHorizontal}),_react().default.createElement(_reactNative().View,{style:s.layout.headerWrapper},_react().default.createElement(_cell.Cell,{title:p,label:W,icon:X,value:F,size:C,border:!1,disabled:I,onPress:h?void 0:D,accessibilityState:{expanded:P,disabled:I},titleStyle:I?[E,{color:z.disabled}]:E,labelStyle:I?[N,{color:z.disabled}]:N,valueStyle:I?{color:z.disabled}:void 0,rightIcon:Y}),Q&&_react().default.createElement(Hairline,{tokens:s,position:"bottom",color:z.border,inset:O.paddingHorizontal})),_react().default.createElement(_reactNative().Animated.View,{style:[s.layout.bodyWrapper,B]},_react().default.createElement(_reactNative().View,{onLayout:L,style:[s.layout.bodyContent,{paddingVertical:O.paddingVertical,paddingHorizontal:O.paddingHorizontal,backgroundColor:z.background}]},T)))});CollapseImpl.Panel=CollapsePanel,CollapseImpl.Item=CollapsePanel;const Collapse=exports.Collapse=Object.assign(_react().default.memo(CollapseImpl),{Panel:CollapsePanel,Item:CollapsePanel});var _default=exports.default=Collapse;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Dialog=void 0;var _useLocale=require("../config-provider/useLocale"),_platform=require("../../platform"),_animation=require("../../hooks/animation"),_hairline=require("../../utils/hairline"),_promise=require("../../utils/promise"),_validate=require("../../utils/validate"),_utils=require("../../utils");function _reactNativeSystemIcon(){const e=require("react-native-system-icon");return _reactNativeSystemIcon=function(){return e},e}var _button=_interopRequireDefault(require("../button")),_popup=_interopRequireDefault(require("../popup")),_tokens=require("./tokens");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var o=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,a,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?r:o){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((a=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(a.get||a.set)?n(i,t,a):i[t]=e[t]);return i})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},_extends.apply(null,arguments)}const ActionButton=e=>{const{text:t,color:o,tokens:r,dividerPosition:n="none",loading:a,disabled:i,onPress:l}=e,c=o??r.colors.confirm,s="none"===n?null:[S.btnDiv,{width:0},(0,_hairline.createHairlineView)({position:n,color:r.colors.divider,top:0,bottom:0,[n]:0})];return _react().default.createElement(_reactNative().Pressable,{accessibilityRole:"button",disabled:i||a,style:({pressed:e})=>[S.btn,{height:r.sizes.actionHeight,opacity:!e||i||a?1:.8}],onPress:i||a?void 0:l},s&&_react().default.createElement(_reactNative().View,{style:s,pointerEvents:"none"}),a?_react().default.createElement(_reactNative().ActivityIndicator,{size:"small",color:c}):(0,_utils.renderTextOrNode)(t??"",{color:c,fontFamily:r.typography.fontFamily,fontSize:r.typography.actionSize,fontWeight:r.typography.actionWeight}))},DialogImpl=e=>{const t=(0,_useLocale.useLocale)(),{visible:o,title:r,message:n,messageAlign:a="center",theme:i="default",width:l,closeable:c=!1,closeIcon:s,overlay:d=!0,overlayStyle:u,overlayTestID:p="dialog-overlay",closeOnBackPress:g=!1,closeOnPopstate:f=!0,closeOnOverlayPress:_=!1,closeOnClickOverlay:m=!1,onClickOverlay:y,onClickCloseIcon:v,beforeClose:b,showCancelButton:h=!1,showConfirmButton:C=!0,cancelButtonText:P,cancelButtonColor:x,cancelProps:w,confirmButtonText:N,confirmButtonColor:k,confirmProps:E,footer:I,contentStyle:O,titleStyle:q,messageStyle:z,tokensOverride:B,style:D,children:H,onCancel:W,onConfirm:V,onClose:L,onClosed:R,...T}=e,F=(0,_tokens.useDialogTokens)(B),M=(0,_animation.useReducedMotion)(),A=(0,_validate.isValidNode)(r),j=(0,_validate.isValidNode)(H),G=(0,_validate.isValidNode)(n)||j,J=h||C,K="round-button"===i,Q=w?.loading,U=E?.loading,X=P??t.cancel,Y=N??t.confirm,Z=(0,_react().useRef)({seq:0,beforeClose:b,onClose:L,onCancel:W,onConfirm:V,onClickCloseIcon:v,cancelLoad:Q,confirmLoad:U});Object.assign(Z.current,{beforeClose:b,onClose:L,onCancel:W,onConfirm:V,onClickCloseIcon:v,cancelLoad:Q,confirmLoad:U});const $=(0,_react().useCallback)((e,t)=>{const o=Z.current;o.seq+=1;const r=o.seq,n=o.beforeClose;if(!n)return void t?.();let a;try{a=n(e)}catch{return void t?.()}!1!==a&&((0,_promise.isPromiseLike)(a)?a.then(e=>{!1!==e&&Z.current.seq===r&&t?.()}).catch(()=>{Z.current.seq===r&&t?.()}):t?.())},[]),ee=(0,_react().useCallback)(()=>{Z.current.onClickCloseIcon?.(),$("close",()=>Z.current.onClose?.())},[$]),te=(0,_react().useCallback)(()=>{Z.current.cancelLoad||$("cancel",()=>Z.current.onCancel?.())},[$]),oe=(0,_react().useCallback)(()=>{Z.current.confirmLoad||$("confirm",()=>Z.current.onConfirm?.())},[$]),re=(0,_react().useRef)(new(_reactNative().Animated.Value)(.7)).current,ne=(0,_react().useRef)(null);(0,_react().useEffect)(()=>{ne.current?.stop(),re.setValue(o?.7:1);const e=_reactNative().Animated.timing(re,{toValue:o?1:.9,duration:M?0:300,easing:o?_reactNative().Easing.out(_reactNative().Easing.cubic):_reactNative().Easing.in(_reactNative().Easing.cubic),useNativeDriver:_platform.nativeDriverEnabled,isInteraction:!1});ne.current=e,e.start()},[re,o,M]),(0,_react().useEffect)(()=>()=>{ne.current?.stop()},[]);const ae={transform:[{scale:re}]},ie=(0,_react().useMemo)(()=>A?{wrap:[S.titleWrap,{paddingTop:G?F.spacing.titlePaddingTop:F.spacing.titleIsolatedPadding,paddingBottom:G?0:F.spacing.titleIsolatedPadding,paddingHorizontal:G?F.spacing.paddingHorizontal:0,marginBottom:G?F.spacing.titleGap:0}],text:[S.title,{color:F.colors.title,fontFamily:F.typography.fontFamily,fontSize:F.typography.titleSize,lineHeight:F.typography.titleLineHeight,fontWeight:F.typography.titleWeight},q]}:null,[A,G,q,F]),le=(0,_react().useMemo)(()=>({text:[S.msg,{color:K?F.colors.title:F.colors.message,fontFamily:F.typography.fontFamily,fontSize:F.typography.messageSize,lineHeight:F.typography.messageLineHeight,textAlign:a},z],content:j?null:{alignItems:"center"===a?"center":"left"===a?"flex-start":"flex-end"},wrap:[S.msgWrap,{paddingTop:A?F.spacing.messagePaddingTop:F.spacing.messagePadding,paddingBottom:K?F.spacing.roundFooterPadding:F.spacing.messagePadding,paddingHorizontal:F.spacing.messagePaddingHorizontal}]}),[K,a,z,j,A,F]),ce=(0,_react().useMemo)(()=>({border:[S.footerBorder,(0,_hairline.createHairlineView)({position:"top",color:F.colors.divider,left:0,right:0,top:0})],round:[S.roundFooter,{paddingTop:F.spacing.messagePaddingTop,paddingHorizontal:F.spacing.messagePaddingHorizontal,paddingBottom:F.spacing.roundFooterPadding}]}),[F]),se=(0,_react().useMemo)(()=>{const e=l?(0,_validate.isNumber)(l)?{width:l}:{width:String(l)}:{width:"90%",maxWidth:F.sizes.maxWidth};return[{backgroundColor:F.colors.background,borderRadius:F.sizes.borderRadius,padding:0},e,D]},[l,D,F]),de=(0,_react().useCallback)(()=>{const e=Z.current.beforeClose;if(!e)return!0;try{return e("close")}catch{return!0}},[]),ue=(0,_react().useMemo)(()=>J&&_react().default.createElement(_reactNative().View,{style:ce.round},h&&_react().default.createElement(_reactNative().View,{style:[S.roundBtnWrap,C&&{marginRight:F.spacing.roundFooterGap}]},_react().default.createElement(_button.default,{block:!0,round:!0,type:"warning",text:X,color:x,loading:Q,disabled:w?.disabled,onPress:te,style:{minHeight:F.sizes.roundButtonHeight}})),C&&_react().default.createElement(_reactNative().View,{style:[S.roundBtnWrap,h&&{marginLeft:F.spacing.roundFooterGap}]},_react().default.createElement(_button.default,{block:!0,round:!0,type:"danger",text:Y,color:k,loading:U,disabled:E?.disabled,onPress:oe,style:{minHeight:F.sizes.roundButtonHeight}}))),[x,Q,w?.disabled,X,k,U,E?.disabled,Y,te,oe,J,ce.round,h,C,F.sizes.roundButtonHeight,F.spacing.roundFooterGap]),pe=(0,_react().useMemo)(()=>J&&_react().default.createElement(_reactNative().View,{style:S.footer},_react().default.createElement(_reactNative().View,{style:ce.border,pointerEvents:"none"}),h&&_react().default.createElement(ActionButton,{tokens:F,text:X,color:x??F.colors.cancel,dividerPosition:"none",loading:Q,disabled:w?.disabled,onPress:te}),C&&_react().default.createElement(ActionButton,{tokens:F,text:Y,color:k??F.colors.confirm,dividerPosition:h?"left":"none",loading:U,disabled:E?.disabled,onPress:oe})),[x,Q,w?.disabled,X,k,U,E?.disabled,Y,ce.border,te,oe,J,h,C,F]),ge=I??(K?ue:pe);return _react().default.createElement(_popup.default,_extends({visible:o,placement:"center",round:!0,overlay:d,overlayStyle:u,overlayTestID:p,closeOnBackPress:g,closeOnPopstate:f,closeOnClickOverlay:_||m,onClickOverlay:y,beforeClose:de,onClose:L,onClosed:R,contentAnimationStyle:ae,style:se,accessibilityRole:"alertdialog",accessibilityLabel:"string"==typeof r?r:void 0},T),c&&_react().default.createElement(_reactNative().Pressable,{style:[S.closeIcon,{top:F.spacing.paddingTop/2,right:F.spacing.paddingHorizontal/2,padding:F.spacing.closeIconPadding}],hitSlop:{top:8,bottom:8,left:8,right:8},onPress:ee},s??_react().default.createElement(_reactNativeSystemIcon().Close,{size:F.sizes.closeSize,fill:F.colors.closeIcon,color:F.colors.closeIcon})),ie&&_react().default.createElement(_reactNative().View,{style:ie.wrap},(0,_utils.renderTextOrNode)(r,ie.text)),G&&_react().default.createElement(_reactNative().View,{style:[S.content,le.content,O]},j?H:_react().default.createElement(_reactNative().View,{style:le.wrap},(0,_utils.renderTextOrNode)(n,le.text))),ge)},S=_reactNative().StyleSheet.create({titleWrap:{alignItems:"center"},title:{textAlign:"center"},content:{width:"100%"},msg:{textAlign:"center"},footer:{flexDirection:"row",position:"relative"},footerBorder:{position:"absolute",top:0,left:0,right:0,height:0},btn:{flex:1,alignItems:"center",justifyContent:"center"},btnDiv:{position:"absolute",pointerEvents:"none"},msgWrap:{width:"100%"},roundFooter:{width:"100%",flexDirection:"row"},roundBtnWrap:{flex:1},closeIcon:{position:"absolute",zIndex:1}}),Dialog=exports.Dialog=_react().default.memo(DialogImpl);Dialog.displayName="Dialog";var _default=exports.default=Dialog;
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Dialog=void 0;var _useLocale=require("../config-provider/useLocale"),_platform=require("../../platform"),_animation=require("../../hooks/animation"),_hairline=require("../../utils/hairline"),_promise=require("../../utils/promise"),_validate=require("../../utils/validate"),_utils=require("../../utils");function _reactNativeSystemIcon(){const e=require("react-native-system-icon");return _reactNativeSystemIcon=function(){return e},e}var _button=_interopRequireDefault(require("../button")),_popup=_interopRequireDefault(require("../popup")),_tokens=require("./tokens");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var o=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,a,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?r:o){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((a=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(a.get||a.set)?n(i,t,a):i[t]=e[t]);return i})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},_extends.apply(null,arguments)}const ActionButton=e=>{const{text:t,color:o,tokens:r,dividerPosition:n="none",loading:a,disabled:i,onPress:l}=e,c=o??r.colors.confirm,s="none"===n?null:[S.btnDiv,{width:0},(0,_hairline.createHairlineView)({position:n,color:r.colors.divider,top:0,bottom:0,[n]:0})];return _react().default.createElement(_reactNative().Pressable,{accessibilityRole:"button",disabled:i||a,style:({pressed:e})=>[S.btn,{height:r.sizes.actionHeight,opacity:!e||i||a?1:.8}],onPress:i||a?void 0:l},s&&_react().default.createElement(_reactNative().View,{style:s,pointerEvents:"none"}),a?_react().default.createElement(_reactNative().ActivityIndicator,{size:"small",color:c}):(0,_utils.renderTextOrNode)(t??"",{color:c,fontFamily:r.typography.fontFamily,fontSize:r.typography.actionSize,fontWeight:r.typography.actionWeight}))},DialogImpl=e=>{const t=(0,_useLocale.useLocale)(),{visible:o,title:r,message:n,messageAlign:a="center",theme:i="default",width:l,closeable:c=!1,closeIcon:s,overlay:d=!0,overlayStyle:u,overlayTestID:p="dialog-overlay",closeOnBackPress:g=!1,closeOnPopstate:f=!0,closeOnOverlayPress:_=!1,closeOnClickOverlay:m=!1,onClickOverlay:y,onClickCloseIcon:v,beforeClose:b,showCancelButton:h=!1,showConfirmButton:C=!0,cancelButtonText:P,cancelButtonColor:x,cancelProps:w,confirmButtonText:N,confirmButtonColor:k,confirmProps:E,footer:O,contentStyle:I,titleStyle:q,messageStyle:z,tokensOverride:B,style:D,children:H,onCancel:W,onConfirm:V,onClose:L,onClosed:R,...T}=e,F=(0,_tokens.useDialogTokens)(B),M=(0,_animation.useReducedMotion)(),A=(0,_validate.isValidNode)(r),j=(0,_validate.isValidNode)(H),G=(0,_validate.isValidNode)(n)||j,J=h||C,K="round-button"===i,Q=w?.loading,U=E?.loading,X=P??t.cancel,Y=N??t.confirm,Z=(0,_react().useRef)({seq:0,beforeClose:b,onClose:L,onCancel:W,onConfirm:V,onClickCloseIcon:v,cancelLoad:Q,confirmLoad:U});Object.assign(Z.current,{beforeClose:b,onClose:L,onCancel:W,onConfirm:V,onClickCloseIcon:v,cancelLoad:Q,confirmLoad:U});const $=(0,_react().useCallback)((e,t)=>{const o=Z.current;o.seq+=1;const r=o.seq,n=o.beforeClose;if(!n)return void t?.();let a;try{a=n(e)}catch{return void t?.()}!1!==a&&((0,_promise.isPromiseLike)(a)?a.then(e=>{!1!==e&&Z.current.seq===r&&t?.()}).catch(()=>{Z.current.seq===r&&t?.()}):t?.())},[]),ee=(0,_react().useCallback)(()=>{Z.current.onClickCloseIcon?.(),$("close",()=>Z.current.onClose?.())},[$]),te=(0,_react().useCallback)(()=>{Z.current.cancelLoad||$("cancel",()=>Z.current.onCancel?.())},[$]),oe=(0,_react().useCallback)(()=>{Z.current.confirmLoad||$("confirm",()=>Z.current.onConfirm?.())},[$]),re=(0,_react().useRef)(new(_reactNative().Animated.Value)(.7)).current,ne=(0,_react().useRef)(null);(0,_react().useEffect)(()=>{ne.current?.stop(),re.setValue(o?.7:1);const e=_reactNative().Animated.timing(re,{toValue:o?1:.9,duration:M?0:300,easing:o?_reactNative().Easing.out(_reactNative().Easing.cubic):_reactNative().Easing.in(_reactNative().Easing.cubic),useNativeDriver:_platform.nativeDriverEnabled,isInteraction:!1});ne.current=e,e.start()},[re,o,M]),(0,_react().useEffect)(()=>()=>{ne.current?.stop()},[]);const ae={transform:[{scale:re}]},ie=(0,_react().useMemo)(()=>A?{wrap:[S.titleWrap,{paddingTop:G?F.spacing.titlePaddingTop:F.spacing.titleIsolatedPadding,paddingBottom:G?0:F.spacing.titleIsolatedPadding,paddingHorizontal:G?F.spacing.paddingHorizontal:0,marginBottom:G?F.spacing.titleGap:0}],text:[S.title,{color:F.colors.title,fontFamily:F.typography.fontFamily,fontSize:F.typography.titleSize,lineHeight:F.typography.titleLineHeight,fontWeight:F.typography.titleWeight},q]}:null,[A,G,q,F]),le=(0,_react().useMemo)(()=>({text:[S.msg,{color:K?F.colors.title:F.colors.message,fontFamily:F.typography.fontFamily,fontSize:F.typography.messageSize,lineHeight:F.typography.messageLineHeight,textAlign:a},z],content:j?null:{alignItems:"center"===a?"center":"left"===a?"flex-start":"flex-end"},wrap:[S.msgWrap,{paddingTop:A?F.spacing.messagePaddingTop:F.spacing.messagePadding,paddingBottom:K?F.spacing.roundFooterPadding:F.spacing.messagePadding,paddingHorizontal:F.spacing.messagePaddingHorizontal}]}),[K,a,z,j,A,F]),ce=(0,_react().useMemo)(()=>({border:[S.footerBorder,(0,_hairline.createHairlineView)({position:"top",color:F.colors.divider,left:0,right:0,top:0})],round:[S.roundFooter,{paddingTop:F.spacing.messagePaddingTop,paddingHorizontal:F.spacing.messagePaddingHorizontal,paddingBottom:F.spacing.roundFooterPadding}]}),[F]),se=(0,_react().useMemo)(()=>{const e=l?(0,_validate.isNumber)(l)?{width:l}:{width:String(l)}:{width:"90%",maxWidth:F.sizes.maxWidth};return[{backgroundColor:F.colors.background,borderRadius:F.sizes.borderRadius,padding:0},e,D]},[l,D,F]),de=(0,_react().useCallback)(()=>{const e=Z.current.beforeClose;if(!e)return!0;try{return e("close")}catch{return!0}},[]),ue=(0,_react().useMemo)(()=>J&&_react().default.createElement(_reactNative().View,{style:ce.round},h&&_react().default.createElement(_reactNative().View,{style:[S.roundBtnWrap,C&&{marginRight:F.spacing.roundFooterGap}]},_react().default.createElement(_button.default,{block:!0,round:!0,type:"warning",text:X,color:x,loading:Q,disabled:w?.disabled,onPress:te,style:{minHeight:F.sizes.roundButtonHeight}})),C&&_react().default.createElement(_reactNative().View,{style:[S.roundBtnWrap,h&&{marginLeft:F.spacing.roundFooterGap}]},_react().default.createElement(_button.default,{block:!0,round:!0,type:"danger",text:Y,color:k,loading:U,disabled:E?.disabled,onPress:oe,style:{minHeight:F.sizes.roundButtonHeight}}))),[x,Q,w?.disabled,X,k,U,E?.disabled,Y,te,oe,J,ce.round,h,C,F.sizes.roundButtonHeight,F.spacing.roundFooterGap]),pe=(0,_react().useMemo)(()=>J&&_react().default.createElement(_reactNative().View,{style:S.footer},_react().default.createElement(_reactNative().View,{style:ce.border,pointerEvents:"none"}),h&&_react().default.createElement(ActionButton,{tokens:F,text:X,color:x??F.colors.cancel,dividerPosition:"none",loading:Q,disabled:w?.disabled,onPress:te}),C&&_react().default.createElement(ActionButton,{tokens:F,text:Y,color:k??F.colors.confirm,dividerPosition:h?"left":"none",loading:U,disabled:E?.disabled,onPress:oe})),[x,Q,w?.disabled,X,k,U,E?.disabled,Y,ce.border,te,oe,J,h,C,F]),ge=O??(K?ue:pe);return _react().default.createElement(_popup.default,_extends({visible:o,placement:"center",round:!0,overlay:d,overlayStyle:u,overlayTestID:p,closeOnBackPress:g,closeOnPopstate:f,closeOnClickOverlay:_||m,onClickOverlay:y,beforeClose:de,onClose:L,onClosed:R,contentAnimationStyle:ae,style:se,accessibilityRole:"android"===_reactNative().Platform.OS?"alert":"alertdialog",accessibilityLabel:"string"==typeof r?r:void 0},T),c&&_react().default.createElement(_reactNative().Pressable,{style:[S.closeIcon,{top:F.spacing.paddingTop/2,right:F.spacing.paddingHorizontal/2,padding:F.spacing.closeIconPadding}],hitSlop:{top:8,bottom:8,left:8,right:8},onPress:ee},s??_react().default.createElement(_reactNativeSystemIcon().Close,{size:F.sizes.closeSize,fill:F.colors.closeIcon,color:F.colors.closeIcon})),ie&&_react().default.createElement(_reactNative().View,{style:ie.wrap},(0,_utils.renderTextOrNode)(r,ie.text)),G&&_react().default.createElement(_reactNative().View,{style:[S.content,le.content,I]},j?H:_react().default.createElement(_reactNative().View,{style:le.wrap},(0,_utils.renderTextOrNode)(n,le.text))),ge)},S=_reactNative().StyleSheet.create({titleWrap:{alignItems:"center"},title:{textAlign:"center"},content:{width:"100%"},msg:{textAlign:"center"},footer:{flexDirection:"row",position:"relative"},footerBorder:{position:"absolute",top:0,left:0,right:0,height:0},btn:{flex:1,alignItems:"center",justifyContent:"center"},btnDiv:{position:"absolute",pointerEvents:"none"},msgWrap:{width:"100%"},roundFooter:{width:"100%",flexDirection:"row"},roundBtnWrap:{flex:1},closeIcon:{position:"absolute",zIndex:1}}),Dialog=exports.Dialog=_react().default.memo(DialogImpl);Dialog.displayName="Dialog";var _default=exports.default=Dialog;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.FlexContext=exports.Flex=void 0;var _tokens=require("./tokens");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,o,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((o=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(o.get||o.set)?n(i,t,o):i[t]=e[t]);return i})(e,t)}const FlexContext=exports.FlexContext=_react().default.createContext({horizontalGap:0,verticalGap:0,columns:24}),alignMap={start:"flex-start",center:"center",end:"flex-end",baseline:"baseline",stretch:"stretch"},justifyMap={start:"flex-start",end:"flex-end",center:"center",around:"space-around",between:"space-between"},FlexImpl=e=>{const{tokensOverride:t,children:r,direction:a,wrap:n,gutter:o,align:i,justify:l,style:c,columns:u}=e,s=(0,_tokens.useFlexTokens)(t),f=a??s.defaults.direction,d=n??s.defaults.wrap,p=o??s.defaults.gutter,x=i??s.defaults.align,_=l??s.defaults.justify,m=Math.max(1,u??s.defaults.columns),[v,y]=Array.isArray(p)?p:[p,0],M=Math.max(0,v??0),g=Math.max(0,y??0),w="web"===_reactNative().Platform.OS,h=(0,_react().useMemo)(()=>({horizontalGap:M,verticalGap:g,columns:m}),[M,g,m]);return _react().default.createElement(FlexContext.Provider,{value:h},_react().default.createElement(_reactNative().View,{style:[s.layout.container,{flexDirection:f,flexWrap:d,alignItems:alignMap[x],justifyContent:justifyMap[_],marginHorizontal:!w&&M?-M/2:void 0,marginVertical:!w&&g?-g/2:void 0,columnGap:w?M:void 0,rowGap:w?g:void 0},c]},r))},Flex=exports.Flex=_react().default.memo(FlexImpl);
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.FlexContext=exports.Flex=void 0;var _tokens=require("./tokens");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,o,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((o=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(o.get||o.set)?n(i,t,o):i[t]=e[t]);return i})(e,t)}const FlexContext=exports.FlexContext=_react().default.createContext({horizontalGap:0,verticalGap:0,columns:24}),alignMap={start:"flex-start",center:"center",end:"flex-end",baseline:"baseline",stretch:"stretch"},justifyMap={start:"flex-start",end:"flex-end",center:"center",around:"space-around",between:"space-between"},FlexImpl=e=>{const{tokensOverride:t,children:r,direction:a,wrap:n,gutter:o,align:i,justify:l,style:u,columns:c}=e,s=(0,_tokens.useFlexTokens)(t),f=a??s.defaults.direction,p=n??s.defaults.wrap,d=o??s.defaults.gutter,x=i??s.defaults.align,_=l??s.defaults.justify,y=Math.max(1,c??s.defaults.columns),[m,v]=Array.isArray(d)?d:[d,0],M=Math.max(0,m??0),g=Math.max(0,v??0),h=(0,_react().useMemo)(()=>({horizontalGap:M,verticalGap:g,columns:y}),[M,g,y]);return _react().default.createElement(FlexContext.Provider,{value:h},_react().default.createElement(_reactNative().View,{style:[s.layout.container,{flexDirection:f,flexWrap:p,alignItems:alignMap[x],justifyContent:justifyMap[_],columnGap:M||void 0,rowGap:g||void 0},u]},r))},Flex=exports.Flex=_react().default.memo(FlexImpl);
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.FlexItem=void 0;var _FlexContext=require("./FlexContext"),_utils=require("../../utils");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,i=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,l,u={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return u;if(n=t?i:r){if(n.has(e))return n.get(e);n.set(e,u)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((l=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(l.get||l.set)?n(u,t,l):u[t]=e[t]);return u})(e,t)}const parseFlex=e=>{if((0,_utils.isNumber)(e))return{flex:e};if(!e)return;const t=e.trim();if(!t)return;if("auto"===t)return{flexGrow:1,flexShrink:1,flexBasis:"auto"};if("none"===t)return{flexGrow:0,flexShrink:0,flexBasis:"auto"};const r=Number(t);if((0,_utils.isNumber)(r))return{flex:r};const i=t.split(/\s+/);if(i.length>=2){const[e,t]=i.map(Number);if((0,_utils.isNumber)(e)&&(0,_utils.isNumber)(t)){const r=i.slice(2).join(" ");let n;if("auto"===r)n="auto";else if(r){const e=r.match(/^(-?\d+(?:\.\d+)?)px$/),t=Number(e?e[1]:r);(0,_utils.isNumber)(t)&&(n=t)}return{flexGrow:e,flexShrink:t,flexBasis:n}}}},FlexItemImpl=({span:e,flex:t,style:r,children:i})=>{const{horizontalGap:n,verticalGap:l,columns:u}=(0,_react().useContext)(_FlexContext.FlexContext),a="web"===_reactNative().Platform.OS;if((0,_utils.isNumber)(e)&&e<=0)return null;const o={};if((0,_utils.isNumber)(e)){const t=Math.max(1,u),r=Math.min(Math.max(e,0),t)/t;o.width=100*r+"%",o.flexGrow=0,o.flexShrink=0}return _react().default.createElement(_reactNative().View,{style:[a?null:{paddingHorizontal:n/2,paddingVertical:l/2},o,parseFlex(t),r]},i)},FlexItem=exports.FlexItem=_react().default.memo(FlexItemImpl);FlexItem.displayName="FlexItem";
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.FlexItem=void 0;var _FlexContext=require("./FlexContext"),_utils=require("../../utils");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,i=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,u,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?i:r){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((u=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(u.get||u.set)?n(l,t,u):l[t]=e[t]);return l})(e,t)}const parseFlex=e=>{if((0,_utils.isNumber)(e))return{flex:e};if(!e)return;const t=e.trim();if(!t)return;if("auto"===t)return{flexGrow:1,flexShrink:1,flexBasis:"auto"};if("none"===t)return{flexGrow:0,flexShrink:0,flexBasis:"auto"};const r=Number(t);if((0,_utils.isNumber)(r))return{flex:r};const i=t.split(/\s+/);if(i.length>=2){const[e,t]=i.map(Number);if((0,_utils.isNumber)(e)&&(0,_utils.isNumber)(t)){const r=i.slice(2).join(" ");let n;if("auto"===r)n="auto";else if(r){const e=r.match(/^(-?\d+(?:\.\d+)?)px$/),t=Number(e?e[1]:r);(0,_utils.isNumber)(t)&&(n=t)}return{flexGrow:e,flexShrink:t,flexBasis:n}}}},FlexItemImpl=({span:e,flex:t,style:r,children:i})=>{const{columns:n}=(0,_react().useContext)(_FlexContext.FlexContext);if((0,_utils.isNumber)(e)&&e<=0)return null;const u={};if((0,_utils.isNumber)(e)){const t=Math.max(1,n),r=Math.min(Math.max(e,0),t)/t;u.flexBasis=100*r+"%",u.flexGrow=0,u.flexShrink=1}return _react().default.createElement(_reactNative().View,{style:[u,parseFlex(t),r]},i)},FlexItem=exports.FlexItem=_react().default.memo(FlexItemImpl);FlexItem.displayName="FlexItem";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.useWatch=exports.default=exports.FormSubscribe=exports.FormContext=void 0;var _utils=require("../../utils"),_promise=require("../../utils/promise"),_validate=require("../../utils/validate"),_utils2=require("./utils"),_useLocale=require("../config-provider/useLocale");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,u,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((u=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(u.get||u.set)?n(i,t,u):i[t]=e[t]);return i})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},_extends.apply(null,arguments)}const FormContext=exports.FormContext=_react().default.createContext(null),runRuleValidation=(e,t,r,a)=>{const n=e.message??a??"Validation failed",u=null==t||""===t||Array.isArray(t)&&0===t.length;if(e.required&&(u||e.whitespace&&(0,_validate.isString)(t)&&0===t.trim().length))return n;if(u)return null;if(e.pattern&&(0,_validate.isString)(t)&&!e.pattern.test(t))return n;if(void 0!==e.len||void 0!==e.min||void 0!==e.max){const r=(0,_validate.isNumber)(t)?t:(0,_validate.isString)(t)||Array.isArray(t)?t.length:0;if(void 0!==e.len&&r!==e.len)return n;if(void 0!==e.min&&r<e.min)return n;if(void 0!==e.max&&r>e.max)return n}if(!e.validator)return null;const i=e=>(0,_validate.isString)(e)?e:!1===e?n:null,l=e.validator(t,r);return(0,_promise.isPromiseLike)(l)?l.then(i):i(l)},InternalFormImpl=(e,t)=>{const{initialValues:r,colon:a,labelWidth:n,showValidateMessage:u=!0,onValuesChange:i,onFinish:l,style:s,footer:c,children:o,..._}=e,d=(0,_useLocale.useLocale)(),f=(0,_react().useRef)({}),m=(0,_react().useRef)({}),g=(0,_react().useRef)(r??f.current),v=(0,_react().useRef)({}),h=(0,_react().useRef)(new Map),p=(0,_react().useRef)(r??f.current),b=(0,_react().useRef)({}),F=(0,_react().useRef)(new Set),y=(0,_react().useRef)(i),V=(0,_react().useRef)(l);y.current=i,V.current=l;const N=r??f.current,[,x]=(0,_react().useState)(0),R=(0,_react().useCallback)((e,t)=>{F.current.forEach(r=>r(e,t))},[]);(0,_react().useEffect)(()=>{(0,_utils.shallowEqualObject)(g.current,N)||(g.current=N,p.current=N,m.current={},x(e=>e+1),R({[_utils2.FORM_ALL_FIELDS_KEY]:!0},N))},[N,R]);const E=(0,_react().useCallback)((e,t)=>{const r=(0,_utils2.serializeNamePath)(e),a=m.current[r];if(!t.length){if(!a)return;const t={...m.current};return delete t[r],m.current=t,void R({[r]:(0,_utils2.getValueByName)(p.current,e)},p.current)}a?.[0]===t[0]&&a.length===t.length||(m.current={...m.current,[r]:t},R({[r]:(0,_utils2.getValueByName)(p.current,e)},p.current))},[R]),P=(0,_react().useCallback)((e,t)=>{const r=(0,_utils2.serializeNamePath)(e),a=v.current[r];if(a?.dependencies?.length)for(const e of a.dependencies){const t=(0,_utils2.serializeNamePath)(e),a=h.current.get(t);a&&(a.delete(r),a.size||h.current.delete(t))}if(v.current[r]={...t,name:e},t.dependencies?.length)for(const e of t.dependencies){const t=(0,_utils2.serializeNamePath)(e),a=h.current.get(t);a?a.add(r):h.current.set(t,new Set([r]))}if(void 0!==t.initialValue){void 0===(0,_utils2.getValueByName)(g.current,e)&&(g.current=(0,_utils2.setValueByName)(g.current,e,t.initialValue));if(void 0===(0,_utils2.getValueByName)(p.current,e)){const a=(0,_utils2.setValueByName)(p.current,e,t.initialValue);p.current=a,R({[r]:t.initialValue},a)}}return()=>{const t=v.current[r];if(delete v.current[r],t?.dependencies?.length)for(const e of t.dependencies){const t=(0,_utils2.serializeNamePath)(e),a=h.current.get(t);a&&(a.delete(r),a.size||h.current.delete(t))}E(e,[])}},[R,E]),w=(0,_react().useRef)(d);w.current=d;const C=(0,_react().useCallback)(async(e,t,r,a)=>{const n=(0,_utils2.serializeNamePath)(e),u=(b.current[n]??0)+1;b.current[n]=u;const i=v.current[n],l=i?.rules??[];if(!l.length)return E(e,[]),!0;let s=t?l.filter(e=>{const r=e.validateTrigger??i.validateTrigger;return!r||(0,_utils2.normalizeTrigger)(r).includes(t)}):l;if(!s.length){if(!m.current[n]?.length)return!0;s=l}const c=a??p.current,o=r??(0,_utils2.getValueByName)(c,e),_=w.current?.vanForm?.validationFailed;for(const t of s){const r=runRuleValidation(t,o,c,_),a=(0,_promise.isPromiseLike)(r)?await r:r;if(b.current[n]!==u)return!0;if(a)return E(e,[a]),!1}return b.current[n]!==u||E(e,[]),!0},[E]),L=(0,_react().useCallback)(async e=>{const t=e??Object.values(v.current).map(e=>e.name);if((await Promise.all(t.map(e=>C(e)))).some(e=>!e))throw m.current;return p.current},[C]),O=(0,_react().useCallback)((e,t,r,a,n)=>{C(t,r,a,n);const u=h.current.get(e);if(u?.size)for(const e of u){const t=v.current[e];t&&C(t.name,r,(0,_utils2.getValueByName)(n,t.name),n)}},[C]),B=(0,_react().useCallback)((e,t,r)=>{const a=(0,_utils2.serializeNamePath)(e),n=p.current;if((0,_utils2.getValueByName)(n,e)===t)return;const u=(0,_utils2.setValueByName)(n,e,t);p.current=u,y.current?.(u,a,t),O(a,e,r,t,u),R({[a]:t},u)},[R,O]),S=(0,_react().useMemo)(()=>({submit:async()=>{try{const e=await L();return V.current?.(e),e}catch{return}},getFieldsValue:()=>p.current,setFieldsValue:(e,t)=>{const r=t?.validate??!1,a=p.current;let n=a;const u={};Object.keys(e).forEach(t=>{const a=e[t];(0,_utils2.getValueByName)(n,t)!==a&&(u[t]=a,n=(0,_utils2.setValueByName)(n,t,a),y.current?.(n,t,a),r&&O(t,t,void 0,a,n))}),n!==a&&(p.current=n,R(u,n))},resetFields:()=>{let e=g.current;Object.values(v.current).forEach(t=>{void 0!==t.initialValue&&void 0===(0,_utils2.getValueByName)(e,t.name)&&(e=(0,_utils2.setValueByName)(e,t.name,t.initialValue))}),p.current=e,m.current={},R({[_utils2.FORM_ALL_FIELDS_KEY]:!0},e)},validateFields:L,getFieldError:e=>m.current[(0,_utils2.serializeNamePath)(e)]??[]}),[L,O,R]);(0,_react().useImperativeHandle)(t,()=>S,[S]);const k=(0,_react().useMemo)(()=>({getFieldValue:e=>(0,_utils2.getValueByName)(p.current,e),setFieldValue:B,registerField:P,getFieldError:e=>m.current[(0,_utils2.serializeNamePath)(e)],validateField:(e,t)=>C(e,t),getFieldsValue:()=>p.current,subscribe:e=>(F.current.add(e),()=>F.current.delete(e)),form:S,colon:a,labelWidth:n,showValidateMessage:u}),[B,P,C,S,a,n,u]);return _react().default.createElement(FormContext.Provider,{value:k},_react().default.createElement(_reactNative().View,_extends({style:s},_),o,(0,_validate.isText)(c)?(0,_utils.renderTextOrNode)(c,[]):c))},InternalFormRef=_react().default.forwardRef(InternalFormImpl),InternalForm=_react().default.memo(InternalFormRef),useWatch=(e,t)=>{const r=(0,_react().useContext)(FormContext),a=void 0===e?void 0:Array.isArray(e)?e.length&&(0,_validate.isText)(e[0])?[e]:e:[e],n=(0,_react().useCallback)(e=>{const n=e??r?.getFieldsValue?.()??t?.current?.getFieldsValue?.()??{};if(!a)return n;if(1===a.length)return(0,_utils2.getValueByName)(n,a[0]);const u={};for(const e of a)u[(0,_utils2.serializeNamePath)(e)]=(0,_utils2.getValueByName)(n,e);return u},[r,t,a]),[u,i]=(0,_react().useState)(()=>n());return(0,_react().useEffect)(()=>{if(r?.subscribe)return r.subscribe((e,t)=>{_utils2.FORM_ALL_FIELDS_KEY in e?i(n(t)):a&&!a.some(t=>(0,_utils2.serializeNamePath)(t)in e)||i(n(t))})},[r,n,a]),(0,_react().useEffect)(()=>{i(n())},[n]),u};exports.useWatch=useWatch;const FormSubscribe=({to:e,children:t})=>{const r=(0,_react().useContext)(FormContext),[a,n]=(0,_react().useState)({});return(0,_react().useEffect)(()=>{if(r?.subscribe)return r.subscribe(t=>{(!e||_utils2.FORM_ALL_FIELDS_KEY in t||Object.keys(t).some(t=>e.includes(t)))&&n(t)})},[r,e]),_react().default.createElement(_react().default.Fragment,null,t(a,r?.form||null))};exports.FormSubscribe=FormSubscribe;var _default=exports.default=InternalForm;
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.useWatch=exports.toNamePath=exports.setValueByName=exports.serializeNamePath=exports.normalizeTrigger=exports.getValueByName=exports.default=exports.FormSubscribe=exports.FormContext=exports.FORM_ALL_FIELDS_KEY=void 0;var _utils=require("../../utils"),_promise=require("../../utils/promise"),_validate=require("../../utils/validate"),_useLocale=require("../config-provider/useLocale");function _interopRequireWildcard(e,r){if("function"==typeof WeakMap)var t=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,r){if(!r&&e&&e.__esModule)return e;var n,i,u={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return u;if(n=r?a:t){if(n.has(e))return n.get(e);n.set(e,u)}for(const r in e)"default"!==r&&{}.hasOwnProperty.call(e,r)&&((i=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,r))&&(i.get||i.set)?n(u,r,i):u[r]=e[r]);return u})(e,r)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var a in t)({}).hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e},_extends.apply(null,arguments)}const normalizeTrigger=e=>e?Array.isArray(e)?e:[e]:[];exports.normalizeTrigger=normalizeTrigger;const FORM_ALL_FIELDS_KEY=exports.FORM_ALL_FIELDS_KEY="__form_all__",toNamePath=e=>null==e?[]:Array.isArray(e)?e:(0,_validate.isNumber)(e)?[e]:(0,_validate.isString)(e)?e.split("."):[String(e)];exports.toNamePath=toNamePath;const serializeNamePath=e=>toNamePath(e).join(".");exports.serializeNamePath=serializeNamePath;const getValueByName=(e,r)=>toNamePath(r).reduce((e,r)=>{if(null==e)return e;const t=String(r);if(Array.isArray(e)){const r=Number(t);return Number.isFinite(r)?e[r]:e[t]}return"object"==typeof e?e[t]:void 0},e);exports.getValueByName=getValueByName;const setValueByName=(e,r,t)=>{const a=toNamePath(r);if(!a.length)return e;const n=Array.isArray(e)?[...e]:"object"==typeof e&&null!==e?{...e}:{};let i=n;return a.forEach((e,r)=>{const n=String(e),u=Number(n);if(r===a.length-1)return void(Array.isArray(i)&&Number.isFinite(u)?i[u]=t:i[n]=t);const s=Array.isArray(i)&&Number.isFinite(u)?i[u]:i[n],c=null==s?(0,_validate.isNumber)(a[r+1])?[]:{}:Array.isArray(s)?[...s]:"object"==typeof s?{...s}:{};Array.isArray(i)&&Number.isFinite(u)?i[u]=c:i[n]=c,i=c}),n};exports.setValueByName=setValueByName;const FormContext=exports.FormContext=_react().default.createContext(null),runRuleValidation=(e,r,t,a)=>{const n=e.message??a??"Validation failed",i=null==r||""===r||Array.isArray(r)&&0===r.length;if(e.required&&(i||e.whitespace&&(0,_validate.isString)(r)&&0===r.trim().length))return n;if(i)return null;if(e.pattern&&(0,_validate.isString)(r)&&!e.pattern.test(r))return n;if(void 0!==e.len||void 0!==e.min||void 0!==e.max){const t=(0,_validate.isNumber)(r)?r:(0,_validate.isString)(r)||Array.isArray(r)?r.length:0;if(void 0!==e.len&&t!==e.len)return n;if(void 0!==e.min&&t<e.min)return n;if(void 0!==e.max&&t>e.max)return n}if(!e.validator)return null;const u=e=>(0,_validate.isString)(e)?e:!1===e?n:null,s=e.validator(r,t);return(0,_promise.isPromiseLike)(s)?s.then(u):u(s)},InternalFormImpl=(e,r)=>{const{initialValues:t,colon:a,labelWidth:n,showValidateMessage:i=!0,onValuesChange:u,onFinish:s,style:c,footer:l,children:o,...d}=e,m=(0,_useLocale.useLocale)(),f=(0,_react().useRef)({}),_=(0,_react().useRef)({}),g=(0,_react().useRef)(t??f.current),y=(0,_react().useRef)({}),h=(0,_react().useRef)(new Map),p=(0,_react().useRef)(t??f.current),N=(0,_react().useRef)({}),v=(0,_react().useRef)(new Set),b=(0,_react().useRef)(u),F=(0,_react().useRef)(s);b.current=u,F.current=s;const V=t??f.current,[,x]=(0,_react().useState)(0),P=(0,_react().useCallback)((e,r)=>{v.current.forEach(t=>t(e,r))},[]);(0,_react().useEffect)(()=>{(0,_utils.shallowEqualObject)(g.current,V)||(g.current=V,p.current=V,_.current={},x(e=>e+1),P({[FORM_ALL_FIELDS_KEY]:!0},V))},[V,P]);const A=(0,_react().useCallback)((e,r)=>{const t=serializeNamePath(e),a=_.current[t];if(!r.length){if(!a)return;const r={..._.current};return delete r[t],_.current=r,void P({[t]:getValueByName(p.current,e)},p.current)}a?.[0]===r[0]&&a.length===r.length||(_.current={..._.current,[t]:r},P({[t]:getValueByName(p.current,e)},p.current))},[P]),E=(0,_react().useCallback)((e,r)=>{const t=serializeNamePath(e),a=y.current[t];if(a?.dependencies?.length)for(const e of a.dependencies){const r=serializeNamePath(e),a=h.current.get(r);a&&(a.delete(t),a.size||h.current.delete(r))}if(y.current[t]={...r,name:e},r.dependencies?.length)for(const e of r.dependencies){const r=serializeNamePath(e),a=h.current.get(r);a?a.add(t):h.current.set(r,new Set([t]))}if(void 0!==r.initialValue){void 0===getValueByName(g.current,e)&&(g.current=setValueByName(g.current,e,r.initialValue));if(void 0===getValueByName(p.current,e)){const a=setValueByName(p.current,e,r.initialValue);p.current=a,P({[t]:r.initialValue},a)}}return()=>{const r=y.current[t];if(delete y.current[t],r?.dependencies?.length)for(const e of r.dependencies){const r=serializeNamePath(e),a=h.current.get(r);a&&(a.delete(t),a.size||h.current.delete(r))}A(e,[])}},[P,A]),L=(0,_react().useRef)(m);L.current=m;const R=(0,_react().useCallback)(async(e,r,t,a)=>{const n=serializeNamePath(e),i=(N.current[n]??0)+1;N.current[n]=i;const u=y.current[n],s=u?.rules??[];if(!s.length)return A(e,[]),!0;let c=r?s.filter(e=>{const t=e.validateTrigger??u.validateTrigger;return!t||normalizeTrigger(t).includes(r)}):s;if(!c.length){if(!_.current[n]?.length)return!0;c=s}const l=a??p.current,o=t??getValueByName(l,e),d=L.current?.vanForm?.validationFailed;for(const r of c){const t=runRuleValidation(r,o,l,d),a=(0,_promise.isPromiseLike)(t)?await t:t;if(N.current[n]!==i)return!0;if(a)return A(e,[a]),!1}return N.current[n]!==i||A(e,[]),!0},[A]),B=(0,_react().useCallback)(async e=>{const r=e??Object.values(y.current).map(e=>e.name);if((await Promise.all(r.map(e=>R(e)))).some(e=>!e))throw _.current;return p.current},[R]),S=(0,_react().useCallback)((e,r,t,a,n)=>{R(r,t,a,n);const i=h.current.get(e);if(i?.size)for(const e of i){const r=y.current[e];r&&R(r.name,t,getValueByName(n,r.name),n)}},[R]),z=(0,_react().useCallback)((e,r,t)=>{const a=serializeNamePath(e),n=p.current;if(getValueByName(n,e)===r)return;const i=setValueByName(n,e,r);p.current=i,b.current?.(i,a,r),S(a,e,t,r,i),P({[a]:r},i)},[P,S]),O=(0,_react().useMemo)(()=>({submit:async()=>{try{const e=await B();return F.current?.(e),e}catch{return}},getFieldsValue:()=>p.current,setFieldsValue:(e,r)=>{const t=r?.validate??!1,a=p.current;let n=a;const i={};Object.keys(e).forEach(r=>{const a=e[r];getValueByName(n,r)!==a&&(i[r]=a,n=setValueByName(n,r,a),b.current?.(n,r,a),t&&S(r,r,void 0,a,n))}),n!==a&&(p.current=n,P(i,n))},resetFields:()=>{let e=g.current;Object.values(y.current).forEach(r=>{void 0!==r.initialValue&&void 0===getValueByName(e,r.name)&&(e=setValueByName(e,r.name,r.initialValue))}),p.current=e,_.current={},P({[FORM_ALL_FIELDS_KEY]:!0},e)},validateFields:B,getFieldError:e=>_.current[serializeNamePath(e)]??[]}),[B,S,P]);(0,_react().useImperativeHandle)(r,()=>O,[O]);const w=(0,_react().useMemo)(()=>({getFieldValue:e=>getValueByName(p.current,e),setFieldValue:z,registerField:E,getFieldError:e=>_.current[serializeNamePath(e)],validateField:(e,r)=>R(e,r),getFieldsValue:()=>p.current,subscribe:e=>(v.current.add(e),()=>v.current.delete(e)),form:O,colon:a,labelWidth:n,showValidateMessage:i}),[z,E,R,O,a,n,i]);return _react().default.createElement(FormContext.Provider,{value:w},_react().default.createElement(_reactNative().View,_extends({style:c},d),o,(0,_validate.isText)(l)?(0,_utils.renderTextOrNode)(l,[]):l))},InternalFormRef=_react().default.forwardRef(InternalFormImpl),InternalForm=_react().default.memo(InternalFormRef),useWatch=(e,r)=>{const t=(0,_react().useContext)(FormContext),a=void 0===e?void 0:Array.isArray(e)?e.length&&(0,_validate.isText)(e[0])?[e]:e:[e],n=(0,_react().useCallback)(e=>{const n=e??t?.getFieldsValue?.()??r?.current?.getFieldsValue?.()??{};if(!a)return n;if(1===a.length)return getValueByName(n,a[0]);const i={};for(const e of a)i[serializeNamePath(e)]=getValueByName(n,e);return i},[t,r,a]),[i,u]=(0,_react().useState)(()=>n());return(0,_react().useEffect)(()=>{if(t?.subscribe)return t.subscribe((e,r)=>{FORM_ALL_FIELDS_KEY in e?u(n(r)):a&&!a.some(r=>serializeNamePath(r)in e)||u(n(r))})},[t,n,a]),(0,_react().useEffect)(()=>{u(n())},[n]),i};exports.useWatch=useWatch;const FormSubscribe=({to:e,children:r})=>{const t=(0,_react().useContext)(FormContext),[a,n]=(0,_react().useState)({});return(0,_react().useEffect)(()=>{if(t?.subscribe)return t.subscribe(r=>{(!e||FORM_ALL_FIELDS_KEY in r||Object.keys(r).some(r=>e.includes(r)))&&n(r)})},[t,e]),_react().default.createElement(_react().default.Fragment,null,r(a,t?.form||null))};exports.FormSubscribe=FormSubscribe;var _default=exports.default=InternalForm;
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.FormItem=void 0;var _utils=require("../../utils"),_FormContext=require("./FormContext"),_utils2=require("./utils");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,i=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var l,o,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(l=t?i:r){if(l.has(e))return l.get(e);l.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((o=(l=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(o.get||o.set)?l(a,t,o):a[t]=e[t]);return a})(e,t)}const EMPTY_RULES=[],EMPTY_VALUES={},FormItemImpl=({name:e,label:t,description:r,intro:i,tooltip:l,rules:o,dependencies:a,valuePropName:n="value",trigger:u="onChangeText",validateTrigger:d,showValidateMessage:s,required:c,shouldUpdate:f,initialValue:_,children:m})=>{const p="function"==typeof m,F=(0,_react().useContext)(_FormContext.FormContext),g=o??EMPTY_RULES,v=e?(0,_utils2.serializeNamePath)(e):void 0,E=p&&!v&&!f,V=(0,_react().useRef)(EMPTY_VALUES),[,b]=(0,_react().useState)(0);(0,_react().useEffect)(()=>{if(F?.subscribe)return F.subscribe((e,t)=>{_utils2.FORM_ALL_FIELDS_KEY in e||E?b(e=>e+1):f?f(V.current,t)&&b(e=>e+1):v&&v in e&&b(e=>e+1)})},[F,v,f,E]);const M=F?.getFieldsValue()??EMPTY_VALUES;if((0,_react().useEffect)(()=>{V.current=M},[M]),(0,_react().useEffect)(()=>{if(e&&F)return F.registerField(e,{rules:g,dependencies:a,initialValue:_,validateTrigger:d??u})},[F,e,g,a,_,d,u]),!F)return p?_react().default.createElement(_react().default.Fragment,null,m({getFieldValue:()=>{},getFieldsValue:()=>EMPTY_VALUES,form:null})):_react().default.createElement(_react().default.Fragment,null,m);const h=!f||f(V.current,M),I=e?F.getFieldValue(e):void 0,y=s??F.showValidateMessage??!0,P=e?F.getFieldError(e):void 0,q=y?P?.[0]:void 0,x=c??g.some(e=>e.required),T=(0,_utils2.normalizeTrigger)(d??u);if(p)return h?_react().default.createElement(_react().default.Fragment,null,m({getFieldValue:F.getFieldValue,getFieldsValue:F.getFieldsValue,form:F.form||null})):null;if(!e)return _react().default.createElement(_react().default.Fragment,null,m);if(!h)return null;const W=_react().default.Children.toArray(m);if(1!==W.length)return _react().default.createElement(_react().default.Fragment,null,m);const L=W[0],S=L.type.displayName,C=(0,_utils.isString)(S)&&(S.includes("Field")||S.includes("Input")),R={[n]:(()=>{const e=L.props[n];return void 0!==e?e:void 0!==I?I:C&&"value"===n?"":I})(),[u]:t=>{F.setFieldValue(e,t,u);const r=L.props[u];(0,_utils.isFunction)(r)&&r(t)}};T.forEach(t=>{if(!t||t===u)return;const r=L.props[t];R[t]=(...i)=>{(0,_utils.isFunction)(r)&&r(...i),F.validateField(e,t)}});const U=L.props;return void 0!==t&&void 0===U.label&&(R.label=t),void 0!==F.colon&&void 0!==R.label&&void 0===U.colon&&(R.colon=F.colon),void 0!==F.labelWidth&&void 0===U.labelWidth&&(R.labelWidth=F.labelWidth),r&&void 0===U.description&&(R.description=r),i&&void 0===U.intro&&(R.intro=i),l&&void 0===U.tooltip&&(R.tooltip=l),x&&void 0===U.required&&(R.required=!0),q&&void 0===U.errorMessage&&(R.error=!0,R.errorMessage=q),_react().default.cloneElement(L,R)};FormItemImpl.displayName="FormItem";const FormItem=exports.FormItem=_react().default.memo(FormItemImpl);var _default=exports.default=FormItem;
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.FormItem=void 0;var _utils=require("../../utils"),_Form=require("./Form");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,l=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var i,o,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(i=t?l:r){if(i.has(e))return i.get(e);i.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((o=(i=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(o.get||o.set)?i(a,t,o):a[t]=e[t]);return a})(e,t)}const EMPTY_RULES=[],EMPTY_VALUES={},FormItemImpl=({name:e,label:t,description:r,intro:l,tooltip:i,rules:o,dependencies:a,valuePropName:n="value",trigger:u="onChangeText",validateTrigger:d,showValidateMessage:c,required:s,shouldUpdate:f,initialValue:_,children:m})=>{const p="function"==typeof m,F=(0,_react().useContext)(_Form.FormContext),g=o??EMPTY_RULES,v=e?(0,_Form.serializeNamePath)(e):void 0,E=p&&!v&&!f,V=(0,_react().useRef)(EMPTY_VALUES),[,b]=(0,_react().useState)(0);(0,_react().useEffect)(()=>{if(F?.subscribe)return F.subscribe((e,t)=>{_Form.FORM_ALL_FIELDS_KEY in e||E?b(e=>e+1):f?f(V.current,t)&&b(e=>e+1):v&&v in e&&b(e=>e+1)})},[F,v,f,E]);const M=F?.getFieldsValue()??EMPTY_VALUES;if((0,_react().useEffect)(()=>{V.current=M},[M]),(0,_react().useEffect)(()=>{if(e&&F)return F.registerField(e,{rules:g,dependencies:a,initialValue:_,validateTrigger:d??u})},[F,e,g,a,_,d,u]),!F)return p?_react().default.createElement(_react().default.Fragment,null,m({getFieldValue:()=>{},getFieldsValue:()=>EMPTY_VALUES,form:null})):_react().default.createElement(_react().default.Fragment,null,m);const h=!f||f(V.current,M),I=e?F.getFieldValue(e):void 0,y=c??F.showValidateMessage??!0,P=e?F.getFieldError(e):void 0,q=y?P?.[0]:void 0,T=s??g.some(e=>e.required),W=(0,_Form.normalizeTrigger)(d??u);if(p)return h?_react().default.createElement(_react().default.Fragment,null,m({getFieldValue:F.getFieldValue,getFieldsValue:F.getFieldsValue,form:F.form||null})):null;if(!e)return _react().default.createElement(_react().default.Fragment,null,m);if(!h)return null;const L=_react().default.Children.toArray(m);if(1!==L.length)return _react().default.createElement(_react().default.Fragment,null,m);const S=L[0],x=S.type.displayName,R=(0,_utils.isString)(x)&&(x.includes("Field")||x.includes("Input")),U={[n]:(()=>{const e=S.props[n];return void 0!==e?e:void 0!==I?I:R&&"value"===n?"":I})(),[u]:t=>{F.setFieldValue(e,t,u);const r=S.props[u];(0,_utils.isFunction)(r)&&r(t)}};W.forEach(t=>{if(!t||t===u)return;const r=S.props[t];U[t]=(...l)=>{(0,_utils.isFunction)(r)&&r(...l),F.validateField(e,t)}});const Y=S.props;return void 0!==t&&void 0===Y.label&&(U.label=t),void 0!==F.colon&&void 0!==U.label&&void 0===Y.colon&&(U.colon=F.colon),void 0!==F.labelWidth&&void 0===Y.labelWidth&&(U.labelWidth=F.labelWidth),r&&void 0===Y.description&&(U.description=r),l&&void 0===Y.intro&&(U.intro=l),i&&void 0===Y.tooltip&&(U.tooltip=i),T&&void 0===Y.required&&(U.required=!0),q&&void 0===Y.errorMessage&&(U.error=!0,U.errorMessage=q),_react().default.cloneElement(S,U)};FormItemImpl.displayName="FormItem";const FormItem=exports.FormItem=_react().default.memo(FormItemImpl);var _default=exports.default=FormItem;
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.FormList=void 0;var _FormContext=require("./FormContext"),_utils=require("./utils");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,i=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,u={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return u;if(n=t?i:r){if(n.has(e))return n.get(e);n.set(e,u)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(u,t,s):u[t]=e[t]);return u})(e,t)}const getList=(e,t)=>{const r=(0,_utils.getValueByName)(e.getFieldsValue(),t);return Array.isArray(r)?r:[]},FormList=({name:e,initialValue:t,children:r})=>{const i=(0,_react().useContext)(_FormContext.FormContext),n=(0,_react().useRef)(0),s=(0,_react().useRef)([]),u=(0,_utils.serializeNamePath)(e),[c,a]=(0,_react().useState)(()=>i?getList(i,e):[]),l=(0,_react().useCallback)(e=>{const t=s.current;for(;t.length<e;)t.push(n.current++);t.length>e&&(s.current=t.slice(0,e))},[]),o=(0,_react().useCallback)(()=>{i&&void 0===(0,_utils.getValueByName)(i.getFieldsValue(),e)&&void 0!==t&&i.setFieldValue(e,t)},[i,t,e]);(0,_react().useEffect)(()=>{o()},[o]),(0,_react().useEffect)(()=>{if(i?.subscribe)return i.subscribe((t,r)=>{if(_utils.FORM_ALL_FIELDS_KEY in t||u in t){const t=(0,_utils.getValueByName)(r,e),i=Array.isArray(t)?t:[];l(i.length),a(i)}})},[i,e,u,l]);const _=(0,_react().useCallback)((t,r)=>{if(!i)return;const u=getList(i,e),c="number"==typeof r?r:u.length,a=[...u];a.splice(c,0,t),s.current.splice(c,0,n.current++),i.setFieldValue(e,a)},[i,e]),f=(0,_react().useCallback)(t=>{if(!i)return;const r=getList(i,e);t<0||t>=r.length||(s.current.splice(t,1),i.setFieldValue(e,r.slice(0,t).concat(r.slice(t+1))))},[i,e]),p=(0,_react().useCallback)((t,r)=>{if(!i)return;const n=getList(i,e);if(t===r||t<0||r<0||t>=n.length||r>=n.length)return;const u=[...n],c=u.splice(t,1)[0];u.splice(r,0,c);const[a]=s.current.splice(t,1);s.current.splice(r,0,a),i.setFieldValue(e,u)},[i,e]);if(!i)return null;l(c.length);const d=c.map((e,t)=>({name:t,key:s.current[t],isListField:!0}));return _react().default.createElement(_react().default.Fragment,null,r(d,{add:_,remove:f,move:p}))};exports.FormList=FormList,FormList.displayName="Form.List";
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.FormList=void 0;var _Form=require("./Form");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 i,c,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(i=t?n:r){if(i.has(e))return i.get(e);i.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((c=(i=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(c.get||c.set)?i(a,t,c):a[t]=e[t]);return a})(e,t)}const getList=(e,t)=>{const r=(0,_Form.getValueByName)(e.getFieldsValue(),t);return Array.isArray(r)?r:[]},FormList=({name:e,initialValue:t,children:r})=>{const n=(0,_react().useContext)(_Form.FormContext),i=(0,_react().useRef)(0),c=(0,_react().useRef)([]),a=(0,_Form.serializeNamePath)(e),[s,u]=(0,_react().useState)(()=>n?getList(n,e):[]),l=(0,_react().useCallback)(e=>{const t=c.current;for(;t.length<e;)t.push(i.current++);t.length>e&&(c.current=t.slice(0,e))},[]),o=(0,_react().useCallback)(()=>{n&&void 0===(0,_Form.getValueByName)(n.getFieldsValue(),e)&&void 0!==t&&n.setFieldValue(e,t)},[n,t,e]);(0,_react().useEffect)(()=>{o()},[o]),(0,_react().useEffect)(()=>{if(n?.subscribe)return n.subscribe((t,r)=>{if(_Form.FORM_ALL_FIELDS_KEY in t||a in t){const t=(0,_Form.getValueByName)(r,e),n=Array.isArray(t)?t:[];l(n.length),u(n)}})},[n,e,a,l]);const f=(0,_react().useCallback)((t,r)=>{if(!n)return;const a=getList(n,e),s="number"==typeof r?r:a.length,u=[...a];u.splice(s,0,t),c.current.splice(s,0,i.current++),n.setFieldValue(e,u)},[n,e]),_=(0,_react().useCallback)(t=>{if(!n)return;const r=getList(n,e);t<0||t>=r.length||(c.current.splice(t,1),n.setFieldValue(e,r.slice(0,t).concat(r.slice(t+1))))},[n,e]),p=(0,_react().useCallback)((t,r)=>{if(!n)return;const i=getList(n,e);if(t===r||t<0||r<0||t>=i.length||r>=i.length)return;const a=[...i],s=a.splice(t,1)[0];a.splice(r,0,s);const[u]=c.current.splice(t,1);c.current.splice(r,0,u),n.setFieldValue(e,a)},[n,e]);if(!n)return null;l(s.length);const d=s.map((e,t)=>({name:t,key:c.current[t],isListField:!0}));return _react().default.createElement(_react().default.Fragment,null,r(d,{add:f,remove:_,move:p}))};exports.FormList=FormList,FormList.displayName="Form.List";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.GridContext=exports.Grid=void 0;var _utils=require("../../utils"),_tokens=require("./tokens");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,o=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var a,i,n={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return n;if(a=t?o:r){if(a.has(e))return a.get(e);a.set(e,n)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(a=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?a(n,t,i):n[t]=e[t]);return n})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)({}).hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},_extends.apply(null,arguments)}const GridContext=exports.GridContext=_react().default.createContext(null),GridImpl=e=>{const{tokensOverride:t,children:r,columnNum:o,gutter:a,border:i,center:n,square:u,direction:l,reverse:c,clickable:s,iconSize:d,iconColor:f,style:_,...m}=e,p=(0,_tokens.useGridTokens)(t),b=(0,_react().useMemo)(()=>{const e=o??p.defaults.columnNum;return Number.isFinite(e)&&e>0?Math.floor(e):p.defaults.columnNum},[o,p.defaults.columnNum]),y=(0,_react().useMemo)(()=>{const e=a??p.defaults.gutter;return Number.isFinite(e)&&e>0?e:0},[a,p.defaults.gutter]),v=i??p.defaults.border,g=n??p.defaults.center,x=u??p.defaults.square,M=l??p.defaults.direction,N=c??p.defaults.reverse,k=s??p.defaults.clickable,G=(0,_react().useMemo)(()=>{const e=d??p.defaults.iconSize;return Number.isFinite(e)&&e>0?e:p.defaults.iconSize},[d,p.defaults.iconSize]),w=(0,_react().useMemo)(()=>_react().default.Children.toArray(r).filter(e=>_react().default.isValidElement(e)),[r]),h=v&&!y,O=p.colors.border,q=(0,_react().useMemo)(()=>h?_react().default.createElement(_reactNative().View,{style:[p.layout.border,p.layout.borderTop,(0,_utils.createHairlineView)({position:"top",color:O,left:0,right:0,top:0})]}):null,[O,h,p.layout.border,p.layout.borderTop]),C=(0,_react().useMemo)(()=>h?_react().default.createElement(_reactNative().View,{style:[p.layout.border,p.layout.borderBottom,(0,_utils.createHairlineView)({position:"bottom",color:O,left:0,right:0,bottom:0})]}):null,[O,h,p.layout.border,p.layout.borderBottom]),P=(0,_react().useMemo)(()=>({columnNum:b,gutter:y,border:v,center:g,square:x,direction:M,reverse:N,clickable:k,iconSize:G,iconColor:f,count:w.length,tokens:p}),[v,g,w.length,k,b,M,y,f,G,N,x,p]),S=(0,_react().useMemo)(()=>"web"===_reactNative().Platform.OS?{display:"grid",gridTemplateColumns:`repeat(${b}, minmax(0, 1fr))`,columnGap:y,rowGap:y}:void 0,[b,y]),j=(0,_react().useMemo)(()=>[p.layout.container,"web"===_reactNative().Platform.OS?S:y?{paddingLeft:y}:void 0,_],[y,_,p.layout.container,S]),E=(0,_react().useMemo)(()=>w.map((e,t)=>_react().default.cloneElement(e,{gridItemIndex:t,key:e.key??t})),[w]);return _react().default.createElement(GridContext.Provider,{value:P},_react().default.createElement(_reactNative().View,_extends({accessibilityRole:"grid",style:j},m),q,E,C))},Grid=exports.Grid=_react().default.memo(GridImpl);Grid.displayName="Grid";
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.GridContext=exports.Grid=void 0;var _utils=require("../../utils"),_tokens=require("./tokens");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,o=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,a,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?o:r){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((a=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(a.get||a.set)?n(i,t,a):i[t]=e[t]);return i})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)({}).hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},_extends.apply(null,arguments)}const GridContext=exports.GridContext=_react().default.createContext(null),GridImpl=e=>{const{tokensOverride:t,children:r,columnNum:o,gutter:n,border:a,center:i,square:u,direction:l,reverse:c,clickable:s,iconSize:d,iconColor:f,style:_,onLayout:m,...p}=e,y=(0,_tokens.useGridTokens)(t),[b,v]=_react().default.useState(0),g=(0,_react().useMemo)(()=>{const e=o??y.defaults.columnNum;return Number.isFinite(e)&&e>0?Math.floor(e):y.defaults.columnNum},[o,y.defaults.columnNum]),k=(0,_react().useMemo)(()=>{const e=n??y.defaults.gutter;return Number.isFinite(e)&&e>0?e:0},[n,y.defaults.gutter]),x=a??y.defaults.border,G=i??y.defaults.center,M=u??y.defaults.square,N=l??y.defaults.direction,h=c??y.defaults.reverse,w=s??y.defaults.clickable,q=(0,_react().useMemo)(()=>{const e=d??y.defaults.iconSize;return Number.isFinite(e)&&e>0?e:y.defaults.iconSize},[d,y.defaults.iconSize]),C=(0,_react().useMemo)(()=>_react().default.Children.toArray(r).filter(e=>_react().default.isValidElement(e)),[r]),O=x&&!k,E=y.colors.border,W=(0,_react().useMemo)(()=>O?_react().default.createElement(_reactNative().View,{style:[y.layout.border,y.layout.borderTop,(0,_utils.createHairlineView)({position:"top",color:E,left:0,right:0,top:0})]}):null,[E,O,y.layout.border,y.layout.borderTop]),j=(0,_react().useMemo)(()=>O?_react().default.createElement(_reactNative().View,{style:[y.layout.border,y.layout.borderBottom,(0,_utils.createHairlineView)({position:"bottom",color:E,left:0,right:0,bottom:0})]}):null,[E,O,y.layout.border,y.layout.borderBottom]),P=(0,_react().useMemo)(()=>({columnNum:g,gutter:k,border:x,center:G,square:M,direction:N,reverse:h,clickable:w,iconSize:q,iconColor:f,count:C.length,containerWidth:b,tokens:y}),[x,G,C.length,w,g,b,N,k,f,q,h,M,y]),S=(0,_react().useMemo)(()=>C.map((e,t)=>_react().default.cloneElement(e,{gridItemIndex:t,key:e.key??t})),[C]),V=(0,_react().useCallback)(e=>{v(e.nativeEvent.layout.width),m?.(e)},[m]);return _react().default.createElement(GridContext.Provider,{value:P},_react().default.createElement(_reactNative().View,_extends({accessibilityRole:"grid",onLayout:V,style:[y.layout.container,k?{columnGap:k,rowGap:k}:void 0,_]},p),W,S,j))},Grid=exports.Grid=_react().default.memo(GridImpl);Grid.displayName="Grid";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.GridItem=void 0;var _designSystem=require("../../design-system"),_badge=_interopRequireDefault(require("../badge")),_utils=require("../../utils"),_GridContext=require("./GridContext");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,i=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,n,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(o=t?i:r){if(o.has(e))return o.get(e);o.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((n=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(n.get||n.set)?o(a,t,n):a[t]=e[t]);return a})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends.apply(null,arguments)}const GridItemImpl=e=>{const t=(0,_react().useContext)(_GridContext.GridContext);if(!t)throw new Error("GridItem must be used within Grid");const{gridItemIndex:r=0,text:i,icon:o,iconColor:n,badge:a,dot:l,contentStyle:c,textStyle:u,children:s,style:d,onPress:f,...p}=e,{tokens:y,columnNum:_,gutter:m,border:g,center:h,square:x,direction:b,reverse:v,clickable:w,iconSize:G,iconColor:N,count:O}=t,S=100/_+"%",q=(r+1)%_===0,R=Math.floor(r/_),W=Math.floor((O-1)/_),C=[y.layout.itemContentBase,"horizontal"===b?y.layout.itemHorizontal:y.layout.itemVertical,h&&y.layout.itemCenter,v?"horizontal"===b?y.layout.itemReverseRow:y.layout.itemReverseColumn:null,x?y.layout.itemContentSquare:null,{paddingHorizontal:y.spacing.paddingHorizontal,paddingVertical:y.spacing.paddingVertical,backgroundColor:y.colors.background},c],I=(0,_utils.isRenderable)(i),z=n??N??y.colors.text,P=(0,_react().useMemo)(()=>{if(s)return(0,_utils.isText)(s)?(0,_utils.renderTextOrNode)(s,[y.layout.text,{color:y.colors.text,fontSize:y.typography.fontSize,lineHeight:y.typography.lineHeight,fontFamily:y.typography.fontFamily,fontWeight:y.typography.fontWeight},u]):s;let e=null;if(o||a||l){const{style:t,...r}=a??{},i="vertical"===b?v?"marginTop":"marginBottom":v?"marginLeft":"marginRight",n=[y.layout.iconWrapper,I&&{[i]:y.spacing.iconGap}],c=(0,_utils.isFunction)(o)?o(G,z):o,u=_react().default.createElement(_reactNative().View,{style:n},c);e=a||l?_react().default.createElement(_badge.default,_extends({dot:l},r,{style:h?[t,{alignSelf:"center"}]:t}),u):u}const t=I&&((0,_utils.isText)(i)?_react().default.createElement(_designSystem.Text,{style:[y.layout.text,{color:y.colors.text,fontSize:y.typography.fontSize,lineHeight:y.typography.lineHeight,fontFamily:y.typography.fontFamily,fontWeight:y.typography.fontWeight},u],numberOfLines:y.defaults.textNumberOfLines},i):i);return _react().default.createElement(_react().default.Fragment,null,e,t)},[a,h,s,b,l,I,o,G,z,v,i,u,y.colors.text,y.defaults.textNumberOfLines,y.layout.iconWrapper,y.layout.text,y.spacing.iconGap,y.typography.fontFamily,y.typography.fontSize,y.typography.fontWeight,y.typography.lineHeight]),E=!g||m||q?null:_react().default.createElement(_reactNative().View,{style:[y.layout.itemBorderRight,(0,_utils.createHairlineView)({position:"right",color:y.colors.border,top:0,bottom:0,right:0})]}),H=g&&!m&&R<W?_react().default.createElement(_reactNative().View,{style:[y.layout.itemBorderBottom,(0,_utils.createHairlineView)({position:"bottom",color:y.colors.border,left:0,right:0,bottom:0})]}):null,V=_react().default.createElement(_reactNative().View,{style:C},P,E,H),M={width:"web"===_reactNative().Platform.OS?void 0:S,flexGrow:0,flexShrink:0,paddingRight:"web"===_reactNative().Platform.OS?void 0:m||void 0,marginTop:"web"===_reactNative().Platform.OS?void 0:m&&R>0?m:void 0};return w||(0,_utils.isFunction)(f)?_react().default.createElement(_reactNative().Pressable,_extends({accessibilityRole:"button",style:e=>[M,"function"==typeof d?d(e):d,{opacity:e.pressed?y.defaults.pressedOpacity:1}],android_ripple:{color:y.colors.active},onPress:f},p),V):_react().default.createElement(_reactNative().View,_extends({style:[M,"function"==typeof d?d({pressed:!1}):d]},p),V)},GridItem=exports.GridItem=_react().default.memo(GridItemImpl);GridItem.displayName="GridItem";
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.GridItem=void 0;var _designSystem=require("../../design-system"),_badge=_interopRequireDefault(require("../badge")),_utils=require("../../utils"),_GridContext=require("./GridContext");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,i=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,n,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(o=t?i:r){if(o.has(e))return o.get(e);o.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((n=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(n.get||n.set)?o(a,t,n):a[t]=e[t]);return a})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_extends.apply(null,arguments)}const GridItemImpl=e=>{const t=(0,_react().useContext)(_GridContext.GridContext);if(!t)throw new Error("GridItem must be used within Grid");const{gridItemIndex:r=0,text:i,icon:o,iconColor:n,badge:a,dot:l,contentStyle:c,textStyle:u,children:s,style:d,onPress:f,...p}=e,{tokens:y,columnNum:m,gutter:_,border:g,center:h,square:x,direction:b,reverse:v,clickable:w,iconSize:G,iconColor:W,count:S,containerWidth:q}=t,N=(r+1)%m===0,O=Math.floor(r/m),C=Math.floor((S-1)/m),I=[y.layout.itemContentBase,"horizontal"===b?y.layout.itemHorizontal:y.layout.itemVertical,h&&y.layout.itemCenter,v?"horizontal"===b?y.layout.itemReverseRow:y.layout.itemReverseColumn:null,x?y.layout.itemContentSquare:null,{paddingHorizontal:y.spacing.paddingHorizontal,paddingVertical:y.spacing.paddingVertical,backgroundColor:y.colors.background},c],R=(0,_utils.isRenderable)(i),z=n??W??y.colors.text,H=(0,_react().useMemo)(()=>{if(s)return(0,_utils.isText)(s)?(0,_utils.renderTextOrNode)(s,[y.layout.text,{color:y.colors.text,fontSize:y.typography.fontSize,lineHeight:y.typography.lineHeight,fontFamily:y.typography.fontFamily,fontWeight:y.typography.fontWeight},u]):s;let e=null;if(o||a||l){const{style:t,...r}=a??{},i="vertical"===b?v?"marginTop":"marginBottom":v?"marginLeft":"marginRight",n=[y.layout.iconWrapper,R&&{[i]:y.spacing.iconGap}],c=(0,_utils.isFunction)(o)?o(G,z):o,u=_react().default.createElement(_reactNative().View,{style:n},c);e=a||l?_react().default.createElement(_badge.default,_extends({dot:l},r,{style:h?[t,{alignSelf:"center"}]:t}),u):u}const t=R&&((0,_utils.isText)(i)?_react().default.createElement(_designSystem.Text,{style:[y.layout.text,{color:y.colors.text,fontSize:y.typography.fontSize,lineHeight:y.typography.lineHeight,fontFamily:y.typography.fontFamily,fontWeight:y.typography.fontWeight},u],numberOfLines:y.defaults.textNumberOfLines},i):i);return _react().default.createElement(_react().default.Fragment,null,e,t)},[a,h,s,b,l,R,o,G,z,v,i,u,y.colors.text,y.defaults.textNumberOfLines,y.layout.iconWrapper,y.layout.text,y.spacing.iconGap,y.typography.fontFamily,y.typography.fontSize,y.typography.fontWeight,y.typography.lineHeight]),E=!g||_||N?null:_react().default.createElement(_reactNative().View,{style:[y.layout.itemBorderRight,(0,_utils.createHairlineView)({position:"right",color:y.colors.border,top:0,bottom:0,right:0})]}),V=g&&!_&&O<C?_react().default.createElement(_reactNative().View,{style:[y.layout.itemBorderBottom,(0,_utils.createHairlineView)({position:"bottom",color:y.colors.border,left:0,right:0,bottom:0})]}):null,k=_react().default.createElement(_reactNative().View,{style:I},H,E,V),M=_>0&&q>0?{width:(q-(m-1)*_)/m,flexGrow:0,flexShrink:0}:{flexBasis:100/m+"%",flexGrow:0,flexShrink:1,minWidth:0,minHeight:0};return w||(0,_utils.isFunction)(f)?_react().default.createElement(_reactNative().Pressable,_extends({accessibilityRole:"button",style:e=>[M,"function"==typeof d?d(e):d,{opacity:e.pressed?y.defaults.pressedOpacity:1}],android_ripple:{color:y.colors.active},onPress:f},p),k):_react().default.createElement(_reactNative().View,_extends({style:[M,"function"==typeof d?d({pressed:!1}):d]},p),k)},GridItem=exports.GridItem=_react().default.memo(GridItemImpl);GridItem.displayName="GridItem";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _popup=_interopRequireDefault(require("../popup")),_swiper=_interopRequireDefault(require("../swiper")),_tokens=require("./tokens"),_validate=require("../../utils/validate");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var a=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,i,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?r:a){if(n.has(e))return n.get(e);n.set(e,o)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?n(o,t,i):o[t]=e[t]);return o})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(null,arguments)}const clampIndex=(e,t)=>t<=0?0:Math.max(0,Math.min(t-1,e)),indicatorSpacing={bottom:32},IS_WEB="web"===_reactNative().Platform.OS,TOUCH_MOVE_THRESHOLD=8,TOUCH_MOVE_THRESHOLD_SQUARED=64,ImageSlide=_react().default.memo(e=>{const{source:t,rendered:a,pressableHandlers:r,index:n,total:i}=e;return _react().default.createElement(_reactNative().Pressable,_extends({accessibilityRole:"image",accessibilityLabel:`image ${n+1} of ${i}`,style:S.slidePressable},r),a?_react().default.createElement(_reactNative().Image,{source:t,resizeMode:"contain",style:S.image,accessible:!0,accessibilityRole:"image"}):_react().default.createElement(_reactNative().View,{style:S.imagePlaceholder}))},(e,t)=>e.source===t.source&&e.rendered===t.rendered&&e.pressableHandlers===t.pressableHandlers&&e.index===t.index&&e.total===t.total),ImagePreviewImpl=(e,t)=>{const{visible:a,images:r=[],startPosition:n=0,tokensOverride:i,lazyRender:o=!1,lazyRenderBuffer:l=1,showIndex:c=!0,indexRender:s,showIndicators:u=!1,closeable:d=!1,closeIcon:p,closeIconPosition:f="top-right",closeOnlyClickCloseIcon:_=!1,overlay:g=!0,overlayStyle:m,closeOnBackPress:x,closeOnPopstate:v,zIndex:y,duration:b,safeAreaInsetTop:I=!0,safeAreaInsetBottom:w=!0,onChange:h,onClose:C,onClosed:P,beforeClose:E}=e,{colors:k,layout:T,radii:R,typography:O,spacing:M}=(0,_tokens.useImagePreviewTokens)(i),H=(0,_react().useRef)(null),q=(0,_react().useRef)("close"),z=(0,_react().useRef)(null),D=(0,_react().useRef)(!1),B=r.length,[N,A]=(0,_react().useState)(()=>clampIndex(n,B)),F=clampIndex(N,B),V=(0,_react().useRef)({images:r,index:F,beforeClose:E,onClose:C});V.current={images:r,index:F,beforeClose:E,onClose:C};const W=(0,_react().useMemo)(()=>r.map(e=>(0,_validate.isString)(e)?{uri:e}:e),[r]);(0,_react().useEffect)(()=>{A(e=>clampIndex(e,B))},[B]),(0,_react().useEffect)(()=>{if(!a)return;const e=clampIndex(n,B);if(A(e),"undefined"!=typeof requestAnimationFrame){const t=requestAnimationFrame(()=>{H.current?.swipeTo(e,!1)});return()=>cancelAnimationFrame(t)}},[B,n,a]);const X=(0,_react().useCallback)(async e=>{const{beforeClose:t,images:a,index:r}=V.current;if(!t)return!0;return!1!==await t({reason:e,index:r,image:a[r]})},[]),Y=(0,_react().useCallback)(async(e,t=!1)=>{const{onClose:a,images:r,index:n}=V.current;if(!t){if(!await X(e))return}a?.({index:n,image:r[n]})},[X]),j=(0,_react().useCallback)(async e=>(q.current=e,X(e)),[X]),$=(0,_react().useCallback)(()=>{Y(q.current,!0)},[Y]);(0,_react().useImperativeHandle)(t,()=>({swipeTo:(e,t=!0)=>{const a=clampIndex(e,B);A(a),H.current?.swipeTo(a,t)}}),[B]);const U=(0,_react().useRef)(h);U.current=h;const L=(0,_react().useRef)(F);L.current=F;const Q=(0,_react().useCallback)(e=>{L.current!==e&&(A(e),U.current?.(e))},[]),G=(0,_react().useCallback)(()=>{_||Y("content")},[_,Y]),J=(0,_react().useCallback)(()=>{z.current=null,D.current=!1},[]),K=(0,_react().useCallback)((e,t)=>{z.current={x:e,y:t},D.current=!1},[]),Z=(0,_react().useCallback)((e,t)=>{const a=z.current;if(!a)return;const r=e-a.x,n=t-a.y;r*r+n*n>=64&&(D.current=!0)},[]),ee=(0,_react().useCallback)((e,t)=>{const a=z.current,r=D.current;if(J(),!a||r)return;const n=e-a.x,i=t-a.y;n*n+i*i>=64||G()},[G,J]),te=(0,_react().useMemo)(()=>{const e={onTouchStart:e=>{const{pageX:t,pageY:a}=e.nativeEvent;null!=t&&null!=a&&K(t,a)},onTouchMove:e=>{const{pageX:t,pageY:a}=e.nativeEvent;null!=t&&null!=a&&Z(t,a)},onTouchEnd:e=>{const{pageX:t,pageY:a}=e.nativeEvent;null!=t&&null!=a&&ee(t,a)},onTouchCancel:J};return IS_WEB&&(e.onMouseDown=e=>{const t=e.nativeEvent;null!=t?.pageX&&null!=t?.pageY&&K(t.pageX,t.pageY)},e.onMouseMove=e=>{const t=e.nativeEvent;1===t?.buttons&&null!=t?.pageX&&null!=t?.pageY&&Z(t.pageX,t.pageY)},e.onMouseUp=e=>{const t=e.nativeEvent;null!=t?.pageX&&null!=t?.pageY&&ee(t.pageX,t.pageY)}),e},[Z,K,J,ee]),ae=(0,_react().useCallback)((e,t)=>{if(!c||0===t)return null;const a=`${e+1} / ${t}`;return _react().default.createElement(_reactNative().View,{style:[S.index,{top:M.indexTop}],testID:"rv-image-preview-index"},_react().default.createElement(_reactNative().View,{style:[S.indexBadge,{backgroundColor:k.indexBackground,borderRadius:R.indexBadge,paddingHorizontal:M.indexPaddingHorizontal,paddingVertical:M.indexPaddingVertical}]},(()=>{if(!s)return _react().default.createElement(_reactNative().Text,{style:[S.indexText,{color:k.indexText,fontFamily:O.fontFamily,fontSize:O.indexTextSize}]},a);const r=s({index:e,len:t});return(0,_validate.isText)(r)?_react().default.createElement(_reactNative().Text,{style:[S.indexText,{color:k.indexText,fontFamily:O.fontFamily,fontSize:O.indexTextSize}]},r):r})()))},[k.indexBackground,k.indexText,s,R.indexBadge,c,M.indexPaddingHorizontal,M.indexPaddingVertical,M.indexTop,O.indexTextSize]),re=o?Math.max(0,0|l):0,ne=(0,_react().useCallback)((e,t)=>_react().default.createElement(_react().default.Fragment,null,ae(t,e),u&&e>1&&_react().default.createElement(_swiper.default.PagIndicator,{total:e,current:t,activeColor:k.indicatorActive,inactiveColor:k.indicatorInactive,style:indicatorSpacing,testID:"rv-image-preview-indicators"})),[k.indicatorActive,k.indicatorInactive,ae,u]);return _react().default.createElement(_popup.default,{visible:a,overlay:g,overlayStyle:m,closeOnOverlayPress:!_,closeOnBackPress:x,closeOnPopstate:v,zIndex:y,duration:b,closeable:d,closeIcon:p,closeIconPosition:f,stopPropagation:!1,round:!1,safeAreaInsetTop:I,safeAreaInsetBottom:w,overlayTestID:"rv-image-preview-overlay",style:[S.popup,{backgroundColor:k.transparent,padding:T.popupPadding,borderRadius:T.popupRadius}],beforeClose:j,onClose:$,onClosed:P},_react().default.createElement(_reactNative().View,{style:[S.content,{backgroundColor:k.background}]},1===B&&ae(0,1),0===B?_react().default.createElement(_reactNative().View,{style:S.empty,testID:"rv-image-preview-empty"}):_react().default.createElement(_swiper.default,{ref:H,style:S.swiper,initialSwipe:clampIndex(n,B),loop:!1,autoplay:!1,touchable:B>1,indicator:ne,onChange:Q,testID:"rv-image-preview-swiper"},W.map((e,t)=>_react().default.createElement(_swiper.default.Item,{key:t,style:S.slide,testID:`rv-image-preview-slide-${t}`},_react().default.createElement(ImageSlide,{source:e,rendered:!o||Math.abs(t-F)<=re,pressableHandlers:te,index:t,total:W.length}))))))},ImagePreviewForwardRef=_react().default.forwardRef(ImagePreviewImpl),ImagePreview=_react().default.memo(ImagePreviewForwardRef);var _default=exports.default=ImagePreview;const S=_reactNative().StyleSheet.create({popup:{position:"absolute",top:0,left:0,right:0,bottom:0,width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%"},content:{flex:1},swiper:{flex:1},slide:{justifyContent:"center",alignItems:"center",flex:1},slidePressable:{flex:1,width:"100%",height:"100%",justifyContent:"center",alignItems:"center"},image:{width:"100%",height:"100%"},imagePlaceholder:{width:"100%",height:"100%"},empty:{flex:1},index:{position:"absolute",left:0,right:0,alignItems:"center",zIndex:1},indexBadge:{},indexText:{fontWeight:"500"}});
1
+ "use strict";function _react(){const e=_interopRequireWildcard(require("react"));return _react=function(){return e},e}function _reactNative(){const e=require("react-native");return _reactNative=function(){return e},e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _popup=_interopRequireDefault(require("../popup")),_swiper=_interopRequireDefault(require("../swiper")),_tokens=require("./tokens"),_validate=require("../../utils/validate");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var a=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,i,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?r:a){if(n.has(e))return n.get(e);n.set(e,o)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?n(o,t,i):o[t]=e[t]);return o})(e,t)}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(null,arguments)}const clampIndex=(e,t)=>t<=0?0:Math.max(0,Math.min(t-1,e)),indicatorSpacing={bottom:32},IS_WEB="web"===_reactNative().Platform.OS,TOUCH_MOVE_THRESHOLD=8,TOUCH_MOVE_THRESHOLD_SQUARED=64,ImageSlide=_react().default.memo(e=>{const{source:t,rendered:a,pressableHandlers:r,index:n,total:i}=e;return _react().default.createElement(_reactNative().Pressable,_extends({accessibilityRole:"image",accessibilityLabel:`image ${n+1} of ${i}`,style:S.slidePressable},r),a?_react().default.createElement(_reactNative().Image,{source:t,resizeMode:"contain",style:S.image,accessible:!0,accessibilityRole:"image"}):_react().default.createElement(_reactNative().View,{style:S.imagePlaceholder}))},(e,t)=>e.source===t.source&&e.rendered===t.rendered&&e.pressableHandlers===t.pressableHandlers&&e.index===t.index&&e.total===t.total),ImagePreviewImpl=(e,t)=>{const{visible:a,images:r=[],startPosition:n=0,tokensOverride:i,lazyRender:o=!1,lazyRenderBuffer:l=1,showIndex:c=!0,indexRender:s,showIndicators:u=!1,closeable:d=!1,closeIcon:p,closeIconPosition:f="top-right",closeOnlyClickCloseIcon:_=!1,overlay:g=!0,overlayStyle:m,closeOnBackPress:x,closeOnPopstate:v,zIndex:y,duration:b,safeAreaInsetTop:I=!0,safeAreaInsetBottom:w=!0,onChange:h,onClose:C,onClosed:P,beforeClose:E}=e,{colors:k,layout:T,radii:R,typography:O,spacing:M}=(0,_tokens.useImagePreviewTokens)(i),H=(0,_react().useRef)(null),q=(0,_react().useRef)("close"),z=(0,_react().useRef)(null),D=(0,_react().useRef)(!1),B=r.length,[N,F]=(0,_react().useState)(()=>clampIndex(n,B)),A=clampIndex(N,B),V=(0,_react().useRef)({images:r,index:A,beforeClose:E,onClose:C});V.current={images:r,index:A,beforeClose:E,onClose:C};const W=(0,_react().useMemo)(()=>r.map(e=>(0,_validate.isString)(e)?{uri:e}:e),[r]);(0,_react().useEffect)(()=>{F(e=>clampIndex(e,B))},[B]),(0,_react().useEffect)(()=>{if(!a)return;const e=clampIndex(n,B);if(F(e),"undefined"!=typeof requestAnimationFrame){const t=requestAnimationFrame(()=>{H.current?.swipeTo(e,!1)});return()=>cancelAnimationFrame(t)}},[B,n,a]);const X=(0,_react().useCallback)(async e=>{const{beforeClose:t,images:a,index:r}=V.current;if(!t)return!0;return!1!==await t({reason:e,index:r,image:a[r]})},[]),Y=(0,_react().useCallback)(async(e,t=!1)=>{const{onClose:a,images:r,index:n}=V.current;if(!t){if(!await X(e))return}a?.({index:n,image:r[n]})},[X]),j=(0,_react().useCallback)(async e=>(q.current=e,X(e)),[X]),$=(0,_react().useCallback)(()=>{Y(q.current,!0)},[Y]);(0,_react().useImperativeHandle)(t,()=>({swipeTo:(e,t=!0)=>{const a=clampIndex(e,B);F(a),H.current?.swipeTo(a,t)}}),[B]);const U=(0,_react().useRef)(h);U.current=h;const L=(0,_react().useRef)(A);L.current=A;const Q=(0,_react().useCallback)(e=>{L.current!==e&&(F(e),U.current?.(e))},[]),G=(0,_react().useCallback)(()=>{_||Y("content")},[_,Y]),J=(0,_react().useCallback)(()=>{z.current=null,D.current=!1},[]),K=(0,_react().useCallback)((e,t)=>{z.current={x:e,y:t},D.current=!1},[]),Z=(0,_react().useCallback)((e,t)=>{const a=z.current;if(!a)return;const r=e-a.x,n=t-a.y;r*r+n*n>=64&&(D.current=!0)},[]),ee=(0,_react().useCallback)((e,t)=>{const a=z.current,r=D.current;if(J(),!a||r)return;const n=e-a.x,i=t-a.y;n*n+i*i>=64||G()},[G,J]),te=(0,_react().useMemo)(()=>{const e={onTouchStart:e=>{const{pageX:t,pageY:a}=e.nativeEvent;null!=t&&null!=a&&K(t,a)},onTouchMove:e=>{const{pageX:t,pageY:a}=e.nativeEvent;null!=t&&null!=a&&Z(t,a)},onTouchEnd:e=>{const{pageX:t,pageY:a}=e.nativeEvent;null!=t&&null!=a&&ee(t,a)},onTouchCancel:J};return IS_WEB&&(e.onMouseDown=e=>{const t=e.nativeEvent;null!=t?.pageX&&null!=t?.pageY&&K(t.pageX,t.pageY)},e.onMouseMove=e=>{const t=e.nativeEvent;1===t?.buttons&&null!=t?.pageX&&null!=t?.pageY&&Z(t.pageX,t.pageY)},e.onMouseUp=e=>{const t=e.nativeEvent;null!=t?.pageX&&null!=t?.pageY&&ee(t.pageX,t.pageY)}),e},[Z,K,J,ee]),ae=(0,_react().useCallback)((e,t)=>c&&0!==t?_react().default.createElement(_reactNative().View,{style:[S.index,{top:M.indexTop}],testID:"rv-image-preview-index"},_react().default.createElement(_reactNative().View,{style:[S.indexBadge,{backgroundColor:k.indexBackground,borderRadius:R.indexBadge,paddingHorizontal:M.indexPaddingHorizontal,paddingVertical:M.indexPaddingVertical}]},s?(()=>{const a=s({index:e,len:t});return(0,_validate.isText)(a)?_react().default.createElement(_reactNative().Text,{style:[S.indexText,{color:k.indexText,fontFamily:O.fontFamily,fontSize:O.indexTextSize}]},a):a})():_react().default.createElement(_reactNative().Text,{style:[S.indexText,{color:k.indexText,fontFamily:O.fontFamily,fontSize:O.indexTextSize}]},`${e+1} / ${t}`))):null,[k.indexBackground,k.indexText,s,R.indexBadge,c,M.indexPaddingHorizontal,M.indexPaddingVertical,M.indexTop,O.fontFamily,O.indexTextSize]),re=o?Math.max(0,0|l):0,ne=(0,_react().useCallback)((e,t)=>_react().default.createElement(_react().default.Fragment,null,ae(t,e),u&&e>1&&_react().default.createElement(_swiper.default.PagIndicator,{total:e,current:t,activeColor:k.indicatorActive,inactiveColor:k.indicatorInactive,style:indicatorSpacing,testID:"rv-image-preview-indicators"})),[k.indicatorActive,k.indicatorInactive,ae,u]);return _react().default.createElement(_popup.default,{visible:a,overlay:g,overlayStyle:m,closeOnOverlayPress:!_,closeOnBackPress:x,closeOnPopstate:v,zIndex:y,duration:b,closeable:d,closeIcon:p,closeIconPosition:f,stopPropagation:!1,round:!1,safeAreaInsetTop:I,safeAreaInsetBottom:w,overlayTestID:"rv-image-preview-overlay",style:[S.popup,{backgroundColor:k.background,padding:T.popupPadding,borderRadius:T.popupRadius}],beforeClose:j,onClose:$,onClosed:P},_react().default.createElement(_reactNative().View,{style:S.content},1===B&&ae(0,1),0===B?_react().default.createElement(_reactNative().View,{style:S.empty,testID:"rv-image-preview-empty"}):_react().default.createElement(_swiper.default,{ref:H,style:S.swiper,initialSwipe:clampIndex(n,B),loop:!1,autoplay:!1,touchable:B>1,indicator:ne,onChange:Q,testID:"rv-image-preview-swiper"},W.map((e,t)=>_react().default.createElement(_swiper.default.Item,{key:t,style:S.slide,testID:`rv-image-preview-slide-${t}`},_react().default.createElement(ImageSlide,{source:e,rendered:!o||Math.abs(t-A)<=re,pressableHandlers:te,index:t,total:W.length}))))))},ImagePreviewForwardRef=_react().default.forwardRef(ImagePreviewImpl),ImagePreview=_react().default.memo(ImagePreviewForwardRef);var _default=exports.default=ImagePreview;const S=_reactNative().StyleSheet.create({popup:{position:"absolute",top:0,left:0,right:0,bottom:0,width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%"},content:{flex:1},swiper:{flex:1},slide:{justifyContent:"center",alignItems:"center",flex:1},slidePressable:{flex:1,width:"100%",height:"100%",justifyContent:"center",alignItems:"center"},image:{width:"100%",height:"100%"},imagePlaceholder:{width:"100%",height:"100%"},empty:{flex:1},index:{position:"absolute",left:0,right:0,alignItems:"center",zIndex:1},indexBadge:{},indexText:{fontWeight:"500"}});
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ "use strict";