pixelize-native-library 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/lib/module/core/MODULE.md +2 -1
  2. package/lib/module/core/gradient/AccentGradientFill.js +80 -0
  3. package/lib/module/core/gradient/darkenHex.js +13 -0
  4. package/lib/module/core/gradient/gradientStops.js +27 -0
  5. package/lib/module/core/gradient/index.js +7 -0
  6. package/lib/module/core/gradient/withAlpha.js +19 -0
  7. package/lib/module/core/haptics/MODULE.md +4 -0
  8. package/lib/module/core/haptics/context.js +7 -0
  9. package/lib/module/core/haptics/haptics.js +17 -0
  10. package/lib/module/core/haptics/index.js +6 -0
  11. package/lib/module/core/haptics/useHaptics.js +73 -0
  12. package/lib/module/core/icon/MODULE.md +16 -9
  13. package/lib/module/core/icon/icons/trending-up.js +10 -0
  14. package/lib/module/core/icon/resolve.js +2 -0
  15. package/lib/module/core/media/expoImage.js +6 -0
  16. package/lib/module/core/motion/MODULE.md +12 -12
  17. package/lib/module/core/motion/config.js +4 -1
  18. package/lib/module/core/motion/index.js +2 -1
  19. package/lib/module/core/motion/usePressState.js +145 -0
  20. package/lib/module/core/style/index.js +1 -0
  21. package/lib/module/core/style/radius.js +4 -0
  22. package/lib/module/index.js +1 -0
  23. package/lib/module/modules/accordion/Accordion.js +69 -49
  24. package/lib/module/modules/accordion/Accordion.variants.js +4 -3
  25. package/lib/module/modules/accordion/MODULE.md +2 -1
  26. package/lib/module/modules/alert-dialog/AlertDialog.js +6 -5
  27. package/lib/module/modules/alert-dialog/AlertDialog.variants.js +4 -0
  28. package/lib/module/modules/app-bar/AppBar.js +6 -4
  29. package/lib/module/modules/app-bar/AppBar.variants.js +1 -2
  30. package/lib/module/modules/avatar/Avatar.js +7 -1
  31. package/lib/module/modules/avatar/Avatar.variants.js +1 -1
  32. package/lib/module/modules/avatar/MODULE.md +2 -2
  33. package/lib/module/modules/avatar-group/AvatarGroup.js +10 -6
  34. package/lib/module/modules/avatar-group/AvatarGroup.variants.js +23 -0
  35. package/lib/module/modules/avatar-group/MODULE.md +16 -0
  36. package/lib/module/modules/badge/Badge.js +11 -5
  37. package/lib/module/modules/badge/Badge.variants.js +2 -1
  38. package/lib/module/modules/badge/MODULE.md +5 -5
  39. package/lib/module/modules/banner/Banner.js +106 -60
  40. package/lib/module/modules/banner/Banner.variants.js +2 -2
  41. package/lib/module/modules/banner/MODULE.md +7 -2
  42. package/lib/module/modules/bottom-nav/BottomNav.js +6 -3
  43. package/lib/module/modules/bottom-nav/BottomNav.variants.js +9 -10
  44. package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js +28 -4
  45. package/lib/module/modules/bottom-nav/BottomNavTab.js +28 -4
  46. package/lib/module/modules/bottom-nav/MODULE.md +10 -1
  47. package/lib/module/modules/bottom-sheet/BottomSheet.js +20 -7
  48. package/lib/module/modules/bottom-sheet/BottomSheet.variants.js +15 -5
  49. package/lib/module/modules/bottom-sheet/MODULE.md +13 -2
  50. package/lib/module/modules/button/Button.js +87 -101
  51. package/lib/module/modules/button/Button.variants.js +8 -7
  52. package/lib/module/modules/button/MODULE.md +6 -0
  53. package/lib/module/modules/button-group/ButtonGroup.js +36 -37
  54. package/lib/module/modules/button-group/ButtonGroup.variants.js +21 -46
  55. package/lib/module/modules/button-group/MODULE.md +25 -30
  56. package/lib/module/modules/card/Card.js +117 -19
  57. package/lib/module/modules/card/Card.variants.js +1 -0
  58. package/lib/module/modules/card/MODULE.md +13 -10
  59. package/lib/module/modules/charts/BarChart.js +29 -14
  60. package/lib/module/modules/charts/BarList.js +31 -18
  61. package/lib/module/modules/charts/Charts.variants.js +66 -2
  62. package/lib/module/modules/charts/DonutChart.js +9 -4
  63. package/lib/module/modules/charts/LineChart.js +5 -3
  64. package/lib/module/modules/charts/MODULE.md +24 -11
  65. package/lib/module/modules/charts/PieChart.js +13 -4
  66. package/lib/module/modules/charts/Sparkline.js +4 -2
  67. package/lib/module/modules/checkbox/Checkbox.js +10 -2
  68. package/lib/module/modules/checkbox/MODULE.md +5 -0
  69. package/lib/module/modules/chip/Chip.js +83 -38
  70. package/lib/module/modules/chip/Chip.variants.js +15 -3
  71. package/lib/module/modules/chip/MODULE.md +6 -4
  72. package/lib/module/modules/combobox/Combobox.js +93 -57
  73. package/lib/module/modules/combobox/Combobox.variants.js +22 -7
  74. package/lib/module/modules/combobox/MODULE.md +14 -4
  75. package/lib/module/modules/composer/Composer.js +9 -2
  76. package/lib/module/modules/composer/Composer.variants.js +2 -0
  77. package/lib/module/modules/composer/MODULE.md +5 -0
  78. package/lib/module/modules/copy-button/CopyButton.js +22 -4
  79. package/lib/module/modules/copy-button/CopyButton.variants.js +4 -2
  80. package/lib/module/modules/copy-button/MODULE.md +5 -0
  81. package/lib/module/modules/data-table/DataTable.js +28 -9
  82. package/lib/module/modules/data-table/DataTable.variants.js +3 -2
  83. package/lib/module/modules/data-table/MODULE.md +1 -0
  84. package/lib/module/modules/date-picker/Calendar.js +75 -29
  85. package/lib/module/modules/date-picker/DatePicker.variants.js +24 -9
  86. package/lib/module/modules/date-picker/MODULE.md +25 -4
  87. package/lib/module/modules/date-picker/PickerField.js +13 -4
  88. package/lib/module/modules/date-picker/PickerShell.js +2 -0
  89. package/lib/module/modules/date-picker/TimePicker.js +13 -18
  90. package/lib/module/modules/divider/Divider.variants.js +6 -5
  91. package/lib/module/modules/divider/MODULE.md +2 -0
  92. package/lib/module/modules/drawer/Drawer.js +20 -8
  93. package/lib/module/modules/drawer/Drawer.variants.js +4 -4
  94. package/lib/module/modules/drawer/MODULE.md +3 -0
  95. package/lib/module/modules/empty-state/EmptyState.js +18 -29
  96. package/lib/module/modules/empty-state/EmptyState.variants.js +7 -0
  97. package/lib/module/modules/empty-state/MODULE.md +1 -0
  98. package/lib/module/modules/fab/Fab.js +41 -61
  99. package/lib/module/modules/fab/Fab.variants.js +15 -1
  100. package/lib/module/modules/fab/FabGroup.js +84 -57
  101. package/lib/module/modules/fab/MODULE.md +19 -6
  102. package/lib/module/modules/file-grid/FileGrid.js +30 -16
  103. package/lib/module/modules/file-grid/FileGrid.variants.js +2 -2
  104. package/lib/module/modules/file-grid/MODULE.md +3 -1
  105. package/lib/module/modules/file-upload/FileUpload.variants.js +3 -1
  106. package/lib/module/modules/file-upload/MODULE.md +2 -0
  107. package/lib/module/modules/filter-sheet/FilterChip.js +11 -3
  108. package/lib/module/modules/filter-sheet/FilterSheetBody.js +15 -3
  109. package/lib/module/modules/filter-sheet/MODULE.md +9 -0
  110. package/lib/module/modules/folder-row/FolderRow.js +29 -17
  111. package/lib/module/modules/folder-row/FolderRow.variants.js +4 -2
  112. package/lib/module/modules/folder-row/MODULE.md +2 -1
  113. package/lib/module/modules/gantt/Gantt.js +30 -9
  114. package/lib/module/modules/gantt/Gantt.variants.js +36 -0
  115. package/lib/module/modules/gantt/MODULE.md +11 -1
  116. package/lib/module/modules/image-viewer/ImageViewer.js +35 -5
  117. package/lib/module/modules/image-viewer/MODULE.md +6 -0
  118. package/lib/module/modules/input/Input.js +20 -7
  119. package/lib/module/modules/input/Input.variants.js +8 -7
  120. package/lib/module/modules/input/MODULE.md +2 -0
  121. package/lib/module/modules/list-item/ListItem.js +48 -26
  122. package/lib/module/modules/list-item/ListItem.variants.js +11 -2
  123. package/lib/module/modules/list-item/MODULE.md +2 -3
  124. package/lib/module/modules/markdown/MODULE.md +8 -1
  125. package/lib/module/modules/markdown/Markdown.js +57 -22
  126. package/lib/module/modules/markdown/Markdown.variants.js +2 -1
  127. package/lib/module/modules/menu/MODULE.md +11 -0
  128. package/lib/module/modules/menu/Menu.js +99 -40
  129. package/lib/module/modules/menu/Menu.variants.js +3 -3
  130. package/lib/module/modules/message-bubble/MODULE.md +4 -1
  131. package/lib/module/modules/message-bubble/MessageBubble.js +4 -5
  132. package/lib/module/modules/message-bubble/MessageBubble.variants.js +5 -5
  133. package/lib/module/modules/modal/MODULE.md +11 -0
  134. package/lib/module/modules/modal/Modal.js +87 -35
  135. package/lib/module/modules/modal/Modal.variants.js +2 -2
  136. package/lib/module/modules/more-items/MODULE.md +5 -0
  137. package/lib/module/modules/more-items/MoreItems.js +7 -1
  138. package/lib/module/modules/more-items/MoreItems.variants.js +4 -1
  139. package/lib/module/modules/multi-select/MODULE.md +5 -0
  140. package/lib/module/modules/multi-select/MultiSelect.js +23 -1
  141. package/lib/module/modules/multi-select/MultiSelect.variants.js +4 -2
  142. package/lib/module/modules/number-input/MODULE.md +2 -1
  143. package/lib/module/modules/number-input/NumberInput.js +97 -84
  144. package/lib/module/modules/number-input/NumberInput.variants.js +9 -6
  145. package/lib/module/modules/org-switcher/MODULE.md +13 -1
  146. package/lib/module/modules/org-switcher/OrgSwitcher.js +13 -2
  147. package/lib/module/modules/org-switcher/OrgSwitcher.variants.js +4 -2
  148. package/lib/module/modules/pagination/MODULE.md +2 -2
  149. package/lib/module/modules/pagination/Pagination.js +76 -37
  150. package/lib/module/modules/pagination/Pagination.variants.js +4 -2
  151. package/lib/module/modules/pagination/PaginationControls.js +55 -35
  152. package/lib/module/modules/pin-input/MODULE.md +5 -1
  153. package/lib/module/modules/pin-input/PinInput.js +9 -2
  154. package/lib/module/modules/pin-input/PinInput.variants.js +2 -1
  155. package/lib/module/modules/radio-group/MODULE.md +2 -2
  156. package/lib/module/modules/radio-group/RadioGroup.js +122 -63
  157. package/lib/module/modules/radio-group/RadioGroup.variants.js +2 -1
  158. package/lib/module/modules/reorder/MODULE.md +2 -0
  159. package/lib/module/modules/reorder/Reorder.js +4 -3
  160. package/lib/module/modules/reorder/Reorder.variants.js +4 -2
  161. package/lib/module/modules/rich-text/MODULE.md +3 -1
  162. package/lib/module/modules/rich-text/RichText.js +42 -22
  163. package/lib/module/modules/rich-text-editor/MODULE.md +4 -1
  164. package/lib/module/modules/rich-text-editor/RichTextEditor.js +8 -1
  165. package/lib/module/modules/rich-text-editor/RichTextEditor.variants.js +9 -6
  166. package/lib/module/modules/screen/MODULE.md +7 -0
  167. package/lib/module/modules/screen/Screen.js +50 -17
  168. package/lib/module/modules/screen/Screen.variants.js +18 -0
  169. package/lib/module/modules/search-bar/MODULE.md +1 -0
  170. package/lib/module/modules/search-bar/SearchBar.js +46 -26
  171. package/lib/module/modules/search-bar/SearchBar.variants.js +11 -8
  172. package/lib/module/modules/section/MODULE.md +2 -0
  173. package/lib/module/modules/section/Section.js +8 -15
  174. package/lib/module/modules/section/Section.variants.js +1 -6
  175. package/lib/module/modules/segmented-control/MODULE.md +3 -1
  176. package/lib/module/modules/segmented-control/SegmentedControl.js +110 -46
  177. package/lib/module/modules/segmented-control/SegmentedControl.variants.js +3 -2
  178. package/lib/module/modules/select/MODULE.md +26 -5
  179. package/lib/module/modules/select/Select.js +39 -12
  180. package/lib/module/modules/select/Select.variants.js +36 -12
  181. package/lib/module/modules/skeleton/MODULE.md +23 -27
  182. package/lib/module/modules/skeleton/Skeleton.js +46 -51
  183. package/lib/module/modules/skeleton/Skeleton.variants.js +17 -75
  184. package/lib/module/modules/slider/MODULE.md +2 -0
  185. package/lib/module/modules/slider/Slider.js +2 -1
  186. package/lib/module/modules/stage-progress/MODULE.md +12 -8
  187. package/lib/module/modules/stage-progress/StageProgress.js +94 -47
  188. package/lib/module/modules/stage-progress/StageProgress.variants.js +17 -12
  189. package/lib/module/modules/stat-tile/MODULE.md +2 -0
  190. package/lib/module/modules/stat-tile/StatTile.js +15 -10
  191. package/lib/module/modules/stat-tile/StatTile.variants.js +2 -0
  192. package/lib/module/modules/state-block/MODULE.md +3 -0
  193. package/lib/module/modules/state-block/StateBlock.js +11 -6
  194. package/lib/module/modules/state-block/StateBlock.variants.js +7 -0
  195. package/lib/module/modules/surface/MODULE.md +59 -0
  196. package/lib/module/modules/surface/Surface.js +42 -0
  197. package/lib/module/modules/surface/Surface.variants.js +33 -0
  198. package/lib/module/modules/surface/index.js +4 -0
  199. package/lib/module/modules/swipeable-row/MODULE.md +9 -0
  200. package/lib/module/modules/swipeable-row/SwipeableRow.js +28 -7
  201. package/lib/module/modules/switch/MODULE.md +2 -0
  202. package/lib/module/modules/switch/Switch.js +8 -2
  203. package/lib/module/modules/tabs/MODULE.md +2 -1
  204. package/lib/module/modules/tabs/Tabs.js +37 -18
  205. package/lib/module/modules/tabs/Tabs.variants.js +4 -2
  206. package/lib/module/modules/text/MODULE.md +5 -2
  207. package/lib/module/modules/text/Text.js +18 -6
  208. package/lib/module/modules/text/Text.variants.js +108 -44
  209. package/lib/module/modules/textarea/MODULE.md +2 -0
  210. package/lib/module/modules/textarea/Textarea.js +3 -2
  211. package/lib/module/modules/textarea/Textarea.variants.js +2 -1
  212. package/lib/module/modules/toast/MODULE.md +8 -4
  213. package/lib/module/modules/toast/Toast.js +31 -13
  214. package/lib/module/modules/toast/Toast.variants.js +5 -0
  215. package/lib/module/modules/tooltip/MODULE.md +15 -11
  216. package/lib/module/modules/tooltip/Tooltip.js +41 -9
  217. package/lib/module/modules/tooltip/Tooltip.variants.js +8 -1
  218. package/lib/module/theme/MODULE.md +3 -1
  219. package/lib/module/theme/platform/MODULE.md +14 -2
  220. package/lib/module/theme/platform/elevation.native.js +0 -44
  221. package/lib/module/theme/platform/floatingSurface.native.js +75 -0
  222. package/lib/module/theme/platform/highlight.native.js +59 -0
  223. package/lib/module/theme/platform/index.js +5 -0
  224. package/lib/module/theme/platform/motion.native.js +31 -11
  225. package/lib/module/theme/platform/stateLayer.native.js +14 -0
  226. package/lib/module/theme/platform/surfaces.native.js +11 -0
  227. package/lib/module/theme/provider/PixelizeProvider.js +12 -5
  228. package/lib/module/theme/tokens/MODULE.md +32 -28
  229. package/lib/module/theme/tokens/THEME-CONTRACT.md +137 -0
  230. package/lib/module/theme/tokens/assertPalette.js +29 -0
  231. package/lib/module/theme/tokens/brands/emerald/palette.light.js +7 -6
  232. package/lib/module/theme/tokens/brands/lavender/palette.light.js +3 -2
  233. package/lib/module/theme/tokens/brands/meadow/palette.light.js +7 -6
  234. package/lib/module/theme/tokens/brands/radiant/palette.light.js +7 -6
  235. package/lib/module/theme/tokens/brands/rosewood/palette.light.js +7 -6
  236. package/lib/module/theme/tokens/brands/skyline/palette.light.js +7 -6
  237. package/lib/module/theme/tokens/brands/slate/palette.light.js +8 -10
  238. package/lib/module/theme/tokens/brands/storefront/palette.light.js +7 -6
  239. package/lib/module/theme/tokens/brands/zinc/palette.dark.js +3 -2
  240. package/lib/module/theme/tokens/brands/zinc/palette.light.js +3 -2
  241. package/lib/module/theme/tokens/builders/buildDarkPalette.js +3 -2
  242. package/lib/module/theme/tokens/builders/finalizePalette.js +34 -0
  243. package/lib/module/theme/tokens/builders/liftToContrast.js +44 -0
  244. package/lib/module/theme/tokens/builders/placeholderInk.js +22 -0
  245. package/lib/module/theme/tokens/builders/semanticText.js +14 -0
  246. package/lib/module/theme/tokens/builders/surfaceRungs.js +44 -0
  247. package/lib/module/theme/tokens/index.js +5 -0
  248. package/lib/module/theme/tokens/roles/index.js +5 -0
  249. package/lib/typescript/core/gradient/AccentGradientFill.d.ts +7 -0
  250. package/lib/typescript/core/gradient/darkenHex.d.ts +2 -0
  251. package/lib/typescript/core/gradient/gradientStops.d.ts +10 -0
  252. package/lib/typescript/core/gradient/index.d.ts +5 -0
  253. package/lib/typescript/core/gradient/withAlpha.d.ts +2 -0
  254. package/lib/typescript/core/haptics/context.d.ts +3 -0
  255. package/lib/typescript/core/haptics/haptics.d.ts +33 -0
  256. package/lib/typescript/core/haptics/index.d.ts +6 -0
  257. package/lib/typescript/core/haptics/useHaptics.d.ts +12 -0
  258. package/lib/typescript/core/icon/icons/trending-up.d.ts +3 -0
  259. package/lib/typescript/core/icon/names.d.ts +1 -1
  260. package/lib/typescript/core/media/expoImage.d.ts +15 -6
  261. package/lib/typescript/core/media/pickers.d.ts +5 -5
  262. package/lib/typescript/core/motion/config.d.ts +2 -1
  263. package/lib/typescript/core/motion/index.d.ts +3 -1
  264. package/lib/typescript/core/motion/usePressState.d.ts +21 -0
  265. package/lib/typescript/core/style/index.d.ts +1 -0
  266. package/lib/typescript/core/style/radius.d.ts +2 -0
  267. package/lib/typescript/index.d.ts +4 -2
  268. package/lib/typescript/modules/accordion/Accordion.variants.d.ts +2 -2
  269. package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts +1 -0
  270. package/lib/typescript/modules/avatar/Avatar.variants.d.ts +1 -1
  271. package/lib/typescript/modules/avatar-group/AvatarGroup.d.ts +4 -2
  272. package/lib/typescript/modules/avatar-group/AvatarGroup.variants.d.ts +19 -0
  273. package/lib/typescript/modules/banner/Banner.d.ts +2 -0
  274. package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts +1 -3
  275. package/lib/typescript/modules/bottom-sheet/BottomSheet.variants.d.ts +3 -1
  276. package/lib/typescript/modules/button/Button.d.ts +0 -25
  277. package/lib/typescript/modules/button/Button.variants.d.ts +6 -6
  278. package/lib/typescript/modules/button-group/ButtonGroup.d.ts +0 -19
  279. package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts +22 -56
  280. package/lib/typescript/modules/card/Card.d.ts +7 -5
  281. package/lib/typescript/modules/charts/Charts.variants.d.ts +29 -1
  282. package/lib/typescript/modules/chip/Chip.d.ts +3 -1
  283. package/lib/typescript/modules/chip/Chip.variants.d.ts +6 -2
  284. package/lib/typescript/modules/chip/index.d.ts +1 -1
  285. package/lib/typescript/modules/combobox/Combobox.variants.d.ts +17 -4
  286. package/lib/typescript/modules/data-table/DataTable.variants.d.ts +1 -1
  287. package/lib/typescript/modules/date-picker/DatePicker.variants.d.ts +15 -3
  288. package/lib/typescript/modules/date-picker/TimePicker.d.ts +1 -7
  289. package/lib/typescript/modules/divider/Divider.variants.d.ts +4 -4
  290. package/lib/typescript/modules/empty-state/EmptyState.d.ts +2 -0
  291. package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts +1 -0
  292. package/lib/typescript/modules/fab/Fab.variants.d.ts +2 -0
  293. package/lib/typescript/modules/folder-row/FolderRow.d.ts +0 -8
  294. package/lib/typescript/modules/gantt/Gantt.variants.d.ts +21 -0
  295. package/lib/typescript/modules/input/Input.variants.d.ts +6 -6
  296. package/lib/typescript/modules/list-item/ListItem.d.ts +1 -5
  297. package/lib/typescript/modules/list-item/ListItem.variants.d.ts +137 -1
  298. package/lib/typescript/modules/markdown/Markdown.d.ts +7 -0
  299. package/lib/typescript/modules/message-bubble/MessageBubble.d.ts +2 -2
  300. package/lib/typescript/modules/message-bubble/MessageBubble.variants.d.ts +1 -2
  301. package/lib/typescript/modules/number-input/NumberInput.variants.d.ts +7 -5
  302. package/lib/typescript/modules/pagination/PaginationControls.d.ts +1 -4
  303. package/lib/typescript/modules/reorder/Reorder.d.ts +1 -1
  304. package/lib/typescript/modules/screen/Screen.d.ts +3 -9
  305. package/lib/typescript/modules/screen/Screen.variants.d.ts +4 -0
  306. package/lib/typescript/modules/search-bar/SearchBar.variants.d.ts +6 -6
  307. package/lib/typescript/modules/section/Section.variants.d.ts +0 -3
  308. package/lib/typescript/modules/segmented-control/SegmentedControl.variants.d.ts +1 -1
  309. package/lib/typescript/modules/select/Select.d.ts +4 -1
  310. package/lib/typescript/modules/select/Select.variants.d.ts +22 -8
  311. package/lib/typescript/modules/select/index.d.ts +1 -1
  312. package/lib/typescript/modules/skeleton/Skeleton.d.ts +3 -18
  313. package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts +12 -68
  314. package/lib/typescript/modules/stage-progress/StageProgress.variants.d.ts +15 -6
  315. package/lib/typescript/modules/state-block/StateBlock.d.ts +4 -0
  316. package/lib/typescript/modules/state-block/StateBlock.variants.d.ts +1 -0
  317. package/lib/typescript/modules/surface/Surface.d.ts +19 -0
  318. package/lib/typescript/modules/surface/Surface.variants.d.ts +15 -0
  319. package/lib/typescript/modules/surface/index.d.ts +4 -0
  320. package/lib/typescript/modules/text/Text.d.ts +8 -4
  321. package/lib/typescript/modules/text/Text.variants.d.ts +14 -11
  322. package/lib/typescript/modules/toast/Toast.variants.d.ts +2 -0
  323. package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts +7 -0
  324. package/lib/typescript/theme/index.d.ts +1 -1
  325. package/lib/typescript/theme/platform/elevation.native.d.ts +0 -30
  326. package/lib/typescript/theme/platform/floatingSurface.native.d.ts +10 -0
  327. package/lib/typescript/theme/platform/highlight.native.d.ts +17 -0
  328. package/lib/typescript/theme/platform/index.d.ts +9 -0
  329. package/lib/typescript/theme/platform/motion.native.d.ts +33 -13
  330. package/lib/typescript/theme/platform/stateLayer.native.d.ts +11 -0
  331. package/lib/typescript/theme/platform/surfaces.native.d.ts +8 -0
  332. package/lib/typescript/theme/provider/PixelizeProvider.d.ts +1 -1
  333. package/lib/typescript/theme/provider/types.d.ts +8 -0
  334. package/lib/typescript/theme/tokens/assertPalette.d.ts +10 -0
  335. package/lib/typescript/theme/tokens/brands/emerald/palette.light.d.ts +4 -3
  336. package/lib/typescript/theme/tokens/brands/lavender/palette.light.d.ts +4 -3
  337. package/lib/typescript/theme/tokens/brands/meadow/palette.light.d.ts +4 -3
  338. package/lib/typescript/theme/tokens/brands/radiant/palette.light.d.ts +4 -3
  339. package/lib/typescript/theme/tokens/brands/rosewood/palette.light.d.ts +4 -3
  340. package/lib/typescript/theme/tokens/brands/skyline/palette.light.d.ts +4 -3
  341. package/lib/typescript/theme/tokens/brands/slate/palette.light.d.ts +4 -3
  342. package/lib/typescript/theme/tokens/brands/storefront/palette.light.d.ts +4 -3
  343. package/lib/typescript/theme/tokens/brands/zinc/palette.light.d.ts +4 -3
  344. package/lib/typescript/theme/tokens/builders/finalizePalette.d.ts +4 -0
  345. package/lib/typescript/theme/tokens/builders/liftToContrast.d.ts +9 -0
  346. package/lib/typescript/theme/tokens/builders/placeholderInk.d.ts +13 -0
  347. package/lib/typescript/theme/tokens/builders/semanticText.d.ts +4 -0
  348. package/lib/typescript/theme/tokens/builders/surfaceRungs.d.ts +12 -0
  349. package/lib/typescript/theme/tokens/index.d.ts +5 -0
  350. package/lib/typescript/theme/tokens/roles/index.d.ts +1 -0
  351. package/lib/typescript/theme/tokens/types.d.ts +8 -7
  352. package/package.json +10 -2
  353. package/registry.json +5 -0
