blend-native 0.0.1-beta.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 (555) hide show
  1. package/README.md +404 -0
  2. package/lib/commonjs/a11y/announcement.js +42 -0
  3. package/lib/commonjs/a11y/announcement.js.map +1 -0
  4. package/lib/commonjs/a11y/useLiveRegion.js +37 -0
  5. package/lib/commonjs/a11y/useLiveRegion.js.map +1 -0
  6. package/lib/commonjs/adapters/cssStringAdapter.js +363 -0
  7. package/lib/commonjs/adapters/cssStringAdapter.js.map +1 -0
  8. package/lib/commonjs/adapters/optionalGradient.js +33 -0
  9. package/lib/commonjs/adapters/optionalGradient.js.map +1 -0
  10. package/lib/commonjs/adapters/surfaceStyle.js +159 -0
  11. package/lib/commonjs/adapters/surfaceStyle.js.map +1 -0
  12. package/lib/commonjs/components/Alert/Alert.js +130 -0
  13. package/lib/commonjs/components/Alert/Alert.js.map +1 -0
  14. package/lib/commonjs/components/Alert/AlertActions.js +74 -0
  15. package/lib/commonjs/components/Alert/AlertActions.js.map +1 -0
  16. package/lib/commonjs/components/Alert/AlertClose.js +48 -0
  17. package/lib/commonjs/components/Alert/AlertClose.js.map +1 -0
  18. package/lib/commonjs/components/Alert/AlertText.js +49 -0
  19. package/lib/commonjs/components/Alert/AlertText.js.map +1 -0
  20. package/lib/commonjs/components/Alert/alert.tokens.js +6 -0
  21. package/lib/commonjs/components/Alert/alert.tokens.js.map +1 -0
  22. package/lib/commonjs/components/Alert/alert.types.js +6 -0
  23. package/lib/commonjs/components/Alert/alert.types.js.map +1 -0
  24. package/lib/commonjs/components/Alert/alert.utils.js +80 -0
  25. package/lib/commonjs/components/Alert/alert.utils.js.map +1 -0
  26. package/lib/commonjs/components/Alert/index.js +51 -0
  27. package/lib/commonjs/components/Alert/index.js.map +1 -0
  28. package/lib/commonjs/components/Button/Button.js +125 -0
  29. package/lib/commonjs/components/Button/Button.js.map +1 -0
  30. package/lib/commonjs/components/Button/button.types.js +6 -0
  31. package/lib/commonjs/components/Button/button.types.js.map +1 -0
  32. package/lib/commonjs/components/Button/button.utils.js +129 -0
  33. package/lib/commonjs/components/Button/button.utils.js.map +1 -0
  34. package/lib/commonjs/components/Button/index.js +57 -0
  35. package/lib/commonjs/components/Button/index.js.map +1 -0
  36. package/lib/commonjs/components/Skeleton/Skeleton.js +154 -0
  37. package/lib/commonjs/components/Skeleton/Skeleton.js.map +1 -0
  38. package/lib/commonjs/components/Skeleton/index.js +20 -0
  39. package/lib/commonjs/components/Skeleton/index.js.map +1 -0
  40. package/lib/commonjs/components/Skeleton/skeleton.types.js +6 -0
  41. package/lib/commonjs/components/Skeleton/skeleton.types.js.map +1 -0
  42. package/lib/commonjs/components/Skeleton/skeleton.utils.js +45 -0
  43. package/lib/commonjs/components/Skeleton/skeleton.utils.js.map +1 -0
  44. package/lib/commonjs/components/Tag/Tag.js +161 -0
  45. package/lib/commonjs/components/Tag/Tag.js.map +1 -0
  46. package/lib/commonjs/components/Tag/index.js +33 -0
  47. package/lib/commonjs/components/Tag/index.js.map +1 -0
  48. package/lib/commonjs/components/Tag/tag.types.js +6 -0
  49. package/lib/commonjs/components/Tag/tag.types.js.map +1 -0
  50. package/lib/commonjs/components/Tag/tag.utils.js +69 -0
  51. package/lib/commonjs/components/Tag/tag.utils.js.map +1 -0
  52. package/lib/commonjs/components/TextInput/TextInput.js +138 -0
  53. package/lib/commonjs/components/TextInput/TextInput.js.map +1 -0
  54. package/lib/commonjs/components/TextInput/index.js +14 -0
  55. package/lib/commonjs/components/TextInput/index.js.map +1 -0
  56. package/lib/commonjs/components/TextInput/textInput.types.js +6 -0
  57. package/lib/commonjs/components/TextInput/textInput.types.js.map +1 -0
  58. package/lib/commonjs/components/TextInput/textInput.utils.js +40 -0
  59. package/lib/commonjs/components/TextInput/textInput.utils.js.map +1 -0
  60. package/lib/commonjs/components/shared/field/FieldFooter.js +51 -0
  61. package/lib/commonjs/components/shared/field/FieldFooter.js.map +1 -0
  62. package/lib/commonjs/components/shared/field/FieldLabels.js +67 -0
  63. package/lib/commonjs/components/shared/field/FieldLabels.js.map +1 -0
  64. package/lib/commonjs/components/shared/field/fieldState.js +37 -0
  65. package/lib/commonjs/components/shared/field/fieldState.js.map +1 -0
  66. package/lib/commonjs/components/shared/group.js +73 -0
  67. package/lib/commonjs/components/shared/group.js.map +1 -0
  68. package/lib/commonjs/index.js +256 -0
  69. package/lib/commonjs/index.js.map +1 -0
  70. package/lib/commonjs/motion/motion.js +128 -0
  71. package/lib/commonjs/motion/motion.js.map +1 -0
  72. package/lib/commonjs/motion/useReduceMotion.js +37 -0
  73. package/lib/commonjs/motion/useReduceMotion.js.map +1 -0
  74. package/lib/commonjs/overlay/portal.js +110 -0
  75. package/lib/commonjs/overlay/portal.js.map +1 -0
  76. package/lib/commonjs/overlay/positioning.js +122 -0
  77. package/lib/commonjs/overlay/positioning.js.map +1 -0
  78. package/lib/commonjs/overlay/safeAreaInsets.js +30 -0
  79. package/lib/commonjs/overlay/safeAreaInsets.js.map +1 -0
  80. package/lib/commonjs/overlay/sheet/BottomSheet.js +196 -0
  81. package/lib/commonjs/overlay/sheet/BottomSheet.js.map +1 -0
  82. package/lib/commonjs/overlay/sheet/sheetMath.js +60 -0
  83. package/lib/commonjs/overlay/sheet/sheetMath.js.map +1 -0
  84. package/lib/commonjs/overlay/toast/ToastOutlet.js +106 -0
  85. package/lib/commonjs/overlay/toast/ToastOutlet.js.map +1 -0
  86. package/lib/commonjs/overlay/toast/toastStore.js +76 -0
  87. package/lib/commonjs/overlay/toast/toastStore.js.map +1 -0
  88. package/lib/commonjs/overlay/useAnchoredPosition.js +85 -0
  89. package/lib/commonjs/overlay/useAnchoredPosition.js.map +1 -0
  90. package/lib/commonjs/package.json +1 -0
  91. package/lib/commonjs/primitives/Block.js +112 -0
  92. package/lib/commonjs/primitives/Block.js.map +1 -0
  93. package/lib/commonjs/primitives/Pressable.js +348 -0
  94. package/lib/commonjs/primitives/Pressable.js.map +1 -0
  95. package/lib/commonjs/primitives/PrimitiveInput.js +66 -0
  96. package/lib/commonjs/primitives/PrimitiveInput.js.map +1 -0
  97. package/lib/commonjs/primitives/Separator.js +55 -0
  98. package/lib/commonjs/primitives/Separator.js.map +1 -0
  99. package/lib/commonjs/primitives/Slot.js +78 -0
  100. package/lib/commonjs/primitives/Slot.js.map +1 -0
  101. package/lib/commonjs/primitives/Text.js +73 -0
  102. package/lib/commonjs/primitives/Text.js.map +1 -0
  103. package/lib/commonjs/primitives/pressFeedback.js +53 -0
  104. package/lib/commonjs/primitives/pressFeedback.js.map +1 -0
  105. package/lib/commonjs/primitives/textStyle.js +27 -0
  106. package/lib/commonjs/primitives/textStyle.js.map +1 -0
  107. package/lib/commonjs/primitives/tintSlot.js +45 -0
  108. package/lib/commonjs/primitives/tintSlot.js.map +1 -0
  109. package/lib/commonjs/primitives/touchTarget.js +64 -0
  110. package/lib/commonjs/primitives/touchTarget.js.map +1 -0
  111. package/lib/commonjs/theme/BlendNativeProvider.js +90 -0
  112. package/lib/commonjs/theme/BlendNativeProvider.js.map +1 -0
  113. package/lib/commonjs/theme/breakpoint.js +36 -0
  114. package/lib/commonjs/theme/breakpoint.js.map +1 -0
  115. package/lib/commonjs/theme/fonts.js +58 -0
  116. package/lib/commonjs/theme/fonts.js.map +1 -0
  117. package/lib/commonjs/theme/nativeTokenRegistry.js +44 -0
  118. package/lib/commonjs/theme/nativeTokenRegistry.js.map +1 -0
  119. package/lib/commonjs/theme/systemTheme.js +35 -0
  120. package/lib/commonjs/theme/systemTheme.js.map +1 -0
  121. package/lib/commonjs/theme/useNativeBreakpoint.js +33 -0
  122. package/lib/commonjs/theme/useNativeBreakpoint.js.map +1 -0
  123. package/lib/commonjs/theme/useNativeTokens.js +71 -0
  124. package/lib/commonjs/theme/useNativeTokens.js.map +1 -0
  125. package/lib/module/a11y/announcement.js +38 -0
  126. package/lib/module/a11y/announcement.js.map +1 -0
  127. package/lib/module/a11y/useLiveRegion.js +33 -0
  128. package/lib/module/a11y/useLiveRegion.js.map +1 -0
  129. package/lib/module/adapters/cssStringAdapter.js +352 -0
  130. package/lib/module/adapters/cssStringAdapter.js.map +1 -0
  131. package/lib/module/adapters/optionalGradient.js +29 -0
  132. package/lib/module/adapters/optionalGradient.js.map +1 -0
  133. package/lib/module/adapters/surfaceStyle.js +155 -0
  134. package/lib/module/adapters/surfaceStyle.js.map +1 -0
  135. package/lib/module/components/Alert/Alert.js +126 -0
  136. package/lib/module/components/Alert/Alert.js.map +1 -0
  137. package/lib/module/components/Alert/AlertActions.js +70 -0
  138. package/lib/module/components/Alert/AlertActions.js.map +1 -0
  139. package/lib/module/components/Alert/AlertClose.js +44 -0
  140. package/lib/module/components/Alert/AlertClose.js.map +1 -0
  141. package/lib/module/components/Alert/AlertText.js +45 -0
  142. package/lib/module/components/Alert/AlertText.js.map +1 -0
  143. package/lib/module/components/Alert/alert.tokens.js +4 -0
  144. package/lib/module/components/Alert/alert.tokens.js.map +1 -0
  145. package/lib/module/components/Alert/alert.types.js +4 -0
  146. package/lib/module/components/Alert/alert.types.js.map +1 -0
  147. package/lib/module/components/Alert/alert.utils.js +72 -0
  148. package/lib/module/components/Alert/alert.utils.js.map +1 -0
  149. package/lib/module/components/Alert/index.js +6 -0
  150. package/lib/module/components/Alert/index.js.map +1 -0
  151. package/lib/module/components/Button/Button.js +121 -0
  152. package/lib/module/components/Button/Button.js.map +1 -0
  153. package/lib/module/components/Button/button.types.js +4 -0
  154. package/lib/module/components/Button/button.types.js.map +1 -0
  155. package/lib/module/components/Button/button.utils.js +120 -0
  156. package/lib/module/components/Button/button.utils.js.map +1 -0
  157. package/lib/module/components/Button/index.js +5 -0
  158. package/lib/module/components/Button/index.js.map +1 -0
  159. package/lib/module/components/Skeleton/Skeleton.js +149 -0
  160. package/lib/module/components/Skeleton/Skeleton.js.map +1 -0
  161. package/lib/module/components/Skeleton/index.js +4 -0
  162. package/lib/module/components/Skeleton/index.js.map +1 -0
  163. package/lib/module/components/Skeleton/skeleton.types.js +4 -0
  164. package/lib/module/components/Skeleton/skeleton.types.js.map +1 -0
  165. package/lib/module/components/Skeleton/skeleton.utils.js +40 -0
  166. package/lib/module/components/Skeleton/skeleton.utils.js.map +1 -0
  167. package/lib/module/components/Tag/Tag.js +157 -0
  168. package/lib/module/components/Tag/Tag.js.map +1 -0
  169. package/lib/module/components/Tag/index.js +5 -0
  170. package/lib/module/components/Tag/index.js.map +1 -0
  171. package/lib/module/components/Tag/tag.types.js +4 -0
  172. package/lib/module/components/Tag/tag.types.js.map +1 -0
  173. package/lib/module/components/Tag/tag.utils.js +64 -0
  174. package/lib/module/components/Tag/tag.utils.js.map +1 -0
  175. package/lib/module/components/TextInput/TextInput.js +134 -0
  176. package/lib/module/components/TextInput/TextInput.js.map +1 -0
  177. package/lib/module/components/TextInput/index.js +4 -0
  178. package/lib/module/components/TextInput/index.js.map +1 -0
  179. package/lib/module/components/TextInput/textInput.types.js +4 -0
  180. package/lib/module/components/TextInput/textInput.types.js.map +1 -0
  181. package/lib/module/components/TextInput/textInput.utils.js +36 -0
  182. package/lib/module/components/TextInput/textInput.utils.js.map +1 -0
  183. package/lib/module/components/shared/field/FieldFooter.js +47 -0
  184. package/lib/module/components/shared/field/FieldFooter.js.map +1 -0
  185. package/lib/module/components/shared/field/FieldLabels.js +63 -0
  186. package/lib/module/components/shared/field/FieldLabels.js.map +1 -0
  187. package/lib/module/components/shared/field/fieldState.js +33 -0
  188. package/lib/module/components/shared/field/fieldState.js.map +1 -0
  189. package/lib/module/components/shared/group.js +68 -0
  190. package/lib/module/components/shared/group.js.map +1 -0
  191. package/lib/module/index.js +80 -0
  192. package/lib/module/index.js.map +1 -0
  193. package/lib/module/motion/motion.js +123 -0
  194. package/lib/module/motion/motion.js.map +1 -0
  195. package/lib/module/motion/useReduceMotion.js +33 -0
  196. package/lib/module/motion/useReduceMotion.js.map +1 -0
  197. package/lib/module/overlay/portal.js +104 -0
  198. package/lib/module/overlay/portal.js.map +1 -0
  199. package/lib/module/overlay/positioning.js +118 -0
  200. package/lib/module/overlay/positioning.js.map +1 -0
  201. package/lib/module/overlay/safeAreaInsets.js +27 -0
  202. package/lib/module/overlay/safeAreaInsets.js.map +1 -0
  203. package/lib/module/overlay/sheet/BottomSheet.js +190 -0
  204. package/lib/module/overlay/sheet/BottomSheet.js.map +1 -0
  205. package/lib/module/overlay/sheet/sheetMath.js +53 -0
  206. package/lib/module/overlay/sheet/sheetMath.js.map +1 -0
  207. package/lib/module/overlay/toast/ToastOutlet.js +101 -0
  208. package/lib/module/overlay/toast/ToastOutlet.js.map +1 -0
  209. package/lib/module/overlay/toast/toastStore.js +66 -0
  210. package/lib/module/overlay/toast/toastStore.js.map +1 -0
  211. package/lib/module/overlay/useAnchoredPosition.js +82 -0
  212. package/lib/module/overlay/useAnchoredPosition.js.map +1 -0
  213. package/lib/module/package.json +1 -0
  214. package/lib/module/primitives/Block.js +107 -0
  215. package/lib/module/primitives/Block.js.map +1 -0
  216. package/lib/module/primitives/Pressable.js +339 -0
  217. package/lib/module/primitives/Pressable.js.map +1 -0
  218. package/lib/module/primitives/PrimitiveInput.js +62 -0
  219. package/lib/module/primitives/PrimitiveInput.js.map +1 -0
  220. package/lib/module/primitives/Separator.js +50 -0
  221. package/lib/module/primitives/Separator.js.map +1 -0
  222. package/lib/module/primitives/Slot.js +69 -0
  223. package/lib/module/primitives/Slot.js.map +1 -0
  224. package/lib/module/primitives/Text.js +68 -0
  225. package/lib/module/primitives/Text.js.map +1 -0
  226. package/lib/module/primitives/pressFeedback.js +48 -0
  227. package/lib/module/primitives/pressFeedback.js.map +1 -0
  228. package/lib/module/primitives/textStyle.js +23 -0
  229. package/lib/module/primitives/textStyle.js.map +1 -0
  230. package/lib/module/primitives/tintSlot.js +42 -0
  231. package/lib/module/primitives/tintSlot.js.map +1 -0
  232. package/lib/module/primitives/touchTarget.js +58 -0
  233. package/lib/module/primitives/touchTarget.js.map +1 -0
  234. package/lib/module/theme/BlendNativeProvider.js +78 -0
  235. package/lib/module/theme/BlendNativeProvider.js.map +1 -0
  236. package/lib/module/theme/breakpoint.js +33 -0
  237. package/lib/module/theme/breakpoint.js.map +1 -0
  238. package/lib/module/theme/fonts.js +55 -0
  239. package/lib/module/theme/fonts.js.map +1 -0
  240. package/lib/module/theme/nativeTokenRegistry.js +40 -0
  241. package/lib/module/theme/nativeTokenRegistry.js.map +1 -0
  242. package/lib/module/theme/systemTheme.js +31 -0
  243. package/lib/module/theme/systemTheme.js.map +1 -0
  244. package/lib/module/theme/useNativeBreakpoint.js +24 -0
  245. package/lib/module/theme/useNativeBreakpoint.js.map +1 -0
  246. package/lib/module/theme/useNativeTokens.js +67 -0
  247. package/lib/module/theme/useNativeTokens.js.map +1 -0
  248. package/lib/typescript/commonjs/a11y/announcement.d.ts +26 -0
  249. package/lib/typescript/commonjs/a11y/announcement.d.ts.map +1 -0
  250. package/lib/typescript/commonjs/a11y/useLiveRegion.d.ts +17 -0
  251. package/lib/typescript/commonjs/a11y/useLiveRegion.d.ts.map +1 -0
  252. package/lib/typescript/commonjs/adapters/cssStringAdapter.d.ts +119 -0
  253. package/lib/typescript/commonjs/adapters/cssStringAdapter.d.ts.map +1 -0
  254. package/lib/typescript/commonjs/adapters/optionalGradient.d.ts +32 -0
  255. package/lib/typescript/commonjs/adapters/optionalGradient.d.ts.map +1 -0
  256. package/lib/typescript/commonjs/adapters/surfaceStyle.d.ts +75 -0
  257. package/lib/typescript/commonjs/adapters/surfaceStyle.d.ts.map +1 -0
  258. package/lib/typescript/commonjs/components/Alert/Alert.d.ts +14 -0
  259. package/lib/typescript/commonjs/components/Alert/Alert.d.ts.map +1 -0
  260. package/lib/typescript/commonjs/components/Alert/AlertActions.d.ts +13 -0
  261. package/lib/typescript/commonjs/components/Alert/AlertActions.d.ts.map +1 -0
  262. package/lib/typescript/commonjs/components/Alert/AlertClose.d.ts +22 -0
  263. package/lib/typescript/commonjs/components/Alert/AlertClose.d.ts.map +1 -0
  264. package/lib/typescript/commonjs/components/Alert/AlertText.d.ts +19 -0
  265. package/lib/typescript/commonjs/components/Alert/AlertText.d.ts.map +1 -0
  266. package/lib/typescript/commonjs/components/Alert/alert.tokens.d.ts +17 -0
  267. package/lib/typescript/commonjs/components/Alert/alert.tokens.d.ts.map +1 -0
  268. package/lib/typescript/commonjs/components/Alert/alert.types.d.ts +70 -0
  269. package/lib/typescript/commonjs/components/Alert/alert.types.d.ts.map +1 -0
  270. package/lib/typescript/commonjs/components/Alert/alert.utils.d.ts +58 -0
  271. package/lib/typescript/commonjs/components/Alert/alert.utils.d.ts.map +1 -0
  272. package/lib/typescript/commonjs/components/Alert/index.d.ts +7 -0
  273. package/lib/typescript/commonjs/components/Alert/index.d.ts.map +1 -0
  274. package/lib/typescript/commonjs/components/Button/Button.d.ts +22 -0
  275. package/lib/typescript/commonjs/components/Button/Button.d.ts.map +1 -0
  276. package/lib/typescript/commonjs/components/Button/button.types.d.ts +37 -0
  277. package/lib/typescript/commonjs/components/Button/button.types.d.ts.map +1 -0
  278. package/lib/typescript/commonjs/components/Button/button.utils.d.ts +98 -0
  279. package/lib/typescript/commonjs/components/Button/button.utils.d.ts.map +1 -0
  280. package/lib/typescript/commonjs/components/Button/index.d.ts +5 -0
  281. package/lib/typescript/commonjs/components/Button/index.d.ts.map +1 -0
  282. package/lib/typescript/commonjs/components/Skeleton/Skeleton.d.ts +7 -0
  283. package/lib/typescript/commonjs/components/Skeleton/Skeleton.d.ts.map +1 -0
  284. package/lib/typescript/commonjs/components/Skeleton/index.d.ts +3 -0
  285. package/lib/typescript/commonjs/components/Skeleton/index.d.ts.map +1 -0
  286. package/lib/typescript/commonjs/components/Skeleton/skeleton.types.d.ts +25 -0
  287. package/lib/typescript/commonjs/components/Skeleton/skeleton.types.d.ts.map +1 -0
  288. package/lib/typescript/commonjs/components/Skeleton/skeleton.utils.d.ts +21 -0
  289. package/lib/typescript/commonjs/components/Skeleton/skeleton.utils.d.ts.map +1 -0
  290. package/lib/typescript/commonjs/components/Tag/Tag.d.ts +21 -0
  291. package/lib/typescript/commonjs/components/Tag/Tag.d.ts.map +1 -0
  292. package/lib/typescript/commonjs/components/Tag/index.d.ts +4 -0
  293. package/lib/typescript/commonjs/components/Tag/index.d.ts.map +1 -0
  294. package/lib/typescript/commonjs/components/Tag/tag.types.d.ts +56 -0
  295. package/lib/typescript/commonjs/components/Tag/tag.types.d.ts.map +1 -0
  296. package/lib/typescript/commonjs/components/Tag/tag.utils.d.ts +41 -0
  297. package/lib/typescript/commonjs/components/Tag/tag.utils.d.ts.map +1 -0
  298. package/lib/typescript/commonjs/components/TextInput/TextInput.d.ts +33 -0
  299. package/lib/typescript/commonjs/components/TextInput/TextInput.d.ts.map +1 -0
  300. package/lib/typescript/commonjs/components/TextInput/index.d.ts +3 -0
  301. package/lib/typescript/commonjs/components/TextInput/index.d.ts.map +1 -0
  302. package/lib/typescript/commonjs/components/TextInput/textInput.types.d.ts +45 -0
  303. package/lib/typescript/commonjs/components/TextInput/textInput.types.d.ts.map +1 -0
  304. package/lib/typescript/commonjs/components/TextInput/textInput.utils.d.ts +35 -0
  305. package/lib/typescript/commonjs/components/TextInput/textInput.utils.d.ts.map +1 -0
  306. package/lib/typescript/commonjs/components/shared/field/FieldFooter.d.ts +22 -0
  307. package/lib/typescript/commonjs/components/shared/field/FieldFooter.d.ts.map +1 -0
  308. package/lib/typescript/commonjs/components/shared/field/FieldLabels.d.ts +27 -0
  309. package/lib/typescript/commonjs/components/shared/field/FieldLabels.d.ts.map +1 -0
  310. package/lib/typescript/commonjs/components/shared/field/fieldState.d.ts +23 -0
  311. package/lib/typescript/commonjs/components/shared/field/fieldState.d.ts.map +1 -0
  312. package/lib/typescript/commonjs/components/shared/group.d.ts +50 -0
  313. package/lib/typescript/commonjs/components/shared/group.d.ts.map +1 -0
  314. package/lib/typescript/commonjs/index.d.ts +74 -0
  315. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  316. package/lib/typescript/commonjs/motion/motion.d.ts +121 -0
  317. package/lib/typescript/commonjs/motion/motion.d.ts.map +1 -0
  318. package/lib/typescript/commonjs/motion/useReduceMotion.d.ts +14 -0
  319. package/lib/typescript/commonjs/motion/useReduceMotion.d.ts.map +1 -0
  320. package/lib/typescript/commonjs/overlay/portal.d.ts +20 -0
  321. package/lib/typescript/commonjs/overlay/portal.d.ts.map +1 -0
  322. package/lib/typescript/commonjs/overlay/positioning.d.ts +65 -0
  323. package/lib/typescript/commonjs/overlay/positioning.d.ts.map +1 -0
  324. package/lib/typescript/commonjs/overlay/safeAreaInsets.d.ts +19 -0
  325. package/lib/typescript/commonjs/overlay/safeAreaInsets.d.ts.map +1 -0
  326. package/lib/typescript/commonjs/overlay/sheet/BottomSheet.d.ts +56 -0
  327. package/lib/typescript/commonjs/overlay/sheet/BottomSheet.d.ts.map +1 -0
  328. package/lib/typescript/commonjs/overlay/sheet/sheetMath.d.ts +32 -0
  329. package/lib/typescript/commonjs/overlay/sheet/sheetMath.d.ts.map +1 -0
  330. package/lib/typescript/commonjs/overlay/toast/ToastOutlet.d.ts +17 -0
  331. package/lib/typescript/commonjs/overlay/toast/ToastOutlet.d.ts.map +1 -0
  332. package/lib/typescript/commonjs/overlay/toast/toastStore.d.ts +45 -0
  333. package/lib/typescript/commonjs/overlay/toast/toastStore.d.ts.map +1 -0
  334. package/lib/typescript/commonjs/overlay/useAnchoredPosition.d.ts +40 -0
  335. package/lib/typescript/commonjs/overlay/useAnchoredPosition.d.ts.map +1 -0
  336. package/lib/typescript/commonjs/package.json +1 -0
  337. package/lib/typescript/commonjs/primitives/Block.d.ts +37 -0
  338. package/lib/typescript/commonjs/primitives/Block.d.ts.map +1 -0
  339. package/lib/typescript/commonjs/primitives/Pressable.d.ts +135 -0
  340. package/lib/typescript/commonjs/primitives/Pressable.d.ts.map +1 -0
  341. package/lib/typescript/commonjs/primitives/PrimitiveInput.d.ts +42 -0
  342. package/lib/typescript/commonjs/primitives/PrimitiveInput.d.ts.map +1 -0
  343. package/lib/typescript/commonjs/primitives/Separator.d.ts +28 -0
  344. package/lib/typescript/commonjs/primitives/Separator.d.ts.map +1 -0
  345. package/lib/typescript/commonjs/primitives/Slot.d.ts +48 -0
  346. package/lib/typescript/commonjs/primitives/Slot.d.ts.map +1 -0
  347. package/lib/typescript/commonjs/primitives/Text.d.ts +50 -0
  348. package/lib/typescript/commonjs/primitives/Text.d.ts.map +1 -0
  349. package/lib/typescript/commonjs/primitives/pressFeedback.d.ts +39 -0
  350. package/lib/typescript/commonjs/primitives/pressFeedback.d.ts.map +1 -0
  351. package/lib/typescript/commonjs/primitives/textStyle.d.ts +13 -0
  352. package/lib/typescript/commonjs/primitives/textStyle.d.ts.map +1 -0
  353. package/lib/typescript/commonjs/primitives/tintSlot.d.ts +10 -0
  354. package/lib/typescript/commonjs/primitives/tintSlot.d.ts.map +1 -0
  355. package/lib/typescript/commonjs/primitives/touchTarget.d.ts +43 -0
  356. package/lib/typescript/commonjs/primitives/touchTarget.d.ts.map +1 -0
  357. package/lib/typescript/commonjs/theme/BlendNativeProvider.d.ts +69 -0
  358. package/lib/typescript/commonjs/theme/BlendNativeProvider.d.ts.map +1 -0
  359. package/lib/typescript/commonjs/theme/breakpoint.d.ts +27 -0
  360. package/lib/typescript/commonjs/theme/breakpoint.d.ts.map +1 -0
  361. package/lib/typescript/commonjs/theme/fonts.d.ts +34 -0
  362. package/lib/typescript/commonjs/theme/fonts.d.ts.map +1 -0
  363. package/lib/typescript/commonjs/theme/nativeTokenRegistry.d.ts +34 -0
  364. package/lib/typescript/commonjs/theme/nativeTokenRegistry.d.ts.map +1 -0
  365. package/lib/typescript/commonjs/theme/systemTheme.d.ts +25 -0
  366. package/lib/typescript/commonjs/theme/systemTheme.d.ts.map +1 -0
  367. package/lib/typescript/commonjs/theme/useNativeBreakpoint.d.ts +17 -0
  368. package/lib/typescript/commonjs/theme/useNativeBreakpoint.d.ts.map +1 -0
  369. package/lib/typescript/commonjs/theme/useNativeTokens.d.ts +4 -0
  370. package/lib/typescript/commonjs/theme/useNativeTokens.d.ts.map +1 -0
  371. package/lib/typescript/module/a11y/announcement.d.ts +26 -0
  372. package/lib/typescript/module/a11y/announcement.d.ts.map +1 -0
  373. package/lib/typescript/module/a11y/useLiveRegion.d.ts +17 -0
  374. package/lib/typescript/module/a11y/useLiveRegion.d.ts.map +1 -0
  375. package/lib/typescript/module/adapters/cssStringAdapter.d.ts +119 -0
  376. package/lib/typescript/module/adapters/cssStringAdapter.d.ts.map +1 -0
  377. package/lib/typescript/module/adapters/optionalGradient.d.ts +32 -0
  378. package/lib/typescript/module/adapters/optionalGradient.d.ts.map +1 -0
  379. package/lib/typescript/module/adapters/surfaceStyle.d.ts +75 -0
  380. package/lib/typescript/module/adapters/surfaceStyle.d.ts.map +1 -0
  381. package/lib/typescript/module/components/Alert/Alert.d.ts +14 -0
  382. package/lib/typescript/module/components/Alert/Alert.d.ts.map +1 -0
  383. package/lib/typescript/module/components/Alert/AlertActions.d.ts +13 -0
  384. package/lib/typescript/module/components/Alert/AlertActions.d.ts.map +1 -0
  385. package/lib/typescript/module/components/Alert/AlertClose.d.ts +22 -0
  386. package/lib/typescript/module/components/Alert/AlertClose.d.ts.map +1 -0
  387. package/lib/typescript/module/components/Alert/AlertText.d.ts +19 -0
  388. package/lib/typescript/module/components/Alert/AlertText.d.ts.map +1 -0
  389. package/lib/typescript/module/components/Alert/alert.tokens.d.ts +17 -0
  390. package/lib/typescript/module/components/Alert/alert.tokens.d.ts.map +1 -0
  391. package/lib/typescript/module/components/Alert/alert.types.d.ts +70 -0
  392. package/lib/typescript/module/components/Alert/alert.types.d.ts.map +1 -0
  393. package/lib/typescript/module/components/Alert/alert.utils.d.ts +58 -0
  394. package/lib/typescript/module/components/Alert/alert.utils.d.ts.map +1 -0
  395. package/lib/typescript/module/components/Alert/index.d.ts +7 -0
  396. package/lib/typescript/module/components/Alert/index.d.ts.map +1 -0
  397. package/lib/typescript/module/components/Button/Button.d.ts +22 -0
  398. package/lib/typescript/module/components/Button/Button.d.ts.map +1 -0
  399. package/lib/typescript/module/components/Button/button.types.d.ts +37 -0
  400. package/lib/typescript/module/components/Button/button.types.d.ts.map +1 -0
  401. package/lib/typescript/module/components/Button/button.utils.d.ts +98 -0
  402. package/lib/typescript/module/components/Button/button.utils.d.ts.map +1 -0
  403. package/lib/typescript/module/components/Button/index.d.ts +5 -0
  404. package/lib/typescript/module/components/Button/index.d.ts.map +1 -0
  405. package/lib/typescript/module/components/Skeleton/Skeleton.d.ts +7 -0
  406. package/lib/typescript/module/components/Skeleton/Skeleton.d.ts.map +1 -0
  407. package/lib/typescript/module/components/Skeleton/index.d.ts +3 -0
  408. package/lib/typescript/module/components/Skeleton/index.d.ts.map +1 -0
  409. package/lib/typescript/module/components/Skeleton/skeleton.types.d.ts +25 -0
  410. package/lib/typescript/module/components/Skeleton/skeleton.types.d.ts.map +1 -0
  411. package/lib/typescript/module/components/Skeleton/skeleton.utils.d.ts +21 -0
  412. package/lib/typescript/module/components/Skeleton/skeleton.utils.d.ts.map +1 -0
  413. package/lib/typescript/module/components/Tag/Tag.d.ts +21 -0
  414. package/lib/typescript/module/components/Tag/Tag.d.ts.map +1 -0
  415. package/lib/typescript/module/components/Tag/index.d.ts +4 -0
  416. package/lib/typescript/module/components/Tag/index.d.ts.map +1 -0
  417. package/lib/typescript/module/components/Tag/tag.types.d.ts +56 -0
  418. package/lib/typescript/module/components/Tag/tag.types.d.ts.map +1 -0
  419. package/lib/typescript/module/components/Tag/tag.utils.d.ts +41 -0
  420. package/lib/typescript/module/components/Tag/tag.utils.d.ts.map +1 -0
  421. package/lib/typescript/module/components/TextInput/TextInput.d.ts +33 -0
  422. package/lib/typescript/module/components/TextInput/TextInput.d.ts.map +1 -0
  423. package/lib/typescript/module/components/TextInput/index.d.ts +3 -0
  424. package/lib/typescript/module/components/TextInput/index.d.ts.map +1 -0
  425. package/lib/typescript/module/components/TextInput/textInput.types.d.ts +45 -0
  426. package/lib/typescript/module/components/TextInput/textInput.types.d.ts.map +1 -0
  427. package/lib/typescript/module/components/TextInput/textInput.utils.d.ts +35 -0
  428. package/lib/typescript/module/components/TextInput/textInput.utils.d.ts.map +1 -0
  429. package/lib/typescript/module/components/shared/field/FieldFooter.d.ts +22 -0
  430. package/lib/typescript/module/components/shared/field/FieldFooter.d.ts.map +1 -0
  431. package/lib/typescript/module/components/shared/field/FieldLabels.d.ts +27 -0
  432. package/lib/typescript/module/components/shared/field/FieldLabels.d.ts.map +1 -0
  433. package/lib/typescript/module/components/shared/field/fieldState.d.ts +23 -0
  434. package/lib/typescript/module/components/shared/field/fieldState.d.ts.map +1 -0
  435. package/lib/typescript/module/components/shared/group.d.ts +50 -0
  436. package/lib/typescript/module/components/shared/group.d.ts.map +1 -0
  437. package/lib/typescript/module/index.d.ts +74 -0
  438. package/lib/typescript/module/index.d.ts.map +1 -0
  439. package/lib/typescript/module/motion/motion.d.ts +121 -0
  440. package/lib/typescript/module/motion/motion.d.ts.map +1 -0
  441. package/lib/typescript/module/motion/useReduceMotion.d.ts +14 -0
  442. package/lib/typescript/module/motion/useReduceMotion.d.ts.map +1 -0
  443. package/lib/typescript/module/overlay/portal.d.ts +20 -0
  444. package/lib/typescript/module/overlay/portal.d.ts.map +1 -0
  445. package/lib/typescript/module/overlay/positioning.d.ts +65 -0
  446. package/lib/typescript/module/overlay/positioning.d.ts.map +1 -0
  447. package/lib/typescript/module/overlay/safeAreaInsets.d.ts +19 -0
  448. package/lib/typescript/module/overlay/safeAreaInsets.d.ts.map +1 -0
  449. package/lib/typescript/module/overlay/sheet/BottomSheet.d.ts +56 -0
  450. package/lib/typescript/module/overlay/sheet/BottomSheet.d.ts.map +1 -0
  451. package/lib/typescript/module/overlay/sheet/sheetMath.d.ts +32 -0
  452. package/lib/typescript/module/overlay/sheet/sheetMath.d.ts.map +1 -0
  453. package/lib/typescript/module/overlay/toast/ToastOutlet.d.ts +17 -0
  454. package/lib/typescript/module/overlay/toast/ToastOutlet.d.ts.map +1 -0
  455. package/lib/typescript/module/overlay/toast/toastStore.d.ts +45 -0
  456. package/lib/typescript/module/overlay/toast/toastStore.d.ts.map +1 -0
  457. package/lib/typescript/module/overlay/useAnchoredPosition.d.ts +40 -0
  458. package/lib/typescript/module/overlay/useAnchoredPosition.d.ts.map +1 -0
  459. package/lib/typescript/module/package.json +1 -0
  460. package/lib/typescript/module/primitives/Block.d.ts +37 -0
  461. package/lib/typescript/module/primitives/Block.d.ts.map +1 -0
  462. package/lib/typescript/module/primitives/Pressable.d.ts +135 -0
  463. package/lib/typescript/module/primitives/Pressable.d.ts.map +1 -0
  464. package/lib/typescript/module/primitives/PrimitiveInput.d.ts +42 -0
  465. package/lib/typescript/module/primitives/PrimitiveInput.d.ts.map +1 -0
  466. package/lib/typescript/module/primitives/Separator.d.ts +28 -0
  467. package/lib/typescript/module/primitives/Separator.d.ts.map +1 -0
  468. package/lib/typescript/module/primitives/Slot.d.ts +48 -0
  469. package/lib/typescript/module/primitives/Slot.d.ts.map +1 -0
  470. package/lib/typescript/module/primitives/Text.d.ts +50 -0
  471. package/lib/typescript/module/primitives/Text.d.ts.map +1 -0
  472. package/lib/typescript/module/primitives/pressFeedback.d.ts +39 -0
  473. package/lib/typescript/module/primitives/pressFeedback.d.ts.map +1 -0
  474. package/lib/typescript/module/primitives/textStyle.d.ts +13 -0
  475. package/lib/typescript/module/primitives/textStyle.d.ts.map +1 -0
  476. package/lib/typescript/module/primitives/tintSlot.d.ts +10 -0
  477. package/lib/typescript/module/primitives/tintSlot.d.ts.map +1 -0
  478. package/lib/typescript/module/primitives/touchTarget.d.ts +43 -0
  479. package/lib/typescript/module/primitives/touchTarget.d.ts.map +1 -0
  480. package/lib/typescript/module/theme/BlendNativeProvider.d.ts +69 -0
  481. package/lib/typescript/module/theme/BlendNativeProvider.d.ts.map +1 -0
  482. package/lib/typescript/module/theme/breakpoint.d.ts +27 -0
  483. package/lib/typescript/module/theme/breakpoint.d.ts.map +1 -0
  484. package/lib/typescript/module/theme/fonts.d.ts +34 -0
  485. package/lib/typescript/module/theme/fonts.d.ts.map +1 -0
  486. package/lib/typescript/module/theme/nativeTokenRegistry.d.ts +34 -0
  487. package/lib/typescript/module/theme/nativeTokenRegistry.d.ts.map +1 -0
  488. package/lib/typescript/module/theme/systemTheme.d.ts +25 -0
  489. package/lib/typescript/module/theme/systemTheme.d.ts.map +1 -0
  490. package/lib/typescript/module/theme/useNativeBreakpoint.d.ts +17 -0
  491. package/lib/typescript/module/theme/useNativeBreakpoint.d.ts.map +1 -0
  492. package/lib/typescript/module/theme/useNativeTokens.d.ts +4 -0
  493. package/lib/typescript/module/theme/useNativeTokens.d.ts.map +1 -0
  494. package/package.json +137 -0
  495. package/src/a11y/announcement.ts +41 -0
  496. package/src/a11y/useLiveRegion.ts +36 -0
  497. package/src/adapters/cssStringAdapter.ts +403 -0
  498. package/src/adapters/optionalGradient.ts +39 -0
  499. package/src/adapters/surfaceStyle.ts +209 -0
  500. package/src/components/Alert/Alert.tsx +167 -0
  501. package/src/components/Alert/AlertActions.tsx +98 -0
  502. package/src/components/Alert/AlertClose.tsx +53 -0
  503. package/src/components/Alert/AlertText.tsx +58 -0
  504. package/src/components/Alert/alert.tokens.ts +24 -0
  505. package/src/components/Alert/alert.types.ts +81 -0
  506. package/src/components/Alert/alert.utils.ts +94 -0
  507. package/src/components/Alert/index.ts +21 -0
  508. package/src/components/Button/Button.tsx +180 -0
  509. package/src/components/Button/button.types.ts +44 -0
  510. package/src/components/Button/button.utils.ts +213 -0
  511. package/src/components/Button/index.ts +12 -0
  512. package/src/components/Skeleton/Skeleton.tsx +196 -0
  513. package/src/components/Skeleton/index.ts +2 -0
  514. package/src/components/Skeleton/skeleton.types.ts +28 -0
  515. package/src/components/Skeleton/skeleton.utils.ts +56 -0
  516. package/src/components/Tag/Tag.tsx +204 -0
  517. package/src/components/Tag/index.ts +7 -0
  518. package/src/components/Tag/tag.types.ts +63 -0
  519. package/src/components/Tag/tag.utils.ts +82 -0
  520. package/src/components/TextInput/TextInput.tsx +165 -0
  521. package/src/components/TextInput/index.ts +2 -0
  522. package/src/components/TextInput/textInput.types.ts +54 -0
  523. package/src/components/TextInput/textInput.utils.ts +68 -0
  524. package/src/components/shared/field/FieldFooter.tsx +66 -0
  525. package/src/components/shared/field/FieldLabels.tsx +86 -0
  526. package/src/components/shared/field/fieldState.ts +39 -0
  527. package/src/components/shared/group.ts +72 -0
  528. package/src/index.ts +144 -0
  529. package/src/motion/motion.ts +115 -0
  530. package/src/motion/useReduceMotion.ts +36 -0
  531. package/src/overlay/portal.tsx +122 -0
  532. package/src/overlay/positioning.ts +196 -0
  533. package/src/overlay/safeAreaInsets.ts +36 -0
  534. package/src/overlay/sheet/BottomSheet.tsx +276 -0
  535. package/src/overlay/sheet/sheetMath.ts +58 -0
  536. package/src/overlay/toast/ToastOutlet.tsx +127 -0
  537. package/src/overlay/toast/toastStore.ts +96 -0
  538. package/src/overlay/useAnchoredPosition.ts +92 -0
  539. package/src/primitives/Block.tsx +129 -0
  540. package/src/primitives/Pressable.tsx +528 -0
  541. package/src/primitives/PrimitiveInput.tsx +87 -0
  542. package/src/primitives/Separator.tsx +65 -0
  543. package/src/primitives/Slot.tsx +94 -0
  544. package/src/primitives/Text.tsx +98 -0
  545. package/src/primitives/pressFeedback.ts +78 -0
  546. package/src/primitives/textStyle.ts +24 -0
  547. package/src/primitives/tintSlot.ts +44 -0
  548. package/src/primitives/touchTarget.ts +72 -0
  549. package/src/theme/BlendNativeProvider.tsx +147 -0
  550. package/src/theme/breakpoint.ts +38 -0
  551. package/src/theme/fonts.ts +63 -0
  552. package/src/theme/nativeTokenRegistry.ts +57 -0
  553. package/src/theme/systemTheme.ts +34 -0
  554. package/src/theme/useNativeBreakpoint.ts +27 -0
  555. package/src/theme/useNativeTokens.ts +99 -0
