@cdx-ui/primitives 0.1.6 → 0.2.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 (344) hide show
  1. package/lib/commonjs/color/Color.js +69 -0
  2. package/lib/commonjs/color/Color.js.map +1 -0
  3. package/lib/commonjs/color/index.js +13 -0
  4. package/lib/commonjs/color/index.js.map +1 -0
  5. package/lib/commonjs/color/types.js +2 -0
  6. package/lib/commonjs/color/types.js.map +1 -0
  7. package/lib/commonjs/color-area/ColorAreaAccessibility.js +100 -0
  8. package/lib/commonjs/color-area/ColorAreaAccessibility.js.map +1 -0
  9. package/lib/commonjs/color-area/ColorAreaAccessibility.web.js +58 -0
  10. package/lib/commonjs/color-area/ColorAreaAccessibility.web.js.map +1 -0
  11. package/lib/commonjs/color-area/ColorAreaRoot.js +240 -0
  12. package/lib/commonjs/color-area/ColorAreaRoot.js.map +1 -0
  13. package/lib/commonjs/color-area/ColorAreaThumb.js +71 -0
  14. package/lib/commonjs/color-area/ColorAreaThumb.js.map +1 -0
  15. package/lib/commonjs/color-area/context.js +11 -0
  16. package/lib/commonjs/color-area/context.js.map +1 -0
  17. package/lib/commonjs/color-area/index.js +27 -0
  18. package/lib/commonjs/color-area/index.js.map +1 -0
  19. package/lib/commonjs/color-area/types.js +6 -0
  20. package/lib/commonjs/color-area/types.js.map +1 -0
  21. package/lib/commonjs/color-area/utils.js +51 -0
  22. package/lib/commonjs/color-area/utils.js.map +1 -0
  23. package/lib/commonjs/color-field/ColorFieldInput.js +67 -0
  24. package/lib/commonjs/color-field/ColorFieldInput.js.map +1 -0
  25. package/lib/commonjs/color-field/ColorFieldRoot.js +104 -0
  26. package/lib/commonjs/color-field/ColorFieldRoot.js.map +1 -0
  27. package/lib/commonjs/color-field/context.js +11 -0
  28. package/lib/commonjs/color-field/context.js.map +1 -0
  29. package/lib/commonjs/color-field/index.js +27 -0
  30. package/lib/commonjs/color-field/index.js.map +1 -0
  31. package/lib/commonjs/color-field/types.js +6 -0
  32. package/lib/commonjs/color-field/types.js.map +1 -0
  33. package/lib/commonjs/color-field/utils.js +60 -0
  34. package/lib/commonjs/color-field/utils.js.map +1 -0
  35. package/lib/commonjs/color-picker/ColorPickerRoot.js +69 -0
  36. package/lib/commonjs/color-picker/ColorPickerRoot.js.map +1 -0
  37. package/lib/commonjs/color-picker/ColorPickerTrigger.js +98 -0
  38. package/lib/commonjs/color-picker/ColorPickerTrigger.js.map +1 -0
  39. package/lib/commonjs/color-picker/context.js +32 -0
  40. package/lib/commonjs/color-picker/context.js.map +1 -0
  41. package/lib/commonjs/color-picker/index.js +51 -0
  42. package/lib/commonjs/color-picker/index.js.map +1 -0
  43. package/lib/commonjs/color-picker/types.js +6 -0
  44. package/lib/commonjs/color-picker/types.js.map +1 -0
  45. package/lib/commonjs/color-slider/ColorSliderRail.js +119 -0
  46. package/lib/commonjs/color-slider/ColorSliderRail.js.map +1 -0
  47. package/lib/commonjs/color-slider/ColorSliderRoot.js +153 -0
  48. package/lib/commonjs/color-slider/ColorSliderRoot.js.map +1 -0
  49. package/lib/commonjs/color-slider/ColorSliderThumb.js +265 -0
  50. package/lib/commonjs/color-slider/ColorSliderThumb.js.map +1 -0
  51. package/lib/commonjs/color-slider/context.js +11 -0
  52. package/lib/commonjs/color-slider/context.js.map +1 -0
  53. package/lib/commonjs/color-slider/index.js +34 -0
  54. package/lib/commonjs/color-slider/index.js.map +1 -0
  55. package/lib/commonjs/color-slider/types.js +6 -0
  56. package/lib/commonjs/color-slider/types.js.map +1 -0
  57. package/lib/commonjs/color-slider/utils.js +75 -0
  58. package/lib/commonjs/color-slider/utils.js.map +1 -0
  59. package/lib/commonjs/color-swatch-picker/ColorSwatchPickerItem.js +46 -0
  60. package/lib/commonjs/color-swatch-picker/ColorSwatchPickerItem.js.map +1 -0
  61. package/lib/commonjs/color-swatch-picker/ColorSwatchPickerRoot.js +71 -0
  62. package/lib/commonjs/color-swatch-picker/ColorSwatchPickerRoot.js.map +1 -0
  63. package/lib/commonjs/color-swatch-picker/context.js +22 -0
  64. package/lib/commonjs/color-swatch-picker/context.js.map +1 -0
  65. package/lib/commonjs/color-swatch-picker/index.js +33 -0
  66. package/lib/commonjs/color-swatch-picker/index.js.map +1 -0
  67. package/lib/commonjs/color-swatch-picker/types.js +6 -0
  68. package/lib/commonjs/color-swatch-picker/types.js.map +1 -0
  69. package/lib/commonjs/dialog/DialogContent.js +13 -5
  70. package/lib/commonjs/dialog/DialogContent.js.map +1 -1
  71. package/lib/commonjs/dialog/DialogPopup.js +7 -1
  72. package/lib/commonjs/dialog/DialogPopup.js.map +1 -1
  73. package/lib/commonjs/dialog/DialogRoot.js +3 -1
  74. package/lib/commonjs/dialog/DialogRoot.js.map +1 -1
  75. package/lib/commonjs/index.js +80 -0
  76. package/lib/commonjs/index.js.map +1 -1
  77. package/lib/commonjs/portal/portal.js +4 -2
  78. package/lib/commonjs/portal/portal.js.map +1 -1
  79. package/lib/commonjs/react-native-web.d.js +2 -0
  80. package/lib/commonjs/react-native-web.d.js.map +1 -0
  81. package/lib/commonjs/select/SelectContent.js +1 -0
  82. package/lib/commonjs/select/SelectContent.js.map +1 -1
  83. package/lib/commonjs/slider/useSliderPointer.js +2 -0
  84. package/lib/commonjs/slider/useSliderPointer.js.map +1 -1
  85. package/lib/commonjs/utils/createPortal.web.js +10 -1
  86. package/lib/commonjs/utils/createPortal.web.js.map +1 -1
  87. package/lib/commonjs/utils/textAncestor.js +25 -0
  88. package/lib/commonjs/utils/textAncestor.js.map +1 -0
  89. package/lib/commonjs/utils/textAncestor.web.js +27 -0
  90. package/lib/commonjs/utils/textAncestor.web.js.map +1 -0
  91. package/lib/module/color/Color.js +65 -0
  92. package/lib/module/color/Color.js.map +1 -0
  93. package/lib/module/color/index.js +4 -0
  94. package/lib/module/color/index.js.map +1 -0
  95. package/lib/module/color/types.js +2 -0
  96. package/lib/module/color/types.js.map +1 -0
  97. package/lib/module/color-area/ColorAreaAccessibility.js +96 -0
  98. package/lib/module/color-area/ColorAreaAccessibility.js.map +1 -0
  99. package/lib/module/color-area/ColorAreaAccessibility.web.js +54 -0
  100. package/lib/module/color-area/ColorAreaAccessibility.web.js.map +1 -0
  101. package/lib/module/color-area/ColorAreaRoot.js +236 -0
  102. package/lib/module/color-area/ColorAreaRoot.js.map +1 -0
  103. package/lib/module/color-area/ColorAreaThumb.js +67 -0
  104. package/lib/module/color-area/ColorAreaThumb.js.map +1 -0
  105. package/lib/module/color-area/context.js +5 -0
  106. package/lib/module/color-area/context.js.map +1 -0
  107. package/lib/module/color-area/index.js +6 -0
  108. package/lib/module/color-area/index.js.map +1 -0
  109. package/lib/module/color-area/types.js +4 -0
  110. package/lib/module/color-area/types.js.map +1 -0
  111. package/lib/module/color-area/utils.js +45 -0
  112. package/lib/module/color-area/utils.js.map +1 -0
  113. package/lib/module/color-field/ColorFieldInput.js +63 -0
  114. package/lib/module/color-field/ColorFieldInput.js.map +1 -0
  115. package/lib/module/color-field/ColorFieldRoot.js +100 -0
  116. package/lib/module/color-field/ColorFieldRoot.js.map +1 -0
  117. package/lib/module/color-field/context.js +5 -0
  118. package/lib/module/color-field/context.js.map +1 -0
  119. package/lib/module/color-field/index.js +6 -0
  120. package/lib/module/color-field/index.js.map +1 -0
  121. package/lib/module/color-field/types.js +4 -0
  122. package/lib/module/color-field/types.js.map +1 -0
  123. package/lib/module/color-field/utils.js +55 -0
  124. package/lib/module/color-field/utils.js.map +1 -0
  125. package/lib/module/color-picker/ColorPickerRoot.js +65 -0
  126. package/lib/module/color-picker/ColorPickerRoot.js.map +1 -0
  127. package/lib/module/color-picker/ColorPickerTrigger.js +94 -0
  128. package/lib/module/color-picker/ColorPickerTrigger.js.map +1 -0
  129. package/lib/module/color-picker/context.js +25 -0
  130. package/lib/module/color-picker/context.js.map +1 -0
  131. package/lib/module/color-picker/index.js +6 -0
  132. package/lib/module/color-picker/index.js.map +1 -0
  133. package/lib/module/color-picker/types.js +4 -0
  134. package/lib/module/color-picker/types.js.map +1 -0
  135. package/lib/module/color-slider/ColorSliderRail.js +115 -0
  136. package/lib/module/color-slider/ColorSliderRail.js.map +1 -0
  137. package/lib/module/color-slider/ColorSliderRoot.js +149 -0
  138. package/lib/module/color-slider/ColorSliderRoot.js.map +1 -0
  139. package/lib/module/color-slider/ColorSliderThumb.js +261 -0
  140. package/lib/module/color-slider/ColorSliderThumb.js.map +1 -0
  141. package/lib/module/color-slider/context.js +5 -0
  142. package/lib/module/color-slider/context.js.map +1 -0
  143. package/lib/module/color-slider/index.js +7 -0
  144. package/lib/module/color-slider/index.js.map +1 -0
  145. package/lib/module/color-slider/types.js +4 -0
  146. package/lib/module/color-slider/types.js.map +1 -0
  147. package/lib/module/color-slider/utils.js +66 -0
  148. package/lib/module/color-slider/utils.js.map +1 -0
  149. package/lib/module/color-swatch-picker/ColorSwatchPickerItem.js +42 -0
  150. package/lib/module/color-swatch-picker/ColorSwatchPickerItem.js.map +1 -0
  151. package/lib/module/color-swatch-picker/ColorSwatchPickerRoot.js +67 -0
  152. package/lib/module/color-swatch-picker/ColorSwatchPickerRoot.js.map +1 -0
  153. package/lib/module/color-swatch-picker/context.js +15 -0
  154. package/lib/module/color-swatch-picker/context.js.map +1 -0
  155. package/lib/module/color-swatch-picker/index.js +6 -0
  156. package/lib/module/color-swatch-picker/index.js.map +1 -0
  157. package/lib/module/color-swatch-picker/types.js +4 -0
  158. package/lib/module/color-swatch-picker/types.js.map +1 -0
  159. package/lib/module/dialog/DialogContent.js +13 -5
  160. package/lib/module/dialog/DialogContent.js.map +1 -1
  161. package/lib/module/dialog/DialogPopup.js +7 -1
  162. package/lib/module/dialog/DialogPopup.js.map +1 -1
  163. package/lib/module/dialog/DialogRoot.js +4 -2
  164. package/lib/module/dialog/DialogRoot.js.map +1 -1
  165. package/lib/module/index.js +7 -0
  166. package/lib/module/index.js.map +1 -1
  167. package/lib/module/portal/portal.js +4 -2
  168. package/lib/module/portal/portal.js.map +1 -1
  169. package/lib/module/react-native-web.d.js +2 -0
  170. package/lib/module/react-native-web.d.js.map +1 -0
  171. package/lib/module/select/SelectContent.js +2 -1
  172. package/lib/module/select/SelectContent.js.map +1 -1
  173. package/lib/module/slider/useSliderPointer.js +2 -0
  174. package/lib/module/slider/useSliderPointer.js.map +1 -1
  175. package/lib/module/utils/createPortal.web.js +9 -1
  176. package/lib/module/utils/createPortal.web.js.map +1 -1
  177. package/lib/module/utils/textAncestor.js +20 -0
  178. package/lib/module/utils/textAncestor.js.map +1 -0
  179. package/lib/module/utils/textAncestor.web.js +22 -0
  180. package/lib/module/utils/textAncestor.web.js.map +1 -0
  181. package/lib/typescript/breadcrumbs/types.d.ts +13 -0
  182. package/lib/typescript/breadcrumbs/types.d.ts.map +1 -1
  183. package/lib/typescript/checkbox/types.d.ts +4 -0
  184. package/lib/typescript/checkbox/types.d.ts.map +1 -1
  185. package/lib/typescript/color/Color.d.ts +3 -0
  186. package/lib/typescript/color/Color.d.ts.map +1 -0
  187. package/lib/typescript/color/index.d.ts +3 -0
  188. package/lib/typescript/color/index.d.ts.map +1 -0
  189. package/lib/typescript/color/types.d.ts +13 -0
  190. package/lib/typescript/color/types.d.ts.map +1 -0
  191. package/lib/typescript/color-area/ColorAreaAccessibility.d.ts +8 -0
  192. package/lib/typescript/color-area/ColorAreaAccessibility.d.ts.map +1 -0
  193. package/lib/typescript/color-area/ColorAreaAccessibility.web.d.ts +8 -0
  194. package/lib/typescript/color-area/ColorAreaAccessibility.web.d.ts.map +1 -0
  195. package/lib/typescript/color-area/ColorAreaRoot.d.ts +7 -0
  196. package/lib/typescript/color-area/ColorAreaRoot.d.ts.map +1 -0
  197. package/lib/typescript/color-area/ColorAreaThumb.d.ts +6 -0
  198. package/lib/typescript/color-area/ColorAreaThumb.d.ts.map +1 -0
  199. package/lib/typescript/color-area/context.d.ts +6 -0
  200. package/lib/typescript/color-area/context.d.ts.map +1 -0
  201. package/lib/typescript/color-area/index.d.ts +5 -0
  202. package/lib/typescript/color-area/index.d.ts.map +1 -0
  203. package/lib/typescript/color-area/types.d.ts +65 -0
  204. package/lib/typescript/color-area/types.d.ts.map +1 -0
  205. package/lib/typescript/color-area/utils.d.ts +5 -0
  206. package/lib/typescript/color-area/utils.d.ts.map +1 -0
  207. package/lib/typescript/color-field/ColorFieldInput.d.ts +5 -0
  208. package/lib/typescript/color-field/ColorFieldInput.d.ts.map +1 -0
  209. package/lib/typescript/color-field/ColorFieldRoot.d.ts +7 -0
  210. package/lib/typescript/color-field/ColorFieldRoot.d.ts.map +1 -0
  211. package/lib/typescript/color-field/context.d.ts +6 -0
  212. package/lib/typescript/color-field/context.d.ts.map +1 -0
  213. package/lib/typescript/color-field/index.d.ts +7 -0
  214. package/lib/typescript/color-field/index.d.ts.map +1 -0
  215. package/lib/typescript/color-field/types.d.ts +39 -0
  216. package/lib/typescript/color-field/types.d.ts.map +1 -0
  217. package/lib/typescript/color-field/utils.d.ts +5 -0
  218. package/lib/typescript/color-field/utils.d.ts.map +1 -0
  219. package/lib/typescript/color-picker/ColorPickerRoot.d.ts +7 -0
  220. package/lib/typescript/color-picker/ColorPickerRoot.d.ts.map +1 -0
  221. package/lib/typescript/color-picker/ColorPickerTrigger.d.ts +4 -0
  222. package/lib/typescript/color-picker/ColorPickerTrigger.d.ts.map +1 -0
  223. package/lib/typescript/color-picker/context.d.ts +19 -0
  224. package/lib/typescript/color-picker/context.d.ts.map +1 -0
  225. package/lib/typescript/color-picker/index.d.ts +5 -0
  226. package/lib/typescript/color-picker/index.d.ts.map +1 -0
  227. package/lib/typescript/color-picker/types.d.ts +24 -0
  228. package/lib/typescript/color-picker/types.d.ts.map +1 -0
  229. package/lib/typescript/color-slider/ColorSliderRail.d.ts +6 -0
  230. package/lib/typescript/color-slider/ColorSliderRail.d.ts.map +1 -0
  231. package/lib/typescript/color-slider/ColorSliderRoot.d.ts +7 -0
  232. package/lib/typescript/color-slider/ColorSliderRoot.d.ts.map +1 -0
  233. package/lib/typescript/color-slider/ColorSliderThumb.d.ts +6 -0
  234. package/lib/typescript/color-slider/ColorSliderThumb.d.ts.map +1 -0
  235. package/lib/typescript/color-slider/context.d.ts +6 -0
  236. package/lib/typescript/color-slider/context.d.ts.map +1 -0
  237. package/lib/typescript/color-slider/index.d.ts +6 -0
  238. package/lib/typescript/color-slider/index.d.ts.map +1 -0
  239. package/lib/typescript/color-slider/types.d.ts +82 -0
  240. package/lib/typescript/color-slider/types.d.ts.map +1 -0
  241. package/lib/typescript/color-slider/utils.d.ts +12 -0
  242. package/lib/typescript/color-slider/utils.d.ts.map +1 -0
  243. package/lib/typescript/color-swatch-picker/ColorSwatchPickerItem.d.ts +6 -0
  244. package/lib/typescript/color-swatch-picker/ColorSwatchPickerItem.d.ts.map +1 -0
  245. package/lib/typescript/color-swatch-picker/ColorSwatchPickerRoot.d.ts +7 -0
  246. package/lib/typescript/color-swatch-picker/ColorSwatchPickerRoot.d.ts.map +1 -0
  247. package/lib/typescript/color-swatch-picker/context.d.ts +8 -0
  248. package/lib/typescript/color-swatch-picker/context.d.ts.map +1 -0
  249. package/lib/typescript/color-swatch-picker/index.d.ts +5 -0
  250. package/lib/typescript/color-swatch-picker/index.d.ts.map +1 -0
  251. package/lib/typescript/color-swatch-picker/types.d.ts +26 -0
  252. package/lib/typescript/color-swatch-picker/types.d.ts.map +1 -0
  253. package/lib/typescript/dialog/DialogContent.d.ts +1 -1
  254. package/lib/typescript/dialog/DialogContent.d.ts.map +1 -1
  255. package/lib/typescript/dialog/DialogPopup.d.ts.map +1 -1
  256. package/lib/typescript/dialog/DialogRoot.d.ts.map +1 -1
  257. package/lib/typescript/dialog/types.d.ts +12 -0
  258. package/lib/typescript/dialog/types.d.ts.map +1 -1
  259. package/lib/typescript/field/types.d.ts +1 -1
  260. package/lib/typescript/field/types.d.ts.map +1 -1
  261. package/lib/typescript/form/types.d.ts +6 -0
  262. package/lib/typescript/form/types.d.ts.map +1 -1
  263. package/lib/typescript/index.d.ts +7 -0
  264. package/lib/typescript/index.d.ts.map +1 -1
  265. package/lib/typescript/input/types.d.ts +1 -0
  266. package/lib/typescript/input/types.d.ts.map +1 -1
  267. package/lib/typescript/link/types.d.ts +2 -2
  268. package/lib/typescript/list-item/types.d.ts +3 -2
  269. package/lib/typescript/list-item/types.d.ts.map +1 -1
  270. package/lib/typescript/portal/portal.d.ts +13 -2
  271. package/lib/typescript/portal/portal.d.ts.map +1 -1
  272. package/lib/typescript/progress-bar/types.d.ts +9 -4
  273. package/lib/typescript/progress-bar/types.d.ts.map +1 -1
  274. package/lib/typescript/radio/types.d.ts +2 -0
  275. package/lib/typescript/radio/types.d.ts.map +1 -1
  276. package/lib/typescript/select/SelectContent.d.ts.map +1 -1
  277. package/lib/typescript/slider/useSliderPointer.d.ts.map +1 -1
  278. package/lib/typescript/switch/types.d.ts +4 -4
  279. package/lib/typescript/tabs/types.d.ts +7 -2
  280. package/lib/typescript/tabs/types.d.ts.map +1 -1
  281. package/lib/typescript/utils/createPortal.web.d.ts +6 -2
  282. package/lib/typescript/utils/createPortal.web.d.ts.map +1 -1
  283. package/lib/typescript/utils/textAncestor.d.ts +13 -0
  284. package/lib/typescript/utils/textAncestor.d.ts.map +1 -0
  285. package/lib/typescript/utils/textAncestor.web.d.ts +15 -0
  286. package/lib/typescript/utils/textAncestor.web.d.ts.map +1 -0
  287. package/package.json +4 -3
  288. package/src/breadcrumbs/types.ts +13 -0
  289. package/src/checkbox/types.ts +4 -0
  290. package/src/color/Color.ts +95 -0
  291. package/src/color/index.ts +2 -0
  292. package/src/color/types.ts +19 -0
  293. package/src/color-area/ColorAreaAccessibility.tsx +94 -0
  294. package/src/color-area/ColorAreaAccessibility.web.tsx +52 -0
  295. package/src/color-area/ColorAreaRoot.tsx +326 -0
  296. package/src/color-area/ColorAreaThumb.tsx +56 -0
  297. package/src/color-area/context.tsx +5 -0
  298. package/src/color-area/index.ts +10 -0
  299. package/src/color-area/types.ts +69 -0
  300. package/src/color-area/utils.ts +51 -0
  301. package/src/color-field/ColorFieldInput.tsx +66 -0
  302. package/src/color-field/ColorFieldRoot.tsx +132 -0
  303. package/src/color-field/context.tsx +5 -0
  304. package/src/color-field/index.ts +11 -0
  305. package/src/color-field/types.ts +46 -0
  306. package/src/color-field/utils.ts +75 -0
  307. package/src/color-picker/ColorPickerRoot.tsx +91 -0
  308. package/src/color-picker/ColorPickerTrigger.tsx +96 -0
  309. package/src/color-picker/context.tsx +47 -0
  310. package/src/color-picker/index.ts +12 -0
  311. package/src/color-picker/types.ts +25 -0
  312. package/src/color-slider/ColorSliderRail.tsx +130 -0
  313. package/src/color-slider/ColorSliderRoot.tsx +222 -0
  314. package/src/color-slider/ColorSliderThumb.tsx +294 -0
  315. package/src/color-slider/context.tsx +5 -0
  316. package/src/color-slider/index.ts +16 -0
  317. package/src/color-slider/types.ts +94 -0
  318. package/src/color-slider/utils.ts +79 -0
  319. package/src/color-swatch-picker/ColorSwatchPickerItem.tsx +54 -0
  320. package/src/color-swatch-picker/ColorSwatchPickerRoot.tsx +94 -0
  321. package/src/color-swatch-picker/context.tsx +22 -0
  322. package/src/color-swatch-picker/index.ts +4 -0
  323. package/src/color-swatch-picker/types.ts +29 -0
  324. package/src/dialog/DialogContent.tsx +13 -5
  325. package/src/dialog/DialogPopup.tsx +7 -1
  326. package/src/dialog/DialogRoot.tsx +3 -1
  327. package/src/dialog/types.ts +12 -0
  328. package/src/field/types.tsx +1 -1
  329. package/src/form/types.tsx +6 -0
  330. package/src/index.ts +7 -0
  331. package/src/input/types.ts +1 -0
  332. package/src/link/types.ts +2 -2
  333. package/src/list-item/types.ts +3 -2
  334. package/src/portal/portal.tsx +17 -2
  335. package/src/progress-bar/types.ts +9 -4
  336. package/src/radio/types.ts +2 -0
  337. package/src/react-native-web.d.ts +6 -0
  338. package/src/select/SelectContent.tsx +2 -1
  339. package/src/slider/useSliderPointer.ts +3 -0
  340. package/src/switch/types.ts +4 -4
  341. package/src/tabs/types.ts +7 -2
  342. package/src/utils/createPortal.web.ts +9 -3
  343. package/src/utils/textAncestor.ts +19 -0
  344. package/src/utils/textAncestor.web.ts +19 -0
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/input/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yEAAyE;IACzE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,eAAgB,SAAQ,SAAS,EAAE,gBAAgB;IAClE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,eAAgB,SAAQ,cAAc;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,eAAgB,SAAQ,eAAe;IAC/C,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CAC5B;AAED,UAAU,eAAgB,SAAQ,eAAe;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qGAAqG;IACrG,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IACjC,yDAAyD;IACzD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;CACnC;AAED,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,eAAe,CAAC;AAE5D,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/input/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yEAAyE;IACzE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,eAAgB,SAAQ,SAAS,EAAE,gBAAgB;IAClE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,eAAgB,SAAQ,cAAc;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,eAAgB,SAAQ,eAAe;IAC/C,sBAAsB;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CAC5B;AAED,UAAU,eAAgB,SAAQ,eAAe;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qGAAqG;IACrG,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IACjC,yDAAyD;IACzD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;CACnC;AAED,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,eAAe,CAAC;AAE5D,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
@@ -14,11 +14,11 @@ import type { GestureResponderEvent, PressableProps } from 'react-native';
14
14
  export type LinkAction = 'navigate' | 'push' | 'replace';