@@ -35,19 +35,19 @@ export interface InputSizeSpec {
35
35
  */
36
36
  export declare const INPUT_SIZES: {
37
37
  readonly sm: {
38
- readonly height: 32;
38
+ readonly height: 44;
39
39
  readonly fontSize: 14;
40
40
  readonly iconSize: 16;
41
41
  readonly hitSlop: number;
42
42
  };
43
43
  readonly md: {
44
- readonly height: 40;
44
+ readonly height: 52;
45
45
  readonly fontSize: 16;
46
46
  readonly iconSize: 18;
47
47
  readonly hitSlop: number;
48
48
  };
49
49
  readonly lg: {
50
- readonly height: 48;
50
+ readonly height: 56;
51
51
  readonly fontSize: 18;
52
52
  readonly iconSize: 20;
53
53
  readonly hitSlop: number;
@@ -120,15 +120,15 @@ export declare function resolveInputAccessibility(input: InputAccessibilityInput
120
120
  export declare const inputStructure: import("../../core/style").ThemedVariantResolver<Theme, {
121
121
  size: {
122
122
  sm: {
123
- height: 32;
123
+ height: 44;
124
124
  paddingHorizontal: 12;
125
125
  };
126
126
  md: {
127
- height: 40;
127
+ height: 52;
128
128
  paddingHorizontal: 16;
129
129
  };
130
130
  lg: {
131
- height: 48;
131
+ height: 56;
132
132
  paddingHorizontal: 24;
133
133
  };
134
134
  };
@@ -1,8 +1,5 @@
1
1
  /**
2
- * ListItem — a row primitive. It is rendered AS a list cell at scale, so it carries no mount
3
- * animation and no loop: the only motion is `usePressMotion`, which starts on touch and runs on the
4
- * native driver. The pressable root is an animated `Pressable` rather than an `Animated.View`
5
- * wrapper so a 5000-row list pays for no extra node.
2
+ * ListItem — a row primitive. Press feedback uses `usePressState` (scale + state-layer overlay).
6
3
  */
7
4
  import type { ReactNode } from "react";
8
5
  import type { LayoutStyle } from "../../core/style";
@@ -13,7 +10,6 @@ export interface ListItemProps {
13
10
  trailing?: ReactNode;
14
11
  unread?: boolean;
15
12
  onPress?: () => void;
16
- /** Layout-only, outermost, applied exactly once as the LAST entry in the root style array. */
17
13
  style?: LayoutStyle;
18
14
  testID?: string;
19
15
  }
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import type { RoleColors, Theme } from "../../theme/hooks";
6
6
  export declare const LIST_ITEM_DOT_SIZE = 8;
7
- export declare const LIST_ITEM_MIN_HEIGHT = 44;
7
+ export declare const LIST_ITEM_MIN_HEIGHT = 56;
8
8
  export interface ListItemColors {
9
9
  /** `undefined` for a read row — the row stays transparent over whatever list background hosts it. */
10
10
  readonly background: string | undefined;
@@ -25,5 +25,141 @@ export interface ListItemAccessibilityProps {
25
25
  export declare function resolveListItemAccessibility(input: ListItemAccessibilityInput): ListItemAccessibilityProps;
26
26
  export declare const listItemStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
27
27
  export declare const listItemBodyStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
28
+ export declare function listItemRaisedStyle(theme: Theme): {
29
+ backfaceVisibility?: "visible" | "hidden" | undefined;
30
+ backgroundColor: import("react-native").ColorValue;
31
+ borderBlockColor?: import("react-native").ColorValue | undefined;
32
+ borderBlockEndColor?: import("react-native").ColorValue | undefined;
33
+ borderBlockStartColor?: import("react-native").ColorValue | undefined;
34
+ borderBottomColor?: import("react-native").ColorValue | undefined;
35
+ borderBottomEndRadius?: import("react-native").AnimatableNumericValue | string | undefined;
36
+ borderBottomLeftRadius?: import("react-native").AnimatableNumericValue | string | undefined;
37
+ borderBottomRightRadius?: import("react-native").AnimatableNumericValue | string | undefined;
38
+ borderBottomStartRadius?: import("react-native").AnimatableNumericValue | string | undefined;
39
+ borderColor?: import("react-native").ColorValue | undefined;
40
+ borderCurve?: "circular" | "continuous" | undefined;
41
+ borderEndColor?: import("react-native").ColorValue | undefined;
42
+ borderEndEndRadius?: import("react-native").AnimatableNumericValue | string | undefined;
43
+ borderEndStartRadius?: import("react-native").AnimatableNumericValue | string | undefined;
44
+ borderLeftColor?: import("react-native").ColorValue | undefined;
45
+ borderRadius?: import("react-native").AnimatableNumericValue | string | undefined;
46
+ borderRightColor?: import("react-native").ColorValue | undefined;
47
+ borderStartColor?: import("react-native").ColorValue | undefined;
48
+ borderStartEndRadius?: import("react-native").AnimatableNumericValue | string | undefined;
49
+ borderStartStartRadius?: import("react-native").AnimatableNumericValue | string | undefined;
50
+ borderStyle?: "solid" | "dotted" | "dashed" | undefined;
51
+ borderTopColor?: import("react-native").ColorValue | undefined;
52
+ borderTopEndRadius?: import("react-native").AnimatableNumericValue | string | undefined;
53
+ borderTopLeftRadius?: import("react-native").AnimatableNumericValue | string | undefined;
54
+ borderTopRightRadius?: import("react-native").AnimatableNumericValue | string | undefined;
55
+ borderTopStartRadius?: import("react-native").AnimatableNumericValue | string | undefined;
56
+ outlineColor?: import("react-native").ColorValue | undefined;
57
+ outlineOffset?: import("react-native").AnimatableNumericValue | undefined;
58
+ outlineStyle?: "solid" | "dotted" | "dashed" | undefined;
59
+ outlineWidth?: import("react-native").AnimatableNumericValue | undefined;
60
+ opacity?: import("react-native").AnimatableNumericValue | undefined;
61
+ elevation?: number | undefined;
62
+ pointerEvents?: "box-none" | "none" | "box-only" | "auto" | undefined;
63
+ isolation?: "auto" | "isolate" | undefined;
64
+ cursor?: import("react-native").CursorValue | undefined;
65
+ boxShadow?: ReadonlyArray<import("react-native").BoxShadowValue> | string | undefined;
66
+ filter?: ReadonlyArray<import("react-native").FilterFunction> | string | undefined;
67
+ mixBlendMode?: import("react-native").BlendMode | undefined;
68
+ experimental_backgroundImage?: ReadonlyArray<import("react-native").BackgroundImageValue> | string | undefined;
69
+ experimental_backgroundSize?: ReadonlyArray<import("react-native").BackgroundSizeValue> | string | undefined;
70
+ experimental_backgroundPosition?: ReadonlyArray<import("react-native").BackgroundPositionValue> | string | undefined;
71
+ experimental_backgroundRepeat?: ReadonlyArray<import("react-native").BackgroundRepeatValue> | string | undefined;
72
+ alignContent?: "flex-start" | "flex-end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | undefined;
73
+ alignItems?: import("react-native").FlexAlignType | undefined;
74
+ alignSelf?: "auto" | import("react-native").FlexAlignType | undefined;
75
+ aspectRatio?: number | string | undefined;
76
+ borderBottomWidth?: number | undefined;
77
+ borderEndWidth?: number | undefined;
78
+ borderLeftWidth?: number | undefined;
79
+ borderRightWidth?: number | undefined;
80
+ borderStartWidth?: number | undefined;
81
+ borderTopWidth?: number | undefined;
82
+ borderWidth?: number | undefined;
83
+ bottom?: import("react-native").DimensionValue | undefined;
84
+ boxSizing?: "border-box" | "content-box" | undefined;
85
+ display?: "none" | "flex" | "contents" | undefined;
86
+ end?: import("react-native").DimensionValue | undefined;
87
+ flex?: number | undefined;
88
+ flexBasis?: import("react-native").DimensionValue | undefined;
89
+ flexDirection?: "row" | "column" | "row-reverse" | "column-reverse" | undefined;
90
+ rowGap?: number | string | undefined;
91
+ gap?: number | string | undefined;
92
+ columnGap?: number | string | undefined;
93
+ flexGrow?: number | undefined;
94
+ flexShrink?: number | undefined;
95
+ flexWrap?: "wrap" | "nowrap" | "wrap-reverse" | undefined;
96
+ height?: import("react-native").DimensionValue | undefined;
97
+ justifyContent?: "flex-start" | "flex-end" | "center" | "space-between" | "space-around" | "space-evenly" | undefined;
98
+ left?: import("react-native").DimensionValue | undefined;
99
+ margin?: import("react-native").DimensionValue | undefined;
100
+ marginBottom?: import("react-native").DimensionValue | undefined;
101
+ marginEnd?: import("react-native").DimensionValue | undefined;
102
+ marginHorizontal?: import("react-native").DimensionValue | undefined;
103
+ marginLeft?: import("react-native").DimensionValue | undefined;
104
+ marginRight?: import("react-native").DimensionValue | undefined;
105
+ marginStart?: import("react-native").DimensionValue | undefined;
106
+ marginTop?: import("react-native").DimensionValue | undefined;
107
+ marginVertical?: import("react-native").DimensionValue | undefined;
108
+ maxHeight?: import("react-native").DimensionValue | undefined;
109
+ maxWidth?: import("react-native").DimensionValue | undefined;
110
+ minHeight?: import("react-native").DimensionValue | undefined;
111
+ minWidth?: import("react-native").DimensionValue | undefined;
112
+ overflow?: "visible" | "hidden" | "scroll" | undefined;
113
+ padding?: import("react-native").DimensionValue | undefined;
114
+ paddingBottom?: import("react-native").DimensionValue | undefined;
115
+ paddingEnd?: import("react-native").DimensionValue | undefined;
116
+ paddingHorizontal?: import("react-native").DimensionValue | undefined;
117
+ paddingLeft?: import("react-native").DimensionValue | undefined;
118
+ paddingRight?: import("react-native").DimensionValue | undefined;
119
+ paddingStart?: import("react-native").DimensionValue | undefined;
120
+ paddingTop?: import("react-native").DimensionValue | undefined;
121
+ paddingVertical?: import("react-native").DimensionValue | undefined;
122
+ position?: "absolute" | "relative" | "static" | undefined;
123
+ right?: import("react-native").DimensionValue | undefined;
124
+ start?: import("react-native").DimensionValue | undefined;
125
+ top?: import("react-native").DimensionValue | undefined;
126
+ width?: import("react-native").DimensionValue | undefined;
127
+ zIndex?: number | undefined;
128
+ direction?: "inherit" | "ltr" | "rtl" | undefined;
129
+ inset?: import("react-native").DimensionValue | undefined;
130
+ insetBlock?: import("react-native").DimensionValue | undefined;
131
+ insetBlockEnd?: import("react-native").DimensionValue | undefined;
132
+ insetBlockStart?: import("react-native").DimensionValue | undefined;
133
+ insetInline?: import("react-native").DimensionValue | undefined;
134
+ insetInlineEnd?: import("react-native").DimensionValue | undefined;
135
+ insetInlineStart?: import("react-native").DimensionValue | undefined;
136
+ marginBlock?: import("react-native").DimensionValue | undefined;
137
+ marginBlockEnd?: import("react-native").DimensionValue | undefined;
138
+ marginBlockStart?: import("react-native").DimensionValue | undefined;
139
+ marginInline?: import("react-native").DimensionValue | undefined;
140
+ marginInlineEnd?: import("react-native").DimensionValue | undefined;
141
+ marginInlineStart?: import("react-native").DimensionValue | undefined;
142
+ paddingBlock?: import("react-native").DimensionValue | undefined;
143
+ paddingBlockEnd?: import("react-native").DimensionValue | undefined;
144
+ paddingBlockStart?: import("react-native").DimensionValue | undefined;
145
+ paddingInline?: import("react-native").DimensionValue | undefined;
146
+ paddingInlineEnd?: import("react-native").DimensionValue | undefined;
147
+ paddingInlineStart?: import("react-native").DimensionValue | undefined;
148
+ shadowColor?: import("react-native").ColorValue | undefined;
149
+ shadowOffset?: Readonly<{
150
+ width: number;
151
+ height: number;
152
+ }> | undefined;
153
+ shadowOpacity?: import("react-native").AnimatableNumericValue | undefined;
154
+ shadowRadius?: number | undefined;
155
+ transform?: Readonly<import("react-native").MaximumOneOf<import("react-native").PerspectiveTransform & import("react-native").RotateTransform & import("react-native").RotateXTransform & import("react-native").RotateYTransform & import("react-native").RotateZTransform & import("react-native").ScaleTransform & import("react-native").ScaleXTransform & import("react-native").ScaleYTransform & import("react-native").TranslateXTransform & import("react-native").TranslateYTransform & import("react-native").SkewXTransform & import("react-native").SkewYTransform & import("react-native").MatrixTransform>[]> | string | undefined;
156
+ transformOrigin?: Array<string | number> | string | undefined;
157
+ transformMatrix?: Array<number> | undefined;
158
+ rotation?: import("react-native").AnimatableNumericValue | undefined;
159
+ scaleX?: import("react-native").AnimatableNumericValue | undefined;
160
+ scaleY?: import("react-native").AnimatableNumericValue | undefined;
161
+ translateX?: import("react-native").AnimatableNumericValue | undefined;
162
+ translateY?: import("react-native").AnimatableNumericValue | undefined;
163
+ };
28
164
  export declare const listItemDotStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
29
165
  //# sourceMappingURL=ListItem.variants.d.ts.map
@@ -12,5 +12,12 @@ export interface MarkdownProps {
12
12
  style?: LayoutStyle;
13
13
  testID?: string;
14
14
  }
15
+ /**
16
+ * Safety caps for pathological/misuse input, not windowing (see MODULE.md "Performance") — below
17
+ * these numbers a document renders exactly as before; above, an affordance mounts the real, full
18
+ * tree on press, so the WCAG 2.4.1 rotor contract holds once expanded.
19
+ */
20
+ export declare const MAX_RENDERED_BLOCKS = 300;
21
+ export declare const MAX_LIST_ITEMS = 50;
15
22
  export declare const Markdown: import("react").NamedExoticComponent<MarkdownProps>;
16
23
  //# sourceMappingURL=Markdown.d.ts.map
@@ -1,6 +1,6 @@
1
1
  /**
2
- * MessageBubble — a single chat turn bubble. User variant uses accent fill; assistant uses surface
3
- * card with border. Plain-text `content` only (rich assistant replies compose Markdown/RichText
2
+ * MessageBubble — a single chat turn bubble. User variant uses accent fill; assistant uses a tonal
3
+ * surface fill, no border. Plain-text `content` only (rich assistant replies compose Markdown/RichText
4
4
  * upstream).
5
5
  *
6
6
  * The accessible label names the sender ("You" / "Assistant") ahead of the content: alignment and
@@ -3,8 +3,8 @@ export type MessageBubbleVariant = "user" | "assistant";
3
3
  export interface MessageBubbleColors {
4
4
  readonly background: string;
5
5
  readonly text: string;
6
- readonly border?: string;
7
6
  }
7
+ /** Assistant separates from the canvas by tone (`bg.surface`) alone now — no hairline border. */
8
8
  export declare function resolveMessageBubbleColors(colors: RoleColors, variant: MessageBubbleVariant): MessageBubbleColors;
9
9
  export declare const messageBubbleStructure: import("../../core/style").ThemedVariantResolver<Theme, {
10
10
  variant: {
@@ -15,7 +15,6 @@ export declare const messageBubbleStructure: import("../../core/style").ThemedVa
15
15
  assistant: {
16
16
  alignSelf: "flex-start";
17
17
  borderBottomLeftRadius: 4;
18
- borderWidth: 1;
19
18
  };
20
19
  };
21
20
  }, import("react-native").ViewStyle>;
@@ -189,7 +189,7 @@ export declare const numberInputStructure: import("../../core/style").ThemedVari
189
189
  * `TextInput` carries: without it, the row's `alignItems: "center"` shrinks the button to its
190
190
  * intrinsic content height instead of the row's full `spec.height`, silently voiding the `hitSlop`
191
191
  * touch-target math (a real Wave-1 bug on Input — not one to repeat here). The corner radii on the
192
- * outer edge match the row's own `radii.base` so a pressed/focused fill doesn't square off past the
192
+ * outer edge match the row's own `radii.md` so a pressed/focused fill doesn't square off past the
193
193
  * row's rounded corner.
194
194
  */
195
195
  export declare const numberInputStepperStructure: import("../../core/style").ThemedVariantResolver<Theme, {
@@ -207,13 +207,15 @@ export declare const numberInputStepperStructure: import("../../core/style").The
207
207
  position: {
208
208
  leading: {
209
209
  borderRightWidth: 1;
210
- borderTopLeftRadius: 8;
211
- borderBottomLeftRadius: 8;
210
+ borderTopLeftRadius: 12;
211
+ borderBottomLeftRadius: 12;
212
+ borderCurve: "continuous";
212
213
  };
213
214
  trailing: {
214
215
  borderLeftWidth: 1;
215
- borderTopRightRadius: 8;
216
- borderBottomRightRadius: 8;
216
+ borderTopRightRadius: 12;
217
+ borderBottomRightRadius: 12;
218
+ borderCurve: "continuous";
217
219
  };
218
220
  };
219
221
  }, import("react-native").ViewStyle>;
@@ -1,8 +1,5 @@
1
1
  /**
2
- * PRIVATE sub-components (not exported from `index.ts`). One control per node, each `React.memo`'d
3
- * and fed primitives only, so a page change re-renders the two controls whose state actually
4
- * changed instead of the whole strip — and so no `onPress`/`style` closure is rebuilt per control
5
- * per render.
2
+ * PRIVATE sub-components for Pagination controls.
6
3
  */
7
4
  import type { IconName } from "../../core/icon";
8
5
  import type { Theme } from "../../theme/hooks";
@@ -11,7 +11,7 @@
11
11
  * preview offset is `resolveRowShift`, the dragged row's is the raw `translationY`.
12
12
  *
13
13
  * The list stays FULLY CONTROLLED: `items` is never mutated mid-drag. On release the pan hands off
14
- * to JS once (`runOnJS`) and commits `moveItem(items, startIndex, targetIndex)` through `onReorder`.
14
+ * to JS once (`scheduleOnRN`) and commits `moveItem(items, startIndex, targetIndex)` through `onReorder`.
15
15
  * Because the preview and the commit share the same splice semantics, the dragged row lands in the
16
16
  * slot its shifted neighbours already vacated — and passive rows snap back to 0 the instant
17
17
  * `activeIndex` goes idle, so no stale offset can outlive the drop.
@@ -1,20 +1,14 @@
1
1
  /**
2
2
  * Screen — a screen shell composing SafeArea, optional KeyboardAvoidingView, optional pull-to-refresh,
3
- * and async-state slots that swap in `LoadingState` / consumer-provided empty/error content instead of
4
- * `children`. Replaces the per-app `SafeAreaView` + `KeyboardAvoidingView` + `RefreshControl` wiring
5
- * that tickets/mobile and crm-mobile each re-declared.
6
- *
7
- * Requires `react-native-safe-area-context` — Screen's whole purpose is safe-area handling; consumers
8
- * using this module are expected to install that optional peer (see MODULE.md).
9
- *
10
- * No `accessibilityRole` of its own: like `Card`, this is a layout shell — children and composed
11
- * state blocks carry their own semantics.
3
+ * optional `appBar` slot with safe-area edge splitting, and async-state slots.
12
4
  */
13
5
  import type { ReactNode } from "react";
14
6
  import type { LayoutStyle } from "../../core/style";
15
7
  import type { ScreenEdge, ScreenState } from "./Screen.variants";
16
8
  export interface ScreenProps {
17
9
  children?: ReactNode;
10
+ /** Top header slot — receives top safe-area inset; body omits `top` from `edges`. */
11
+ appBar?: ReactNode;
18
12
  edges?: readonly ScreenEdge[];
19
13
  padded?: boolean;
20
14
  keyboardAvoiding?: boolean;
@@ -18,4 +18,8 @@ export declare const screenRootStructure: import("../../core/style").ThemedVaria
18
18
  export declare const screenPaddedStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
19
19
  export declare const screenStateSlotStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
20
20
  export declare const screenScrollContentStructure: import("../../core/style").VariantResolver<import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
21
+ export declare const screenBodyStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
22
+ export declare const screenShellStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
23
+ export declare function resolveScreenBodyEdges(edges: readonly ScreenEdge[], hasAppBar: boolean): readonly ScreenEdge[];
24
+ export declare function resolveScreenAppBarEdges(edges: readonly ScreenEdge[], hasAppBar: boolean): readonly ScreenEdge[];
21
25
  //# sourceMappingURL=Screen.variants.d.ts.map
@@ -32,13 +32,13 @@ export interface SearchBarSizeSpec {
32
32
  */
33
33
  export declare const SEARCH_BAR_SIZES: {
34
34
  readonly sm: {
35
- readonly height: 32;
35
+ readonly height: 44;
36
36
  readonly fontSize: 14;
37
37
  readonly iconSize: 16;
38
38
  readonly hitSlop: number;
39
39
  };
40
40
  readonly md: {
41
- readonly height: 40;
41
+ readonly height: 52;
42
42
  readonly fontSize: 16;
43
43
  readonly iconSize: 18;
44
44
  readonly hitSlop: number;
@@ -146,11 +146,11 @@ export declare const searchBarRowStructure: import("../../core/style").ThemedVar
146
146
  export declare const searchBarFieldStructure: import("../../core/style").ThemedVariantResolver<Theme, {
147
147
  size: {
148
148
  sm: {
149
- height: 32;
149
+ height: 44;
150
150
  paddingHorizontal: 12;
151
151
  };
152
152
  md: {
153
- height: 40;
153
+ height: 52;
154
154
  paddingHorizontal: 16;
155
155
  };
156
156
  };
@@ -169,10 +169,10 @@ export declare const searchBarClearStructure: import("../../core/style").ThemedV
169
169
  export declare const searchBarCancelStructure: import("../../core/style").ThemedVariantResolver<Theme, {
170
170
  size: {
171
171
  sm: {
172
- height: 32;
172
+ height: 44;
173
173
  };
174
174
  md: {
175
- height: 40;
175
+ height: 52;
176
176
  };
177
177
  };
178
178
  }, import("react-native").ViewStyle>;
@@ -1,6 +1,3 @@
1
- /**
2
- * Section's style resolution — same split as `Divider.variants` / `Card.variants`.
3
- */
4
1
  import type { RoleColors, Theme } from "../../theme/hooks";
5
2
  export interface SectionColors {
6
3
  readonly border: string;
@@ -101,7 +101,7 @@ export declare function resolveSegmentedControlSegmentHitSlop(size: SegmentedCon
101
101
  /** The outer track — padded so the pill has room to sit inset from the track's own edge. */
102
102
  export declare const segmentedControlTrackStructure: import("../../core/style").ThemedVariantResolver<Theme, import("../../core/style").VariantGroups<import("react-native").ViewStyle>, import("react-native").ViewStyle>;
103
103
  /**
104
- * The pill. `theme.radii.sm` — one step down from the track's `theme.radii.base` — nests cleanly
104
+ * The pill. `theme.radii.sm` — one step down from the track's `theme.radii.md` — nests cleanly
105
105
  * inside the track's own `space[1]` inset, the same "inner radius ≈ outer radius − inset" geometry
106
106
  * a nested rounded rect needs to read as concentric rather than mismatched. `top`/`bottom` pin it to
107
107
  * the row's own height (set by the segments, its flow siblings); `left`/`width` are driven by
@@ -3,11 +3,14 @@
3
3
  */
4
4
  import type { ReactNode } from "react";
5
5
  import type { LayoutStyle } from "../../core/style";
6
- import type { SelectSize } from "./Select.variants";
6
+ import type { SelectOptionCustomColors, SelectOptionTone, SelectSize } from "./Select.variants";
7
7
  export interface SelectOption {
8
8
  readonly label: string;
9
9
  readonly value: string;
10
10
  readonly leading?: ReactNode;
11
+ readonly tone?: SelectOptionTone;
12
+ /** Required when `tone="custom"`. */
13
+ readonly customColors?: SelectOptionCustomColors;
11
14
  }
12
15
  export interface SelectProps {
13
16
  options: SelectOption[];
@@ -11,7 +11,7 @@
11
11
  * directly (mocking only `react-native`'s `StyleSheet`, as `core/style` does).
12
12
  */
13
13
  import type { AccessibilityRole } from "react-native";
14
- import type { RoleColors, Theme } from "../../theme/hooks";
14
+ import type { RoleColors, StatusRole, Theme } from "../../theme/hooks";
15
15
  export type SelectSize = "sm" | "md" | "lg";
16
16
  /**
17
17
  * The option list's container role. RN 0.86's role unions have no `listbox` — both `Role` and
@@ -20,6 +20,14 @@ export type SelectSize = "sm" | "md" | "lg";
20
20
  * emits the string as the DOM `role` verbatim, and native maps roles it doesn't know to nothing.
21
21
  */
22
22
  export declare const SELECT_LISTBOX_ROLE: AccessibilityRole;
23
+ /**
24
+ * Each option row's role. `aria-selected` is only valid ARIA on `option`/`row`/`tab`/`gridcell`/
25
+ * `treeitem` — the row sits inside a `SELECT_LISTBOX_ROLE` container, so `option` is the
26
+ * textbook-correct pairing (2026-08 sweep fixed the row from the invalid `menuitem`+`aria-selected`
27
+ * combination). Same type gap as `SELECT_LISTBOX_ROLE`: RN 0.86's `AccessibilityRole` union has no
28
+ * `option` either.
29
+ */
30
+ export declare const SELECT_OPTION_ROLE: AccessibilityRole;
23
31
  /** Same touch-target floor as Button (44dp — Apple HIG minimum, WCAG 2.5.5 AAA). */
24
32
  export declare const MIN_TOUCH_TARGET = 44;
25
33
  export interface SelectSizeSpec {
@@ -34,26 +42,26 @@ export interface SelectSizeSpec {
34
42
  }
35
43
  export declare const SELECT_SIZES: {
36
44
  readonly sm: {
37
- readonly height: 32;
45
+ readonly height: 44;
38
46
  readonly fontSize: 14;
39
47
  readonly iconSize: 16;
40
48
  readonly hitSlop: number;
41
49
  };
42
50
  readonly md: {
43
- readonly height: 40;
51
+ readonly height: 52;
44
52
  readonly fontSize: 16;
45
53
  readonly iconSize: 18;
46
54
  readonly hitSlop: number;
47
55
  };
48
56
  readonly lg: {
49
- readonly height: 48;
57
+ readonly height: 56;
50
58
  readonly fontSize: 18;
51
59
  readonly iconSize: 20;
52
60
  readonly hitSlop: number;
53
61
  };
54
62
  };
55
63
  /** Minimum height for an option row — a list item is still an interactive target (WCAG 2.5.8). */
56
- export declare const SELECT_ROW_MIN_HEIGHT = 44;
64
+ export declare const SELECT_ROW_MIN_HEIGHT = 48;
57
65
  /** The "check" glyph beside the active row. Fixed — independent of the trigger's own `size`. */
58
66
  export declare const SELECT_ROW_ICON_SIZE = 18;
59
67
  export interface SelectTriggerColors {
@@ -92,6 +100,12 @@ export interface SelectRowColors {
92
100
  readonly pressedRow: string;
93
101
  }
94
102
  export declare function resolveSelectRowColors(colors: RoleColors): SelectRowColors;
103
+ export type SelectOptionTone = "accent" | "neutral" | StatusRole | "custom";
104
+ export type SelectOptionCustomColors = {
105
+ readonly bg: string;
106
+ readonly fg: string;
107
+ };
108
+ export declare function resolveSelectOptionLabelColor(colors: RoleColors, tone: SelectOptionTone | undefined, customColors: SelectOptionCustomColors | undefined): string;
95
109
  export interface SelectAccessibilityInput {
96
110
  readonly disabled?: boolean | undefined;
97
111
  readonly open: boolean;
@@ -118,15 +132,15 @@ export declare function resolveSelectAccessibility(input: SelectAccessibilityInp
118
132
  export declare const selectTriggerStructure: import("../../core/style").ThemedVariantResolver<Theme, {
119
133
  size: {
120
134
  sm: {
121
- height: 32;
135
+ height: 44;
122
136
  paddingHorizontal: 12;
123
137
  };
124
138
  md: {
125
- height: 40;
139
+ height: 52;
126
140
  paddingHorizontal: 16;
127
141
  };
128
142
  lg: {
129
- height: 48;
143
+ height: 56;
130
144
  paddingHorizontal: 24;
131
145
  };
132
146
  };
@@ -5,5 +5,5 @@
5
5
  */
6
6
  export { Select } from "./Select";
7
7
  export type { SelectProps, SelectOption } from "./Select";
8
- export type { SelectSize } from "./Select.variants";
8
+ export type { SelectOptionCustomColors, SelectOptionTone, SelectSize, } from "./Select.variants";
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1,30 +1,15 @@
1
1
  /**
2
- * Skeleton — a loading placeholder box that shimmers while the real content it stands in for is
3
- * still on its way. It is its own size (`width`/`height` are component-owned props, not
4
- * `LayoutStyle` — sizing IS the point of this component) and has exactly one neutral appearance:
5
- * a resting `bg.sunken` fill cross-faded with a fixed-alpha `fg.default` overlay composited over it
6
- * (see `resolveSkeletonColors`), pulsing on an `Animated` opacity loop. Purely decorative by default
7
- * (see `Skeleton.variants.ts` →
8
- * `resolveSkeletonAccessibility`, the same "decorative unless labelled" contract as `Avatar`).
9
- *
10
- * The shimmer is gated on `motion.decorative`, so it runs on high-tier devices only. A skeleton is
11
- * usually rendered one-per-row across a whole loading list, and a per-row loop is the single most
12
- * expensive thing a placeholder can do — low/mid tiers and reduce-motion get the static fill. Even
13
- * on high tier the loop is shaped so it costs zero JS per iteration: see the effect below.
2
+ * Skeleton — a loading placeholder with a translating highlight-band shimmer over a neutral base.
14
3
  */
15
4
  import type { LayoutStyle } from "../../core/style";
16
5
  import type { SkeletonShape } from "./Skeleton.variants";
17
6
  export interface SkeletonProps {
18
7
  shape?: SkeletonShape;
19
- /** Component-owned sizing, in dp — not `LayoutStyle`. Falls back to a per-shape default. */
20
8
  width?: number;
21
9
  height?: number;
22
- /**
23
- * Decorative by default — hidden from assistive tech (`Avatar`'s optional-label contract).
24
- * Pass a label (e.g. `"Loading"`) to instead expose this as one `progressbar`-role element.
25
- */
10
+ /** Stagger sibling skeletons by index × 100ms (80–120ms band). */
11
+ staggerIndex?: number;
26
12
  accessibilityLabel?: string;
27
- /** Layout-only, outermost, applied exactly once as the LAST entry in the root style array. */
28
13
  style?: LayoutStyle;
29
14
  testID?: string;
30
15
  }