react-native-platform-components 1.4.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/PlatformComponents.podspec +1 -1
  2. package/README.md +33 -31
  3. package/android/src/main/java/com/platformcomponents/PCButtonGroupView.kt +175 -9
  4. package/android/src/main/java/com/platformcomponents/PCButtonGroupViewManager.kt +52 -2
  5. package/android/src/main/java/com/platformcomponents/PCButtonSupport.kt +44 -12
  6. package/android/src/main/java/com/platformcomponents/PCButtonView.kt +187 -5
  7. package/android/src/main/java/com/platformcomponents/PCButtonViewManager.kt +85 -7
  8. package/android/src/main/java/com/platformcomponents/PCContextMenuView.kt +41 -151
  9. package/android/src/main/java/com/platformcomponents/PCContextMenuViewManager.kt +7 -63
  10. package/android/src/main/java/com/platformcomponents/PCDatePickerView.kt +310 -115
  11. package/android/src/main/java/com/platformcomponents/PCDatePickerViewManager.kt +23 -3
  12. package/android/src/main/java/com/platformcomponents/PCExpressive.kt +6 -1
  13. package/android/src/main/java/com/platformcomponents/PCFloatingActionButtonView.kt +485 -0
  14. package/android/src/main/java/com/platformcomponents/PCFloatingActionButtonViewManager.kt +109 -0
  15. package/android/src/main/java/com/platformcomponents/PCFloatingToolbarView.kt +132 -0
  16. package/android/src/main/java/com/platformcomponents/PCFloatingToolbarViewManager.kt +8 -0
  17. package/android/src/main/java/com/platformcomponents/PCHaptics.kt +46 -0
  18. package/android/src/main/java/com/platformcomponents/PCImageLoader.kt +42 -7
  19. package/android/src/main/java/com/platformcomponents/PCLiquidGlassContainerView.kt +32 -0
  20. package/android/src/main/java/com/platformcomponents/PCLiquidGlassContainerViewManager.kt +31 -0
  21. package/android/src/main/java/com/platformcomponents/PCLiquidGlassView.kt +32 -6
  22. package/android/src/main/java/com/platformcomponents/PCLiquidGlassViewManager.kt +4 -0
  23. package/android/src/main/java/com/platformcomponents/PCMenuSupport.kt +280 -0
  24. package/android/src/main/java/com/platformcomponents/PCNavigationBarSupport.kt +332 -0
  25. package/android/src/main/java/com/platformcomponents/PCNavigationRailView.kt +448 -0
  26. package/android/src/main/java/com/platformcomponents/PCNavigationRailViewManager.kt +176 -0
  27. package/android/src/main/java/com/platformcomponents/PCSegmentedControlView.kt +24 -14
  28. package/android/src/main/java/com/platformcomponents/PCSegmentedControlViewManager.kt +14 -2
  29. package/android/src/main/java/com/platformcomponents/PCSelectionMenuView.kt +371 -39
  30. package/android/src/main/java/com/platformcomponents/PCSelectionMenuViewManager.kt +18 -4
  31. package/android/src/main/java/com/platformcomponents/PCTabBarView.kt +397 -0
  32. package/android/src/main/java/com/platformcomponents/PCTabBarViewManager.kt +182 -0
  33. package/android/src/main/java/com/platformcomponents/PCTextFieldView.kt +415 -40
  34. package/android/src/main/java/com/platformcomponents/PCTextFieldViewManager.kt +109 -3
  35. package/android/src/main/java/com/platformcomponents/PCThemeSupport.kt +37 -0
  36. package/android/src/main/java/com/platformcomponents/PlatformComponentsPackage.kt +4 -0
  37. package/android/src/main/res/drawable/pc_ic_search.xml +12 -0
  38. package/android/src/main/res/values/ids.xml +5 -0
  39. package/android/src/main/res/values/styles.xml +24 -0
  40. package/ios/PCButton.mm +122 -7
  41. package/ios/PCButtonGroup.mm +68 -1
  42. package/ios/PCButtonGroupView.swift +225 -6
  43. package/ios/PCButtonSupport.swift +181 -10
  44. package/ios/PCButtonView.swift +297 -14
  45. package/ios/PCConstants.swift +23 -2
  46. package/ios/PCContextMenu.mm +28 -110
  47. package/ios/PCContextMenu.swift +106 -167
  48. package/ios/PCDatePicker.mm +21 -9
  49. package/ios/PCDatePickerView.swift +94 -20
  50. package/ios/PCFloatingActionButton.h +10 -0
  51. package/ios/PCFloatingActionButton.mm +177 -0
  52. package/ios/PCFloatingActionButtonView.swift +426 -0
  53. package/ios/PCFloatingToolbar.mm +27 -0
  54. package/ios/PCFloatingToolbarView.swift +241 -0
  55. package/ios/PCHaptics.swift +91 -0
  56. package/ios/PCImageLoader.swift +76 -12
  57. package/ios/PCLiquidGlass.mm +36 -0
  58. package/ios/PCLiquidGlass.swift +221 -114
  59. package/ios/PCLiquidGlassContainer.h +10 -0
  60. package/ios/PCLiquidGlassContainer.mm +84 -0
  61. package/ios/PCLiquidGlassContainer.swift +69 -0
  62. package/ios/PCMenuItems.h +76 -0
  63. package/ios/PCMenuSupport.swift +350 -0
  64. package/ios/PCNavigationRail.h +10 -0
  65. package/ios/PCNavigationRail.mm +270 -0
  66. package/ios/PCNavigationRailView.swift +415 -0
  67. package/ios/PCSegmentedControl.mm +17 -2
  68. package/ios/PCSegmentedControl.swift +57 -7
  69. package/ios/PCSelectionMenu.mm +36 -8
  70. package/ios/PCSelectionMenu.swift +224 -48
  71. package/ios/PCTabBar.h +10 -0
  72. package/ios/PCTabBar.mm +285 -0
  73. package/ios/PCTabBarAccessory.h +10 -0
  74. package/ios/PCTabBarAccessory.mm +93 -0
  75. package/ios/PCTabBarAccessoryView.swift +96 -0
  76. package/ios/PCTabBarView.swift +671 -0
  77. package/ios/PCTextField.mm +159 -4
  78. package/ios/PCTextFieldView.swift +603 -57
  79. package/lib/commonjs/Button.js +73 -1
  80. package/lib/commonjs/Button.js.map +1 -1
  81. package/lib/commonjs/ButtonGroup.js +13 -3
  82. package/lib/commonjs/ButtonGroup.js.map +1 -1
  83. package/lib/commonjs/ButtonGroupNativeComponent.ts +74 -4
  84. package/lib/commonjs/ButtonNativeComponent.ts +119 -3
  85. package/lib/commonjs/ContextMenu.js +9 -48
  86. package/lib/commonjs/ContextMenu.js.map +1 -1
  87. package/lib/commonjs/ContextMenuNativeComponent.ts +47 -49
  88. package/lib/commonjs/DatePicker.js +98 -2
  89. package/lib/commonjs/DatePicker.js.map +1 -1
  90. package/lib/commonjs/DatePickerNativeComponent.ts +19 -2
  91. package/lib/commonjs/FloatingActionButton.js +60 -0
  92. package/lib/commonjs/FloatingActionButton.js.map +1 -0
  93. package/lib/commonjs/FloatingActionButtonNativeComponent.ts +58 -0
  94. package/lib/commonjs/FloatingToolbar.js +9 -1
  95. package/lib/commonjs/FloatingToolbar.js.map +1 -1
  96. package/lib/commonjs/FloatingToolbarNativeComponent.ts +16 -0
  97. package/lib/commonjs/LiquidGlass.js +7 -1
  98. package/lib/commonjs/LiquidGlass.js.map +1 -1
  99. package/lib/commonjs/LiquidGlassContainer.js +32 -0
  100. package/lib/commonjs/LiquidGlassContainer.js.map +1 -0
  101. package/lib/commonjs/LiquidGlassContainerNativeComponent.ts +17 -0
  102. package/lib/commonjs/LiquidGlassNativeComponent.ts +8 -0
  103. package/lib/commonjs/NavigationRail.js +104 -0
  104. package/lib/commonjs/NavigationRail.js.map +1 -0
  105. package/lib/commonjs/NavigationRailNativeComponent.ts +107 -0
  106. package/lib/commonjs/PlatformComponentsProvider.js +18 -0
  107. package/lib/commonjs/PlatformComponentsProvider.js.map +1 -0
  108. package/lib/commonjs/SegmentedControl.js +7 -0
  109. package/lib/commonjs/SegmentedControl.js.map +1 -1
  110. package/lib/commonjs/SegmentedControlNativeComponent.ts +11 -0
  111. package/lib/commonjs/SelectionMenu.js +27 -3
  112. package/lib/commonjs/SelectionMenu.js.map +1 -1
  113. package/lib/commonjs/SelectionMenuNativeComponent.ts +26 -4
  114. package/lib/commonjs/SplitButton.js +98 -0
  115. package/lib/commonjs/SplitButton.js.map +1 -0
  116. package/lib/commonjs/TabBar.js +203 -0
  117. package/lib/commonjs/TabBar.js.map +1 -0
  118. package/lib/commonjs/TabBarAccessoryNativeComponent.ts +19 -0
  119. package/lib/commonjs/TabBarNativeComponent.ts +145 -0
  120. package/lib/commonjs/TextField.js +171 -8
  121. package/lib/commonjs/TextField.js.map +1 -1
  122. package/lib/commonjs/TextFieldNativeComponent.ts +110 -4
  123. package/lib/commonjs/focusRegistry.js +2 -1
  124. package/lib/commonjs/focusRegistry.js.map +1 -1
  125. package/lib/commonjs/haptics.js +2 -0
  126. package/lib/commonjs/haptics.js.map +1 -0
  127. package/lib/commonjs/icons.js +15 -1
  128. package/lib/commonjs/icons.js.map +1 -1
  129. package/lib/commonjs/index.js +77 -0
  130. package/lib/commonjs/index.js.map +1 -1
  131. package/lib/commonjs/index.web.js +156 -92
  132. package/lib/commonjs/index.web.js.map +1 -1
  133. package/lib/commonjs/jest.js +910 -0
  134. package/lib/commonjs/jest.js.map +1 -0
  135. package/lib/commonjs/menuItems.js +68 -0
  136. package/lib/commonjs/menuItems.js.map +1 -0
  137. package/lib/commonjs/selectionIdentifiers.js +18 -0
  138. package/lib/commonjs/selectionIdentifiers.js.map +1 -0
  139. package/lib/commonjs/submitBehavior.js +19 -0
  140. package/lib/commonjs/submitBehavior.js.map +1 -0
  141. package/lib/commonjs/tabItems.js +49 -0
  142. package/lib/commonjs/tabItems.js.map +1 -0
  143. package/lib/commonjs/web/Button.js +170 -0
  144. package/lib/commonjs/web/Button.js.map +1 -0
  145. package/lib/commonjs/web/ButtonGroup.js +119 -0
  146. package/lib/commonjs/web/ButtonGroup.js.map +1 -0
  147. package/lib/commonjs/web/DatePicker.js +168 -0
  148. package/lib/commonjs/web/DatePicker.js.map +1 -0
  149. package/lib/commonjs/web/DateRangePicker.js +137 -0
  150. package/lib/commonjs/web/DateRangePicker.js.map +1 -0
  151. package/lib/commonjs/web/Dialog.js +54 -0
  152. package/lib/commonjs/web/Dialog.js.map +1 -0
  153. package/lib/commonjs/web/FloatingActionButton.js +98 -0
  154. package/lib/commonjs/web/FloatingActionButton.js.map +1 -0
  155. package/lib/commonjs/web/Icon.js +34 -0
  156. package/lib/commonjs/web/Icon.js.map +1 -0
  157. package/lib/commonjs/web/NativeTheme.js +28 -0
  158. package/lib/commonjs/web/NativeTheme.js.map +1 -0
  159. package/lib/commonjs/web/NavigationRail.js +139 -0
  160. package/lib/commonjs/web/NavigationRail.js.map +1 -0
  161. package/lib/commonjs/web/PlatformComponentsProvider.js +51 -0
  162. package/lib/commonjs/web/PlatformComponentsProvider.js.map +1 -0
  163. package/lib/commonjs/web/SegmentedControl.js +117 -0
  164. package/lib/commonjs/web/SegmentedControl.js.map +1 -0
  165. package/lib/commonjs/web/SelectionMenu.js +142 -0
  166. package/lib/commonjs/web/SelectionMenu.js.map +1 -0
  167. package/lib/commonjs/web/SplitButton.js +35 -0
  168. package/lib/commonjs/web/SplitButton.js.map +1 -0
  169. package/lib/commonjs/web/TabBar.js +131 -0
  170. package/lib/commonjs/web/TabBar.js.map +1 -0
  171. package/lib/commonjs/web/TextField.js +322 -0
  172. package/lib/commonjs/web/TextField.js.map +1 -0
  173. package/lib/commonjs/web/components.js +36 -0
  174. package/lib/commonjs/web/components.js.map +1 -0
  175. package/lib/commonjs/web/containers.js +121 -0
  176. package/lib/commonjs/web/containers.js.map +1 -0
  177. package/lib/commonjs/web/dateInput.js +116 -0
  178. package/lib/commonjs/web/dateInput.js.map +1 -0
  179. package/lib/commonjs/web/shared.js +192 -0
  180. package/lib/commonjs/web/shared.js.map +1 -0
  181. package/lib/commonjs/webComponents.js +6 -0
  182. package/lib/commonjs/webComponents.js.map +1 -0
  183. package/lib/module/Button.js +74 -2
  184. package/lib/module/Button.js.map +1 -1
  185. package/lib/module/ButtonGroup.js +13 -3
  186. package/lib/module/ButtonGroup.js.map +1 -1
  187. package/lib/module/ButtonGroupNativeComponent.ts +74 -4
  188. package/lib/module/ButtonNativeComponent.ts +119 -3
  189. package/lib/module/ContextMenu.js +9 -48
  190. package/lib/module/ContextMenu.js.map +1 -1
  191. package/lib/module/ContextMenuNativeComponent.ts +47 -49
  192. package/lib/module/DatePicker.js +98 -4
  193. package/lib/module/DatePicker.js.map +1 -1
  194. package/lib/module/DatePickerNativeComponent.ts +19 -2
  195. package/lib/module/FloatingActionButton.js +53 -0
  196. package/lib/module/FloatingActionButton.js.map +1 -0
  197. package/lib/module/FloatingActionButtonNativeComponent.ts +58 -0
  198. package/lib/module/FloatingToolbar.js +9 -1
  199. package/lib/module/FloatingToolbar.js.map +1 -1
  200. package/lib/module/FloatingToolbarNativeComponent.ts +16 -0
  201. package/lib/module/LiquidGlass.js +7 -1
  202. package/lib/module/LiquidGlass.js.map +1 -1
  203. package/lib/module/LiquidGlassContainer.js +26 -0
  204. package/lib/module/LiquidGlassContainer.js.map +1 -0
  205. package/lib/module/LiquidGlassContainerNativeComponent.ts +17 -0
  206. package/lib/module/LiquidGlassNativeComponent.ts +8 -0
  207. package/lib/module/NavigationRail.js +99 -0
  208. package/lib/module/NavigationRail.js.map +1 -0
  209. package/lib/module/NavigationRailNativeComponent.ts +107 -0
  210. package/lib/module/PlatformComponentsProvider.js +13 -0
  211. package/lib/module/PlatformComponentsProvider.js.map +1 -0
  212. package/lib/module/SegmentedControl.js +9 -1
  213. package/lib/module/SegmentedControl.js.map +1 -1
  214. package/lib/module/SegmentedControlNativeComponent.ts +11 -0
  215. package/lib/module/SelectionMenu.js +27 -3
  216. package/lib/module/SelectionMenu.js.map +1 -1
  217. package/lib/module/SelectionMenuNativeComponent.ts +26 -4
  218. package/lib/module/SplitButton.js +91 -0
  219. package/lib/module/SplitButton.js.map +1 -0
  220. package/lib/module/TabBar.js +196 -0
  221. package/lib/module/TabBar.js.map +1 -0
  222. package/lib/module/TabBarAccessoryNativeComponent.ts +19 -0
  223. package/lib/module/TabBarNativeComponent.ts +145 -0
  224. package/lib/module/TextField.js +172 -9
  225. package/lib/module/TextField.js.map +1 -1
  226. package/lib/module/TextFieldNativeComponent.ts +110 -4
  227. package/lib/module/focusRegistry.js +1 -0
  228. package/lib/module/focusRegistry.js.map +1 -1
  229. package/lib/module/haptics.js +2 -0
  230. package/lib/module/haptics.js.map +1 -0
  231. package/lib/module/icons.js +15 -1
  232. package/lib/module/icons.js.map +1 -1
  233. package/lib/module/index.js +7 -0
  234. package/lib/module/index.js.map +1 -1
  235. package/lib/module/index.web.js +12 -87
  236. package/lib/module/index.web.js.map +1 -1
  237. package/lib/module/jest.js +840 -0
  238. package/lib/module/jest.js.map +1 -0
  239. package/lib/module/menuItems.js +65 -0
  240. package/lib/module/menuItems.js.map +1 -0
  241. package/lib/module/selectionIdentifiers.js +14 -0
  242. package/lib/module/selectionIdentifiers.js.map +1 -0
  243. package/lib/module/submitBehavior.js +15 -0
  244. package/lib/module/submitBehavior.js.map +1 -0
  245. package/lib/module/tabItems.js +45 -0
  246. package/lib/module/tabItems.js.map +1 -0
  247. package/lib/module/web/Button.js +164 -0
  248. package/lib/module/web/Button.js.map +1 -0
  249. package/lib/module/web/ButtonGroup.js +113 -0
  250. package/lib/module/web/ButtonGroup.js.map +1 -0
  251. package/lib/module/web/DatePicker.js +162 -0
  252. package/lib/module/web/DatePicker.js.map +1 -0
  253. package/lib/module/web/DateRangePicker.js +131 -0
  254. package/lib/module/web/DateRangePicker.js.map +1 -0
  255. package/lib/module/web/Dialog.js +48 -0
  256. package/lib/module/web/Dialog.js.map +1 -0
  257. package/lib/module/web/FloatingActionButton.js +94 -0
  258. package/lib/module/web/FloatingActionButton.js.map +1 -0
  259. package/lib/module/web/Icon.js +29 -0
  260. package/lib/module/web/Icon.js.map +1 -0
  261. package/lib/module/web/NativeTheme.js +23 -0
  262. package/lib/module/web/NativeTheme.js.map +1 -0
  263. package/lib/module/web/NavigationRail.js +133 -0
  264. package/lib/module/web/NavigationRail.js.map +1 -0
  265. package/lib/module/web/PlatformComponentsProvider.js +44 -0
  266. package/lib/module/web/PlatformComponentsProvider.js.map +1 -0
  267. package/lib/module/web/SegmentedControl.js +112 -0
  268. package/lib/module/web/SegmentedControl.js.map +1 -0
  269. package/lib/module/web/SelectionMenu.js +137 -0
  270. package/lib/module/web/SelectionMenu.js.map +1 -0
  271. package/lib/module/web/SplitButton.js +30 -0
  272. package/lib/module/web/SplitButton.js.map +1 -0
  273. package/lib/module/web/TabBar.js +126 -0
  274. package/lib/module/web/TabBar.js.map +1 -0
  275. package/lib/module/web/TextField.js +316 -0
  276. package/lib/module/web/TextField.js.map +1 -0
  277. package/lib/module/web/components.js +33 -0
  278. package/lib/module/web/components.js.map +1 -0
  279. package/lib/module/web/containers.js +112 -0
  280. package/lib/module/web/containers.js.map +1 -0
  281. package/lib/module/web/dateInput.js +109 -0
  282. package/lib/module/web/dateInput.js.map +1 -0
  283. package/lib/module/web/shared.js +179 -0
  284. package/lib/module/web/shared.js.map +1 -0
  285. package/lib/module/webComponents.js +4 -0
  286. package/lib/module/webComponents.js.map +1 -0
  287. package/lib/typescript/commonjs/docs/sidebars.d.ts.map +1 -1
  288. package/lib/typescript/commonjs/src/Button.d.ts +111 -3
  289. package/lib/typescript/commonjs/src/Button.d.ts.map +1 -1
  290. package/lib/typescript/commonjs/src/ButtonGroup.d.ts +21 -6
  291. package/lib/typescript/commonjs/src/ButtonGroup.d.ts.map +1 -1
  292. package/lib/typescript/commonjs/src/ButtonGroupNativeComponent.d.ts +64 -3
  293. package/lib/typescript/commonjs/src/ButtonGroupNativeComponent.d.ts.map +1 -1
  294. package/lib/typescript/commonjs/src/ButtonNativeComponent.d.ts +94 -3
  295. package/lib/typescript/commonjs/src/ButtonNativeComponent.d.ts.map +1 -1
  296. package/lib/typescript/commonjs/src/ContextMenu.d.ts +20 -33
  297. package/lib/typescript/commonjs/src/ContextMenu.d.ts.map +1 -1
  298. package/lib/typescript/commonjs/src/ContextMenuNativeComponent.d.ts +45 -47
  299. package/lib/typescript/commonjs/src/ContextMenuNativeComponent.d.ts.map +1 -1
  300. package/lib/typescript/commonjs/src/DatePicker.d.ts +74 -1
  301. package/lib/typescript/commonjs/src/DatePicker.d.ts.map +1 -1
  302. package/lib/typescript/commonjs/src/DatePickerNativeComponent.d.ts +16 -1
  303. package/lib/typescript/commonjs/src/DatePickerNativeComponent.d.ts.map +1 -1
  304. package/lib/typescript/commonjs/src/FloatingActionButton.d.ts +67 -0
  305. package/lib/typescript/commonjs/src/FloatingActionButton.d.ts.map +1 -0
  306. package/lib/typescript/commonjs/src/FloatingActionButtonNativeComponent.d.ts +43 -0
  307. package/lib/typescript/commonjs/src/FloatingActionButtonNativeComponent.d.ts.map +1 -0
  308. package/lib/typescript/commonjs/src/FloatingToolbar.d.ts +30 -0
  309. package/lib/typescript/commonjs/src/FloatingToolbar.d.ts.map +1 -1
  310. package/lib/typescript/commonjs/src/FloatingToolbarNativeComponent.d.ts +12 -0
  311. package/lib/typescript/commonjs/src/FloatingToolbarNativeComponent.d.ts.map +1 -1
  312. package/lib/typescript/commonjs/src/LiquidGlass.d.ts +17 -0
  313. package/lib/typescript/commonjs/src/LiquidGlass.d.ts.map +1 -1
  314. package/lib/typescript/commonjs/src/LiquidGlassContainer.d.ts +27 -0
  315. package/lib/typescript/commonjs/src/LiquidGlassContainer.d.ts.map +1 -0
  316. package/lib/typescript/commonjs/src/LiquidGlassContainerNativeComponent.d.ts +13 -0
  317. package/lib/typescript/commonjs/src/LiquidGlassContainerNativeComponent.d.ts.map +1 -0
  318. package/lib/typescript/commonjs/src/LiquidGlassNativeComponent.d.ts +7 -0
  319. package/lib/typescript/commonjs/src/LiquidGlassNativeComponent.d.ts.map +1 -1
  320. package/lib/typescript/commonjs/src/NavigationRail.d.ts +86 -0
  321. package/lib/typescript/commonjs/src/NavigationRail.d.ts.map +1 -0
  322. package/lib/typescript/commonjs/src/NavigationRailNativeComponent.d.ts +81 -0
  323. package/lib/typescript/commonjs/src/NavigationRailNativeComponent.d.ts.map +1 -0
  324. package/lib/typescript/commonjs/src/PlatformComponentsProvider.d.ts +6 -0
  325. package/lib/typescript/commonjs/src/PlatformComponentsProvider.d.ts.map +1 -0
  326. package/lib/typescript/commonjs/src/SegmentedControl.d.ts +18 -1
  327. package/lib/typescript/commonjs/src/SegmentedControl.d.ts.map +1 -1
  328. package/lib/typescript/commonjs/src/SegmentedControlNativeComponent.d.ts +9 -0
  329. package/lib/typescript/commonjs/src/SegmentedControlNativeComponent.d.ts.map +1 -1
  330. package/lib/typescript/commonjs/src/SelectionMenu.d.ts +44 -2
  331. package/lib/typescript/commonjs/src/SelectionMenu.d.ts.map +1 -1
  332. package/lib/typescript/commonjs/src/SelectionMenuNativeComponent.d.ts +20 -4
  333. package/lib/typescript/commonjs/src/SelectionMenuNativeComponent.d.ts.map +1 -1
  334. package/lib/typescript/commonjs/src/SplitButton.d.ts +83 -0
  335. package/lib/typescript/commonjs/src/SplitButton.d.ts.map +1 -0
  336. package/lib/typescript/commonjs/src/TabBar.d.ts +144 -0
  337. package/lib/typescript/commonjs/src/TabBar.d.ts.map +1 -0
  338. package/lib/typescript/commonjs/src/TabBarAccessoryNativeComponent.d.ts +13 -0
  339. package/lib/typescript/commonjs/src/TabBarAccessoryNativeComponent.d.ts.map +1 -0
  340. package/lib/typescript/commonjs/src/TabBarNativeComponent.d.ts +110 -0
  341. package/lib/typescript/commonjs/src/TabBarNativeComponent.d.ts.map +1 -0
  342. package/lib/typescript/commonjs/src/TextField.d.ts +166 -8
  343. package/lib/typescript/commonjs/src/TextField.d.ts.map +1 -1
  344. package/lib/typescript/commonjs/src/TextFieldNativeComponent.d.ts +81 -3
  345. package/lib/typescript/commonjs/src/TextFieldNativeComponent.d.ts.map +1 -1
  346. package/lib/typescript/commonjs/src/focusRegistry.d.ts.map +1 -1
  347. package/lib/typescript/commonjs/src/haptics.d.ts +20 -0
  348. package/lib/typescript/commonjs/src/haptics.d.ts.map +1 -0
  349. package/lib/typescript/commonjs/src/icons.d.ts +7 -1
  350. package/lib/typescript/commonjs/src/icons.d.ts.map +1 -1
  351. package/lib/typescript/commonjs/src/index.d.ts +7 -0
  352. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  353. package/lib/typescript/commonjs/src/index.web.d.ts +25 -254
  354. package/lib/typescript/commonjs/src/index.web.d.ts.map +1 -1
  355. package/lib/typescript/commonjs/src/jest.d.ts +139 -0
  356. package/lib/typescript/commonjs/src/jest.d.ts.map +1 -0
  357. package/lib/typescript/commonjs/src/menuItems.d.ts +100 -0
  358. package/lib/typescript/commonjs/src/menuItems.d.ts.map +1 -0
  359. package/lib/typescript/commonjs/src/selectionIdentifiers.d.ts +3 -0
  360. package/lib/typescript/commonjs/src/selectionIdentifiers.d.ts.map +1 -0
  361. package/lib/typescript/commonjs/src/submitBehavior.d.ts +9 -0
  362. package/lib/typescript/commonjs/src/submitBehavior.d.ts.map +1 -0
  363. package/lib/typescript/commonjs/src/tabItems.d.ts +55 -0
  364. package/lib/typescript/commonjs/src/tabItems.d.ts.map +1 -0
  365. package/lib/typescript/commonjs/src/web/Button.d.ts +9 -0
  366. package/lib/typescript/commonjs/src/web/Button.d.ts.map +1 -0
  367. package/lib/typescript/commonjs/src/web/ButtonGroup.d.ts +11 -0
  368. package/lib/typescript/commonjs/src/web/ButtonGroup.d.ts.map +1 -0
  369. package/lib/typescript/commonjs/src/web/DatePicker.d.ts +14 -0
  370. package/lib/typescript/commonjs/src/web/DatePicker.d.ts.map +1 -0
  371. package/lib/typescript/commonjs/src/web/DateRangePicker.d.ts +11 -0
  372. package/lib/typescript/commonjs/src/web/DateRangePicker.d.ts.map +1 -0
  373. package/lib/typescript/commonjs/src/web/Dialog.d.ts +12 -0
  374. package/lib/typescript/commonjs/src/web/Dialog.d.ts.map +1 -0
  375. package/lib/typescript/commonjs/src/web/FloatingActionButton.d.ts +8 -0
  376. package/lib/typescript/commonjs/src/web/FloatingActionButton.d.ts.map +1 -0
  377. package/lib/typescript/commonjs/src/web/Icon.d.ts +12 -0
  378. package/lib/typescript/commonjs/src/web/Icon.d.ts.map +1 -0
  379. package/lib/typescript/commonjs/src/web/NativeTheme.d.ts +10 -0
  380. package/lib/typescript/commonjs/src/web/NativeTheme.d.ts.map +1 -0
  381. package/lib/typescript/commonjs/src/web/NavigationRail.d.ts +8 -0
  382. package/lib/typescript/commonjs/src/web/NavigationRail.d.ts.map +1 -0
  383. package/lib/typescript/commonjs/src/web/PlatformComponentsProvider.d.ts +10 -0
  384. package/lib/typescript/commonjs/src/web/PlatformComponentsProvider.d.ts.map +1 -0
  385. package/lib/typescript/commonjs/src/web/SegmentedControl.d.ts +8 -0
  386. package/lib/typescript/commonjs/src/web/SegmentedControl.d.ts.map +1 -0
  387. package/lib/typescript/commonjs/src/web/SelectionMenu.d.ts +10 -0
  388. package/lib/typescript/commonjs/src/web/SelectionMenu.d.ts.map +1 -0
  389. package/lib/typescript/commonjs/src/web/SplitButton.d.ts +9 -0
  390. package/lib/typescript/commonjs/src/web/SplitButton.d.ts.map +1 -0
  391. package/lib/typescript/commonjs/src/web/TabBar.d.ts +9 -0
  392. package/lib/typescript/commonjs/src/web/TabBar.d.ts.map +1 -0
  393. package/lib/typescript/commonjs/src/web/TextField.d.ts +9 -0
  394. package/lib/typescript/commonjs/src/web/TextField.d.ts.map +1 -0
  395. package/lib/typescript/commonjs/src/web/components.d.ts +17 -0
  396. package/lib/typescript/commonjs/src/web/components.d.ts.map +1 -0
  397. package/lib/typescript/commonjs/src/web/containers.d.ts +24 -0
  398. package/lib/typescript/commonjs/src/web/containers.d.ts.map +1 -0
  399. package/lib/typescript/commonjs/src/web/dateInput.d.ts +20 -0
  400. package/lib/typescript/commonjs/src/web/dateInput.d.ts.map +1 -0
  401. package/lib/typescript/commonjs/src/web/shared.d.ts +43 -0
  402. package/lib/typescript/commonjs/src/web/shared.d.ts.map +1 -0
  403. package/lib/typescript/commonjs/src/webComponents.d.ts +43 -0
  404. package/lib/typescript/commonjs/src/webComponents.d.ts.map +1 -0
  405. package/lib/typescript/module/docs/sidebars.d.ts.map +1 -1
  406. package/lib/typescript/module/src/Button.d.ts +111 -3
  407. package/lib/typescript/module/src/Button.d.ts.map +1 -1
  408. package/lib/typescript/module/src/ButtonGroup.d.ts +21 -6
  409. package/lib/typescript/module/src/ButtonGroup.d.ts.map +1 -1
  410. package/lib/typescript/module/src/ButtonGroupNativeComponent.d.ts +64 -3
  411. package/lib/typescript/module/src/ButtonGroupNativeComponent.d.ts.map +1 -1
  412. package/lib/typescript/module/src/ButtonNativeComponent.d.ts +94 -3
  413. package/lib/typescript/module/src/ButtonNativeComponent.d.ts.map +1 -1
  414. package/lib/typescript/module/src/ContextMenu.d.ts +20 -33
  415. package/lib/typescript/module/src/ContextMenu.d.ts.map +1 -1
  416. package/lib/typescript/module/src/ContextMenuNativeComponent.d.ts +45 -47
  417. package/lib/typescript/module/src/ContextMenuNativeComponent.d.ts.map +1 -1
  418. package/lib/typescript/module/src/DatePicker.d.ts +74 -1
  419. package/lib/typescript/module/src/DatePicker.d.ts.map +1 -1
  420. package/lib/typescript/module/src/DatePickerNativeComponent.d.ts +16 -1
  421. package/lib/typescript/module/src/DatePickerNativeComponent.d.ts.map +1 -1
  422. package/lib/typescript/module/src/FloatingActionButton.d.ts +67 -0
  423. package/lib/typescript/module/src/FloatingActionButton.d.ts.map +1 -0
  424. package/lib/typescript/module/src/FloatingActionButtonNativeComponent.d.ts +43 -0
  425. package/lib/typescript/module/src/FloatingActionButtonNativeComponent.d.ts.map +1 -0
  426. package/lib/typescript/module/src/FloatingToolbar.d.ts +30 -0
  427. package/lib/typescript/module/src/FloatingToolbar.d.ts.map +1 -1
  428. package/lib/typescript/module/src/FloatingToolbarNativeComponent.d.ts +12 -0
  429. package/lib/typescript/module/src/FloatingToolbarNativeComponent.d.ts.map +1 -1
  430. package/lib/typescript/module/src/LiquidGlass.d.ts +17 -0
  431. package/lib/typescript/module/src/LiquidGlass.d.ts.map +1 -1
  432. package/lib/typescript/module/src/LiquidGlassContainer.d.ts +27 -0
  433. package/lib/typescript/module/src/LiquidGlassContainer.d.ts.map +1 -0
  434. package/lib/typescript/module/src/LiquidGlassContainerNativeComponent.d.ts +13 -0
  435. package/lib/typescript/module/src/LiquidGlassContainerNativeComponent.d.ts.map +1 -0
  436. package/lib/typescript/module/src/LiquidGlassNativeComponent.d.ts +7 -0
  437. package/lib/typescript/module/src/LiquidGlassNativeComponent.d.ts.map +1 -1
  438. package/lib/typescript/module/src/NavigationRail.d.ts +86 -0
  439. package/lib/typescript/module/src/NavigationRail.d.ts.map +1 -0
  440. package/lib/typescript/module/src/NavigationRailNativeComponent.d.ts +81 -0
  441. package/lib/typescript/module/src/NavigationRailNativeComponent.d.ts.map +1 -0
  442. package/lib/typescript/module/src/PlatformComponentsProvider.d.ts +6 -0
  443. package/lib/typescript/module/src/PlatformComponentsProvider.d.ts.map +1 -0
  444. package/lib/typescript/module/src/SegmentedControl.d.ts +18 -1
  445. package/lib/typescript/module/src/SegmentedControl.d.ts.map +1 -1
  446. package/lib/typescript/module/src/SegmentedControlNativeComponent.d.ts +9 -0
  447. package/lib/typescript/module/src/SegmentedControlNativeComponent.d.ts.map +1 -1
  448. package/lib/typescript/module/src/SelectionMenu.d.ts +44 -2
  449. package/lib/typescript/module/src/SelectionMenu.d.ts.map +1 -1
  450. package/lib/typescript/module/src/SelectionMenuNativeComponent.d.ts +20 -4
  451. package/lib/typescript/module/src/SelectionMenuNativeComponent.d.ts.map +1 -1
  452. package/lib/typescript/module/src/SplitButton.d.ts +83 -0
  453. package/lib/typescript/module/src/SplitButton.d.ts.map +1 -0
  454. package/lib/typescript/module/src/TabBar.d.ts +144 -0
  455. package/lib/typescript/module/src/TabBar.d.ts.map +1 -0
  456. package/lib/typescript/module/src/TabBarAccessoryNativeComponent.d.ts +13 -0
  457. package/lib/typescript/module/src/TabBarAccessoryNativeComponent.d.ts.map +1 -0
  458. package/lib/typescript/module/src/TabBarNativeComponent.d.ts +110 -0
  459. package/lib/typescript/module/src/TabBarNativeComponent.d.ts.map +1 -0
  460. package/lib/typescript/module/src/TextField.d.ts +166 -8
  461. package/lib/typescript/module/src/TextField.d.ts.map +1 -1
  462. package/lib/typescript/module/src/TextFieldNativeComponent.d.ts +81 -3
  463. package/lib/typescript/module/src/TextFieldNativeComponent.d.ts.map +1 -1
  464. package/lib/typescript/module/src/focusRegistry.d.ts.map +1 -1
  465. package/lib/typescript/module/src/haptics.d.ts +20 -0
  466. package/lib/typescript/module/src/haptics.d.ts.map +1 -0
  467. package/lib/typescript/module/src/icons.d.ts +7 -1
  468. package/lib/typescript/module/src/icons.d.ts.map +1 -1
  469. package/lib/typescript/module/src/index.d.ts +7 -0
  470. package/lib/typescript/module/src/index.d.ts.map +1 -1
  471. package/lib/typescript/module/src/index.web.d.ts +25 -254
  472. package/lib/typescript/module/src/index.web.d.ts.map +1 -1
  473. package/lib/typescript/module/src/jest.d.ts +139 -0
  474. package/lib/typescript/module/src/jest.d.ts.map +1 -0
  475. package/lib/typescript/module/src/menuItems.d.ts +100 -0
  476. package/lib/typescript/module/src/menuItems.d.ts.map +1 -0
  477. package/lib/typescript/module/src/selectionIdentifiers.d.ts +3 -0
  478. package/lib/typescript/module/src/selectionIdentifiers.d.ts.map +1 -0
  479. package/lib/typescript/module/src/submitBehavior.d.ts +9 -0
  480. package/lib/typescript/module/src/submitBehavior.d.ts.map +1 -0
  481. package/lib/typescript/module/src/tabItems.d.ts +55 -0
  482. package/lib/typescript/module/src/tabItems.d.ts.map +1 -0
  483. package/lib/typescript/module/src/web/Button.d.ts +9 -0
  484. package/lib/typescript/module/src/web/Button.d.ts.map +1 -0
  485. package/lib/typescript/module/src/web/ButtonGroup.d.ts +11 -0
  486. package/lib/typescript/module/src/web/ButtonGroup.d.ts.map +1 -0
  487. package/lib/typescript/module/src/web/DatePicker.d.ts +14 -0
  488. package/lib/typescript/module/src/web/DatePicker.d.ts.map +1 -0
  489. package/lib/typescript/module/src/web/DateRangePicker.d.ts +11 -0
  490. package/lib/typescript/module/src/web/DateRangePicker.d.ts.map +1 -0
  491. package/lib/typescript/module/src/web/Dialog.d.ts +12 -0
  492. package/lib/typescript/module/src/web/Dialog.d.ts.map +1 -0
  493. package/lib/typescript/module/src/web/FloatingActionButton.d.ts +8 -0
  494. package/lib/typescript/module/src/web/FloatingActionButton.d.ts.map +1 -0
  495. package/lib/typescript/module/src/web/Icon.d.ts +12 -0
  496. package/lib/typescript/module/src/web/Icon.d.ts.map +1 -0
  497. package/lib/typescript/module/src/web/NativeTheme.d.ts +10 -0
  498. package/lib/typescript/module/src/web/NativeTheme.d.ts.map +1 -0
  499. package/lib/typescript/module/src/web/NavigationRail.d.ts +8 -0
  500. package/lib/typescript/module/src/web/NavigationRail.d.ts.map +1 -0
  501. package/lib/typescript/module/src/web/PlatformComponentsProvider.d.ts +10 -0
  502. package/lib/typescript/module/src/web/PlatformComponentsProvider.d.ts.map +1 -0
  503. package/lib/typescript/module/src/web/SegmentedControl.d.ts +8 -0
  504. package/lib/typescript/module/src/web/SegmentedControl.d.ts.map +1 -0
  505. package/lib/typescript/module/src/web/SelectionMenu.d.ts +10 -0
  506. package/lib/typescript/module/src/web/SelectionMenu.d.ts.map +1 -0
  507. package/lib/typescript/module/src/web/SplitButton.d.ts +9 -0
  508. package/lib/typescript/module/src/web/SplitButton.d.ts.map +1 -0
  509. package/lib/typescript/module/src/web/TabBar.d.ts +9 -0
  510. package/lib/typescript/module/src/web/TabBar.d.ts.map +1 -0
  511. package/lib/typescript/module/src/web/TextField.d.ts +9 -0
  512. package/lib/typescript/module/src/web/TextField.d.ts.map +1 -0
  513. package/lib/typescript/module/src/web/components.d.ts +17 -0
  514. package/lib/typescript/module/src/web/components.d.ts.map +1 -0
  515. package/lib/typescript/module/src/web/containers.d.ts +24 -0
  516. package/lib/typescript/module/src/web/containers.d.ts.map +1 -0
  517. package/lib/typescript/module/src/web/dateInput.d.ts +20 -0
  518. package/lib/typescript/module/src/web/dateInput.d.ts.map +1 -0
  519. package/lib/typescript/module/src/web/shared.d.ts +43 -0
  520. package/lib/typescript/module/src/web/shared.d.ts.map +1 -0
  521. package/lib/typescript/module/src/webComponents.d.ts +43 -0
  522. package/lib/typescript/module/src/webComponents.d.ts.map +1 -0
  523. package/package.json +32 -2
  524. package/plugin/build/index.cjs +79 -6
  525. package/plugin/build/index.d.ts +27 -2
  526. package/plugin/build/index.d.ts.map +1 -1
  527. package/plugin/tsconfig.json +2 -1
  528. package/react-native.config.js +3 -0
  529. package/shared/PCFloatingActionButtonComponentDescriptors-custom.h +22 -0
  530. package/shared/PCFloatingActionButtonShadowNode-custom.cpp +48 -0
  531. package/shared/PCFloatingActionButtonShadowNode-custom.h +54 -0
  532. package/shared/PCFloatingActionButtonState-custom.h +61 -0
  533. package/shared/PCNavigationRailComponentDescriptors-custom.h +47 -0
  534. package/shared/PCNavigationRailShadowNode-custom.h +42 -0
  535. package/shared/PCNavigationRailState-custom.h +62 -0
  536. package/shared/PCTabBarComponentDescriptors-custom.h +22 -0
  537. package/shared/PCTabBarShadowNode-custom.cpp +54 -0
  538. package/shared/PCTabBarShadowNode-custom.h +54 -0
  539. package/shared/PCTabBarState-custom.h +62 -0
  540. package/shared/react/renderer/components/PlatformComponentsViewSpec/ComponentDescriptors.h +3 -0
  541. package/src/Button.tsx +222 -7
  542. package/src/ButtonGroup.tsx +29 -11
  543. package/src/ButtonGroupNativeComponent.ts +74 -4
  544. package/src/ButtonNativeComponent.ts +119 -3
  545. package/src/ContextMenu.tsx +34 -81
  546. package/src/ContextMenuNativeComponent.ts +47 -49
  547. package/src/DatePicker.tsx +182 -4
  548. package/src/DatePickerNativeComponent.ts +19 -2
  549. package/src/FloatingActionButton.tsx +121 -0
  550. package/src/FloatingActionButtonNativeComponent.ts +58 -0
  551. package/src/FloatingToolbar.tsx +54 -3
  552. package/src/FloatingToolbarNativeComponent.ts +16 -0
  553. package/src/LiquidGlass.tsx +24 -1
  554. package/src/LiquidGlassContainer.tsx +42 -0
  555. package/src/LiquidGlassContainerNativeComponent.ts +17 -0
  556. package/src/LiquidGlassNativeComponent.ts +8 -0
  557. package/src/NavigationRail.tsx +203 -0
  558. package/src/NavigationRailNativeComponent.ts +107 -0
  559. package/src/PlatformComponentsProvider.tsx +15 -0
  560. package/src/SegmentedControl.tsx +31 -1
  561. package/src/SegmentedControlNativeComponent.ts +11 -0
  562. package/src/SelectionMenu.tsx +81 -6
  563. package/src/SelectionMenuNativeComponent.ts +26 -4
  564. package/src/SplitButton.tsx +198 -0
  565. package/src/TabBar.tsx +373 -0
  566. package/src/TabBarAccessoryNativeComponent.ts +19 -0
  567. package/src/TabBarNativeComponent.ts +145 -0
  568. package/src/TextField.tsx +428 -14
  569. package/src/TextFieldNativeComponent.ts +110 -4
  570. package/src/focusRegistry.ts +1 -0
  571. package/src/haptics.ts +31 -0
  572. package/src/icons.ts +28 -1
  573. package/src/index.tsx +7 -0
  574. package/src/index.web.tsx +51 -391
  575. package/src/jest.tsx +958 -0
  576. package/src/menuItems.ts +152 -0
  577. package/src/selectionIdentifiers.ts +17 -0
  578. package/src/submitBehavior.ts +16 -0
  579. package/src/tabItems.ts +113 -0
  580. package/src/web/Button.tsx +201 -0
  581. package/src/web/ButtonGroup.tsx +154 -0
  582. package/src/web/DatePicker.tsx +204 -0
  583. package/src/web/DateRangePicker.tsx +135 -0
  584. package/src/web/Dialog.tsx +54 -0
  585. package/src/web/FloatingActionButton.tsx +76 -0
  586. package/src/web/Icon.tsx +33 -0
  587. package/src/web/NativeTheme.ts +23 -0
  588. package/src/web/NavigationRail.tsx +148 -0
  589. package/src/web/PlatformComponentsProvider.tsx +48 -0
  590. package/src/web/SegmentedControl.tsx +127 -0
  591. package/src/web/SelectionMenu.tsx +149 -0
  592. package/src/web/SplitButton.tsx +32 -0
  593. package/src/web/TabBar.tsx +150 -0
  594. package/src/web/TextField.tsx +361 -0
  595. package/src/web/components.tsx +71 -0
  596. package/src/web/containers.tsx +130 -0
  597. package/src/web/dateInput.ts +137 -0
  598. package/src/web/shared.ts +176 -0
  599. package/src/webComponents.ts +45 -0
  600. package/android/src/main/java/com/platformcomponents/DateConstraints.kt +0 -83