@@ -0,0 +1,339 @@
1
+ "use strict";
2
+
3
+ import React, { forwardRef, memo, useCallback, useMemo, useState } from 'react';
4
+ import { Pressable as RNPressable, Platform, View, ActivityIndicator } from 'react-native';
5
+ import { parseBackground, parseBorder, parseBoxShadow } from "../adapters/cssStringAdapter.js";
6
+ import { resolveSurfaceStyle } from "../adapters/surfaceStyle.js";
7
+ import { LinearGradient } from "../adapters/optionalGradient.js";
8
+ import { MIN_TOUCH_TARGET, resolveHitSlop, sameHitSlop } from "./touchTarget.js";
9
+ import { useLiveRegionAnnounce } from "../a11y/useLiveRegion.js";
10
+ import { resolvePressFeedback } from "./pressFeedback.js";
11
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
12
+ export { MIN_TOUCH_TARGET };
13
+
14
+ /**
15
+ * Native `Pressable` — the interactive surface for buttons, tags, and any
16
+ * other pressable token-driven component.
17
+ *
18
+ * Web's `PrimitiveButton` is a styled-components `button` with `_active`,
19
+ * `_hover`, `_focusVisible` and `_disabled` pseudo-state objects. RN has no
20
+ * CSS pseudo-selectors; instead `Pressable` exposes a `style` callback
21
+ * receiving `{ pressed }`. This primitive takes the same token-derived CSS
22
+ * strings, translates them through the shared adapter, and composes them per
23
+ * state.
24
+ *
25
+ * `_hover` is ignored — RN has no hover. `_focusVisible` is ignored — there
26
+ * is no focus ring on touch.
27
+ */
28
+
29
+ /**
30
+ * `expo-linear-gradient` is an **optional** peer (probe shared with
31
+ * Skeleton in `adapters/optionalGradient`). When it is absent the surface
32
+ * falls back to the gradient's first colour, which `resolveSurfaceStyle`
33
+ * already supplies as `backgroundColor` — so a gradient button degrades to
34
+ * a solid one rather than rendering transparent.
35
+ */
36
+
37
+ /**
38
+ * Note this extends `SurfaceStyleProps`, exactly as `BlockProps` does.
39
+ *
40
+ * That shared base is load-bearing, not cosmetic. Components that switch
41
+ * between `Block` and `Pressable` depending on interactivity (Tag, and web's
42
+ * `TagElement = onClick ? PrimitiveButton : Block` pattern) build one surface
43
+ * object and hand it to whichever they render. If the two accepted different
44
+ * prop sets, the extras would fall silently into `...rest` in one branch and
45
+ * vanish — and TypeScript would not catch it, because spreading an object
46
+ * into JSX skips excess-property checking. Keeping one base makes that class
47
+ * of bug unrepresentable.
48
+ */
49
+
50
+ const PressableImpl = /*#__PURE__*/forwardRef(function Pressable({
51
+ children,
52
+ background,
53
+ backgroundColor,
54
+ activeBackground,
55
+ disabledBackground,
56
+ border,
57
+ activeBorder,
58
+ disabledBorder,
59
+ borderRadius,
60
+ boxShadow,
61
+ activeBoxShadow,
62
+ paddingTop,
63
+ paddingRight,
64
+ paddingBottom,
65
+ paddingLeft,
66
+ flexDirection,
67
+ alignItems,
68
+ justifyContent,
69
+ alignSelf,
70
+ gap,
71
+ width,
72
+ minWidth,
73
+ maxWidth,
74
+ height,
75
+ minHeight,
76
+ maxHeight,
77
+ flexShrink,
78
+ flexGrow,
79
+ opacity,
80
+ overflow,
81
+ disabled = false,
82
+ loading = false,
83
+ loaderColor,
84
+ loaderSize = 'small',
85
+ loadingAccessibilityLabel = 'Loading, please wait',
86
+ pressedScale = 0.99,
87
+ rippleColor,
88
+ rippleBorderless = false,
89
+ minTouchTarget = MIN_TOUCH_TARGET,
90
+ onPress,
91
+ style,
92
+ accessibilityRole = 'button',
93
+ accessible = true,
94
+ ...rest
95
+ }, ref) {
96
+ // Parsing is memoised on the inputs themselves. The previous
97
+ // implementation stored these in refs and reassigned `.current`
98
+ // during render — a render-phase side effect that breaks under
99
+ // StrictMode/concurrent rendering, and which also kept a stale parse
100
+ // whenever a prop transitioned from a value back to `undefined`.
101
+ const parsedBg = useMemo(() => parseBackground(background), [background]);
102
+ const parsedActiveBg = useMemo(() => parseBackground(activeBackground), [activeBackground]);
103
+ const parsedDisabledBg = useMemo(() => parseBackground(disabledBackground), [disabledBackground]);
104
+ const activeBorderStyle = useMemo(() => parseBorder(activeBorder), [activeBorder]);
105
+ const disabledBorderStyle = useMemo(() => parseBorder(disabledBorder), [disabledBorder]);
106
+ const activeShadowStyle = useMemo(() => parseBoxShadow(activeBoxShadow) ?? {}, [activeBoxShadow]);
107
+
108
+ // Loading and disabled are deliberately *separate* concerns, matching
109
+ // web: `ButtonV2` passes `disabled={isDisabled}` to `PrimitiveButton`
110
+ // and computes `isDisabled` from the `disabled` prop alone, while
111
+ // `renderButtonContent` swaps in a spinner when loading. So a loading
112
+ // button keeps its normal chrome — including its gradient — and only
113
+ // its content changes.
114
+ //
115
+ // Collapsing the two (the earlier `isInert = disabled || loading`)
116
+ // made every loading button render in the disabled colour.
117
+
118
+ /** Blocks presses. Both states are non-interactive. */
119
+ const isInteractionBlocked = disabled || loading;
120
+ /** Applies disabled chrome. Only the real disabled state does. */
121
+ const usesDisabledChrome = disabled;
122
+ const surface = useMemo(() => resolveSurfaceStyle({
123
+ background,
124
+ backgroundColor,
125
+ border,
126
+ borderRadius,
127
+ boxShadow,
128
+ paddingTop,
129
+ paddingRight,
130
+ paddingBottom,
131
+ paddingLeft,
132
+ flexDirection,
133
+ alignItems,
134
+ justifyContent,
135
+ alignSelf,
136
+ gap,
137
+ width,
138
+ minWidth,
139
+ maxWidth,
140
+ height,
141
+ minHeight,
142
+ maxHeight,
143
+ flexShrink,
144
+ flexGrow,
145
+ opacity,
146
+ overflow
147
+ }, Platform.OS), [background, backgroundColor, border, borderRadius, boxShadow, paddingTop, paddingRight, paddingBottom, paddingLeft, flexDirection, alignItems, justifyContent, alignSelf, gap, width, minWidth, maxWidth, height, minHeight, maxHeight, flexShrink, flexGrow, opacity, overflow]);
148
+ const isGradient = parsedBg?.type === 'gradient';
149
+ const canRenderGradient = isGradient && LinearGradient !== null;
150
+ const activeFlatBgColor = parsedActiveBg?.type === 'flat' ? parsedActiveBg.color : undefined;
151
+ const disabledBgColor = parsedDisabledBg?.type === 'flat' ? parsedDisabledBg.color : parsedDisabledBg?.type === 'gradient' ? parsedDisabledBg.colors[0] : undefined;
152
+
153
+ // RN's equivalent of web's `aria-live="polite"` announcement. On
154
+ // Android `accessibilityState.busy` already conveys this, so the hook
155
+ // only speaks on iOS — see `a11y/useLiveRegion`.
156
+ useLiveRegionAnnounce(loadingAccessibilityLabel, loading);
157
+ const handlePress = useCallback(event => {
158
+ if (disabled || loading) return;
159
+ onPress?.(event);
160
+ }, [disabled, loading, onPress]);
161
+ const accessibilityState = useMemo(() => ({
162
+ disabled: isInteractionBlocked,
163
+ busy: loading
164
+ }), [isInteractionBlocked, loading]);
165
+
166
+ // Ripple on Android, scale elsewhere — see `./pressFeedback`.
167
+ const {
168
+ androidRipple,
169
+ pressedTransform
170
+ } = useMemo(() => resolvePressFeedback(Platform.OS, {
171
+ rippleColor,
172
+ activeBackgroundColor: activeFlatBgColor,
173
+ rippleBorderless,
174
+ pressedScale
175
+ }), [rippleColor, activeFlatBgColor, rippleBorderless, pressedScale]);
176
+ const disabledStyle = useMemo(() => usesDisabledChrome ? {
177
+ ...(disabledBgColor ? {
178
+ backgroundColor: disabledBgColor
179
+ } : {}),
180
+ ...disabledBorderStyle
181
+ } : undefined, [usesDisabledChrome, disabledBgColor, disabledBorderStyle]);
182
+ const pressedStyle = useMemo(() => ({
183
+ ...(activeFlatBgColor ? {
184
+ backgroundColor: activeFlatBgColor
185
+ } : {}),
186
+ ...activeBorderStyle,
187
+ ...activeShadowStyle,
188
+ ...pressedTransform
189
+ }), [activeFlatBgColor, activeBorderStyle, activeShadowStyle, pressedTransform]);
190
+
191
+ // Widen the tap target once laid out, if the control is smaller than
192
+ // the minimum. `hitSlop` extends only the touch region, so layout and
193
+ // appearance are untouched.
194
+ //
195
+ // The resolved slop is stored rather than the raw dimensions, and it
196
+ // starts as `undefined` — the same value a compliant control resolves
197
+ // to. A control already at or above the minimum therefore never
198
+ // changes state and never re-renders; only ones that actually need
199
+ // slop pay for a second pass. Storing `{ width, height }` instead made
200
+ // every Pressable on the screen re-render on mount.
201
+ const [hitSlop, setHitSlop] = useState(undefined);
202
+ const handleLayout = useCallback(event => {
203
+ const {
204
+ width,
205
+ height
206
+ } = event.nativeEvent.layout;
207
+ const next = resolveHitSlop(width, height, minTouchTarget);
208
+ setHitSlop(previous => sameHitSlop(previous, next) ? previous : next);
209
+ }, [minTouchTarget]);
210
+ const content = loading ? /*#__PURE__*/_jsx(ActivityIndicator, {
211
+ size: loaderSize,
212
+ color: loaderColor
213
+ }) : children;
214
+
215
+ // ---- Gradient path ----------------------------------------------
216
+ //
217
+ // <Pressable border + radius + overflow:hidden>
218
+ // <LinearGradient absoluteFill (bled into the border zone) />
219
+ // <View padding + layout> {content} </View>
220
+ // </Pressable>
221
+ //
222
+ // The gradient absolute-fills the whole border box — including under
223
+ // the border — so no antialiasing wedge forms at the corners, and the
224
+ // Pressable's own radius + overflow:hidden clips the bleed.
225
+ if (canRenderGradient && !usesDisabledChrome && parsedBg?.type === 'gradient') {
226
+ const gradient = parsedBg;
227
+ const Gradient = LinearGradient;
228
+ const borderWidth = surface.borderWidth ?? 1;
229
+ const bleed = -borderWidth;
230
+
231
+ // Negative inset bleeds the gradient into the border zone so no
232
+ // antialiasing gap forms between border and gradient edge; the
233
+ // frame's radius + overflow:hidden clips the overhang.
234
+ const bleedStyle = {
235
+ position: 'absolute',
236
+ top: bleed,
237
+ right: bleed,
238
+ bottom: bleed,
239
+ left: bleed
240
+ };
241
+
242
+ // The gradient fills the border box, so padding and inner layout
243
+ // move to a child view; the Pressable keeps only the frame
244
+ // (border, radius, sizing) plus the clip.
245
+ const {
246
+ paddingTop,
247
+ paddingRight,
248
+ paddingBottom,
249
+ paddingLeft,
250
+ flexDirection: frameFlexDirection,
251
+ alignItems: frameAlignItems,
252
+ justifyContent: frameJustifyContent,
253
+ gap: frameGap,
254
+ ...frame
255
+ } = surface;
256
+ const contentLayout = {
257
+ flex: 1,
258
+ paddingTop,
259
+ paddingRight,
260
+ paddingBottom,
261
+ paddingLeft,
262
+ flexDirection: frameFlexDirection,
263
+ alignItems: frameAlignItems,
264
+ justifyContent: frameJustifyContent,
265
+ gap: frameGap
266
+ };
267
+ const frameStyle = {
268
+ ...frame,
269
+ flexDirection: frameFlexDirection,
270
+ overflow: 'hidden'
271
+ };
272
+ return /*#__PURE__*/_jsx(RNPressable, {
273
+ ref: ref,
274
+ onPress: handlePress,
275
+ disabled: isInteractionBlocked,
276
+ accessibilityRole: accessibilityRole,
277
+ accessible: accessible,
278
+ accessibilityState: accessibilityState,
279
+ onLayout: minTouchTarget ? handleLayout : undefined,
280
+ hitSlop: hitSlop,
281
+ android_ripple: androidRipple,
282
+ style: ({
283
+ pressed
284
+ }) => [frameStyle, pressed ? pressedTransform : undefined, pressed ? activeBorderStyle : undefined, pressed ? activeShadowStyle : undefined, style],
285
+ ...rest,
286
+ children: ({
287
+ pressed
288
+ }) => /*#__PURE__*/_jsxs(_Fragment, {
289
+ children: [/*#__PURE__*/_jsx(Gradient, {
290
+ colors: gradient.colors,
291
+ locations: gradient.locations,
292
+ start: gradient.start,
293
+ end: gradient.end,
294
+ style: bleedStyle
295
+ }), pressed && parsedActiveBg?.type === 'gradient' && /*#__PURE__*/_jsx(Gradient, {
296
+ colors: parsedActiveBg.colors,
297
+ locations: parsedActiveBg.locations,
298
+ start: parsedActiveBg.start,
299
+ end: parsedActiveBg.end,
300
+ style: bleedStyle
301
+ }), pressed && activeFlatBgColor && /*#__PURE__*/_jsx(View, {
302
+ style: [bleedStyle, {
303
+ backgroundColor: activeFlatBgColor
304
+ }]
305
+ }), /*#__PURE__*/_jsx(View, {
306
+ style: contentLayout,
307
+ children: content
308
+ })]
309
+ })
310
+ });
311
+ }
312
+
313
+ // ---- Flat path ---------------------------------------------------
314
+ // Also the fallback when a gradient is requested but
315
+ // `expo-linear-gradient` is not installed: `resolveSurfaceStyle` has
316
+ // already set `backgroundColor` to the gradient's first stop.
317
+ return /*#__PURE__*/_jsx(RNPressable, {
318
+ ref: ref,
319
+ onPress: handlePress,
320
+ disabled: isInteractionBlocked,
321
+ accessibilityRole: accessibilityRole,
322
+ accessible: accessible,
323
+ accessibilityState: accessibilityState,
324
+ onLayout: minTouchTarget ? handleLayout : undefined,
325
+ hitSlop: hitSlop,
326
+ android_ripple: androidRipple,
327
+ style: ({
328
+ pressed
329
+ }) => [surface, disabledStyle, !isInteractionBlocked && pressed ? pressedStyle : undefined, style],
330
+ ...rest,
331
+ children: content
332
+ });
333
+ });
334
+
335
+ /** Memoised — see the note on `Block`. */
336
+ export const Pressable = /*#__PURE__*/memo(PressableImpl);
337
+ Pressable.displayName = 'Pressable';
338
+ export default Pressable;
339
+ //# sourceMappingURL=Pressable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","forwardRef","memo","useCallback","useMemo","useState","Pressable","RNPressable","Platform","View","ActivityIndicator","parseBackground","parseBorder","parseBoxShadow","resolveSurfaceStyle","LinearGradient","MIN_TOUCH_TARGET","resolveHitSlop","sameHitSlop","useLiveRegionAnnounce","resolvePressFeedback","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PressableImpl","children","background","backgroundColor","activeBackground","disabledBackground","border","activeBorder","disabledBorder","borderRadius","boxShadow","activeBoxShadow","paddingTop","paddingRight","paddingBottom","paddingLeft","flexDirection","alignItems","justifyContent","alignSelf","gap","width","minWidth","maxWidth","height","minHeight","maxHeight","flexShrink","flexGrow","opacity","overflow","disabled","loading","loaderColor","loaderSize","loadingAccessibilityLabel","pressedScale","rippleColor","rippleBorderless","minTouchTarget","onPress","style","accessibilityRole","accessible","rest","ref","parsedBg","parsedActiveBg","parsedDisabledBg","activeBorderStyle","disabledBorderStyle","activeShadowStyle","isInteractionBlocked","usesDisabledChrome","surface","OS","isGradient","type","canRenderGradient","activeFlatBgColor","color","undefined","disabledBgColor","colors","handlePress","event","accessibilityState","busy","androidRipple","pressedTransform","activeBackgroundColor","disabledStyle","pressedStyle","hitSlop","setHitSlop","handleLayout","nativeEvent","layout","next","previous","content","size","gradient","Gradient","borderWidth","bleed","bleedStyle","position","top","right","bottom","left","frameFlexDirection","frameAlignItems","frameJustifyContent","frameGap","frame","contentLayout","flex","frameStyle","onLayout","android_ripple","pressed","locations","start","end","displayName"],"sourceRoot":"../../../src","sources":["primitives/Pressable.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ import { forwardRef, memo, useContext } from 'react';
4
+ import { TextInput as RNTextInput, StyleSheet } from 'react-native';
5
+ import { parseDimension } from "../adapters/cssStringAdapter.js";
6
+ import { resolveFontWeight } from "./textStyle.js";
7
+ import { BlendNativeThemeContext } from "../theme/BlendNativeProvider.js";
8
+
9
+ /**
10
+ * Native `PrimitiveInput` — a bare RN `TextInput` driven by token-shaped
11
+ * text props, the input counterpart of `Text`.
12
+ *
13
+ * Deliberately *only* the text field: web's `PrimitiveInput` styles the
14
+ * `<input>` element itself with border and padding, but RN inputs carry
15
+ * leading/trailing slots, so the bordered container is a `Block` row that
16
+ * the field component owns and this primitive sits inside with `flex: 1`.
17
+ *
18
+ * Font family comes from the provider's role map (`body`), matching `Text`,
19
+ * and OS font scaling stays on per the package policy.
20
+ */
21
+ import { jsx as _jsx } from "react/jsx-runtime";
22
+ const PrimitiveInputImpl = /*#__PURE__*/forwardRef(function PrimitiveInput({
23
+ fontSize,
24
+ fontWeight,
25
+ color,
26
+ lineHeight,
27
+ placeholderColor,
28
+ style,
29
+ ...rest
30
+ }, ref) {
31
+ const {
32
+ fontFamily
33
+ } = useContext(BlendNativeThemeContext);
34
+ const resolved = {
35
+ fontSize: parseDimension(fontSize),
36
+ fontWeight: resolveFontWeight(fontWeight),
37
+ color,
38
+ lineHeight: parseDimension(lineHeight),
39
+ fontFamily: fontFamily.body ?? undefined
40
+ };
41
+ return /*#__PURE__*/_jsx(RNTextInput, {
42
+ ref: ref,
43
+ style: StyleSheet.flatten([baseStyle.input, resolved, style]),
44
+ placeholderTextColor: placeholderColor,
45
+ ...rest
46
+ });
47
+ });
48
+
49
+ /** Memoised — see the note on `Block`. */
50
+ export const PrimitiveInput = /*#__PURE__*/memo(PrimitiveInputImpl);
51
+ PrimitiveInput.displayName = 'PrimitiveInput';
52
+ const baseStyle = StyleSheet.create({
53
+ input: {
54
+ // The field row owns padding; RN inputs default to platform padding
55
+ // that would double up with the container's token padding.
56
+ flex: 1,
57
+ paddingVertical: 0,
58
+ paddingHorizontal: 0
59
+ }
60
+ });
61
+ export default PrimitiveInput;
62
+ //# sourceMappingURL=PrimitiveInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","memo","useContext","TextInput","RNTextInput","StyleSheet","parseDimension","resolveFontWeight","BlendNativeThemeContext","jsx","_jsx","PrimitiveInputImpl","PrimitiveInput","fontSize","fontWeight","color","lineHeight","placeholderColor","style","rest","ref","fontFamily","resolved","body","undefined","flatten","baseStyle","input","placeholderTextColor","displayName","create","flex","paddingVertical","paddingHorizontal"],"sourceRoot":"../../../src","sources":["primitives/PrimitiveInput.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,EAAEC,UAAU,QAAQ,OAAO;AACpD,SACIC,SAAS,IAAIC,WAAW,EACxBC,UAAU,QAGP,cAAc;AACrB,SAASC,cAAc,QAAQ,iCAA8B;AAC7D,SAASC,iBAAiB,QAAQ,gBAAa;AAC/C,SAASC,uBAAuB,QAAQ,iCAA8B;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA,SAAAC,GAAA,IAAAC,IAAA;AA2BA,MAAMC,kBAAkB,gBAAGX,UAAU,CACjC,SAASY,cAAcA,CACnB;EACIC,QAAQ;EACRC,UAAU;EACVC,KAAK;EACLC,UAAU;EACVC,gBAAgB;EAChBC,KAAK;EACL,GAAGC;AACP,CAAC,EACDC,GAAG,EACL;EACE,MAAM;IAAEC;EAAW,CAAC,GAAGnB,UAAU,CAACM,uBAAuB,CAAC;EAE1D,MAAMc,QAAmB,GAAG;IACxBT,QAAQ,EAAEP,cAAc,CAACO,QAAQ,CAAC;IAClCC,UAAU,EAAEP,iBAAiB,CAACO,UAAU,CAAC;IACzCC,KAAK;IACLC,UAAU,EAAEV,cAAc,CAACU,UAAU,CAAC;IACtCK,UAAU,EAAEA,UAAU,CAACE,IAAI,IAAIC;EACnC,CAAC;EAED,oBACId,IAAA,CAACN,WAAW;IACRgB,GAAG,EAAEA,GAAI;IACTF,KAAK,EAAEb,UAAU,CAACoB,OAAO,CAAC,CAACC,SAAS,CAACC,KAAK,EAAEL,QAAQ,EAAEJ,KAAK,CAAC,CAAE;IAC9DU,oBAAoB,EAAEX,gBAAiB;IAAA,GACnCE;EAAI,CACX,CAAC;AAEV,CACJ,CAAC;;AAED;AACA,OAAO,MAAMP,cAAc,gBAAGX,IAAI,CAACU,kBAAkB,CAAC;AACtDC,cAAc,CAACiB,WAAW,GAAG,gBAAgB;AAE7C,MAAMH,SAAS,GAAGrB,UAAU,CAACyB,MAAM,CAAC;EAChCH,KAAK,EAAE;IACH;IACA;IACAI,IAAI,EAAE,CAAC;IACPC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACvB;AACJ,CAAC,CAAC;AAEF,eAAerB,cAAc","ignoreList":[]}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ import { StyleSheet, View } from 'react-native';
4
+ import { FOUNDATION_THEME } from '@juspay/blend-design-system/node';
5
+ import { parseDimension } from "../adapters/cssStringAdapter.js";
6
+
7
+ /**
8
+ * Decorative divider.
9
+ *
10
+ * Native counterpart of web's `components/common/Seperator.tsx` — a fixed-size
11
+ * block of colour used to separate adjacent content. Alert renders one between
12
+ * its actions and its close button when the actions sit inline.
13
+ *
14
+ * Always hidden from assistive tech: it carries no information that the
15
+ * surrounding content does not already convey.
16
+ */
17
+ import { jsx as _jsx } from "react/jsx-runtime";
18
+ const DEFAULT_LENGTH = FOUNDATION_THEME.unit[16];
19
+ const DEFAULT_THICKNESS = 1;
20
+ const DEFAULT_COLOR = String(FOUNDATION_THEME.colors.gray[300]);
21
+ export function Separator({
22
+ orientation = 'vertical',
23
+ length = DEFAULT_LENGTH,
24
+ thickness = DEFAULT_THICKNESS,
25
+ color = DEFAULT_COLOR,
26
+ style,
27
+ testID
28
+ }) {
29
+ const resolvedLength = parseDimension(length);
30
+ const resolvedThickness = parseDimension(thickness);
31
+ const sizing = orientation === 'vertical' ? {
32
+ width: resolvedThickness,
33
+ height: resolvedLength
34
+ } : {
35
+ width: resolvedLength,
36
+ height: resolvedThickness
37
+ };
38
+ return /*#__PURE__*/_jsx(View, {
39
+ testID: testID,
40
+ accessible: false,
41
+ accessibilityElementsHidden: true,
42
+ importantForAccessibility: "no-hide-descendants",
43
+ style: StyleSheet.flatten([sizing, {
44
+ backgroundColor: color
45
+ }, style])
46
+ });
47
+ }
48
+ Separator.displayName = 'Separator';
49
+ export default Separator;
50
+ //# sourceMappingURL=Separator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StyleSheet","View","FOUNDATION_THEME","parseDimension","jsx","_jsx","DEFAULT_LENGTH","unit","DEFAULT_THICKNESS","DEFAULT_COLOR","String","colors","gray","Separator","orientation","length","thickness","color","style","testID","resolvedLength","resolvedThickness","sizing","width","height","accessible","accessibilityElementsHidden","importantForAccessibility","flatten","backgroundColor","displayName"],"sourceRoot":"../../../src","sources":["primitives/Separator.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,QAAwB,cAAc;AAC/D,SAASC,gBAAgB,QAAQ,kCAAkC;AACnE,SAASC,cAAc,QAAQ,iCAA8B;;AAE7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA,SAAAC,GAAA,IAAAC,IAAA;AAuBA,MAAMC,cAAc,GAAGJ,gBAAgB,CAACK,IAAI,CAAC,EAAE,CAAC;AAChD,MAAMC,iBAAiB,GAAG,CAAC;AAC3B,MAAMC,aAAa,GAAGC,MAAM,CAACR,gBAAgB,CAACS,MAAM,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/D,OAAO,SAASC,SAASA,CAAC;EACtBC,WAAW,GAAG,UAAU;EACxBC,MAAM,GAAGT,cAAc;EACvBU,SAAS,GAAGR,iBAAiB;EAC7BS,KAAK,GAAGR,aAAa;EACrBS,KAAK;EACLC;AACY,CAAC,EAAE;EACf,MAAMC,cAAc,GAAGjB,cAAc,CAACY,MAAyB,CAAC;EAChE,MAAMM,iBAAiB,GAAGlB,cAAc,CAACa,SAAS,CAAC;EAEnD,MAAMM,MAAiB,GACnBR,WAAW,KAAK,UAAU,GACpB;IAAES,KAAK,EAAEF,iBAAiB;IAAEG,MAAM,EAAEJ;EAAe,CAAC,GACpD;IAAEG,KAAK,EAAEH,cAAc;IAAEI,MAAM,EAAEH;EAAkB,CAAC;EAE9D,oBACIhB,IAAA,CAACJ,IAAI;IACDkB,MAAM,EAAEA,MAAO;IACfM,UAAU,EAAE,KAAM;IAClBC,2BAA2B;IAC3BC,yBAAyB,EAAC,qBAAqB;IAC/CT,KAAK,EAAElB,UAAU,CAAC4B,OAAO,CAAC,CACtBN,MAAM,EACN;MAAEO,eAAe,EAAEZ;IAAM,CAAC,EAC1BC,KAAK,CACR;EAAE,CACN,CAAC;AAEV;AAEAL,SAAS,CAACiB,WAAW,GAAG,WAAW;AAEnC,eAAejB,SAAS","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ import React, { memo } from 'react';
4
+ import { View, StyleSheet } from 'react-native';
5
+ import { parseSize } from "../adapters/cssStringAdapter.js";
6
+ import { tintSlot } from "./tintSlot.js";
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ export { tintSlot };
9
+
10
+ /**
11
+ * Leading / trailing icon slot.
12
+ *
13
+ * Shared by `Button` and `Tag`, both of which need identical behaviour and
14
+ * both of which previously got it wrong in the same three ways:
15
+ *
16
+ * 1. **Tinting.** On web, components pass `color` to `Block`, which maps to
17
+ * CSS `color`, and SVG icons pick it up through `currentColor`. The native
18
+ * `Block` mapped `color` to `backgroundColor`, so the same call painted a
19
+ * solid rectangle *behind* the icon and never tinted the icon at all. RN
20
+ * has no `currentColor`, so the tint has to be handed to the element
21
+ * explicitly — that is what this component does.
22
+ * 2. **Per-slot `maxHeight`.** `leftSlot.maxHeight` / `rightSlot.maxHeight`
23
+ * are part of the web prop contract and were ignored.
24
+ * 3. **Screen readers.** Web marks slots `aria-hidden` when the component
25
+ * also renders text, so the icon is not announced separately from the
26
+ * label. Native rendered them as visible accessibility nodes.
27
+ */
28
+
29
+ function SlotImpl({
30
+ children,
31
+ color,
32
+ maxHeight,
33
+ hidden = false,
34
+ style,
35
+ testID
36
+ }) {
37
+ if (!children) return null;
38
+ const resolved = {
39
+ ...baseStyle.slot
40
+ };
41
+ const size = parseSize(maxHeight);
42
+ if (size !== undefined) resolved.maxHeight = size;
43
+ return /*#__PURE__*/_jsx(View, {
44
+ style: StyleSheet.flatten([resolved, style]),
45
+ testID: testID
46
+ // Matches web's `aria-hidden` on slots that accompany text: the
47
+ // icon should not be announced as a separate element, and the
48
+ // parent already carries the accessible name.
49
+ ,
50
+ accessible: hidden ? false : undefined,
51
+ importantForAccessibility: hidden ? 'no-hide-descendants' : undefined,
52
+ accessibilityElementsHidden: hidden || undefined,
53
+ children: tintSlot(children, color)
54
+ });
55
+ }
56
+
57
+ /** Memoised — see the note on `Block`. */
58
+ export const Slot = /*#__PURE__*/memo(SlotImpl);
59
+ Slot.displayName = 'Slot';
60
+ const baseStyle = StyleSheet.create({
61
+ slot: {
62
+ flexDirection: 'row',
63
+ alignItems: 'center',
64
+ justifyContent: 'center',
65
+ flexShrink: 0
66
+ }
67
+ });
68
+ export default Slot;
69
+ //# sourceMappingURL=Slot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","memo","View","StyleSheet","parseSize","tintSlot","jsx","_jsx","SlotImpl","children","color","maxHeight","hidden","style","testID","resolved","baseStyle","slot","size","undefined","flatten","accessible","importantForAccessibility","accessibilityElementsHidden","Slot","displayName","create","flexDirection","alignItems","justifyContent","flexShrink"],"sourceRoot":"../../../src","sources":["primitives/Slot.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,IAAI,QAAQ,OAAO;AACnC,SAASC,IAAI,EAAEC,UAAU,QAAwB,cAAc;AAC/D,SAASC,SAAS,QAAQ,iCAA8B;AACxD,SAASC,QAAQ,QAAQ,eAAY;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAErC,SAASF,QAAQ;;AAEjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAwBA,SAASG,QAAQA,CAAC;EACdC,QAAQ;EACRC,KAAK;EACLC,SAAS;EACTC,MAAM,GAAG,KAAK;EACdC,KAAK;EACLC;AACO,CAAC,EAAE;EACV,IAAI,CAACL,QAAQ,EAAE,OAAO,IAAI;EAE1B,MAAMM,QAAmB,GAAG;IAAE,GAAGC,SAAS,CAACC;EAAK,CAAC;EACjD,MAAMC,IAAI,GAAGd,SAAS,CAACO,SAAS,CAAC;EACjC,IAAIO,IAAI,KAAKC,SAAS,EAAEJ,QAAQ,CAACJ,SAAS,GAAGO,IAAI;EAEjD,oBACIX,IAAA,CAACL,IAAI;IACDW,KAAK,EAAEV,UAAU,CAACiB,OAAO,CAAC,CAACL,QAAQ,EAAEF,KAAK,CAAC,CAAE;IAC7CC,MAAM,EAAEA;IACR;IACA;IACA;IAAA;IACAO,UAAU,EAAET,MAAM,GAAG,KAAK,GAAGO,SAAU;IACvCG,yBAAyB,EACrBV,MAAM,GAAG,qBAAqB,GAAGO,SACpC;IACDI,2BAA2B,EAAEX,MAAM,IAAIO,SAAU;IAAAV,QAAA,EAEhDJ,QAAQ,CAACI,QAAQ,EAAEC,KAAK;EAAC,CACxB,CAAC;AAEf;;AAEA;AACA,OAAO,MAAMc,IAAI,gBAAGvB,IAAI,CAACO,QAAQ,CAAC;AAClCgB,IAAI,CAACC,WAAW,GAAG,MAAM;AAEzB,MAAMT,SAAS,GAAGb,UAAU,CAACuB,MAAM,CAAC;EAChCT,IAAI,EAAE;IACFU,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EAChB;AACJ,CAAC,CAAC;AAEF,eAAeN,IAAI","ignoreList":[]}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ import React, { memo, useContext } from 'react';
4
+ import { Text as RNText, StyleSheet } from 'react-native';
5
+ import { parseDimension } from "../adapters/cssStringAdapter.js";
6
+ import { resolveFontWeight } from "./textStyle.js";
7
+ import { BlendNativeThemeContext } from "../theme/BlendNativeProvider.js";
8
+
9
+ /**
10
+ * Native `Text` — renders a RN `Text` from token-driven style props.
11
+ *
12
+ * Mirrors the web `Text` component's API (`fontSize`, `fontWeight`, `color`,
13
+ * `lineHeight`, `textAlign`) but accepts CSS-string values directly from
14
+ * Blend tokens and translates them to `TextStyle` numbers.
15
+ *
16
+ * **Font family** comes from the provider's resolved role map (web has CSS
17
+ * inheritance; RN does not, so the provider is the inheritance mechanism).
18
+ * Defaults to the `body` role; `fontRole` picks another role and an explicit
19
+ * `fontFamily` wins outright.
20
+ *
21
+ * **Font scaling** is deliberately left ON (RN's default). The package policy
22
+ * is to respect OS Dynamic Type and let controls grow — components size with
23
+ * `minHeight`, never a fixed `height`, so scaled text expands the control
24
+ * instead of clipping. Consumers needing a cap can pass RN's own
25
+ * `maxFontSizeMultiplier` through `...rest`.
26
+ */
27
+ import { jsx as _jsx } from "react/jsx-runtime";
28
+ function TextImpl({
29
+ children,
30
+ fontSize,
31
+ fontWeight,
32
+ color,
33
+ lineHeight,
34
+ textAlign,
35
+ fontFamily,
36
+ fontRole = 'body',
37
+ style,
38
+ ...rest
39
+ }) {
40
+ const {
41
+ fontFamily: familyMap
42
+ } = useContext(BlendNativeThemeContext);
43
+ // `null` in the map means "leave the platform font" — emit nothing.
44
+ const resolvedFamily = fontFamily ?? familyMap[fontRole] ?? undefined;
45
+ const resolved = {
46
+ fontSize: parseDimension(fontSize),
47
+ fontWeight: resolveFontWeight(fontWeight),
48
+ color,
49
+ lineHeight: parseDimension(lineHeight),
50
+ textAlign,
51
+ fontFamily: resolvedFamily
52
+ };
53
+ const flat = StyleSheet.flatten([baseStyle.text, resolved, style]);
54
+ return /*#__PURE__*/_jsx(RNText, {
55
+ style: flat,
56
+ ...rest,
57
+ children: children
58
+ });
59
+ }
60
+
61
+ /** Memoised — see the note on `Block`. */
62
+ export const Text = /*#__PURE__*/memo(TextImpl);
63
+ Text.displayName = 'Text';
64
+ const baseStyle = StyleSheet.create({
65
+ text: {}
66
+ });
67
+ export default Text;
68
+ //# sourceMappingURL=Text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","memo","useContext","Text","RNText","StyleSheet","parseDimension","resolveFontWeight","BlendNativeThemeContext","jsx","_jsx","TextImpl","children","fontSize","fontWeight","color","lineHeight","textAlign","fontFamily","fontRole","style","rest","familyMap","resolvedFamily","undefined","resolved","flat","flatten","baseStyle","text","displayName","create"],"sourceRoot":"../../../src","sources":["primitives/Text.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,IAAI,EAAEC,UAAU,QAAQ,OAAO;AAC/C,SACIC,IAAI,IAAIC,MAAM,EACdC,UAAU,QAGP,cAAc;AACrB,SAASC,cAAc,QAAQ,iCAA8B;AAC7D,SAASC,iBAAiB,QAAQ,gBAAa;AAC/C,SAASC,uBAAuB,QAAQ,iCAA8B;;AAGtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjBA,SAAAC,GAAA,IAAAC,IAAA;AA4CA,SAASC,QAAQA,CAAC;EACdC,QAAQ;EACRC,QAAQ;EACRC,UAAU;EACVC,KAAK;EACLC,UAAU;EACVC,SAAS;EACTC,UAAU;EACVC,QAAQ,GAAG,MAAM;EACjBC,KAAK;EACL,GAAGC;AACS,CAAC,EAAE;EACf,MAAM;IAAEH,UAAU,EAAEI;EAAU,CAAC,GAAGpB,UAAU,CAACM,uBAAuB,CAAC;EACrE;EACA,MAAMe,cAAc,GAAGL,UAAU,IAAII,SAAS,CAACH,QAAQ,CAAC,IAAIK,SAAS;EAErE,MAAMC,QAAmB,GAAG;IACxBZ,QAAQ,EAAEP,cAAc,CAACO,QAAQ,CAAC;IAClCC,UAAU,EAAEP,iBAAiB,CAACO,UAAU,CAAC;IACzCC,KAAK;IACLC,UAAU,EAAEV,cAAc,CAACU,UAAU,CAAC;IACtCC,SAAS;IACTC,UAAU,EAAEK;EAChB,CAAC;EAED,MAAMG,IAAI,GAAGrB,UAAU,CAACsB,OAAO,CAAC,CAACC,SAAS,CAACC,IAAI,EAAEJ,QAAQ,EAAEL,KAAK,CAAC,CAAC;EAClE,oBACIV,IAAA,CAACN,MAAM;IAACgB,KAAK,EAAEM,IAAK;IAAA,GAAKL,IAAI;IAAAT,QAAA,EACxBA;EAAQ,CACL,CAAC;AAEjB;;AAEA;AACA,OAAO,MAAMT,IAAI,gBAAGF,IAAI,CAACU,QAAQ,CAAC;AAClCR,IAAI,CAAC2B,WAAW,GAAG,MAAM;AAEzB,MAAMF,SAAS,GAAGvB,UAAU,CAAC0B,MAAM,CAAC;EAChCF,IAAI,EAAE,CAAC;AACX,CAAC,CAAC;AAEF,eAAe1B,IAAI","ignoreList":[]}