pixelize-native-library 1.0.7 → 1.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 (1072) hide show
  1. package/lib/module/core/MODULE.md +129 -36
  2. package/lib/module/core/a11y/MODULE.md +127 -4
  3. package/lib/module/core/a11y/announce.js +30 -0
  4. package/lib/module/core/a11y/announce.web.js +134 -0
  5. package/lib/module/core/a11y/index.js +81 -15
  6. package/lib/module/core/a11y/keyboard.js +42 -0
  7. package/lib/module/core/a11y/keyboard.web.js +229 -0
  8. package/lib/module/core/a11y/labels.js +24 -0
  9. package/lib/module/core/device/MODULE.md +47 -0
  10. package/lib/module/core/device/index.js +91 -0
  11. package/lib/module/core/heading/MODULE.md +38 -0
  12. package/lib/module/core/heading/index.js +45 -0
  13. package/lib/module/core/icon/Icon.js +37 -0
  14. package/lib/module/core/icon/MODULE.md +42 -8
  15. package/lib/module/core/icon/icons/arrow-down.js +10 -0
  16. package/lib/module/core/icon/icons/arrow-left.js +10 -0
  17. package/lib/module/core/icon/icons/arrow-right.js +10 -0
  18. package/lib/module/core/icon/icons/arrow-up.js +10 -0
  19. package/lib/module/core/icon/icons/at-sign.js +10 -0
  20. package/lib/module/core/icon/icons/bell.js +10 -0
  21. package/lib/module/core/icon/icons/bold.js +10 -0
  22. package/lib/module/core/icon/icons/building-2.js +10 -0
  23. package/lib/module/core/icon/icons/calendar.js +10 -0
  24. package/lib/module/core/icon/icons/chart-column.js +10 -0
  25. package/lib/module/core/icon/icons/check.js +10 -0
  26. package/lib/module/core/icon/icons/chevron-down.js +10 -0
  27. package/lib/module/core/icon/icons/chevron-left.js +10 -0
  28. package/lib/module/core/icon/icons/chevron-right.js +10 -0
  29. package/lib/module/core/icon/icons/chevron-up.js +10 -0
  30. package/lib/module/core/icon/icons/chevrons-left.js +10 -0
  31. package/lib/module/core/icon/icons/chevrons-right.js +10 -0
  32. package/lib/module/core/icon/icons/chevrons-up-down.js +10 -0
  33. package/lib/module/core/icon/icons/circle-alert.js +10 -0
  34. package/lib/module/core/icon/icons/circle-check.js +10 -0
  35. package/lib/module/core/icon/icons/clock.js +10 -0
  36. package/lib/module/core/icon/icons/code.js +10 -0
  37. package/lib/module/core/icon/icons/download.js +10 -0
  38. package/lib/module/core/icon/icons/external-link.js +10 -0
  39. package/lib/module/core/icon/icons/eye.js +10 -0
  40. package/lib/module/core/icon/icons/file-text.js +10 -0
  41. package/lib/module/core/icon/icons/filter.js +10 -0
  42. package/lib/module/core/icon/icons/flag.js +10 -0
  43. package/lib/module/core/icon/icons/folder.js +10 -0
  44. package/lib/module/core/icon/icons/heading-1.js +10 -0
  45. package/lib/module/core/icon/icons/heading-2.js +10 -0
  46. package/lib/module/core/icon/icons/heading-3.js +10 -0
  47. package/lib/module/core/icon/icons/image.js +10 -0
  48. package/lib/module/core/icon/icons/inbox.js +10 -0
  49. package/lib/module/core/icon/icons/info.js +10 -0
  50. package/lib/module/core/icon/icons/italic.js +10 -0
  51. package/lib/module/core/icon/icons/kanban.js +10 -0
  52. package/lib/module/core/icon/icons/layers.js +10 -0
  53. package/lib/module/core/icon/icons/layout-dashboard.js +10 -0
  54. package/lib/module/core/icon/icons/layout-template.js +10 -0
  55. package/lib/module/core/icon/icons/life-buoy.js +10 -0
  56. package/lib/module/core/icon/icons/link.js +10 -0
  57. package/lib/module/core/icon/icons/list-checks.js +10 -0
  58. package/lib/module/core/icon/icons/list-ordered.js +10 -0
  59. package/lib/module/core/icon/icons/list-todo.js +10 -0
  60. package/lib/module/core/icon/icons/list.js +10 -0
  61. package/lib/module/core/icon/icons/log-out.js +10 -0
  62. package/lib/module/core/icon/icons/map.js +10 -0
  63. package/lib/module/core/icon/icons/message-square.js +10 -0
  64. package/lib/module/core/icon/icons/milestone.js +10 -0
  65. package/lib/module/core/icon/icons/minus.js +10 -0
  66. package/lib/module/core/icon/icons/more-horizontal.js +10 -0
  67. package/lib/module/core/icon/icons/paperclip.js +10 -0
  68. package/lib/module/core/icon/icons/pencil.js +10 -0
  69. package/lib/module/core/icon/icons/plus.js +10 -0
  70. package/lib/module/core/icon/icons/quote.js +10 -0
  71. package/lib/module/core/icon/icons/refresh-cw.js +10 -0
  72. package/lib/module/core/icon/icons/save.js +10 -0
  73. package/lib/module/core/icon/icons/search.js +10 -0
  74. package/lib/module/core/icon/icons/send.js +10 -0
  75. package/lib/module/core/icon/icons/settings.js +10 -0
  76. package/lib/module/core/icon/icons/share.js +10 -0
  77. package/lib/module/core/icon/icons/square-code.js +10 -0
  78. package/lib/module/core/icon/icons/star.js +10 -0
  79. package/lib/module/core/icon/icons/strikethrough.js +10 -0
  80. package/lib/module/core/icon/icons/tag.js +10 -0
  81. package/lib/module/core/icon/icons/trash.js +10 -0
  82. package/lib/module/core/icon/icons/triangle-alert.js +10 -0
  83. package/lib/module/core/icon/icons/underline.js +10 -0
  84. package/lib/module/core/icon/icons/upload.js +10 -0
  85. package/lib/module/core/icon/icons/user.js +10 -0
  86. package/lib/module/core/icon/icons/users.js +10 -0
  87. package/lib/module/core/icon/icons/x.js +10 -0
  88. package/lib/module/core/icon/index.js +4 -153
  89. package/lib/module/core/icon/names.js +2 -0
  90. package/lib/module/core/icon/resolve.js +158 -0
  91. package/lib/module/core/icon/types.js +4 -0
  92. package/lib/module/core/list/VirtualList.js +226 -0
  93. package/lib/module/core/list/index.js +4 -0
  94. package/lib/module/core/media/MediaImage.js +51 -0
  95. package/lib/module/core/media/expoImage.js +20 -0
  96. package/lib/module/core/media/index.js +6 -0
  97. package/lib/module/core/media/pickers.js +23 -0
  98. package/lib/module/core/motion/MODULE.md +101 -0
  99. package/lib/module/core/motion/config.js +112 -0
  100. package/lib/module/core/motion/index.js +7 -0
  101. package/lib/module/core/motion/presets.js +192 -0
  102. package/lib/module/core/motion/useAnimatedValue.js +19 -0
  103. package/lib/module/core/motion/useMotion.js +46 -0
  104. package/lib/module/core/style/index.js +2 -0
  105. package/lib/module/core/style/sx.js +76 -0
  106. package/lib/module/core/style/useThemedStyles.js +8 -0
  107. package/lib/module/index.js +70 -2
  108. package/lib/module/modules/accordion/Accordion.js +256 -87
  109. package/lib/module/modules/accordion/Accordion.variants.js +2 -4
  110. package/lib/module/modules/accordion/MODULE.md +35 -11
  111. package/lib/module/modules/alert-dialog/AlertDialog.js +1 -1
  112. package/lib/module/modules/alert-dialog/MODULE.md +11 -2
  113. package/lib/module/modules/app-bar/AppBar.js +179 -0
  114. package/lib/module/modules/app-bar/AppBar.variants.js +72 -0
  115. package/lib/module/modules/app-bar/MODULE.md +68 -0
  116. package/lib/module/modules/app-bar/index.js +10 -0
  117. package/lib/module/modules/avatar/Avatar.js +38 -18
  118. package/lib/module/modules/avatar/Avatar.variants.js +44 -3
  119. package/lib/module/modules/avatar/MODULE.md +37 -15
  120. package/lib/module/modules/avatar-group/AvatarGroup.js +77 -0
  121. package/lib/module/modules/avatar-group/AvatarGroup.variants.js +109 -0
  122. package/lib/module/modules/avatar-group/MODULE.md +28 -0
  123. package/lib/module/modules/avatar-group/index.js +10 -0
  124. package/lib/module/modules/badge/Badge.js +3 -2
  125. package/lib/module/modules/badge/Badge.variants.js +12 -2
  126. package/lib/module/modules/badge/MODULE.md +6 -0
  127. package/lib/module/modules/banner/Banner.js +135 -0
  128. package/lib/module/modules/banner/Banner.variants.js +118 -0
  129. package/lib/module/modules/banner/MODULE.md +113 -0
  130. package/lib/module/modules/banner/index.js +4 -0
  131. package/lib/module/modules/bottom-nav/BottomNav.js +37 -126
  132. package/lib/module/modules/bottom-nav/BottomNav.variants.js +28 -9
  133. package/lib/module/modules/bottom-nav/BottomNavIconWithBadge.js +56 -8
  134. package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js +133 -114
  135. package/lib/module/modules/bottom-nav/BottomNavTab.js +138 -0
  136. package/lib/module/modules/bottom-nav/MODULE.md +21 -6
  137. package/lib/module/modules/bottom-sheet/BottomSheet.js +189 -0
  138. package/lib/module/modules/bottom-sheet/BottomSheet.variants.js +49 -0
  139. package/lib/module/modules/bottom-sheet/MODULE.md +53 -0
  140. package/lib/module/modules/bottom-sheet/index.js +4 -0
  141. package/lib/module/modules/button/Button.js +98 -47
  142. package/lib/module/modules/button/Button.variants.js +12 -7
  143. package/lib/module/modules/button/MODULE.md +25 -3
  144. package/lib/module/modules/button-group/ButtonGroup.js +163 -55
  145. package/lib/module/modules/button-group/ButtonGroup.variants.js +30 -4
  146. package/lib/module/modules/button-group/MODULE.md +33 -7
  147. package/lib/module/modules/card/Card.js +10 -7
  148. package/lib/module/modules/card/MODULE.md +6 -0
  149. package/lib/module/modules/charts/BarChart.js +242 -0
  150. package/lib/module/modules/charts/BarList.js +98 -48
  151. package/lib/module/modules/charts/ChartLegend.js +154 -0
  152. package/lib/module/modules/charts/Charts.variants.js +524 -1
  153. package/lib/module/modules/charts/DonutChart.js +100 -65
  154. package/lib/module/modules/charts/LineChart.js +179 -0
  155. package/lib/module/modules/charts/MODULE.md +148 -22
  156. package/lib/module/modules/charts/PieChart.js +140 -0
  157. package/lib/module/modules/charts/Sparkline.js +5 -4
  158. package/lib/module/modules/charts/index.js +3 -0
  159. package/lib/module/modules/checkbox/Checkbox.js +114 -44
  160. package/lib/module/modules/checkbox/Checkbox.variants.js +13 -8
  161. package/lib/module/modules/checkbox/MODULE.md +35 -8
  162. package/lib/module/modules/chip/Chip.js +155 -0
  163. package/lib/module/modules/chip/Chip.variants.js +278 -0
  164. package/lib/module/modules/chip/ChipGroup.js +48 -0
  165. package/lib/module/modules/chip/MODULE.md +156 -0
  166. package/lib/module/modules/chip/index.js +13 -0
  167. package/lib/module/modules/combobox/Combobox.js +587 -0
  168. package/lib/module/modules/combobox/Combobox.variants.js +280 -0
  169. package/lib/module/modules/combobox/MODULE.md +183 -0
  170. package/lib/module/modules/combobox/comboboxKeys.js +19 -0
  171. package/lib/module/modules/combobox/comboboxKeys.web.js +76 -0
  172. package/lib/module/modules/combobox/index.js +13 -0
  173. package/lib/module/modules/composer/Composer.js +156 -0
  174. package/lib/module/modules/composer/Composer.variants.js +42 -0
  175. package/lib/module/modules/composer/MODULE.md +70 -0
  176. package/lib/module/modules/composer/index.js +4 -0
  177. package/lib/module/modules/copy-button/CopyButton.js +156 -0
  178. package/lib/module/modules/copy-button/CopyButton.variants.js +86 -0
  179. package/lib/module/modules/copy-button/MODULE.md +73 -0
  180. package/lib/module/modules/copy-button/index.js +4 -0
  181. package/lib/module/modules/data-table/DataTable.js +513 -0
  182. package/lib/module/modules/data-table/DataTable.variants.js +188 -0
  183. package/lib/module/modules/data-table/MODULE.md +145 -0
  184. package/lib/module/modules/data-table/index.js +10 -0
  185. package/lib/module/modules/date-picker/Calendar.js +368 -0
  186. package/lib/module/modules/date-picker/Calendar.keys.js +23 -0
  187. package/lib/module/modules/date-picker/Calendar.keys.web.js +83 -0
  188. package/lib/module/modules/date-picker/DatePicker.js +162 -0
  189. package/lib/module/modules/date-picker/DatePicker.variants.js +686 -0
  190. package/lib/module/modules/date-picker/DateRangePicker.js +87 -0
  191. package/lib/module/modules/date-picker/MODULE.md +169 -0
  192. package/lib/module/modules/date-picker/PickerField.js +142 -0
  193. package/lib/module/modules/date-picker/PickerShell.js +132 -0
  194. package/lib/module/modules/date-picker/TimePicker.js +184 -0
  195. package/lib/module/modules/date-picker/index.js +14 -0
  196. package/lib/module/modules/divider/Divider.js +8 -7
  197. package/lib/module/modules/divider/MODULE.md +6 -0
  198. package/lib/module/modules/drawer/Drawer.js +140 -58
  199. package/lib/module/modules/drawer/Drawer.variants.js +3 -16
  200. package/lib/module/modules/drawer/MODULE.md +90 -118
  201. package/lib/module/modules/empty-state/EmptyState.js +32 -18
  202. package/lib/module/modules/empty-state/EmptyState.variants.js +9 -0
  203. package/lib/module/modules/empty-state/MODULE.md +25 -7
  204. package/lib/module/modules/fab/Fab.js +212 -0
  205. package/lib/module/modules/fab/Fab.variants.js +346 -0
  206. package/lib/module/modules/fab/FabGroup.js +334 -0
  207. package/lib/module/modules/fab/MODULE.md +181 -0
  208. package/lib/module/modules/fab/index.js +13 -0
  209. package/lib/module/modules/file-grid/FileGrid.js +149 -0
  210. package/lib/module/modules/file-grid/FileGrid.variants.js +51 -0
  211. package/lib/module/modules/file-grid/MODULE.md +12 -0
  212. package/lib/module/modules/file-grid/index.js +4 -0
  213. package/lib/module/modules/file-upload/FileUpload.js +124 -34
  214. package/lib/module/modules/file-upload/FileUpload.variants.js +50 -7
  215. package/lib/module/modules/file-upload/MODULE.md +22 -4
  216. package/lib/module/modules/filter-sheet/FilterChip.js +25 -19
  217. package/lib/module/modules/filter-sheet/FilterSheet.js +17 -11
  218. package/lib/module/modules/filter-sheet/FilterSheet.variants.js +24 -5
  219. package/lib/module/modules/filter-sheet/FilterSheetBody.js +168 -82
  220. package/lib/module/modules/filter-sheet/MODULE.md +22 -1
  221. package/lib/module/modules/folder-row/FolderRow.js +132 -0
  222. package/lib/module/modules/folder-row/FolderRow.variants.js +49 -0
  223. package/lib/module/modules/folder-row/MODULE.md +71 -0
  224. package/lib/module/modules/folder-row/index.js +4 -0
  225. package/lib/module/modules/form-field/FormField.js +104 -0
  226. package/lib/module/modules/form-field/FormField.variants.js +88 -0
  227. package/lib/module/modules/form-field/MODULE.md +103 -0
  228. package/lib/module/modules/form-field/index.js +4 -0
  229. package/lib/module/modules/gantt/Gantt.js +218 -0
  230. package/lib/module/modules/gantt/Gantt.variants.js +141 -0
  231. package/lib/module/modules/gantt/MODULE.md +71 -0
  232. package/lib/module/modules/gantt/index.js +5 -0
  233. package/lib/module/modules/image-viewer/ImageViewer.js +235 -0
  234. package/lib/module/modules/image-viewer/ImageViewer.variants.js +6 -0
  235. package/lib/module/modules/image-viewer/MODULE.md +57 -0
  236. package/lib/module/modules/image-viewer/index.js +4 -0
  237. package/lib/module/modules/input/Input.js +106 -48
  238. package/lib/module/modules/input/Input.variants.js +18 -4
  239. package/lib/module/modules/input/MODULE.md +36 -6
  240. package/lib/module/modules/limit-reached-modal/LimitReachedModal.js +90 -0
  241. package/lib/module/modules/limit-reached-modal/LimitReachedModal.variants.js +108 -0
  242. package/lib/module/modules/limit-reached-modal/MODULE.md +94 -0
  243. package/lib/module/modules/limit-reached-modal/index.js +11 -0
  244. package/lib/module/modules/list-item/ListItem.js +45 -28
  245. package/lib/module/modules/list-item/MODULE.md +6 -0
  246. package/lib/module/modules/markdown/MODULE.md +32 -5
  247. package/lib/module/modules/markdown/Markdown.js +54 -20
  248. package/lib/module/modules/markdown/Markdown.variants.js +6 -1
  249. package/lib/module/modules/markdown/parseMarkdown.js +3 -3
  250. package/lib/module/modules/menu/MODULE.md +45 -14
  251. package/lib/module/modules/menu/Menu.js +174 -65
  252. package/lib/module/modules/menu/Menu.variants.js +10 -0
  253. package/lib/module/modules/message-bubble/MODULE.md +38 -0
  254. package/lib/module/modules/message-bubble/MessageBubble.js +55 -0
  255. package/lib/module/modules/message-bubble/MessageBubble.variants.js +57 -0
  256. package/lib/module/modules/message-bubble/index.js +4 -0
  257. package/lib/module/modules/modal/MODULE.md +29 -3
  258. package/lib/module/modules/modal/Modal.js +72 -22
  259. package/lib/module/modules/more-items/MODULE.md +72 -0
  260. package/lib/module/modules/more-items/MoreItems.js +162 -0
  261. package/lib/module/modules/more-items/MoreItems.variants.js +80 -0
  262. package/lib/module/modules/more-items/index.js +4 -0
  263. package/lib/module/modules/multi-select/MODULE.md +84 -18
  264. package/lib/module/modules/multi-select/MultiSelect.js +217 -105
  265. package/lib/module/modules/multi-select/MultiSelect.variants.js +28 -5
  266. package/lib/module/modules/number-input/MODULE.md +39 -5
  267. package/lib/module/modules/number-input/NumberInput.js +41 -11
  268. package/lib/module/modules/number-input/NumberInput.variants.js +39 -5
  269. package/lib/module/modules/org-switcher/MODULE.md +121 -0
  270. package/lib/module/modules/org-switcher/OrgSwitcher.js +284 -0
  271. package/lib/module/modules/org-switcher/OrgSwitcher.variants.js +186 -0
  272. package/lib/module/modules/org-switcher/index.js +9 -0
  273. package/lib/module/modules/pagination/MODULE.md +163 -0
  274. package/lib/module/modules/pagination/Pagination.js +197 -0
  275. package/lib/module/modules/pagination/Pagination.variants.js +307 -0
  276. package/lib/module/modules/pagination/PaginationControls.js +193 -0
  277. package/lib/module/modules/pagination/index.js +15 -0
  278. package/lib/module/modules/pin-input/MODULE.md +29 -14
  279. package/lib/module/modules/pin-input/PinInput.js +111 -80
  280. package/lib/module/modules/pin-input/PinInput.variants.js +13 -5
  281. package/lib/module/modules/progress-bar/MODULE.md +17 -7
  282. package/lib/module/modules/progress-bar/ProgressBar.js +97 -56
  283. package/lib/module/modules/progress-bar/ProgressBar.variants.js +16 -18
  284. package/lib/module/modules/radio-group/MODULE.md +40 -14
  285. package/lib/module/modules/radio-group/RadioGroup.js +71 -7
  286. package/lib/module/modules/radio-group/RadioGroup.variants.js +46 -10
  287. package/lib/module/modules/reorder/MODULE.md +104 -97
  288. package/lib/module/modules/reorder/Reorder.js +233 -197
  289. package/lib/module/modules/reorder/Reorder.variants.js +35 -13
  290. package/lib/module/modules/rich-text/MODULE.md +52 -0
  291. package/lib/module/modules/rich-text/RichText.js +362 -0
  292. package/lib/module/modules/rich-text/RichText.variants.js +17 -0
  293. package/lib/module/modules/rich-text/index.js +5 -0
  294. package/lib/module/modules/rich-text/parseRichText.js +133 -0
  295. package/lib/module/modules/rich-text-editor/MODULE.md +225 -0
  296. package/lib/module/modules/rich-text-editor/RichTextEditor.js +413 -0
  297. package/lib/module/modules/rich-text-editor/RichTextEditor.variants.js +316 -0
  298. package/lib/module/modules/rich-text-editor/index.js +10 -0
  299. package/lib/module/modules/screen/MODULE.md +57 -0
  300. package/lib/module/modules/screen/Screen.js +106 -0
  301. package/lib/module/modules/screen/Screen.variants.js +43 -0
  302. package/lib/module/modules/screen/index.js +10 -0
  303. package/lib/module/modules/search-bar/MODULE.md +114 -0
  304. package/lib/module/modules/search-bar/SearchBar.js +256 -0
  305. package/lib/module/modules/search-bar/SearchBar.variants.js +205 -0
  306. package/lib/module/modules/search-bar/index.js +12 -0
  307. package/lib/module/modules/section/MODULE.md +39 -0
  308. package/lib/module/modules/section/Section.js +42 -0
  309. package/lib/module/modules/section/Section.variants.js +29 -0
  310. package/lib/module/modules/section/index.js +10 -0
  311. package/lib/module/modules/section-list/MODULE.md +18 -0
  312. package/lib/module/modules/section-list/SectionList.js +64 -0
  313. package/lib/module/modules/section-list/SectionList.variants.js +11 -0
  314. package/lib/module/modules/section-list/index.js +4 -0
  315. package/lib/module/modules/segmented-control/MODULE.md +124 -0
  316. package/lib/module/modules/segmented-control/SegmentedControl.js +158 -0
  317. package/lib/module/modules/segmented-control/SegmentedControl.variants.js +167 -0
  318. package/lib/module/modules/segmented-control/index.js +13 -0
  319. package/lib/module/modules/select/MODULE.md +81 -14
  320. package/lib/module/modules/select/Select.js +196 -94
  321. package/lib/module/modules/select/Select.variants.js +28 -5
  322. package/lib/module/modules/skeleton/MODULE.md +27 -7
  323. package/lib/module/modules/skeleton/Skeleton.js +52 -38
  324. package/lib/module/modules/skeleton/Skeleton.variants.js +9 -8
  325. package/lib/module/modules/slider/MODULE.md +31 -5
  326. package/lib/module/modules/slider/Slider.js +67 -10
  327. package/lib/module/modules/slider/Slider.variants.js +60 -13
  328. package/lib/module/modules/spinner/MODULE.md +16 -6
  329. package/lib/module/modules/spinner/Spinner.js +20 -16
  330. package/lib/module/modules/spinner/Spinner.variants.js +5 -3
  331. package/lib/module/modules/stage-progress/MODULE.md +64 -0
  332. package/lib/module/modules/stage-progress/StageProgress.js +174 -0
  333. package/lib/module/modules/stage-progress/StageProgress.variants.js +164 -0
  334. package/lib/module/modules/stage-progress/index.js +4 -0
  335. package/lib/module/modules/stat-tile/MODULE.md +9 -2
  336. package/lib/module/modules/stat-tile/StatTile.js +70 -33
  337. package/lib/module/modules/stat-tile/StatTile.variants.js +6 -4
  338. package/lib/module/modules/state-block/MODULE.md +52 -0
  339. package/lib/module/modules/state-block/StateBlock.js +131 -0
  340. package/lib/module/modules/state-block/StateBlock.variants.js +55 -0
  341. package/lib/module/modules/state-block/index.js +10 -0
  342. package/lib/module/modules/stepper/MODULE.md +33 -6
  343. package/lib/module/modules/stepper/Stepper.js +108 -39
  344. package/lib/module/modules/stepper/Stepper.variants.js +6 -6
  345. package/lib/module/modules/swipeable-row/MODULE.md +120 -0
  346. package/lib/module/modules/swipeable-row/SwipeableRow.js +244 -0
  347. package/lib/module/modules/swipeable-row/SwipeableRow.variants.js +80 -0
  348. package/lib/module/modules/swipeable-row/index.js +4 -0
  349. package/lib/module/modules/switch/MODULE.md +14 -0
  350. package/lib/module/modules/switch/Switch.js +1 -1
  351. package/lib/module/modules/switch/Switch.variants.js +8 -0
  352. package/lib/module/modules/tabs/MODULE.md +47 -13
  353. package/lib/module/modules/tabs/Tabs.js +121 -72
  354. package/lib/module/modules/tabs/Tabs.variants.js +30 -8
  355. package/lib/module/modules/text/MODULE.md +51 -0
  356. package/lib/module/modules/text/Text.js +47 -0
  357. package/lib/module/modules/text/Text.variants.js +98 -0
  358. package/lib/module/modules/text/index.js +4 -0
  359. package/lib/module/modules/textarea/MODULE.md +29 -13
  360. package/lib/module/modules/textarea/Textarea.js +90 -45
  361. package/lib/module/modules/textarea/Textarea.variants.js +14 -9
  362. package/lib/module/modules/timeline/MODULE.md +39 -7
  363. package/lib/module/modules/timeline/Timeline.js +151 -77
  364. package/lib/module/modules/timeline/Timeline.variants.js +13 -0
  365. package/lib/module/modules/toast/MODULE.md +66 -7
  366. package/lib/module/modules/toast/Toast.js +93 -27
  367. package/lib/module/modules/toast/Toast.variants.js +37 -1
  368. package/lib/module/modules/toast/toastScreenReader.js +69 -0
  369. package/lib/module/modules/tooltip/MODULE.md +78 -28
  370. package/lib/module/modules/tooltip/Tooltip.js +93 -43
  371. package/lib/module/modules/tooltip/Tooltip.variants.js +3 -4
  372. package/lib/module/modules/typing-indicator/MODULE.md +48 -0
  373. package/lib/module/modules/typing-indicator/TypingIndicator.js +98 -0
  374. package/lib/module/modules/typing-indicator/TypingIndicator.variants.js +55 -0
  375. package/lib/module/modules/typing-indicator/index.js +4 -0
  376. package/lib/module/modules/unread-badge/MODULE.md +20 -0
  377. package/lib/module/modules/unread-badge/UnreadBadge.js +45 -0
  378. package/lib/module/modules/unread-badge/UnreadBadge.variants.js +66 -0
  379. package/lib/module/modules/unread-badge/index.js +4 -0
  380. package/lib/module/test/mocks/flashList.js +5 -0
  381. package/lib/module/test/perfHelpers.js +18 -0
  382. package/lib/module/theme/MODULE.md +6 -0
  383. package/lib/module/theme/hooks.js +11 -0
  384. package/lib/module/theme/index.js +3 -6
  385. package/lib/module/theme/platform/MODULE.md +6 -0
  386. package/lib/module/theme/platform/motion.native.js +15 -0
  387. package/lib/module/theme/provider/PixelizeProvider.js +9 -47
  388. package/lib/module/theme/provider/ThemeContext.js +6 -0
  389. package/lib/module/theme/provider/colorModeStorage.js +2 -2
  390. package/lib/module/theme/provider/index.js +1 -0
  391. package/lib/module/theme/provider/loadPalette.js +75 -0
  392. package/lib/module/theme/provider/types.js +4 -0
  393. package/lib/module/theme/provider/useTheme.js +1 -2
  394. package/lib/module/theme/provider/useThemeMode.js +1 -1
  395. package/lib/module/theme/tokens/roles/index.js +9 -3
  396. package/lib/typescript/core/a11y/announce.d.ts +20 -0
  397. package/lib/typescript/core/a11y/announce.web.d.ts +27 -0
  398. package/lib/typescript/core/a11y/index.d.ts +21 -2
  399. package/lib/typescript/core/a11y/keyboard.d.ts +45 -0
  400. package/lib/typescript/core/a11y/keyboard.web.d.ts +69 -0
  401. package/lib/typescript/core/a11y/labels.d.ts +19 -0
  402. package/lib/typescript/core/device/index.d.ts +16 -0
  403. package/lib/typescript/core/heading/index.d.ts +45 -0
  404. package/lib/typescript/core/icon/Icon.d.ts +18 -0
  405. package/lib/typescript/core/icon/icons/arrow-down.d.ts +3 -0
  406. package/lib/typescript/core/icon/icons/arrow-left.d.ts +3 -0
  407. package/lib/typescript/core/icon/icons/arrow-right.d.ts +3 -0
  408. package/lib/typescript/core/icon/icons/arrow-up.d.ts +3 -0
  409. package/lib/typescript/core/icon/icons/at-sign.d.ts +3 -0
  410. package/lib/typescript/core/icon/icons/bell.d.ts +3 -0
  411. package/lib/typescript/core/icon/icons/bold.d.ts +3 -0
  412. package/lib/typescript/core/icon/icons/building-2.d.ts +3 -0
  413. package/lib/typescript/core/icon/icons/calendar.d.ts +3 -0
  414. package/lib/typescript/core/icon/icons/chart-column.d.ts +3 -0
  415. package/lib/typescript/core/icon/icons/check.d.ts +3 -0
  416. package/lib/typescript/core/icon/icons/chevron-down.d.ts +3 -0
  417. package/lib/typescript/core/icon/icons/chevron-left.d.ts +3 -0
  418. package/lib/typescript/core/icon/icons/chevron-right.d.ts +3 -0
  419. package/lib/typescript/core/icon/icons/chevron-up.d.ts +3 -0
  420. package/lib/typescript/core/icon/icons/chevrons-left.d.ts +3 -0
  421. package/lib/typescript/core/icon/icons/chevrons-right.d.ts +3 -0
  422. package/lib/typescript/core/icon/icons/chevrons-up-down.d.ts +3 -0
  423. package/lib/typescript/core/icon/icons/circle-alert.d.ts +3 -0
  424. package/lib/typescript/core/icon/icons/circle-check.d.ts +3 -0
  425. package/lib/typescript/core/icon/icons/clock.d.ts +3 -0
  426. package/lib/typescript/core/icon/icons/code.d.ts +3 -0
  427. package/lib/typescript/core/icon/icons/download.d.ts +3 -0
  428. package/lib/typescript/core/icon/icons/external-link.d.ts +3 -0
  429. package/lib/typescript/core/icon/icons/eye.d.ts +3 -0
  430. package/lib/typescript/core/icon/icons/file-text.d.ts +3 -0
  431. package/lib/typescript/core/icon/icons/filter.d.ts +3 -0
  432. package/lib/typescript/core/icon/icons/flag.d.ts +3 -0
  433. package/lib/typescript/core/icon/icons/folder.d.ts +3 -0
  434. package/lib/typescript/core/icon/icons/heading-1.d.ts +3 -0
  435. package/lib/typescript/core/icon/icons/heading-2.d.ts +3 -0
  436. package/lib/typescript/core/icon/icons/heading-3.d.ts +3 -0
  437. package/lib/typescript/core/icon/icons/image.d.ts +3 -0
  438. package/lib/typescript/core/icon/icons/inbox.d.ts +3 -0
  439. package/lib/typescript/core/icon/icons/info.d.ts +3 -0
  440. package/lib/typescript/core/icon/icons/italic.d.ts +3 -0
  441. package/lib/typescript/core/icon/icons/kanban.d.ts +3 -0
  442. package/lib/typescript/core/icon/icons/layers.d.ts +3 -0
  443. package/lib/typescript/core/icon/icons/layout-dashboard.d.ts +3 -0
  444. package/lib/typescript/core/icon/icons/layout-template.d.ts +3 -0
  445. package/lib/typescript/core/icon/icons/life-buoy.d.ts +3 -0
  446. package/lib/typescript/core/icon/icons/link.d.ts +3 -0
  447. package/lib/typescript/core/icon/icons/list-checks.d.ts +3 -0
  448. package/lib/typescript/core/icon/icons/list-ordered.d.ts +3 -0
  449. package/lib/typescript/core/icon/icons/list-todo.d.ts +3 -0
  450. package/lib/typescript/core/icon/icons/list.d.ts +3 -0
  451. package/lib/typescript/core/icon/icons/log-out.d.ts +3 -0
  452. package/lib/typescript/core/icon/icons/map.d.ts +3 -0
  453. package/lib/typescript/core/icon/icons/message-square.d.ts +3 -0
  454. package/lib/typescript/core/icon/icons/milestone.d.ts +3 -0
  455. package/lib/typescript/core/icon/icons/minus.d.ts +3 -0
  456. package/lib/typescript/core/icon/icons/more-horizontal.d.ts +3 -0
  457. package/lib/typescript/core/icon/icons/paperclip.d.ts +3 -0
  458. package/lib/typescript/core/icon/icons/pencil.d.ts +3 -0
  459. package/lib/typescript/core/icon/icons/plus.d.ts +3 -0
  460. package/lib/typescript/core/icon/icons/quote.d.ts +3 -0
  461. package/lib/typescript/core/icon/icons/refresh-cw.d.ts +3 -0
  462. package/lib/typescript/core/icon/icons/save.d.ts +3 -0
  463. package/lib/typescript/core/icon/icons/search.d.ts +3 -0
  464. package/lib/typescript/core/icon/icons/send.d.ts +3 -0
  465. package/lib/typescript/core/icon/icons/settings.d.ts +3 -0
  466. package/lib/typescript/core/icon/icons/share.d.ts +3 -0
  467. package/lib/typescript/core/icon/icons/square-code.d.ts +3 -0
  468. package/lib/typescript/core/icon/icons/star.d.ts +3 -0
  469. package/lib/typescript/core/icon/icons/strikethrough.d.ts +3 -0
  470. package/lib/typescript/core/icon/icons/tag.d.ts +3 -0
  471. package/lib/typescript/core/icon/icons/trash.d.ts +3 -0
  472. package/lib/typescript/core/icon/icons/triangle-alert.d.ts +3 -0
  473. package/lib/typescript/core/icon/icons/underline.d.ts +3 -0
  474. package/lib/typescript/core/icon/icons/upload.d.ts +3 -0
  475. package/lib/typescript/core/icon/icons/user.d.ts +3 -0
  476. package/lib/typescript/core/icon/icons/users.d.ts +3 -0
  477. package/lib/typescript/core/icon/icons/x.d.ts +3 -0
  478. package/lib/typescript/core/icon/index.d.ts +6 -94
  479. package/lib/typescript/core/icon/names.d.ts +2 -0
  480. package/lib/typescript/core/icon/resolve.d.ts +4 -0
  481. package/lib/typescript/core/icon/types.d.ts +13 -0
  482. package/lib/typescript/core/list/VirtualList.d.ts +55 -0
  483. package/lib/typescript/core/list/index.d.ts +3 -0
  484. package/lib/typescript/core/media/MediaImage.d.ts +28 -0
  485. package/lib/typescript/core/media/expoImage.d.ts +14 -0
  486. package/lib/typescript/core/media/index.d.ts +7 -0
  487. package/lib/typescript/core/media/pickers.d.ts +27 -0
  488. package/lib/typescript/core/motion/config.d.ts +56 -0
  489. package/lib/typescript/core/motion/index.d.ts +8 -0
  490. package/lib/typescript/core/motion/presets.d.ts +49 -0
  491. package/lib/typescript/core/motion/useAnimatedValue.d.ts +11 -0
  492. package/lib/typescript/core/motion/useMotion.d.ts +34 -0
  493. package/lib/typescript/core/style/index.d.ts +3 -0
  494. package/lib/typescript/core/style/sx.d.ts +86 -0
  495. package/lib/typescript/core/style/useThemedStyles.d.ts +5 -0
  496. package/lib/typescript/index.d.ts +134 -2
  497. package/lib/typescript/modules/accordion/Accordion.d.ts +12 -23
  498. package/lib/typescript/modules/accordion/Accordion.variants.d.ts +5 -5
  499. package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts +1 -1
  500. package/lib/typescript/modules/app-bar/AppBar.d.ts +37 -0
  501. package/lib/typescript/modules/app-bar/AppBar.variants.d.ts +35 -0
  502. package/lib/typescript/modules/app-bar/index.d.ts +9 -0
  503. package/lib/typescript/modules/avatar/Avatar.d.ts +23 -3
  504. package/lib/typescript/modules/avatar/Avatar.variants.d.ts +32 -1
  505. package/lib/typescript/modules/avatar/index.d.ts +1 -1
  506. package/lib/typescript/modules/avatar-group/AvatarGroup.d.ts +28 -0
  507. package/lib/typescript/modules/avatar-group/AvatarGroup.variants.d.ts +75 -0
  508. package/lib/typescript/modules/avatar-group/index.d.ts +9 -0
  509. package/lib/typescript/modules/badge/Badge.d.ts +3 -1
  510. package/lib/typescript/modules/badge/Badge.variants.d.ts +8 -4
  511. package/lib/typescript/modules/banner/Banner.d.ts +35 -0
  512. package/lib/typescript/modules/banner/Banner.variants.d.ts +49 -0
  513. package/lib/typescript/modules/banner/index.d.ts +5 -0
  514. package/lib/typescript/modules/bottom-nav/BottomNav.d.ts +9 -8
  515. package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts +22 -9
  516. package/lib/typescript/modules/bottom-nav/BottomNavTab.d.ts +34 -0
  517. package/lib/typescript/modules/bottom-sheet/BottomSheet.d.ts +29 -0
  518. package/lib/typescript/modules/bottom-sheet/BottomSheet.variants.d.ts +13 -0
  519. package/lib/typescript/modules/bottom-sheet/index.d.ts +3 -0
  520. package/lib/typescript/modules/button/Button.d.ts +21 -0
  521. package/lib/typescript/modules/button/Button.variants.d.ts +22 -9
  522. package/lib/typescript/modules/button-group/ButtonGroup.d.ts +4 -2
  523. package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts +18 -5
  524. package/lib/typescript/modules/card/Card.variants.d.ts +2 -2
  525. package/lib/typescript/modules/charts/BarChart.d.ts +26 -0
  526. package/lib/typescript/modules/charts/ChartLegend.d.ts +16 -0
  527. package/lib/typescript/modules/charts/Charts.variants.d.ts +201 -2
  528. package/lib/typescript/modules/charts/DonutChart.d.ts +3 -0
  529. package/lib/typescript/modules/charts/LineChart.d.ts +30 -0
  530. package/lib/typescript/modules/charts/PieChart.d.ts +18 -0
  531. package/lib/typescript/modules/charts/index.d.ts +6 -0
  532. package/lib/typescript/modules/checkbox/Checkbox.d.ts +4 -1
  533. package/lib/typescript/modules/checkbox/Checkbox.variants.d.ts +14 -9
  534. package/lib/typescript/modules/chip/Chip.d.ts +38 -0
  535. package/lib/typescript/modules/chip/Chip.variants.d.ts +198 -0
  536. package/lib/typescript/modules/chip/ChipGroup.d.ts +22 -0
  537. package/lib/typescript/modules/chip/index.d.ts +12 -0
  538. package/lib/typescript/modules/combobox/Combobox.d.ts +81 -0
  539. package/lib/typescript/modules/combobox/Combobox.variants.d.ts +212 -0
  540. package/lib/typescript/modules/combobox/comboboxKeys.d.ts +25 -0
  541. package/lib/typescript/modules/combobox/comboboxKeys.web.d.ts +23 -0
  542. package/lib/typescript/modules/combobox/index.d.ts +11 -0
  543. package/lib/typescript/modules/composer/Composer.d.ts +28 -0
  544. package/lib/typescript/modules/composer/Composer.variants.d.ts +7 -0
  545. package/lib/typescript/modules/composer/index.d.ts +3 -0
  546. package/lib/typescript/modules/copy-button/CopyButton.d.ts +21 -0
  547. package/lib/typescript/modules/copy-button/CopyButton.variants.d.ts +42 -0
  548. package/lib/typescript/modules/copy-button/index.d.ts +4 -0
  549. package/lib/typescript/modules/data-table/DataTable.d.ts +44 -0
  550. package/lib/typescript/modules/data-table/DataTable.variants.d.ts +118 -0
  551. package/lib/typescript/modules/data-table/index.d.ts +9 -0
  552. package/lib/typescript/modules/date-picker/Calendar.d.ts +42 -0
  553. package/lib/typescript/modules/date-picker/Calendar.keys.d.ts +19 -0
  554. package/lib/typescript/modules/date-picker/Calendar.keys.web.d.ts +35 -0
  555. package/lib/typescript/modules/date-picker/DatePicker.d.ts +40 -0
  556. package/lib/typescript/modules/date-picker/DatePicker.variants.d.ts +322 -0
  557. package/lib/typescript/modules/date-picker/DateRangePicker.d.ts +32 -0
  558. package/lib/typescript/modules/date-picker/PickerField.d.ts +26 -0
  559. package/lib/typescript/modules/date-picker/PickerShell.d.ts +29 -0
  560. package/lib/typescript/modules/date-picker/TimePicker.d.ts +20 -0
  561. package/lib/typescript/modules/date-picker/index.d.ts +16 -0
  562. package/lib/typescript/modules/divider/Divider.variants.d.ts +2 -2
  563. package/lib/typescript/modules/drawer/Drawer.d.ts +2 -1
  564. package/lib/typescript/modules/drawer/Drawer.variants.d.ts +4 -13
  565. package/lib/typescript/modules/empty-state/EmptyState.d.ts +7 -4
  566. package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts +7 -1
  567. package/lib/typescript/modules/fab/Fab.d.ts +74 -0
  568. package/lib/typescript/modules/fab/Fab.variants.d.ts +229 -0
  569. package/lib/typescript/modules/fab/FabGroup.d.ts +66 -0
  570. package/lib/typescript/modules/fab/index.d.ts +12 -0
  571. package/lib/typescript/modules/file-grid/FileGrid.d.ts +26 -0
  572. package/lib/typescript/modules/file-grid/FileGrid.variants.d.ts +26 -0
  573. package/lib/typescript/modules/file-grid/index.d.ts +4 -0
  574. package/lib/typescript/modules/file-upload/FileUpload.d.ts +3 -0
  575. package/lib/typescript/modules/file-upload/FileUpload.variants.d.ts +22 -5
  576. package/lib/typescript/modules/filter-sheet/FilterSheet.variants.d.ts +30 -5
  577. package/lib/typescript/modules/filter-sheet/FilterSheetBody.d.ts +13 -8
  578. package/lib/typescript/modules/folder-row/FolderRow.d.ts +24 -0
  579. package/lib/typescript/modules/folder-row/FolderRow.variants.d.ts +29 -0
  580. package/lib/typescript/modules/folder-row/index.d.ts +3 -0
  581. package/lib/typescript/modules/form-field/FormField.d.ts +29 -0
  582. package/lib/typescript/modules/form-field/FormField.variants.d.ts +93 -0
  583. package/lib/typescript/modules/form-field/index.d.ts +4 -0
  584. package/lib/typescript/modules/gantt/Gantt.d.ts +19 -0
  585. package/lib/typescript/modules/gantt/Gantt.variants.d.ts +82 -0
  586. package/lib/typescript/modules/gantt/index.d.ts +5 -0
  587. package/lib/typescript/modules/image-viewer/ImageViewer.d.ts +27 -0
  588. package/lib/typescript/modules/image-viewer/ImageViewer.variants.d.ts +3 -0
  589. package/lib/typescript/modules/image-viewer/index.d.ts +3 -0
  590. package/lib/typescript/modules/input/Input.d.ts +9 -1
  591. package/lib/typescript/modules/input/Input.variants.d.ts +26 -6
  592. package/lib/typescript/modules/limit-reached-modal/LimitReachedModal.d.ts +34 -0
  593. package/lib/typescript/modules/limit-reached-modal/LimitReachedModal.variants.d.ts +46 -0
  594. package/lib/typescript/modules/limit-reached-modal/index.d.ts +10 -0
  595. package/lib/typescript/modules/list-item/ListItem.d.ts +6 -0
  596. package/lib/typescript/modules/list-item/ListItem.variants.d.ts +1 -1
  597. package/lib/typescript/modules/markdown/Markdown.d.ts +6 -0
  598. package/lib/typescript/modules/markdown/Markdown.variants.d.ts +8 -2
  599. package/lib/typescript/modules/markdown/parseMarkdown.d.ts +3 -2
  600. package/lib/typescript/modules/menu/Menu.d.ts +8 -18
  601. package/lib/typescript/modules/menu/Menu.variants.d.ts +8 -1
  602. package/lib/typescript/modules/message-bubble/MessageBubble.d.ts +25 -0
  603. package/lib/typescript/modules/message-bubble/MessageBubble.variants.d.ts +31 -0
  604. package/lib/typescript/modules/message-bubble/index.d.ts +4 -0
  605. package/lib/typescript/modules/modal/Modal.d.ts +12 -0
  606. package/lib/typescript/modules/modal/Modal.variants.d.ts +1 -1
  607. package/lib/typescript/modules/more-items/MoreItems.d.ts +15 -0
  608. package/lib/typescript/modules/more-items/MoreItems.variants.d.ts +30 -0
  609. package/lib/typescript/modules/more-items/index.d.ts +4 -0
  610. package/lib/typescript/modules/multi-select/MultiSelect.d.ts +1 -16
  611. package/lib/typescript/modules/multi-select/MultiSelect.variants.d.ts +24 -5
  612. package/lib/typescript/modules/number-input/NumberInput.d.ts +6 -0
  613. package/lib/typescript/modules/number-input/NumberInput.variants.d.ts +57 -7
  614. package/lib/typescript/modules/org-switcher/OrgSwitcher.d.ts +44 -0
  615. package/lib/typescript/modules/org-switcher/OrgSwitcher.variants.d.ts +139 -0
  616. package/lib/typescript/modules/org-switcher/index.d.ts +8 -0
  617. package/lib/typescript/modules/pagination/Pagination.d.ts +45 -0
  618. package/lib/typescript/modules/pagination/Pagination.variants.d.ts +240 -0
  619. package/lib/typescript/modules/pagination/PaginationControls.d.ts +50 -0
  620. package/lib/typescript/modules/pagination/index.d.ts +14 -0
  621. package/lib/typescript/modules/pin-input/PinInput.d.ts +6 -0
  622. package/lib/typescript/modules/pin-input/PinInput.variants.d.ts +22 -5
  623. package/lib/typescript/modules/progress-bar/ProgressBar.d.ts +8 -4
  624. package/lib/typescript/modules/progress-bar/ProgressBar.variants.d.ts +13 -15
  625. package/lib/typescript/modules/radio-group/RadioGroup.d.ts +6 -0
  626. package/lib/typescript/modules/radio-group/RadioGroup.variants.d.ts +32 -11
  627. package/lib/typescript/modules/reorder/Reorder.d.ts +28 -23
  628. package/lib/typescript/modules/reorder/Reorder.variants.d.ts +25 -9
  629. package/lib/typescript/modules/rich-text/RichText.d.ts +15 -0
  630. package/lib/typescript/modules/rich-text/RichText.variants.d.ts +15 -0
  631. package/lib/typescript/modules/rich-text/index.d.ts +5 -0
  632. package/lib/typescript/modules/rich-text/parseRichText.d.ts +30 -0
  633. package/lib/typescript/modules/rich-text-editor/RichTextEditor.d.ts +62 -0
  634. package/lib/typescript/modules/rich-text-editor/RichTextEditor.variants.d.ts +139 -0
  635. package/lib/typescript/modules/rich-text-editor/index.d.ts +9 -0
  636. package/lib/typescript/modules/screen/Screen.d.ts +36 -0
  637. package/lib/typescript/modules/screen/Screen.variants.d.ts +21 -0
  638. package/lib/typescript/modules/screen/index.d.ts +9 -0
  639. package/lib/typescript/modules/search-bar/SearchBar.d.ts +47 -0
  640. package/lib/typescript/modules/search-bar/SearchBar.variants.d.ts +179 -0
  641. package/lib/typescript/modules/search-bar/index.d.ts +11 -0
  642. package/lib/typescript/modules/section/Section.d.ts +17 -0
  643. package/lib/typescript/modules/section/Section.variants.d.ts +12 -0
  644. package/lib/typescript/modules/section/index.d.ts +8 -0
  645. package/lib/typescript/modules/section-list/SectionList.d.ts +26 -0
  646. package/lib/typescript/modules/section-list/SectionList.variants.d.ts +3 -0
  647. package/lib/typescript/modules/section-list/index.d.ts +3 -0
  648. package/lib/typescript/modules/segmented-control/SegmentedControl.d.ts +45 -0
  649. package/lib/typescript/modules/segmented-control/SegmentedControl.variants.d.ts +143 -0
  650. package/lib/typescript/modules/segmented-control/index.d.ts +11 -0
  651. package/lib/typescript/modules/select/Select.d.ts +1 -14
  652. package/lib/typescript/modules/select/Select.variants.d.ts +24 -5
  653. package/lib/typescript/modules/skeleton/Skeleton.d.ts +5 -0
  654. package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts +10 -9
  655. package/lib/typescript/modules/slider/Slider.variants.d.ts +35 -14
  656. package/lib/typescript/modules/spinner/Spinner.variants.d.ts +6 -4
  657. package/lib/typescript/modules/stage-progress/StageProgress.d.ts +18 -0
  658. package/lib/typescript/modules/stage-progress/StageProgress.variants.d.ts +98 -0
  659. package/lib/typescript/modules/stage-progress/index.d.ts +4 -0
  660. package/lib/typescript/modules/stat-tile/StatTile.d.ts +4 -0
  661. package/lib/typescript/modules/stat-tile/StatTile.variants.d.ts +7 -5
  662. package/lib/typescript/modules/state-block/StateBlock.d.ts +51 -0
  663. package/lib/typescript/modules/state-block/StateBlock.variants.d.ts +30 -0
  664. package/lib/typescript/modules/state-block/index.d.ts +10 -0
  665. package/lib/typescript/modules/stepper/Stepper.d.ts +4 -0
  666. package/lib/typescript/modules/stepper/Stepper.variants.d.ts +7 -7
  667. package/lib/typescript/modules/swipeable-row/SwipeableRow.d.ts +35 -0
  668. package/lib/typescript/modules/swipeable-row/SwipeableRow.variants.d.ts +27 -0
  669. package/lib/typescript/modules/swipeable-row/index.d.ts +4 -0
  670. package/lib/typescript/modules/switch/Switch.variants.d.ts +9 -1
  671. package/lib/typescript/modules/tabs/Tabs.d.ts +8 -6
  672. package/lib/typescript/modules/tabs/Tabs.variants.d.ts +20 -7
  673. package/lib/typescript/modules/text/Text.d.ts +23 -0
  674. package/lib/typescript/modules/text/Text.variants.d.ts +18 -0
  675. package/lib/typescript/modules/text/index.d.ts +4 -0
  676. package/lib/typescript/modules/textarea/Textarea.d.ts +5 -0
  677. package/lib/typescript/modules/textarea/Textarea.variants.d.ts +15 -8
  678. package/lib/typescript/modules/timeline/Timeline.d.ts +9 -13
  679. package/lib/typescript/modules/timeline/Timeline.variants.d.ts +17 -1
  680. package/lib/typescript/modules/toast/Toast.d.ts +13 -3
  681. package/lib/typescript/modules/toast/Toast.variants.d.ts +31 -3
  682. package/lib/typescript/modules/toast/index.d.ts +1 -1
  683. package/lib/typescript/modules/toast/toastScreenReader.d.ts +22 -0
  684. package/lib/typescript/modules/tooltip/Tooltip.d.ts +34 -11
  685. package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts +4 -5
  686. package/lib/typescript/modules/typing-indicator/TypingIndicator.d.ts +28 -0
  687. package/lib/typescript/modules/typing-indicator/TypingIndicator.variants.d.ts +32 -0
  688. package/lib/typescript/modules/typing-indicator/index.d.ts +4 -0
  689. package/lib/typescript/modules/unread-badge/UnreadBadge.d.ts +15 -0
  690. package/lib/typescript/modules/unread-badge/UnreadBadge.variants.d.ts +56 -0
  691. package/lib/typescript/modules/unread-badge/index.d.ts +4 -0
  692. package/lib/typescript/test/mocks/flashList.d.ts +3 -0
  693. package/lib/typescript/test/perfHelpers.d.ts +9 -0
  694. package/lib/typescript/theme/hooks.d.ts +11 -0
  695. package/lib/typescript/theme/index.d.ts +3 -2
  696. package/lib/typescript/theme/platform/motion.native.d.ts +15 -0
  697. package/lib/typescript/theme/provider/PixelizeProvider.d.ts +3 -80
  698. package/lib/typescript/theme/provider/ThemeContext.d.ts +4 -0
  699. package/lib/typescript/theme/provider/index.d.ts +2 -1
  700. package/lib/typescript/theme/provider/loadPalette.d.ts +9 -0
  701. package/lib/typescript/theme/provider/types.d.ts +41 -0
  702. package/lib/typescript/theme/provider/useTheme.d.ts +1 -2
  703. package/lib/typescript/theme/provider/useThemeMode.d.ts +1 -1
  704. package/lib/typescript/theme/tokens/roles/index.d.ts +7 -0
  705. package/package.json +193 -19
  706. package/registry.json +172 -2
  707. package/lib/module/core/a11y/index.js.map +0 -1
  708. package/lib/module/core/icon/index.js.map +0 -1
  709. package/lib/module/core/style/index.js.map +0 -1
  710. package/lib/module/core/style/layoutStyle.js.map +0 -1
  711. package/lib/module/core/style/variants.js.map +0 -1
  712. package/lib/module/index.js.map +0 -1
  713. package/lib/module/modules/accordion/Accordion.js.map +0 -1
  714. package/lib/module/modules/accordion/Accordion.variants.js.map +0 -1
  715. package/lib/module/modules/accordion/index.js.map +0 -1
  716. package/lib/module/modules/alert-dialog/AlertDialog.js.map +0 -1
  717. package/lib/module/modules/alert-dialog/AlertDialog.variants.js.map +0 -1
  718. package/lib/module/modules/alert-dialog/index.js.map +0 -1
  719. package/lib/module/modules/avatar/Avatar.js.map +0 -1
  720. package/lib/module/modules/avatar/Avatar.variants.js.map +0 -1
  721. package/lib/module/modules/avatar/index.js.map +0 -1
  722. package/lib/module/modules/badge/Badge.js.map +0 -1
  723. package/lib/module/modules/badge/Badge.variants.js.map +0 -1
  724. package/lib/module/modules/badge/index.js.map +0 -1
  725. package/lib/module/modules/bottom-nav/BottomNav.js.map +0 -1
  726. package/lib/module/modules/bottom-nav/BottomNav.search.js.map +0 -1
  727. package/lib/module/modules/bottom-nav/BottomNav.variants.js.map +0 -1
  728. package/lib/module/modules/bottom-nav/BottomNavIconWithBadge.js.map +0 -1
  729. package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js.map +0 -1
  730. package/lib/module/modules/bottom-nav/index.js.map +0 -1
  731. package/lib/module/modules/button/Button.js.map +0 -1
  732. package/lib/module/modules/button/Button.variants.js.map +0 -1
  733. package/lib/module/modules/button/index.js.map +0 -1
  734. package/lib/module/modules/button-group/ButtonGroup.js.map +0 -1
  735. package/lib/module/modules/button-group/ButtonGroup.variants.js.map +0 -1
  736. package/lib/module/modules/button-group/index.js.map +0 -1
  737. package/lib/module/modules/card/Card.js.map +0 -1
  738. package/lib/module/modules/card/Card.variants.js.map +0 -1
  739. package/lib/module/modules/card/index.js.map +0 -1
  740. package/lib/module/modules/charts/BarList.js.map +0 -1
  741. package/lib/module/modules/charts/Charts.variants.js.map +0 -1
  742. package/lib/module/modules/charts/DonutChart.js.map +0 -1
  743. package/lib/module/modules/charts/Sparkline.js.map +0 -1
  744. package/lib/module/modules/charts/index.js.map +0 -1
  745. package/lib/module/modules/checkbox/Checkbox.js.map +0 -1
  746. package/lib/module/modules/checkbox/Checkbox.variants.js.map +0 -1
  747. package/lib/module/modules/checkbox/index.js.map +0 -1
  748. package/lib/module/modules/divider/Divider.js.map +0 -1
  749. package/lib/module/modules/divider/Divider.variants.js.map +0 -1
  750. package/lib/module/modules/divider/index.js.map +0 -1
  751. package/lib/module/modules/drawer/Drawer.js.map +0 -1
  752. package/lib/module/modules/drawer/Drawer.variants.js.map +0 -1
  753. package/lib/module/modules/drawer/index.js.map +0 -1
  754. package/lib/module/modules/empty-state/EmptyState.js.map +0 -1
  755. package/lib/module/modules/empty-state/EmptyState.variants.js.map +0 -1
  756. package/lib/module/modules/empty-state/index.js.map +0 -1
  757. package/lib/module/modules/file-upload/FileUpload.js.map +0 -1
  758. package/lib/module/modules/file-upload/FileUpload.variants.js.map +0 -1
  759. package/lib/module/modules/file-upload/index.js.map +0 -1
  760. package/lib/module/modules/filter-sheet/FilterChip.js.map +0 -1
  761. package/lib/module/modules/filter-sheet/FilterSheet.js.map +0 -1
  762. package/lib/module/modules/filter-sheet/FilterSheet.variants.js.map +0 -1
  763. package/lib/module/modules/filter-sheet/FilterSheetBody.js.map +0 -1
  764. package/lib/module/modules/filter-sheet/filterSheet.helpers.js.map +0 -1
  765. package/lib/module/modules/filter-sheet/index.js.map +0 -1
  766. package/lib/module/modules/input/Input.js.map +0 -1
  767. package/lib/module/modules/input/Input.variants.js.map +0 -1
  768. package/lib/module/modules/input/index.js.map +0 -1
  769. package/lib/module/modules/list-item/ListItem.js.map +0 -1
  770. package/lib/module/modules/list-item/ListItem.variants.js.map +0 -1
  771. package/lib/module/modules/list-item/index.js.map +0 -1
  772. package/lib/module/modules/markdown/Markdown.js.map +0 -1
  773. package/lib/module/modules/markdown/Markdown.variants.js.map +0 -1
  774. package/lib/module/modules/markdown/index.js.map +0 -1
  775. package/lib/module/modules/markdown/parseMarkdown.js.map +0 -1
  776. package/lib/module/modules/menu/Menu.js.map +0 -1
  777. package/lib/module/modules/menu/Menu.variants.js.map +0 -1
  778. package/lib/module/modules/menu/index.js.map +0 -1
  779. package/lib/module/modules/modal/Modal.js.map +0 -1
  780. package/lib/module/modules/modal/Modal.variants.js.map +0 -1
  781. package/lib/module/modules/modal/ModalPortalContext.js.map +0 -1
  782. package/lib/module/modules/modal/ModalPortalProvider.js.map +0 -1
  783. package/lib/module/modules/modal/index.js.map +0 -1
  784. package/lib/module/modules/modal/renderWebPortal.js.map +0 -1
  785. package/lib/module/modules/modal/renderWebPortal.web.js.map +0 -1
  786. package/lib/module/modules/multi-select/MultiSelect.js.map +0 -1
  787. package/lib/module/modules/multi-select/MultiSelect.variants.js.map +0 -1
  788. package/lib/module/modules/multi-select/index.js.map +0 -1
  789. package/lib/module/modules/number-input/NumberInput.js.map +0 -1
  790. package/lib/module/modules/number-input/NumberInput.variants.js.map +0 -1
  791. package/lib/module/modules/number-input/index.js.map +0 -1
  792. package/lib/module/modules/pin-input/PinInput.js.map +0 -1
  793. package/lib/module/modules/pin-input/PinInput.variants.js.map +0 -1
  794. package/lib/module/modules/pin-input/index.js.map +0 -1
  795. package/lib/module/modules/progress-bar/ProgressBar.js.map +0 -1
  796. package/lib/module/modules/progress-bar/ProgressBar.variants.js.map +0 -1
  797. package/lib/module/modules/progress-bar/index.js.map +0 -1
  798. package/lib/module/modules/radio-group/RadioGroup.js.map +0 -1
  799. package/lib/module/modules/radio-group/RadioGroup.variants.js.map +0 -1
  800. package/lib/module/modules/radio-group/index.js.map +0 -1
  801. package/lib/module/modules/reorder/Reorder.js.map +0 -1
  802. package/lib/module/modules/reorder/Reorder.variants.js.map +0 -1
  803. package/lib/module/modules/reorder/index.js.map +0 -1
  804. package/lib/module/modules/select/Select.js.map +0 -1
  805. package/lib/module/modules/select/Select.variants.js.map +0 -1
  806. package/lib/module/modules/select/index.js.map +0 -1
  807. package/lib/module/modules/skeleton/Skeleton.js.map +0 -1
  808. package/lib/module/modules/skeleton/Skeleton.variants.js.map +0 -1
  809. package/lib/module/modules/skeleton/index.js.map +0 -1
  810. package/lib/module/modules/slider/Slider.js.map +0 -1
  811. package/lib/module/modules/slider/Slider.variants.js.map +0 -1
  812. package/lib/module/modules/slider/index.js.map +0 -1
  813. package/lib/module/modules/spinner/Spinner.js.map +0 -1
  814. package/lib/module/modules/spinner/Spinner.variants.js.map +0 -1
  815. package/lib/module/modules/spinner/index.js.map +0 -1
  816. package/lib/module/modules/stat-tile/StatTile.js.map +0 -1
  817. package/lib/module/modules/stat-tile/StatTile.variants.js.map +0 -1
  818. package/lib/module/modules/stat-tile/index.js.map +0 -1
  819. package/lib/module/modules/stepper/Stepper.js.map +0 -1
  820. package/lib/module/modules/stepper/Stepper.variants.js.map +0 -1
  821. package/lib/module/modules/stepper/index.js.map +0 -1
  822. package/lib/module/modules/switch/Switch.js.map +0 -1
  823. package/lib/module/modules/switch/Switch.variants.js.map +0 -1
  824. package/lib/module/modules/switch/index.js.map +0 -1
  825. package/lib/module/modules/tabs/Tabs.js.map +0 -1
  826. package/lib/module/modules/tabs/Tabs.variants.js.map +0 -1
  827. package/lib/module/modules/tabs/index.js.map +0 -1
  828. package/lib/module/modules/textarea/Textarea.js.map +0 -1
  829. package/lib/module/modules/textarea/Textarea.variants.js.map +0 -1
  830. package/lib/module/modules/textarea/index.js.map +0 -1
  831. package/lib/module/modules/timeline/Timeline.js.map +0 -1
  832. package/lib/module/modules/timeline/Timeline.variants.js.map +0 -1
  833. package/lib/module/modules/timeline/index.js.map +0 -1
  834. package/lib/module/modules/toast/Toast.js.map +0 -1
  835. package/lib/module/modules/toast/Toast.variants.js.map +0 -1
  836. package/lib/module/modules/toast/index.js.map +0 -1
  837. package/lib/module/modules/tooltip/Tooltip.js.map +0 -1
  838. package/lib/module/modules/tooltip/Tooltip.variants.js.map +0 -1
  839. package/lib/module/modules/tooltip/index.js.map +0 -1
  840. package/lib/module/theme/index.js.map +0 -1
  841. package/lib/module/theme/platform/colorScheme.native.js.map +0 -1
  842. package/lib/module/theme/platform/elevation.native.js.map +0 -1
  843. package/lib/module/theme/platform/fonts.native.js.map +0 -1
  844. package/lib/module/theme/platform/index.js.map +0 -1
  845. package/lib/module/theme/platform/units.native.js.map +0 -1
  846. package/lib/module/theme/provider/PixelizeProvider.js.map +0 -1
  847. package/lib/module/theme/provider/colorModeStorage.js.map +0 -1
  848. package/lib/module/theme/provider/index.js.map +0 -1
  849. package/lib/module/theme/provider/useTheme.js.map +0 -1
  850. package/lib/module/theme/provider/useThemeColors.js.map +0 -1
  851. package/lib/module/theme/provider/useThemeMode.js.map +0 -1
  852. package/lib/module/theme/tokens/brands/emerald/palette.dark.js.map +0 -1
  853. package/lib/module/theme/tokens/brands/emerald/palette.light.js.map +0 -1
  854. package/lib/module/theme/tokens/brands/index.js.map +0 -1
  855. package/lib/module/theme/tokens/brands/lavender/palette.dark.js.map +0 -1
  856. package/lib/module/theme/tokens/brands/lavender/palette.light.js.map +0 -1
  857. package/lib/module/theme/tokens/brands/meadow/palette.dark.js.map +0 -1
  858. package/lib/module/theme/tokens/brands/meadow/palette.light.js.map +0 -1
  859. package/lib/module/theme/tokens/brands/radiant/palette.dark.js.map +0 -1
  860. package/lib/module/theme/tokens/brands/radiant/palette.light.js.map +0 -1
  861. package/lib/module/theme/tokens/brands/rosewood/palette.dark.js.map +0 -1
  862. package/lib/module/theme/tokens/brands/rosewood/palette.light.js.map +0 -1
  863. package/lib/module/theme/tokens/brands/skyline/palette.dark.js.map +0 -1
  864. package/lib/module/theme/tokens/brands/skyline/palette.light.js.map +0 -1
  865. package/lib/module/theme/tokens/brands/slate/palette.dark.js.map +0 -1
  866. package/lib/module/theme/tokens/brands/slate/palette.light.js.map +0 -1
  867. package/lib/module/theme/tokens/brands/storefront/palette.dark.js.map +0 -1
  868. package/lib/module/theme/tokens/brands/storefront/palette.light.js.map +0 -1
  869. package/lib/module/theme/tokens/brands/zinc/palette.dark.js.map +0 -1
  870. package/lib/module/theme/tokens/brands/zinc/palette.light.js.map +0 -1
  871. package/lib/module/theme/tokens/builders/accentText.js.map +0 -1
  872. package/lib/module/theme/tokens/builders/buildBrandTokens.js.map +0 -1
  873. package/lib/module/theme/tokens/builders/buildDarkPalette.js.map +0 -1
  874. package/lib/module/theme/tokens/builders/color.js.map +0 -1
  875. package/lib/module/theme/tokens/index.js.map +0 -1
  876. package/lib/module/theme/tokens/primitives/borderWidths.js.map +0 -1
  877. package/lib/module/theme/tokens/primitives/breakpoints.js.map +0 -1
  878. package/lib/module/theme/tokens/primitives/elevation.js.map +0 -1
  879. package/lib/module/theme/tokens/primitives/fontSizes.js.map +0 -1
  880. package/lib/module/theme/tokens/primitives/fontWeights.js.map +0 -1
  881. package/lib/module/theme/tokens/primitives/index.js.map +0 -1
  882. package/lib/module/theme/tokens/primitives/letterSpacings.js.map +0 -1
  883. package/lib/module/theme/tokens/primitives/lineHeights.js.map +0 -1
  884. package/lib/module/theme/tokens/primitives/radii.js.map +0 -1
  885. package/lib/module/theme/tokens/primitives/sizes.js.map +0 -1
  886. package/lib/module/theme/tokens/primitives/space.js.map +0 -1
  887. package/lib/module/theme/tokens/primitives/zIndices.js.map +0 -1
  888. package/lib/module/theme/tokens/roles/index.js.map +0 -1
  889. package/lib/module/theme/tokens/types.js.map +0 -1
  890. package/lib/typescript/core/a11y/index.d.ts.map +0 -1
  891. package/lib/typescript/core/icon/index.d.ts.map +0 -1
  892. package/lib/typescript/core/style/index.d.ts.map +0 -1
  893. package/lib/typescript/core/style/layoutStyle.d.ts.map +0 -1
  894. package/lib/typescript/core/style/variants.d.ts.map +0 -1
  895. package/lib/typescript/index.d.ts.map +0 -1
  896. package/lib/typescript/modules/accordion/Accordion.d.ts.map +0 -1
  897. package/lib/typescript/modules/accordion/Accordion.variants.d.ts.map +0 -1
  898. package/lib/typescript/modules/accordion/index.d.ts.map +0 -1
  899. package/lib/typescript/modules/alert-dialog/AlertDialog.d.ts.map +0 -1
  900. package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts.map +0 -1
  901. package/lib/typescript/modules/alert-dialog/index.d.ts.map +0 -1
  902. package/lib/typescript/modules/avatar/Avatar.d.ts.map +0 -1
  903. package/lib/typescript/modules/avatar/Avatar.variants.d.ts.map +0 -1
  904. package/lib/typescript/modules/avatar/index.d.ts.map +0 -1
  905. package/lib/typescript/modules/badge/Badge.d.ts.map +0 -1
  906. package/lib/typescript/modules/badge/Badge.variants.d.ts.map +0 -1
  907. package/lib/typescript/modules/badge/index.d.ts.map +0 -1
  908. package/lib/typescript/modules/bottom-nav/BottomNav.d.ts.map +0 -1
  909. package/lib/typescript/modules/bottom-nav/BottomNav.search.d.ts.map +0 -1
  910. package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts.map +0 -1
  911. package/lib/typescript/modules/bottom-nav/BottomNavIconWithBadge.d.ts.map +0 -1
  912. package/lib/typescript/modules/bottom-nav/BottomNavOverflowSheet.d.ts.map +0 -1
  913. package/lib/typescript/modules/bottom-nav/index.d.ts.map +0 -1
  914. package/lib/typescript/modules/button/Button.d.ts.map +0 -1
  915. package/lib/typescript/modules/button/Button.variants.d.ts.map +0 -1
  916. package/lib/typescript/modules/button/index.d.ts.map +0 -1
  917. package/lib/typescript/modules/button-group/ButtonGroup.d.ts.map +0 -1
  918. package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts.map +0 -1
  919. package/lib/typescript/modules/button-group/index.d.ts.map +0 -1
  920. package/lib/typescript/modules/card/Card.d.ts.map +0 -1
  921. package/lib/typescript/modules/card/Card.variants.d.ts.map +0 -1
  922. package/lib/typescript/modules/card/index.d.ts.map +0 -1
  923. package/lib/typescript/modules/charts/BarList.d.ts.map +0 -1
  924. package/lib/typescript/modules/charts/Charts.variants.d.ts.map +0 -1
  925. package/lib/typescript/modules/charts/DonutChart.d.ts.map +0 -1
  926. package/lib/typescript/modules/charts/Sparkline.d.ts.map +0 -1
  927. package/lib/typescript/modules/charts/index.d.ts.map +0 -1
  928. package/lib/typescript/modules/checkbox/Checkbox.d.ts.map +0 -1
  929. package/lib/typescript/modules/checkbox/Checkbox.variants.d.ts.map +0 -1
  930. package/lib/typescript/modules/checkbox/index.d.ts.map +0 -1
  931. package/lib/typescript/modules/divider/Divider.d.ts.map +0 -1
  932. package/lib/typescript/modules/divider/Divider.variants.d.ts.map +0 -1
  933. package/lib/typescript/modules/divider/index.d.ts.map +0 -1
  934. package/lib/typescript/modules/drawer/Drawer.d.ts.map +0 -1
  935. package/lib/typescript/modules/drawer/Drawer.variants.d.ts.map +0 -1
  936. package/lib/typescript/modules/drawer/index.d.ts.map +0 -1
  937. package/lib/typescript/modules/empty-state/EmptyState.d.ts.map +0 -1
  938. package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts.map +0 -1
  939. package/lib/typescript/modules/empty-state/index.d.ts.map +0 -1
  940. package/lib/typescript/modules/file-upload/FileUpload.d.ts.map +0 -1
  941. package/lib/typescript/modules/file-upload/FileUpload.variants.d.ts.map +0 -1
  942. package/lib/typescript/modules/file-upload/index.d.ts.map +0 -1
  943. package/lib/typescript/modules/filter-sheet/FilterChip.d.ts.map +0 -1
  944. package/lib/typescript/modules/filter-sheet/FilterSheet.d.ts.map +0 -1
  945. package/lib/typescript/modules/filter-sheet/FilterSheet.variants.d.ts.map +0 -1
  946. package/lib/typescript/modules/filter-sheet/FilterSheetBody.d.ts.map +0 -1
  947. package/lib/typescript/modules/filter-sheet/filterSheet.helpers.d.ts.map +0 -1
  948. package/lib/typescript/modules/filter-sheet/index.d.ts.map +0 -1
  949. package/lib/typescript/modules/input/Input.d.ts.map +0 -1
  950. package/lib/typescript/modules/input/Input.variants.d.ts.map +0 -1
  951. package/lib/typescript/modules/input/index.d.ts.map +0 -1
  952. package/lib/typescript/modules/list-item/ListItem.d.ts.map +0 -1
  953. package/lib/typescript/modules/list-item/ListItem.variants.d.ts.map +0 -1
  954. package/lib/typescript/modules/list-item/index.d.ts.map +0 -1
  955. package/lib/typescript/modules/markdown/Markdown.d.ts.map +0 -1
  956. package/lib/typescript/modules/markdown/Markdown.variants.d.ts.map +0 -1
  957. package/lib/typescript/modules/markdown/index.d.ts.map +0 -1
  958. package/lib/typescript/modules/markdown/parseMarkdown.d.ts.map +0 -1
  959. package/lib/typescript/modules/menu/Menu.d.ts.map +0 -1
  960. package/lib/typescript/modules/menu/Menu.variants.d.ts.map +0 -1
  961. package/lib/typescript/modules/menu/index.d.ts.map +0 -1
  962. package/lib/typescript/modules/modal/Modal.d.ts.map +0 -1
  963. package/lib/typescript/modules/modal/Modal.variants.d.ts.map +0 -1
  964. package/lib/typescript/modules/modal/ModalPortalContext.d.ts.map +0 -1
  965. package/lib/typescript/modules/modal/ModalPortalProvider.d.ts.map +0 -1
  966. package/lib/typescript/modules/modal/index.d.ts.map +0 -1
  967. package/lib/typescript/modules/modal/renderWebPortal.d.ts.map +0 -1
  968. package/lib/typescript/modules/modal/renderWebPortal.web.d.ts.map +0 -1
  969. package/lib/typescript/modules/multi-select/MultiSelect.d.ts.map +0 -1
  970. package/lib/typescript/modules/multi-select/MultiSelect.variants.d.ts.map +0 -1
  971. package/lib/typescript/modules/multi-select/index.d.ts.map +0 -1
  972. package/lib/typescript/modules/number-input/NumberInput.d.ts.map +0 -1
  973. package/lib/typescript/modules/number-input/NumberInput.variants.d.ts.map +0 -1
  974. package/lib/typescript/modules/number-input/index.d.ts.map +0 -1
  975. package/lib/typescript/modules/pin-input/PinInput.d.ts.map +0 -1
  976. package/lib/typescript/modules/pin-input/PinInput.variants.d.ts.map +0 -1
  977. package/lib/typescript/modules/pin-input/index.d.ts.map +0 -1
  978. package/lib/typescript/modules/progress-bar/ProgressBar.d.ts.map +0 -1
  979. package/lib/typescript/modules/progress-bar/ProgressBar.variants.d.ts.map +0 -1
  980. package/lib/typescript/modules/progress-bar/index.d.ts.map +0 -1
  981. package/lib/typescript/modules/radio-group/RadioGroup.d.ts.map +0 -1
  982. package/lib/typescript/modules/radio-group/RadioGroup.variants.d.ts.map +0 -1
  983. package/lib/typescript/modules/radio-group/index.d.ts.map +0 -1
  984. package/lib/typescript/modules/reorder/Reorder.d.ts.map +0 -1
  985. package/lib/typescript/modules/reorder/Reorder.variants.d.ts.map +0 -1
  986. package/lib/typescript/modules/reorder/index.d.ts.map +0 -1
  987. package/lib/typescript/modules/select/Select.d.ts.map +0 -1
  988. package/lib/typescript/modules/select/Select.variants.d.ts.map +0 -1
  989. package/lib/typescript/modules/select/index.d.ts.map +0 -1
  990. package/lib/typescript/modules/skeleton/Skeleton.d.ts.map +0 -1
  991. package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts.map +0 -1
  992. package/lib/typescript/modules/skeleton/index.d.ts.map +0 -1
  993. package/lib/typescript/modules/slider/Slider.d.ts.map +0 -1
  994. package/lib/typescript/modules/slider/Slider.variants.d.ts.map +0 -1
  995. package/lib/typescript/modules/slider/index.d.ts.map +0 -1
  996. package/lib/typescript/modules/spinner/Spinner.d.ts.map +0 -1
  997. package/lib/typescript/modules/spinner/Spinner.variants.d.ts.map +0 -1
  998. package/lib/typescript/modules/spinner/index.d.ts.map +0 -1
  999. package/lib/typescript/modules/stat-tile/StatTile.d.ts.map +0 -1
  1000. package/lib/typescript/modules/stat-tile/StatTile.variants.d.ts.map +0 -1
  1001. package/lib/typescript/modules/stat-tile/index.d.ts.map +0 -1
  1002. package/lib/typescript/modules/stepper/Stepper.d.ts.map +0 -1
  1003. package/lib/typescript/modules/stepper/Stepper.variants.d.ts.map +0 -1
  1004. package/lib/typescript/modules/stepper/index.d.ts.map +0 -1
  1005. package/lib/typescript/modules/switch/Switch.d.ts.map +0 -1
  1006. package/lib/typescript/modules/switch/Switch.variants.d.ts.map +0 -1
  1007. package/lib/typescript/modules/switch/index.d.ts.map +0 -1
  1008. package/lib/typescript/modules/tabs/Tabs.d.ts.map +0 -1
  1009. package/lib/typescript/modules/tabs/Tabs.variants.d.ts.map +0 -1
  1010. package/lib/typescript/modules/tabs/index.d.ts.map +0 -1
  1011. package/lib/typescript/modules/textarea/Textarea.d.ts.map +0 -1
  1012. package/lib/typescript/modules/textarea/Textarea.variants.d.ts.map +0 -1
  1013. package/lib/typescript/modules/textarea/index.d.ts.map +0 -1
  1014. package/lib/typescript/modules/timeline/Timeline.d.ts.map +0 -1
  1015. package/lib/typescript/modules/timeline/Timeline.variants.d.ts.map +0 -1
  1016. package/lib/typescript/modules/timeline/index.d.ts.map +0 -1
  1017. package/lib/typescript/modules/toast/Toast.d.ts.map +0 -1
  1018. package/lib/typescript/modules/toast/Toast.variants.d.ts.map +0 -1
  1019. package/lib/typescript/modules/toast/index.d.ts.map +0 -1
  1020. package/lib/typescript/modules/tooltip/Tooltip.d.ts.map +0 -1
  1021. package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts.map +0 -1
  1022. package/lib/typescript/modules/tooltip/index.d.ts.map +0 -1
  1023. package/lib/typescript/theme/index.d.ts.map +0 -1
  1024. package/lib/typescript/theme/platform/colorScheme.native.d.ts.map +0 -1
  1025. package/lib/typescript/theme/platform/elevation.native.d.ts.map +0 -1
  1026. package/lib/typescript/theme/platform/fonts.native.d.ts.map +0 -1
  1027. package/lib/typescript/theme/platform/index.d.ts.map +0 -1
  1028. package/lib/typescript/theme/platform/units.native.d.ts.map +0 -1
  1029. package/lib/typescript/theme/provider/PixelizeProvider.d.ts.map +0 -1
  1030. package/lib/typescript/theme/provider/colorModeStorage.d.ts.map +0 -1
  1031. package/lib/typescript/theme/provider/index.d.ts.map +0 -1
  1032. package/lib/typescript/theme/provider/useTheme.d.ts.map +0 -1
  1033. package/lib/typescript/theme/provider/useThemeColors.d.ts.map +0 -1
  1034. package/lib/typescript/theme/provider/useThemeMode.d.ts.map +0 -1
  1035. package/lib/typescript/theme/tokens/brands/emerald/palette.dark.d.ts.map +0 -1
  1036. package/lib/typescript/theme/tokens/brands/emerald/palette.light.d.ts.map +0 -1
  1037. package/lib/typescript/theme/tokens/brands/index.d.ts.map +0 -1
  1038. package/lib/typescript/theme/tokens/brands/lavender/palette.dark.d.ts.map +0 -1
  1039. package/lib/typescript/theme/tokens/brands/lavender/palette.light.d.ts.map +0 -1
  1040. package/lib/typescript/theme/tokens/brands/meadow/palette.dark.d.ts.map +0 -1
  1041. package/lib/typescript/theme/tokens/brands/meadow/palette.light.d.ts.map +0 -1
  1042. package/lib/typescript/theme/tokens/brands/radiant/palette.dark.d.ts.map +0 -1
  1043. package/lib/typescript/theme/tokens/brands/radiant/palette.light.d.ts.map +0 -1
  1044. package/lib/typescript/theme/tokens/brands/rosewood/palette.dark.d.ts.map +0 -1
  1045. package/lib/typescript/theme/tokens/brands/rosewood/palette.light.d.ts.map +0 -1
  1046. package/lib/typescript/theme/tokens/brands/skyline/palette.dark.d.ts.map +0 -1
  1047. package/lib/typescript/theme/tokens/brands/skyline/palette.light.d.ts.map +0 -1
  1048. package/lib/typescript/theme/tokens/brands/slate/palette.dark.d.ts.map +0 -1
  1049. package/lib/typescript/theme/tokens/brands/slate/palette.light.d.ts.map +0 -1
  1050. package/lib/typescript/theme/tokens/brands/storefront/palette.dark.d.ts.map +0 -1
  1051. package/lib/typescript/theme/tokens/brands/storefront/palette.light.d.ts.map +0 -1
  1052. package/lib/typescript/theme/tokens/brands/zinc/palette.dark.d.ts.map +0 -1
  1053. package/lib/typescript/theme/tokens/brands/zinc/palette.light.d.ts.map +0 -1
  1054. package/lib/typescript/theme/tokens/builders/accentText.d.ts.map +0 -1
  1055. package/lib/typescript/theme/tokens/builders/buildBrandTokens.d.ts.map +0 -1
  1056. package/lib/typescript/theme/tokens/builders/buildDarkPalette.d.ts.map +0 -1
  1057. package/lib/typescript/theme/tokens/builders/color.d.ts.map +0 -1
  1058. package/lib/typescript/theme/tokens/index.d.ts.map +0 -1
  1059. package/lib/typescript/theme/tokens/primitives/borderWidths.d.ts.map +0 -1
  1060. package/lib/typescript/theme/tokens/primitives/breakpoints.d.ts.map +0 -1
  1061. package/lib/typescript/theme/tokens/primitives/elevation.d.ts.map +0 -1
  1062. package/lib/typescript/theme/tokens/primitives/fontSizes.d.ts.map +0 -1
  1063. package/lib/typescript/theme/tokens/primitives/fontWeights.d.ts.map +0 -1
  1064. package/lib/typescript/theme/tokens/primitives/index.d.ts.map +0 -1
  1065. package/lib/typescript/theme/tokens/primitives/letterSpacings.d.ts.map +0 -1
  1066. package/lib/typescript/theme/tokens/primitives/lineHeights.d.ts.map +0 -1
  1067. package/lib/typescript/theme/tokens/primitives/radii.d.ts.map +0 -1
  1068. package/lib/typescript/theme/tokens/primitives/sizes.d.ts.map +0 -1
  1069. package/lib/typescript/theme/tokens/primitives/space.d.ts.map +0 -1
  1070. package/lib/typescript/theme/tokens/primitives/zIndices.d.ts.map +0 -1
  1071. package/lib/typescript/theme/tokens/roles/index.d.ts.map +0 -1
  1072. package/lib/typescript/theme/tokens/types.d.ts.map +0 -1
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * OrgSwitcher's style + behaviour resolution — the same split every sibling module holds to:
5
+ * - STRUCTURE (sizing/spacing off the theme scale) lives in the `createThemedVariants` resolvers
6
+ * below — static per (brand, mode), registered once.
7
+ * - COLOUR is resolved from the theme's ROLE colours (never a raw ramp, never a hardcoded hex) by
8
+ * `resolveOrgSwitcherTriggerColors` / `resolveOrgSwitcherRowColors`.
9
+ *
10
+ * Why this module resolves its own row colours instead of reusing `Select`'s: `Select` pins every
11
+ * row to `bg.surface` and conveys selection with a check glyph alone, because `bg.selected` is not
12
+ * provably readable on every brand. Web's OrgSwitcher tints the active row, and that tint is the
13
+ * cue a user actually sees when the sheet opens. `accent.subtle` + `accent.text` is the one role
14
+ * pair the role table already guarantees at 4.5:1 for every brand × mode, so the tint comes from
15
+ * there rather than from widening `Select`'s deliberately closed row contract.
16
+ *
17
+ * Free of React and of any `Modal`/`Pressable` import, so the WCAG + behaviour tests import it
18
+ * directly (mocking only `react-native`'s `StyleSheet`, as `core/style` does).
19
+ */
20
+
21
+ import { createThemedVariants } from "../../core/style/index.js";
22
+ /** Same touch-target floor as Button (44dp — Apple HIG minimum, WCAG 2.5.5 AAA). */
23
+ export const MIN_TOUCH_TARGET = 44;
24
+ const slopFor = height => Math.max(0, Math.ceil((MIN_TOUCH_TARGET - height) / 2));
25
+ export const ORG_SWITCHER_SIZES = {
26
+ sm: {
27
+ height: 32,
28
+ fontSize: 14,
29
+ iconSize: 16,
30
+ avatarSize: "xs",
31
+ hitSlop: slopFor(32)
32
+ },
33
+ md: {
34
+ height: 40,
35
+ fontSize: 16,
36
+ iconSize: 18,
37
+ avatarSize: "sm",
38
+ hitSlop: slopFor(40)
39
+ },
40
+ lg: {
41
+ height: 48,
42
+ fontSize: 18,
43
+ iconSize: 20,
44
+ avatarSize: "md",
45
+ hitSlop: slopFor(48)
46
+ }
47
+ };
48
+
49
+ /** Minimum height for an org row — a list item is still an interactive target (WCAG 2.5.8). */
50
+ export const ORG_SWITCHER_ROW_MIN_HEIGHT = 44;
51
+
52
+ /** The "check" glyph beside the active row. Fixed — independent of the trigger's own `size`. */
53
+ export const ORG_SWITCHER_ROW_ICON_SIZE = 18;
54
+ /** `pressed` covers the touch-down state; there is no hover on a touch device. */
55
+ export function resolveOrgSwitcherTriggerColors(colors, pressed) {
56
+ return {
57
+ background: pressed ? colors.bg.sunken : colors.bg.surface,
58
+ border: colors.border.interactive,
59
+ text: colors.fg.default,
60
+ placeholder: colors.fg.muted,
61
+ icon: colors.fg.muted
62
+ };
63
+ }
64
+ /**
65
+ * Press moves each row to the OTHER row fill — active loses its tint, inactive gains `bg.sunken` —
66
+ * rather than both landing on one shared pressed colour: on zinc (the default brand) `accent.subtle`
67
+ * and `bg.sunken` are the same value, so a shared pressed fill gives the active row no feedback at
68
+ * all. The ink never changes with the fill, because all three fills clear AA for both text roles.
69
+ */
70
+ export function resolveOrgSwitcherRowColors(colors, selected, pressed) {
71
+ const resting = selected ? colors.accent.subtle : colors.bg.surface;
72
+ const underFinger = selected ? colors.bg.surface : colors.bg.sunken;
73
+ return {
74
+ background: pressed ? underFinger : resting,
75
+ text: colors.fg.default,
76
+ subtitle: colors.fg.muted,
77
+ icon: colors.accent.text
78
+ };
79
+ }
80
+ /**
81
+ * The trigger shows only the org name, so the accessible name has to say what the control IS —
82
+ * "Acme Inc" alone tells a screen-reader user nothing about switching orgs (WCAG 4.1.2, which also
83
+ * requires the expanded/collapsed state a collapsible control is in).
84
+ */
85
+ export function resolveOrgSwitcherAccessibility(input) {
86
+ return {
87
+ accessibilityRole: "button",
88
+ accessibilityLabel: input.selectedLabel === undefined ? input.placeholder : `Switch organization, ${input.selectedLabel}`,
89
+ "aria-expanded": input.open
90
+ };
91
+ }
92
+
93
+ /** Initials for the fallback avatar: first letters of the first two words, as `Avatar` clips to two. */
94
+ export function orgInitials(label) {
95
+ const words = label.trim().split(/\s+/).filter(Boolean);
96
+ const first = words[0]?.[0] ?? "";
97
+ const second = words.length > 1 ? words[1]?.[0] ?? "" : "";
98
+ return (first + second).toUpperCase() || "?";
99
+ }
100
+ export const orgSwitcherTriggerStructure = createThemedVariants(theme => ({
101
+ base: {
102
+ justifyContent: "center",
103
+ borderRadius: theme.radii.base,
104
+ borderWidth: theme.borderWidths.thin
105
+ },
106
+ variants: {
107
+ size: {
108
+ sm: {
109
+ height: ORG_SWITCHER_SIZES.sm.height,
110
+ paddingHorizontal: theme.space[2]
111
+ },
112
+ md: {
113
+ height: ORG_SWITCHER_SIZES.md.height,
114
+ paddingHorizontal: theme.space[3]
115
+ },
116
+ lg: {
117
+ height: ORG_SWITCHER_SIZES.lg.height,
118
+ paddingHorizontal: theme.space[4]
119
+ }
120
+ }
121
+ },
122
+ defaultVariants: {
123
+ size: "md"
124
+ }
125
+ }));
126
+
127
+ /** The trigger's animated layer: press motion moves the content, never the fill or the border. */
128
+ export const orgSwitcherTriggerContentStructure = createThemedVariants(theme => ({
129
+ base: {
130
+ flexDirection: "row",
131
+ alignItems: "center",
132
+ justifyContent: "space-between",
133
+ columnGap: theme.space[2]
134
+ }
135
+ }));
136
+
137
+ /** Avatar + org name, in one shrinkable row so the chevron stays pinned right. */
138
+ export const orgSwitcherTriggerValueStructure = createThemedVariants(theme => ({
139
+ base: {
140
+ flexDirection: "row",
141
+ alignItems: "center",
142
+ columnGap: theme.space[2],
143
+ flexShrink: 1
144
+ }
145
+ }));
146
+ export const orgSwitcherOverlayStructure = createThemedVariants(theme => ({
147
+ base: {
148
+ flex: 1,
149
+ justifyContent: "center",
150
+ paddingHorizontal: theme.space[6]
151
+ }
152
+ }));
153
+ export const orgSwitcherSheetStructure = createThemedVariants(theme => ({
154
+ base: {
155
+ borderRadius: theme.radii.base,
156
+ paddingVertical: theme.space[2],
157
+ maxHeight: 320,
158
+ ...theme.elevation.lg
159
+ }
160
+ }));
161
+ export const orgSwitcherRowStructure = createThemedVariants(theme => ({
162
+ base: {
163
+ justifyContent: "center",
164
+ minHeight: ORG_SWITCHER_ROW_MIN_HEIGHT,
165
+ paddingHorizontal: theme.space[4],
166
+ paddingVertical: theme.space[2]
167
+ }
168
+ }));
169
+
170
+ /** The row's animated layer: press motion moves the content, never the row fill. */
171
+ export const orgSwitcherRowContentStructure = createThemedVariants(theme => ({
172
+ base: {
173
+ flexDirection: "row",
174
+ alignItems: "center",
175
+ columnGap: theme.space[3]
176
+ }
177
+ }));
178
+
179
+ /** Name over role, taking the row's flexible width so both truncate rather than push the check off. */
180
+ export const orgSwitcherRowBodyStructure = createThemedVariants(theme => ({
181
+ base: {
182
+ flex: 1,
183
+ rowGap: theme.space[1]
184
+ }
185
+ }));
186
+ //# sourceMappingURL=OrgSwitcher.variants.js.map
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Public surface of `pixelize-native-library/org-switcher`. Value exports and type exports are
5
+ * split for `verbatimModuleSyntax`.
6
+ */
7
+
8
+ export { OrgSwitcher } from "./OrgSwitcher.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,163 @@
1
+ # pagination/ — page navigation controls in three shapes
2
+
3
+ `Pagination` renders the controls for a paged list: `numbered` (a windowed strip of page numbers
4
+ with gap markers), `compact` (`"Page 3 of 12"` between two arrows — the shape that actually fits a
5
+ phone), and `loadMore` (one button, for a cursor list that has no page count at all). It owns no
6
+ state and knows nothing about the caller's data source: pages in, `onPageChange(page)` out.
7
+
8
+ The module exists for `buildPageRange` more than for the pixels. Deciding which page numbers to
9
+ show around the current one — and where a gap marker earns its slot — is fiddly pure arithmetic
10
+ that gets re-derived, and subtly re-broken, in every app that needs a pager.
11
+
12
+ ## Files
13
+
14
+ | File | Role |
15
+ |------|------|
16
+ | `Pagination.tsx` | The component. Variant branching, control composition, press + a11y wiring. The numbered strip lives in a horizontal `ScrollView` — see "Design decisions". |
17
+ | `Pagination.variants.ts` | Pure resolvers (`buildPageRange`, `clampPage`, `resolvePaginationColors`, `resolvePaginationStep`, `resolvePaginationPage`, `resolvePaginationHitSlop`, `PAGINATION_SIZES`) + the themed structural resolvers. No React, no lucide, no native import. |
18
+ | `index.ts` | Public surface: `Pagination`, `PaginationProps`, `PaginationVariant`, `PaginationSize`, `PageItem`, and — unusually for this repo — `buildPageRange` / `clampPage` (see "Design decisions"). |
19
+ | `__tests__/Pagination.test.ts` | Pure: the page arithmetic (explicit table + a brute-force invariant sweep over pageCount × siblingCount × page, including out-of-bounds), the a11y contract, WCAG contrast (every brand × mode), touch target. |
20
+ | `__tests__/Pagination.render.test.tsx` | Render: what each variant mounts, navigation, boundary/disabled/loading gating, the decorative gap marker, and the ACTUAL rendered fill / `minWidth` / `hitSlop`. |
21
+
22
+ ## Props
23
+
24
+ | Prop | Type | Default | Notes |
25
+ |------|------|---------|-------|
26
+ | `page` | `number` | — | 1-indexed. Out-of-bounds values clamp — never a crash, never a blank strip. |
27
+ | `pageCount` | `number` | — | `0` renders nothing. Ignored by `loadMore`. |
28
+ | `onPageChange` | `(page: number) => void` | — | Fires with the destination page; never fires for the current page. |
29
+ | `variant` | `numbered \| compact \| loadMore` | `numbered` | `loadMore` needs `onLoadMore` + `hasMore`. |
30
+ | `siblingCount` | `number` | `1` | Pages either side of the current one. `numbered` only. Fractional/negative values normalise. |
31
+ | `showFirstLast` | `boolean` | `false` | Adds jump-to-first/last. `numbered` and `compact`. |
32
+ | `disabled` | `boolean` | `false` | Blocks every press; every control announces `disabled`. |
33
+ | `loading` | `boolean` | `false` | Blocks every press and announces `busy`; in `loadMore` it also shows a spinner. |
34
+ | `onLoadMore` / `hasMore` | `() => void` / `boolean` | — / `false` | `loadMore` only. `hasMore: false` renders nothing once nothing is in flight. |
35
+ | `loadMoreLabel` | `string` | `"Load more"` | |
36
+ | `size` | `sm \| md` | `md` | 32 / 40 dp control height; both reach 44dp via vertical `hitSlop`. |
37
+ | `style` | `LayoutStyle` | — | Layout-only, outermost, applied exactly once, last. |
38
+ | `testID` | `string` | — | Seeds `${testID}-{first,previous,next,last,summary,load-more}`, `${testID}-page-${n}`, and a `-focus-ring` child on each focused control. |
39
+
40
+ No `tone`/`variant` colour union: the current page is always the accent role, so there is nothing
41
+ for a closed union to resolve.
42
+
43
+ ## Accessibility contract (WCAG)
44
+
45
+ - **4.1.2** — the container is `accessibilityRole="none"` (it carries no information of its own,
46
+ same as `Divider`); every control is `accessibilityRole="button"`. The current page carries
47
+ `aria-current="page"` (web) AND `accessibilityState={{ selected: true }}` (native) plus an
48
+ `accessibilityLabel` of `"Page 3 of 12, current page"`; every other page reads `"Page 4 of 12"`.
49
+ Steps are labelled `"First page"` / `"Previous page"` / `"Next page"` / `"Last page"`.
50
+ `aria-current`, not `aria-selected`: this is a set of buttons, not a `listbox`/`tablist`, and
51
+ `aria-current="page"` is the correct WAI-ARIA signal for "the page you are on" — it also has no
52
+ React Native equivalent, which is why native rides the separate `accessibilityState` prop instead
53
+ (see `docs/PLATFORM-A11Y-PROPS.md`).
54
+ - **1.4.13 / 4.1.2 boundaries** — a step at an end carries flat `aria-disabled` (never
55
+ `accessibilityState={{…}}` — react-native-web discards the object form) and its `onPress` is
56
+ `undefined`, so a screen-reader user is told they are at an end instead of pressing a silently
57
+ dead control. The **current page is inert but NOT disabled**: it is selected, not unavailable, and
58
+ announcing both would misreport the user's own position.
59
+ - **1.4.11 — a disabled control still has to be seen.** This module deliberately does NOT copy
60
+ Button's `opacity: 0.5` dim, which relies on disabled controls being exempt from the contrast
61
+ minimum. A greyed arrow is the only thing telling a user they have reached the first/last page, so
62
+ inert controls swap to `fg.muted` instead — measured ≥ 3:1 (in fact ≥ 4.5:1) against the canvas on
63
+ every brand × mode.
64
+ - **1.4.3** — the current page's label is the DERIVED `accent.onSolid` on `accent.solid` (never a
65
+ hardcoded white); an idle page number is `fg.default`, measured on both the canvas and its pressed
66
+ `bg.sunken` fill — NOT `bg.hover`, whose saturated mid-tone drops a brand-tinted label below
67
+ 4.5:1 (the bug Button's "neutral" tone and Menu's rows document fixing the same way).
68
+ - **1.4.11 — boundaries** — the current-page pill and the load-more outline are each measured ≥ 3:1
69
+ against the canvas. Unlike `ButtonGroup`'s flush segments, controls here are a `space[1]` gutter
70
+ apart, so a boundary is always fill-vs-canvas and never fill-vs-neighbour.
71
+ - **2.5.5 / 2.5.8 target size** — every control reaches ≥ 44dp on both axes. Vertical via symmetric
72
+ `hitSlop` (32/40dp + 6/2dp); horizontal via a structural `minWidth: 44` on the node itself, with
73
+ horizontal `hitSlop` pinned to exactly 0 — React Native resolves overlapping siblings' `hitSlop`
74
+ to whichever renders LATER, not whichever is visually closer, so sideways expansion across the
75
+ gutter would hand a tap to the wrong page (`ButtonGroup` documents the same defect).
76
+ - **2.4.7 focus visible** — every step and page control paints a `border.focus` ring while focused
77
+ (keyboard, external keyboard, TV remote), gated off whenever the control is disabled/at-limit,
78
+ which is also `focusable={false}` so a remote cannot land on it (`NumberInput`'s treatment). The
79
+ ring is drawn **INSET** — the opposite of Button's outside offsets — because the numbered strip's
80
+ `ScrollView` is exactly one control tall and clips (`overflow: 'scroll'` native,
81
+ `overflowY: 'hidden'` on react-native-web), so an outside ring would never be painted. The current
82
+ page rings like any other: it is selected, not disabled.
83
+ - **1.3.1** — the gap marker is `accessible={false}` + `accessibilityElementsHidden` +
84
+ `importantForAccessibility="no-hide-descendants"`: it navigates nowhere and reads as noise
85
+ (Button's spinner is hidden the same way).
86
+ - **4.1.3** — the compact summary's page change is announced via `useAnnounce` (`core/a11y`), not
87
+ `accessibilityLiveRegion` — that prop is Android-only (iOS VoiceOver never hears it) and
88
+ react-native-web additionally logs a deprecation warning for it. No `accessibilityLiveRegion` is
89
+ also set on the rendered summary text: `useAnnounce` already announces on both platforms, so
90
+ keeping both would double-announce on Android (same rule `Input`/`FormField`/`FileUpload` follow).
91
+ - **2.3.3** — the compact summary's fade is skipped and its opacity `setValue`'d whenever
92
+ `useMotion().enabled` is false (reduced motion or the global kill switch). Press feedback is a
93
+ conditional background, not a transition, so it needs no gating.
94
+
95
+ ## Page-change motion
96
+
97
+ `compact` fades its "Page 3 of 12" summary back in when the resolved page changes (`core/motion`,
98
+ `fast` + `decelerate`) — opacity only, native driver, no fade on first mount, stopped on effect
99
+ cleanup and unmount. That is the whole motion budget for this module.
100
+
101
+ `numbered` deliberately animates **nothing**: it is a row of up to nine controls, and moving or
102
+ fading each one on every page change reads as noise rather than feedback. `loadMore` keeps its
103
+ existing spinner and no transition.
104
+
105
+ ## Patterns copied from Button / ButtonGroup / Menu
106
+
107
+ 1. **Structure vs colour split** — control height/padding/radius via `createThemedVariants`
108
+ (registered once per `(theme, size)`); colour resolved from `RoleColors` and applied inline.
109
+ 2. **Pure, testable resolvers** — the page arithmetic and the a11y derivation are unit-tested
110
+ against the real palettes and a brute-force page matrix, never eyeballed.
111
+ 3. **Per-edge `hitSlop`, not one flat number** — ButtonGroup's fix, applied to a gapped row.
112
+ 4. **Defence-in-depth press gating** — `onPress` is `undefined` whenever a control is inert, on top
113
+ of the `Pressable` `disabled` prop.
114
+ 5. **No `{...rest}`, `style` once on the outermost node, closed unions only.**
115
+
116
+ ## Design decisions specific to this module
117
+
118
+ - **A gap marker must hide at least TWO pages.** The usual implementation's `leftSibling > 2` lets a
119
+ marker stand in for a single number, which costs the same slot and navigates nowhere. The
120
+ thresholds here are `> 3` / `< total - 2`, which keeps the strip at a constant `2·siblingCount + 5`
121
+ slots (so it never reflows as the user pages) while showing the number instead of a useless marker.
122
+ - **The numbered strip scrolls.** Nine controls at the 44dp floor is wider than a phone. Shrinking
123
+ the controls to fit would break the touch target, so the strip lives in a horizontal `ScrollView`
124
+ instead — the same "a `.map()` with no scroll container silently loses content" reasoning Menu's
125
+ rows document. `compact` exists precisely so a narrow screen usually doesn't need this.
126
+ - **`buildPageRange` / `clampPage` are public**, unlike every other module's resolvers. They are
127
+ pure and dependency-free, and an app drawing its own pager re-deriving them by hand is exactly
128
+ the failure this module was built to stop.
129
+ - **`loadMore` renders nothing when `hasMore` is false** and no fetch is in flight — the standard
130
+ end-of-list behaviour. It stays mounted while `loading` so the spinner a press started does not
131
+ vanish if the caller optimistically flips `hasMore`.
132
+
133
+ ## Known gaps
134
+
135
+ - **Strings are English-only** (`"Page 3 of 12"`, `"Previous page"`, `"Load more"`). Only
136
+ `loadMoreLabel` is caller-supplied; a full localisation surface would be a `labels` prop, deferred
137
+ until a consumer actually ships a second locale.
138
+ - **No page-size ("rows per page") selector** and no total-item count — those are a different
139
+ control; compose `Select` beside this one.
140
+ - **The load-more button has no focus ring** — only the step and page controls do; `loadMore` is a
141
+ single button outside the clipping strip and was left on Button's pattern to adopt.
142
+ - The inert treatment is a token swap (`fg.default` → `fg.muted`) whose measured contrast is
143
+ asserted, but the *perceptual delta between the two* is not — the tests prove a disabled arrow is
144
+ readable, not that it looks unmistakably disabled on every brand.
145
+
146
+ ## Performance
147
+
148
+ Wrapped in `React.memo` (repo-wide re-render audit — see root `CLAUDE.md`), exported as
149
+ `Pagination = memo(PaginationImpl)`. Each control is a private, memo'd component in
150
+ `PaginationControls.tsx` fed primitives plus the memoized colour/hitSlop objects — it resolves its
151
+ own a11y surface and builds its own press handler and style callback, so nothing is rebuilt per
152
+ control per render and a page change re-renders only the controls whose state changed. `renderStep`,
153
+ `buildPageRange`'s result and both root style arrays are memoized. Every hook is called above the
154
+ variant early-returns. The strip is a plain `.map()` inside a `ScrollView`, not a `FlatList`: a page window is at
155
+ most `2·siblingCount + 5` items, so `VirtualizedList` setup would be pure cost with no windowing
156
+ benefit (Menu's rows document the same measurement). The themed structural resolvers compile once
157
+ per `(theme, size)` via the `WeakMap` cache and never rebuild per render.
158
+
159
+ ## Modernization (v1.0.7)
160
+
161
+ - Theme imports decoupled to `theme/hooks`; optional peers (reanimated, gesture-handler, flash-list) load at runtime.
162
+ - List-heavy surfaces use `VirtualList` with device-tier window sizing where applicable.
163
+ - `React.memo` + stable callbacks retained; render-item/key-extractor hoisted per ESLint perf rules.
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Pagination — page navigation controls in three shapes, driven entirely by props: `numbered` (a
5
+ * windowed strip of page numbers), `compact` ("Page 3 of 12" between two arrows — the shape that
6
+ * actually fits a phone), and `loadMore` (one button, for a cursor/infinite list that has no page
7
+ * count at all).
8
+ *
9
+ * All the interesting logic is pure and lives in `Pagination.variants.ts` — `buildPageRange` is the
10
+ * whole reason this module exists, since every app that re-derives it gets an edge case wrong.
11
+ * This file is the wiring: role colours in, `onPageChange` out. It owns no state and makes no
12
+ * assumption about where the pages come from.
13
+ *
14
+ * The one animated surface is `compact`'s summary, which fades in when the page changes
15
+ * (`core/motion`). The `numbered` strip is deliberately static — it is a row of controls, and
16
+ * animating each one on every page change is noise, not feedback.
17
+ */
18
+
19
+ import { memo, useCallback, useEffect, useMemo, useRef } from "react";
20
+ import { ActivityIndicator, Animated, Pressable, ScrollView, Text, View } from "react-native";
21
+ import { useAnnounce } from "../../core/a11y/index.js";
22
+ import { useAnimatedValue, useMotion } from "../../core/motion/index.js";
23
+ import { useTheme } from "../../theme/hooks.js";
24
+ import { DEFAULT_LOAD_MORE_LABEL, PAGINATION_SIZES, clampPage, buildPageRange, formatPageLabel, normalizePageCount, paginationLoadMoreStructure, paginationRowStructure, paginationScrollContentStructure, paginationStripRootStructure, resolvePaginationColors, resolvePaginationHitSlop } from "./Pagination.variants.js";
25
+ import { PaginationEllipsis, PaginationPageControl, PaginationStepControl } from "./PaginationControls.js";
26
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
27
+ function PaginationImpl({
28
+ page,
29
+ pageCount,
30
+ onPageChange,
31
+ variant = "numbered",
32
+ siblingCount = 1,
33
+ showFirstLast = false,
34
+ disabled = false,
35
+ loading = false,
36
+ onLoadMore,
37
+ hasMore = false,
38
+ loadMoreLabel = DEFAULT_LOAD_MORE_LABEL,
39
+ size = "md",
40
+ style,
41
+ testID
42
+ }) {
43
+ const theme = useTheme();
44
+ const motion = useMotion();
45
+ const colors = useMemo(() => resolvePaginationColors(theme.colors), [theme.colors]);
46
+ const spec = PAGINATION_SIZES[size];
47
+ const hitSlop = useMemo(() => resolvePaginationHitSlop(size), [size]);
48
+ const total = normalizePageCount(pageCount);
49
+ const current = clampPage(page, total);
50
+ const blocked = disabled || loading;
51
+ const summaryOpacity = useAnimatedValue(1);
52
+ const running = useRef(null);
53
+ const settled = useRef(false);
54
+
55
+ // Only the compact variant renders a summary line; the numbered strip announces through the
56
+ // pressed control itself, so announcing here too would double-speak.
57
+ useAnnounce(variant === "compact" ? formatPageLabel(current, total) : undefined);
58
+ useEffect(() => {
59
+ running.current?.stop();
60
+ // The first render is not a page change — only a later one is worth acknowledging.
61
+ if (!motion.enabled || !settled.current) {
62
+ settled.current = true;
63
+ summaryOpacity.setValue(1);
64
+ return;
65
+ }
66
+ summaryOpacity.setValue(0);
67
+ running.current = motion.timing(summaryOpacity, 1, {
68
+ duration: "fast",
69
+ easing: "decelerate"
70
+ });
71
+ running.current.start();
72
+ return () => running.current?.stop();
73
+ }, [current, motion, summaryOpacity]);
74
+ useEffect(() => () => running.current?.stop(), []);
75
+ const items = useMemo(() => variant === "numbered" ? buildPageRange(current, total, siblingCount) : [], [variant, current, total, siblingCount]);
76
+ const renderStep = useCallback((kind, icon) => /*#__PURE__*/_jsx(PaginationStepControl, {
77
+ kind: kind,
78
+ icon: icon,
79
+ page: current,
80
+ pageCount: total,
81
+ disabled: disabled,
82
+ loading: loading,
83
+ size: size,
84
+ iconSize: spec.iconSize,
85
+ theme: theme,
86
+ colors: colors,
87
+ hitSlop: hitSlop,
88
+ onPageChange: onPageChange,
89
+ testID: testID ? `${testID}-${kind}` : undefined
90
+ }, kind), [current, total, disabled, loading, size, spec.iconSize, theme, colors, hitSlop, onPageChange, testID]);
91
+ const summaryStyle = useMemo(() => [theme.fontStyleForWeight(theme.fontWeights.medium), {
92
+ fontSize: spec.fontSize,
93
+ color: blocked ? colors.inactiveLabel : colors.label,
94
+ paddingHorizontal: theme.space[2],
95
+ opacity: summaryOpacity
96
+ }], [theme, spec.fontSize, blocked, colors, summaryOpacity]);
97
+ const rowStyle = useMemo(() => [paginationRowStructure(theme), style], [theme, style]);
98
+ const stripStyle = useMemo(() => [paginationStripRootStructure(), style], [style]);
99
+ if (variant === "loadMore") {
100
+ if (!hasMore && !loading) return null;
101
+ const inert = blocked || onLoadMore === undefined;
102
+ return /*#__PURE__*/_jsx(View, {
103
+ testID: testID,
104
+ accessibilityRole: "none",
105
+ style: rowStyle,
106
+ children: /*#__PURE__*/_jsxs(Pressable, {
107
+ testID: testID ? `${testID}-load-more` : undefined,
108
+ accessibilityRole: "button",
109
+ accessibilityLabel: loadMoreLabel,
110
+ "aria-disabled": inert,
111
+ "aria-busy": loading,
112
+ disabled: inert,
113
+ onPress: inert ? undefined : onLoadMore,
114
+ hitSlop: hitSlop,
115
+ style: ({
116
+ pressed
117
+ }) => [paginationLoadMoreStructure(theme, {
118
+ size
119
+ }), {
120
+ borderColor: colors.border
121
+ }, pressed && {
122
+ backgroundColor: colors.pressedFill
123
+ }],
124
+ children: [loading &&
125
+ /*#__PURE__*/
126
+ // Never the sole loading signal — `aria-busy` announces it and the label
127
+ // stays visible. Hidden from AT so it isn't read as a separate element (Button's spinner).
128
+ _jsx(ActivityIndicator, {
129
+ size: "small",
130
+ color: colors.inactiveLabel,
131
+ accessibilityElementsHidden: true,
132
+ importantForAccessibility: "no-hide-descendants"
133
+ }), /*#__PURE__*/_jsx(Text, {
134
+ numberOfLines: 1,
135
+ style: [theme.fontStyleForWeight(theme.fontWeights.semibold), {
136
+ fontSize: spec.fontSize,
137
+ color: inert ? colors.inactiveLabel : colors.label
138
+ }],
139
+ children: loadMoreLabel
140
+ })]
141
+ })
142
+ });
143
+ }
144
+ if (total < 1) return null;
145
+ if (variant === "compact") {
146
+ return /*#__PURE__*/_jsxs(View, {
147
+ testID: testID,
148
+ accessibilityRole: "none",
149
+ style: rowStyle,
150
+ children: [showFirstLast && renderStep("first", "chevrons-left"), renderStep("previous", "chevron-left"), /*#__PURE__*/_jsx(Animated.Text, {
151
+ testID: testID ? `${testID}-summary` : undefined
152
+ // No `accessibilityLiveRegion` (deliberate): it's Android-only, and `useAnnounce` above
153
+ // already announces on both platforms — keeping both would double-announce on Android.
154
+ ,
155
+ numberOfLines: 1,
156
+ style: summaryStyle,
157
+ children: formatPageLabel(current, total)
158
+ }), renderStep("next", "chevron-right"), showFirstLast && renderStep("last", "chevrons-right")]
159
+ });
160
+ }
161
+ return /*#__PURE__*/_jsx(View, {
162
+ testID: testID,
163
+ accessibilityRole: "none",
164
+ style: stripStyle,
165
+ children: /*#__PURE__*/_jsxs(ScrollView, {
166
+ horizontal: true,
167
+ bounces: false,
168
+ showsHorizontalScrollIndicator: false,
169
+ contentContainerStyle: paginationScrollContentStructure(theme),
170
+ children: [showFirstLast && renderStep("first", "chevrons-left"), renderStep("previous", "chevron-left"), items.map((item, index) => item === "ellipsis" ? /*#__PURE__*/_jsx(PaginationEllipsis, {
171
+ size: size,
172
+ fontSize: spec.fontSize,
173
+ theme: theme,
174
+ color: colors.inactiveLabel
175
+ }, `ellipsis-${index}`) : /*#__PURE__*/_jsx(PaginationPageControl, {
176
+ item: item,
177
+ page: current,
178
+ pageCount: total,
179
+ disabled: disabled,
180
+ loading: loading,
181
+ blocked: blocked,
182
+ size: size,
183
+ fontSize: spec.fontSize,
184
+ theme: theme,
185
+ colors: colors,
186
+ hitSlop: hitSlop,
187
+ onPageChange: onPageChange,
188
+ testID: testID ? `${testID}-page-${item}` : undefined
189
+ }, `page-${item}`)), renderStep("next", "chevron-right"), showFirstLast && renderStep("last", "chevrons-right")]
190
+ })
191
+ });
192
+ }
193
+
194
+ // A consumer's screen re-renders far more often than Pagination's own props change — memo is
195
+ // near-free insurance for a design-system primitive (see CLAUDE.md "Performance" section).
196
+ export const Pagination = /*#__PURE__*/memo(PaginationImpl);
197
+ //# sourceMappingURL=Pagination.js.map