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.
- package/lib/module/core/MODULE.md +129 -36
- package/lib/module/core/a11y/MODULE.md +127 -4
- package/lib/module/core/a11y/announce.js +30 -0
- package/lib/module/core/a11y/announce.web.js +134 -0
- package/lib/module/core/a11y/index.js +81 -15
- package/lib/module/core/a11y/keyboard.js +42 -0
- package/lib/module/core/a11y/keyboard.web.js +229 -0
- package/lib/module/core/a11y/labels.js +24 -0
- package/lib/module/core/device/MODULE.md +47 -0
- package/lib/module/core/device/index.js +91 -0
- package/lib/module/core/heading/MODULE.md +38 -0
- package/lib/module/core/heading/index.js +45 -0
- package/lib/module/core/icon/Icon.js +37 -0
- package/lib/module/core/icon/MODULE.md +42 -8
- package/lib/module/core/icon/icons/arrow-down.js +10 -0
- package/lib/module/core/icon/icons/arrow-left.js +10 -0
- package/lib/module/core/icon/icons/arrow-right.js +10 -0
- package/lib/module/core/icon/icons/arrow-up.js +10 -0
- package/lib/module/core/icon/icons/at-sign.js +10 -0
- package/lib/module/core/icon/icons/bell.js +10 -0
- package/lib/module/core/icon/icons/bold.js +10 -0
- package/lib/module/core/icon/icons/building-2.js +10 -0
- package/lib/module/core/icon/icons/calendar.js +10 -0
- package/lib/module/core/icon/icons/chart-column.js +10 -0
- package/lib/module/core/icon/icons/check.js +10 -0
- package/lib/module/core/icon/icons/chevron-down.js +10 -0
- package/lib/module/core/icon/icons/chevron-left.js +10 -0
- package/lib/module/core/icon/icons/chevron-right.js +10 -0
- package/lib/module/core/icon/icons/chevron-up.js +10 -0
- package/lib/module/core/icon/icons/chevrons-left.js +10 -0
- package/lib/module/core/icon/icons/chevrons-right.js +10 -0
- package/lib/module/core/icon/icons/chevrons-up-down.js +10 -0
- package/lib/module/core/icon/icons/circle-alert.js +10 -0
- package/lib/module/core/icon/icons/circle-check.js +10 -0
- package/lib/module/core/icon/icons/clock.js +10 -0
- package/lib/module/core/icon/icons/code.js +10 -0
- package/lib/module/core/icon/icons/download.js +10 -0
- package/lib/module/core/icon/icons/external-link.js +10 -0
- package/lib/module/core/icon/icons/eye.js +10 -0
- package/lib/module/core/icon/icons/file-text.js +10 -0
- package/lib/module/core/icon/icons/filter.js +10 -0
- package/lib/module/core/icon/icons/flag.js +10 -0
- package/lib/module/core/icon/icons/folder.js +10 -0
- package/lib/module/core/icon/icons/heading-1.js +10 -0
- package/lib/module/core/icon/icons/heading-2.js +10 -0
- package/lib/module/core/icon/icons/heading-3.js +10 -0
- package/lib/module/core/icon/icons/image.js +10 -0
- package/lib/module/core/icon/icons/inbox.js +10 -0
- package/lib/module/core/icon/icons/info.js +10 -0
- package/lib/module/core/icon/icons/italic.js +10 -0
- package/lib/module/core/icon/icons/kanban.js +10 -0
- package/lib/module/core/icon/icons/layers.js +10 -0
- package/lib/module/core/icon/icons/layout-dashboard.js +10 -0
- package/lib/module/core/icon/icons/layout-template.js +10 -0
- package/lib/module/core/icon/icons/life-buoy.js +10 -0
- package/lib/module/core/icon/icons/link.js +10 -0
- package/lib/module/core/icon/icons/list-checks.js +10 -0
- package/lib/module/core/icon/icons/list-ordered.js +10 -0
- package/lib/module/core/icon/icons/list-todo.js +10 -0
- package/lib/module/core/icon/icons/list.js +10 -0
- package/lib/module/core/icon/icons/log-out.js +10 -0
- package/lib/module/core/icon/icons/map.js +10 -0
- package/lib/module/core/icon/icons/message-square.js +10 -0
- package/lib/module/core/icon/icons/milestone.js +10 -0
- package/lib/module/core/icon/icons/minus.js +10 -0
- package/lib/module/core/icon/icons/more-horizontal.js +10 -0
- package/lib/module/core/icon/icons/paperclip.js +10 -0
- package/lib/module/core/icon/icons/pencil.js +10 -0
- package/lib/module/core/icon/icons/plus.js +10 -0
- package/lib/module/core/icon/icons/quote.js +10 -0
- package/lib/module/core/icon/icons/refresh-cw.js +10 -0
- package/lib/module/core/icon/icons/save.js +10 -0
- package/lib/module/core/icon/icons/search.js +10 -0
- package/lib/module/core/icon/icons/send.js +10 -0
- package/lib/module/core/icon/icons/settings.js +10 -0
- package/lib/module/core/icon/icons/share.js +10 -0
- package/lib/module/core/icon/icons/square-code.js +10 -0
- package/lib/module/core/icon/icons/star.js +10 -0
- package/lib/module/core/icon/icons/strikethrough.js +10 -0
- package/lib/module/core/icon/icons/tag.js +10 -0
- package/lib/module/core/icon/icons/trash.js +10 -0
- package/lib/module/core/icon/icons/triangle-alert.js +10 -0
- package/lib/module/core/icon/icons/underline.js +10 -0
- package/lib/module/core/icon/icons/upload.js +10 -0
- package/lib/module/core/icon/icons/user.js +10 -0
- package/lib/module/core/icon/icons/users.js +10 -0
- package/lib/module/core/icon/icons/x.js +10 -0
- package/lib/module/core/icon/index.js +4 -86
- package/lib/module/core/icon/names.js +2 -0
- package/lib/module/core/icon/resolve.js +158 -0
- package/lib/module/core/icon/types.js +4 -0
- package/lib/module/core/list/VirtualList.js +226 -0
- package/lib/module/core/list/index.js +4 -0
- package/lib/module/core/media/MediaImage.js +51 -0
- package/lib/module/core/media/expoImage.js +20 -0
- package/lib/module/core/media/index.js +6 -0
- package/lib/module/core/media/pickers.js +23 -0
- package/lib/module/core/motion/MODULE.md +101 -0
- package/lib/module/core/motion/config.js +112 -0
- package/lib/module/core/motion/index.js +7 -0
- package/lib/module/core/motion/presets.js +192 -0
- package/lib/module/core/motion/useAnimatedValue.js +19 -0
- package/lib/module/core/motion/useMotion.js +46 -0
- package/lib/module/core/style/index.js +2 -0
- package/lib/module/core/style/sx.js +76 -0
- package/lib/module/core/style/useThemedStyles.js +8 -0
- package/lib/module/index.js +70 -2
- package/lib/module/modules/accordion/Accordion.js +256 -87
- package/lib/module/modules/accordion/Accordion.variants.js +2 -4
- package/lib/module/modules/accordion/MODULE.md +35 -11
- package/lib/module/modules/alert-dialog/AlertDialog.js +1 -1
- package/lib/module/modules/alert-dialog/MODULE.md +11 -2
- package/lib/module/modules/app-bar/AppBar.js +179 -0
- package/lib/module/modules/app-bar/AppBar.variants.js +72 -0
- package/lib/module/modules/app-bar/MODULE.md +68 -0
- package/lib/module/modules/app-bar/index.js +10 -0
- package/lib/module/modules/avatar/Avatar.js +38 -18
- package/lib/module/modules/avatar/Avatar.variants.js +44 -3
- package/lib/module/modules/avatar/MODULE.md +37 -15
- package/lib/module/modules/avatar-group/AvatarGroup.js +77 -0
- package/lib/module/modules/avatar-group/AvatarGroup.variants.js +109 -0
- package/lib/module/modules/avatar-group/MODULE.md +28 -0
- package/lib/module/modules/avatar-group/index.js +10 -0
- package/lib/module/modules/badge/Badge.js +3 -2
- package/lib/module/modules/badge/Badge.variants.js +12 -2
- package/lib/module/modules/badge/MODULE.md +6 -0
- package/lib/module/modules/banner/Banner.js +135 -0
- package/lib/module/modules/banner/Banner.variants.js +118 -0
- package/lib/module/modules/banner/MODULE.md +113 -0
- package/lib/module/modules/banner/index.js +4 -0
- package/lib/module/modules/bottom-nav/BottomNav.js +38 -117
- package/lib/module/modules/bottom-nav/BottomNav.variants.js +93 -9
- package/lib/module/modules/bottom-nav/BottomNavIconWithBadge.js +123 -0
- package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js +146 -120
- package/lib/module/modules/bottom-nav/BottomNavTab.js +138 -0
- package/lib/module/modules/bottom-nav/MODULE.md +45 -15
- package/lib/module/modules/bottom-sheet/BottomSheet.js +189 -0
- package/lib/module/modules/bottom-sheet/BottomSheet.variants.js +49 -0
- package/lib/module/modules/bottom-sheet/MODULE.md +53 -0
- package/lib/module/modules/bottom-sheet/index.js +4 -0
- package/lib/module/modules/button/Button.js +98 -47
- package/lib/module/modules/button/Button.variants.js +12 -7
- package/lib/module/modules/button/MODULE.md +25 -3
- package/lib/module/modules/button-group/ButtonGroup.js +163 -55
- package/lib/module/modules/button-group/ButtonGroup.variants.js +30 -4
- package/lib/module/modules/button-group/MODULE.md +33 -7
- package/lib/module/modules/card/Card.js +10 -7
- package/lib/module/modules/card/MODULE.md +6 -0
- package/lib/module/modules/charts/BarChart.js +242 -0
- package/lib/module/modules/charts/BarList.js +129 -0
- package/lib/module/modules/charts/ChartLegend.js +154 -0
- package/lib/module/modules/charts/Charts.variants.js +582 -0
- package/lib/module/modules/charts/DonutChart.js +133 -0
- package/lib/module/modules/charts/LineChart.js +179 -0
- package/lib/module/modules/charts/MODULE.md +178 -0
- package/lib/module/modules/charts/PieChart.js +140 -0
- package/lib/module/modules/charts/Sparkline.js +80 -0
- package/lib/module/modules/charts/index.js +15 -0
- package/lib/module/modules/checkbox/Checkbox.js +114 -44
- package/lib/module/modules/checkbox/Checkbox.variants.js +13 -8
- package/lib/module/modules/checkbox/MODULE.md +35 -8
- package/lib/module/modules/chip/Chip.js +155 -0
- package/lib/module/modules/chip/Chip.variants.js +278 -0
- package/lib/module/modules/chip/ChipGroup.js +48 -0
- package/lib/module/modules/chip/MODULE.md +156 -0
- package/lib/module/modules/chip/index.js +13 -0
- package/lib/module/modules/combobox/Combobox.js +587 -0
- package/lib/module/modules/combobox/Combobox.variants.js +280 -0
- package/lib/module/modules/combobox/MODULE.md +183 -0
- package/lib/module/modules/combobox/comboboxKeys.js +19 -0
- package/lib/module/modules/combobox/comboboxKeys.web.js +76 -0
- package/lib/module/modules/combobox/index.js +13 -0
- package/lib/module/modules/composer/Composer.js +156 -0
- package/lib/module/modules/composer/Composer.variants.js +42 -0
- package/lib/module/modules/composer/MODULE.md +70 -0
- package/lib/module/modules/composer/index.js +4 -0
- package/lib/module/modules/copy-button/CopyButton.js +156 -0
- package/lib/module/modules/copy-button/CopyButton.variants.js +86 -0
- package/lib/module/modules/copy-button/MODULE.md +73 -0
- package/lib/module/modules/copy-button/index.js +4 -0
- package/lib/module/modules/data-table/DataTable.js +513 -0
- package/lib/module/modules/data-table/DataTable.variants.js +188 -0
- package/lib/module/modules/data-table/MODULE.md +145 -0
- package/lib/module/modules/data-table/index.js +10 -0
- package/lib/module/modules/date-picker/Calendar.js +368 -0
- package/lib/module/modules/date-picker/Calendar.keys.js +23 -0
- package/lib/module/modules/date-picker/Calendar.keys.web.js +83 -0
- package/lib/module/modules/date-picker/DatePicker.js +162 -0
- package/lib/module/modules/date-picker/DatePicker.variants.js +686 -0
- package/lib/module/modules/date-picker/DateRangePicker.js +87 -0
- package/lib/module/modules/date-picker/MODULE.md +169 -0
- package/lib/module/modules/date-picker/PickerField.js +142 -0
- package/lib/module/modules/date-picker/PickerShell.js +132 -0
- package/lib/module/modules/date-picker/TimePicker.js +184 -0
- package/lib/module/modules/date-picker/index.js +14 -0
- package/lib/module/modules/divider/Divider.js +8 -7
- package/lib/module/modules/divider/MODULE.md +6 -0
- package/lib/module/modules/drawer/Drawer.js +140 -58
- package/lib/module/modules/drawer/Drawer.variants.js +3 -16
- package/lib/module/modules/drawer/MODULE.md +90 -118
- package/lib/module/modules/empty-state/EmptyState.js +32 -18
- package/lib/module/modules/empty-state/EmptyState.variants.js +9 -0
- package/lib/module/modules/empty-state/MODULE.md +25 -7
- package/lib/module/modules/fab/Fab.js +212 -0
- package/lib/module/modules/fab/Fab.variants.js +346 -0
- package/lib/module/modules/fab/FabGroup.js +334 -0
- package/lib/module/modules/fab/MODULE.md +181 -0
- package/lib/module/modules/fab/index.js +13 -0
- package/lib/module/modules/file-grid/FileGrid.js +149 -0
- package/lib/module/modules/file-grid/FileGrid.variants.js +51 -0
- package/lib/module/modules/file-grid/MODULE.md +12 -0
- package/lib/module/modules/file-grid/index.js +4 -0
- package/lib/module/modules/file-upload/FileUpload.js +124 -34
- package/lib/module/modules/file-upload/FileUpload.variants.js +50 -7
- package/lib/module/modules/file-upload/MODULE.md +22 -4
- package/lib/module/modules/filter-sheet/FilterChip.js +25 -19
- package/lib/module/modules/filter-sheet/FilterSheet.js +17 -11
- package/lib/module/modules/filter-sheet/FilterSheet.variants.js +24 -5
- package/lib/module/modules/filter-sheet/FilterSheetBody.js +168 -82
- package/lib/module/modules/filter-sheet/MODULE.md +22 -1
- package/lib/module/modules/folder-row/FolderRow.js +132 -0
- package/lib/module/modules/folder-row/FolderRow.variants.js +49 -0
- package/lib/module/modules/folder-row/MODULE.md +71 -0
- package/lib/module/modules/folder-row/index.js +4 -0
- package/lib/module/modules/form-field/FormField.js +104 -0
- package/lib/module/modules/form-field/FormField.variants.js +88 -0
- package/lib/module/modules/form-field/MODULE.md +103 -0
- package/lib/module/modules/form-field/index.js +4 -0
- package/lib/module/modules/gantt/Gantt.js +218 -0
- package/lib/module/modules/gantt/Gantt.variants.js +141 -0
- package/lib/module/modules/gantt/MODULE.md +71 -0
- package/lib/module/modules/gantt/index.js +5 -0
- package/lib/module/modules/image-viewer/ImageViewer.js +235 -0
- package/lib/module/modules/image-viewer/ImageViewer.variants.js +6 -0
- package/lib/module/modules/image-viewer/MODULE.md +57 -0
- package/lib/module/modules/image-viewer/index.js +4 -0
- package/lib/module/modules/input/Input.js +106 -48
- package/lib/module/modules/input/Input.variants.js +18 -4
- package/lib/module/modules/input/MODULE.md +36 -6
- package/lib/module/modules/limit-reached-modal/LimitReachedModal.js +90 -0
- package/lib/module/modules/limit-reached-modal/LimitReachedModal.variants.js +108 -0
- package/lib/module/modules/limit-reached-modal/MODULE.md +94 -0
- package/lib/module/modules/limit-reached-modal/index.js +11 -0
- package/lib/module/modules/list-item/ListItem.js +92 -0
- package/lib/module/modules/list-item/ListItem.variants.js +53 -0
- package/lib/module/modules/list-item/MODULE.md +53 -0
- package/lib/module/modules/list-item/index.js +10 -0
- package/lib/module/modules/markdown/MODULE.md +71 -0
- package/lib/module/modules/markdown/Markdown.js +183 -0
- package/lib/module/modules/markdown/Markdown.variants.js +73 -0
- package/lib/module/modules/markdown/index.js +11 -0
- package/lib/module/modules/markdown/parseMarkdown.js +153 -0
- package/lib/module/modules/menu/MODULE.md +45 -14
- package/lib/module/modules/menu/Menu.js +174 -65
- package/lib/module/modules/menu/Menu.variants.js +10 -0
- package/lib/module/modules/message-bubble/MODULE.md +38 -0
- package/lib/module/modules/message-bubble/MessageBubble.js +55 -0
- package/lib/module/modules/message-bubble/MessageBubble.variants.js +57 -0
- package/lib/module/modules/message-bubble/index.js +4 -0
- package/lib/module/modules/modal/MODULE.md +29 -3
- package/lib/module/modules/modal/Modal.js +72 -22
- package/lib/module/modules/more-items/MODULE.md +72 -0
- package/lib/module/modules/more-items/MoreItems.js +162 -0
- package/lib/module/modules/more-items/MoreItems.variants.js +80 -0
- package/lib/module/modules/more-items/index.js +4 -0
- package/lib/module/modules/multi-select/MODULE.md +85 -19
- package/lib/module/modules/multi-select/MultiSelect.js +217 -105
- package/lib/module/modules/multi-select/MultiSelect.variants.js +28 -5
- package/lib/module/modules/number-input/MODULE.md +39 -5
- package/lib/module/modules/number-input/NumberInput.js +41 -11
- package/lib/module/modules/number-input/NumberInput.variants.js +39 -5
- package/lib/module/modules/org-switcher/MODULE.md +121 -0
- package/lib/module/modules/org-switcher/OrgSwitcher.js +284 -0
- package/lib/module/modules/org-switcher/OrgSwitcher.variants.js +186 -0
- package/lib/module/modules/org-switcher/index.js +9 -0
- package/lib/module/modules/pagination/MODULE.md +163 -0
- package/lib/module/modules/pagination/Pagination.js +197 -0
- package/lib/module/modules/pagination/Pagination.variants.js +307 -0
- package/lib/module/modules/pagination/PaginationControls.js +193 -0
- package/lib/module/modules/pagination/index.js +15 -0
- package/lib/module/modules/pin-input/MODULE.md +29 -14
- package/lib/module/modules/pin-input/PinInput.js +111 -80
- package/lib/module/modules/pin-input/PinInput.variants.js +13 -5
- package/lib/module/modules/progress-bar/MODULE.md +17 -7
- package/lib/module/modules/progress-bar/ProgressBar.js +97 -56
- package/lib/module/modules/progress-bar/ProgressBar.variants.js +16 -18
- package/lib/module/modules/radio-group/MODULE.md +40 -14
- package/lib/module/modules/radio-group/RadioGroup.js +71 -7
- package/lib/module/modules/radio-group/RadioGroup.variants.js +46 -10
- package/lib/module/modules/reorder/MODULE.md +104 -97
- package/lib/module/modules/reorder/Reorder.js +233 -197
- package/lib/module/modules/reorder/Reorder.variants.js +35 -13
- package/lib/module/modules/rich-text/MODULE.md +52 -0
- package/lib/module/modules/rich-text/RichText.js +362 -0
- package/lib/module/modules/rich-text/RichText.variants.js +17 -0
- package/lib/module/modules/rich-text/index.js +5 -0
- package/lib/module/modules/rich-text/parseRichText.js +133 -0
- package/lib/module/modules/rich-text-editor/MODULE.md +225 -0
- package/lib/module/modules/rich-text-editor/RichTextEditor.js +413 -0
- package/lib/module/modules/rich-text-editor/RichTextEditor.variants.js +316 -0
- package/lib/module/modules/rich-text-editor/index.js +10 -0
- package/lib/module/modules/screen/MODULE.md +57 -0
- package/lib/module/modules/screen/Screen.js +106 -0
- package/lib/module/modules/screen/Screen.variants.js +43 -0
- package/lib/module/modules/screen/index.js +10 -0
- package/lib/module/modules/search-bar/MODULE.md +114 -0
- package/lib/module/modules/search-bar/SearchBar.js +256 -0
- package/lib/module/modules/search-bar/SearchBar.variants.js +205 -0
- package/lib/module/modules/search-bar/index.js +12 -0
- package/lib/module/modules/section/MODULE.md +39 -0
- package/lib/module/modules/section/Section.js +42 -0
- package/lib/module/modules/section/Section.variants.js +29 -0
- package/lib/module/modules/section/index.js +10 -0
- package/lib/module/modules/section-list/MODULE.md +18 -0
- package/lib/module/modules/section-list/SectionList.js +64 -0
- package/lib/module/modules/section-list/SectionList.variants.js +11 -0
- package/lib/module/modules/section-list/index.js +4 -0
- package/lib/module/modules/segmented-control/MODULE.md +124 -0
- package/lib/module/modules/segmented-control/SegmentedControl.js +158 -0
- package/lib/module/modules/segmented-control/SegmentedControl.variants.js +167 -0
- package/lib/module/modules/segmented-control/index.js +13 -0
- package/lib/module/modules/select/MODULE.md +82 -15
- package/lib/module/modules/select/Select.js +201 -96
- package/lib/module/modules/select/Select.variants.js +39 -5
- package/lib/module/modules/skeleton/MODULE.md +27 -7
- package/lib/module/modules/skeleton/Skeleton.js +52 -38
- package/lib/module/modules/skeleton/Skeleton.variants.js +9 -8
- package/lib/module/modules/slider/MODULE.md +31 -5
- package/lib/module/modules/slider/Slider.js +67 -10
- package/lib/module/modules/slider/Slider.variants.js +60 -13
- package/lib/module/modules/spinner/MODULE.md +16 -6
- package/lib/module/modules/spinner/Spinner.js +20 -16
- package/lib/module/modules/spinner/Spinner.variants.js +5 -3
- package/lib/module/modules/stage-progress/MODULE.md +64 -0
- package/lib/module/modules/stage-progress/StageProgress.js +174 -0
- package/lib/module/modules/stage-progress/StageProgress.variants.js +164 -0
- package/lib/module/modules/stage-progress/index.js +4 -0
- package/lib/module/modules/stat-tile/MODULE.md +51 -0
- package/lib/module/modules/stat-tile/StatTile.js +124 -0
- package/lib/module/modules/stat-tile/StatTile.variants.js +57 -0
- package/lib/module/modules/stat-tile/index.js +10 -0
- package/lib/module/modules/state-block/MODULE.md +52 -0
- package/lib/module/modules/state-block/StateBlock.js +131 -0
- package/lib/module/modules/state-block/StateBlock.variants.js +55 -0
- package/lib/module/modules/state-block/index.js +10 -0
- package/lib/module/modules/stepper/MODULE.md +33 -6
- package/lib/module/modules/stepper/Stepper.js +108 -39
- package/lib/module/modules/stepper/Stepper.variants.js +6 -6
- package/lib/module/modules/swipeable-row/MODULE.md +120 -0
- package/lib/module/modules/swipeable-row/SwipeableRow.js +244 -0
- package/lib/module/modules/swipeable-row/SwipeableRow.variants.js +80 -0
- package/lib/module/modules/swipeable-row/index.js +4 -0
- package/lib/module/modules/switch/MODULE.md +14 -0
- package/lib/module/modules/switch/Switch.js +1 -1
- package/lib/module/modules/switch/Switch.variants.js +8 -0
- package/lib/module/modules/tabs/MODULE.md +47 -13
- package/lib/module/modules/tabs/Tabs.js +121 -72
- package/lib/module/modules/tabs/Tabs.variants.js +30 -8
- package/lib/module/modules/text/MODULE.md +51 -0
- package/lib/module/modules/text/Text.js +47 -0
- package/lib/module/modules/text/Text.variants.js +98 -0
- package/lib/module/modules/text/index.js +4 -0
- package/lib/module/modules/textarea/MODULE.md +29 -13
- package/lib/module/modules/textarea/Textarea.js +90 -45
- package/lib/module/modules/textarea/Textarea.variants.js +14 -9
- package/lib/module/modules/timeline/MODULE.md +49 -8
- package/lib/module/modules/timeline/Timeline.js +151 -74
- package/lib/module/modules/timeline/Timeline.variants.js +13 -0
- package/lib/module/modules/toast/MODULE.md +66 -7
- package/lib/module/modules/toast/Toast.js +93 -27
- package/lib/module/modules/toast/Toast.variants.js +37 -1
- package/lib/module/modules/toast/toastScreenReader.js +69 -0
- package/lib/module/modules/tooltip/MODULE.md +78 -28
- package/lib/module/modules/tooltip/Tooltip.js +93 -43
- package/lib/module/modules/tooltip/Tooltip.variants.js +3 -4
- package/lib/module/modules/typing-indicator/MODULE.md +48 -0
- package/lib/module/modules/typing-indicator/TypingIndicator.js +98 -0
- package/lib/module/modules/typing-indicator/TypingIndicator.variants.js +55 -0
- package/lib/module/modules/typing-indicator/index.js +4 -0
- package/lib/module/modules/unread-badge/MODULE.md +20 -0
- package/lib/module/modules/unread-badge/UnreadBadge.js +45 -0
- package/lib/module/modules/unread-badge/UnreadBadge.variants.js +66 -0
- package/lib/module/modules/unread-badge/index.js +4 -0
- package/lib/module/test/mocks/flashList.js +5 -0
- package/lib/module/test/perfHelpers.js +18 -0
- package/lib/module/theme/MODULE.md +6 -0
- package/lib/module/theme/hooks.js +11 -0
- package/lib/module/theme/index.js +3 -6
- package/lib/module/theme/platform/MODULE.md +6 -0
- package/lib/module/theme/platform/motion.native.js +15 -0
- package/lib/module/theme/provider/PixelizeProvider.js +9 -47
- package/lib/module/theme/provider/ThemeContext.js +6 -0
- package/lib/module/theme/provider/colorModeStorage.js +2 -2
- package/lib/module/theme/provider/index.js +1 -0
- package/lib/module/theme/provider/loadPalette.js +75 -0
- package/lib/module/theme/provider/types.js +4 -0
- package/lib/module/theme/provider/useTheme.js +1 -2
- package/lib/module/theme/provider/useThemeMode.js +1 -1
- package/lib/module/theme/tokens/builders/accentText.js +9 -0
- package/lib/module/theme/tokens/roles/index.js +9 -3
- package/lib/typescript/core/a11y/announce.d.ts +20 -0
- package/lib/typescript/core/a11y/announce.web.d.ts +27 -0
- package/lib/typescript/core/a11y/index.d.ts +21 -2
- package/lib/typescript/core/a11y/keyboard.d.ts +45 -0
- package/lib/typescript/core/a11y/keyboard.web.d.ts +69 -0
- package/lib/typescript/core/a11y/labels.d.ts +19 -0
- package/lib/typescript/core/device/index.d.ts +16 -0
- package/lib/typescript/core/heading/index.d.ts +45 -0
- package/lib/typescript/core/icon/Icon.d.ts +18 -0
- package/lib/typescript/core/icon/icons/arrow-down.d.ts +3 -0
- package/lib/typescript/core/icon/icons/arrow-left.d.ts +3 -0
- package/lib/typescript/core/icon/icons/arrow-right.d.ts +3 -0
- package/lib/typescript/core/icon/icons/arrow-up.d.ts +3 -0
- package/lib/typescript/core/icon/icons/at-sign.d.ts +3 -0
- package/lib/typescript/core/icon/icons/bell.d.ts +3 -0
- package/lib/typescript/core/icon/icons/bold.d.ts +3 -0
- package/lib/typescript/core/icon/icons/building-2.d.ts +3 -0
- package/lib/typescript/core/icon/icons/calendar.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chart-column.d.ts +3 -0
- package/lib/typescript/core/icon/icons/check.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevron-down.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevron-left.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevron-right.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevron-up.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevrons-left.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevrons-right.d.ts +3 -0
- package/lib/typescript/core/icon/icons/chevrons-up-down.d.ts +3 -0
- package/lib/typescript/core/icon/icons/circle-alert.d.ts +3 -0
- package/lib/typescript/core/icon/icons/circle-check.d.ts +3 -0
- package/lib/typescript/core/icon/icons/clock.d.ts +3 -0
- package/lib/typescript/core/icon/icons/code.d.ts +3 -0
- package/lib/typescript/core/icon/icons/download.d.ts +3 -0
- package/lib/typescript/core/icon/icons/external-link.d.ts +3 -0
- package/lib/typescript/core/icon/icons/eye.d.ts +3 -0
- package/lib/typescript/core/icon/icons/file-text.d.ts +3 -0
- package/lib/typescript/core/icon/icons/filter.d.ts +3 -0
- package/lib/typescript/core/icon/icons/flag.d.ts +3 -0
- package/lib/typescript/core/icon/icons/folder.d.ts +3 -0
- package/lib/typescript/core/icon/icons/heading-1.d.ts +3 -0
- package/lib/typescript/core/icon/icons/heading-2.d.ts +3 -0
- package/lib/typescript/core/icon/icons/heading-3.d.ts +3 -0
- package/lib/typescript/core/icon/icons/image.d.ts +3 -0
- package/lib/typescript/core/icon/icons/inbox.d.ts +3 -0
- package/lib/typescript/core/icon/icons/info.d.ts +3 -0
- package/lib/typescript/core/icon/icons/italic.d.ts +3 -0
- package/lib/typescript/core/icon/icons/kanban.d.ts +3 -0
- package/lib/typescript/core/icon/icons/layers.d.ts +3 -0
- package/lib/typescript/core/icon/icons/layout-dashboard.d.ts +3 -0
- package/lib/typescript/core/icon/icons/layout-template.d.ts +3 -0
- package/lib/typescript/core/icon/icons/life-buoy.d.ts +3 -0
- package/lib/typescript/core/icon/icons/link.d.ts +3 -0
- package/lib/typescript/core/icon/icons/list-checks.d.ts +3 -0
- package/lib/typescript/core/icon/icons/list-ordered.d.ts +3 -0
- package/lib/typescript/core/icon/icons/list-todo.d.ts +3 -0
- package/lib/typescript/core/icon/icons/list.d.ts +3 -0
- package/lib/typescript/core/icon/icons/log-out.d.ts +3 -0
- package/lib/typescript/core/icon/icons/map.d.ts +3 -0
- package/lib/typescript/core/icon/icons/message-square.d.ts +3 -0
- package/lib/typescript/core/icon/icons/milestone.d.ts +3 -0
- package/lib/typescript/core/icon/icons/minus.d.ts +3 -0
- package/lib/typescript/core/icon/icons/more-horizontal.d.ts +3 -0
- package/lib/typescript/core/icon/icons/paperclip.d.ts +3 -0
- package/lib/typescript/core/icon/icons/pencil.d.ts +3 -0
- package/lib/typescript/core/icon/icons/plus.d.ts +3 -0
- package/lib/typescript/core/icon/icons/quote.d.ts +3 -0
- package/lib/typescript/core/icon/icons/refresh-cw.d.ts +3 -0
- package/lib/typescript/core/icon/icons/save.d.ts +3 -0
- package/lib/typescript/core/icon/icons/search.d.ts +3 -0
- package/lib/typescript/core/icon/icons/send.d.ts +3 -0
- package/lib/typescript/core/icon/icons/settings.d.ts +3 -0
- package/lib/typescript/core/icon/icons/share.d.ts +3 -0
- package/lib/typescript/core/icon/icons/square-code.d.ts +3 -0
- package/lib/typescript/core/icon/icons/star.d.ts +3 -0
- package/lib/typescript/core/icon/icons/strikethrough.d.ts +3 -0
- package/lib/typescript/core/icon/icons/tag.d.ts +3 -0
- package/lib/typescript/core/icon/icons/trash.d.ts +3 -0
- package/lib/typescript/core/icon/icons/triangle-alert.d.ts +3 -0
- package/lib/typescript/core/icon/icons/underline.d.ts +3 -0
- package/lib/typescript/core/icon/icons/upload.d.ts +3 -0
- package/lib/typescript/core/icon/icons/user.d.ts +3 -0
- package/lib/typescript/core/icon/icons/users.d.ts +3 -0
- package/lib/typescript/core/icon/icons/x.d.ts +3 -0
- package/lib/typescript/core/icon/index.d.ts +6 -57
- package/lib/typescript/core/icon/names.d.ts +2 -0
- package/lib/typescript/core/icon/resolve.d.ts +4 -0
- package/lib/typescript/core/icon/types.d.ts +13 -0
- package/lib/typescript/core/list/VirtualList.d.ts +55 -0
- package/lib/typescript/core/list/index.d.ts +3 -0
- package/lib/typescript/core/media/MediaImage.d.ts +28 -0
- package/lib/typescript/core/media/expoImage.d.ts +14 -0
- package/lib/typescript/core/media/index.d.ts +7 -0
- package/lib/typescript/core/media/pickers.d.ts +27 -0
- package/lib/typescript/core/motion/config.d.ts +56 -0
- package/lib/typescript/core/motion/index.d.ts +8 -0
- package/lib/typescript/core/motion/presets.d.ts +49 -0
- package/lib/typescript/core/motion/useAnimatedValue.d.ts +11 -0
- package/lib/typescript/core/motion/useMotion.d.ts +34 -0
- package/lib/typescript/core/style/index.d.ts +3 -0
- package/lib/typescript/core/style/sx.d.ts +86 -0
- package/lib/typescript/core/style/useThemedStyles.d.ts +5 -0
- package/lib/typescript/index.d.ts +134 -2
- package/lib/typescript/modules/accordion/Accordion.d.ts +12 -23
- package/lib/typescript/modules/accordion/Accordion.variants.d.ts +5 -5
- package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts +1 -1
- package/lib/typescript/modules/app-bar/AppBar.d.ts +37 -0
- package/lib/typescript/modules/app-bar/AppBar.variants.d.ts +35 -0
- package/lib/typescript/modules/app-bar/index.d.ts +9 -0
- package/lib/typescript/modules/avatar/Avatar.d.ts +23 -3
- package/lib/typescript/modules/avatar/Avatar.variants.d.ts +32 -1
- package/lib/typescript/modules/avatar/index.d.ts +1 -1
- package/lib/typescript/modules/avatar-group/AvatarGroup.d.ts +28 -0
- package/lib/typescript/modules/avatar-group/AvatarGroup.variants.d.ts +75 -0
- package/lib/typescript/modules/avatar-group/index.d.ts +9 -0
- package/lib/typescript/modules/badge/Badge.d.ts +3 -1
- package/lib/typescript/modules/badge/Badge.variants.d.ts +8 -4
- package/lib/typescript/modules/banner/Banner.d.ts +35 -0
- package/lib/typescript/modules/banner/Banner.variants.d.ts +49 -0
- package/lib/typescript/modules/banner/index.d.ts +5 -0
- package/lib/typescript/modules/bottom-nav/BottomNav.d.ts +14 -9
- package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts +72 -9
- package/lib/typescript/modules/bottom-nav/BottomNavIconWithBadge.d.ts +25 -0
- package/lib/typescript/modules/bottom-nav/BottomNavTab.d.ts +34 -0
- package/lib/typescript/modules/bottom-sheet/BottomSheet.d.ts +29 -0
- package/lib/typescript/modules/bottom-sheet/BottomSheet.variants.d.ts +13 -0
- package/lib/typescript/modules/bottom-sheet/index.d.ts +3 -0
- package/lib/typescript/modules/button/Button.d.ts +21 -0
- package/lib/typescript/modules/button/Button.variants.d.ts +22 -9
- package/lib/typescript/modules/button-group/ButtonGroup.d.ts +4 -2
- package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts +18 -5
- package/lib/typescript/modules/card/Card.variants.d.ts +2 -2
- package/lib/typescript/modules/charts/BarChart.d.ts +26 -0
- package/lib/typescript/modules/charts/BarList.d.ts +18 -0
- package/lib/typescript/modules/charts/ChartLegend.d.ts +16 -0
- package/lib/typescript/modules/charts/Charts.variants.d.ts +225 -0
- package/lib/typescript/modules/charts/DonutChart.d.ts +21 -0
- package/lib/typescript/modules/charts/LineChart.d.ts +30 -0
- package/lib/typescript/modules/charts/PieChart.d.ts +18 -0
- package/lib/typescript/modules/charts/Sparkline.d.ts +13 -0
- package/lib/typescript/modules/charts/index.d.ts +19 -0
- package/lib/typescript/modules/checkbox/Checkbox.d.ts +4 -1
- package/lib/typescript/modules/checkbox/Checkbox.variants.d.ts +14 -9
- package/lib/typescript/modules/chip/Chip.d.ts +38 -0
- package/lib/typescript/modules/chip/Chip.variants.d.ts +198 -0
- package/lib/typescript/modules/chip/ChipGroup.d.ts +22 -0
- package/lib/typescript/modules/chip/index.d.ts +12 -0
- package/lib/typescript/modules/combobox/Combobox.d.ts +81 -0
- package/lib/typescript/modules/combobox/Combobox.variants.d.ts +212 -0
- package/lib/typescript/modules/combobox/comboboxKeys.d.ts +25 -0
- package/lib/typescript/modules/combobox/comboboxKeys.web.d.ts +23 -0
- package/lib/typescript/modules/combobox/index.d.ts +11 -0
- package/lib/typescript/modules/composer/Composer.d.ts +28 -0
- package/lib/typescript/modules/composer/Composer.variants.d.ts +7 -0
- package/lib/typescript/modules/composer/index.d.ts +3 -0
- package/lib/typescript/modules/copy-button/CopyButton.d.ts +21 -0
- package/lib/typescript/modules/copy-button/CopyButton.variants.d.ts +42 -0
- package/lib/typescript/modules/copy-button/index.d.ts +4 -0
- package/lib/typescript/modules/data-table/DataTable.d.ts +44 -0
- package/lib/typescript/modules/data-table/DataTable.variants.d.ts +118 -0
- package/lib/typescript/modules/data-table/index.d.ts +9 -0
- package/lib/typescript/modules/date-picker/Calendar.d.ts +42 -0
- package/lib/typescript/modules/date-picker/Calendar.keys.d.ts +19 -0
- package/lib/typescript/modules/date-picker/Calendar.keys.web.d.ts +35 -0
- package/lib/typescript/modules/date-picker/DatePicker.d.ts +40 -0
- package/lib/typescript/modules/date-picker/DatePicker.variants.d.ts +322 -0
- package/lib/typescript/modules/date-picker/DateRangePicker.d.ts +32 -0
- package/lib/typescript/modules/date-picker/PickerField.d.ts +26 -0
- package/lib/typescript/modules/date-picker/PickerShell.d.ts +29 -0
- package/lib/typescript/modules/date-picker/TimePicker.d.ts +20 -0
- package/lib/typescript/modules/date-picker/index.d.ts +16 -0
- package/lib/typescript/modules/divider/Divider.variants.d.ts +2 -2
- package/lib/typescript/modules/drawer/Drawer.d.ts +2 -1
- package/lib/typescript/modules/drawer/Drawer.variants.d.ts +4 -13
- package/lib/typescript/modules/empty-state/EmptyState.d.ts +7 -4
- package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts +7 -1
- package/lib/typescript/modules/fab/Fab.d.ts +74 -0
- package/lib/typescript/modules/fab/Fab.variants.d.ts +229 -0
- package/lib/typescript/modules/fab/FabGroup.d.ts +66 -0
- package/lib/typescript/modules/fab/index.d.ts +12 -0
- package/lib/typescript/modules/file-grid/FileGrid.d.ts +26 -0
- package/lib/typescript/modules/file-grid/FileGrid.variants.d.ts +26 -0
- package/lib/typescript/modules/file-grid/index.d.ts +4 -0
- package/lib/typescript/modules/file-upload/FileUpload.d.ts +3 -0
- package/lib/typescript/modules/file-upload/FileUpload.variants.d.ts +22 -5
- package/lib/typescript/modules/filter-sheet/FilterSheet.variants.d.ts +30 -5
- package/lib/typescript/modules/filter-sheet/FilterSheetBody.d.ts +13 -8
- package/lib/typescript/modules/folder-row/FolderRow.d.ts +24 -0
- package/lib/typescript/modules/folder-row/FolderRow.variants.d.ts +29 -0
- package/lib/typescript/modules/folder-row/index.d.ts +3 -0
- package/lib/typescript/modules/form-field/FormField.d.ts +29 -0
- package/lib/typescript/modules/form-field/FormField.variants.d.ts +93 -0
- package/lib/typescript/modules/form-field/index.d.ts +4 -0
- package/lib/typescript/modules/gantt/Gantt.d.ts +19 -0
- package/lib/typescript/modules/gantt/Gantt.variants.d.ts +82 -0
- package/lib/typescript/modules/gantt/index.d.ts +5 -0
- package/lib/typescript/modules/image-viewer/ImageViewer.d.ts +27 -0
- package/lib/typescript/modules/image-viewer/ImageViewer.variants.d.ts +3 -0
- package/lib/typescript/modules/image-viewer/index.d.ts +3 -0
- package/lib/typescript/modules/input/Input.d.ts +9 -1
- package/lib/typescript/modules/input/Input.variants.d.ts +26 -6
- package/lib/typescript/modules/limit-reached-modal/LimitReachedModal.d.ts +34 -0
- package/lib/typescript/modules/limit-reached-modal/LimitReachedModal.variants.d.ts +46 -0
- package/lib/typescript/modules/limit-reached-modal/index.d.ts +10 -0
- package/lib/typescript/modules/list-item/ListItem.d.ts +21 -0
- package/lib/typescript/modules/list-item/ListItem.variants.d.ts +29 -0
- package/lib/typescript/modules/list-item/index.d.ts +8 -0
- package/lib/typescript/modules/markdown/Markdown.d.ts +16 -0
- package/lib/typescript/modules/markdown/Markdown.variants.d.ts +33 -0
- package/lib/typescript/modules/markdown/index.d.ts +10 -0
- package/lib/typescript/modules/markdown/parseMarkdown.d.ts +44 -0
- package/lib/typescript/modules/menu/Menu.d.ts +8 -18
- package/lib/typescript/modules/menu/Menu.variants.d.ts +8 -1
- package/lib/typescript/modules/message-bubble/MessageBubble.d.ts +25 -0
- package/lib/typescript/modules/message-bubble/MessageBubble.variants.d.ts +31 -0
- package/lib/typescript/modules/message-bubble/index.d.ts +4 -0
- package/lib/typescript/modules/modal/Modal.d.ts +12 -0
- package/lib/typescript/modules/modal/Modal.variants.d.ts +1 -1
- package/lib/typescript/modules/more-items/MoreItems.d.ts +15 -0
- package/lib/typescript/modules/more-items/MoreItems.variants.d.ts +30 -0
- package/lib/typescript/modules/more-items/index.d.ts +4 -0
- package/lib/typescript/modules/multi-select/MultiSelect.d.ts +3 -12
- package/lib/typescript/modules/multi-select/MultiSelect.variants.d.ts +24 -5
- package/lib/typescript/modules/number-input/NumberInput.d.ts +6 -0
- package/lib/typescript/modules/number-input/NumberInput.variants.d.ts +57 -7
- package/lib/typescript/modules/org-switcher/OrgSwitcher.d.ts +44 -0
- package/lib/typescript/modules/org-switcher/OrgSwitcher.variants.d.ts +139 -0
- package/lib/typescript/modules/org-switcher/index.d.ts +8 -0
- package/lib/typescript/modules/pagination/Pagination.d.ts +45 -0
- package/lib/typescript/modules/pagination/Pagination.variants.d.ts +240 -0
- package/lib/typescript/modules/pagination/PaginationControls.d.ts +50 -0
- package/lib/typescript/modules/pagination/index.d.ts +14 -0
- package/lib/typescript/modules/pin-input/PinInput.d.ts +6 -0
- package/lib/typescript/modules/pin-input/PinInput.variants.d.ts +22 -5
- package/lib/typescript/modules/progress-bar/ProgressBar.d.ts +8 -4
- package/lib/typescript/modules/progress-bar/ProgressBar.variants.d.ts +13 -15
- package/lib/typescript/modules/radio-group/RadioGroup.d.ts +6 -0
- package/lib/typescript/modules/radio-group/RadioGroup.variants.d.ts +32 -11
- package/lib/typescript/modules/reorder/Reorder.d.ts +28 -23
- package/lib/typescript/modules/reorder/Reorder.variants.d.ts +25 -9
- package/lib/typescript/modules/rich-text/RichText.d.ts +15 -0
- package/lib/typescript/modules/rich-text/RichText.variants.d.ts +15 -0
- package/lib/typescript/modules/rich-text/index.d.ts +5 -0
- package/lib/typescript/modules/rich-text/parseRichText.d.ts +30 -0
- package/lib/typescript/modules/rich-text-editor/RichTextEditor.d.ts +62 -0
- package/lib/typescript/modules/rich-text-editor/RichTextEditor.variants.d.ts +139 -0
- package/lib/typescript/modules/rich-text-editor/index.d.ts +9 -0
- package/lib/typescript/modules/screen/Screen.d.ts +36 -0
- package/lib/typescript/modules/screen/Screen.variants.d.ts +21 -0
- package/lib/typescript/modules/screen/index.d.ts +9 -0
- package/lib/typescript/modules/search-bar/SearchBar.d.ts +47 -0
- package/lib/typescript/modules/search-bar/SearchBar.variants.d.ts +179 -0
- package/lib/typescript/modules/search-bar/index.d.ts +11 -0
- package/lib/typescript/modules/section/Section.d.ts +17 -0
- package/lib/typescript/modules/section/Section.variants.d.ts +12 -0
- package/lib/typescript/modules/section/index.d.ts +8 -0
- package/lib/typescript/modules/section-list/SectionList.d.ts +26 -0
- package/lib/typescript/modules/section-list/SectionList.variants.d.ts +3 -0
- package/lib/typescript/modules/section-list/index.d.ts +3 -0
- package/lib/typescript/modules/segmented-control/SegmentedControl.d.ts +45 -0
- package/lib/typescript/modules/segmented-control/SegmentedControl.variants.d.ts +143 -0
- package/lib/typescript/modules/segmented-control/index.d.ts +11 -0
- package/lib/typescript/modules/select/Select.d.ts +3 -10
- package/lib/typescript/modules/select/Select.variants.d.ts +27 -5
- package/lib/typescript/modules/skeleton/Skeleton.d.ts +5 -0
- package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts +10 -9
- package/lib/typescript/modules/slider/Slider.variants.d.ts +35 -14
- package/lib/typescript/modules/spinner/Spinner.variants.d.ts +6 -4
- package/lib/typescript/modules/stage-progress/StageProgress.d.ts +18 -0
- package/lib/typescript/modules/stage-progress/StageProgress.variants.d.ts +98 -0
- package/lib/typescript/modules/stage-progress/index.d.ts +4 -0
- package/lib/typescript/modules/stat-tile/StatTile.d.ts +20 -0
- package/lib/typescript/modules/stat-tile/StatTile.variants.d.ts +36 -0
- package/lib/typescript/modules/stat-tile/index.d.ts +9 -0
- package/lib/typescript/modules/state-block/StateBlock.d.ts +51 -0
- package/lib/typescript/modules/state-block/StateBlock.variants.d.ts +30 -0
- package/lib/typescript/modules/state-block/index.d.ts +10 -0
- package/lib/typescript/modules/stepper/Stepper.d.ts +4 -0
- package/lib/typescript/modules/stepper/Stepper.variants.d.ts +7 -7
- package/lib/typescript/modules/swipeable-row/SwipeableRow.d.ts +35 -0
- package/lib/typescript/modules/swipeable-row/SwipeableRow.variants.d.ts +27 -0
- package/lib/typescript/modules/swipeable-row/index.d.ts +4 -0
- package/lib/typescript/modules/switch/Switch.variants.d.ts +9 -1
- package/lib/typescript/modules/tabs/Tabs.d.ts +8 -6
- package/lib/typescript/modules/tabs/Tabs.variants.d.ts +20 -7
- package/lib/typescript/modules/text/Text.d.ts +23 -0
- package/lib/typescript/modules/text/Text.variants.d.ts +18 -0
- package/lib/typescript/modules/text/index.d.ts +4 -0
- package/lib/typescript/modules/textarea/Textarea.d.ts +5 -0
- package/lib/typescript/modules/textarea/Textarea.variants.d.ts +15 -8
- package/lib/typescript/modules/timeline/Timeline.d.ts +11 -11
- package/lib/typescript/modules/timeline/Timeline.variants.d.ts +17 -1
- package/lib/typescript/modules/toast/Toast.d.ts +13 -3
- package/lib/typescript/modules/toast/Toast.variants.d.ts +31 -3
- package/lib/typescript/modules/toast/index.d.ts +1 -1
- package/lib/typescript/modules/toast/toastScreenReader.d.ts +22 -0
- package/lib/typescript/modules/tooltip/Tooltip.d.ts +34 -11
- package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts +4 -5
- package/lib/typescript/modules/typing-indicator/TypingIndicator.d.ts +28 -0
- package/lib/typescript/modules/typing-indicator/TypingIndicator.variants.d.ts +32 -0
- package/lib/typescript/modules/typing-indicator/index.d.ts +4 -0
- package/lib/typescript/modules/unread-badge/UnreadBadge.d.ts +15 -0
- package/lib/typescript/modules/unread-badge/UnreadBadge.variants.d.ts +56 -0
- package/lib/typescript/modules/unread-badge/index.d.ts +4 -0
- package/lib/typescript/test/mocks/flashList.d.ts +3 -0
- package/lib/typescript/test/perfHelpers.d.ts +9 -0
- package/lib/typescript/theme/hooks.d.ts +11 -0
- package/lib/typescript/theme/index.d.ts +3 -2
- package/lib/typescript/theme/platform/motion.native.d.ts +15 -0
- package/lib/typescript/theme/provider/PixelizeProvider.d.ts +3 -80
- package/lib/typescript/theme/provider/ThemeContext.d.ts +4 -0
- package/lib/typescript/theme/provider/index.d.ts +2 -1
- package/lib/typescript/theme/provider/loadPalette.d.ts +9 -0
- package/lib/typescript/theme/provider/types.d.ts +41 -0
- package/lib/typescript/theme/provider/useTheme.d.ts +1 -2
- package/lib/typescript/theme/provider/useThemeMode.d.ts +1 -1
- package/lib/typescript/theme/tokens/builders/accentText.d.ts +6 -0
- package/lib/typescript/theme/tokens/roles/index.d.ts +7 -0
- package/package.json +209 -14
- package/registry.json +191 -1
- package/lib/module/core/a11y/index.js.map +0 -1
- package/lib/module/core/icon/index.js.map +0 -1
- package/lib/module/core/style/index.js.map +0 -1
- package/lib/module/core/style/layoutStyle.js.map +0 -1
- package/lib/module/core/style/variants.js.map +0 -1
- package/lib/module/index.js.map +0 -1
- package/lib/module/modules/accordion/Accordion.js.map +0 -1
- package/lib/module/modules/accordion/Accordion.variants.js.map +0 -1
- package/lib/module/modules/accordion/index.js.map +0 -1
- package/lib/module/modules/alert-dialog/AlertDialog.js.map +0 -1
- package/lib/module/modules/alert-dialog/AlertDialog.variants.js.map +0 -1
- package/lib/module/modules/alert-dialog/index.js.map +0 -1
- package/lib/module/modules/avatar/Avatar.js.map +0 -1
- package/lib/module/modules/avatar/Avatar.variants.js.map +0 -1
- package/lib/module/modules/avatar/index.js.map +0 -1
- package/lib/module/modules/badge/Badge.js.map +0 -1
- package/lib/module/modules/badge/Badge.variants.js.map +0 -1
- package/lib/module/modules/badge/index.js.map +0 -1
- package/lib/module/modules/bottom-nav/BottomNav.js.map +0 -1
- package/lib/module/modules/bottom-nav/BottomNav.search.js.map +0 -1
- package/lib/module/modules/bottom-nav/BottomNav.variants.js.map +0 -1
- package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js.map +0 -1
- package/lib/module/modules/bottom-nav/index.js.map +0 -1
- package/lib/module/modules/button/Button.js.map +0 -1
- package/lib/module/modules/button/Button.variants.js.map +0 -1
- package/lib/module/modules/button/index.js.map +0 -1
- package/lib/module/modules/button-group/ButtonGroup.js.map +0 -1
- package/lib/module/modules/button-group/ButtonGroup.variants.js.map +0 -1
- package/lib/module/modules/button-group/index.js.map +0 -1
- package/lib/module/modules/card/Card.js.map +0 -1
- package/lib/module/modules/card/Card.variants.js.map +0 -1
- package/lib/module/modules/card/index.js.map +0 -1
- package/lib/module/modules/checkbox/Checkbox.js.map +0 -1
- package/lib/module/modules/checkbox/Checkbox.variants.js.map +0 -1
- package/lib/module/modules/checkbox/index.js.map +0 -1
- package/lib/module/modules/divider/Divider.js.map +0 -1
- package/lib/module/modules/divider/Divider.variants.js.map +0 -1
- package/lib/module/modules/divider/index.js.map +0 -1
- package/lib/module/modules/drawer/Drawer.js.map +0 -1
- package/lib/module/modules/drawer/Drawer.variants.js.map +0 -1
- package/lib/module/modules/drawer/index.js.map +0 -1
- package/lib/module/modules/empty-state/EmptyState.js.map +0 -1
- package/lib/module/modules/empty-state/EmptyState.variants.js.map +0 -1
- package/lib/module/modules/empty-state/index.js.map +0 -1
- package/lib/module/modules/file-upload/FileUpload.js.map +0 -1
- package/lib/module/modules/file-upload/FileUpload.variants.js.map +0 -1
- package/lib/module/modules/file-upload/index.js.map +0 -1
- package/lib/module/modules/filter-sheet/FilterChip.js.map +0 -1
- package/lib/module/modules/filter-sheet/FilterSheet.js.map +0 -1
- package/lib/module/modules/filter-sheet/FilterSheet.variants.js.map +0 -1
- package/lib/module/modules/filter-sheet/FilterSheetBody.js.map +0 -1
- package/lib/module/modules/filter-sheet/filterSheet.helpers.js.map +0 -1
- package/lib/module/modules/filter-sheet/index.js.map +0 -1
- package/lib/module/modules/input/Input.js.map +0 -1
- package/lib/module/modules/input/Input.variants.js.map +0 -1
- package/lib/module/modules/input/index.js.map +0 -1
- package/lib/module/modules/menu/Menu.js.map +0 -1
- package/lib/module/modules/menu/Menu.variants.js.map +0 -1
- package/lib/module/modules/menu/index.js.map +0 -1
- package/lib/module/modules/modal/Modal.js.map +0 -1
- package/lib/module/modules/modal/Modal.variants.js.map +0 -1
- package/lib/module/modules/modal/ModalPortalContext.js.map +0 -1
- package/lib/module/modules/modal/ModalPortalProvider.js.map +0 -1
- package/lib/module/modules/modal/index.js.map +0 -1
- package/lib/module/modules/modal/renderWebPortal.js.map +0 -1
- package/lib/module/modules/modal/renderWebPortal.web.js.map +0 -1
- package/lib/module/modules/multi-select/MultiSelect.js.map +0 -1
- package/lib/module/modules/multi-select/MultiSelect.variants.js.map +0 -1
- package/lib/module/modules/multi-select/index.js.map +0 -1
- package/lib/module/modules/number-input/NumberInput.js.map +0 -1
- package/lib/module/modules/number-input/NumberInput.variants.js.map +0 -1
- package/lib/module/modules/number-input/index.js.map +0 -1
- package/lib/module/modules/pin-input/PinInput.js.map +0 -1
- package/lib/module/modules/pin-input/PinInput.variants.js.map +0 -1
- package/lib/module/modules/pin-input/index.js.map +0 -1
- package/lib/module/modules/progress-bar/ProgressBar.js.map +0 -1
- package/lib/module/modules/progress-bar/ProgressBar.variants.js.map +0 -1
- package/lib/module/modules/progress-bar/index.js.map +0 -1
- package/lib/module/modules/radio-group/RadioGroup.js.map +0 -1
- package/lib/module/modules/radio-group/RadioGroup.variants.js.map +0 -1
- package/lib/module/modules/radio-group/index.js.map +0 -1
- package/lib/module/modules/reorder/Reorder.js.map +0 -1
- package/lib/module/modules/reorder/Reorder.variants.js.map +0 -1
- package/lib/module/modules/reorder/index.js.map +0 -1
- package/lib/module/modules/select/Select.js.map +0 -1
- package/lib/module/modules/select/Select.variants.js.map +0 -1
- package/lib/module/modules/select/index.js.map +0 -1
- package/lib/module/modules/skeleton/Skeleton.js.map +0 -1
- package/lib/module/modules/skeleton/Skeleton.variants.js.map +0 -1
- package/lib/module/modules/skeleton/index.js.map +0 -1
- package/lib/module/modules/slider/Slider.js.map +0 -1
- package/lib/module/modules/slider/Slider.variants.js.map +0 -1
- package/lib/module/modules/slider/index.js.map +0 -1
- package/lib/module/modules/spinner/Spinner.js.map +0 -1
- package/lib/module/modules/spinner/Spinner.variants.js.map +0 -1
- package/lib/module/modules/spinner/index.js.map +0 -1
- package/lib/module/modules/stepper/Stepper.js.map +0 -1
- package/lib/module/modules/stepper/Stepper.variants.js.map +0 -1
- package/lib/module/modules/stepper/index.js.map +0 -1
- package/lib/module/modules/switch/Switch.js.map +0 -1
- package/lib/module/modules/switch/Switch.variants.js.map +0 -1
- package/lib/module/modules/switch/index.js.map +0 -1
- package/lib/module/modules/tabs/Tabs.js.map +0 -1
- package/lib/module/modules/tabs/Tabs.variants.js.map +0 -1
- package/lib/module/modules/tabs/index.js.map +0 -1
- package/lib/module/modules/textarea/Textarea.js.map +0 -1
- package/lib/module/modules/textarea/Textarea.variants.js.map +0 -1
- package/lib/module/modules/textarea/index.js.map +0 -1
- package/lib/module/modules/timeline/Timeline.js.map +0 -1
- package/lib/module/modules/timeline/Timeline.variants.js.map +0 -1
- package/lib/module/modules/timeline/index.js.map +0 -1
- package/lib/module/modules/toast/Toast.js.map +0 -1
- package/lib/module/modules/toast/Toast.variants.js.map +0 -1
- package/lib/module/modules/toast/index.js.map +0 -1
- package/lib/module/modules/tooltip/Tooltip.js.map +0 -1
- package/lib/module/modules/tooltip/Tooltip.variants.js.map +0 -1
- package/lib/module/modules/tooltip/index.js.map +0 -1
- package/lib/module/theme/index.js.map +0 -1
- package/lib/module/theme/platform/colorScheme.native.js.map +0 -1
- package/lib/module/theme/platform/elevation.native.js.map +0 -1
- package/lib/module/theme/platform/fonts.native.js.map +0 -1
- package/lib/module/theme/platform/index.js.map +0 -1
- package/lib/module/theme/platform/units.native.js.map +0 -1
- package/lib/module/theme/provider/PixelizeProvider.js.map +0 -1
- package/lib/module/theme/provider/colorModeStorage.js.map +0 -1
- package/lib/module/theme/provider/index.js.map +0 -1
- package/lib/module/theme/provider/useTheme.js.map +0 -1
- package/lib/module/theme/provider/useThemeColors.js.map +0 -1
- package/lib/module/theme/provider/useThemeMode.js.map +0 -1
- package/lib/module/theme/tokens/brands/emerald/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/emerald/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/index.js.map +0 -1
- package/lib/module/theme/tokens/brands/lavender/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/lavender/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/meadow/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/meadow/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/radiant/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/radiant/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/rosewood/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/rosewood/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/skyline/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/skyline/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/slate/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/slate/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/storefront/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/storefront/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/brands/zinc/palette.dark.js.map +0 -1
- package/lib/module/theme/tokens/brands/zinc/palette.light.js.map +0 -1
- package/lib/module/theme/tokens/builders/accentText.js.map +0 -1
- package/lib/module/theme/tokens/builders/buildBrandTokens.js.map +0 -1
- package/lib/module/theme/tokens/builders/buildDarkPalette.js.map +0 -1
- package/lib/module/theme/tokens/builders/color.js.map +0 -1
- package/lib/module/theme/tokens/index.js.map +0 -1
- package/lib/module/theme/tokens/primitives/borderWidths.js.map +0 -1
- package/lib/module/theme/tokens/primitives/breakpoints.js.map +0 -1
- package/lib/module/theme/tokens/primitives/elevation.js.map +0 -1
- package/lib/module/theme/tokens/primitives/fontSizes.js.map +0 -1
- package/lib/module/theme/tokens/primitives/fontWeights.js.map +0 -1
- package/lib/module/theme/tokens/primitives/index.js.map +0 -1
- package/lib/module/theme/tokens/primitives/letterSpacings.js.map +0 -1
- package/lib/module/theme/tokens/primitives/lineHeights.js.map +0 -1
- package/lib/module/theme/tokens/primitives/radii.js.map +0 -1
- package/lib/module/theme/tokens/primitives/sizes.js.map +0 -1
- package/lib/module/theme/tokens/primitives/space.js.map +0 -1
- package/lib/module/theme/tokens/primitives/zIndices.js.map +0 -1
- package/lib/module/theme/tokens/roles/index.js.map +0 -1
- package/lib/module/theme/tokens/types.js.map +0 -1
- package/lib/typescript/core/a11y/index.d.ts.map +0 -1
- package/lib/typescript/core/icon/index.d.ts.map +0 -1
- package/lib/typescript/core/style/index.d.ts.map +0 -1
- package/lib/typescript/core/style/layoutStyle.d.ts.map +0 -1
- package/lib/typescript/core/style/variants.d.ts.map +0 -1
- package/lib/typescript/index.d.ts.map +0 -1
- package/lib/typescript/modules/accordion/Accordion.d.ts.map +0 -1
- package/lib/typescript/modules/accordion/Accordion.variants.d.ts.map +0 -1
- package/lib/typescript/modules/accordion/index.d.ts.map +0 -1
- package/lib/typescript/modules/alert-dialog/AlertDialog.d.ts.map +0 -1
- package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts.map +0 -1
- package/lib/typescript/modules/alert-dialog/index.d.ts.map +0 -1
- package/lib/typescript/modules/avatar/Avatar.d.ts.map +0 -1
- package/lib/typescript/modules/avatar/Avatar.variants.d.ts.map +0 -1
- package/lib/typescript/modules/avatar/index.d.ts.map +0 -1
- package/lib/typescript/modules/badge/Badge.d.ts.map +0 -1
- package/lib/typescript/modules/badge/Badge.variants.d.ts.map +0 -1
- package/lib/typescript/modules/badge/index.d.ts.map +0 -1
- package/lib/typescript/modules/bottom-nav/BottomNav.d.ts.map +0 -1
- package/lib/typescript/modules/bottom-nav/BottomNav.search.d.ts.map +0 -1
- package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts.map +0 -1
- package/lib/typescript/modules/bottom-nav/BottomNavOverflowSheet.d.ts.map +0 -1
- package/lib/typescript/modules/bottom-nav/index.d.ts.map +0 -1
- package/lib/typescript/modules/button/Button.d.ts.map +0 -1
- package/lib/typescript/modules/button/Button.variants.d.ts.map +0 -1
- package/lib/typescript/modules/button/index.d.ts.map +0 -1
- package/lib/typescript/modules/button-group/ButtonGroup.d.ts.map +0 -1
- package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts.map +0 -1
- package/lib/typescript/modules/button-group/index.d.ts.map +0 -1
- package/lib/typescript/modules/card/Card.d.ts.map +0 -1
- package/lib/typescript/modules/card/Card.variants.d.ts.map +0 -1
- package/lib/typescript/modules/card/index.d.ts.map +0 -1
- package/lib/typescript/modules/checkbox/Checkbox.d.ts.map +0 -1
- package/lib/typescript/modules/checkbox/Checkbox.variants.d.ts.map +0 -1
- package/lib/typescript/modules/checkbox/index.d.ts.map +0 -1
- package/lib/typescript/modules/divider/Divider.d.ts.map +0 -1
- package/lib/typescript/modules/divider/Divider.variants.d.ts.map +0 -1
- package/lib/typescript/modules/divider/index.d.ts.map +0 -1
- package/lib/typescript/modules/drawer/Drawer.d.ts.map +0 -1
- package/lib/typescript/modules/drawer/Drawer.variants.d.ts.map +0 -1
- package/lib/typescript/modules/drawer/index.d.ts.map +0 -1
- package/lib/typescript/modules/empty-state/EmptyState.d.ts.map +0 -1
- package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts.map +0 -1
- package/lib/typescript/modules/empty-state/index.d.ts.map +0 -1
- package/lib/typescript/modules/file-upload/FileUpload.d.ts.map +0 -1
- package/lib/typescript/modules/file-upload/FileUpload.variants.d.ts.map +0 -1
- package/lib/typescript/modules/file-upload/index.d.ts.map +0 -1
- package/lib/typescript/modules/filter-sheet/FilterChip.d.ts.map +0 -1
- package/lib/typescript/modules/filter-sheet/FilterSheet.d.ts.map +0 -1
- package/lib/typescript/modules/filter-sheet/FilterSheet.variants.d.ts.map +0 -1
- package/lib/typescript/modules/filter-sheet/FilterSheetBody.d.ts.map +0 -1
- package/lib/typescript/modules/filter-sheet/filterSheet.helpers.d.ts.map +0 -1
- package/lib/typescript/modules/filter-sheet/index.d.ts.map +0 -1
- package/lib/typescript/modules/input/Input.d.ts.map +0 -1
- package/lib/typescript/modules/input/Input.variants.d.ts.map +0 -1
- package/lib/typescript/modules/input/index.d.ts.map +0 -1
- package/lib/typescript/modules/menu/Menu.d.ts.map +0 -1
- package/lib/typescript/modules/menu/Menu.variants.d.ts.map +0 -1
- package/lib/typescript/modules/menu/index.d.ts.map +0 -1
- package/lib/typescript/modules/modal/Modal.d.ts.map +0 -1
- package/lib/typescript/modules/modal/Modal.variants.d.ts.map +0 -1
- package/lib/typescript/modules/modal/ModalPortalContext.d.ts.map +0 -1
- package/lib/typescript/modules/modal/ModalPortalProvider.d.ts.map +0 -1
- package/lib/typescript/modules/modal/index.d.ts.map +0 -1
- package/lib/typescript/modules/modal/renderWebPortal.d.ts.map +0 -1
- package/lib/typescript/modules/modal/renderWebPortal.web.d.ts.map +0 -1
- package/lib/typescript/modules/multi-select/MultiSelect.d.ts.map +0 -1
- package/lib/typescript/modules/multi-select/MultiSelect.variants.d.ts.map +0 -1
- package/lib/typescript/modules/multi-select/index.d.ts.map +0 -1
- package/lib/typescript/modules/number-input/NumberInput.d.ts.map +0 -1
- package/lib/typescript/modules/number-input/NumberInput.variants.d.ts.map +0 -1
- package/lib/typescript/modules/number-input/index.d.ts.map +0 -1
- package/lib/typescript/modules/pin-input/PinInput.d.ts.map +0 -1
- package/lib/typescript/modules/pin-input/PinInput.variants.d.ts.map +0 -1
- package/lib/typescript/modules/pin-input/index.d.ts.map +0 -1
- package/lib/typescript/modules/progress-bar/ProgressBar.d.ts.map +0 -1
- package/lib/typescript/modules/progress-bar/ProgressBar.variants.d.ts.map +0 -1
- package/lib/typescript/modules/progress-bar/index.d.ts.map +0 -1
- package/lib/typescript/modules/radio-group/RadioGroup.d.ts.map +0 -1
- package/lib/typescript/modules/radio-group/RadioGroup.variants.d.ts.map +0 -1
- package/lib/typescript/modules/radio-group/index.d.ts.map +0 -1
- package/lib/typescript/modules/reorder/Reorder.d.ts.map +0 -1
- package/lib/typescript/modules/reorder/Reorder.variants.d.ts.map +0 -1
- package/lib/typescript/modules/reorder/index.d.ts.map +0 -1
- package/lib/typescript/modules/select/Select.d.ts.map +0 -1
- package/lib/typescript/modules/select/Select.variants.d.ts.map +0 -1
- package/lib/typescript/modules/select/index.d.ts.map +0 -1
- package/lib/typescript/modules/skeleton/Skeleton.d.ts.map +0 -1
- package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts.map +0 -1
- package/lib/typescript/modules/skeleton/index.d.ts.map +0 -1
- package/lib/typescript/modules/slider/Slider.d.ts.map +0 -1
- package/lib/typescript/modules/slider/Slider.variants.d.ts.map +0 -1
- package/lib/typescript/modules/slider/index.d.ts.map +0 -1
- package/lib/typescript/modules/spinner/Spinner.d.ts.map +0 -1
- package/lib/typescript/modules/spinner/Spinner.variants.d.ts.map +0 -1
- package/lib/typescript/modules/spinner/index.d.ts.map +0 -1
- package/lib/typescript/modules/stepper/Stepper.d.ts.map +0 -1
- package/lib/typescript/modules/stepper/Stepper.variants.d.ts.map +0 -1
- package/lib/typescript/modules/stepper/index.d.ts.map +0 -1
- package/lib/typescript/modules/switch/Switch.d.ts.map +0 -1
- package/lib/typescript/modules/switch/Switch.variants.d.ts.map +0 -1
- package/lib/typescript/modules/switch/index.d.ts.map +0 -1
- package/lib/typescript/modules/tabs/Tabs.d.ts.map +0 -1
- package/lib/typescript/modules/tabs/Tabs.variants.d.ts.map +0 -1
- package/lib/typescript/modules/tabs/index.d.ts.map +0 -1
- package/lib/typescript/modules/textarea/Textarea.d.ts.map +0 -1
- package/lib/typescript/modules/textarea/Textarea.variants.d.ts.map +0 -1
- package/lib/typescript/modules/textarea/index.d.ts.map +0 -1
- package/lib/typescript/modules/timeline/Timeline.d.ts.map +0 -1
- package/lib/typescript/modules/timeline/Timeline.variants.d.ts.map +0 -1
- package/lib/typescript/modules/timeline/index.d.ts.map +0 -1
- package/lib/typescript/modules/toast/Toast.d.ts.map +0 -1
- package/lib/typescript/modules/toast/Toast.variants.d.ts.map +0 -1
- package/lib/typescript/modules/toast/index.d.ts.map +0 -1
- package/lib/typescript/modules/tooltip/Tooltip.d.ts.map +0 -1
- package/lib/typescript/modules/tooltip/Tooltip.variants.d.ts.map +0 -1
- package/lib/typescript/modules/tooltip/index.d.ts.map +0 -1
- package/lib/typescript/theme/index.d.ts.map +0 -1
- package/lib/typescript/theme/platform/colorScheme.native.d.ts.map +0 -1
- package/lib/typescript/theme/platform/elevation.native.d.ts.map +0 -1
- package/lib/typescript/theme/platform/fonts.native.d.ts.map +0 -1
- package/lib/typescript/theme/platform/index.d.ts.map +0 -1
- package/lib/typescript/theme/platform/units.native.d.ts.map +0 -1
- package/lib/typescript/theme/provider/PixelizeProvider.d.ts.map +0 -1
- package/lib/typescript/theme/provider/colorModeStorage.d.ts.map +0 -1
- package/lib/typescript/theme/provider/index.d.ts.map +0 -1
- package/lib/typescript/theme/provider/useTheme.d.ts.map +0 -1
- package/lib/typescript/theme/provider/useThemeColors.d.ts.map +0 -1
- package/lib/typescript/theme/provider/useThemeMode.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/emerald/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/emerald/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/index.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/lavender/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/lavender/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/meadow/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/meadow/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/radiant/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/radiant/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/rosewood/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/rosewood/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/skyline/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/skyline/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/slate/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/slate/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/storefront/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/storefront/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/zinc/palette.dark.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/brands/zinc/palette.light.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/builders/accentText.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/builders/buildBrandTokens.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/builders/buildDarkPalette.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/builders/color.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/index.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/borderWidths.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/breakpoints.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/elevation.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/fontSizes.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/fontWeights.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/index.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/letterSpacings.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/lineHeights.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/radii.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/sizes.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/space.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/primitives/zIndices.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/roles/index.d.ts.map +0 -1
- package/lib/typescript/theme/tokens/types.d.ts.map +0 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Native/default counterpart of `keyboard.web.ts`. Physical-keyboard interaction is a web concern —
|
|
5
|
+
* on iOS/Android the OS and the screen reader own key handling — so every hook here is a no-op with
|
|
6
|
+
* an identical signature.
|
|
7
|
+
*
|
|
8
|
+
* The `.ts` / `.web.ts` pair (the `renderWebPortal` precedent) is what keeps the DOM code out of the
|
|
9
|
+
* native dependency graph entirely: Metro resolves `keyboard.web.ts` only for a web bundle, and Jest
|
|
10
|
+
* (whose `react-native` preset has no `web` platform) always resolves THIS file. A `Platform.OS`
|
|
11
|
+
* branch would instead ship the DOM code to native.
|
|
12
|
+
*
|
|
13
|
+
* Deliberately import-free at runtime — both imports below are type-only and erase at emit, so the
|
|
14
|
+
* native closure gains one file of empty function bodies and nothing else.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export function useDismissOnEscape(_active, _onDismiss) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
export function useFocusTrap(_ref, _active) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
export function useRovingKeys(_ref, _active, _options) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
export function useSpaceActivation(_ref, _onActivate, _active) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* The roving half of roving-tabindex: exactly one item in a collection is reachable by Tab, and the
|
|
32
|
+
* arrow keys move which one. Pure and identical on both platforms — `tabIndex` is a real RN
|
|
33
|
+
* `ViewProps` key (inert on native), so this needs no platform branch and is duplicated verbatim in
|
|
34
|
+
* `keyboard.web.ts` rather than shared through a third module (a `.web.ts` importing `./keyboard`
|
|
35
|
+
* would resolve to itself in a web bundle).
|
|
36
|
+
*/
|
|
37
|
+
export function focusItemProps(index, activeIndex) {
|
|
38
|
+
return {
|
|
39
|
+
tabIndex: index === activeIndex ? 0 : -1
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=keyboard.js.map
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Web implementation of the library's keyboard-interaction helpers. Metro only resolves this file
|
|
5
|
+
* for a web bundle (see `keyboard.ts`), so it is the one place that may assume a DOM.
|
|
6
|
+
*
|
|
7
|
+
* **Why the DOM types are hand-written.** `tsconfig.json` sets `"lib": ["ESNext"]` — there is no DOM
|
|
8
|
+
* lib in this repo, so `document`, `HTMLElement` and `KeyboardEvent` do not exist as types. The
|
|
9
|
+
* alternatives are worse: `any` is banned by lint, and augmenting `react-native`'s own types would
|
|
10
|
+
* ship through `lib/typescript/**` and make `onKeyDown` look valid on native for every consumer. A
|
|
11
|
+
* module-local structural surface plus `declare const document` erases completely at emit and
|
|
12
|
+
* resolves to the browser's real `document` at runtime, with no cast wider than the one
|
|
13
|
+
* `renderWebPortal.web.ts` already established at this same boundary.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
import { useEffect, useRef } from "react";
|
|
17
|
+
/** `typeof` rather than a null check: a bare `document` reference throws outside a browser. */
|
|
18
|
+
function getDocument() {
|
|
19
|
+
return typeof document === "undefined" ? undefined : document;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* `react-native-web` forwards a component's ref to the host element it renders, so a
|
|
24
|
+
* `RefObject<View>` really holds a DOM node here. The double cast is the same "assume a DOM in the
|
|
25
|
+
* `.web` file only" contract `renderWebPortal.web.ts` uses for its portal container.
|
|
26
|
+
*/
|
|
27
|
+
function domNode(ref) {
|
|
28
|
+
return ref.current ?? null;
|
|
29
|
+
}
|
|
30
|
+
const TABBABLE_SELECTOR = 'a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),' + 'textarea:not([disabled]),[tabindex]:not([tabindex="-1"])';
|
|
31
|
+
function tabbablesWithin(node) {
|
|
32
|
+
return node === null ? [] : Array.from(node.querySelectorAll(TABBABLE_SELECTOR));
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Escape closes the overlay. Listens on `document` in the CAPTURE phase for two reasons: the
|
|
36
|
+
* outermost open overlay sees the key first (so a dialog inside a dialog closes the inner one only
|
|
37
|
+
* once it is the outermost listener to `stopPropagation()`), and it survives a focused `TextInput`
|
|
38
|
+
* whose own handler calls `stopPropagation()` during bubbling.
|
|
39
|
+
*/
|
|
40
|
+
export function useDismissOnEscape(active, onDismiss) {
|
|
41
|
+
const onDismissRef = useRef(onDismiss);
|
|
42
|
+
onDismissRef.current = onDismiss;
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
const doc = getDocument();
|
|
45
|
+
if (!active || doc === undefined) return;
|
|
46
|
+
const handleKeyDown = event => {
|
|
47
|
+
// "Esc" is the legacy IE/Edge spelling; still emitted by some embedded webviews.
|
|
48
|
+
if (event.key !== "Escape" && event.key !== "Esc") return;
|
|
49
|
+
event.stopPropagation();
|
|
50
|
+
onDismissRef.current();
|
|
51
|
+
};
|
|
52
|
+
doc.addEventListener("keydown", handleKeyDown, true);
|
|
53
|
+
return () => doc.removeEventListener("keydown", handleKeyDown, true);
|
|
54
|
+
}, [active]);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Confines Tab to the subtree under `ref` while `active`, and restores focus to whatever had it when
|
|
59
|
+
* the trap opened. Restore is folded in deliberately — a trap without it drops the user at the top of
|
|
60
|
+
* the document every time an overlay closes, which is the same bug in a different place.
|
|
61
|
+
*
|
|
62
|
+
* The `contains` guard before restoring matches `react-native-web`'s own `ModalFocusTrap`: the
|
|
63
|
+
* trigger may have unmounted while the overlay was open, and focusing a detached node throws in some
|
|
64
|
+
* engines. Skipping the restore lets focus fall to `<body>` instead.
|
|
65
|
+
*/
|
|
66
|
+
export function useFocusTrap(ref, active) {
|
|
67
|
+
useEffect(() => {
|
|
68
|
+
const doc = getDocument();
|
|
69
|
+
if (!active || doc === undefined) return;
|
|
70
|
+
const restoreTo = doc.activeElement;
|
|
71
|
+
tabbablesWithin(domNode(ref))[0]?.focus();
|
|
72
|
+
const handleKeyDown = event => {
|
|
73
|
+
if (event.key !== "Tab") return;
|
|
74
|
+
const items = tabbablesWithin(domNode(ref));
|
|
75
|
+
const first = items[0];
|
|
76
|
+
const last = items[items.length - 1];
|
|
77
|
+
if (first === undefined || last === undefined) {
|
|
78
|
+
// Nothing tabbable inside: Tab must still not escape the overlay.
|
|
79
|
+
event.preventDefault();
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const current = doc.activeElement;
|
|
83
|
+
if (event.shiftKey && current === first) {
|
|
84
|
+
event.preventDefault();
|
|
85
|
+
last.focus();
|
|
86
|
+
} else if (!event.shiftKey && current === last) {
|
|
87
|
+
event.preventDefault();
|
|
88
|
+
first.focus();
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
doc.addEventListener("keydown", handleKeyDown, true);
|
|
92
|
+
return () => {
|
|
93
|
+
doc.removeEventListener("keydown", handleKeyDown, true);
|
|
94
|
+
if (restoreTo !== null && doc.contains(restoreTo)) restoreTo.focus();
|
|
95
|
+
};
|
|
96
|
+
}, [active, ref]);
|
|
97
|
+
}
|
|
98
|
+
const TYPEAHEAD_RESET_MS = 500;
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Arrow/Home/End/Enter/Space navigation for a composite widget (menu, tab list, listbox, toolbar),
|
|
102
|
+
* paired with `focusItemProps` for the tabindex half. Listens on the CONTAINER node, not `document`,
|
|
103
|
+
* so two collections on one page never fight over the same arrow key.
|
|
104
|
+
*/
|
|
105
|
+
export function useRovingKeys(ref, active, options) {
|
|
106
|
+
// Options are a fresh object each render; holding them in a ref keeps the listener subscribed once
|
|
107
|
+
// instead of detaching and re-attaching on every parent render.
|
|
108
|
+
const optionsRef = useRef(options);
|
|
109
|
+
optionsRef.current = options;
|
|
110
|
+
useEffect(() => {
|
|
111
|
+
if (!active) return;
|
|
112
|
+
const node = domNode(ref);
|
|
113
|
+
if (node === null) return;
|
|
114
|
+
let buffer = "";
|
|
115
|
+
let bufferedAt = 0;
|
|
116
|
+
const moveTo = next => {
|
|
117
|
+
const {
|
|
118
|
+
count,
|
|
119
|
+
onActiveIndexChange,
|
|
120
|
+
loop = true
|
|
121
|
+
} = optionsRef.current;
|
|
122
|
+
if (count <= 0) return;
|
|
123
|
+
onActiveIndexChange(loop ? (next % count + count) % count : Math.min(Math.max(next, 0), count - 1));
|
|
124
|
+
};
|
|
125
|
+
const handleKeyDown = event => {
|
|
126
|
+
// Alt+Left is browser Back and Ctrl+Arrow switches Spaces on macOS — a composite widget must
|
|
127
|
+
// not swallow a shortcut the user aimed at the browser or the OS.
|
|
128
|
+
if (event.ctrlKey || event.metaKey || event.altKey) return;
|
|
129
|
+
const opts = optionsRef.current;
|
|
130
|
+
const orientation = opts.orientation ?? "vertical";
|
|
131
|
+
const vertical = orientation !== "horizontal";
|
|
132
|
+
const horizontal = orientation !== "vertical";
|
|
133
|
+
const {
|
|
134
|
+
key
|
|
135
|
+
} = event;
|
|
136
|
+
if (vertical && key === "ArrowDown" || horizontal && key === "ArrowRight") {
|
|
137
|
+
event.preventDefault();
|
|
138
|
+
moveTo(opts.activeIndex + 1);
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
if (vertical && key === "ArrowUp" || horizontal && key === "ArrowLeft") {
|
|
142
|
+
event.preventDefault();
|
|
143
|
+
moveTo(opts.activeIndex - 1);
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
if (key === "Home") {
|
|
147
|
+
event.preventDefault();
|
|
148
|
+
moveTo(0);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
if (key === "End") {
|
|
152
|
+
event.preventDefault();
|
|
153
|
+
moveTo(opts.count - 1);
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
if (key === "Enter" || key === " " || key === "Spacebar") {
|
|
157
|
+
event.preventDefault();
|
|
158
|
+
opts.onActivate?.(opts.activeIndex);
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
const labels = opts.typeaheadLabels;
|
|
162
|
+
if (labels === undefined) return;
|
|
163
|
+
if (key.length !== 1) return;
|
|
164
|
+
const now = Date.now();
|
|
165
|
+
buffer = now - bufferedAt > TYPEAHEAD_RESET_MS ? key : buffer + key;
|
|
166
|
+
bufferedAt = now;
|
|
167
|
+
// Repeating one letter cycles through the items starting with it, rather than searching "aa".
|
|
168
|
+
const repeatedLetter = buffer.split("").every(char => char === buffer[0]);
|
|
169
|
+
const needle = (repeatedLetter ? buffer.slice(0, 1) : buffer).toLowerCase();
|
|
170
|
+
for (let step = 1; step <= labels.length; step += 1) {
|
|
171
|
+
const index = (opts.activeIndex + step) % labels.length;
|
|
172
|
+
if (labels[index]?.toLowerCase().startsWith(needle) === true) {
|
|
173
|
+
event.preventDefault();
|
|
174
|
+
opts.onActiveIndexChange(index);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
node.addEventListener("keydown", handleKeyDown, true);
|
|
180
|
+
return () => node.removeEventListener("keydown", handleKeyDown, true);
|
|
181
|
+
}, [active, ref]);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Makes Space activate a control whose role is not `button`.
|
|
186
|
+
*
|
|
187
|
+
* `react-native-web`'s `PressResponder.isValidKeyPress` is `Enter || (Space && isButtonish)`, and
|
|
188
|
+
* `isButtonish` needs a `button` tag or `role="button"`. `role="checkbox"`, `"radio"`, `"tab"` and
|
|
189
|
+
* `"menuitem"` all render as a `div`, so today Space neither activates them nor gets
|
|
190
|
+
* `preventDefault()`ed — it scrolls the page instead. Changing those roles to `button` would fix the
|
|
191
|
+
* key and break the screen reader, so the fix belongs here.
|
|
192
|
+
*
|
|
193
|
+
* Enter is left alone: RNW already presses on Enter for every role.
|
|
194
|
+
*/
|
|
195
|
+
export function useSpaceActivation(ref, onActivate, active = true) {
|
|
196
|
+
const onActivateRef = useRef(onActivate);
|
|
197
|
+
onActivateRef.current = onActivate;
|
|
198
|
+
useEffect(() => {
|
|
199
|
+
if (!active) return;
|
|
200
|
+
const node = domNode(ref);
|
|
201
|
+
if (node === null) return;
|
|
202
|
+
let held = false;
|
|
203
|
+
const handleKeyDown = event => {
|
|
204
|
+
if (event.key !== " " && event.key !== "Spacebar") return;
|
|
205
|
+
event.preventDefault();
|
|
206
|
+
// Auto-repeat would otherwise toggle a checkbox dozens of times while the key is held.
|
|
207
|
+
if (held) return;
|
|
208
|
+
held = true;
|
|
209
|
+
onActivateRef.current();
|
|
210
|
+
};
|
|
211
|
+
const handleKeyUp = event => {
|
|
212
|
+
if (event.key === " " || event.key === "Spacebar") held = false;
|
|
213
|
+
};
|
|
214
|
+
node.addEventListener("keydown", handleKeyDown, true);
|
|
215
|
+
node.addEventListener("keyup", handleKeyUp, true);
|
|
216
|
+
return () => {
|
|
217
|
+
node.removeEventListener("keydown", handleKeyDown, true);
|
|
218
|
+
node.removeEventListener("keyup", handleKeyUp, true);
|
|
219
|
+
};
|
|
220
|
+
}, [active, ref]);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
/** Duplicated verbatim from `keyboard.ts` — see the note there on why it is not shared. */
|
|
224
|
+
export function focusItemProps(index, activeIndex) {
|
|
225
|
+
return {
|
|
226
|
+
tabIndex: index === activeIndex ? 0 : -1
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=keyboard.web.js.map
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Accessibility label phrasings that MUST read identically wherever the same action appears
|
|
5
|
+
* (WCAG 3.2.4 Consistent Identification).
|
|
6
|
+
*
|
|
7
|
+
* These live in `core/` rather than in each module because the failure mode is invisible from
|
|
8
|
+
* inside any one module: `chip`, `filter-sheet` and `file-upload` each independently invented a
|
|
9
|
+
* wording for the same X affordance ("Remove Foo" / "Foo, remove filter" / "Selected file: Foo,
|
|
10
|
+
* remove"), and a screen-reader user meeting all three on one screen heard three different names
|
|
11
|
+
* for one action. A module-local constant cannot catch that; a shared one cannot drift.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* The one phrasing for a control that removes `name` from the current selection/list.
|
|
16
|
+
*
|
|
17
|
+
* Action-first, because the affordance is a button and its label should say what pressing it does.
|
|
18
|
+
* Pass the plain user-facing name — never pre-qualify it ("filter Foo", "Selected file: Foo"); the
|
|
19
|
+
* surrounding row already supplies that context to assistive tech.
|
|
20
|
+
*/
|
|
21
|
+
export function removeAccessibilityLabel(name) {
|
|
22
|
+
return `Remove ${name}`;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=labels.js.map
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# core/device — the device tier
|
|
2
|
+
|
|
3
|
+
One probe, once per process, behind a `globalThis` slot. `MOTION_TIER` (`core/motion/config.ts`) and
|
|
4
|
+
`VirtualList`'s windowing both read it. **Internal only** — not a package subpath export.
|
|
5
|
+
|
|
6
|
+
| Export | Role |
|
|
7
|
+
|--------|------|
|
|
8
|
+
| `probeTier()` | The raw hardware answer, cached per process. |
|
|
9
|
+
| `resolveDeviceTier(reducedMotion)` | `probeTier()` plus the reduce-motion demotion. What `useMotion` calls. |
|
|
10
|
+
| `useDeviceTier()` | The hook form — `resolveDeviceTier` over the reduce-motion store. |
|
|
11
|
+
| `setDeviceTierForTests(tier)` | Overrides (or, with `undefined`, clears) the cached slot. |
|
|
12
|
+
| `getListWindowSize(tier)` | Rows to keep windowed. No current caller. |
|
|
13
|
+
|
|
14
|
+
## The mapping
|
|
15
|
+
|
|
16
|
+
| Platform | Signals | Result |
|
|
17
|
+
|----------|---------|--------|
|
|
18
|
+
| Android | `Platform.Version` < 29 (Android 9 and older) | `low` |
|
|
19
|
+
| Android | short edge ≤ 720 physical px (`Dimensions.get('screen')` × `scale`) | `low` |
|
|
20
|
+
| Android | anything else | `mid` |
|
|
21
|
+
| iOS | `Platform.Version` major ≤ 15 | `low` |
|
|
22
|
+
| iOS | major = 16 | `mid` |
|
|
23
|
+
| iOS | major ≥ 17, or unreadable | `high` |
|
|
24
|
+
| anything else | — | `mid` |
|
|
25
|
+
|
|
26
|
+
**Why these.** API 29 is where Google's security patches stop, and no device below it has post-2018
|
|
27
|
+
silicon. A 720p-or-smaller panel is the entry/Go-edition signature — 1080p has been the mid-range
|
|
28
|
+
floor since ~2017 — and it is the one free signal that catches a *new* 2GB device, which API level
|
|
29
|
+
alone never would. On iOS, Apple's support cutoffs map 1:1 onto SoCs: iOS 15 was the last release
|
|
30
|
+
for the A10 (iPhone 7), iOS 16 the last for the A11 (iPhone 8 / X).
|
|
31
|
+
|
|
32
|
+
**Android never resolves `high`.** `high` buys blur and decorative motion; neither API level nor
|
|
33
|
+
panel resolution proves the RAM/GPU headroom to spend on them. Promotion needs a memory reading —
|
|
34
|
+
`expo-device`'s `totalMemory` / `deviceYearClass` is the signal, and it is not a dependency of this
|
|
35
|
+
repo. Until it is, Android is `low` or `mid`, so this probe only ever *demotes*.
|
|
36
|
+
|
|
37
|
+
**iOS demotes only on positive evidence.** An unreadable `Platform.Version` (Jest, a stubbed
|
|
38
|
+
Platform) stays `high`, so a missing signal never silently strips motion from every iOS device.
|
|
39
|
+
|
|
40
|
+
## What this replaced
|
|
41
|
+
|
|
42
|
+
The shipped probe read `Platform.constants.reactNativeVersion.minor` — the **bundler's** RN version —
|
|
43
|
+
and compared it to a device year class: `if (Platform.OS === 'android' && yearClass < 74) tier =
|
|
44
|
+
'low'`. RN is 0.86, so the value was always 86 and the branch never fired: **every** Android device
|
|
45
|
+
resolved `mid`, including the 2GB target the tier system exists for, and every iOS device resolved
|
|
46
|
+
`high` unconditionally. It survived because ~15 suites pin the tier with `setDeviceTierForTests` and
|
|
47
|
+
`probeTier` itself had no test. `__tests__/probeTier.test.ts` now covers it, and pre-seeds nothing.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useMemo } from 'react';
|
|
4
|
+
import { Dimensions, Platform } from 'react-native';
|
|
5
|
+
import { useReducedMotion } from "../a11y/index.js";
|
|
6
|
+
const TIER_SLOT = '__PIXELIZE_DEVICE_TIER__';
|
|
7
|
+
/** Android 9 and older: pre-2019 silicon, and off Google's security-patch list since 2022. */
|
|
8
|
+
const ANDROID_LOW_API = 29;
|
|
9
|
+
/** 720p-or-smaller panel — the entry/Go-edition signature; 1080p has been the mid-range floor since ~2017. */
|
|
10
|
+
const ANDROID_LOW_SHORT_SIDE_PX = 720;
|
|
11
|
+
/** iOS 15 was the last release for the A10 (iPhone 7) and older. */
|
|
12
|
+
const IOS_LOW_MAX_MAJOR = 15;
|
|
13
|
+
/** iOS 16 was the last release for the A11 (iPhone 8 / X). */
|
|
14
|
+
const IOS_MID_MAJOR = 16;
|
|
15
|
+
|
|
16
|
+
/** Physical pixels across the display's short edge; 0 when the metrics are unreadable. */
|
|
17
|
+
function shortSidePx() {
|
|
18
|
+
const {
|
|
19
|
+
width,
|
|
20
|
+
height,
|
|
21
|
+
scale
|
|
22
|
+
} = Dimensions.get('screen');
|
|
23
|
+
// Negated comparisons on purpose: a stubbed Dimensions can hand back undefined or NaN.
|
|
24
|
+
if (!(width > 0) || !(height > 0) || !(scale > 0)) return 0;
|
|
25
|
+
return Math.round(Math.min(width, height) * scale);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* The one real hardware probe. Android is classified by API level (device age) and panel resolution
|
|
30
|
+
* (hardware class); iOS by the major OS version, since Apple's support cutoffs map 1:1 onto SoCs.
|
|
31
|
+
*
|
|
32
|
+
* Android never resolves `high`: neither signal proves the RAM/GPU headroom `high` spends (blur,
|
|
33
|
+
* decorative motion), so promotion there needs a memory reading this library does not have.
|
|
34
|
+
* `expo-device` (`totalMemory` / `deviceYearClass`) is the signal that would justify it.
|
|
35
|
+
*/
|
|
36
|
+
function detectTier() {
|
|
37
|
+
if (Platform.OS === 'android') {
|
|
38
|
+
if (Platform.Version < ANDROID_LOW_API) return 'low';
|
|
39
|
+
const shortSide = shortSidePx();
|
|
40
|
+
if (shortSide > 0 && shortSide <= ANDROID_LOW_SHORT_SIDE_PX) return 'low';
|
|
41
|
+
return 'mid';
|
|
42
|
+
}
|
|
43
|
+
if (Platform.OS === 'ios') {
|
|
44
|
+
const major = Number.parseInt(Platform.Version, 10);
|
|
45
|
+
// Unreadable version (Jest, a stubbed Platform) — demote only on positive evidence of old silicon.
|
|
46
|
+
if (Number.isNaN(major)) return 'high';
|
|
47
|
+
if (major <= IOS_LOW_MAX_MAJOR) return 'low';
|
|
48
|
+
if (major === IOS_MID_MAJOR) return 'mid';
|
|
49
|
+
return 'high';
|
|
50
|
+
}
|
|
51
|
+
return 'mid';
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/** Probes once per process; the answer cannot change while the app runs. */
|
|
55
|
+
export function probeTier() {
|
|
56
|
+
const cached = globalThis[TIER_SLOT];
|
|
57
|
+
if (cached) return cached;
|
|
58
|
+
const tier = detectTier();
|
|
59
|
+
globalThis[TIER_SLOT] = tier;
|
|
60
|
+
return tier;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/** For tests — override the probed tier. */
|
|
64
|
+
export function setDeviceTierForTests(tier) {
|
|
65
|
+
globalThis[TIER_SLOT] = tier;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* The tier a caller should act on. Reduce-motion demotes `high`: the OS asked for less, so the
|
|
70
|
+
* headroom stays unspent. Split out of the hook so `useMotion` can resolve both from one store read.
|
|
71
|
+
*/
|
|
72
|
+
export function resolveDeviceTier(reducedMotion) {
|
|
73
|
+
const tier = probeTier();
|
|
74
|
+
if (reducedMotion && tier === 'high') return 'mid';
|
|
75
|
+
return tier;
|
|
76
|
+
}
|
|
77
|
+
export function useDeviceTier() {
|
|
78
|
+
const reducedMotion = useReducedMotion();
|
|
79
|
+
return useMemo(() => resolveDeviceTier(reducedMotion), [reducedMotion]);
|
|
80
|
+
}
|
|
81
|
+
export function getListWindowSize(tier) {
|
|
82
|
+
switch (tier) {
|
|
83
|
+
case 'low':
|
|
84
|
+
return 5;
|
|
85
|
+
case 'high':
|
|
86
|
+
return 15;
|
|
87
|
+
default:
|
|
88
|
+
return 10;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# core/heading
|
|
2
|
+
|
|
3
|
+
The single place that types and documents `aria-level` — the prop `react-native-web` needs to turn
|
|
4
|
+
`accessibilityRole="header"` into the right `<h1>`-`<h6>`, instead of always `<h1>`.
|
|
5
|
+
|
|
6
|
+
## Why this exists
|
|
7
|
+
|
|
8
|
+
`react-native-web` (`AccessibilityUtil/propsToAccessibilityComponent.js`) renders any
|
|
9
|
+
`accessibilityRole="header"` element as `<h1>` **unless** `aria-level` is also set — so a screen
|
|
10
|
+
with several headings and no level renders every one of them as `<h1>`, destroying the outline a
|
|
11
|
+
screen reader's rotor navigates (WCAG 1.3.1 / 2.4.6).
|
|
12
|
+
|
|
13
|
+
React Native 0.86 declares neither `aria-level` nor `accessibilityLevel` on `Text`'s or `View`'s
|
|
14
|
+
`AccessibilityProps`, so passing it doesn't typecheck through the real components. Following
|
|
15
|
+
`select/Select.variants.ts`'s `SELECT_LISTBOX_ROLE` precedent for the same class of gap,
|
|
16
|
+
`HeadingText`/`HeadingView` widen the prop types on these two audited lines — never a cast at a call
|
|
17
|
+
site. It's a type gap, not a runtime one: RNW reads the prop, and native drops props its view config
|
|
18
|
+
doesn't declare, so `aria-level` is a safe no-op there.
|
|
19
|
+
|
|
20
|
+
## Exports
|
|
21
|
+
|
|
22
|
+
- `HeadingLevel` — `1 | 2 | 3 | 4 | 5 | 6`.
|
|
23
|
+
- `HeadingText` / `HeadingView` — `Text` / `View` widened to accept `aria-level`.
|
|
24
|
+
- `HEADING_LEVEL` — the library's own fixed outline (`screen: 1`, `section: 2`, `subsection: 3`) for
|
|
25
|
+
components whose level is a structural decision this library makes, not the caller's
|
|
26
|
+
(`AppBar`, `Section`, `SectionList`, `EmptyState`, `DataTable` headers). Components whose level is
|
|
27
|
+
the *caller's* choice — `Heading`'s `variant`, a `Markdown` document's `#`/`##`, `RichText`'s
|
|
28
|
+
`<h1>`-`<h6>` — derive `aria-level` from that choice instead.
|
|
29
|
+
|
|
30
|
+
## Not a context-propagated offset
|
|
31
|
+
|
|
32
|
+
A `Markdown` block embedded under a `Screen` with its own `AppBar` (`<h1>`) does not renumber itself
|
|
33
|
+
relative to that ancestor. This library cannot see the screen its output lands in — an app supplies
|
|
34
|
+
its own chrome around `Screen` — so a context-derived offset would be correct only inside this
|
|
35
|
+
repo's own tree and silently wrong the moment a consumer's structure differs from it. Fixed,
|
|
36
|
+
predictable levels per component are what a consumer can read, test, and reason about; getting the
|
|
37
|
+
overall page outline right (one `<h1>`, headings nesting under it) is the consuming app's job, same
|
|
38
|
+
as it is on web.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Heading semantics — the ONE place the library types `aria-level` in, and the one place its
|
|
5
|
+
* heading outline is written down.
|
|
6
|
+
*
|
|
7
|
+
* `react-native-web` turns `accessibilityRole="header"` into a real `<h*>` element, taking the
|
|
8
|
+
* level from `aria-level` and falling back to `<h1>` when it is absent
|
|
9
|
+
* (`AccessibilityUtil/propsToAccessibilityComponent.js`). So a heading rendered without a level is
|
|
10
|
+
* not "a heading with an unspecified level" on web — it is an `<h1>`, and a screen whose every
|
|
11
|
+
* heading is an `<h1>` has no outline for a screen-reader user to navigate (WCAG 1.3.1 / 2.4.6).
|
|
12
|
+
*
|
|
13
|
+
* React Native 0.86 declares neither `aria-level` nor `accessibilityLevel` on `AccessibilityProps`,
|
|
14
|
+
* so `Text` and `View` reject the prop at compile time. Following `SELECT_LISTBOX_ROLE`'s
|
|
15
|
+
* precedent, the widening lives on the two audited lines below instead of a cast at each of the
|
|
16
|
+
* nine call sites. It is a type gap, not a runtime one: RNW reads the prop, and native drops props
|
|
17
|
+
* its view config does not declare.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
import { Text as RNText, View as RNView } from "react-native";
|
|
21
|
+
|
|
22
|
+
/** The levels the DOM has. */
|
|
23
|
+
|
|
24
|
+
export const HeadingText = RNText;
|
|
25
|
+
export const HeadingView = RNView;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* The library's outline. Levels are FIXED per component, never derived from render context: a
|
|
29
|
+
* design library cannot see the page its consumer embeds it in (an app renders its own chrome
|
|
30
|
+
* around `Screen`), so a context-propagated offset would look correct inside this repo's tree and
|
|
31
|
+
* still be wrong the moment the consumer supplies the outer structure. Fixed levels are what a
|
|
32
|
+
* consumer can read, predict and test.
|
|
33
|
+
*
|
|
34
|
+
* Components whose level is the author's own explicit choice — `Heading`'s `variant`, a `Markdown`
|
|
35
|
+
* document's `#`/`##`, a `RichText` `<h3>` — carry that choice through instead of these.
|
|
36
|
+
*/
|
|
37
|
+
export const HEADING_LEVEL = {
|
|
38
|
+
/** The screen's own title (`AppBar`). One per screen. */
|
|
39
|
+
screen: 1,
|
|
40
|
+
/** A top-level division of a screen: `Section`, `SectionList` headers, `EmptyState`. */
|
|
41
|
+
section: 2,
|
|
42
|
+
/** A heading inside such a division: `DataTable`'s column headers. */
|
|
43
|
+
subsection: 3
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { View } from 'react-native';
|
|
4
|
+
import { resolveIcon } from "./resolve.js";
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
/**
|
|
7
|
+
* `aria-hidden`, not the `accessibilityElementsHidden` + `importantForAccessibility` pair used
|
|
8
|
+
* elsewhere in the library: react-native-web forwards neither of those, so on web the pair hides
|
|
9
|
+
* nothing. RN's `View` translates `aria-hidden` into both on native.
|
|
10
|
+
*/
|
|
11
|
+
export function Icon({
|
|
12
|
+
name,
|
|
13
|
+
size,
|
|
14
|
+
color,
|
|
15
|
+
strokeWidth = 2,
|
|
16
|
+
label
|
|
17
|
+
}) {
|
|
18
|
+
const Glyph = resolveIcon(name);
|
|
19
|
+
const glyph = /*#__PURE__*/_jsx(Glyph, {
|
|
20
|
+
size: size,
|
|
21
|
+
color: color,
|
|
22
|
+
strokeWidth: strokeWidth
|
|
23
|
+
});
|
|
24
|
+
if (label === undefined) {
|
|
25
|
+
return /*#__PURE__*/_jsx(View, {
|
|
26
|
+
"aria-hidden": true,
|
|
27
|
+
children: glyph
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
return /*#__PURE__*/_jsx(View, {
|
|
31
|
+
accessible: true,
|
|
32
|
+
accessibilityRole: "image",
|
|
33
|
+
accessibilityLabel: label,
|
|
34
|
+
children: glyph
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=Icon.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# core/icon — shared icon registry
|
|
2
2
|
|
|
3
3
|
Every module's `icon` prop takes a NAME from `IconName`, never a `ReactNode` — same discipline as
|
|
4
|
-
`tone`/`variant` elsewhere in the contract. Hoisted out of `button/` (where it first landed) so
|
|
5
|
-
|
|
4
|
+
`tone`/`variant` elsewhere in the contract. Hoisted out of `button/` (where it first landed) so
|
|
5
|
+
every one of the 39 shipped modules imports one registry instead of each re-copying its own.
|
|
6
6
|
|
|
7
7
|
## Files
|
|
8
8
|
|
|
@@ -10,6 +10,30 @@ other 16 v1 components import one registry instead of each re-copying its own.
|
|
|
10
10
|
|------|------|
|
|
11
11
|
| `index.tsx` | `Icon` component + `ICON_COMPONENTS` map + the `IconName` union. |
|
|
12
12
|
|
|
13
|
+
## Accessibility contract (WCAG 1.3.1 / 1.1.1)
|
|
14
|
+
|
|
15
|
+
`Icon` is decorative BY DEFAULT — every render wraps the glyph in a `View` carrying `aria-hidden`.
|
|
16
|
+
Pass `label` (optional) for the rare icon that carries information no neighbouring text repeats
|
|
17
|
+
(a glyph-only button, a status dot with no label beside it); that renders `accessible` +
|
|
18
|
+
`accessibilityRole="image"` + `accessibilityLabel={label}` instead.
|
|
19
|
+
|
|
20
|
+
- **Why `aria-hidden`, not the `accessibilityElementsHidden` + `importantForAccessibility` pair used
|
|
21
|
+
elsewhere in this library**: `react-native-web` forwards neither of those two props, so on web the
|
|
22
|
+
pair hides nothing — an icon built on it alone looks correct under the native Jest project and
|
|
23
|
+
ships silently-wrong on web. RN's own `View` translates `aria-hidden` into both native props
|
|
24
|
+
itself (`View.js`), so one prop covers both platforms.
|
|
25
|
+
- **Why decorative-by-default, not opt-in-hidden**: every consumer in this catalogue that renders a
|
|
26
|
+
meaningful glyph already provides a text label beside it (a button's own `accessibilityLabel`, a
|
|
27
|
+
banner's title/message) — the icon was ALWAYS meant to be redundant, and most call sites already
|
|
28
|
+
hand-wrapped it in a hidden `View` to say so. The one that didn't (`Banner`'s tone glyph) shipped
|
|
29
|
+
an exposed, unlabelled glyph to assistive tech — a per-consumer mistake that recurred because the
|
|
30
|
+
default made it easy to forget, not a `Banner`-specific defect. Flagged prominently: `label` is new
|
|
31
|
+
public API on `IconProps`/`IconComponent` callers that pass it through `Icon` directly (most
|
|
32
|
+
modules resolve their own glyph via `resolveIcon` and never touch this prop).
|
|
33
|
+
- `__tests__/Icon.render.test.tsx` pins both states on the native project; `__tests__/Icon.dom.test.tsx`
|
|
34
|
+
proves the same contract lands as a real DOM `aria-hidden`/`role="img"` attribute under
|
|
35
|
+
`jest.web.config.js` — the native assertion alone cannot catch a prop RNW silently drops.
|
|
36
|
+
|
|
13
37
|
## Pattern (do not deviate)
|
|
14
38
|
|
|
15
39
|
- Icons are DEEP-IMPORTED from `lucide-react-native/icons/<kebab-name>`, never the barrel
|
|
@@ -27,9 +51,19 @@ devDependencies here for local build/typecheck/test only.
|
|
|
27
51
|
|
|
28
52
|
## Known gaps
|
|
29
53
|
|
|
30
|
-
- Catalogue
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
54
|
+
- Catalogue started as a starter set (the icons Button needed) and has grown one batch at a time —
|
|
55
|
+
69 glyphs as of the 2026-07 addition of `rich-text-editor`'s toolbar set (`bold`, `italic`,
|
|
56
|
+
`underline`, `strikethrough`, `code`, `square-code`, `heading-1/2/3`, `quote`, `list-ordered`,
|
|
57
|
+
`list-checks`, `at-sign`), on top of the earlier navigation + ticket-detail names for the
|
|
58
|
+
tickets-native consumer (`layout-dashboard`, `kanban`, `calendar`, `tag`, `flag`, … — see the
|
|
59
|
+
inline comment above `ICON_COMPONENTS` for the full list). Add names as later components need them.
|
|
60
|
+
- `filter` deep-imports from lucide's `funnel` module: lucide renamed the `filter` icon to `funnel`
|
|
61
|
+
and only left a `.d.ts` type alias at the old path (no runtime file there) — confirmed by
|
|
62
|
+
resolving `lucide-react-native/icons/funnel` before adding this entry, the same trap
|
|
63
|
+
`more-horizontal` (now `ellipsis`) already hit once in this registry.
|
|
64
|
+
|
|
65
|
+
## Modernization (v1.0.7)
|
|
66
|
+
|
|
67
|
+
- Theme imports decoupled to `theme/hooks`; optional peers (reanimated, gesture-handler, flash-list) load at runtime.
|
|
68
|
+
- List-heavy surfaces use `VirtualList` with device-tier window sizing where applicable.
|
|
69
|
+
- `React.memo` + stable callbacks retained; render-item/key-extractor hoisted per ESLint perf rules.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import ArrowDown from "lucide-react-native/icons/arrow-down";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function IconArrowDown(props) {
|
|
6
|
+
return /*#__PURE__*/_jsx(ArrowDown, {
|
|
7
|
+
...props
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=arrow-down.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import ArrowLeft from "lucide-react-native/icons/arrow-left";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function IconArrowLeft(props) {
|
|
6
|
+
return /*#__PURE__*/_jsx(ArrowLeft, {
|
|
7
|
+
...props
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=arrow-left.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import ArrowRight from "lucide-react-native/icons/arrow-right";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
export function IconArrowRight(props) {
|
|
6
|
+
return /*#__PURE__*/_jsx(ArrowRight, {
|
|
7
|
+
...props
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=arrow-right.js.map
|