pixelize-native-library 1.0.7 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/module/core/MODULE.md +130 -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/gradient/AccentGradientFill.js +80 -0
- package/lib/module/core/gradient/darkenHex.js +13 -0
- package/lib/module/core/gradient/gradientStops.js +27 -0
- package/lib/module/core/gradient/index.js +7 -0
- package/lib/module/core/gradient/withAlpha.js +19 -0
- package/lib/module/core/haptics/MODULE.md +4 -0
- package/lib/module/core/haptics/context.js +7 -0
- package/lib/module/core/haptics/haptics.js +17 -0
- package/lib/module/core/haptics/index.js +6 -0
- package/lib/module/core/haptics/useHaptics.js +73 -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 +53 -12
- 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/trending-up.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 -153
- package/lib/module/core/icon/names.js +2 -0
- package/lib/module/core/icon/resolve.js +160 -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 +26 -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 +115 -0
- package/lib/module/core/motion/index.js +8 -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/motion/usePressState.js +145 -0
- package/lib/module/core/style/index.js +3 -0
- package/lib/module/core/style/radius.js +4 -0
- package/lib/module/core/style/sx.js +76 -0
- package/lib/module/core/style/useThemedStyles.js +8 -0
- package/lib/module/index.js +71 -2
- package/lib/module/modules/accordion/Accordion.js +286 -97
- package/lib/module/modules/accordion/Accordion.variants.js +6 -7
- package/lib/module/modules/accordion/MODULE.md +36 -11
- package/lib/module/modules/alert-dialog/AlertDialog.js +7 -6
- package/lib/module/modules/alert-dialog/AlertDialog.variants.js +4 -0
- package/lib/module/modules/alert-dialog/MODULE.md +11 -2
- package/lib/module/modules/app-bar/AppBar.js +181 -0
- package/lib/module/modules/app-bar/AppBar.variants.js +71 -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 +45 -19
- 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 +81 -0
- package/lib/module/modules/avatar-group/AvatarGroup.variants.js +132 -0
- package/lib/module/modules/avatar-group/MODULE.md +44 -0
- package/lib/module/modules/avatar-group/index.js +10 -0
- package/lib/module/modules/badge/Badge.js +14 -7
- package/lib/module/modules/badge/Badge.variants.js +14 -3
- package/lib/module/modules/badge/MODULE.md +11 -5
- package/lib/module/modules/banner/Banner.js +181 -0
- package/lib/module/modules/banner/Banner.variants.js +118 -0
- package/lib/module/modules/banner/MODULE.md +118 -0
- package/lib/module/modules/banner/index.js +4 -0
- package/lib/module/modules/bottom-nav/BottomNav.js +43 -129
- package/lib/module/modules/bottom-nav/BottomNav.variants.js +36 -18
- package/lib/module/modules/bottom-nav/BottomNavIconWithBadge.js +56 -8
- package/lib/module/modules/bottom-nav/BottomNavOverflowSheet.js +160 -117
- package/lib/module/modules/bottom-nav/BottomNavTab.js +162 -0
- package/lib/module/modules/bottom-nav/MODULE.md +30 -6
- package/lib/module/modules/bottom-sheet/BottomSheet.js +202 -0
- package/lib/module/modules/bottom-sheet/BottomSheet.variants.js +59 -0
- package/lib/module/modules/bottom-sheet/MODULE.md +64 -0
- package/lib/module/modules/bottom-sheet/index.js +4 -0
- package/lib/module/modules/button/Button.js +128 -91
- package/lib/module/modules/button/Button.variants.js +20 -14
- package/lib/module/modules/button/MODULE.md +31 -3
- package/lib/module/modules/button-group/ButtonGroup.js +176 -69
- package/lib/module/modules/button-group/ButtonGroup.variants.js +51 -50
- package/lib/module/modules/button-group/MODULE.md +58 -37
- package/lib/module/modules/card/Card.js +122 -21
- package/lib/module/modules/card/Card.variants.js +1 -0
- package/lib/module/modules/card/MODULE.md +19 -10
- package/lib/module/modules/charts/BarChart.js +257 -0
- package/lib/module/modules/charts/BarList.js +112 -49
- package/lib/module/modules/charts/ChartLegend.js +154 -0
- package/lib/module/modules/charts/Charts.variants.js +589 -2
- package/lib/module/modules/charts/DonutChart.js +105 -65
- package/lib/module/modules/charts/LineChart.js +181 -0
- package/lib/module/modules/charts/MODULE.md +161 -22
- package/lib/module/modules/charts/PieChart.js +149 -0
- package/lib/module/modules/charts/Sparkline.js +7 -4
- package/lib/module/modules/charts/index.js +3 -0
- package/lib/module/modules/checkbox/Checkbox.js +122 -44
- package/lib/module/modules/checkbox/Checkbox.variants.js +13 -8
- package/lib/module/modules/checkbox/MODULE.md +40 -8
- package/lib/module/modules/chip/Chip.js +200 -0
- package/lib/module/modules/chip/Chip.variants.js +290 -0
- package/lib/module/modules/chip/ChipGroup.js +48 -0
- package/lib/module/modules/chip/MODULE.md +158 -0
- package/lib/module/modules/chip/index.js +13 -0
- package/lib/module/modules/combobox/Combobox.js +623 -0
- package/lib/module/modules/combobox/Combobox.variants.js +295 -0
- package/lib/module/modules/combobox/MODULE.md +193 -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 +163 -0
- package/lib/module/modules/composer/Composer.variants.js +44 -0
- package/lib/module/modules/composer/MODULE.md +75 -0
- package/lib/module/modules/composer/index.js +4 -0
- package/lib/module/modules/copy-button/CopyButton.js +174 -0
- package/lib/module/modules/copy-button/CopyButton.variants.js +88 -0
- package/lib/module/modules/copy-button/MODULE.md +78 -0
- package/lib/module/modules/copy-button/index.js +4 -0
- package/lib/module/modules/data-table/DataTable.js +532 -0
- package/lib/module/modules/data-table/DataTable.variants.js +189 -0
- package/lib/module/modules/data-table/MODULE.md +146 -0
- package/lib/module/modules/data-table/index.js +10 -0
- package/lib/module/modules/date-picker/Calendar.js +414 -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 +701 -0
- package/lib/module/modules/date-picker/DateRangePicker.js +87 -0
- package/lib/module/modules/date-picker/MODULE.md +190 -0
- package/lib/module/modules/date-picker/PickerField.js +151 -0
- package/lib/module/modules/date-picker/PickerShell.js +134 -0
- package/lib/module/modules/date-picker/TimePicker.js +179 -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/Divider.variants.js +6 -5
- package/lib/module/modules/divider/MODULE.md +8 -0
- package/lib/module/modules/drawer/Drawer.js +156 -62
- package/lib/module/modules/drawer/Drawer.variants.js +7 -20
- package/lib/module/modules/drawer/MODULE.md +93 -118
- package/lib/module/modules/empty-state/EmptyState.js +34 -31
- package/lib/module/modules/empty-state/EmptyState.variants.js +16 -0
- package/lib/module/modules/empty-state/MODULE.md +26 -7
- package/lib/module/modules/fab/Fab.js +192 -0
- package/lib/module/modules/fab/Fab.variants.js +360 -0
- package/lib/module/modules/fab/FabGroup.js +361 -0
- package/lib/module/modules/fab/MODULE.md +194 -0
- package/lib/module/modules/fab/index.js +13 -0
- package/lib/module/modules/file-grid/FileGrid.js +163 -0
- package/lib/module/modules/file-grid/FileGrid.variants.js +51 -0
- package/lib/module/modules/file-grid/MODULE.md +14 -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 +53 -8
- package/lib/module/modules/file-upload/MODULE.md +24 -4
- package/lib/module/modules/filter-sheet/FilterChip.js +32 -18
- 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 +180 -82
- package/lib/module/modules/filter-sheet/MODULE.md +31 -1
- package/lib/module/modules/folder-row/FolderRow.js +144 -0
- package/lib/module/modules/folder-row/FolderRow.variants.js +51 -0
- package/lib/module/modules/folder-row/MODULE.md +72 -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 +239 -0
- package/lib/module/modules/gantt/Gantt.variants.js +177 -0
- package/lib/module/modules/gantt/MODULE.md +81 -0
- package/lib/module/modules/gantt/index.js +5 -0
- package/lib/module/modules/image-viewer/ImageViewer.js +265 -0
- package/lib/module/modules/image-viewer/ImageViewer.variants.js +6 -0
- package/lib/module/modules/image-viewer/MODULE.md +63 -0
- package/lib/module/modules/image-viewer/index.js +4 -0
- package/lib/module/modules/input/Input.js +119 -48
- package/lib/module/modules/input/Input.variants.js +26 -11
- package/lib/module/modules/input/MODULE.md +38 -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 +70 -31
- package/lib/module/modules/list-item/ListItem.variants.js +11 -2
- package/lib/module/modules/list-item/MODULE.md +8 -3
- package/lib/module/modules/markdown/MODULE.md +39 -5
- package/lib/module/modules/markdown/Markdown.js +107 -38
- package/lib/module/modules/markdown/Markdown.variants.js +8 -2
- package/lib/module/modules/markdown/parseMarkdown.js +3 -3
- package/lib/module/modules/menu/MODULE.md +56 -14
- package/lib/module/modules/menu/Menu.js +236 -68
- package/lib/module/modules/menu/Menu.variants.js +13 -3
- package/lib/module/modules/message-bubble/MODULE.md +41 -0
- package/lib/module/modules/message-bubble/MessageBubble.js +54 -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 +40 -3
- package/lib/module/modules/modal/Modal.js +135 -33
- package/lib/module/modules/modal/Modal.variants.js +2 -2
- package/lib/module/modules/more-items/MODULE.md +77 -0
- package/lib/module/modules/more-items/MoreItems.js +168 -0
- package/lib/module/modules/more-items/MoreItems.variants.js +83 -0
- package/lib/module/modules/more-items/index.js +4 -0
- package/lib/module/modules/multi-select/MODULE.md +89 -18
- package/lib/module/modules/multi-select/MultiSelect.js +239 -105
- package/lib/module/modules/multi-select/MultiSelect.variants.js +32 -7
- package/lib/module/modules/number-input/MODULE.md +41 -6
- package/lib/module/modules/number-input/NumberInput.js +124 -81
- package/lib/module/modules/number-input/NumberInput.variants.js +48 -11
- package/lib/module/modules/org-switcher/MODULE.md +133 -0
- package/lib/module/modules/org-switcher/OrgSwitcher.js +295 -0
- package/lib/module/modules/org-switcher/OrgSwitcher.variants.js +188 -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 +236 -0
- package/lib/module/modules/pagination/Pagination.variants.js +309 -0
- package/lib/module/modules/pagination/PaginationControls.js +213 -0
- package/lib/module/modules/pagination/index.js +15 -0
- package/lib/module/modules/pin-input/MODULE.md +34 -15
- package/lib/module/modules/pin-input/PinInput.js +119 -81
- package/lib/module/modules/pin-input/PinInput.variants.js +15 -6
- 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 +42 -16
- package/lib/module/modules/radio-group/RadioGroup.js +172 -49
- package/lib/module/modules/radio-group/RadioGroup.variants.js +48 -11
- package/lib/module/modules/reorder/MODULE.md +106 -97
- package/lib/module/modules/reorder/Reorder.js +234 -197
- package/lib/module/modules/reorder/Reorder.variants.js +39 -15
- package/lib/module/modules/rich-text/MODULE.md +54 -0
- package/lib/module/modules/rich-text/RichText.js +382 -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 +228 -0
- package/lib/module/modules/rich-text-editor/RichTextEditor.js +420 -0
- package/lib/module/modules/rich-text-editor/RichTextEditor.variants.js +319 -0
- package/lib/module/modules/rich-text-editor/index.js +10 -0
- package/lib/module/modules/screen/MODULE.md +64 -0
- package/lib/module/modules/screen/Screen.js +139 -0
- package/lib/module/modules/screen/Screen.variants.js +61 -0
- package/lib/module/modules/screen/index.js +10 -0
- package/lib/module/modules/search-bar/MODULE.md +115 -0
- package/lib/module/modules/search-bar/SearchBar.js +276 -0
- package/lib/module/modules/search-bar/SearchBar.variants.js +208 -0
- package/lib/module/modules/search-bar/index.js +12 -0
- package/lib/module/modules/section/MODULE.md +41 -0
- package/lib/module/modules/section/Section.js +35 -0
- package/lib/module/modules/section/Section.variants.js +24 -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 +126 -0
- package/lib/module/modules/segmented-control/SegmentedControl.js +222 -0
- package/lib/module/modules/segmented-control/SegmentedControl.variants.js +168 -0
- package/lib/module/modules/segmented-control/index.js +13 -0
- package/lib/module/modules/select/MODULE.md +103 -15
- package/lib/module/modules/select/Select.js +223 -94
- package/lib/module/modules/select/Select.variants.js +64 -17
- package/lib/module/modules/skeleton/MODULE.md +37 -21
- package/lib/module/modules/skeleton/Skeleton.js +55 -46
- package/lib/module/modules/skeleton/Skeleton.variants.js +19 -76
- package/lib/module/modules/slider/MODULE.md +33 -5
- package/lib/module/modules/slider/Slider.js +68 -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 +68 -0
- package/lib/module/modules/stage-progress/StageProgress.js +221 -0
- package/lib/module/modules/stage-progress/StageProgress.variants.js +169 -0
- package/lib/module/modules/stage-progress/index.js +4 -0
- package/lib/module/modules/stat-tile/MODULE.md +11 -2
- package/lib/module/modules/stat-tile/StatTile.js +76 -34
- package/lib/module/modules/stat-tile/StatTile.variants.js +8 -4
- package/lib/module/modules/state-block/MODULE.md +55 -0
- package/lib/module/modules/state-block/StateBlock.js +136 -0
- package/lib/module/modules/state-block/StateBlock.variants.js +62 -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/surface/MODULE.md +59 -0
- package/lib/module/modules/surface/Surface.js +42 -0
- package/lib/module/modules/surface/Surface.variants.js +33 -0
- package/lib/module/modules/surface/index.js +4 -0
- package/lib/module/modules/swipeable-row/MODULE.md +129 -0
- package/lib/module/modules/swipeable-row/SwipeableRow.js +265 -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 +16 -0
- package/lib/module/modules/switch/Switch.js +9 -3
- package/lib/module/modules/switch/Switch.variants.js +8 -0
- package/lib/module/modules/tabs/MODULE.md +48 -13
- package/lib/module/modules/tabs/Tabs.js +141 -73
- package/lib/module/modules/tabs/Tabs.variants.js +33 -9
- package/lib/module/modules/text/MODULE.md +54 -0
- package/lib/module/modules/text/Text.js +59 -0
- package/lib/module/modules/text/Text.variants.js +162 -0
- package/lib/module/modules/text/index.js +4 -0
- package/lib/module/modules/textarea/MODULE.md +31 -13
- package/lib/module/modules/textarea/Textarea.js +92 -46
- package/lib/module/modules/textarea/Textarea.variants.js +16 -10
- package/lib/module/modules/timeline/MODULE.md +39 -7
- package/lib/module/modules/timeline/Timeline.js +151 -77
- package/lib/module/modules/timeline/Timeline.variants.js +13 -0
- package/lib/module/modules/toast/MODULE.md +74 -11
- package/lib/module/modules/toast/Toast.js +118 -34
- package/lib/module/modules/toast/Toast.variants.js +42 -1
- package/lib/module/modules/toast/toastScreenReader.js +69 -0
- package/lib/module/modules/tooltip/MODULE.md +82 -28
- package/lib/module/modules/tooltip/Tooltip.js +126 -44
- package/lib/module/modules/tooltip/Tooltip.variants.js +11 -5
- 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 +9 -1
- package/lib/module/theme/hooks.js +11 -0
- package/lib/module/theme/index.js +3 -6
- package/lib/module/theme/platform/MODULE.md +20 -2
- package/lib/module/theme/platform/elevation.native.js +0 -44
- package/lib/module/theme/platform/floatingSurface.native.js +75 -0
- package/lib/module/theme/platform/highlight.native.js +59 -0
- package/lib/module/theme/platform/index.js +5 -0
- package/lib/module/theme/platform/motion.native.js +35 -0
- package/lib/module/theme/platform/stateLayer.native.js +14 -0
- package/lib/module/theme/platform/surfaces.native.js +11 -0
- package/lib/module/theme/provider/PixelizeProvider.js +18 -49
- 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/MODULE.md +32 -28
- package/lib/module/theme/tokens/THEME-CONTRACT.md +137 -0
- package/lib/module/theme/tokens/assertPalette.js +29 -0
- package/lib/module/theme/tokens/brands/emerald/palette.light.js +7 -6
- package/lib/module/theme/tokens/brands/lavender/palette.light.js +3 -2
- package/lib/module/theme/tokens/brands/meadow/palette.light.js +7 -6
- package/lib/module/theme/tokens/brands/radiant/palette.light.js +7 -6
- package/lib/module/theme/tokens/brands/rosewood/palette.light.js +7 -6
- package/lib/module/theme/tokens/brands/skyline/palette.light.js +7 -6
- package/lib/module/theme/tokens/brands/slate/palette.light.js +8 -10
- package/lib/module/theme/tokens/brands/storefront/palette.light.js +7 -6
- package/lib/module/theme/tokens/brands/zinc/palette.dark.js +3 -2
- package/lib/module/theme/tokens/brands/zinc/palette.light.js +3 -2
- package/lib/module/theme/tokens/builders/buildDarkPalette.js +3 -2
- package/lib/module/theme/tokens/builders/finalizePalette.js +34 -0
- package/lib/module/theme/tokens/builders/liftToContrast.js +44 -0
- package/lib/module/theme/tokens/builders/placeholderInk.js +22 -0
- package/lib/module/theme/tokens/builders/semanticText.js +14 -0
- package/lib/module/theme/tokens/builders/surfaceRungs.js +44 -0
- package/lib/module/theme/tokens/index.js +5 -0
- package/lib/module/theme/tokens/roles/index.js +14 -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/gradient/AccentGradientFill.d.ts +7 -0
- package/lib/typescript/core/gradient/darkenHex.d.ts +2 -0
- package/lib/typescript/core/gradient/gradientStops.d.ts +10 -0
- package/lib/typescript/core/gradient/index.d.ts +5 -0
- package/lib/typescript/core/gradient/withAlpha.d.ts +2 -0
- package/lib/typescript/core/haptics/context.d.ts +3 -0
- package/lib/typescript/core/haptics/haptics.d.ts +33 -0
- package/lib/typescript/core/haptics/index.d.ts +6 -0
- package/lib/typescript/core/haptics/useHaptics.d.ts +12 -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/trending-up.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 -94
- 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 +23 -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 +57 -0
- package/lib/typescript/core/motion/index.d.ts +10 -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/motion/usePressState.d.ts +21 -0
- package/lib/typescript/core/style/index.d.ts +4 -0
- package/lib/typescript/core/style/radius.d.ts +2 -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 +136 -2
- package/lib/typescript/modules/accordion/Accordion.d.ts +12 -23
- package/lib/typescript/modules/accordion/Accordion.variants.d.ts +7 -7
- package/lib/typescript/modules/alert-dialog/AlertDialog.variants.d.ts +2 -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 +30 -0
- package/lib/typescript/modules/avatar-group/AvatarGroup.variants.d.ts +94 -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 +37 -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 +9 -8
- package/lib/typescript/modules/bottom-nav/BottomNav.variants.d.ts +23 -12
- 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 +15 -0
- package/lib/typescript/modules/bottom-sheet/index.d.ts +3 -0
- package/lib/typescript/modules/button/Button.d.ts +9 -13
- package/lib/typescript/modules/button/Button.variants.d.ts +28 -15
- package/lib/typescript/modules/button-group/ButtonGroup.d.ts +0 -17
- package/lib/typescript/modules/button-group/ButtonGroup.variants.d.ts +40 -61
- package/lib/typescript/modules/card/Card.d.ts +7 -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/ChartLegend.d.ts +16 -0
- package/lib/typescript/modules/charts/Charts.variants.d.ts +229 -2
- package/lib/typescript/modules/charts/DonutChart.d.ts +3 -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/index.d.ts +6 -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 +40 -0
- package/lib/typescript/modules/chip/Chip.variants.d.ts +202 -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 +225 -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 +334 -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 +14 -0
- package/lib/typescript/modules/date-picker/index.d.ts +16 -0
- package/lib/typescript/modules/divider/Divider.variants.d.ts +6 -6
- 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 +9 -4
- package/lib/typescript/modules/empty-state/EmptyState.variants.d.ts +8 -1
- package/lib/typescript/modules/fab/Fab.d.ts +74 -0
- package/lib/typescript/modules/fab/Fab.variants.d.ts +231 -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 +16 -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 +103 -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 +32 -12
- 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 +3 -1
- package/lib/typescript/modules/list-item/ListItem.variants.d.ts +138 -2
- package/lib/typescript/modules/markdown/Markdown.d.ts +13 -0
- package/lib/typescript/modules/markdown/Markdown.variants.d.ts +8 -2
- package/lib/typescript/modules/markdown/parseMarkdown.d.ts +3 -2
- 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 +30 -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 +1 -16
- 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 +64 -12
- 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 +47 -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 +30 -0
- package/lib/typescript/modules/screen/Screen.variants.d.ts +25 -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 +9 -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 +5 -15
- package/lib/typescript/modules/select/Select.variants.d.ts +45 -12
- package/lib/typescript/modules/select/index.d.ts +1 -1
- package/lib/typescript/modules/skeleton/Skeleton.d.ts +3 -13
- package/lib/typescript/modules/skeleton/Skeleton.variants.d.ts +14 -69
- 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 +107 -0
- package/lib/typescript/modules/stage-progress/index.d.ts +4 -0
- package/lib/typescript/modules/stat-tile/StatTile.d.ts +4 -0
- package/lib/typescript/modules/stat-tile/StatTile.variants.d.ts +7 -5
- package/lib/typescript/modules/state-block/StateBlock.d.ts +55 -0
- package/lib/typescript/modules/state-block/StateBlock.variants.d.ts +31 -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/surface/Surface.d.ts +19 -0
- package/lib/typescript/modules/surface/Surface.variants.d.ts +15 -0
- package/lib/typescript/modules/surface/index.d.ts +4 -0
- 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 +27 -0
- package/lib/typescript/modules/text/Text.variants.d.ts +21 -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 +9 -13
- 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 +33 -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 +11 -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 +4 -3
- package/lib/typescript/theme/platform/elevation.native.d.ts +0 -30
- package/lib/typescript/theme/platform/floatingSurface.native.d.ts +10 -0
- package/lib/typescript/theme/platform/highlight.native.d.ts +17 -0
- package/lib/typescript/theme/platform/index.d.ts +9 -0
- package/lib/typescript/theme/platform/motion.native.d.ts +35 -0
- package/lib/typescript/theme/platform/stateLayer.native.d.ts +11 -0
- package/lib/typescript/theme/platform/surfaces.native.d.ts +8 -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 +49 -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/assertPalette.d.ts +10 -0
- package/lib/typescript/theme/tokens/brands/emerald/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/lavender/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/meadow/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/radiant/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/rosewood/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/skyline/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/slate/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/storefront/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/brands/zinc/palette.light.d.ts +4 -3
- package/lib/typescript/theme/tokens/builders/finalizePalette.d.ts +4 -0
- package/lib/typescript/theme/tokens/builders/liftToContrast.d.ts +9 -0
- package/lib/typescript/theme/tokens/builders/placeholderInk.d.ts +13 -0
- package/lib/typescript/theme/tokens/builders/semanticText.d.ts +4 -0
- package/lib/typescript/theme/tokens/builders/surfaceRungs.d.ts +12 -0
- package/lib/typescript/theme/tokens/index.d.ts +5 -0
- package/lib/typescript/theme/tokens/roles/index.d.ts +8 -0
- package/lib/typescript/theme/tokens/types.d.ts +8 -7
- package/package.json +201 -19
- package/registry.json +177 -2
- 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/BottomNavIconWithBadge.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/charts/BarList.js.map +0 -1
- package/lib/module/modules/charts/Charts.variants.js.map +0 -1
- package/lib/module/modules/charts/DonutChart.js.map +0 -1
- package/lib/module/modules/charts/Sparkline.js.map +0 -1
- package/lib/module/modules/charts/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/list-item/ListItem.js.map +0 -1
- package/lib/module/modules/list-item/ListItem.variants.js.map +0 -1
- package/lib/module/modules/list-item/index.js.map +0 -1
- package/lib/module/modules/markdown/Markdown.js.map +0 -1
- package/lib/module/modules/markdown/Markdown.variants.js.map +0 -1
- package/lib/module/modules/markdown/index.js.map +0 -1
- package/lib/module/modules/markdown/parseMarkdown.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/stat-tile/StatTile.js.map +0 -1
- package/lib/module/modules/stat-tile/StatTile.variants.js.map +0 -1
- package/lib/module/modules/stat-tile/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/BottomNavIconWithBadge.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/charts/BarList.d.ts.map +0 -1
- package/lib/typescript/modules/charts/Charts.variants.d.ts.map +0 -1
- package/lib/typescript/modules/charts/DonutChart.d.ts.map +0 -1
- package/lib/typescript/modules/charts/Sparkline.d.ts.map +0 -1
- package/lib/typescript/modules/charts/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/list-item/ListItem.d.ts.map +0 -1
- package/lib/typescript/modules/list-item/ListItem.variants.d.ts.map +0 -1
- package/lib/typescript/modules/list-item/index.d.ts.map +0 -1
- package/lib/typescript/modules/markdown/Markdown.d.ts.map +0 -1
- package/lib/typescript/modules/markdown/Markdown.variants.d.ts.map +0 -1
- package/lib/typescript/modules/markdown/index.d.ts.map +0 -1
- package/lib/typescript/modules/markdown/parseMarkdown.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/stat-tile/StatTile.d.ts.map +0 -1
- package/lib/typescript/modules/stat-tile/StatTile.variants.d.ts.map +0 -1
- package/lib/typescript/modules/stat-tile/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
|
@@ -14,6 +14,7 @@ too. `type="multiple"` lets every section toggle independently.
|
|
|
14
14
|
| `index.ts` | Public surface: `Accordion`, `AccordionProps`, `AccordionItem`, `AccordionSize`. |
|
|
15
15
|
| `__tests__/Accordion.test.ts` | Pure: WCAG contrast (all brands × modes) + touch target + a11y contract. |
|
|
16
16
|
| `__tests__/Accordion.render.test.tsx` | Render: single/multiple semantics, controlled vs uncontrolled `value`, disabled, reduced-motion chevron, focus ring. |
|
|
17
|
+
| `__tests__/Accordion.motion.test.tsx` | Motion: reduce-motion snap, the real content tween, the device tier's `durationScale` reaching it, and the collapse staying a synchronous unmount. |
|
|
17
18
|
|
|
18
19
|
## Props
|
|
19
20
|
|
|
@@ -37,9 +38,10 @@ way so far, because a disclosure list's open state is commonly local UI state, n
|
|
|
37
38
|
|
|
38
39
|
## Accessibility contract (WCAG)
|
|
39
40
|
|
|
40
|
-
- **4.1.2** — each header carries `accessibilityRole="button"` and
|
|
41
|
-
`
|
|
42
|
-
the
|
|
41
|
+
- **4.1.2** — each header carries `accessibilityRole="button"` and flat `aria-expanded` /
|
|
42
|
+
`aria-disabled`, so a screen reader announces the disclosure state the visual chevron also shows.
|
|
43
|
+
Flat, never `accessibilityState={{…}}`: react-native-web discards the object form — see
|
|
44
|
+
`docs/PLATFORM-A11Y-PROPS.md`.
|
|
43
45
|
- **2.5.x target size** — every size reaches ≥ 44 dp: `sm`'s 40 dp header grows via `hitSlop`;
|
|
44
46
|
`md`/`lg` are already ≥ 44 dp.
|
|
45
47
|
- **1.4.3** — the title is `fg.default`, measured ≥ 4.5:1 against the canvas AND against its own
|
|
@@ -52,19 +54,36 @@ way so far, because a disclosure list's open state is commonly local UI state, n
|
|
|
52
54
|
- **2.4.7 / 2.4.11** — a visible focus ring (`border.focus`) appears on keyboard/AT focus, a small
|
|
53
55
|
gap outside the header on the canvas — same idiom as `Button`/`Checkbox`/`Input`/`Textarea`.
|
|
54
56
|
- **2.3.3** — the chevron's 180° rotation is one `Animated.Value` driven by `expanded`. Under
|
|
55
|
-
reduced motion it is snapped with `setValue` instead of tweened
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
reduced motion it is snapped with `setValue` instead of tweened (verified by spying on
|
|
58
|
+
`Animated.timing` and asserting it is never called) — the same idiom `Tabs`' indicator uses, not a
|
|
59
|
+
`duration: 0` timing (which can still tween through intermediate frames). Expanded content
|
|
60
|
+
fades/slides in on the native driver; collapse unmounts it immediately so heavy subtrees are never
|
|
61
|
+
kept in the tree — or read by a screen reader — while closed.
|
|
58
62
|
|
|
59
|
-
##
|
|
63
|
+
## Motion
|
|
64
|
+
|
|
65
|
+
Everything routes through **`useMotion()`** — no module-local timing constant, no raw `Easing.`
|
|
66
|
+
(`ACCORDION_TIMING` and `CONTENT_EASE_IN` are gone). Both consequences are the point: the content
|
|
67
|
+
reveal and the chevron now pick up the device tier's `durationScale` and the global `MOTION_SCALE` /
|
|
68
|
+
`MOTION_ENABLED` switches, which a module-scope read of `MOTION_DURATION.normal` never could. The
|
|
69
|
+
slide distance is `MOTION_TRANSFORM.offsetY`; reduce-motion is `motion.enabled`, never a second
|
|
70
|
+
`useReducedMotion()` call (`core/motion/MODULE.md` rule 6). Header presses use `usePressState`
|
|
71
|
+
(scale + state-layer overlay).
|
|
72
|
+
|
|
73
|
+
## Why content is not height-animated
|
|
60
74
|
|
|
61
75
|
React Native has no native height transition without a measure-then-animate hack: mount the content
|
|
62
76
|
off-screen, measure it via `onLayout`, then tween an `Animated.Value` from 0 to the measured height.
|
|
63
77
|
That hack is fragile (a resize invalidates the cached measurement, a wrong first frame is visible)
|
|
64
78
|
and is not meaningfully testable under this repo's test renderer, which never runs real layout (see
|
|
65
|
-
`Tabs`' own documented gap for its indicator's `onLayout` dependency).
|
|
66
|
-
|
|
67
|
-
|
|
79
|
+
`Tabs`' own documented gap for its indicator's `onLayout` dependency). Instead, expanded content uses
|
|
80
|
+
a native-driver **opacity + translateY** reveal, and unmounts on collapse without an exit
|
|
81
|
+
tween — no layout measurement, no scroll jank. Mounting is derived from `expanded` rather than
|
|
82
|
+
gated on an animation callback: a tween that is interrupted, or never runs, must never be able to
|
|
83
|
+
strand collapsed content in the tree. **The missing exit fade is deliberate and load-bearing**:
|
|
84
|
+
`filter-sheet` asserts a closed section is gone on the very next render, synchronously. Reintroducing
|
|
85
|
+
an exit animation here breaks that — `Accordion.motion.test.tsx` pins the synchronous unmount. Sections that start open (`defaultValue`) snap in with no
|
|
86
|
+
enter animation. Under reduced motion, content snaps instantly the same way the chevron does.
|
|
68
87
|
|
|
69
88
|
## Why `disabled` is whole-accordion, not per-item
|
|
70
89
|
|
|
@@ -94,4 +113,10 @@ does not attempt to special-case that; flagged here rather than silently guessed
|
|
|
94
113
|
|
|
95
114
|
## Performance
|
|
96
115
|
|
|
97
|
-
Both `Accordion` and the internal (non-exported) `AccordionRow` are wrapped in `React.memo` (repo-wide re-render audit, 2026-07-17 — see root `CLAUDE.md`); `colors` is `useMemo`'d, and `emitChange`/`toggle` are `useCallback`'d so the parent hands every row the SAME stable `onToggle` function (the row
|
|
116
|
+
Both `Accordion` and the internal (non-exported) `AccordionRow` are wrapped in `React.memo` (repo-wide re-render audit, 2026-07-17 — see root `CLAUDE.md`); `colors` is `useMemo`'d, and `emitChange`/`toggle` are `useCallback`'d so the parent hands every row the SAME stable `onToggle` function (the row calls back with its own `item.value` instead of the parent binding a fresh per-item closure) — without this, `AccordionRow`'s memo would be a no-op. `emitChange` depends on the two `onValueChange` callbacks destructured out of `props`, never on `props` itself: `props` is a fresh object every render, so a raw `[..., props]` dependency (a real regression this module shipped and fixed) recreates `emitChange`/`toggle` — and defeats every row's memo — on every unrelated re-render, even when the caller's own callback didn't change. Regression-guarded in `Accordion.render.test.tsx` (a row's `onPress` reference stays identical across a re-render triggered by an unrelated prop).
|
|
117
|
+
|
|
118
|
+
## Modernization (v1.0.7)
|
|
119
|
+
|
|
120
|
+
- Theme imports decoupled to `theme/hooks`; optional peers (reanimated, gesture-handler, flash-list) load at runtime.
|
|
121
|
+
- List-heavy surfaces use `VirtualList` with device-tier window sizing where applicable.
|
|
122
|
+
- `React.memo` + stable callbacks retained; render-item/key-extractor hoisted per ESLint perf rules.
|
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { memo } from "react";
|
|
12
|
-
import {
|
|
13
|
-
import { useTheme } from "../../theme/
|
|
12
|
+
import { View } from "react-native";
|
|
13
|
+
import { useTheme } from "../../theme/hooks.js";
|
|
14
14
|
import { Button } from "../button/index.js";
|
|
15
15
|
import { Modal } from "../modal/index.js";
|
|
16
|
+
import { Text } from "../text/index.js";
|
|
16
17
|
import { alertDialogActionsStructure, resolveAlertDialogConfirmTone } from "./AlertDialog.variants.js";
|
|
17
18
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
19
|
export const AlertDialog = /*#__PURE__*/memo(function AlertDialog({
|
|
@@ -36,11 +37,11 @@ export const AlertDialog = /*#__PURE__*/memo(function AlertDialog({
|
|
|
36
37
|
title: title,
|
|
37
38
|
testID: testID,
|
|
38
39
|
children: [description !== undefined && /*#__PURE__*/_jsx(Text, {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
variant: "body",
|
|
41
|
+
color: "muted",
|
|
42
|
+
style: {
|
|
42
43
|
marginBottom: theme.space[5]
|
|
43
|
-
}
|
|
44
|
+
},
|
|
44
45
|
children: description
|
|
45
46
|
}), /*#__PURE__*/_jsxs(View, {
|
|
46
47
|
style: alertDialogActionsStructure(theme),
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import { createThemedVariants } from "../../core/style/index.js";
|
|
18
|
+
import { floatingSurfaceStyle } from "../../theme/platform/floatingSurface.native.js";
|
|
18
19
|
/**
|
|
19
20
|
* Maps AlertDialog's own closed `tone` union onto the confirm action's `ButtonTone`. `"default"`
|
|
20
21
|
* resolves to Button's own default tone (`"accent"`) rather than inventing a fourth tone value;
|
|
@@ -41,4 +42,7 @@ export const alertDialogActionsStructure = createThemedVariants(theme => ({
|
|
|
41
42
|
columnGap: theme.space[3]
|
|
42
43
|
}
|
|
43
44
|
}));
|
|
45
|
+
export function alertDialogPanelDepth(theme) {
|
|
46
|
+
return floatingSurfaceStyle(theme, "lg");
|
|
47
|
+
}
|
|
44
48
|
//# sourceMappingURL=AlertDialog.variants.js.map
|
|
@@ -53,8 +53,11 @@ own measurement, added here rather than assumed. What this module is responsible
|
|
|
53
53
|
Button and its label `Text`, so a change to Button's tone mapping is caught here too, without this
|
|
54
54
|
module importing Button's internal `resolveButtonTone` resolver.
|
|
55
55
|
- **Dismissal semantics** — every one of Modal's dismissal paths (backdrop press, Android hardware
|
|
56
|
-
back, iOS VoiceOver escape) still resolves to `onRequestClose`, since
|
|
57
|
-
intercepts it; only the cancel *action* gets the `onCancel` override.
|
|
56
|
+
back, iOS VoiceOver escape, and on web Escape) still resolves to `onRequestClose`, since
|
|
57
|
+
`AlertDialog` never intercepts it; only the cancel *action* gets the `onCancel` override.
|
|
58
|
+
- **2.1.1 keyboard (web only)** — INHERITED whole from `Modal`: Escape, the Tab trap and focus
|
|
59
|
+
restore on the `ModalPortalProvider` branch. This module deliberately contains no keyboard code;
|
|
60
|
+
`__tests__/AlertDialog.keyboard.web.test.tsx` asserts the inheritance rather than duplicating it.
|
|
58
61
|
- **Confirm vs. cancel are never confusable** — the confirm action is always `variant="solid"`
|
|
59
62
|
(filled, high-emphasis) and the cancel action is always `variant="outline"` (unfilled), so the
|
|
60
63
|
destructive/primary choice is never the visually quieter one.
|
|
@@ -79,3 +82,9 @@ own measurement, added here rather than assumed. What this module is responsible
|
|
|
79
82
|
## Performance
|
|
80
83
|
|
|
81
84
|
Wrapped in `React.memo` (repo-wide re-render audit, 2026-07-17 — see root `CLAUDE.md`). No `useCallback`/`useMemo` needed: `cancelPress`/`onConfirm` are forwarded straight through to `Modal`/`Button` as direct prop references, never a freshly-created closure.
|
|
85
|
+
|
|
86
|
+
## Modernization (v1.0.7)
|
|
87
|
+
|
|
88
|
+
- Theme imports decoupled to `theme/hooks`; optional peers (reanimated, gesture-handler, flash-list) load at runtime.
|
|
89
|
+
- List-heavy surfaces use `VirtualList` with device-tier window sizing where applicable.
|
|
90
|
+
- `React.memo` + stable callbacks retained; render-item/key-extractor hoisted per ESLint perf rules.
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* AppBar — a themed top bar for screen headers: a required title, an optional subtitle, an optional
|
|
5
|
+
* back affordance, and optional leading/trailing icon actions. Every action is a library `Button`
|
|
6
|
+
* (icon-only, ghost) driven by a closed `IconName` — never a hand-rolled `Pressable` or a consumer
|
|
7
|
+
* `ReactNode` slot that would bypass the API contract.
|
|
8
|
+
*
|
|
9
|
+
* No `accessibilityRole` on the bar itself: like `Card`, this is a plain grouping container. The
|
|
10
|
+
* title carries `accessibilityRole="header"` at level 1 (WCAG 1.3.1 / 2.4.6 — it is the screen's
|
|
11
|
+
* heading, the one the rest of the screen's outline nests under, and
|
|
12
|
+
* rotor heading navigation is a primary way screen-reader users move around an app); the subtitle
|
|
13
|
+
* reads as its own `Text`, and each composed `Button` carries its own role/state.
|
|
14
|
+
*
|
|
15
|
+
* Its only motion is `useTitleCrossfade` below — opacity on the title box, nothing else. Elevation
|
|
16
|
+
* on scroll would need a public scroll-offset prop, which the API contract does not justify here.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { memo, useEffect, useMemo, useRef, useState } from "react";
|
|
20
|
+
import { Animated, Text, View } from "react-native";
|
|
21
|
+
import { HEADING_LEVEL, HeadingText } from "../../core/heading/index.js";
|
|
22
|
+
import { useAnimatedValue, useMotion } from "../../core/motion/index.js";
|
|
23
|
+
import { useTheme } from "../../theme/hooks.js";
|
|
24
|
+
import { floatingBackground, floatingSurfaceStyle } from "../../theme/platform/index.js";
|
|
25
|
+
import { Button } from "../button/index.js";
|
|
26
|
+
import { appBarActionsRowStructure, appBarSideStructure, appBarSideTrailingStructure, appBarStructure, appBarTitleBoxStructure, resolveAppBarColors } from "./AppBar.variants.js";
|
|
27
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
28
|
+
const BACK_LABEL = "Back";
|
|
29
|
+
function normalizeTrailingActions(trailing) {
|
|
30
|
+
if (trailing === undefined) return [];
|
|
31
|
+
if (Array.isArray(trailing)) return trailing;
|
|
32
|
+
return [trailing];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Dissolves the title box when the title or subtitle changes: fade out, swap the text, fade back
|
|
36
|
+
* in. Opacity only, native driver. First mount never animates — the navigator already animates a
|
|
37
|
+
* header appearing, and a second fade there reads as a stutter.
|
|
38
|
+
*/
|
|
39
|
+
function useTitleCrossfade(title, subtitle) {
|
|
40
|
+
const motion = useMotion();
|
|
41
|
+
const opacity = useAnimatedValue(1);
|
|
42
|
+
const running = useRef(null);
|
|
43
|
+
const fadeInPending = useRef(false);
|
|
44
|
+
const [displayed, setDisplayed] = useState({
|
|
45
|
+
title,
|
|
46
|
+
subtitle
|
|
47
|
+
});
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (displayed.title === title && displayed.subtitle === subtitle) {
|
|
50
|
+
if (!fadeInPending.current) return;
|
|
51
|
+
fadeInPending.current = false;
|
|
52
|
+
running.current?.stop();
|
|
53
|
+
if (!motion.enabled) {
|
|
54
|
+
opacity.setValue(1);
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
running.current = motion.timing(opacity, 1, {
|
|
58
|
+
duration: "fast",
|
|
59
|
+
easing: "decelerate"
|
|
60
|
+
});
|
|
61
|
+
running.current.start();
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
running.current?.stop();
|
|
65
|
+
if (!motion.enabled) {
|
|
66
|
+
opacity.setValue(1);
|
|
67
|
+
setDisplayed({
|
|
68
|
+
title,
|
|
69
|
+
subtitle
|
|
70
|
+
});
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
running.current = motion.timing(opacity, 0, {
|
|
74
|
+
duration: "fast",
|
|
75
|
+
easing: "accelerate"
|
|
76
|
+
});
|
|
77
|
+
running.current.start(({
|
|
78
|
+
finished
|
|
79
|
+
}) => {
|
|
80
|
+
if (!finished) return;
|
|
81
|
+
fadeInPending.current = true;
|
|
82
|
+
setDisplayed({
|
|
83
|
+
title,
|
|
84
|
+
subtitle
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
}, [title, subtitle, displayed, motion, opacity]);
|
|
88
|
+
useEffect(() => () => running.current?.stop(), []);
|
|
89
|
+
const stale = displayed.title !== title || displayed.subtitle !== subtitle;
|
|
90
|
+
return {
|
|
91
|
+
displayed,
|
|
92
|
+
opacity,
|
|
93
|
+
stale
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
export const AppBar = /*#__PURE__*/memo(function AppBar({
|
|
97
|
+
title,
|
|
98
|
+
subtitle,
|
|
99
|
+
onBack,
|
|
100
|
+
leading,
|
|
101
|
+
trailing,
|
|
102
|
+
style,
|
|
103
|
+
testID
|
|
104
|
+
}) {
|
|
105
|
+
const theme = useTheme();
|
|
106
|
+
const colors = resolveAppBarColors(theme.colors);
|
|
107
|
+
const trailingActions = useMemo(() => normalizeTrailingActions(trailing), [trailing]);
|
|
108
|
+
const {
|
|
109
|
+
displayed,
|
|
110
|
+
opacity,
|
|
111
|
+
stale
|
|
112
|
+
} = useTitleCrossfade(title, subtitle);
|
|
113
|
+
const titleBoxStyle = useMemo(() => [appBarTitleBoxStructure(theme), {
|
|
114
|
+
opacity
|
|
115
|
+
}], [theme, opacity]);
|
|
116
|
+
const barDepth = useMemo(() => ({
|
|
117
|
+
backgroundColor: floatingBackground(theme, "sm"),
|
|
118
|
+
...floatingSurfaceStyle(theme, "sm")
|
|
119
|
+
}), [theme]);
|
|
120
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
121
|
+
testID: testID,
|
|
122
|
+
style: [appBarStructure(theme), barDepth, style],
|
|
123
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
124
|
+
style: appBarSideStructure(theme),
|
|
125
|
+
children: onBack !== undefined ? /*#__PURE__*/_jsx(Button, {
|
|
126
|
+
icon: "arrow-left",
|
|
127
|
+
accessibilityLabel: BACK_LABEL,
|
|
128
|
+
variant: "ghost",
|
|
129
|
+
tone: "neutral",
|
|
130
|
+
onPress: onBack,
|
|
131
|
+
testID: testID === undefined ? undefined : `${testID}-back`
|
|
132
|
+
}) : leading !== undefined ? /*#__PURE__*/_jsx(Button, {
|
|
133
|
+
icon: leading.icon,
|
|
134
|
+
accessibilityLabel: leading.accessibilityLabel,
|
|
135
|
+
variant: "ghost",
|
|
136
|
+
tone: "neutral",
|
|
137
|
+
onPress: leading.onPress,
|
|
138
|
+
testID: testID === undefined ? undefined : `${testID}-leading`
|
|
139
|
+
}) : null
|
|
140
|
+
}), /*#__PURE__*/_jsxs(Animated.View, {
|
|
141
|
+
style: titleBoxStyle
|
|
142
|
+
// The outgoing title is still mounted (and still an accessibility element) while it fades,
|
|
143
|
+
// so without this a screen reader can announce the title of the screen just left.
|
|
144
|
+
,
|
|
145
|
+
accessibilityElementsHidden: stale,
|
|
146
|
+
importantForAccessibility: stale ? "no-hide-descendants" : "auto",
|
|
147
|
+
testID: testID === undefined ? undefined : `${testID}-title`,
|
|
148
|
+
children: [/*#__PURE__*/_jsx(HeadingText, {
|
|
149
|
+
accessibilityRole: "header",
|
|
150
|
+
"aria-level": HEADING_LEVEL.screen,
|
|
151
|
+
numberOfLines: 1,
|
|
152
|
+
style: [theme.fontStyleForWeight(theme.fontWeights.bold), {
|
|
153
|
+
fontSize: theme.fontSizes.lg,
|
|
154
|
+
color: colors.title
|
|
155
|
+
}],
|
|
156
|
+
children: displayed.title
|
|
157
|
+
}), displayed.subtitle !== undefined && /*#__PURE__*/_jsx(Text, {
|
|
158
|
+
numberOfLines: 1,
|
|
159
|
+
style: [theme.fontStyleForWeight(theme.fontWeights.regular), {
|
|
160
|
+
fontSize: theme.fontSizes.xs,
|
|
161
|
+
color: colors.subtitle
|
|
162
|
+
}],
|
|
163
|
+
children: displayed.subtitle
|
|
164
|
+
})]
|
|
165
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
166
|
+
style: appBarSideTrailingStructure(theme),
|
|
167
|
+
children: trailingActions.length > 0 ? /*#__PURE__*/_jsx(View, {
|
|
168
|
+
style: appBarActionsRowStructure(theme),
|
|
169
|
+
children: trailingActions.map((action, index) => /*#__PURE__*/_jsx(Button, {
|
|
170
|
+
icon: action.icon,
|
|
171
|
+
accessibilityLabel: action.accessibilityLabel,
|
|
172
|
+
variant: "ghost",
|
|
173
|
+
tone: "neutral",
|
|
174
|
+
onPress: action.onPress,
|
|
175
|
+
testID: testID === undefined ? undefined : `${testID}-trailing-${index}`
|
|
176
|
+
}, `${action.icon}-${action.accessibilityLabel}-${index}`))
|
|
177
|
+
}) : null
|
|
178
|
+
})]
|
|
179
|
+
});
|
|
180
|
+
});
|
|
181
|
+
//# sourceMappingURL=AppBar.js.map
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* AppBar's style + colour resolution — same split as `Button.variants` / `Badge.variants`:
|
|
5
|
+
* - STRUCTURE (row layout, title box flex, side min-width for touch targets) lives in the themed
|
|
6
|
+
* `appBarStructure` resolver, static per (brand, mode), registered once via `StyleSheet.create`.
|
|
7
|
+
* - COLOUR is resolved from the theme's ROLE colours by `resolveAppBarColors`, never a raw ramp
|
|
8
|
+
* and never a hardcoded hex.
|
|
9
|
+
*
|
|
10
|
+
* Free of React and lucide, so the WCAG + behaviour tests import this directly (mocking only
|
|
11
|
+
* `react-native`'s `StyleSheet`, as `core/style` and every sibling module's tests do).
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
import { createThemedVariants } from "../../core/style/index.js";
|
|
15
|
+
|
|
16
|
+
/** Matches `Button`'s `MIN_TOUCH_TARGET` — each side slot reserves at least 44dp for icon actions. */
|
|
17
|
+
export const APP_BAR_SIDE_MIN_WIDTH = 44;
|
|
18
|
+
/**
|
|
19
|
+
* Maps AppBar onto the theme's role colours. No `tone`/`color` prop to widen — every colour this
|
|
20
|
+
* bar can show is one of these role lookups (same reasoning as `Divider`/`Card`).
|
|
21
|
+
*/
|
|
22
|
+
export function resolveAppBarColors(colors) {
|
|
23
|
+
return {
|
|
24
|
+
background: colors.bg.surface,
|
|
25
|
+
border: colors.border.default,
|
|
26
|
+
title: colors.fg.default,
|
|
27
|
+
subtitle: colors.fg.muted
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Structural styles only — the header row, title box, and side slots. No colours (resolved
|
|
33
|
+
* separately, applied inline over this), so these compile once per theme identity via the
|
|
34
|
+
* `WeakMap`-cached themed resolver and never rebuilds per render.
|
|
35
|
+
*/
|
|
36
|
+
export const appBarStructure = createThemedVariants(theme => ({
|
|
37
|
+
base: {
|
|
38
|
+
flexDirection: "row",
|
|
39
|
+
alignItems: "center",
|
|
40
|
+
paddingHorizontal: theme.space[2],
|
|
41
|
+
paddingVertical: theme.space[2],
|
|
42
|
+
columnGap: theme.space[1]
|
|
43
|
+
}
|
|
44
|
+
}));
|
|
45
|
+
export const appBarSideStructure = createThemedVariants(_theme => ({
|
|
46
|
+
base: {
|
|
47
|
+
minWidth: APP_BAR_SIDE_MIN_WIDTH,
|
|
48
|
+
justifyContent: "center"
|
|
49
|
+
}
|
|
50
|
+
}));
|
|
51
|
+
export const appBarSideTrailingStructure = createThemedVariants(_theme => ({
|
|
52
|
+
base: {
|
|
53
|
+
minWidth: APP_BAR_SIDE_MIN_WIDTH,
|
|
54
|
+
justifyContent: "center",
|
|
55
|
+
alignItems: "flex-end"
|
|
56
|
+
}
|
|
57
|
+
}));
|
|
58
|
+
export const appBarTitleBoxStructure = createThemedVariants(theme => ({
|
|
59
|
+
base: {
|
|
60
|
+
flex: 1,
|
|
61
|
+
paddingHorizontal: theme.space[1]
|
|
62
|
+
}
|
|
63
|
+
}));
|
|
64
|
+
export const appBarActionsRowStructure = createThemedVariants(theme => ({
|
|
65
|
+
base: {
|
|
66
|
+
flexDirection: "row",
|
|
67
|
+
alignItems: "center",
|
|
68
|
+
columnGap: theme.space[1]
|
|
69
|
+
}
|
|
70
|
+
}));
|
|
71
|
+
//# sourceMappingURL=AppBar.variants.js.map
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# app-bar/ — a themed top bar for screen headers
|
|
2
|
+
|
|
3
|
+
`AppBar` groups a required title, an optional subtitle, an optional back affordance, and optional
|
|
4
|
+
leading/trailing icon actions into one header row. Every action is a library `Button` (icon-only,
|
|
5
|
+
ghost) driven by a closed `IconName` — never a consumer `ReactNode` slot.
|
|
6
|
+
|
|
7
|
+
## Files
|
|
8
|
+
|
|
9
|
+
| File | Role |
|
|
10
|
+
|------|------|
|
|
11
|
+
| `AppBar.tsx` | The component. Composes ghost `Button`s for back/leading/trailing actions; `style` last. |
|
|
12
|
+
| `AppBar.variants.ts` | Pure resolver (`resolveAppBarColors`) + themed structural resolvers. No React, no lucide. |
|
|
13
|
+
| `index.ts` | Public surface: `AppBar`, `AppBarProps`, `AppBarAction`, `IconName`. |
|
|
14
|
+
| `__tests__/AppBar.test.ts` | Pure: WCAG 1.4.3 on the title, colour-mapping contract, side min-width floor. |
|
|
15
|
+
| `__tests__/AppBar.render.test.tsx` | Render: title/subtitle, heading role + level, back press, trailing action press, title crossfade (including the outgoing title leaving the accessibility tree), consumer `style` last. |
|
|
16
|
+
| `__tests__/AppBar.dom.test.tsx` | Real DOM (`jest.web.config.js`): the title renders a real `<h1>`. |
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
| Prop | Type | Default | Notes |
|
|
21
|
+
|------|------|---------|-------|
|
|
22
|
+
| `title` | `string` | — | Required. Single-line, bold, `fg.default`. |
|
|
23
|
+
| `subtitle` | `string` | — | Optional. Single-line, `fg.muted`. |
|
|
24
|
+
| `onBack` | `() => void` | — | Renders `arrow-left` ghost button labelled "Back". |
|
|
25
|
+
| `leading` | `AppBarAction` | — | Custom leading action when `onBack` is absent. |
|
|
26
|
+
| `trailing` | `AppBarAction \| AppBarAction[]` | — | One or more trailing icon actions. |
|
|
27
|
+
| `style` | `LayoutStyle` | — | Layout-only, outermost, applied exactly once, last. |
|
|
28
|
+
| `testID` | `string` | — | Forwarded to the outermost `View`. |
|
|
29
|
+
|
|
30
|
+
## Accessibility contract (WCAG)
|
|
31
|
+
|
|
32
|
+
- **1.3.1 / 2.4.6 — the title is a level-1 heading.** It carries `accessibilityRole="header"` and
|
|
33
|
+
`aria-level={1}` (`HEADING_LEVEL.screen`, `core/heading`) — without a level, `react-native-web`
|
|
34
|
+
still renders `<h1>` by default, but every OTHER heading on the screen (`Section`, `EmptyState`,
|
|
35
|
+
`DataTable` headers) would collapse to `<h1>` too. Level 1 is deliberate: the title is the screen's
|
|
36
|
+
own heading, the one the rest of the screen's outline nests under. AppBar + `Section` are what
|
|
37
|
+
almost every screen is built from, so without it rotor heading navigation — a primary way
|
|
38
|
+
screen-reader users move around an app — finds nothing on the screen at all. The subtitle stays
|
|
39
|
+
plain text: it is supporting copy, not a second heading level.
|
|
40
|
+
- **No `accessibilityRole` on the bar itself** — like `Card`, a plain grouping container; each
|
|
41
|
+
composed `Button` carries its own role/state.
|
|
42
|
+
- **The outgoing title is hidden while it crossfades.** The old text stays mounted for the whole
|
|
43
|
+
fade-out, so the title box carries `accessibilityElementsHidden` +
|
|
44
|
+
`importantForAccessibility="no-hide-descendants"` (both props, the idiom `Textarea` uses) for
|
|
45
|
+
exactly that window — otherwise a reader can announce the heading of the screen just left. Under
|
|
46
|
+
reduced motion there is no fade, so it is never hidden.
|
|
47
|
+
- **4.1.3** — n/a: a title change is a heading change, not a status message, and the navigator
|
|
48
|
+
already announces the screen change. Nothing here calls `useAnnounce` (that would double-speak).
|
|
49
|
+
|
|
50
|
+
## Motion
|
|
51
|
+
|
|
52
|
+
One animation only: a **title crossfade**. When `title` or `subtitle` changes the title box fades
|
|
53
|
+
out, swaps the text, and fades back in — opacity only, native driver, all timing resolved through
|
|
54
|
+
`useMotion()` (`fast` + `accelerate`/`decelerate`). The displayed text therefore lags the prop by
|
|
55
|
+
one fade-out, so the *old* title dissolves rather than the new one flashing.
|
|
56
|
+
|
|
57
|
+
- **No animation on first mount** — the navigator already animates a header appearing.
|
|
58
|
+
- **Reduce-motion (WCAG 2.3.3)** snaps opacity with `setValue` and swaps the text immediately.
|
|
59
|
+
- In-flight animations are stopped on effect re-run and on unmount.
|
|
60
|
+
- Elevation-on-scroll was considered and rejected: it needs a public scroll-offset prop, and the
|
|
61
|
+
API contract does not widen props without cause.
|
|
62
|
+
- The title box carries `testID={`${testID}-title`}` for tests.
|
|
63
|
+
|
|
64
|
+
## Performance
|
|
65
|
+
|
|
66
|
+
Wrapped in `React.memo`. Trailing actions are normalised through `useMemo` so a stable array
|
|
67
|
+
reference is not required from the caller. The title box's style array is `useMemo`'d so the
|
|
68
|
+
`Animated.View` is not handed a fresh array each render.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Public surface of `pixelize-native-library/app-bar`. Value exports and type exports are split for
|
|
5
|
+
* `verbatimModuleSyntax`. The style/colour resolvers stay internal — a consumer configures an AppBar
|
|
6
|
+
* through its props, never by importing its internals.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export { AppBar } from "./AppBar.js";
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,32 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* Avatar —
|
|
5
|
-
*
|
|
4
|
+
* Avatar — an identity glyph: a remote image, initials, or (with neither) a plain placeholder,
|
|
5
|
+
* circular or rounded. No press handling, no loading spinner — one of the simplest modules in the
|
|
6
6
|
* library, which is exactly why its accessibility default differs from every sibling: an avatar
|
|
7
7
|
* usually sits beside a visible name, so `accessibilityLabel` is optional, not a required trap (see
|
|
8
8
|
* `Avatar.variants.ts` → `resolveAvatarAccessibility`).
|
|
9
|
+
*
|
|
10
|
+
* The image is `expo-image`, not RN's `Image`, for one reason that matters on a recycled list: RN's
|
|
11
|
+
* `Image` keeps painting the old bitmap until the new URI resolves, so a FlashList row hands the
|
|
12
|
+
* next row the previous subject's face. `recyclingKey` blanks it on the spot.
|
|
13
|
+
*
|
|
14
|
+
* The image's fade-in is expo-image's own native `transition`, timed from the global motion system —
|
|
15
|
+
* deliberately not an `Animated.Value`. An avatar renders per list row, so it must add no JS-driven
|
|
16
|
+
* animation, no mount animation and no loop; the fade is load-triggered and runs entirely natively.
|
|
9
17
|
*/
|
|
10
18
|
|
|
11
|
-
import { memo } from "react";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
19
|
+
import { memo, useMemo } from "react";
|
|
20
|
+
import { StyleSheet, Text, View } from "react-native";
|
|
21
|
+
import { MediaImage } from "../../core/media/index.js";
|
|
22
|
+
import { Icon } from "../../core/icon/index.js";
|
|
23
|
+
import { useMotion } from "../../core/motion/index.js";
|
|
24
|
+
import { useTheme } from "../../theme/hooks.js";
|
|
25
|
+
import { AVATAR_SIZES, avatarStructure, resolveAvatarAccessibility, resolveAvatarColors, resolveAvatarIdentityColors } from "./Avatar.variants.js";
|
|
15
26
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
27
|
export const Avatar = /*#__PURE__*/memo(function Avatar({
|
|
17
28
|
size = "md",
|
|
29
|
+
shape = "circle",
|
|
18
30
|
source,
|
|
19
31
|
initials,
|
|
32
|
+
identity,
|
|
33
|
+
recyclingKey,
|
|
20
34
|
accessibilityLabel,
|
|
21
35
|
style,
|
|
22
36
|
testID
|
|
23
37
|
}) {
|
|
24
38
|
const theme = useTheme();
|
|
39
|
+
const motion = useMotion();
|
|
25
40
|
const spec = AVATAR_SIZES[size];
|
|
26
|
-
const colors = resolveAvatarColors(theme.colors);
|
|
27
41
|
const a11y = resolveAvatarAccessibility({
|
|
28
42
|
accessibilityLabel
|
|
29
43
|
});
|
|
44
|
+
const colors = useMemo(() => identity === undefined || identity.length === 0 ? resolveAvatarColors(theme.colors) : resolveAvatarIdentityColors(theme.palette, identity), [theme.colors, theme.palette, identity]);
|
|
45
|
+
const rootStyle = useMemo(() => [avatarStructure(theme, {
|
|
46
|
+
size,
|
|
47
|
+
shape
|
|
48
|
+
}), {
|
|
49
|
+
backgroundColor: colors.containerBg
|
|
50
|
+
}, style], [theme, size, shape, colors, style]);
|
|
51
|
+
const initialsStyle = useMemo(() => [theme.fontStyleForWeight(theme.fontWeights.semibold), {
|
|
52
|
+
fontSize: spec.fontSize,
|
|
53
|
+
color: colors.initialsText
|
|
54
|
+
}], [theme, spec, colors]);
|
|
55
|
+
const transition = motion.enabled ? motion.duration("fast") : 0;
|
|
30
56
|
return /*#__PURE__*/_jsx(View, {
|
|
31
57
|
testID: testID,
|
|
32
58
|
accessible: a11y.accessible,
|
|
@@ -34,24 +60,24 @@ export const Avatar = /*#__PURE__*/memo(function Avatar({
|
|
|
34
60
|
accessibilityLabel: a11y.accessibilityLabel,
|
|
35
61
|
accessibilityElementsHidden: a11y.accessibilityElementsHidden,
|
|
36
62
|
importantForAccessibility: a11y.importantForAccessibility,
|
|
37
|
-
style:
|
|
38
|
-
|
|
39
|
-
}), {
|
|
40
|
-
backgroundColor: colors.containerBg
|
|
41
|
-
}, style],
|
|
42
|
-
children: source ? /*#__PURE__*/_jsx(Image, {
|
|
63
|
+
style: rootStyle,
|
|
64
|
+
children: source ? /*#__PURE__*/_jsx(MediaImage, {
|
|
43
65
|
testID: testID === undefined ? undefined : `${testID}-image`,
|
|
44
66
|
source: source,
|
|
45
|
-
|
|
67
|
+
contentFit: "cover",
|
|
68
|
+
transition: transition,
|
|
69
|
+
recyclingKey: recyclingKey ?? source.uri,
|
|
46
70
|
style: StyleSheet.absoluteFill
|
|
47
71
|
}) : initials ? /*#__PURE__*/_jsx(Text, {
|
|
48
72
|
numberOfLines: 1,
|
|
49
|
-
style:
|
|
50
|
-
fontSize: spec.fontSize,
|
|
51
|
-
color: colors.initialsText
|
|
52
|
-
}],
|
|
73
|
+
style: initialsStyle,
|
|
53
74
|
children: initials.slice(0, 2)
|
|
54
|
-
}) :
|
|
75
|
+
}) : /*#__PURE__*/_jsx(Icon, {
|
|
76
|
+
name: "user",
|
|
77
|
+
size: Math.round(spec.box * 0.45),
|
|
78
|
+
color: colors.initialsText,
|
|
79
|
+
strokeWidth: 2
|
|
80
|
+
})
|
|
55
81
|
});
|
|
56
82
|
});
|
|
57
83
|
//# sourceMappingURL=Avatar.js.map
|