pixelize-native-library 1.0.6 → 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 (1052) 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 -86
  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 +38 -117
  132. package/lib/module/modules/bottom-nav/BottomNav.variants.js +93 -9
  133. package/lib/module/modules/bottom-nav/BottomNavIconWithBadge.js +123 -0
  134. package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js +146 -120
  135. package/lib/module/modules/bottom-nav/BottomNavTab.js +138 -0
  136. package/lib/module/modules/bottom-nav/MODULE.md +45 -15
  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 +129 -0
  151. package/lib/module/modules/charts/ChartLegend.js +154 -0
  152. package/lib/module/modules/charts/Charts.variants.js +582 -0
  153. package/lib/module/modules/charts/DonutChart.js +133 -0
  154. package/lib/module/modules/charts/LineChart.js +179 -0
  155. package/lib/module/modules/charts/MODULE.md +178 -0
  156. package/lib/module/modules/charts/PieChart.js +140 -0
  157. package/lib/module/modules/charts/Sparkline.js +80 -0
  158. package/lib/module/modules/charts/index.js +15 -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 +92 -0
  245. package/lib/module/modules/list-item/ListItem.variants.js +53 -0
  246. package/lib/module/modules/list-item/MODULE.md +53 -0
  247. package/lib/module/modules/list-item/index.js +10 -0
  248. package/lib/module/modules/markdown/MODULE.md +71 -0
  249. package/lib/module/modules/markdown/Markdown.js +183 -0
  250. package/lib/module/modules/markdown/Markdown.variants.js +73 -0
  251. package/lib/module/modules/markdown/index.js +11 -0
  252. package/lib/module/modules/markdown/parseMarkdown.js +153 -0
  253. package/lib/module/modules/menu/MODULE.md +45 -14
  254. package/lib/module/modules/menu/Menu.js +174 -65
  255. package/lib/module/modules/menu/Menu.variants.js +10 -0
  256. package/lib/module/modules/message-bubble/MODULE.md +38 -0
  257. package/lib/module/modules/message-bubble/MessageBubble.js +55 -0
  258. package/lib/module/modules/message-bubble/MessageBubble.variants.js +57 -0
  259. package/lib/module/modules/message-bubble/index.js +4 -0
  260. package/lib/module/modules/modal/MODULE.md +29 -3
  261. package/lib/module/modules/modal/Modal.js +72 -22
  262. package/lib/module/modules/more-items/MODULE.md +72 -0
  263. package/lib/module/modules/more-items/MoreItems.js +162 -0
  264. package/lib/module/modules/more-items/MoreItems.variants.js +80 -0
  265. package/lib/module/modules/more-items/index.js +4 -0
  266. package/lib/module/modules/multi-select/MODULE.md +85 -19
  267. package/lib/module/modules/multi-select/MultiSelect.js +217 -105
  268. package/lib/module/modules/multi-select/MultiSelect.variants.js +28 -5
  269. package/lib/module/modules/number-input/MODULE.md +39 -5
  270. package/lib/module/modules/number-input/NumberInput.js +41 -11
  271. package/lib/module/modules/number-input/NumberInput.variants.js +39 -5
  272. package/lib/module/modules/org-switcher/MODULE.md +121 -0
  273. package/lib/module/modules/org-switcher/OrgSwitcher.js +284 -0
  274. package/lib/module/modules/org-switcher/OrgSwitcher.variants.js +186 -0
  275. package/lib/module/modules/org-switcher/index.js +9 -0
  276. package/lib/module/modules/pagination/MODULE.md +163 -0
  277. package/lib/module/modules/pagination/Pagination.js +197 -0
  278. package/lib/module/modules/pagination/Pagination.variants.js +307 -0
  279. package/lib/module/modules/pagination/PaginationControls.js +193 -0
  280. package/lib/module/modules/pagination/index.js +15 -0
  281. package/lib/module/modules/pin-input/MODULE.md +29 -14
  282. package/lib/module/modules/pin-input/PinInput.js +111 -80
  283. package/lib/module/modules/pin-input/PinInput.variants.js +13 -5
  284. package/lib/module/modules/progress-bar/MODULE.md +17 -7
  285. package/lib/module/modules/progress-bar/ProgressBar.js +97 -56
  286. package/lib/module/modules/progress-bar/ProgressBar.variants.js +16 -18
  287. package/lib/module/modules/radio-group/MODULE.md +40 -14
  288. package/lib/module/modules/radio-group/RadioGroup.js +71 -7
  289. package/lib/module/modules/radio-group/RadioGroup.variants.js +46 -10
  290. package/lib/module/modules/reorder/MODULE.md +104 -97
  291. package/lib/module/modules/reorder/Reorder.js +233 -197
  292. package/lib/module/modules/reorder/Reorder.variants.js +35 -13
  293. package/lib/module/modules/rich-text/MODULE.md +52 -0
  294. package/lib/module/modules/rich-text/RichText.js +362 -0
  295. package/lib/module/modules/rich-text/RichText.variants.js +17 -0
  296. package/lib/module/modules/rich-text/index.js +5 -0
  297. package/lib/module/modules/rich-text/parseRichText.js +133 -0
  298. package/lib/module/modules/rich-text-editor/MODULE.md +225 -0
  299. package/lib/module/modules/rich-text-editor/RichTextEditor.js +413 -0
  300. package/lib/module/modules/rich-text-editor/RichTextEditor.variants.js +316 -0
  301. package/lib/module/modules/rich-text-editor/index.js +10 -0
  302. package/lib/module/modules/screen/MODULE.md +57 -0
  303. package/lib/module/modules/screen/Screen.js +106 -0
  304. package/lib/module/modules/screen/Screen.variants.js +43 -0
  305. package/lib/module/modules/screen/index.js +10 -0
  306. package/lib/module/modules/search-bar/MODULE.md +114 -0
  307. package/lib/module/modules/search-bar/SearchBar.js +256 -0
  308. package/lib/module/modules/search-bar/SearchBar.variants.js +205 -0
  309. package/lib/module/modules/search-bar/index.js +12 -0
  310. package/lib/module/modules/section/MODULE.md +39 -0
  311. package/lib/module/modules/section/Section.js +42 -0
  312. package/lib/module/modules/section/Section.variants.js +29 -0
  313. package/lib/module/modules/section/index.js +10 -0
  314. package/lib/module/modules/section-list/MODULE.md +18 -0
  315. package/lib/module/modules/section-list/SectionList.js +64 -0
  316. package/lib/module/modules/section-list/SectionList.variants.js +11 -0
  317. package/lib/module/modules/section-list/index.js +4 -0
  318. package/lib/module/modules/segmented-control/MODULE.md +124 -0
  319. package/lib/module/modules/segmented-control/SegmentedControl.js +158 -0
  320. package/lib/module/modules/segmented-control/SegmentedControl.variants.js +167 -0
  321. package/lib/module/modules/segmented-control/index.js +13 -0
  322. package/lib/module/modules/select/MODULE.md +82 -15
  323. package/lib/module/modules/select/Select.js +201 -96
  324. package/lib/module/modules/select/Select.variants.js +39 -5
  325. package/lib/module/modules/skeleton/MODULE.md +27 -7
  326. package/lib/module/modules/skeleton/Skeleton.js +52 -38
  327. package/lib/module/modules/skeleton/Skeleton.variants.js +9 -8
  328. package/lib/module/modules/slider/MODULE.md +31 -5
  329. package/lib/module/modules/slider/Slider.js +67 -10
  330. package/lib/module/modules/slider/Slider.variants.js +60 -13
  331. package/lib/module/modules/spinner/MODULE.md +16 -6
  332. package/lib/module/modules/spinner/Spinner.js +20 -16
  333. package/lib/module/modules/spinner/Spinner.variants.js +5 -3
  334. package/lib/module/modules/stage-progress/MODULE.md +64 -0
  335. package/lib/module/modules/stage-progress/StageProgress.js +174 -0
  336. package/lib/module/modules/stage-progress/StageProgress.variants.js +164 -0
  337. package/lib/module/modules/stage-progress/index.js +4 -0
  338. package/lib/module/modules/stat-tile/MODULE.md +51 -0
  339. package/lib/module/modules/stat-tile/StatTile.js +124 -0
  340. package/lib/module/modules/stat-tile/StatTile.variants.js +57 -0
  341. package/lib/module/modules/stat-tile/index.js +10 -0
  342. package/lib/module/modules/state-block/MODULE.md +52 -0
  343. package/lib/module/modules/state-block/StateBlock.js +131 -0
  344. package/lib/module/modules/state-block/StateBlock.variants.js +55 -0
  345. package/lib/module/modules/state-block/index.js +10 -0
  346. package/lib/module/modules/stepper/MODULE.md +33 -6
  347. package/lib/module/modules/stepper/Stepper.js +108 -39
  348. package/lib/module/modules/stepper/Stepper.variants.js +6 -6
  349. package/lib/module/modules/swipeable-row/MODULE.md +120 -0
  350. package/lib/module/modules/swipeable-row/SwipeableRow.js +244 -0
  351. package/lib/module/modules/swipeable-row/SwipeableRow.variants.js +80 -0
  352. package/lib/module/modules/swipeable-row/index.js +4 -0
  353. package/lib/module/modules/switch/MODULE.md +14 -0
  354. package/lib/module/modules/switch/Switch.js +1 -1
  355. package/lib/module/modules/switch/Switch.variants.js +8 -0
  356. package/lib/module/modules/tabs/MODULE.md +47 -13
  357. package/lib/module/modules/tabs/Tabs.js +121 -72
  358. package/lib/module/modules/tabs/Tabs.variants.js +30 -8
  359. package/lib/module/modules/text/MODULE.md +51 -0
  360. package/lib/module/modules/text/Text.js +47 -0
  361. package/lib/module/modules/text/Text.variants.js +98 -0
  362. package/lib/module/modules/text/index.js +4 -0
  363. package/lib/module/modules/textarea/MODULE.md +29 -13
  364. package/lib/module/modules/textarea/Textarea.js +90 -45
  365. package/lib/module/modules/textarea/Textarea.variants.js +14 -9
  366. package/lib/module/modules/timeline/MODULE.md +49 -8
  367. package/lib/module/modules/timeline/Timeline.js +151 -74
  368. package/lib/module/modules/timeline/Timeline.variants.js +13 -0
  369. package/lib/module/modules/toast/MODULE.md +66 -7
  370. package/lib/module/modules/toast/Toast.js +93 -27
  371. package/lib/module/modules/toast/Toast.variants.js +37 -1
  372. package/lib/module/modules/toast/toastScreenReader.js +69 -0
  373. package/lib/module/modules/tooltip/MODULE.md +78 -28
  374. package/lib/module/modules/tooltip/Tooltip.js +93 -43
  375. package/lib/module/modules/tooltip/Tooltip.variants.js +3 -4
  376. package/lib/module/modules/typing-indicator/MODULE.md +48 -0
  377. package/lib/module/modules/typing-indicator/TypingIndicator.js +98 -0
  378. package/lib/module/modules/typing-indicator/TypingIndicator.variants.js +55 -0
  379. package/lib/module/modules/typing-indicator/index.js +4 -0
  380. package/lib/module/modules/unread-badge/MODULE.md +20 -0
  381. package/lib/module/modules/unread-badge/UnreadBadge.js +45 -0
  382. package/lib/module/modules/unread-badge/UnreadBadge.variants.js +66 -0
  383. package/lib/module/modules/unread-badge/index.js +4 -0
  384. package/lib/module/test/mocks/flashList.js +5 -0
  385. package/lib/module/test/perfHelpers.js +18 -0
  386. package/lib/module/theme/MODULE.md +6 -0
  387. package/lib/module/theme/hooks.js +11 -0
  388. package/lib/module/theme/index.js +3 -6
  389. package/lib/module/theme/platform/MODULE.md +6 -0
  390. package/lib/module/theme/platform/motion.native.js +15 -0
  391. package/lib/module/theme/provider/PixelizeProvider.js +9 -47
  392. package/lib/module/theme/provider/ThemeContext.js +6 -0
  393. package/lib/module/theme/provider/colorModeStorage.js +2 -2
  394. package/lib/module/theme/provider/index.js +1 -0
  395. package/lib/module/theme/provider/loadPalette.js +75 -0
  396. package/lib/module/theme/provider/types.js +4 -0
  397. package/lib/module/theme/provider/useTheme.js +1 -2
  398. package/lib/module/theme/provider/useThemeMode.js +1 -1
  399. package/lib/module/theme/tokens/builders/accentText.js +9 -0
  400. package/lib/module/theme/tokens/roles/index.js +9 -3
  401. package/lib/typescript/core/a11y/announce.d.ts +20 -0
  402. package/lib/typescript/core/a11y/announce.web.d.ts +27 -0
  403. package/lib/typescript/core/a11y/index.d.ts +21 -2
  404. package/lib/typescript/core/a11y/keyboard.d.ts +45 -0
  405. package/lib/typescript/core/a11y/keyboard.web.d.ts +69 -0
  406. package/lib/typescript/core/a11y/labels.d.ts +19 -0
  407. package/lib/typescript/core/device/index.d.ts +16 -0
  408. package/lib/typescript/core/heading/index.d.ts +45 -0
  409. package/lib/typescript/core/icon/Icon.d.ts +18 -0
  410. package/lib/typescript/core/icon/icons/arrow-down.d.ts +3 -0
  411. package/lib/typescript/core/icon/icons/arrow-left.d.ts +3 -0
  412. package/lib/typescript/core/icon/icons/arrow-right.d.ts +3 -0
  413. package/lib/typescript/core/icon/icons/arrow-up.d.ts +3 -0
  414. package/lib/typescript/core/icon/icons/at-sign.d.ts +3 -0
  415. package/lib/typescript/core/icon/icons/bell.d.ts +3 -0
  416. package/lib/typescript/core/icon/icons/bold.d.ts +3 -0
  417. package/lib/typescript/core/icon/icons/building-2.d.ts +3 -0
  418. package/lib/typescript/core/icon/icons/calendar.d.ts +3 -0
  419. package/lib/typescript/core/icon/icons/chart-column.d.ts +3 -0
  420. package/lib/typescript/core/icon/icons/check.d.ts +3 -0
  421. package/lib/typescript/core/icon/icons/chevron-down.d.ts +3 -0
  422. package/lib/typescript/core/icon/icons/chevron-left.d.ts +3 -0
  423. package/lib/typescript/core/icon/icons/chevron-right.d.ts +3 -0
  424. package/lib/typescript/core/icon/icons/chevron-up.d.ts +3 -0
  425. package/lib/typescript/core/icon/icons/chevrons-left.d.ts +3 -0
  426. package/lib/typescript/core/icon/icons/chevrons-right.d.ts +3 -0
  427. package/lib/typescript/core/icon/icons/chevrons-up-down.d.ts +3 -0
  428. package/lib/typescript/core/icon/icons/circle-alert.d.ts +3 -0
  429. package/lib/typescript/core/icon/icons/circle-check.d.ts +3 -0
  430. package/lib/typescript/core/icon/icons/clock.d.ts +3 -0
  431. package/lib/typescript/core/icon/icons/code.d.ts +3 -0
  432. package/lib/typescript/core/icon/icons/download.d.ts +3 -0
  433. package/lib/typescript/core/icon/icons/external-link.d.ts +3 -0
  434. package/lib/typescript/core/icon/icons/eye.d.ts +3 -0
  435. package/lib/typescript/core/icon/icons/file-text.d.ts +3 -0
  436. package/lib/typescript/core/icon/icons/filter.d.ts +3 -0
  437. package/lib/typescript/core/icon/icons/flag.d.ts +3 -0
  438. package/lib/typescript/core/icon/icons/folder.d.ts +3 -0
  439. package/lib/typescript/core/icon/icons/heading-1.d.ts +3 -0
  440. package/lib/typescript/core/icon/icons/heading-2.d.ts +3 -0
  441. package/lib/typescript/core/icon/icons/heading-3.d.ts +3 -0
  442. package/lib/typescript/core/icon/icons/image.d.ts +3 -0
  443. package/lib/typescript/core/icon/icons/inbox.d.ts +3 -0
  444. package/lib/typescript/core/icon/icons/info.d.ts +3 -0
  445. package/lib/typescript/core/icon/icons/italic.d.ts +3 -0
  446. package/lib/typescript/core/icon/icons/kanban.d.ts +3 -0
  447. package/lib/typescript/core/icon/icons/layers.d.ts +3 -0
  448. package/lib/typescript/core/icon/icons/layout-dashboard.d.ts +3 -0
  449. package/lib/typescript/core/icon/icons/layout-template.d.ts +3 -0
  450. package/lib/typescript/core/icon/icons/life-buoy.d.ts +3 -0
  451. package/lib/typescript/core/icon/icons/link.d.ts +3 -0
  452. package/lib/typescript/core/icon/icons/list-checks.d.ts +3 -0
  453. package/lib/typescript/core/icon/icons/list-ordered.d.ts +3 -0
  454. package/lib/typescript/core/icon/icons/list-todo.d.ts +3 -0
  455. package/lib/typescript/core/icon/icons/list.d.ts +3 -0
  456. package/lib/typescript/core/icon/icons/log-out.d.ts +3 -0
  457. package/lib/typescript/core/icon/icons/map.d.ts +3 -0
  458. package/lib/typescript/core/icon/icons/message-square.d.ts +3 -0
  459. package/lib/typescript/core/icon/icons/milestone.d.ts +3 -0
  460. package/lib/typescript/core/icon/icons/minus.d.ts +3 -0
  461. package/lib/typescript/core/icon/icons/more-horizontal.d.ts +3 -0
  462. package/lib/typescript/core/icon/icons/paperclip.d.ts +3 -0
  463. package/lib/typescript/core/icon/icons/pencil.d.ts +3 -0
  464. package/lib/typescript/core/icon/icons/plus.d.ts +3 -0
  465. package/lib/typescript/core/icon/icons/quote.d.ts +3 -0
  466. package/lib/typescript/core/icon/icons/refresh-cw.d.ts +3 -0
  467. package/lib/typescript/core/icon/icons/save.d.ts +3 -0
  468. package/lib/typescript/core/icon/icons/search.d.ts +3 -0
  469. package/lib/typescript/core/icon/icons/send.d.ts +3 -0
  470. package/lib/typescript/core/icon/icons/settings.d.ts +3 -0
  471. package/lib/typescript/core/icon/icons/share.d.ts +3 -0
  472. package/lib/typescript/core/icon/icons/square-code.d.ts +3 -0
  473. package/lib/typescript/core/icon/icons/star.d.ts +3 -0
  474. package/lib/typescript/core/icon/icons/strikethrough.d.ts +3 -0
  475. package/lib/typescript/core/icon/icons/tag.d.ts +3 -0
  476. package/lib/typescript/core/icon/icons/trash.d.ts +3 -0
  477. package/lib/typescript/core/icon/icons/triangle-alert.d.ts +3 -0
  478. package/lib/typescript/core/icon/icons/underline.d.ts +3 -0
  479. package/lib/typescript/core/icon/icons/upload.d.ts +3 -0
  480. package/lib/typescript/core/icon/icons/user.d.ts +3 -0
  481. package/lib/typescript/core/icon/icons/users.d.ts +3 -0
  482. package/lib/typescript/core/icon/icons/x.d.ts +3 -0
  483. package/lib/typescript/core/icon/index.d.ts +6 -57
  484. package/lib/typescript/core/icon/names.d.ts +2 -0
  485. package/lib/typescript/core/icon/resolve.d.ts +4 -0
  486. package/lib/typescript/core/icon/types.d.ts +13 -0
  487. package/lib/typescript/core/list/VirtualList.d.ts +55 -0
  488. package/lib/typescript/core/list/index.d.ts +3 -0
  489. package/lib/typescript/core/media/MediaImage.d.ts +28 -0
  490. package/lib/typescript/core/media/expoImage.d.ts +14 -0
  491. package/lib/typescript/core/media/index.d.ts +7 -0
  492. package/lib/typescript/core/media/pickers.d.ts +27 -0
  493. package/lib/typescript/core/motion/config.d.ts +56 -0
  494. package/lib/typescript/core/motion/index.d.ts +8 -0
  495. package/lib/typescript/core/motion/presets.d.ts +49 -0
  496. package/lib/typescript/core/motion/useAnimatedValue.d.ts +11 -0
  497. package/lib/typescript/core/motion/useMotion.d.ts +34 -0
  498. package/lib/typescript/core/style/index.d.ts +3 -0
  499. package/lib/typescript/core/style/sx.d.ts +86 -0
  500. package/lib/typescript/core/style/useThemedStyles.d.ts +5 -0
  501. package/lib/typescript/index.d.ts +134 -2
  502. package/lib/typescript/modules/accordion/Accordion.d.ts +12 -23
  503. package/lib/typescript/modules/accordion/Accordion.variants.d.ts +5 -5
  504. package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts +1 -1
  505. package/lib/typescript/modules/app-bar/AppBar.d.ts +37 -0
  506. package/lib/typescript/modules/app-bar/AppBar.variants.d.ts +35 -0
  507. package/lib/typescript/modules/app-bar/index.d.ts +9 -0
  508. package/lib/typescript/modules/avatar/Avatar.d.ts +23 -3
  509. package/lib/typescript/modules/avatar/Avatar.variants.d.ts +32 -1
  510. package/lib/typescript/modules/avatar/index.d.ts +1 -1
  511. package/lib/typescript/modules/avatar-group/AvatarGroup.d.ts +28 -0
  512. package/lib/typescript/modules/avatar-group/AvatarGroup.variants.d.ts +75 -0
  513. package/lib/typescript/modules/avatar-group/index.d.ts +9 -0
  514. package/lib/typescript/modules/badge/Badge.d.ts +3 -1
  515. package/lib/typescript/modules/badge/Badge.variants.d.ts +8 -4
  516. package/lib/typescript/modules/banner/Banner.d.ts +35 -0
  517. package/lib/typescript/modules/banner/Banner.variants.d.ts +49 -0
  518. package/lib/typescript/modules/banner/index.d.ts +5 -0
  519. package/lib/typescript/modules/bottom-nav/BottomNav.d.ts +14 -9
  520. package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts +72 -9
  521. package/lib/typescript/modules/bottom-nav/BottomNavIconWithBadge.d.ts +25 -0
  522. package/lib/typescript/modules/bottom-nav/BottomNavTab.d.ts +34 -0
  523. package/lib/typescript/modules/bottom-sheet/BottomSheet.d.ts +29 -0
  524. package/lib/typescript/modules/bottom-sheet/BottomSheet.variants.d.ts +13 -0
  525. package/lib/typescript/modules/bottom-sheet/index.d.ts +3 -0
  526. package/lib/typescript/modules/button/Button.d.ts +21 -0
  527. package/lib/typescript/modules/button/Button.variants.d.ts +22 -9
  528. package/lib/typescript/modules/button-group/ButtonGroup.d.ts +4 -2
  529. package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts +18 -5
  530. package/lib/typescript/modules/card/Card.variants.d.ts +2 -2
  531. package/lib/typescript/modules/charts/BarChart.d.ts +26 -0
  532. package/lib/typescript/modules/charts/BarList.d.ts +18 -0
  533. package/lib/typescript/modules/charts/ChartLegend.d.ts +16 -0
  534. package/lib/typescript/modules/charts/Charts.variants.d.ts +225 -0
  535. package/lib/typescript/modules/charts/DonutChart.d.ts +21 -0
  536. package/lib/typescript/modules/charts/LineChart.d.ts +30 -0
  537. package/lib/typescript/modules/charts/PieChart.d.ts +18 -0
  538. package/lib/typescript/modules/charts/Sparkline.d.ts +13 -0
  539. package/lib/typescript/modules/charts/index.d.ts +19 -0
  540. package/lib/typescript/modules/checkbox/Checkbox.d.ts +4 -1
  541. package/lib/typescript/modules/checkbox/Checkbox.variants.d.ts +14 -9
  542. package/lib/typescript/modules/chip/Chip.d.ts +38 -0
  543. package/lib/typescript/modules/chip/Chip.variants.d.ts +198 -0
  544. package/lib/typescript/modules/chip/ChipGroup.d.ts +22 -0
  545. package/lib/typescript/modules/chip/index.d.ts +12 -0
  546. package/lib/typescript/modules/combobox/Combobox.d.ts +81 -0
  547. package/lib/typescript/modules/combobox/Combobox.variants.d.ts +212 -0
  548. package/lib/typescript/modules/combobox/comboboxKeys.d.ts +25 -0
  549. package/lib/typescript/modules/combobox/comboboxKeys.web.d.ts +23 -0
  550. package/lib/typescript/modules/combobox/index.d.ts +11 -0
  551. package/lib/typescript/modules/composer/Composer.d.ts +28 -0
  552. package/lib/typescript/modules/composer/Composer.variants.d.ts +7 -0
  553. package/lib/typescript/modules/composer/index.d.ts +3 -0
  554. package/lib/typescript/modules/copy-button/CopyButton.d.ts +21 -0
  555. package/lib/typescript/modules/copy-button/CopyButton.variants.d.ts +42 -0
  556. package/lib/typescript/modules/copy-button/index.d.ts +4 -0
  557. package/lib/typescript/modules/data-table/DataTable.d.ts +44 -0
  558. package/lib/typescript/modules/data-table/DataTable.variants.d.ts +118 -0
  559. package/lib/typescript/modules/data-table/index.d.ts +9 -0
  560. package/lib/typescript/modules/date-picker/Calendar.d.ts +42 -0
  561. package/lib/typescript/modules/date-picker/Calendar.keys.d.ts +19 -0
  562. package/lib/typescript/modules/date-picker/Calendar.keys.web.d.ts +35 -0
  563. package/lib/typescript/modules/date-picker/DatePicker.d.ts +40 -0
  564. package/lib/typescript/modules/date-picker/DatePicker.variants.d.ts +322 -0
  565. package/lib/typescript/modules/date-picker/DateRangePicker.d.ts +32 -0
  566. package/lib/typescript/modules/date-picker/PickerField.d.ts +26 -0
  567. package/lib/typescript/modules/date-picker/PickerShell.d.ts +29 -0
  568. package/lib/typescript/modules/date-picker/TimePicker.d.ts +20 -0
  569. package/lib/typescript/modules/date-picker/index.d.ts +16 -0
  570. package/lib/typescript/modules/divider/Divider.variants.d.ts +2 -2
  571. package/lib/typescript/modules/drawer/Drawer.d.ts +2 -1
  572. package/lib/typescript/modules/drawer/Drawer.variants.d.ts +4 -13
  573. package/lib/typescript/modules/empty-state/EmptyState.d.ts +7 -4
  574. package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts +7 -1
  575. package/lib/typescript/modules/fab/Fab.d.ts +74 -0
  576. package/lib/typescript/modules/fab/Fab.variants.d.ts +229 -0
  577. package/lib/typescript/modules/fab/FabGroup.d.ts +66 -0
  578. package/lib/typescript/modules/fab/index.d.ts +12 -0
  579. package/lib/typescript/modules/file-grid/FileGrid.d.ts +26 -0
  580. package/lib/typescript/modules/file-grid/FileGrid.variants.d.ts +26 -0
  581. package/lib/typescript/modules/file-grid/index.d.ts +4 -0
  582. package/lib/typescript/modules/file-upload/FileUpload.d.ts +3 -0
  583. package/lib/typescript/modules/file-upload/FileUpload.variants.d.ts +22 -5
  584. package/lib/typescript/modules/filter-sheet/FilterSheet.variants.d.ts +30 -5
  585. package/lib/typescript/modules/filter-sheet/FilterSheetBody.d.ts +13 -8
  586. package/lib/typescript/modules/folder-row/FolderRow.d.ts +24 -0
  587. package/lib/typescript/modules/folder-row/FolderRow.variants.d.ts +29 -0
  588. package/lib/typescript/modules/folder-row/index.d.ts +3 -0
  589. package/lib/typescript/modules/form-field/FormField.d.ts +29 -0
  590. package/lib/typescript/modules/form-field/FormField.variants.d.ts +93 -0
  591. package/lib/typescript/modules/form-field/index.d.ts +4 -0
  592. package/lib/typescript/modules/gantt/Gantt.d.ts +19 -0
  593. package/lib/typescript/modules/gantt/Gantt.variants.d.ts +82 -0
  594. package/lib/typescript/modules/gantt/index.d.ts +5 -0
  595. package/lib/typescript/modules/image-viewer/ImageViewer.d.ts +27 -0
  596. package/lib/typescript/modules/image-viewer/ImageViewer.variants.d.ts +3 -0
  597. package/lib/typescript/modules/image-viewer/index.d.ts +3 -0
  598. package/lib/typescript/modules/input/Input.d.ts +9 -1
  599. package/lib/typescript/modules/input/Input.variants.d.ts +26 -6
  600. package/lib/typescript/modules/limit-reached-modal/LimitReachedModal.d.ts +34 -0
  601. package/lib/typescript/modules/limit-reached-modal/LimitReachedModal.variants.d.ts +46 -0
  602. package/lib/typescript/modules/limit-reached-modal/index.d.ts +10 -0
  603. package/lib/typescript/modules/list-item/ListItem.d.ts +21 -0
  604. package/lib/typescript/modules/list-item/ListItem.variants.d.ts +29 -0
  605. package/lib/typescript/modules/list-item/index.d.ts +8 -0
  606. package/lib/typescript/modules/markdown/Markdown.d.ts +16 -0
  607. package/lib/typescript/modules/markdown/Markdown.variants.d.ts +33 -0
  608. package/lib/typescript/modules/markdown/index.d.ts +10 -0
  609. package/lib/typescript/modules/markdown/parseMarkdown.d.ts +44 -0
  610. package/lib/typescript/modules/menu/Menu.d.ts +8 -18
  611. package/lib/typescript/modules/menu/Menu.variants.d.ts +8 -1
  612. package/lib/typescript/modules/message-bubble/MessageBubble.d.ts +25 -0
  613. package/lib/typescript/modules/message-bubble/MessageBubble.variants.d.ts +31 -0
  614. package/lib/typescript/modules/message-bubble/index.d.ts +4 -0
  615. package/lib/typescript/modules/modal/Modal.d.ts +12 -0
  616. package/lib/typescript/modules/modal/Modal.variants.d.ts +1 -1
  617. package/lib/typescript/modules/more-items/MoreItems.d.ts +15 -0
  618. package/lib/typescript/modules/more-items/MoreItems.variants.d.ts +30 -0
  619. package/lib/typescript/modules/more-items/index.d.ts +4 -0
  620. package/lib/typescript/modules/multi-select/MultiSelect.d.ts +3 -12
  621. package/lib/typescript/modules/multi-select/MultiSelect.variants.d.ts +24 -5
  622. package/lib/typescript/modules/number-input/NumberInput.d.ts +6 -0
  623. package/lib/typescript/modules/number-input/NumberInput.variants.d.ts +57 -7
  624. package/lib/typescript/modules/org-switcher/OrgSwitcher.d.ts +44 -0
  625. package/lib/typescript/modules/org-switcher/OrgSwitcher.variants.d.ts +139 -0
  626. package/lib/typescript/modules/org-switcher/index.d.ts +8 -0
  627. package/lib/typescript/modules/pagination/Pagination.d.ts +45 -0
  628. package/lib/typescript/modules/pagination/Pagination.variants.d.ts +240 -0
  629. package/lib/typescript/modules/pagination/PaginationControls.d.ts +50 -0
  630. package/lib/typescript/modules/pagination/index.d.ts +14 -0
  631. package/lib/typescript/modules/pin-input/PinInput.d.ts +6 -0
  632. package/lib/typescript/modules/pin-input/PinInput.variants.d.ts +22 -5
  633. package/lib/typescript/modules/progress-bar/ProgressBar.d.ts +8 -4
  634. package/lib/typescript/modules/progress-bar/ProgressBar.variants.d.ts +13 -15
  635. package/lib/typescript/modules/radio-group/RadioGroup.d.ts +6 -0
  636. package/lib/typescript/modules/radio-group/RadioGroup.variants.d.ts +32 -11
  637. package/lib/typescript/modules/reorder/Reorder.d.ts +28 -23
  638. package/lib/typescript/modules/reorder/Reorder.variants.d.ts +25 -9
  639. package/lib/typescript/modules/rich-text/RichText.d.ts +15 -0
  640. package/lib/typescript/modules/rich-text/RichText.variants.d.ts +15 -0
  641. package/lib/typescript/modules/rich-text/index.d.ts +5 -0
  642. package/lib/typescript/modules/rich-text/parseRichText.d.ts +30 -0
  643. package/lib/typescript/modules/rich-text-editor/RichTextEditor.d.ts +62 -0
  644. package/lib/typescript/modules/rich-text-editor/RichTextEditor.variants.d.ts +139 -0
  645. package/lib/typescript/modules/rich-text-editor/index.d.ts +9 -0
  646. package/lib/typescript/modules/screen/Screen.d.ts +36 -0
  647. package/lib/typescript/modules/screen/Screen.variants.d.ts +21 -0
  648. package/lib/typescript/modules/screen/index.d.ts +9 -0
  649. package/lib/typescript/modules/search-bar/SearchBar.d.ts +47 -0
  650. package/lib/typescript/modules/search-bar/SearchBar.variants.d.ts +179 -0
  651. package/lib/typescript/modules/search-bar/index.d.ts +11 -0
  652. package/lib/typescript/modules/section/Section.d.ts +17 -0
  653. package/lib/typescript/modules/section/Section.variants.d.ts +12 -0
  654. package/lib/typescript/modules/section/index.d.ts +8 -0
  655. package/lib/typescript/modules/section-list/SectionList.d.ts +26 -0
  656. package/lib/typescript/modules/section-list/SectionList.variants.d.ts +3 -0
  657. package/lib/typescript/modules/section-list/index.d.ts +3 -0
  658. package/lib/typescript/modules/segmented-control/SegmentedControl.d.ts +45 -0
  659. package/lib/typescript/modules/segmented-control/SegmentedControl.variants.d.ts +143 -0
  660. package/lib/typescript/modules/segmented-control/index.d.ts +11 -0
  661. package/lib/typescript/modules/select/Select.d.ts +3 -10
  662. package/lib/typescript/modules/select/Select.variants.d.ts +27 -5
  663. package/lib/typescript/modules/skeleton/Skeleton.d.ts +5 -0
  664. package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts +10 -9
  665. package/lib/typescript/modules/slider/Slider.variants.d.ts +35 -14
  666. package/lib/typescript/modules/spinner/Spinner.variants.d.ts +6 -4
  667. package/lib/typescript/modules/stage-progress/StageProgress.d.ts +18 -0
  668. package/lib/typescript/modules/stage-progress/StageProgress.variants.d.ts +98 -0
  669. package/lib/typescript/modules/stage-progress/index.d.ts +4 -0
  670. package/lib/typescript/modules/stat-tile/StatTile.d.ts +20 -0
  671. package/lib/typescript/modules/stat-tile/StatTile.variants.d.ts +36 -0
  672. package/lib/typescript/modules/stat-tile/index.d.ts +9 -0
  673. package/lib/typescript/modules/state-block/StateBlock.d.ts +51 -0
  674. package/lib/typescript/modules/state-block/StateBlock.variants.d.ts +30 -0
  675. package/lib/typescript/modules/state-block/index.d.ts +10 -0
  676. package/lib/typescript/modules/stepper/Stepper.d.ts +4 -0
  677. package/lib/typescript/modules/stepper/Stepper.variants.d.ts +7 -7
  678. package/lib/typescript/modules/swipeable-row/SwipeableRow.d.ts +35 -0
  679. package/lib/typescript/modules/swipeable-row/SwipeableRow.variants.d.ts +27 -0
  680. package/lib/typescript/modules/swipeable-row/index.d.ts +4 -0
  681. package/lib/typescript/modules/switch/Switch.variants.d.ts +9 -1
  682. package/lib/typescript/modules/tabs/Tabs.d.ts +8 -6
  683. package/lib/typescript/modules/tabs/Tabs.variants.d.ts +20 -7
  684. package/lib/typescript/modules/text/Text.d.ts +23 -0
  685. package/lib/typescript/modules/text/Text.variants.d.ts +18 -0
  686. package/lib/typescript/modules/text/index.d.ts +4 -0
  687. package/lib/typescript/modules/textarea/Textarea.d.ts +5 -0
  688. package/lib/typescript/modules/textarea/Textarea.variants.d.ts +15 -8
  689. package/lib/typescript/modules/timeline/Timeline.d.ts +11 -11
  690. package/lib/typescript/modules/timeline/Timeline.variants.d.ts +17 -1
  691. package/lib/typescript/modules/toast/Toast.d.ts +13 -3
  692. package/lib/typescript/modules/toast/Toast.variants.d.ts +31 -3
  693. package/lib/typescript/modules/toast/index.d.ts +1 -1
  694. package/lib/typescript/modules/toast/toastScreenReader.d.ts +22 -0
  695. package/lib/typescript/modules/tooltip/Tooltip.d.ts +34 -11
  696. package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts +4 -5
  697. package/lib/typescript/modules/typing-indicator/TypingIndicator.d.ts +28 -0
  698. package/lib/typescript/modules/typing-indicator/TypingIndicator.variants.d.ts +32 -0
  699. package/lib/typescript/modules/typing-indicator/index.d.ts +4 -0
  700. package/lib/typescript/modules/unread-badge/UnreadBadge.d.ts +15 -0
  701. package/lib/typescript/modules/unread-badge/UnreadBadge.variants.d.ts +56 -0
  702. package/lib/typescript/modules/unread-badge/index.d.ts +4 -0
  703. package/lib/typescript/test/mocks/flashList.d.ts +3 -0
  704. package/lib/typescript/test/perfHelpers.d.ts +9 -0
  705. package/lib/typescript/theme/hooks.d.ts +11 -0
  706. package/lib/typescript/theme/index.d.ts +3 -2
  707. package/lib/typescript/theme/platform/motion.native.d.ts +15 -0
  708. package/lib/typescript/theme/provider/PixelizeProvider.d.ts +3 -80
  709. package/lib/typescript/theme/provider/ThemeContext.d.ts +4 -0
  710. package/lib/typescript/theme/provider/index.d.ts +2 -1
  711. package/lib/typescript/theme/provider/loadPalette.d.ts +9 -0
  712. package/lib/typescript/theme/provider/types.d.ts +41 -0
  713. package/lib/typescript/theme/provider/useTheme.d.ts +1 -2
  714. package/lib/typescript/theme/provider/useThemeMode.d.ts +1 -1
  715. package/lib/typescript/theme/tokens/builders/accentText.d.ts +6 -0
  716. package/lib/typescript/theme/tokens/roles/index.d.ts +7 -0
  717. package/package.json +209 -14
  718. package/registry.json +191 -1
  719. package/lib/module/core/a11y/index.js.map +0 -1
  720. package/lib/module/core/icon/index.js.map +0 -1
  721. package/lib/module/core/style/index.js.map +0 -1
  722. package/lib/module/core/style/layoutStyle.js.map +0 -1
  723. package/lib/module/core/style/variants.js.map +0 -1
  724. package/lib/module/index.js.map +0 -1
  725. package/lib/module/modules/accordion/Accordion.js.map +0 -1
  726. package/lib/module/modules/accordion/Accordion.variants.js.map +0 -1
  727. package/lib/module/modules/accordion/index.js.map +0 -1
  728. package/lib/module/modules/alert-dialog/AlertDialog.js.map +0 -1
  729. package/lib/module/modules/alert-dialog/AlertDialog.variants.js.map +0 -1
  730. package/lib/module/modules/alert-dialog/index.js.map +0 -1
  731. package/lib/module/modules/avatar/Avatar.js.map +0 -1
  732. package/lib/module/modules/avatar/Avatar.variants.js.map +0 -1
  733. package/lib/module/modules/avatar/index.js.map +0 -1
  734. package/lib/module/modules/badge/Badge.js.map +0 -1
  735. package/lib/module/modules/badge/Badge.variants.js.map +0 -1
  736. package/lib/module/modules/badge/index.js.map +0 -1
  737. package/lib/module/modules/bottom-nav/BottomNav.js.map +0 -1
  738. package/lib/module/modules/bottom-nav/BottomNav.search.js.map +0 -1
  739. package/lib/module/modules/bottom-nav/BottomNav.variants.js.map +0 -1
  740. package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js.map +0 -1
  741. package/lib/module/modules/bottom-nav/index.js.map +0 -1
  742. package/lib/module/modules/button/Button.js.map +0 -1
  743. package/lib/module/modules/button/Button.variants.js.map +0 -1
  744. package/lib/module/modules/button/index.js.map +0 -1
  745. package/lib/module/modules/button-group/ButtonGroup.js.map +0 -1
  746. package/lib/module/modules/button-group/ButtonGroup.variants.js.map +0 -1
  747. package/lib/module/modules/button-group/index.js.map +0 -1
  748. package/lib/module/modules/card/Card.js.map +0 -1
  749. package/lib/module/modules/card/Card.variants.js.map +0 -1
  750. package/lib/module/modules/card/index.js.map +0 -1
  751. package/lib/module/modules/checkbox/Checkbox.js.map +0 -1
  752. package/lib/module/modules/checkbox/Checkbox.variants.js.map +0 -1
  753. package/lib/module/modules/checkbox/index.js.map +0 -1
  754. package/lib/module/modules/divider/Divider.js.map +0 -1
  755. package/lib/module/modules/divider/Divider.variants.js.map +0 -1
  756. package/lib/module/modules/divider/index.js.map +0 -1
  757. package/lib/module/modules/drawer/Drawer.js.map +0 -1
  758. package/lib/module/modules/drawer/Drawer.variants.js.map +0 -1
  759. package/lib/module/modules/drawer/index.js.map +0 -1
  760. package/lib/module/modules/empty-state/EmptyState.js.map +0 -1
  761. package/lib/module/modules/empty-state/EmptyState.variants.js.map +0 -1
  762. package/lib/module/modules/empty-state/index.js.map +0 -1
  763. package/lib/module/modules/file-upload/FileUpload.js.map +0 -1
  764. package/lib/module/modules/file-upload/FileUpload.variants.js.map +0 -1
  765. package/lib/module/modules/file-upload/index.js.map +0 -1
  766. package/lib/module/modules/filter-sheet/FilterChip.js.map +0 -1
  767. package/lib/module/modules/filter-sheet/FilterSheet.js.map +0 -1
  768. package/lib/module/modules/filter-sheet/FilterSheet.variants.js.map +0 -1
  769. package/lib/module/modules/filter-sheet/FilterSheetBody.js.map +0 -1
  770. package/lib/module/modules/filter-sheet/filterSheet.helpers.js.map +0 -1
  771. package/lib/module/modules/filter-sheet/index.js.map +0 -1
  772. package/lib/module/modules/input/Input.js.map +0 -1
  773. package/lib/module/modules/input/Input.variants.js.map +0 -1
  774. package/lib/module/modules/input/index.js.map +0 -1
  775. package/lib/module/modules/menu/Menu.js.map +0 -1
  776. package/lib/module/modules/menu/Menu.variants.js.map +0 -1
  777. package/lib/module/modules/menu/index.js.map +0 -1
  778. package/lib/module/modules/modal/Modal.js.map +0 -1
  779. package/lib/module/modules/modal/Modal.variants.js.map +0 -1
  780. package/lib/module/modules/modal/ModalPortalContext.js.map +0 -1
  781. package/lib/module/modules/modal/ModalPortalProvider.js.map +0 -1
  782. package/lib/module/modules/modal/index.js.map +0 -1
  783. package/lib/module/modules/modal/renderWebPortal.js.map +0 -1
  784. package/lib/module/modules/modal/renderWebPortal.web.js.map +0 -1
  785. package/lib/module/modules/multi-select/MultiSelect.js.map +0 -1
  786. package/lib/module/modules/multi-select/MultiSelect.variants.js.map +0 -1
  787. package/lib/module/modules/multi-select/index.js.map +0 -1
  788. package/lib/module/modules/number-input/NumberInput.js.map +0 -1
  789. package/lib/module/modules/number-input/NumberInput.variants.js.map +0 -1
  790. package/lib/module/modules/number-input/index.js.map +0 -1
  791. package/lib/module/modules/pin-input/PinInput.js.map +0 -1
  792. package/lib/module/modules/pin-input/PinInput.variants.js.map +0 -1
  793. package/lib/module/modules/pin-input/index.js.map +0 -1
  794. package/lib/module/modules/progress-bar/ProgressBar.js.map +0 -1
  795. package/lib/module/modules/progress-bar/ProgressBar.variants.js.map +0 -1
  796. package/lib/module/modules/progress-bar/index.js.map +0 -1
  797. package/lib/module/modules/radio-group/RadioGroup.js.map +0 -1
  798. package/lib/module/modules/radio-group/RadioGroup.variants.js.map +0 -1
  799. package/lib/module/modules/radio-group/index.js.map +0 -1
  800. package/lib/module/modules/reorder/Reorder.js.map +0 -1
  801. package/lib/module/modules/reorder/Reorder.variants.js.map +0 -1
  802. package/lib/module/modules/reorder/index.js.map +0 -1
  803. package/lib/module/modules/select/Select.js.map +0 -1
  804. package/lib/module/modules/select/Select.variants.js.map +0 -1
  805. package/lib/module/modules/select/index.js.map +0 -1
  806. package/lib/module/modules/skeleton/Skeleton.js.map +0 -1
  807. package/lib/module/modules/skeleton/Skeleton.variants.js.map +0 -1
  808. package/lib/module/modules/skeleton/index.js.map +0 -1
  809. package/lib/module/modules/slider/Slider.js.map +0 -1
  810. package/lib/module/modules/slider/Slider.variants.js.map +0 -1
  811. package/lib/module/modules/slider/index.js.map +0 -1
  812. package/lib/module/modules/spinner/Spinner.js.map +0 -1
  813. package/lib/module/modules/spinner/Spinner.variants.js.map +0 -1
  814. package/lib/module/modules/spinner/index.js.map +0 -1
  815. package/lib/module/modules/stepper/Stepper.js.map +0 -1
  816. package/lib/module/modules/stepper/Stepper.variants.js.map +0 -1
  817. package/lib/module/modules/stepper/index.js.map +0 -1
  818. package/lib/module/modules/switch/Switch.js.map +0 -1
  819. package/lib/module/modules/switch/Switch.variants.js.map +0 -1
  820. package/lib/module/modules/switch/index.js.map +0 -1
  821. package/lib/module/modules/tabs/Tabs.js.map +0 -1
  822. package/lib/module/modules/tabs/Tabs.variants.js.map +0 -1
  823. package/lib/module/modules/tabs/index.js.map +0 -1
  824. package/lib/module/modules/textarea/Textarea.js.map +0 -1
  825. package/lib/module/modules/textarea/Textarea.variants.js.map +0 -1
  826. package/lib/module/modules/textarea/index.js.map +0 -1
  827. package/lib/module/modules/timeline/Timeline.js.map +0 -1
  828. package/lib/module/modules/timeline/Timeline.variants.js.map +0 -1
  829. package/lib/module/modules/timeline/index.js.map +0 -1
  830. package/lib/module/modules/toast/Toast.js.map +0 -1
  831. package/lib/module/modules/toast/Toast.variants.js.map +0 -1
  832. package/lib/module/modules/toast/index.js.map +0 -1
  833. package/lib/module/modules/tooltip/Tooltip.js.map +0 -1
  834. package/lib/module/modules/tooltip/Tooltip.variants.js.map +0 -1
  835. package/lib/module/modules/tooltip/index.js.map +0 -1
  836. package/lib/module/theme/index.js.map +0 -1
  837. package/lib/module/theme/platform/colorScheme.native.js.map +0 -1
  838. package/lib/module/theme/platform/elevation.native.js.map +0 -1
  839. package/lib/module/theme/platform/fonts.native.js.map +0 -1
  840. package/lib/module/theme/platform/index.js.map +0 -1
  841. package/lib/module/theme/platform/units.native.js.map +0 -1
  842. package/lib/module/theme/provider/PixelizeProvider.js.map +0 -1
  843. package/lib/module/theme/provider/colorModeStorage.js.map +0 -1
  844. package/lib/module/theme/provider/index.js.map +0 -1
  845. package/lib/module/theme/provider/useTheme.js.map +0 -1
  846. package/lib/module/theme/provider/useThemeColors.js.map +0 -1
  847. package/lib/module/theme/provider/useThemeMode.js.map +0 -1
  848. package/lib/module/theme/tokens/brands/emerald/palette.dark.js.map +0 -1
  849. package/lib/module/theme/tokens/brands/emerald/palette.light.js.map +0 -1
  850. package/lib/module/theme/tokens/brands/index.js.map +0 -1
  851. package/lib/module/theme/tokens/brands/lavender/palette.dark.js.map +0 -1
  852. package/lib/module/theme/tokens/brands/lavender/palette.light.js.map +0 -1
  853. package/lib/module/theme/tokens/brands/meadow/palette.dark.js.map +0 -1
  854. package/lib/module/theme/tokens/brands/meadow/palette.light.js.map +0 -1
  855. package/lib/module/theme/tokens/brands/radiant/palette.dark.js.map +0 -1
  856. package/lib/module/theme/tokens/brands/radiant/palette.light.js.map +0 -1
  857. package/lib/module/theme/tokens/brands/rosewood/palette.dark.js.map +0 -1
  858. package/lib/module/theme/tokens/brands/rosewood/palette.light.js.map +0 -1
  859. package/lib/module/theme/tokens/brands/skyline/palette.dark.js.map +0 -1
  860. package/lib/module/theme/tokens/brands/skyline/palette.light.js.map +0 -1
  861. package/lib/module/theme/tokens/brands/slate/palette.dark.js.map +0 -1
  862. package/lib/module/theme/tokens/brands/slate/palette.light.js.map +0 -1
  863. package/lib/module/theme/tokens/brands/storefront/palette.dark.js.map +0 -1
  864. package/lib/module/theme/tokens/brands/storefront/palette.light.js.map +0 -1
  865. package/lib/module/theme/tokens/brands/zinc/palette.dark.js.map +0 -1
  866. package/lib/module/theme/tokens/brands/zinc/palette.light.js.map +0 -1
  867. package/lib/module/theme/tokens/builders/accentText.js.map +0 -1
  868. package/lib/module/theme/tokens/builders/buildBrandTokens.js.map +0 -1
  869. package/lib/module/theme/tokens/builders/buildDarkPalette.js.map +0 -1
  870. package/lib/module/theme/tokens/builders/color.js.map +0 -1
  871. package/lib/module/theme/tokens/index.js.map +0 -1
  872. package/lib/module/theme/tokens/primitives/borderWidths.js.map +0 -1
  873. package/lib/module/theme/tokens/primitives/breakpoints.js.map +0 -1
  874. package/lib/module/theme/tokens/primitives/elevation.js.map +0 -1
  875. package/lib/module/theme/tokens/primitives/fontSizes.js.map +0 -1
  876. package/lib/module/theme/tokens/primitives/fontWeights.js.map +0 -1
  877. package/lib/module/theme/tokens/primitives/index.js.map +0 -1
  878. package/lib/module/theme/tokens/primitives/letterSpacings.js.map +0 -1
  879. package/lib/module/theme/tokens/primitives/lineHeights.js.map +0 -1
  880. package/lib/module/theme/tokens/primitives/radii.js.map +0 -1
  881. package/lib/module/theme/tokens/primitives/sizes.js.map +0 -1
  882. package/lib/module/theme/tokens/primitives/space.js.map +0 -1
  883. package/lib/module/theme/tokens/primitives/zIndices.js.map +0 -1
  884. package/lib/module/theme/tokens/roles/index.js.map +0 -1
  885. package/lib/module/theme/tokens/types.js.map +0 -1
  886. package/lib/typescript/core/a11y/index.d.ts.map +0 -1
  887. package/lib/typescript/core/icon/index.d.ts.map +0 -1
  888. package/lib/typescript/core/style/index.d.ts.map +0 -1
  889. package/lib/typescript/core/style/layoutStyle.d.ts.map +0 -1
  890. package/lib/typescript/core/style/variants.d.ts.map +0 -1
  891. package/lib/typescript/index.d.ts.map +0 -1
  892. package/lib/typescript/modules/accordion/Accordion.d.ts.map +0 -1
  893. package/lib/typescript/modules/accordion/Accordion.variants.d.ts.map +0 -1
  894. package/lib/typescript/modules/accordion/index.d.ts.map +0 -1
  895. package/lib/typescript/modules/alert-dialog/AlertDialog.d.ts.map +0 -1
  896. package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts.map +0 -1
  897. package/lib/typescript/modules/alert-dialog/index.d.ts.map +0 -1
  898. package/lib/typescript/modules/avatar/Avatar.d.ts.map +0 -1
  899. package/lib/typescript/modules/avatar/Avatar.variants.d.ts.map +0 -1
  900. package/lib/typescript/modules/avatar/index.d.ts.map +0 -1
  901. package/lib/typescript/modules/badge/Badge.d.ts.map +0 -1
  902. package/lib/typescript/modules/badge/Badge.variants.d.ts.map +0 -1
  903. package/lib/typescript/modules/badge/index.d.ts.map +0 -1
  904. package/lib/typescript/modules/bottom-nav/BottomNav.d.ts.map +0 -1
  905. package/lib/typescript/modules/bottom-nav/BottomNav.search.d.ts.map +0 -1
  906. package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts.map +0 -1
  907. package/lib/typescript/modules/bottom-nav/BottomNavOverflowSheet.d.ts.map +0 -1
  908. package/lib/typescript/modules/bottom-nav/index.d.ts.map +0 -1
  909. package/lib/typescript/modules/button/Button.d.ts.map +0 -1
  910. package/lib/typescript/modules/button/Button.variants.d.ts.map +0 -1
  911. package/lib/typescript/modules/button/index.d.ts.map +0 -1
  912. package/lib/typescript/modules/button-group/ButtonGroup.d.ts.map +0 -1
  913. package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts.map +0 -1
  914. package/lib/typescript/modules/button-group/index.d.ts.map +0 -1
  915. package/lib/typescript/modules/card/Card.d.ts.map +0 -1
  916. package/lib/typescript/modules/card/Card.variants.d.ts.map +0 -1
  917. package/lib/typescript/modules/card/index.d.ts.map +0 -1
  918. package/lib/typescript/modules/checkbox/Checkbox.d.ts.map +0 -1
  919. package/lib/typescript/modules/checkbox/Checkbox.variants.d.ts.map +0 -1
  920. package/lib/typescript/modules/checkbox/index.d.ts.map +0 -1
  921. package/lib/typescript/modules/divider/Divider.d.ts.map +0 -1
  922. package/lib/typescript/modules/divider/Divider.variants.d.ts.map +0 -1
  923. package/lib/typescript/modules/divider/index.d.ts.map +0 -1
  924. package/lib/typescript/modules/drawer/Drawer.d.ts.map +0 -1
  925. package/lib/typescript/modules/drawer/Drawer.variants.d.ts.map +0 -1
  926. package/lib/typescript/modules/drawer/index.d.ts.map +0 -1
  927. package/lib/typescript/modules/empty-state/EmptyState.d.ts.map +0 -1
  928. package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts.map +0 -1
  929. package/lib/typescript/modules/empty-state/index.d.ts.map +0 -1
  930. package/lib/typescript/modules/file-upload/FileUpload.d.ts.map +0 -1
  931. package/lib/typescript/modules/file-upload/FileUpload.variants.d.ts.map +0 -1
  932. package/lib/typescript/modules/file-upload/index.d.ts.map +0 -1
  933. package/lib/typescript/modules/filter-sheet/FilterChip.d.ts.map +0 -1
  934. package/lib/typescript/modules/filter-sheet/FilterSheet.d.ts.map +0 -1
  935. package/lib/typescript/modules/filter-sheet/FilterSheet.variants.d.ts.map +0 -1
  936. package/lib/typescript/modules/filter-sheet/FilterSheetBody.d.ts.map +0 -1
  937. package/lib/typescript/modules/filter-sheet/filterSheet.helpers.d.ts.map +0 -1
  938. package/lib/typescript/modules/filter-sheet/index.d.ts.map +0 -1
  939. package/lib/typescript/modules/input/Input.d.ts.map +0 -1
  940. package/lib/typescript/modules/input/Input.variants.d.ts.map +0 -1
  941. package/lib/typescript/modules/input/index.d.ts.map +0 -1
  942. package/lib/typescript/modules/menu/Menu.d.ts.map +0 -1
  943. package/lib/typescript/modules/menu/Menu.variants.d.ts.map +0 -1
  944. package/lib/typescript/modules/menu/index.d.ts.map +0 -1
  945. package/lib/typescript/modules/modal/Modal.d.ts.map +0 -1
  946. package/lib/typescript/modules/modal/Modal.variants.d.ts.map +0 -1
  947. package/lib/typescript/modules/modal/ModalPortalContext.d.ts.map +0 -1
  948. package/lib/typescript/modules/modal/ModalPortalProvider.d.ts.map +0 -1
  949. package/lib/typescript/modules/modal/index.d.ts.map +0 -1
  950. package/lib/typescript/modules/modal/renderWebPortal.d.ts.map +0 -1
  951. package/lib/typescript/modules/modal/renderWebPortal.web.d.ts.map +0 -1
  952. package/lib/typescript/modules/multi-select/MultiSelect.d.ts.map +0 -1
  953. package/lib/typescript/modules/multi-select/MultiSelect.variants.d.ts.map +0 -1
  954. package/lib/typescript/modules/multi-select/index.d.ts.map +0 -1
  955. package/lib/typescript/modules/number-input/NumberInput.d.ts.map +0 -1
  956. package/lib/typescript/modules/number-input/NumberInput.variants.d.ts.map +0 -1
  957. package/lib/typescript/modules/number-input/index.d.ts.map +0 -1
  958. package/lib/typescript/modules/pin-input/PinInput.d.ts.map +0 -1
  959. package/lib/typescript/modules/pin-input/PinInput.variants.d.ts.map +0 -1
  960. package/lib/typescript/modules/pin-input/index.d.ts.map +0 -1
  961. package/lib/typescript/modules/progress-bar/ProgressBar.d.ts.map +0 -1
  962. package/lib/typescript/modules/progress-bar/ProgressBar.variants.d.ts.map +0 -1
  963. package/lib/typescript/modules/progress-bar/index.d.ts.map +0 -1
  964. package/lib/typescript/modules/radio-group/RadioGroup.d.ts.map +0 -1
  965. package/lib/typescript/modules/radio-group/RadioGroup.variants.d.ts.map +0 -1
  966. package/lib/typescript/modules/radio-group/index.d.ts.map +0 -1
  967. package/lib/typescript/modules/reorder/Reorder.d.ts.map +0 -1
  968. package/lib/typescript/modules/reorder/Reorder.variants.d.ts.map +0 -1
  969. package/lib/typescript/modules/reorder/index.d.ts.map +0 -1
  970. package/lib/typescript/modules/select/Select.d.ts.map +0 -1
  971. package/lib/typescript/modules/select/Select.variants.d.ts.map +0 -1
  972. package/lib/typescript/modules/select/index.d.ts.map +0 -1
  973. package/lib/typescript/modules/skeleton/Skeleton.d.ts.map +0 -1
  974. package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts.map +0 -1
  975. package/lib/typescript/modules/skeleton/index.d.ts.map +0 -1
  976. package/lib/typescript/modules/slider/Slider.d.ts.map +0 -1
  977. package/lib/typescript/modules/slider/Slider.variants.d.ts.map +0 -1
  978. package/lib/typescript/modules/slider/index.d.ts.map +0 -1
  979. package/lib/typescript/modules/spinner/Spinner.d.ts.map +0 -1
  980. package/lib/typescript/modules/spinner/Spinner.variants.d.ts.map +0 -1
  981. package/lib/typescript/modules/spinner/index.d.ts.map +0 -1
  982. package/lib/typescript/modules/stepper/Stepper.d.ts.map +0 -1
  983. package/lib/typescript/modules/stepper/Stepper.variants.d.ts.map +0 -1
  984. package/lib/typescript/modules/stepper/index.d.ts.map +0 -1
  985. package/lib/typescript/modules/switch/Switch.d.ts.map +0 -1
  986. package/lib/typescript/modules/switch/Switch.variants.d.ts.map +0 -1
  987. package/lib/typescript/modules/switch/index.d.ts.map +0 -1
  988. package/lib/typescript/modules/tabs/Tabs.d.ts.map +0 -1
  989. package/lib/typescript/modules/tabs/Tabs.variants.d.ts.map +0 -1
  990. package/lib/typescript/modules/tabs/index.d.ts.map +0 -1
  991. package/lib/typescript/modules/textarea/Textarea.d.ts.map +0 -1
  992. package/lib/typescript/modules/textarea/Textarea.variants.d.ts.map +0 -1
  993. package/lib/typescript/modules/textarea/index.d.ts.map +0 -1
  994. package/lib/typescript/modules/timeline/Timeline.d.ts.map +0 -1
  995. package/lib/typescript/modules/timeline/Timeline.variants.d.ts.map +0 -1
  996. package/lib/typescript/modules/timeline/index.d.ts.map +0 -1
  997. package/lib/typescript/modules/toast/Toast.d.ts.map +0 -1
  998. package/lib/typescript/modules/toast/Toast.variants.d.ts.map +0 -1
  999. package/lib/typescript/modules/toast/index.d.ts.map +0 -1
  1000. package/lib/typescript/modules/tooltip/Tooltip.d.ts.map +0 -1
  1001. package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts.map +0 -1
  1002. package/lib/typescript/modules/tooltip/index.d.ts.map +0 -1
  1003. package/lib/typescript/theme/index.d.ts.map +0 -1
  1004. package/lib/typescript/theme/platform/colorScheme.native.d.ts.map +0 -1
  1005. package/lib/typescript/theme/platform/elevation.native.d.ts.map +0 -1
  1006. package/lib/typescript/theme/platform/fonts.native.d.ts.map +0 -1
  1007. package/lib/typescript/theme/platform/index.d.ts.map +0 -1
  1008. package/lib/typescript/theme/platform/units.native.d.ts.map +0 -1
  1009. package/lib/typescript/theme/provider/PixelizeProvider.d.ts.map +0 -1
  1010. package/lib/typescript/theme/provider/colorModeStorage.d.ts.map +0 -1
  1011. package/lib/typescript/theme/provider/index.d.ts.map +0 -1
  1012. package/lib/typescript/theme/provider/useTheme.d.ts.map +0 -1
  1013. package/lib/typescript/theme/provider/useThemeColors.d.ts.map +0 -1
  1014. package/lib/typescript/theme/provider/useThemeMode.d.ts.map +0 -1
  1015. package/lib/typescript/theme/tokens/brands/emerald/palette.dark.d.ts.map +0 -1
  1016. package/lib/typescript/theme/tokens/brands/emerald/palette.light.d.ts.map +0 -1
  1017. package/lib/typescript/theme/tokens/brands/index.d.ts.map +0 -1
  1018. package/lib/typescript/theme/tokens/brands/lavender/palette.dark.d.ts.map +0 -1
  1019. package/lib/typescript/theme/tokens/brands/lavender/palette.light.d.ts.map +0 -1
  1020. package/lib/typescript/theme/tokens/brands/meadow/palette.dark.d.ts.map +0 -1
  1021. package/lib/typescript/theme/tokens/brands/meadow/palette.light.d.ts.map +0 -1
  1022. package/lib/typescript/theme/tokens/brands/radiant/palette.dark.d.ts.map +0 -1
  1023. package/lib/typescript/theme/tokens/brands/radiant/palette.light.d.ts.map +0 -1
  1024. package/lib/typescript/theme/tokens/brands/rosewood/palette.dark.d.ts.map +0 -1
  1025. package/lib/typescript/theme/tokens/brands/rosewood/palette.light.d.ts.map +0 -1
  1026. package/lib/typescript/theme/tokens/brands/skyline/palette.dark.d.ts.map +0 -1
  1027. package/lib/typescript/theme/tokens/brands/skyline/palette.light.d.ts.map +0 -1
  1028. package/lib/typescript/theme/tokens/brands/slate/palette.dark.d.ts.map +0 -1
  1029. package/lib/typescript/theme/tokens/brands/slate/palette.light.d.ts.map +0 -1
  1030. package/lib/typescript/theme/tokens/brands/storefront/palette.dark.d.ts.map +0 -1
  1031. package/lib/typescript/theme/tokens/brands/storefront/palette.light.d.ts.map +0 -1
  1032. package/lib/typescript/theme/tokens/brands/zinc/palette.dark.d.ts.map +0 -1
  1033. package/lib/typescript/theme/tokens/brands/zinc/palette.light.d.ts.map +0 -1
  1034. package/lib/typescript/theme/tokens/builders/accentText.d.ts.map +0 -1
  1035. package/lib/typescript/theme/tokens/builders/buildBrandTokens.d.ts.map +0 -1
  1036. package/lib/typescript/theme/tokens/builders/buildDarkPalette.d.ts.map +0 -1
  1037. package/lib/typescript/theme/tokens/builders/color.d.ts.map +0 -1
  1038. package/lib/typescript/theme/tokens/index.d.ts.map +0 -1
  1039. package/lib/typescript/theme/tokens/primitives/borderWidths.d.ts.map +0 -1
  1040. package/lib/typescript/theme/tokens/primitives/breakpoints.d.ts.map +0 -1
  1041. package/lib/typescript/theme/tokens/primitives/elevation.d.ts.map +0 -1
  1042. package/lib/typescript/theme/tokens/primitives/fontSizes.d.ts.map +0 -1
  1043. package/lib/typescript/theme/tokens/primitives/fontWeights.d.ts.map +0 -1
  1044. package/lib/typescript/theme/tokens/primitives/index.d.ts.map +0 -1
  1045. package/lib/typescript/theme/tokens/primitives/letterSpacings.d.ts.map +0 -1
  1046. package/lib/typescript/theme/tokens/primitives/lineHeights.d.ts.map +0 -1
  1047. package/lib/typescript/theme/tokens/primitives/radii.d.ts.map +0 -1
  1048. package/lib/typescript/theme/tokens/primitives/sizes.d.ts.map +0 -1
  1049. package/lib/typescript/theme/tokens/primitives/space.d.ts.map +0 -1
  1050. package/lib/typescript/theme/tokens/primitives/zIndices.d.ts.map +0 -1
  1051. package/lib/typescript/theme/tokens/roles/index.d.ts.map +0 -1
  1052. package/lib/typescript/theme/tokens/types.d.ts.map +0 -1
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * DateRangePicker — the same field+modal shell as `DatePicker` (`PickerField`/`PickerShell`),
5
+ * driving `Calendar` in `mode="range"` instead of `"single"`. No `mode`/`use24Hour` — a date RANGE
6
+ * has no time-of-day dimension in this module's spec, matching `Calendar`'s own
7
+ * `rangeValue`/`onRangeChange` pair (`Calendar`'s single-date `value`/`onChange` are simply unused
8
+ * here, exactly as its own doc comment anticipates for a "range-only Calendar").
9
+ */
10
+
11
+ import { memo, useCallback, useState } from "react";
12
+ import { View } from "react-native";
13
+ import { Calendar } from "./Calendar.js";
14
+ import { PickerField } from "./PickerField.js";
15
+ import { PickerShell } from "./PickerShell.js";
16
+ import { DEFAULT_FIRST_DAY_OF_WEEK, DEFAULT_LOCALE, EMPTY_RANGE, clampToRange, formatDate, formatRangeValue } from "./DatePicker.variants.js";
17
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
18
+ const DEFAULT_RANGE_PLACEHOLDER = "Select date range";
19
+ export const DateRangePicker = /*#__PURE__*/memo(function DateRangePicker({
20
+ value = EMPTY_RANGE,
21
+ onChange,
22
+ label,
23
+ placeholder = DEFAULT_RANGE_PLACEHOLDER,
24
+ minDate,
25
+ maxDate,
26
+ disabled = false,
27
+ error,
28
+ clearable = true,
29
+ format,
30
+ firstDayOfWeek = DEFAULT_FIRST_DAY_OF_WEEK,
31
+ locale = DEFAULT_LOCALE,
32
+ containerStyle,
33
+ testID
34
+ }) {
35
+ const [open, setOpen] = useState(false);
36
+ const [draft, setDraft] = useState(value);
37
+ const formatOne = format ?? (date => formatDate(date, locale));
38
+ const displayText = formatRangeValue(value, formatOne);
39
+ const openPicker = useCallback(() => {
40
+ if (disabled) return;
41
+ setDraft(value);
42
+ setOpen(true);
43
+ }, [disabled, value]);
44
+ const closePicker = useCallback(() => setOpen(false), []);
45
+ const confirm = useCallback(() => {
46
+ onChange({
47
+ start: draft.start === null ? null : clampToRange(draft.start, minDate, maxDate),
48
+ end: draft.end === null ? null : clampToRange(draft.end, minDate, maxDate)
49
+ });
50
+ setOpen(false);
51
+ }, [draft, onChange, minDate, maxDate]);
52
+ const clearValue = useCallback(() => onChange(EMPTY_RANGE), [onChange]);
53
+ return /*#__PURE__*/_jsxs(View, {
54
+ style: containerStyle,
55
+ children: [/*#__PURE__*/_jsx(PickerField, {
56
+ label: label,
57
+ placeholder: placeholder,
58
+ displayText: displayText,
59
+ error: error,
60
+ disabled: disabled,
61
+ open: open,
62
+ clearable: clearable,
63
+ clearAccessibilityLabel: "Clear dates",
64
+ trailingIcon: "calendar",
65
+ onPress: openPicker,
66
+ onClear: clearValue,
67
+ testID: testID
68
+ }), /*#__PURE__*/_jsx(PickerShell, {
69
+ open: open,
70
+ accessibilityLabel: "Date range picker",
71
+ onCancel: closePicker,
72
+ onConfirm: confirm,
73
+ testID: testID,
74
+ children: /*#__PURE__*/_jsx(Calendar, {
75
+ mode: "range",
76
+ rangeValue: draft,
77
+ onRangeChange: setDraft,
78
+ minDate: minDate,
79
+ maxDate: maxDate,
80
+ firstDayOfWeek: firstDayOfWeek,
81
+ locale: locale,
82
+ testID: testID ? `${testID}-calendar` : undefined
83
+ })
84
+ })]
85
+ });
86
+ });
87
+ //# sourceMappingURL=DateRangePicker.js.map
@@ -0,0 +1,169 @@
1
+ # date-picker/ — calendar, time, and field+modal date/time pickers
2
+
3
+ Self-contained date/time picking, no new dependency: the calendar maths (grid building, range/min/max
4
+ logic, formatting) is hand-written and unit-tested rather than pulled in from a package.
5
+
6
+ `Calendar` is the primitive; `TimePicker` is a second, independent primitive; `DatePicker` and
7
+ `DateRangePicker` are field+modal wrappers that compose them with two internal, non-exported helpers.
8
+
9
+ ## Files
10
+
11
+ | File | Role |
12
+ |------|------|
13
+ | `Calendar.tsx` | Inline month grid. Header doubles as a month/year quick-jump toggle. Composes the library's own `Button` for ‹ › nav. |
14
+ | `TimePicker.tsx` | Hour / minute (/ AM-PM) as scrollable `FlatList` columns — never an analog clock face. |
15
+ | `DatePicker.tsx` | Field (`PickerField`) + modal (`PickerShell`) wrapping `Calendar`/`TimePicker`; a `Tabs` strip in `"datetime"` mode. |
16
+ | `DateRangePicker.tsx` | Same field+modal shell, driving `Calendar` in `mode="range"`. |
17
+ | `PickerField.tsx` | Internal: the pressable field box, byte-for-byte `Input`'s `md` box. Not exported. |
18
+ | `PickerShell.tsx` | Internal: the modal chrome (backdrop, sheet, Cancel/Confirm footer) in RN's own `Modal`. Not exported. |
19
+ | `DatePicker.variants.ts` | ALL pure date maths (grid, comparison, clamping, formatting, time arithmetic, `resolveCalendarFocusMove`) + colour/structure/a11y resolvers. No React, no lucide. |
20
+ | `Calendar.keys.ts` / `Calendar.keys.web.ts` | Internal, platform-split: the DOM half of the day grid's keyboard navigation. Native file is no-ops. Not exported. |
21
+ | `index.ts` | Public surface: `Calendar`, `TimePicker`, `DatePicker`, `DateRangePicker` + their prop/value types. |
22
+ | `__tests__/DatePicker.test.ts` | Pure: date maths (leap years, month rollover, DST, firstDayOfWeek, min/max) + WCAG contrast (all brands × modes) + a11y contract. |
23
+ | `__tests__/DatePicker.render.test.tsx` | Render: all four components, open/close, selection, disabled, clear, tabs, backdrop dismiss, web-portal opt-in, **and the rendered 44dp targets**. |
24
+ | `__tests__/DatePicker.motion.test.tsx` | Reduce-motion: the sheet's reveal and a time option's press must be at their end value on the next frame. |
25
+ | `__tests__/PickerShell.keyboard.web.test.tsx` | Escape / Tab trap / focus restore on the web-portal branch, and their deliberate absence on the RNModal branch. |
26
+ | `__tests__/Calendar.keys.web.test.ts` | The web key→move mapping and the roving-focus effect, against a hand-built DOM. |
27
+
28
+ ## Props
29
+
30
+ **Calendar** — `value?`, `onChange?(date)` (single mode), `mode?: "single" | "range"` (`single`),
31
+ `rangeValue?`, `onRangeChange?(range)`, `minDate?`, `maxDate?`, `disabledDates?: Date[]`,
32
+ `firstDayOfWeek?: 0 | 1` (`1` = Monday), `locale?` (`en-US`, drives month/weekday NAMES only via
33
+ `Intl`), `style?`, `testID?`. `onChange` is optional — a range-only `Calendar` isn't forced to pass a
34
+ no-op; the reverse holds for `onRangeChange`.
35
+
36
+ **TimePicker** — `value?`, `onChange(date)`, `use24Hour?` (`false`), `minuteStep?` (`1`), `style?`,
37
+ `testID?`.
38
+
39
+ **DatePicker** — `value?`, `onChange(date | null)`, `mode?: "date" | "datetime" | "time"` (`date`),
40
+ `label?`, `placeholder?` (`"Select date"`), `minDate?`, `maxDate?`, `disabled?`, `error?`,
41
+ `clearable?` (`true`), `format?(date)` (replaces the whole field string), `use24Hour?`,
42
+ `firstDayOfWeek?`, `locale?`, `containerStyle?: LayoutStyle`, `testID?`.
43
+
44
+ **DateRangePicker** — `value?: { start, end }`, `onChange(range)`, `label?`, `placeholder?`
45
+ (`"Select date range"`), `minDate?`, `maxDate?`, `disabled?`, `error?`, `clearable?`, `format?(date)`
46
+ (one endpoint; the field joins with `" – "`), `firstDayOfWeek?`, `locale?`, `containerStyle?`, `testID?`.
47
+ No `mode`/`use24Hour` — a range has no time-of-day dimension in this module.
48
+
49
+ ## Accessibility contract (WCAG)
50
+
51
+ - **State/hidden props are FLAT `aria-*`, never the object forms.** `react-native-web` forwards only a
52
+ flat `aria-*` vocabulary to the DOM and silently discards `accessibilityState={{…}}`,
53
+ `accessibilityElementsHidden` and `importantForAccessibility`, so those would leave the web build
54
+ with a role and no state. RN's own `View`/`Text`/`Pressable` merge the flat props back into
55
+ `accessibilityState` (`View.js`), so native loses nothing — which is why the render tests can still
56
+ read `props.accessibilityState.*` truthfully. The resolvers therefore return literal quoted keys
57
+ (`"aria-selected"`, `"aria-expanded"`, `"aria-disabled"`) and the JSX spells each one out.
58
+ - **1.3.1 / 4.1.2** — every day cell's `accessibilityLabel` is the FULL readable date
59
+ (`formatFullDate`, e.g. "Friday, March 15, 2024"), never the bare number; `aria-selected` /
60
+ `aria-disabled` carry its state. The field is `accessibilityRole="button"` with `aria-expanded`
61
+ tracking the sheet, matching Select's trigger contract.
62
+ - **1.4.1 — colour is never the only channel.** "today" and range membership are colour in the grid,
63
+ so `resolveCalendarDayAccessibility` folds them into the label too (`", today"`,
64
+ `", in selected range"`). `aria-selected` marks only the two range ENDPOINTS, so without the
65
+ suffix the days between them read as unselected.
66
+ - **4.1.2 — the sheet is a real modal**: `accessibilityViewIsModal` **and** `aria-modal` (a genuine
67
+ both-props case — RN's `View` reads only the first, `react-native-web` only the second), plus
68
+ `onAccessibilityEscape`, on the sheet node, mirroring `modal/`/`bottom-sheet/`. Both matter — the
69
+ web-portal path renders no RN `<Modal>` to take the page out of the a11y tree, and the backdrop is
70
+ `accessible={false}`, so two-finger-Z has nothing else to hit. It also carries an
71
+ `accessibilityLabel` ("Date picker" / "Time picker" / "Date and time picker" / "Date range
72
+ picker"): there is no visible title to borrow, so focus would land on an anonymous descendant.
73
+ Required internal `PickerShell` prop, not public API.
74
+ - **Decorative nodes use `aria-hidden`** (the weekday header row, the field's visual label `Text`) —
75
+ one prop that hides on native AND on web, where the two RN-only props it replaces were no-ops.
76
+ - **2.1.1 keyboard (web only)** — the sheet gets Escape, a Tab trap and focus restore from
77
+ `PickerShell`, and the 42-cell day grid is **one tab stop, not 42**: exactly one cell carries
78
+ `tabIndex={0}` and Arrow/Home/End/PageUp/PageDown move which (`Calendar.keys.web.ts` →
79
+ `resolveCalendarFocusMove`). Enter/Space are left to `react-native-web`'s own `role="button"`
80
+ press handling — handling them here would select the day twice. Moving past the displayed month
81
+ pages the cursor; every move is `clampToRange`d to `minDate`/`maxDate`. A disabled day can be
82
+ focused but not selected, which is what lets a run of blocked dates be crossed at all.
83
+ - **1.3.1** — `TimePicker`'s columns are labelled `"Hour"` / `"Minute"` / `"AM or PM"`, so the options
84
+ aren't one flat run. They are `role="button"` option lists, not steppers — no `accessibilityValue`.
85
+ - **2.5.5 / 2.5.8 target size** — day cells, quick-jump cells and time options are 44dp `minHeight`
86
+ directly; the field's trigger and the clear button reach 44dp via `hitSlop`. Day-cell WIDTH is
87
+ `flex: 1` (see Known gaps).
88
+ - **A constant assertion is not enough for a target size.** Every number in `DatePicker.test.ts`'s
89
+ target-size describe is PAIRED with a flattened-style assertion on the real node in
90
+ `DatePicker.render.test.tsx`. A constants-only suite stayed green through a refactor that shrank
91
+ the rendered trigger to ~24dp.
92
+ - **The field's trigger owns the box's gutters and stretches to its height.** `dateFieldStructure`'s
93
+ `paddingHorizontal` is zeroed on the box and re-applied to the `Pressable` (the clear button
94
+ carries the right gutter as a margin), and `fieldPressable` sets `alignSelf: "stretch"` — same
95
+ reason `Input` stretches its `TextInput`. In a `row` parent with `alignItems: "center"` a child is
96
+ sized to its CONTENT, so without both the target is ~20dp tall inside a 16dp dead strip each side.
97
+ `DATE_FIELD_HIT_SLOP` is sized against `DATE_FIELD_INNER_HEIGHT` (box height minus its own border,
98
+ which Yoga lays outside its children), never `DATE_FIELD_HEIGHT`.
99
+ - **1.4.3** — selected-day label on `accent.solid`, muted adjacent-day label on `bg.surface`,
100
+ field/message text on the canvas — all measured ≥ 4.5:1, every brand × mode. Disabled cells are
101
+ exempt, like every other disabled control in this library.
102
+ - **1.4.11** — the today ring (`fg.muted`, a border never a fill — fill is reserved for selection)
103
+ and the field border are measured ≥ 3:1 against their surface.
104
+ - **2.3.3** — the sheet's RN `<Modal>` is `animationType="none"` unconditionally; the fade/slide is
105
+ `core/motion`'s `useReveal`, which `setValue`s opacity/translateY straight to their end state under
106
+ `useReducedMotion()` (`usePressMotion` likewise for a time option's press). `DatePicker.motion.test.tsx`
107
+ covers it — the old `animationType={reducedMotion ? "none" : "fade"}` prop it replaced is gone.
108
+
109
+ ## Patterns copied from the reference modules
110
+
111
+ 1. **Structure vs colour split** (Button) — sizing/spacing via `createThemedVariants`; every colour a
112
+ role lookup, never a hex, applied inline.
113
+ 2. **Field/label/error shape** (`input/`) — `PickerField` reuses `Input`'s exact `md` box height,
114
+ padding, radius, and label/error placement (the padding lives on the trigger, not the box — see
115
+ the a11y contract; the visible inset is identical), so a `DatePicker` sits beside a real `Input`
116
+ with no visual seam.
117
+ 3. **Modal overlay + backdrop dismiss** (`select/`) — `PickerShell` is RN's own `Modal`, the same
118
+ web-portal opt-in (`ModalPortalContext`/`renderWebPortal`) and backdrop-press-closes convention.
119
+ 4. **Tab strip** (`tabs/`) — `"datetime"` mode composes the library's own `Tabs`, not a custom toggle.
120
+
121
+ ## Design decisions specific to this module
122
+
123
+ - **The sheet edits a local draft, never `value` directly.** `Calendar`/`TimePicker` report into
124
+ `draft`; only Confirm commits it via `onChange`. Cancel and the backdrop are the same dismissal and
125
+ simply discard the draft — "Cancel restores the prior value" holds by construction, since the prior
126
+ value was never touched.
127
+ - **Every internal `Date` is anchored at local noon** (`atNoon`/`makeDate`). Constructing at midnight
128
+ lands on the wrong calendar day in any zone whose DST transition happens at 00:00 (e.g.
129
+ America/Santiago) — noon is never ambiguous or skipped by any real-world DST rule.
130
+ - **Day-level comparisons (`isSameDay`, `dayOrdinal`, `isWithinRange`) compare calendar fields, never
131
+ timestamps** — immune to time-of-day and DST offsets by construction (`DatePicker.test.ts` asserts
132
+ this directly).
133
+ - **`PickerField`/`PickerShell` are intentionally not exported.** The two pickers differ only in what
134
+ they render as sheet content; the field markup and modal chrome are otherwise identical, so
135
+ splitting them out is a plain "compose, don't reimplement" internal helper, not public API.
136
+
137
+ ## Known gaps
138
+
139
+ - Day-cell touch target is `flex: 1` for width (to fit 7 columns on the narrowest phone) — height
140
+ always meets 44dp, width only above **364dp**: 7 × 44 plus 56dp of horizontal chrome (overlay
141
+ 2 × 12 + sheet 2 × 8 + calendar 2 × 8). That is wider than most phones in use — a cell is ~43.4dp
142
+ at Android's very common 360dp and ~37.7dp on an iPhone SE (320dp), so WCAG 2.5.5 is missed on
143
+ those devices, not merely on an unusually narrow one.
144
+ - The field's `error` string is not folded into the field's accessible name. Unlike `Input`, which at
145
+ least surfaces its error through `accessibilityHint` (`resolveInputAccessibility`), the picker
146
+ field surfaces it nowhere — a screen reader announces the invalid border colour as nothing at all.
147
+ Pre-existing; fixing it belongs with the library-wide field a11y pass, not this module alone. Note
148
+ `accessibilityHint` has **no** `react-native-web` equivalent at all, so whatever that pass lands
149
+ must reach web through `aria-describedby` on the rendered error `Text`, not through a hint.
150
+ - No swipe-to-navigate months — v1 is touch-only there.
151
+ - **The quick-jump grid (12 month cells) is still 12 tab stops.** Only the DAY grid rovs; the
152
+ month grid was left alone because it is transient and reachable in 12 keys, not 30.
153
+ - **Arrow keys are not RTL-mirrored.** ArrowLeft is always the previous day. Correct for every
154
+ locale this library ships copy for; a genuine RTL pass belongs library-wide, not here.
155
+ - `DateRangePicker` has no "hover preview" of the in-progress range before the second tap.
156
+
157
+ ## Performance
158
+
159
+ All four exported components wrapped in `React.memo`. `TimePicker`'s hour/minute columns are
160
+ virtualized `FlatList`s (a minute column can hold 60 rows); the two-item AM/PM column and the 42-cell
161
+ month grid are plain views, matching `Tabs`'/`Menu`'s choice not to virtualize small, fixed lists.
162
+ Formatters (`Intl.DateTimeFormat`) are cached per `(locale, shape)` — a month render formats 42
163
+ accessible day labels, and constructing a fresh formatter per cell measurably dominated that work.
164
+
165
+ ## Modernization (v1.0.7)
166
+
167
+ - Theme imports decoupled to `theme/hooks`; optional peers (reanimated, gesture-handler, flash-list) load at runtime.
168
+ - List-heavy surfaces use `VirtualList` with device-tier window sizing where applicable.
169
+ - `React.memo` + stable callbacks retained; render-item/key-extractor hoisted per ESLint perf rules.
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * PickerField — the pressable field box shared by `DatePicker` and `DateRangePicker`, styled
5
+ * byte-for-byte like `Input`'s `md` box (see `dateFieldStructure`'s doc comment) so either sits
6
+ * beside a real `Input` in a form with no visual seam. NOT part of this module's public surface —
7
+ * both pickers differ only in what value they format and how "clear" resets it; the field's markup,
8
+ * a11y wiring and focus/error treatment are otherwise identical.
9
+ */
10
+
11
+ import { memo, useState } from "react";
12
+ import { Pressable, StyleSheet, Text, View } from "react-native";
13
+ import { Icon } from "../../core/icon/index.js";
14
+ import { useTheme } from "../../theme/hooks.js";
15
+ import { CLEAR_BUTTON_HIT_SLOP, DATE_FIELD_FONT_SIZE, DATE_FIELD_HIT_SLOP, DATE_FIELD_ICON_SIZE, clearButtonStructure, dateFieldStructure, resolveDateFieldAccessibility, resolveDateFieldColors } from "./DatePicker.variants.js";
16
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
+ const ICON_STROKE = 2;
18
+ export const PickerField = /*#__PURE__*/memo(function PickerField({
19
+ label,
20
+ placeholder,
21
+ displayText,
22
+ error,
23
+ disabled,
24
+ open,
25
+ clearable,
26
+ clearAccessibilityLabel,
27
+ trailingIcon,
28
+ onPress,
29
+ onClear,
30
+ testID
31
+ }) {
32
+ const theme = useTheme();
33
+ const [focused, setFocused] = useState(false);
34
+ const fieldColors = resolveDateFieldColors(theme.colors, {
35
+ focused: focused || open,
36
+ invalid: error !== undefined
37
+ });
38
+ const a11y = resolveDateFieldAccessibility({
39
+ label,
40
+ displayValue: displayText,
41
+ placeholder,
42
+ disabled,
43
+ open
44
+ });
45
+ const showClear = clearable && !disabled && displayText !== "";
46
+ return /*#__PURE__*/_jsxs(View, {
47
+ style: styles.container,
48
+ children: [label !== undefined &&
49
+ /*#__PURE__*/
50
+ // Decorative — the real accessible name lives on the field Pressable below (Input's pattern).
51
+ _jsx(Text, {
52
+ "aria-hidden": true,
53
+ style: [theme.fontStyleForWeight(theme.fontWeights.medium), {
54
+ fontSize: theme.fontSizes.sm,
55
+ color: theme.colors.fg.default,
56
+ marginBottom: theme.space[1]
57
+ }],
58
+ children: label
59
+ }), /*#__PURE__*/_jsxs(View, {
60
+ testID: testID ? `${testID}-box` : undefined,
61
+ style: [dateFieldStructure(theme),
62
+ // The box's gutters move onto the trigger below, so the whole visible field opens the
63
+ // picker — the padding stayed here and killed 16dp of target on each side (WCAG 2.5.5).
64
+ {
65
+ borderColor: fieldColors.border,
66
+ paddingHorizontal: 0
67
+ }, disabled && styles.dimmed],
68
+ children: [/*#__PURE__*/_jsxs(Pressable, {
69
+ testID: testID,
70
+ accessibilityRole: a11y.accessibilityRole,
71
+ accessibilityLabel: a11y.accessibilityLabel,
72
+ "aria-disabled": a11y["aria-disabled"],
73
+ "aria-expanded": a11y["aria-expanded"],
74
+ disabled: a11y.disabled,
75
+ onPress: onPress,
76
+ onFocus: () => setFocused(true),
77
+ onBlur: () => setFocused(false),
78
+ hitSlop: DATE_FIELD_HIT_SLOP,
79
+ style: [styles.fieldPressable, {
80
+ paddingLeft: theme.space[4],
81
+ paddingRight: showClear ? 0 : theme.space[4]
82
+ }],
83
+ children: [/*#__PURE__*/_jsx(Text, {
84
+ numberOfLines: 1,
85
+ style: [theme.fontStyleForWeight(theme.fontWeights.regular), {
86
+ flex: 1,
87
+ fontSize: DATE_FIELD_FONT_SIZE,
88
+ color: displayText ? fieldColors.text : fieldColors.placeholder
89
+ }],
90
+ children: displayText || placeholder
91
+ }), /*#__PURE__*/_jsx(Icon, {
92
+ name: trailingIcon,
93
+ size: DATE_FIELD_ICON_SIZE,
94
+ color: fieldColors.icon,
95
+ strokeWidth: ICON_STROKE
96
+ })]
97
+ }), showClear && /*#__PURE__*/_jsx(Pressable, {
98
+ testID: testID ? `${testID}-clear` : undefined,
99
+ accessibilityRole: "button",
100
+ accessibilityLabel: clearAccessibilityLabel,
101
+ hitSlop: CLEAR_BUTTON_HIT_SLOP,
102
+ onPress: onClear,
103
+ style: [clearButtonStructure(theme), {
104
+ marginRight: theme.space[4]
105
+ }],
106
+ children: /*#__PURE__*/_jsx(Icon, {
107
+ name: "x",
108
+ size: DATE_FIELD_ICON_SIZE,
109
+ color: fieldColors.icon,
110
+ strokeWidth: ICON_STROKE
111
+ })
112
+ })]
113
+ }), error !== undefined && /*#__PURE__*/_jsx(Text, {
114
+ accessibilityLiveRegion: "polite",
115
+ style: [theme.fontStyleForWeight(theme.fontWeights.regular), {
116
+ fontSize: theme.fontSizes.xs,
117
+ color: fieldColors.message,
118
+ marginTop: theme.space[1]
119
+ }],
120
+ children: error
121
+ })]
122
+ });
123
+ });
124
+ const styles = StyleSheet.create({
125
+ container: {
126
+ alignSelf: "stretch"
127
+ },
128
+ // `alignSelf: "stretch"` is load-bearing: the row parent would otherwise size the trigger to its
129
+ // ~20dp content height, not the field's 40dp box. Same reason `Input` stretches its TextInput.
130
+ fieldPressable: {
131
+ flex: 1,
132
+ alignSelf: "stretch",
133
+ flexDirection: "row",
134
+ alignItems: "center",
135
+ minWidth: 0
136
+ },
137
+ // A disabled control is exempt from the contrast minimum (WCAG 1.4.3), so a uniform dim is correct.
138
+ dimmed: {
139
+ opacity: 0.5
140
+ }
141
+ });
142
+ //# sourceMappingURL=PickerField.js.map
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * PickerShell — the modal chrome (backdrop, overlay, sheet, Cancel/Confirm footer) shared by
5
+ * `DatePicker` and `DateRangePicker`. NOT part of this module's public surface (not re-exported
6
+ * from `index.ts`): the two pickers differ only in what they render as `children` (Calendar /
7
+ * TimePicker / a `Tabs` strip) — the sheet's presentation, dismissal and confirm/cancel wiring are
8
+ * otherwise identical, so this is a plain internal composition helper, the same "compose, don't
9
+ * reimplement" choice `alert-dialog` makes for its Modal + Button pairing.
10
+ *
11
+ * Renders in React Native's OWN `Modal`, imported directly from `"react-native"` — same reasoning
12
+ * as `Select`/`Menu`: this module owns its sheet's markup outright, never the library's own `Modal`
13
+ * COMPONENT (a persistent app dialog with a title/children contract is a different shape than a
14
+ * confirm/cancel picker sheet). The one deliberate exception is the web portal mechanism
15
+ * (`ModalPortalContext`/`renderWebPortal`), read for the same reason `Select.tsx`/`Menu.tsx` read
16
+ * it — see `../modal/ModalPortalContext.ts`.
17
+ */
18
+
19
+ import { memo, useContext, useMemo, useRef } from "react";
20
+ import { Animated, Modal, Platform, Pressable, StyleSheet, View } from "react-native";
21
+ import { useDismissOnEscape, useFocusTrap } from "../../core/a11y/keyboard";
22
+ import { useReveal } from "../../core/motion/index.js";
23
+ import { useTheme } from "../../theme/hooks.js";
24
+ import { Button } from "../button/index.js";
25
+ import { ModalPortalContext } from "../modal/ModalPortalContext.js";
26
+ import { renderWebPortal } from "../modal/renderWebPortal";
27
+ import { pickerFooterStructure, pickerOverlayStructure, pickerSheetStructure } from "./DatePicker.variants.js";
28
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
29
+ // Decorative dismiss scrim behind the sheet — a design constant, not a role token: it is neither
30
+ // text nor an interactive boundary, so WCAG's contrast minimums don't apply to it. Same constant
31
+ // Select/Menu use for their identical backdrop.
32
+ const BACKDROP_SCRIM = "#00000099";
33
+ export const PickerShell = /*#__PURE__*/memo(function PickerShell({
34
+ open,
35
+ accessibilityLabel,
36
+ onCancel,
37
+ onConfirm,
38
+ confirmLabel = "Confirm",
39
+ cancelLabel = "Cancel",
40
+ children,
41
+ testID
42
+ }) {
43
+ const theme = useTheme();
44
+ const portalContainer = useContext(ModalPortalContext);
45
+ const sheetRef = useRef(null);
46
+ // Only on the portal branch: the RN <Modal> path below already gets Escape/trap/restore from
47
+ // react-native-web's own <Modal>, and two of each would fight. See ../modal/Modal.tsx.
48
+ const portalled = Platform.OS === "web" && portalContainer != null;
49
+ useDismissOnEscape(portalled && open, onCancel);
50
+ useFocusTrap(sheetRef, portalled && open);
51
+
52
+ // `mounted` is deliberately unused: the Modal below already unmounts the sheet on `open === false`,
53
+ // so gating on it too would keep the panel in the tree for the exit duration.
54
+ const {
55
+ style: revealStyle
56
+ } = useReveal(open);
57
+ const overlayStructure = useMemo(() => pickerOverlayStructure(theme), [theme]);
58
+ const footerStructure = useMemo(() => pickerFooterStructure(theme), [theme]);
59
+ const sheetStyle = useMemo(() => [pickerSheetStructure(theme), {
60
+ backgroundColor: theme.colors.bg.surface
61
+ }, revealStyle], [theme, revealStyle]);
62
+
63
+ // Built only while `open`: a closed picker has no reason to mount Calendar/TimePicker/Tabs just
64
+ // because the field is on screen.
65
+ const sheet = open ? /*#__PURE__*/_jsxs(_Fragment, {
66
+ children: [/*#__PURE__*/_jsx(Pressable, {
67
+ testID: testID ? `${testID}-backdrop` : undefined,
68
+ accessible: false,
69
+ tabIndex: -1,
70
+ style: styles.backdrop,
71
+ onPress: onCancel
72
+ }), /*#__PURE__*/_jsx(View, {
73
+ style: overlayStructure,
74
+ pointerEvents: "box-none",
75
+ children: /*#__PURE__*/_jsxs(Animated.View, {
76
+ ref: sheetRef,
77
+ testID: testID ? `${testID}-sheet` : undefined
78
+ // Mirrors Modal/BottomSheet: on the web-portal path there is no RN <Modal> to take the
79
+ // page out of the a11y tree, and the backdrop is `accessible={false}` so two-finger-Z
80
+ // has nothing else to hit.
81
+ // Both: RN's View reads only `accessibilityViewIsModal`, react-native-web only `aria-modal`.
82
+ ,
83
+ accessibilityViewIsModal: true,
84
+ "aria-modal": true,
85
+ accessibilityLabel: accessibilityLabel,
86
+ onAccessibilityEscape: onCancel,
87
+ style: sheetStyle,
88
+ children: [children, /*#__PURE__*/_jsxs(View, {
89
+ style: footerStructure,
90
+ children: [/*#__PURE__*/_jsx(Button, {
91
+ variant: "outline",
92
+ tone: "neutral",
93
+ label: cancelLabel,
94
+ onPress: onCancel,
95
+ testID: testID ? `${testID}-cancel` : undefined
96
+ }), /*#__PURE__*/_jsx(Button, {
97
+ variant: "solid",
98
+ tone: "accent",
99
+ label: confirmLabel,
100
+ onPress: onConfirm,
101
+ testID: testID ? `${testID}-confirm` : undefined
102
+ })]
103
+ })]
104
+ })
105
+ })]
106
+ }) : null;
107
+
108
+ // Web portal opt-in — see Select.tsx's identical branch + ModalPortalContext.ts. Every other case
109
+ // (native, or web with no ModalPortalProvider) renders through RN's own <Modal> below, unchanged.
110
+ if (portalled) {
111
+ if (!open) return null;
112
+ return renderWebPortal(/*#__PURE__*/_jsx(View, {
113
+ style: StyleSheet.absoluteFill,
114
+ pointerEvents: "box-none",
115
+ children: sheet
116
+ }), portalContainer);
117
+ }
118
+ return /*#__PURE__*/_jsx(Modal, {
119
+ visible: open,
120
+ transparent: true,
121
+ animationType: "none",
122
+ onRequestClose: onCancel,
123
+ children: sheet
124
+ });
125
+ });
126
+ const styles = StyleSheet.create({
127
+ backdrop: {
128
+ ...StyleSheet.absoluteFill,
129
+ backgroundColor: BACKDROP_SCRIM
130
+ }
131
+ });
132
+ //# sourceMappingURL=PickerShell.js.map