15
15
  export interface ILinkProps extends PressableProps {
16
16
  /**
17
- * URL that should be opened on Link press
17
+ * URL or route path opened on press. Omit when the link only runs `onPress`.
18
18
  */
19
19
  href?: string | undefined;
20
20
  /**
21
- * Callback that will be invoked on Link press
21
+ * Invoked on press before navigation. Does not replace navigation.
22
22
  */
23
23
  onPress?: ((event?: GestureResponderEvent) => void) | null | undefined;
24
24
  /**
@@ -23,8 +23,9 @@ export interface InterfaceListItemProps extends ViewProps, IListItemPressablePas
23
23
  */
24
24
  crossAlign?: ListItemCrossAlign;
25
25
  /**
26
- * Merge interaction props onto a single child instead of rendering the default pressable root.
27
- * Intended for use with `onPress`.
26
+ * Merge props onto a single child (for example `Link`) instead of rendering `View` or `Pressable`.
27
+ * The child's `onPress` is kept unless this component also passes `onPress`.
28
+ * `isDisabled` suppresses press on the child.
28
29
  */
29
30
  asChild?: boolean;
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/list-item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEpD,MAAM,MAAM,6BAA6B,GAAG,OAAO,CACjD,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,CAAC,CAC9E,CAAC;AAEF,MAAM,WAAW,sBAAuB,SAAQ,SAAS,EAAE,6BAA6B;IACtF;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC;;;;OAIG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/list-item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEpD,MAAM,MAAM,6BAA6B,GAAG,OAAO,CACjD,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,CAAC,CAC9E,CAAC;AAEF,MAAM,WAAW,sBAAuB,SAAQ,SAAS,EAAE,6BAA6B;IACtF;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC;;;;OAIG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC"}
@@ -3,9 +3,20 @@ import { type View, type ViewStyle } from 'react-native';
3
3
  export declare function PortalProvider({ children }: Readonly<{
4
4
  children: React.ReactNode;
5
5
  }>): import("react/jsx-runtime").JSX.Element;
6
- export declare function PortalHost({ name }: {
6
+ export interface PortalHostProps {
7
+ /** Host name that `Portal` targets through `hostName`. @default the shared default host */
7
8
  name?: string;
8
- }): import("react/jsx-runtime").JSX.Element | null;
9
+ /**
10
+ * Web only. Element that receives the portal content instead of `document.body`.
11
+ *
12
+ * Use it to keep overlays inside an embedded surface, such as a device preview. Fixed
13
+ * overlays stay inside the container only when an ancestor of it creates a containing
14
+ * block for fixed descendants, for example through a `transform`. While `null`, such as
15
+ * before a callback ref attaches, the host renders nothing. Ignored on native.
16
+ */
17
+ container?: Element | null;
18
+ }
19
+ export declare function PortalHost({ name, container }: PortalHostProps): import("react/jsx-runtime").JSX.Element | null;
9
20
  export declare function Portal({ name, hostName, children, }: {
10
21
  name: string;
11
22
  hostName?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../src/portal/portal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAY,KAAK,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAwHnE,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC,2CAMnF;AAID,wBAAgB,UAAU,CAAC,EAAE,IAA0B,EAAE,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,kDAyC3E;AAID,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,QAA8B,EAC9B,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,QAcA;AAQD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB;;;;;EAiBjC"}
1
+ {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../src/portal/portal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAY,KAAK,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAwHnE,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC,2CAMnF;AAID,MAAM,WAAW,eAAe;IAC9B,2FAA2F;IAC3F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AAED,wBAAgB,UAAU,CAAC,EAAE,IAA0B,EAAE,SAAS,EAAE,EAAE,eAAe,kDA0CpF;AAID,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,QAA8B,EAC9B,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,QAcA;AAQD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB;;;;;EAiBjC"}
@@ -3,17 +3,22 @@ import type { ViewProps } from 'react-native';
3
3
  export type ProgressDataState = 'complete' | 'indeterminate' | 'loading';
4
4
  export interface InterfaceProgressProps extends Omit<ViewProps, 'children'> {
5
5
  /**
6
- * Current value in the range [0, max], or `null` for indeterminate progress.
7
- * Omit or use a number for determinate progress; default is `0`.
6
+ * Current value in the range `[0, max]`, or `null` for indeterminate progress.
7
+ * Values below `0` clamp to `0`; values above `max` clamp to `max`.
8
+ * Non-finite values (such as `NaN`) are treated as `0`.
9
+ * @default 0
8
10
  */
9
11
  readonly value?: number | null;
10
12
  /**
11
- * Maximum value (minimum is always 0).
13
+ * Maximum value. The minimum is always `0`.
14
+ * A `max` of `0` or less is treated as complete.
12
15
  * @default 100
13
16
  */
14
17
  readonly max?: number;
15
18
  /**
16
- * Optional label for `accessibilityValue.text` when determinate.
19
+ * Screen-reader text for determinate progress (`accessibilityValue.text`).
20
+ * Defaults to a rounded percentage of `max`, such as `"45%"`.
21
+ * No effect when `value` is `null`, or when `accessibilityValue` is set.
17
22
  */
18
23
  readonly getValueLabel?: (value: number, max: number) => string;
19
24
  readonly children?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/progress-bar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACzE;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/progress-bar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACzE;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC"}
@@ -2,8 +2,10 @@ import type { PressableProps } from 'react-native';
2
2
  export interface IRadioProps extends PressableProps {
3
3
  /** Required — identifies this item's value within a Radio.Group. */
4
4
  value: string;
5
+ /** Disables this item without disabling the rest of the group. */
5
6
  isDisabled?: boolean;
6
7
  isInvalid?: boolean;
8
+ /** Focusable, but the selection cannot be changed. */
7
9
  isReadOnly?: boolean;
8
10
  isHovered?: boolean;
9
11
  isFocused?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/radio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC7B,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,mEAAmE;AACnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACrC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/radio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC7B,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,mEAAmE;AACnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectContent.d.ts","sourceRoot":"","sources":["../../../src/select/SelectContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6D,MAAM,OAAO,CAAC;AAClF,OAAO,EAAY,IAAI,EAAE,MAAM,cAAc,CAAC;AAO9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAInD,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,iFA+HzB,CAAC"}
1
+ {"version":3,"file":"SelectContent.d.ts","sourceRoot":"","sources":["../../../src/select/SelectContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6D,MAAM,OAAO,CAAC;AAClF,OAAO,EAAY,IAAI,EAAE,MAAM,cAAc,CAAC;AAO9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAInD,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,iFAgIzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSliderPointer.d.ts","sourceRoot":"","sources":["../../../src/slider/useSliderPointer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGjD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAS3B;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,iBAAiB,GAAG,IAAI,EACrC,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,MAAM,GAChB,MAAM,CAUR;AAQD,wBAAgB,gBAAgB,CAAC,EAC/B,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,SAAS,GACV,EAAE;IACD,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/D,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;uBAyBY,MAAM,SACN,MAAM,gBACC,MAAM,wBACE,iBAAiB;EAoE5C"}
1
+ {"version":3,"file":"useSliderPointer.d.ts","sourceRoot":"","sources":["../../../src/slider/useSliderPointer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGjD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAS3B;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,iBAAiB,GAAG,IAAI,EACrC,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,MAAM,GAChB,MAAM,CAUR;AAQD,wBAAgB,gBAAgB,CAAC,EAC/B,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,SAAS,GACV,EAAE;IACD,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/D,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;uBAyBY,MAAM,SACN,MAAM,gBACC,MAAM,wBACE,iBAAiB;EAuE5C"}
@@ -6,11 +6,11 @@ export interface IInterfaceSwitchProps {
6
6
  */
7
7
  onValueChange?: (value: boolean) => void;
8
8
  /**
9
- * If true, set the Switch to the checked state.
9
+ * Alias for `value`. `value` takes precedence when both are set.
10
10
  */
11
11
  isChecked?: boolean;
12
12
  /**
13
- * The current value of the switch.
13
+ * Controlled on/off state. Takes precedence over `isChecked`.
14
14
  */
15
15
  value?: boolean;
16
16
  /**
@@ -18,11 +18,11 @@ export interface IInterfaceSwitchProps {
18
18
  */
19
19
  isDisabled?: boolean;
20
20
  /**
21
- * If true, the switch will be disabled.
21
+ * Alias for `isDisabled`. Either prop disables the switch.
22
22
  */
23
23
  disabled?: boolean;
24
24
  /**
25
- * If true, the switch will be initially checked.
25
+ * Initial state when uncontrolled. No effect when `value` or `isChecked` is set.
26
26
  */
27
27
  defaultValue?: boolean;
28
28
  /**
@@ -11,7 +11,8 @@ export interface ITabsProps {
11
11
  onValueChange?: (value: string) => void;
12
12
  /**
13
13
  * `automatic` (default) selects a tab as soon as it receives focus via arrow keys.
14
- * `manual` only moves focus on arrow keys — the consumer must press Enter/Space to select.
14
+ * `manual` only moves focus — press Enter or Space to select. Web only; native
15
+ * selection follows press. Use `manual` when rendering the next panel is expensive.
15
16
  */
16
17
  activationMode?: TabsActivationMode;
17
18
  /**
@@ -19,6 +20,7 @@ export interface ITabsProps {
19
20
  * `vertical` uses ArrowUp/ArrowDown, per the ARIA APG tabs pattern.
20
21
  */
21
22
  orientation?: TabsOrientation;
23
+ /** Disables every tab. Disable a single tab with `disabled` on that `Tabs.Tab`. */
22
24
  disabled?: boolean;
23
25
  children?: ReactNode;
24
26
  }
@@ -58,7 +60,10 @@ export interface ITabProps extends PressableProps {
58
60
  export interface ITabPanelProps extends ViewProps {
59
61
  /** Required — correlates this panel with its `Tabs.Tab` counterpart. */
60
62
  value: string;
61
- /** Unmount when inactive instead of keeping the panel hidden in the DOM. */
63
+ /**
64
+ * Unmount when inactive instead of keeping the panel mounted and hidden.
65
+ * The default keeps it mounted so the tab's `aria-controls` target stays in the tree.
66
+ */
62
67
  unmountWhenInactive?: boolean;
63
68
  children?: ReactNode;
64
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tabs/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,QAAQ,CAAC;AACxD,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,UAAU,CAAC;AAExD,MAAM,WAAW,UAAU;IACzB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,SAAU,SAAQ,cAAc;IAC/C,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,kBAAkB,CAAC;IACnC,WAAW,EAAE,eAAe,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC3D,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;IACzC,iGAAiG;IACjG,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CACtD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tabs/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,QAAQ,CAAC;AACxD,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,UAAU,CAAC;AAExD,MAAM,WAAW,UAAU;IACzB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,SAAU,SAAQ,cAAc;IAC/C,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,kBAAkB,CAAC;IACnC,WAAW,EAAE,eAAe,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC3D,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;IACzC,iGAAiG;IACjG,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CACtD"}
@@ -1,5 +1,5 @@
1
- import type React from 'react';
2
- type CreatePortalFn = (children: React.ReactNode, container: Element) => React.ReactPortal;
1
+ import { type ReactNode, type ReactPortal } from 'react';
2
+ type CreatePortalFn = (children: ReactNode, container: Element) => ReactPortal;
3
3
  /**
4
4
  * Web implementation — statically imports `ReactDOM.createPortal`.
5
5
  *
@@ -11,6 +11,10 @@ type CreatePortalFn = (children: React.ReactNode, container: Element) => React.R
11
11
  * layout-animation path, leaving web overlays (Select, DatePicker) stuck at
12
12
  * opacity 0. A static ESM import guarantees `createPortalFn` resolves on web
13
13
  * regardless of the bundler's CommonJS interop.
14
+ *
15
+ * Portaled content leaves the DOM subtree of any `Text` it was rendered from,
16
+ * so the text-ancestor context is reset; otherwise a `Text` inside an overlay
17
+ * opened from a `Text` would skip its own typography and inherit nothing.
14
18
  */
15
19
  export declare const createPortalFn: CreatePortalFn;
16
20
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"createPortal.web.d.ts","sourceRoot":"","sources":["../../../src/utils/createPortal.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,KAAK,cAAc,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,KAAK,KAAK,CAAC,WAAW,CAAC;AAE3F;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,EAAE,cAA6B,CAAC"}
1
+ {"version":3,"file":"createPortal.web.d.ts","sourceRoot":"","sources":["../../../src/utils/createPortal.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,OAAO,CAAC;AAIxE,KAAK,cAAc,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,KAAK,WAAW,CAAC;AAE/E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,EAAE,cACqE,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { type Context } from 'react';
2
+ /**
3
+ * React Native's own text-ancestor context: `Text` provides `true`, and `View`
4
+ * (including the one inside `Modal`) resets it to `false`.
5
+ *
6
+ * It is exported as `unstable_`, so a React Native release that drops it falls
7
+ * back to a context nothing provides — every `Text` then styles itself as
8
+ * top-level instead of the module failing to load.
9
+ */
10
+ export declare const TextAncestorContext: Context<boolean>;
11
+ /** `true` when the calling component renders inside a host `Text`. */
12
+ export declare function useHasTextAncestor(): boolean;
13
+ //# sourceMappingURL=textAncestor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textAncestor.d.ts","sourceRoot":"","sources":["../../../src/utils/textAncestor.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,OAAO,CAAC;AAGhE;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAEQ,CAAC;AAE1D,sEAAsE;AACtE,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C"}
@@ -0,0 +1,15 @@
1
+ import { type Context } from 'react';
2
+ /**
3
+ * React Native Web's text-ancestor context, which its `Text` provides. RNW does
4
+ * not export it, so this is a deep import. RNW's ESM and CommonJS builds each
5
+ * create their own context, so this must stay on the ESM path: it is the build
6
+ * bundlers resolve `react-native-web` to, and the path `babel-preset-expo`
7
+ * rewrites `react-native` imports to under Jest.
8
+ *
9
+ * Unlike native, RNW's `View` does not reset the context — CSS inherits through
10
+ * an inline `View` inside `Text`. DOM portals reset it in `createPortal.web.ts`.
11
+ */
12
+ export declare const TextAncestorContext: Context<boolean>;
13
+ /** `true` when the calling component renders inside a host `Text`. */
14
+ export declare function useHasTextAncestor(): boolean;
15
+ //# sourceMappingURL=textAncestor.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textAncestor.web.d.ts","sourceRoot":"","sources":["../../../src/utils/textAncestor.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,OAAO,EAAE,MAAM,OAAO,CAAC;AAGjD;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAA0B,CAAC;AAE5E,sEAAsE;AACtE,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cdx-ui/primitives",
3
- "version": "0.1.6",
3
+ "version": "0.2.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -65,11 +65,12 @@
65
65
  "@react-native-aria/interactions": "^0.2.16",
66
66
  "@react-native-aria/radio": "0.2.13",
67
67
  "@react-stately/checkbox": "3.7.4",
68
+ "@react-stately/color": "3.10.1",
68
69
  "@react-stately/disclosure": "3.1.1",
69
70
  "@react-stately/radio": "3.12.0",
70
71
  "@react-stately/toggle": "3.9.4",
71
- "@cdx-ui/formatters": "0.1.6",
72
- "@cdx-ui/utils": "0.1.6"
72
+ "@cdx-ui/formatters": "0.2.0",
73
+ "@cdx-ui/utils": "0.2.0"
73
74
  },
74
75
  "devDependencies": {
75
76
  "@types/react": "19.1.17",
@@ -13,8 +13,21 @@ export const breadcrumbColorOptions = [
13
13
  export type BreadcrumbColor = (typeof breadcrumbColorOptions)[number];
14
14
 
15
15
  export interface IBreadcrumbsProps extends ViewProps {
16
+ /**
17
+ * When `true`, ancestor items are not interactive and use muted text.
18
+ * The current page keeps its color.
19
+ * @default false
20
+ */
16
21
  readonly isDisabled?: boolean;
22
+ /**
23
+ * When `true`, interactive ancestor items are underlined.
24
+ * @default false
25
+ */
17
26
  readonly isUnderlined?: boolean;
27
+ /**
28
+ * Semantic color for ancestor items. `neutral` uses the standard text hierarchy.
29
+ * @default 'neutral'
30
+ */
18
31
  readonly color?: BreadcrumbColor;
19
32
  /**
20
33
  * Accessible name for the breadcrumb navigation landmark.
@@ -1,13 +1,17 @@
1
1
  import type { PressableProps } from 'react-native';
2
2
 
3
3
  export interface InterfaceCheckbox extends PressableProps {
4
+ /** Identifies this checkbox. Must be unique among siblings in a `Checkbox.Group`. */
4
5
  value: string;
5
6
  onChange?: (isSelected: boolean) => void;
6
7
  children?: React.ReactNode;
8
+ /** Initial checked state when uncontrolled. No effect when `isChecked` is set. */
7
9
  defaultIsChecked?: boolean;
10
+ /** Controlled checked state. When set, `defaultIsChecked` has no effect. */
8
11
  isChecked?: boolean;
9
12
  isDisabled?: boolean;
10
13
  isInvalid?: boolean;
14
+ /** Focusable, but the checked state cannot be changed. */
11
15
  isReadOnly?: boolean;
12
16
  isHovered?: boolean;
13
17
  isFocused?: boolean;
@@ -0,0 +1,95 @@
1
+ import { parseColor as parseStatelyColor } from '@react-stately/color';
2
+ import type { Color, ColorChannelBySpace, ColorFormat, ColorSpace } from './types';
3
+
4
+ const NUMBER_PATTERN = '[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)';
5
+ const HEX_PATTERN = /^#[\da-f]{3}(?:[\da-f]{3})?$/iu;
6
+ const RGB_PATTERN = new RegExp(
7
+ `^rgb\\(\\s*${NUMBER_PATTERN}\\s*,\\s*${NUMBER_PATTERN}\\s*,\\s*${NUMBER_PATTERN}\\s*\\)$`,
8
+ 'iu',
9
+ );
10
+ const HSL_PATTERN = new RegExp(
11
+ `^hsl\\(\\s*${NUMBER_PATTERN}\\s*,\\s*${NUMBER_PATTERN}%\\s*,\\s*${NUMBER_PATTERN}%\\s*\\)$`,
12
+ 'iu',
13
+ );
14
+
15
+ type StatelyColor = ReturnType<typeof parseStatelyColor>;
16
+
17
+ function isSupportedOpaqueColor(value: string): boolean {
18
+ return HEX_PATTERN.test(value) || RGB_PATTERN.test(value) || HSL_PATTERN.test(value);
19
+ }
20
+
21
+ function normalizeHue(value: number): number {
22
+ if (!Number.isFinite(value)) {
23
+ return 0;
24
+ }
25
+
26
+ return ((value % 360) + 360) % 360;
27
+ }
28
+
29
+ function normalizeChannelValue(
30
+ color: StatelyColor,
31
+ channel: ColorChannelBySpace[ColorSpace],
32
+ value: number,
33
+ ): number {
34
+ if (!Number.isFinite(value)) {
35
+ return color.getChannelValue(channel);
36
+ }
37
+
38
+ if (channel === 'hue') {
39
+ return normalizeHue(value);
40
+ }
41
+
42
+ const { minValue, maxValue } = color.getChannelRange(channel);
43
+ const clampedValue = Math.min(maxValue, Math.max(minValue, value));
44
+
45
+ return channel === 'red' || channel === 'green' || channel === 'blue'
46
+ ? Math.round(clampedValue)
47
+ : clampedValue;
48
+ }
49
+
50
+ function createColor(color: StatelyColor): Color {
51
+ return {
52
+ toString(format: ColorFormat): string {
53
+ const value = color.toString(format);
54
+ return format === 'hex' ? value.toUpperCase() : value;
55
+ },
56
+ getChannel<S extends ColorSpace>(space: S, channel: ColorChannelBySpace[S]): number {
57
+ const value = color.toFormat(space).getChannelValue(channel);
58
+ return channel === 'hue' ? normalizeHue(value) : value;
59
+ },
60
+ withChannel<S extends ColorSpace>(
61
+ space: S,
62
+ channel: ColorChannelBySpace[S],
63
+ value: number,
64
+ ): Color {
65
+ const convertedColor = color.toFormat(space);
66
+ const channelValue = normalizeChannelValue(convertedColor, channel, value);
67
+ return createColor(convertedColor.withChannelValue(channel, channelValue));
68
+ },
69
+ };
70
+ }
71
+
72
+ export function parseColor(value: string): Color | undefined {
73
+ const normalizedValue = value.trim().toLowerCase();
74
+
75
+ if (!isSupportedOpaqueColor(normalizedValue)) {
76
+ return undefined;
77
+ }
78
+
79
+ try {
80
+ let color = parseStatelyColor(normalizedValue);
81
+
82
+ if (RGB_PATTERN.test(normalizedValue)) {
83
+ color = color
84
+ .withChannelValue('red', Math.round(color.getChannelValue('red')))
85
+ .withChannelValue('green', Math.round(color.getChannelValue('green')))
86
+ .withChannelValue('blue', Math.round(color.getChannelValue('blue')));
87
+ } else if (HSL_PATTERN.test(normalizedValue)) {
88
+ color = color.withChannelValue('hue', normalizeHue(color.getChannelValue('hue')));
89
+ }
90
+
91
+ return createColor(color);
92
+ } catch {
93
+ return undefined;
94
+ }
95
+ }
@@ -0,0 +1,2 @@
1
+ export { parseColor } from './Color';
2
+ export type { Color, ColorChannelBySpace, ColorFormat, ColorSpace } from './types';
@@ -0,0 +1,19 @@
1
+ export type ColorFormat = 'hex' | 'rgb' | 'hsl';
2
+
3
+ export type ColorSpace = 'rgb' | 'hsl' | 'hsb';
4
+
5
+ export interface ColorChannelBySpace {
6
+ rgb: 'red' | 'green' | 'blue';
7
+ hsl: 'hue' | 'saturation' | 'lightness';
8
+ hsb: 'hue' | 'saturation' | 'brightness';
9
+ }
10
+
11
+ export interface Color {
12
+ toString(format: ColorFormat): string;
13
+ getChannel<S extends ColorSpace>(space: S, channel: ColorChannelBySpace[S]): number;
14
+ withChannel<S extends ColorSpace>(
15
+ space: S,
16
+ channel: ColorChannelBySpace[S],
17
+ value: number,
18
+ ): Color;
19
+ }
@@ -0,0 +1,94 @@
1
+ import { useCallback } from 'react';
2
+ import { StyleSheet, View, type AccessibilityActionEvent } from 'react-native';
3
+ import { useColorAreaContext } from './context';
4
+ import { clampColorChannel, colorAreaValueText } from './utils';
5
+
6
+ export interface ColorAreaAccessibilityProps {
7
+ readonly accessibilityLabel?: string;
8
+ }
9
+
10
+ export function ColorAreaAccessibility({ accessibilityLabel }: ColorAreaAccessibilityProps) {
11
+ const { value, xValue, yValue, step, isDisabled, setXValue, setYValue } = useColorAreaContext();
12
+
13
+ const handleSaturationAction = useCallback(
14
+ (event: AccessibilityActionEvent) => {
15
+ if (event.nativeEvent.actionName === 'increment') {
16
+ setXValue(xValue + step, true);
17
+ } else if (event.nativeEvent.actionName === 'decrement') {
18
+ setXValue(xValue - step, true);
19
+ }
20
+ },
21
+ [setXValue, step, xValue],
22
+ );
23
+
24
+ const handleBrightnessAction = useCallback(
25
+ (event: AccessibilityActionEvent) => {
26
+ if (event.nativeEvent.actionName === 'increment') {
27
+ setYValue(yValue + step, true);
28
+ } else if (event.nativeEvent.actionName === 'decrement') {
29
+ setYValue(yValue - step, true);
30
+ }
31
+ },
32
+ [setYValue, step, yValue],
33
+ );
34
+
35
+ const actionProps = {
36
+ accessibilityActions: [{ name: 'increment' }, { name: 'decrement' }],
37
+ } as const;
38
+
39
+ return (
40
+ <>
41
+ <View
42
+ {...actionProps}
43
+ accessible
44
+ style={styles.saturationProxy}
45
+ accessibilityRole="adjustable"
46
+ accessibilityLabel={accessibilityLabel ? `${accessibilityLabel}, Saturation` : 'Saturation'}
47
+ accessibilityValue={{
48
+ min: 0,
49
+ max: 100,
50
+ now: Math.round(clampColorChannel(xValue)),
51
+ text: colorAreaValueText(value),
52
+ }}
53
+ accessibilityState={{ disabled: isDisabled }}
54
+ onAccessibilityAction={handleSaturationAction}
55
+ />
56
+ <View
57
+ {...actionProps}
58
+ accessible
59
+ style={styles.brightnessProxy}
60
+ accessibilityRole="adjustable"
61
+ accessibilityLabel={accessibilityLabel ? `${accessibilityLabel}, Brightness` : 'Brightness'}
62
+ accessibilityValue={{
63
+ min: 0,
64
+ max: 100,
65
+ now: Math.round(clampColorChannel(yValue)),
66
+ text: colorAreaValueText(value),
67
+ }}
68
+ accessibilityState={{ disabled: isDisabled }}
69
+ onAccessibilityAction={handleBrightnessAction}
70
+ />
71
+ </>
72
+ );
73
+ }
74
+
75
+ ColorAreaAccessibility.displayName = 'ColorAreaAccessibility';
76
+
77
+ const styles = StyleSheet.create({
78
+ saturationProxy: {
79
+ position: 'absolute',
80
+ top: 0,
81
+ bottom: 0,
82
+ left: 0,
83
+ width: '50%',
84
+ pointerEvents: 'none',
85
+ },
86
+ brightnessProxy: {
87
+ position: 'absolute',
88
+ top: 0,
89
+ right: 0,
90
+ bottom: 0,
91
+ width: '50%',
92
+ pointerEvents: 'none',
93
+ },
94
+ });
@@ -0,0 +1,52 @@
1
+ import { VisuallyHidden } from '@react-aria/visually-hidden';
2
+ import { useColorAreaContext } from './context';
3
+ import type { ColorAreaKeyboardEvent } from './types';
4
+ import { colorAreaValueText, snapColorChannel } from './utils';
5
+
6
+ export interface ColorAreaAccessibilityProps {
7
+ readonly accessibilityLabel?: string;
8
+ }
9
+
10
+ export function ColorAreaAccessibility({ accessibilityLabel }: ColorAreaAccessibilityProps) {
11
+ const { value, xValue, yValue, step, isDisabled, setXValue, setYValue, handleKeyDown } =
12
+ useColorAreaContext();
13
+
14
+ const handleInputKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {
15
+ handleKeyDown(event as unknown as ColorAreaKeyboardEvent);
16
+ };
17
+
18
+ return (
19
+ <>
20
+ <VisuallyHidden>
21
+ <input
22
+ type="range"
23
+ min={0}
24
+ max={100}
25
+ step={step}
26
+ value={snapColorChannel(xValue, step)}
27
+ disabled={isDisabled}
28
+ aria-label={accessibilityLabel ? `${accessibilityLabel}, Saturation` : 'Saturation'}
29
+ aria-valuetext={colorAreaValueText(value)}
30
+ onKeyDown={handleInputKeyDown}
31
+ onChange={(event) => setXValue(Number(event.currentTarget.value), true)}
32
+ />
33
+ </VisuallyHidden>
34
+ <VisuallyHidden>
35
+ <input
36
+ type="range"
37
+ min={0}
38
+ max={100}
39
+ step={step}
40
+ value={snapColorChannel(yValue, step)}
41
+ disabled={isDisabled}
42
+ aria-label={accessibilityLabel ? `${accessibilityLabel}, Brightness` : 'Brightness'}
43
+ aria-valuetext={colorAreaValueText(value)}
44
+ onKeyDown={handleInputKeyDown}
45
+ onChange={(event) => setYValue(Number(event.currentTarget.value), true)}
46
+ />
47
+ </VisuallyHidden>
48
+ </>
49
+ );
50
+ }
51
+
52
+ ColorAreaAccessibility.displayName = 'ColorAreaAccessibility';