@@ -9,6 +9,7 @@ var _TextFieldNativeComponent = _interopRequireWildcard(require("./TextFieldNati
9
9
  var _icons = require("./icons");
10
10
  var _labelStyle = require("./labelStyle");
11
11
  var _focusRegistry = require("./focusRegistry");
12
+ var _submitBehavior = require("./submitBehavior");
12
13
  var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
15
  // TextField.tsx
@@ -17,7 +18,12 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
17
18
 
18
19
  /** Return key label; the React Native `TextInput` values. */
19
20
 
20
- /** Autofill hint; a cross-platform subset of the React Native `TextInput` values. */
21
+ /**
22
+ * Autofill hint: the React Native `TextInput` `autoComplete` values, which
23
+ * include the HTML autocomplete names. iOS maps them to `textContentType`,
24
+ * Android to autofill hints. A value one platform has no equivalent for is
25
+ * ignored there.
26
+ */
21
27
 
22
28
  /** An iOS text trait: the system default, on, or off. */
23
29
 
@@ -25,8 +31,71 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
25
31
 
26
32
  /** Change events carry the text and the native edit counter. */
27
33
 
34
+ /** A cursor position or selected range, as UTF-16 offsets into the text. */
35
+
36
+ /** Selection events carry the new selection, as on `TextInput`. */
37
+
38
+ /**
39
+ * What the return key does, as on `TextInput`: `'blurAndSubmit'` calls
40
+ * `onSubmitEditing` and dismisses the keyboard, `'submit'` calls it and keeps
41
+ * the keyboard up, `'newline'` inserts a newline (multi-line fields).
42
+ */
43
+
44
+ /** A system button of the iOS keyboard toolbar (`UIBarButtonItem.SystemItem`). */
45
+
46
+ /**
47
+ * An item of the iOS keyboard toolbar: a button, or `'flexibleSpace'` to push
48
+ * the next items to the end.
49
+ */
50
+
51
+ /** The iOS keyboard toolbar, a `UIToolbar` shown above the keyboard. */
52
+
28
53
  /** Methods available through the `ref`. */
29
54
 
55
+ const TOOLBAR_ITEM = {
56
+ kind: 'button',
57
+ itemId: '',
58
+ title: '',
59
+ systemItem: '',
60
+ ..._icons.NO_ICON,
61
+ prominent: 'false',
62
+ accessibilityLabel: '',
63
+ testID: ''
64
+ };
65
+
66
+ /** The keyboard toolbar as flat items: yours, then a Done button at the end. */
67
+ function toolbarItems(toolbar) {
68
+ if (toolbar == null) return [];
69
+ const items = (toolbar.items ?? []).map(item => item === 'flexibleSpace' ? {
70
+ ...TOOLBAR_ITEM,
71
+ kind: 'flexibleSpace'
72
+ } : {
73
+ ...TOOLBAR_ITEM,
74
+ itemId: item.id,
75
+ title: item.title ?? '',
76
+ systemItem: item.systemItem ?? '',
77
+ ...(0, _icons.resolveIcon)(item.icon),
78
+ prominent: item.prominent ? 'true' : 'false',
79
+ accessibilityLabel: item.accessibilityLabel ?? '',
80
+ testID: item.testID ?? ''
81
+ });
82
+ if (toolbar.done) {
83
+ if (items[items.length - 1]?.kind !== 'flexibleSpace') {
84
+ items.push({
85
+ ...TOOLBAR_ITEM,
86
+ kind: 'flexibleSpace'
87
+ });
88
+ }
89
+ items.push({
90
+ ...TOOLBAR_ITEM,
91
+ kind: 'done',
92
+ title: typeof toolbar.done === 'string' ? toolbar.done : '',
93
+ prominent: 'true',
94
+ testID: toolbar.doneTestID ?? ''
95
+ });
96
+ }
97
+ return items;
98
+ }
30
99
  const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(function TextFieldComponent(props, ref) {
31
100
  const {
32
101
  value,
@@ -36,6 +105,9 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
36
105
  onFocus,
37
106
  onBlur,
38
107
  onSubmitEditing,
108
+ submitBehavior,
109
+ onSelectionChange,
110
+ selection,
39
111
  label,
40
112
  placeholder,
41
113
  supportingText,
@@ -45,6 +117,21 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
45
117
  leadingIcon,
46
118
  trailingIcon,
47
119
  onTrailingIconPress,
120
+ leadingIconTestID,
121
+ leadingIconAccessibilityLabel,
122
+ trailingIconTestID,
123
+ trailingIconAccessibilityLabel,
124
+ onPress,
125
+ activeColor,
126
+ outlineColor,
127
+ errorColor,
128
+ containerColor,
129
+ textColor,
130
+ placeholderTextColor,
131
+ maxFontSizeMultiplier,
132
+ textAlign,
133
+ minLines,
134
+ maxLines,
48
135
  clearButtonMode,
49
136
  passwordToggle,
50
137
  showCharacterCount,
@@ -74,7 +161,11 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
74
161
  // count JS has seen. Native drops the update when the user has typed
75
162
  // since, and the edit that follows brings JS back in line.
76
163
  const [mostRecentEventCount, setMostRecentEventCount] = (0, _react.useState)(0);
164
+ const eventCountRef = (0, _react.useRef)(0);
77
165
  const [lastNativeText, setLastNativeText] = (0, _react.useState)(value ?? defaultValue);
166
+ // The selection last reported by native or pushed from here; a
167
+ // `selection` prop that differs from it is pushed, the same way
168
+ const [lastNativeSelection, setLastNativeSelection] = (0, _react.useState)(null);
78
169
 
79
170
  // Registered like a TextInput, so Keyboard.dismiss() and the ScrollView
80
171
  // keyboard props treat the field as one (see focusRegistry.ts)
@@ -84,14 +175,28 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
84
175
  _focusRegistry.focusRegistry.register(node);
85
176
  return () => _focusRegistry.focusRegistry.unregister(node);
86
177
  }, []);
178
+
179
+ // Text first, then the selection, which may point into the new text
180
+ const selectionStart = selection?.start;
181
+ const selectionEnd = selection?.end ?? selectionStart;
87
182
  (0, _react.useLayoutEffect)(() => {
88
- if (typeof value !== 'string' || value === lastNativeText) return;
89
- setLastNativeText(value);
90
183
  const node = nativeRef.current;
91
- if (node != null) {
92
- _TextFieldNativeComponent.Commands.setText(node, mostRecentEventCount, value);
184
+ if (typeof value === 'string' && value !== lastNativeText) {
185
+ setLastNativeText(value);
186
+ if (node != null) {
187
+ _TextFieldNativeComponent.Commands.setText(node, mostRecentEventCount, value);
188
+ }
93
189
  }
94
- }, [value, lastNativeText, mostRecentEventCount]);
190
+ if (selectionStart != null && selectionEnd != null && (lastNativeSelection?.start !== selectionStart || lastNativeSelection?.end !== selectionEnd)) {
191
+ setLastNativeSelection({
192
+ start: selectionStart,
193
+ end: selectionEnd
194
+ });
195
+ if (node != null) {
196
+ _TextFieldNativeComponent.Commands.setSelection(node, mostRecentEventCount, selectionStart, selectionEnd);
197
+ }
198
+ }
199
+ }, [value, lastNativeText, mostRecentEventCount, selectionStart, selectionEnd, lastNativeSelection]);
95
200
  (0, _react.useImperativeHandle)(ref, () => ({
96
201
  focus: () => {
97
202
  const node = nativeRef.current;
@@ -105,13 +210,20 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
105
210
  const node = nativeRef.current;
106
211
  if (node != null) _TextFieldNativeComponent.Commands.clear(node);
107
212
  },
108
- isFocused: () => focused.current
213
+ isFocused: () => focused.current,
214
+ setSelection: (start, end) => {
215
+ const node = nativeRef.current;
216
+ if (node != null) {
217
+ _TextFieldNativeComponent.Commands.setSelection(node, eventCountRef.current, start, end ?? start);
218
+ }
219
+ }
109
220
  }), []);
110
221
  const handleChange = (0, _react.useCallback)(event => {
111
222
  const {
112
223
  text,
113
224
  eventCount
114
225
  } = event.nativeEvent;
226
+ eventCountRef.current = eventCount;
115
227
  setMostRecentEventCount(eventCount);
116
228
  setLastNativeText(text);
117
229
  onChange?.(event);
@@ -130,9 +242,38 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
130
242
  const handleSubmit = (0, _react.useCallback)(event => {
131
243
  onSubmitEditing?.(event);
132
244
  }, [onSubmitEditing]);
245
+ const handleSelectionChange = (0, _react.useCallback)(event => {
246
+ const {
247
+ start,
248
+ end
249
+ } = event.nativeEvent;
250
+ setLastNativeSelection({
251
+ start,
252
+ end
253
+ });
254
+ onSelectionChange?.({
255
+ ...event,
256
+ nativeEvent: {
257
+ selection: {
258
+ start,
259
+ end
260
+ }
261
+ }
262
+ });
263
+ }, [onSelectionChange]);
264
+ const onToolbarItemPress = ios?.keyboardToolbar?.onItemPress;
265
+ const handleToolbarPress = (0, _react.useCallback)(event => {
266
+ onToolbarItemPress?.(event.nativeEvent.itemId);
267
+ }, [onToolbarItemPress]);
133
268
  const handleTrailingIconPress = (0, _react.useCallback)(() => {
134
269
  onTrailingIconPress?.();
135
270
  }, [onTrailingIconPress]);
271
+ const handlePress = (0, _react.useCallback)(() => {
272
+ onPress?.();
273
+ }, [onPress]);
274
+
275
+ // A read-only field with onPress acts as a button
276
+ const pressable = editable === false && onPress != null;
136
277
  const nativeLeadingIcon = (0, _react.useMemo)(() => (0, _icons.resolveIcon)(leadingIcon), [leadingIcon]);
137
278
  const nativeTrailingIcon = (0, _react.useMemo)(() => (0, _icons.resolveIcon)(trailingIcon), [trailingIcon]);
138
279
  const nativeTextStyle = (0, _react.useMemo)(() => (0, _labelStyle.normalizeLabelStyle)(textStyle), [textStyle]);
@@ -145,8 +286,10 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
145
286
  mathExpressionCompletion: ios?.mathExpressionCompletion ?? '',
146
287
  borderStyle: ios?.borderStyle ?? '',
147
288
  labelPlacement: ios?.labelPlacement ?? '',
148
- labelWidth: ios?.labelWidth ?? 0
289
+ labelWidth: ios?.labelWidth ?? 0,
290
+ passwordRules: ios?.passwordRules ?? ''
149
291
  }), [ios]);
292
+ const nativeToolbarItems = (0, _react.useMemo)(() => toolbarItems(ios?.keyboardToolbar), [ios?.keyboardToolbar]);
150
293
  const nativeAndroid = (0, _react.useMemo)(() => ({
151
294
  material: android?.material ?? 'm3',
152
295
  variant: android?.variant ?? 'outlined',
@@ -174,6 +317,8 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
174
317
  autoCorrect: autoCorrect === false ? 'disabled' : 'enabled',
175
318
  secureTextEntry: secureTextEntry ? 'secure' : 'plain',
176
319
  lines: multiline ? 'multiline' : 'single',
320
+ submitBehavior: (0, _submitBehavior.resolveSubmitBehavior)(submitBehavior, multiline),
321
+ keyboardToolbarItems: nativeToolbarItems,
177
322
  interactivity: editable === false ? 'disabled' : 'enabled',
178
323
  autoFocus: autoFocus ? 'focus' : 'none',
179
324
  selectTextOnFocus: selectTextOnFocus ? 'select' : 'keep',
@@ -181,13 +326,31 @@ const TextField = exports.TextField = /*#__PURE__*/(0, _react.forwardRef)(functi
181
326
  keyboardAppearance: keyboardAppearance ?? 'default',
182
327
  textStyle: nativeTextStyle,
183
328
  spokenLabel: accessibilityLabel ?? '',
329
+ leadingIconTestID: leadingIconTestID ?? '',
330
+ leadingIconSpokenLabel: leadingIconAccessibilityLabel ?? '',
331
+ trailingIconTestID: trailingIconTestID ?? '',
332
+ trailingIconSpokenLabel: trailingIconAccessibilityLabel ?? '',
333
+ activeColor: activeColor,
334
+ outlineColor: outlineColor,
335
+ errorColor: errorColor,
336
+ containerColor: containerColor,
337
+ textColor: textColor,
338
+ placeholderTextColor: placeholderTextColor,
339
+ maxFontSizeMultiplier: maxFontSizeMultiplier ?? 0,
340
+ textAlign: textAlign ?? '',
341
+ minLines: minLines ?? 0,
342
+ maxLines: maxLines ?? 0,
343
+ pressMode: pressable ? 'button' : 'none',
184
344
  ios: nativeIOS,
185
345
  android: nativeAndroid,
186
346
  onFieldChange: handleChange,
187
347
  onFieldFocus: handleFocus,
188
348
  onFieldBlur: handleBlur,
189
349
  onFieldSubmit: onSubmitEditing ? handleSubmit : undefined,
350
+ onFieldSelectionChange: onSelectionChange || selection ? handleSelectionChange : undefined,
351
+ onKeyboardToolbarPress: onToolbarItemPress ? handleToolbarPress : undefined,
190
352
  onTrailingIconPress: onTrailingIconPress ? handleTrailingIconPress : undefined,
353
+ onFieldPress: pressable ? handlePress : undefined,
191
354
  ...viewProps
192
355
  });
193
356
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_TextFieldNativeComponent","_icons","_labelStyle","_focusRegistry","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TextField","exports","forwardRef","TextFieldComponent","props","ref","value","defaultValue","onChangeText","onChange","onFocus","onBlur","onSubmitEditing","label","placeholder","supportingText","error","prefix","suffix","leadingIcon","trailingIcon","onTrailingIconPress","clearButtonMode","passwordToggle","showCharacterCount","maxLength","keyboardType","returnKeyType","autoCapitalize","autoCorrect","secureTextEntry","multiline","editable","autoFocus","selectTextOnFocus","autoComplete","keyboardAppearance","textStyle","accessibilityLabel","ios","android","viewProps","nativeRef","useRef","focused","mostRecentEventCount","setMostRecentEventCount","useState","lastNativeText","setLastNativeText","useLayoutEffect","node","current","undefined","focusRegistry","register","unregister","Commands","setText","useImperativeHandle","focus","blur","clear","isFocused","handleChange","useCallback","event","text","eventCount","nativeEvent","handleFocus","handleBlur","blurred","handleSubmit","handleTrailingIconPress","nativeLeadingIcon","useMemo","resolveIcon","nativeTrailingIcon","nativeTextStyle","normalizeLabelStyle","nativeIOS","writingTools","inlinePrediction","smartQuotes","smartDashes","smartInsertDelete","mathExpressionCompletion","borderStyle","labelPlacement","labelWidth","nativeAndroid","material","variant","density","dense","jsx","initialText","errorState","errorText","characterCount","lines","interactivity","spokenLabel","onFieldChange","onFieldFocus","onFieldBlur","onFieldSubmit","displayName"],"sourceRoot":"../../src","sources":["TextField.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_TextFieldNativeComponent","_icons","_labelStyle","_focusRegistry","_submitBehavior","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TOOLBAR_ITEM","kind","itemId","title","systemItem","NO_ICON","prominent","accessibilityLabel","testID","toolbarItems","toolbar","items","map","item","id","resolveIcon","icon","done","length","push","doneTestID","TextField","exports","forwardRef","TextFieldComponent","props","ref","value","defaultValue","onChangeText","onChange","onFocus","onBlur","onSubmitEditing","submitBehavior","onSelectionChange","selection","label","placeholder","supportingText","error","prefix","suffix","leadingIcon","trailingIcon","onTrailingIconPress","leadingIconTestID","leadingIconAccessibilityLabel","trailingIconTestID","trailingIconAccessibilityLabel","onPress","activeColor","outlineColor","errorColor","containerColor","textColor","placeholderTextColor","maxFontSizeMultiplier","textAlign","minLines","maxLines","clearButtonMode","passwordToggle","showCharacterCount","maxLength","keyboardType","returnKeyType","autoCapitalize","autoCorrect","secureTextEntry","multiline","editable","autoFocus","selectTextOnFocus","autoComplete","keyboardAppearance","textStyle","ios","android","viewProps","nativeRef","useRef","focused","mostRecentEventCount","setMostRecentEventCount","useState","eventCountRef","lastNativeText","setLastNativeText","lastNativeSelection","setLastNativeSelection","useLayoutEffect","node","current","undefined","focusRegistry","register","unregister","selectionStart","start","selectionEnd","end","Commands","setText","setSelection","useImperativeHandle","focus","blur","clear","isFocused","handleChange","useCallback","event","text","eventCount","nativeEvent","handleFocus","handleBlur","blurred","handleSubmit","handleSelectionChange","onToolbarItemPress","keyboardToolbar","onItemPress","handleToolbarPress","handleTrailingIconPress","handlePress","pressable","nativeLeadingIcon","useMemo","nativeTrailingIcon","nativeTextStyle","normalizeLabelStyle","nativeIOS","writingTools","inlinePrediction","smartQuotes","smartDashes","smartInsertDelete","mathExpressionCompletion","borderStyle","labelPlacement","labelWidth","passwordRules","nativeToolbarItems","nativeAndroid","material","variant","density","dense","jsx","initialText","errorState","errorText","characterCount","lines","resolveSubmitBehavior","keyboardToolbarItems","interactivity","spokenLabel","leadingIconSpokenLabel","trailingIconSpokenLabel","pressMode","onFieldChange","onFieldFocus","onFieldBlur","onFieldSubmit","onFieldSelectionChange","onKeyboardToolbarPress","onFieldPress","displayName"],"sourceRoot":"../../src","sources":["TextField.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  // TextFieldNativeComponent.ts
2
2
  import type * as React from 'react';
3
- import type { HostComponent, ViewProps } from 'react-native';
3
+ import type { ColorValue, HostComponent, ViewProps } from 'react-native';
4
4
  import { codegenNativeCommands, codegenNativeComponent } from 'react-native';
5
5
  import type { BubblingEventHandler, Double, Int32 } from './codegenTypes';
6
6
 
@@ -10,6 +10,7 @@ import type { BubblingEventHandler, Double, Int32 } from './codegenTypes';
10
10
  export type TextFieldIconProps = Readonly<{
11
11
  iconType: string; // '' | 'sfSymbol' | 'drawable' | 'image'
12
12
  iconName: string; // SF Symbol (iOS) or drawable resource name (Android)
13
+ iconRequest: string;
13
14
  iconUri: string; // Resolved image URI when iconType === 'image'
14
15
  iconScale: Double; // Resolved image scale when iconType === 'image'
15
16
  iconTinted: string; // 'true' | 'false' — draw the image as a tinted template
@@ -40,6 +41,37 @@ export type TextFieldTextEvent = Readonly<{
40
41
  text: string;
41
42
  }>;
42
43
 
44
+ /** The cursor or selection, as UTF-16 offsets into the text. */
45
+ export type TextFieldSelectionEvent = Readonly<{
46
+ start: Int32;
47
+ end: Int32;
48
+ }>;
49
+
50
+ /** A press on a keyboard toolbar button (iOS). */
51
+ export type TextFieldToolbarPressEvent = Readonly<{
52
+ itemId: string;
53
+ }>;
54
+
55
+ /**
56
+ * A keyboard toolbar item (iOS). Icons are pre-resolved on the JS side (see
57
+ * icons.ts); empty strings mean "none".
58
+ */
59
+ export type TextFieldToolbarItem = Readonly<{
60
+ kind: string; // 'button' | 'done' | 'flexibleSpace'
61
+ itemId: string;
62
+ title: string;
63
+ systemItem: string; // '' | UIBarButtonItem.SystemItem name
64
+ iconType: string; // '' | 'sfSymbol' | 'image'
65
+ iconName: string;
66
+ iconRequest: string;
67
+ iconUri: string;
68
+ iconScale: Double;
69
+ iconTinted: string; // 'true' | 'false'
70
+ prominent: string; // 'true' | 'false'
71
+ accessibilityLabel: string;
72
+ testID: string;
73
+ }>;
74
+
43
75
  /**
44
76
  * iOS-specific configuration. Every field is '' for the platform default.
45
77
  */
@@ -62,6 +94,8 @@ export type TextFieldIOSProps = Readonly<{
62
94
  labelPlacement?: string;
63
95
  /** Width of a leading label column in points; 0 = default */
64
96
  labelWidth?: Double;
97
+ /** UITextInputPasswordRules descriptor; '' = none */
98
+ passwordRules?: string;
65
99
  }>;
66
100
 
67
101
  /**
@@ -70,7 +104,7 @@ export type TextFieldIOSProps = Readonly<{
70
104
  export type TextFieldAndroidProps = Readonly<{
71
105
  /** 'm3' | 'system' (AndroidMaterialMode) */
72
106
  material?: string;
73
- /** 'outlined' | 'filled' */
107
+ /** 'outlined' | 'filled' | 'plain' */
74
108
  variant?: string;
75
109
  /** 'standard' | 'dense' */
76
110
  density?: string;
@@ -140,6 +174,15 @@ export interface TextFieldNativeProps extends ViewProps {
140
174
  /** 'single' | 'multiline' */
141
175
  lines?: string;
142
176
 
177
+ /**
178
+ * What the return key does: 'submit' | 'blurAndSubmit' | 'newline',
179
+ * resolved on the JS side ('newline' only for multi-line fields).
180
+ */
181
+ submitBehavior?: string;
182
+
183
+ /** iOS: the keyboard toolbar (inputAccessoryView); empty = none. */
184
+ keyboardToolbarItems?: ReadonlyArray<TextFieldToolbarItem>;
185
+
143
186
  /** 'enabled' | 'disabled' */
144
187
  interactivity?: string;
145
188
 
@@ -164,6 +207,49 @@ export interface TextFieldNativeProps extends ViewProps {
164
207
  */
165
208
  spokenLabel?: string;
166
209
 
210
+ /** E2E identifier of the leading icon. */
211
+ leadingIconTestID?: string;
212
+
213
+ /** Screen-reader label of the leading icon. */
214
+ leadingIconSpokenLabel?: string;
215
+
216
+ /** E2E identifier of the trailing icon. */
217
+ trailingIconTestID?: string;
218
+
219
+ /** Screen-reader label of the trailing icon. */
220
+ trailingIconSpokenLabel?: string;
221
+
222
+ /** Focused outline, focused label and cursor color. */
223
+ activeColor?: ColorValue;
224
+
225
+ /** Unfocused outline (underline for the filled variant) color. */
226
+ outlineColor?: ColorValue;
227
+
228
+ /** Error outline, label and message color. */
229
+ errorColor?: ColorValue;
230
+
231
+ /** Background of the field's box. */
232
+ containerColor?: ColorValue;
233
+
234
+ /** Input text color. */
235
+ textColor?: ColorValue;
236
+
237
+ /** Placeholder color. */
238
+ placeholderTextColor?: ColorValue;
239
+
240
+ /** Largest font scale the text may reach; 0 = no cap. */
241
+ maxFontSizeMultiplier?: Double;
242
+
243
+ /** '' (natural) | 'left' | 'center' | 'right' */
244
+ textAlign?: string;
245
+
246
+ /** Multi-line: minimum and maximum visible lines; 0 = unset. */
247
+ minLines?: Int32;
248
+ maxLines?: Int32;
249
+
250
+ /** 'none' | 'button': a non-editable field that fires onFieldPress. */
251
+ pressMode?: string;
252
+
167
253
  ios?: TextFieldIOSProps;
168
254
  android?: TextFieldAndroidProps;
169
255
 
@@ -176,11 +262,20 @@ export interface TextFieldNativeProps extends ViewProps {
176
262
  /** Fired when the field loses focus. */
177
263
  onFieldBlur?: BubblingEventHandler<TextFieldTextEvent>;
178
264
 
179
- /** Fired when the keyboard's return key is pressed (single-line). */
265
+ /** Fired when the return key submits (see submitBehavior). */
180
266
  onFieldSubmit?: BubblingEventHandler<TextFieldTextEvent>;
181
267
 
268
+ /** Fired when the cursor moves or the selection changes. */
269
+ onFieldSelectionChange?: BubblingEventHandler<TextFieldSelectionEvent>;
270
+
271
+ /** iOS: fired when a keyboard toolbar button (other than Done) is pressed. */
272
+ onKeyboardToolbarPress?: BubblingEventHandler<TextFieldToolbarPressEvent>;
273
+
182
274
  /** Fired when the trailing icon is pressed. */
183
275
  onTrailingIconPress?: BubblingEventHandler<Readonly<{}>>;
276
+
277
+ /** Fired when a field with pressMode 'button' is pressed. */
278
+ onFieldPress?: BubblingEventHandler<Readonly<{}>>;
184
279
  }
185
280
 
186
281
  type NativeTextFieldComponent = HostComponent<TextFieldNativeProps>;
@@ -207,10 +302,21 @@ interface NativeCommands {
207
302
  eventCount: Int32,
208
303
  text: string
209
304
  ) => void;
305
+
306
+ /**
307
+ * Selects `start`..`end` (UTF-16 offsets, clamped to the text), unless the
308
+ * user has edited since `eventCount` was reported, as for `setText`.
309
+ */
310
+ setSelection: (
311
+ viewRef: React.ElementRef<NativeTextFieldComponent>,
312
+ eventCount: Int32,
313
+ start: Int32,
314
+ end: Int32
315
+ ) => void;
210
316
  }
211
317
 
212
318
  export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
213
- supportedCommands: ['focus', 'blur', 'clear', 'setText'],
319
+ supportedCommands: ['focus', 'blur', 'clear', 'setText', 'setSelection'],
214
320
  });
215
321
 
216
322
  export default codegenNativeComponent<TextFieldNativeProps>(
@@ -5,7 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.focusRegistry = void 0;
7
7
  var _reactNative = require("react-native");
8
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } // focusRegistry.ts
8
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } /// <reference path="./reactNativeInternals.d.ts" />
9
+ // focusRegistry.ts
9
10
  //
10
11
  // TextField's link to React Native's focused-input bookkeeping. The core
11
12
  // TextInput registers its host node with `TextInputState`, and that registry is
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","registry","pendingRegistrations","Set","Promise","resolve","then","module","forEach","node","registerInput","clear","catch","focusRegistry","exports","register","add","unregister","delete","unregisterInput","currentlyFocusedInput","blurInput","TextInput","State","blurTextInput","focused","focusInput","focusTextInput","blurred"],"sourceRoot":"../../src","sources":["focusRegistry.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","registry","pendingRegistrations","Set","Promise","resolve","then","module","forEach","node","registerInput","clear","catch","focusRegistry","exports","register","add","unregister","delete","unregisterInput","currentlyFocusedInput","blurInput","TextInput","State","blurTextInput","focused","focusInput","focusTextInput","blurred"],"sourceRoot":"../../src","sources":["focusRegistry.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=haptics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["haptics.ts"],"mappings":"","ignoreList":[]}
@@ -21,7 +21,11 @@ var _reactNative = require("react-native");
21
21
  * Android only; ignored on iOS.
22
22
  * - `{ type: 'image' }`: an image asset (`require('./icon.png')`) or a
23
23
  * `{ uri }` source. Works on both platforms. Images are drawn as tinted
24
- * templates unless `tinted` is `false`.
24
+ * templates unless `tinted` is `false`. Native loaders forward `headers`,
25
+ * `method` and `body`. `cache` controls the decoded in-memory image cache:
26
+ * `reload` bypasses it, `only-if-cached` never fetches, and `default` /
27
+ * `force-cache` reuse a matching cached request. HTTP redirects carrying
28
+ * custom request options are not followed.
25
29
  */
26
30
 
27
31
  /**
@@ -35,6 +39,7 @@ const NO_ICON = exports.NO_ICON = {
35
39
  iconType: '',
36
40
  iconName: '',
37
41
  iconUri: '',
42
+ iconRequest: '',
38
43
  iconScale: 1,
39
44
  iconTinted: 'true'
40
45
  };
@@ -77,10 +82,19 @@ function resolveIcon(icon) {
77
82
  {
78
83
  const resolved = _reactNative.Image.resolveAssetSource(source.source);
79
84
  if (!resolved?.uri) return NO_ICON;
85
+ const request = typeof source.source === 'object' ? source.source : undefined;
86
+ const headers = request?.headers ? Object.fromEntries(Object.entries(request.headers).sort(([a], [b]) => a.localeCompare(b))) : undefined;
87
+ const requestOptions = {
88
+ headers,
89
+ method: request?.method,
90
+ body: request?.body,
91
+ cache: request?.cache
92
+ };
80
93
  return {
81
94
  iconType: 'image',
82
95
  iconName: '',
83
96
  iconUri: resolved.uri,
97
+ iconRequest: Object.values(requestOptions).some(value => value !== undefined) ? JSON.stringify(requestOptions) : '',
84
98
  iconScale: resolved.scale > 0 ? resolved.scale : 1,
85
99
  iconTinted: source.tinted === false ? 'false' : 'true'
86
100
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","NO_ICON","exports","iconType","iconName","iconUri","iconScale","iconTinted","pickIconSource","icon","undefined","Platform","OS","ios","android","resolveIcon","source","length","type","name","resolved","Image","resolveAssetSource","uri","scale","tinted"],"sourceRoot":"../../src","sources":["icons.ts"],"mappings":";;;;;;;AAIA,IAAAA,YAAA,GAAAC,OAAA;AAJA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAWA;AACA;AACA;AACA;;AAQA;;AAcO,MAAMC,OAAyB,GAAAC,OAAA,CAAAD,OAAA,GAAG;EACvCE,QAAQ,EAAE,EAAE;EACZC,QAAQ,EAAE,EAAE;EACZC,OAAO,EAAE,EAAE;EACXC,SAAS,EAAE,CAAC;EACZC,UAAU,EAAE;AACd,CAAC;AAED,SAASC,cAAcA,CACrBC,IAA8B,EACE;EAChC,IAAIA,IAAI,KAAKC,SAAS,IAAI,OAAOD,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAIA,IAAI,EAAE;IACpE,OAAOA,IAAI;EACb;EACA,OAAOE,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAGH,IAAI,CAACI,GAAG,GAAGJ,IAAI,CAACK,OAAO;AACxD;;AAEA;AACA;AACA;AACA;AACO,SAASC,WAAWA,CAACN,IAA8B,EAAoB;EAC5E,MAAMO,MAAM,GAAGR,cAAc,CAACC,IAAI,CAAC;EACnC,IAAIO,MAAM,KAAKN,SAAS,EAAE,OAAOT,OAAO;EAExC,IAAI,OAAOe,MAAM,KAAK,QAAQ,EAAE;IAC9B,IAAIA,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE,OAAOhB,OAAO;IACvC,OAAO;MACL,GAAGA,OAAO;MACVE,QAAQ,EAAEQ,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,UAAU,GAAG,UAAU;MACzDR,QAAQ,EAAEY;IACZ,CAAC;EACH;EAEA,QAAQA,MAAM,CAACE,IAAI;IACjB,KAAK,UAAU;MACb,OAAOP,qBAAQ,CAACC,EAAE,KAAK,KAAK,GACxB;QAAE,GAAGX,OAAO;QAAEE,QAAQ,EAAE,UAAU;QAAEC,QAAQ,EAAEY,MAAM,CAACG;MAAK,CAAC,GAC3DlB,OAAO;IACb,KAAK,UAAU;MACb,OAAOU,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAC5B;QAAE,GAAGX,OAAO;QAAEE,QAAQ,EAAE,UAAU;QAAEC,QAAQ,EAAEY,MAAM,CAACG;MAAK,CAAC,GAC3DlB,OAAO;IACb,KAAK,OAAO;MAAE;QACZ,MAAMmB,QAAQ,GAAGC,kBAAK,CAACC,kBAAkB,CAACN,MAAM,CAACA,MAAM,CAAC;QACxD,IAAI,CAACI,QAAQ,EAAEG,GAAG,EAAE,OAAOtB,OAAO;QAClC,OAAO;UACLE,QAAQ,EAAE,OAAO;UACjBC,QAAQ,EAAE,EAAE;UACZC,OAAO,EAAEe,QAAQ,CAACG,GAAG;UACrBjB,SAAS,EAAEc,QAAQ,CAACI,KAAK,GAAG,CAAC,GAAGJ,QAAQ,CAACI,KAAK,GAAG,CAAC;UAClDjB,UAAU,EAAES,MAAM,CAACS,MAAM,KAAK,KAAK,GAAG,OAAO,GAAG;QAClD,CAAC;MACH;IACA;MACE,OAAOxB,OAAO;EAClB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","NO_ICON","exports","iconType","iconName","iconUri","iconRequest","iconScale","iconTinted","pickIconSource","icon","undefined","Platform","OS","ios","android","resolveIcon","source","length","type","name","resolved","Image","resolveAssetSource","uri","request","headers","Object","fromEntries","entries","sort","a","b","localeCompare","requestOptions","method","body","cache","values","some","value","JSON","stringify","scale","tinted"],"sourceRoot":"../../src","sources":["icons.ts"],"mappings":"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","ignoreList":[]}