@ecoma-io/loom 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -9
- package/dist/a11y.js +2 -2
- package/dist/index.js +73 -6
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/CalendarDate.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/CalendarDate.js.map +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/calendars/GregorianCalendar.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/calendars/GregorianCalendar.js.map +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/conversion.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/conversion.js.map +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/manipulation.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/manipulation.js.map +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/queries.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/queries.js.map +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/string.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/string.js.map +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/utils.js +1 -1
- package/dist/node_modules/.pnpm/{@internationalized_date@3.12.3 → @internationalized_date@3.12.4}/node_modules/@internationalized/date/dist/private/utils.js.map +1 -1
- package/dist/packages/blocks/app-header/src/AppHeader.js.map +1 -1
- package/dist/packages/blocks/app-header/src/AppHeader.vue.d.ts.map +1 -1
- package/dist/packages/blocks/app-header/src/AppHeader.vue_vue_type_script_setup_true_lang.js +1 -0
- package/dist/packages/blocks/app-header/src/AppHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/blocks/desktop-app-shell/src/DesktopAppShell.vue.d.ts +3 -3
- package/dist/packages/blocks/empty-state/src/EmptyState.js.map +1 -1
- package/dist/packages/blocks/empty-state/src/EmptyState.vue.d.ts.map +1 -1
- package/dist/packages/blocks/empty-state/src/EmptyState.vue_vue_type_script_setup_true_lang.js +5 -6
- package/dist/packages/blocks/empty-state/src/EmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/blocks/error-summary/src/ErrorSummary.js +7 -0
- package/dist/packages/blocks/error-summary/src/ErrorSummary.js.map +1 -0
- package/dist/packages/blocks/error-summary/src/ErrorSummary.vue.d.ts +31 -0
- package/dist/packages/blocks/error-summary/src/ErrorSummary.vue_vue_type_script_setup_true_lang.js +90 -0
- package/dist/packages/blocks/error-summary/src/ErrorSummary.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/blocks/error-summary/src/index.d.ts +4 -0
- package/dist/packages/blocks/error-summary/src/index.js +3 -0
- package/dist/packages/blocks/metric-card/src/MetricCard.js.map +1 -1
- package/dist/packages/blocks/metric-card/src/MetricCard.vue.d.ts +22 -4
- package/dist/packages/blocks/metric-card/src/MetricCard.vue.d.ts.map +1 -1
- package/dist/packages/blocks/metric-card/src/MetricCard.vue_vue_type_script_setup_true_lang.js +38 -15
- package/dist/packages/blocks/metric-card/src/MetricCard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/blocks/title-bar/src/TitleBar.vue.d.ts +3 -3
- package/dist/packages/blocks/toast-stack/src/ToastStack.vue.d.ts +3 -3
- package/dist/packages/composition/scroll-reel/src/ScrollReel.js +2 -2
- package/dist/packages/composition/scroll-reel/src/ScrollReel.js.map +1 -1
- package/dist/packages/composition/scroll-reel/src/ScrollReel.vue.d.ts +26 -0
- package/dist/packages/composition/scroll-reel/src/ScrollReel.vue_vue_type_script_setup_true_lang.js +28 -7
- package/dist/packages/composition/scroll-reel/src/ScrollReel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/composition/scroll-reel/src/index.d.ts +2 -1
- package/dist/packages/composition/scroll-reel/src/index.js +2 -1
- package/dist/packages/composition/sidebar/src/Sidebar.js.map +1 -1
- package/dist/packages/composition/sidebar/src/Sidebar.vue.d.ts +4 -0
- package/dist/packages/composition/sidebar/src/Sidebar.vue.d.ts.map +1 -1
- package/dist/packages/composition/sidebar/src/Sidebar.vue_vue_type_script_setup_true_lang.js +13 -4
- package/dist/packages/composition/sidebar/src/Sidebar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/composition/split/src/Split.js.map +1 -1
- package/dist/packages/composition/split/src/Split.vue.d.ts +11 -12
- package/dist/packages/composition/split/src/Split.vue.d.ts.map +1 -1
- package/dist/packages/composition/split/src/Split.vue_vue_type_script_setup_true_lang.js +15 -5
- package/dist/packages/composition/split/src/Split.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/core/src/a11y-scope.d.ts +71 -5
- package/dist/packages/core/src/a11y-scope.d.ts.map +1 -1
- package/dist/packages/core/src/a11y-scope.js +126 -6
- package/dist/packages/core/src/a11y-scope.js.map +1 -1
- package/dist/packages/core/src/index.d.ts +2 -2
- package/dist/packages/core/src/index.d.ts.map +1 -1
- package/dist/packages/core/src/index.js +3 -3
- package/dist/packages/core/src/motion.d.ts +13 -0
- package/dist/packages/core/src/motion.d.ts.map +1 -1
- package/dist/packages/core/src/motion.js +20 -13
- package/dist/packages/core/src/motion.js.map +1 -1
- package/dist/packages/core/src/theme.d.ts +9 -0
- package/dist/packages/core/src/theme.d.ts.map +1 -1
- package/dist/packages/core/src/theme.js +36 -10
- package/dist/packages/core/src/theme.js.map +1 -1
- package/dist/packages/labels/src/ancestor-disabled.d.ts +5 -1
- package/dist/packages/labels/src/ancestor-disabled.d.ts.map +1 -1
- package/dist/packages/labels/src/ancestor-disabled.js +5 -1
- package/dist/packages/labels/src/ancestor-disabled.js.map +1 -1
- package/dist/packages/labels/src/component-shapes.d.ts +236 -1
- package/dist/packages/labels/src/component-shapes.d.ts.map +1 -1
- package/dist/packages/labels/src/date-labels.d.ts +86 -7
- package/dist/packages/labels/src/date-labels.d.ts.map +1 -1
- package/dist/packages/labels/src/date-labels.js +58 -9
- package/dist/packages/labels/src/date-labels.js.map +1 -1
- package/dist/packages/labels/src/field-context.d.ts +2 -2
- package/dist/packages/labels/src/field-context.js.map +1 -1
- package/dist/packages/labels/src/index.d.ts +3 -3
- package/dist/packages/labels/src/index.d.ts.map +1 -1
- package/dist/packages/labels/src/index.js +2 -2
- package/dist/packages/labels/src/label-registry.d.ts +15 -1
- package/dist/packages/labels/src/label-registry.d.ts.map +1 -1
- package/dist/packages/layouts/dashboard/src/Dashboard.js.map +1 -1
- package/dist/packages/layouts/dashboard/src/Dashboard.vue.d.ts +4 -4
- package/dist/packages/layouts/dashboard/src/Dashboard.vue.d.ts.map +1 -1
- package/dist/packages/layouts/dashboard/src/Dashboard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/layouts/reading/src/Reading.js.map +1 -1
- package/dist/packages/layouts/reading/src/Reading.vue.d.ts +16 -15
- package/dist/packages/layouts/reading/src/Reading.vue.d.ts.map +1 -1
- package/dist/packages/layouts/reading/src/Reading.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/layouts/reading/src/index.d.ts +1 -0
- package/dist/packages/layouts/reading/src/index.d.ts.map +1 -1
- package/dist/packages/layouts/settings/src/Settings.js.map +1 -1
- package/dist/packages/layouts/settings/src/Settings.vue.d.ts +3 -3
- package/dist/packages/layouts/settings/src/Settings.vue.d.ts.map +1 -1
- package/dist/packages/layouts/settings/src/Settings.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/layouts/split-layout/src/SplitLayout.js.map +1 -1
- package/dist/packages/layouts/split-layout/src/SplitLayout.vue.d.ts +4 -6
- package/dist/packages/layouts/split-layout/src/SplitLayout.vue.d.ts.map +1 -1
- package/dist/packages/layouts/split-layout/src/SplitLayout.vue_vue_type_script_setup_true_lang.js +20 -5
- package/dist/packages/layouts/split-layout/src/SplitLayout.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/layouts/split-layout/src/index.d.ts +1 -1
- package/dist/packages/layouts/split-layout/src/index.d.ts.map +1 -1
- package/dist/packages/loom/src/a11y.d.ts +1 -1
- package/dist/packages/loom/src/index.d.ts +217 -174
- package/dist/packages/loom/src/theme.d.ts +3 -0
- package/dist/packages/primitives/alert/src/Alert.js +7 -0
- package/dist/packages/primitives/alert/src/Alert.js.map +1 -0
- package/dist/packages/primitives/alert/src/Alert.vue.d.ts +91 -0
- package/dist/packages/primitives/alert/src/Alert.vue_vue_type_script_setup_true_lang.js +130 -0
- package/dist/packages/primitives/alert/src/Alert.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/alert/src/index.d.ts +4 -0
- package/dist/packages/primitives/alert/src/index.js +3 -0
- package/dist/packages/primitives/alert-dialog/src/AlertDialog.js.map +1 -1
- package/dist/packages/primitives/alert-dialog/src/AlertDialog.vue.d.ts +2 -2
- package/dist/packages/primitives/alert-dialog/src/AlertDialog.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/packages/primitives/alert-dialog/src/AlertDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/alert-dialog/src/index.d.ts +1 -1
- package/dist/packages/primitives/avatar/src/Avatar.js.map +1 -1
- package/dist/packages/primitives/avatar/src/Avatar.vue.d.ts +2 -2
- package/dist/packages/primitives/avatar/src/Avatar.vue.d.ts.map +1 -1
- package/dist/packages/primitives/avatar/src/Avatar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/avatar/src/Avatar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/avatar-group/src/AvatarGroup.vue.d.ts +3 -3
- package/dist/packages/primitives/avatar-group/src/index.d.ts +1 -1
- package/dist/packages/primitives/badge/src/Badge.js.map +1 -1
- package/dist/packages/primitives/badge/src/Badge.vue.d.ts.map +1 -1
- package/dist/packages/primitives/badge/src/Badge.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/badge/src/Badge.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/breadcrumb/src/Breadcrumb.js +2 -2
- package/dist/packages/primitives/breadcrumb/src/Breadcrumb.js.map +1 -1
- package/dist/packages/primitives/breadcrumb/src/Breadcrumb.vue.d.ts +28 -0
- package/dist/packages/primitives/breadcrumb/src/Breadcrumb.vue_vue_type_script_setup_true_lang.js +16 -5
- package/dist/packages/primitives/breadcrumb/src/Breadcrumb.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/breadcrumb/src/index.d.ts +2 -1
- package/dist/packages/primitives/breadcrumb/src/index.js +2 -1
- package/dist/packages/primitives/button/src/Button.js.map +1 -1
- package/dist/packages/primitives/button/src/Button.vue.d.ts.map +1 -1
- package/dist/packages/primitives/button/src/Button.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/button/src/index.js +2 -2
- package/dist/packages/primitives/calendar/src/Calendar.js +7 -0
- package/dist/packages/primitives/calendar/src/Calendar.js.map +1 -0
- package/dist/packages/primitives/calendar/src/Calendar.vue.d.ts +95 -0
- package/dist/packages/primitives/calendar/src/Calendar.vue_vue_type_script_setup_true_lang.js +204 -0
- package/dist/packages/primitives/calendar/src/Calendar.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/calendar/src/index.d.ts +3 -0
- package/dist/packages/primitives/calendar/src/index.js +3 -0
- package/dist/packages/primitives/card/src/Card.js +7 -0
- package/dist/packages/primitives/card/src/Card.js.map +1 -0
- package/dist/packages/primitives/card/src/Card.vue.d.ts +72 -0
- package/dist/packages/primitives/card/src/Card.vue_vue_type_script_setup_true_lang.js +65 -0
- package/dist/packages/primitives/card/src/Card.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/card/src/index.d.ts +3 -0
- package/dist/packages/primitives/card/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/card/src/index.js +2 -0
- package/dist/packages/primitives/carousel/src/Carousel.js +7 -0
- package/dist/packages/primitives/carousel/src/Carousel.js.map +1 -0
- package/dist/packages/primitives/carousel/src/Carousel.vue.d.ts +34 -0
- package/dist/packages/primitives/carousel/src/Carousel.vue_vue_type_script_setup_true_lang.js +175 -0
- package/dist/packages/primitives/carousel/src/Carousel.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/carousel/src/index.d.ts +3 -0
- package/dist/packages/primitives/carousel/src/index.js +3 -0
- package/dist/packages/primitives/checkbox/src/Checkbox.js.map +1 -1
- package/dist/packages/primitives/checkbox/src/Checkbox.vue.d.ts +1 -1
- package/dist/packages/primitives/checkbox/src/Checkbox.vue.d.ts.map +1 -1
- package/dist/packages/primitives/checkbox/src/Checkbox.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/packages/primitives/checkbox/src/Checkbox.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/chip/src/Chip.js.map +1 -1
- package/dist/packages/primitives/chip/src/Chip.vue.d.ts.map +1 -1
- package/dist/packages/primitives/chip/src/Chip.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/chip/src/Chip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/collapse/src/Collapse.js +7 -0
- package/dist/packages/primitives/collapse/src/Collapse.js.map +1 -0
- package/dist/packages/primitives/collapse/src/Collapse.vue.d.ts +56 -0
- package/dist/packages/primitives/collapse/src/Collapse.vue.d.ts.map +1 -0
- package/dist/packages/primitives/collapse/src/Collapse.vue_vue_type_script_setup_true_lang.js +81 -0
- package/dist/packages/primitives/collapse/src/Collapse.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/collapse/src/index.d.ts +2 -0
- package/dist/packages/primitives/collapse/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/collapse/src/index.js +2 -0
- package/dist/packages/primitives/color-picker/src/ColorPicker.js.map +1 -1
- package/dist/packages/primitives/color-picker/src/ColorPicker.vue.d.ts +4 -4
- package/dist/packages/primitives/color-picker/src/ColorPicker.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/packages/primitives/color-picker/src/ColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/color-picker/src/index.d.ts +1 -1
- package/dist/packages/primitives/combobox/src/Combobox.js.map +1 -1
- package/dist/packages/primitives/combobox/src/Combobox.vue.d.ts +3 -3
- package/dist/packages/primitives/combobox/src/Combobox.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/packages/primitives/combobox/src/Combobox.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/combobox/src/index.d.ts +1 -1
- package/dist/packages/primitives/command/src/Command.js +7 -0
- package/dist/packages/primitives/command/src/Command.js.map +1 -0
- package/dist/packages/primitives/command/src/Command.vue.d.ts +77 -0
- package/dist/packages/primitives/command/src/Command.vue_vue_type_script_setup_true_lang.js +333 -0
- package/dist/packages/primitives/command/src/Command.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/command/src/index.d.ts +4 -0
- package/dist/packages/primitives/command/src/index.js +3 -0
- package/dist/packages/primitives/context-menu/src/ContextMenu.js.map +1 -1
- package/dist/packages/primitives/context-menu/src/ContextMenu.vue.d.ts +12 -0
- package/dist/packages/primitives/context-menu/src/ContextMenu.vue.d.ts.map +1 -1
- package/dist/packages/primitives/context-menu/src/ContextMenu.vue_vue_type_script_setup_true_lang.js +7 -3
- package/dist/packages/primitives/context-menu/src/ContextMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/copy-button/src/CopyButton.js +7 -0
- package/dist/packages/primitives/copy-button/src/CopyButton.js.map +1 -0
- package/dist/packages/primitives/copy-button/src/CopyButton.vue.d.ts +64 -0
- package/dist/packages/primitives/copy-button/src/CopyButton.vue_vue_type_script_setup_true_lang.js +113 -0
- package/dist/packages/primitives/copy-button/src/CopyButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/copy-button/src/index.d.ts +4 -0
- package/dist/packages/primitives/copy-button/src/index.js +3 -0
- package/dist/packages/primitives/data-grid/src/DataGrid.js +7 -0
- package/dist/packages/primitives/data-grid/src/DataGrid.js.map +1 -0
- package/dist/packages/primitives/data-grid/src/DataGrid.vue.d.ts +128 -0
- package/dist/packages/primitives/data-grid/src/DataGrid.vue_vue_type_script_setup_true_lang.js +347 -0
- package/dist/packages/primitives/data-grid/src/DataGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/data-grid/src/index.d.ts +4 -0
- package/dist/packages/primitives/data-grid/src/index.js +3 -0
- package/dist/packages/primitives/date-picker/src/DatePicker.js.map +1 -1
- package/dist/packages/primitives/date-picker/src/DatePicker.vue.d.ts +2 -2
- package/dist/packages/primitives/date-picker/src/DatePicker.vue_vue_type_script_setup_true_lang.js +14 -14
- package/dist/packages/primitives/date-picker/src/DatePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/date-range-picker/src/DateRangePicker.js.map +1 -1
- package/dist/packages/primitives/date-range-picker/src/DateRangePicker.vue.d.ts +3 -3
- package/dist/packages/primitives/date-range-picker/src/DateRangePicker.vue_vue_type_script_setup_true_lang.js +22 -19
- package/dist/packages/primitives/date-range-picker/src/DateRangePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/date-range-picker/src/index.d.ts +1 -1
- package/dist/packages/primitives/date-time-picker/src/DateTimePicker.js.map +1 -1
- package/dist/packages/primitives/date-time-picker/src/DateTimePicker.vue.d.ts +2 -2
- package/dist/packages/primitives/date-time-picker/src/DateTimePicker.vue_vue_type_script_setup_true_lang.js +18 -17
- package/dist/packages/primitives/date-time-picker/src/DateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/date-time-range-picker/src/DateTimeRangePicker.js.map +1 -1
- package/dist/packages/primitives/date-time-range-picker/src/DateTimeRangePicker.vue.d.ts +3 -3
- package/dist/packages/primitives/date-time-range-picker/src/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js +18 -17
- package/dist/packages/primitives/date-time-range-picker/src/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/date-time-range-picker/src/index.d.ts +1 -1
- package/dist/packages/primitives/dialog/src/Dialog.js.map +1 -1
- package/dist/packages/primitives/dialog/src/Dialog.vue.d.ts +27 -11
- package/dist/packages/primitives/dialog/src/Dialog.vue_vue_type_script_setup_true_lang.js +6 -4
- package/dist/packages/primitives/dialog/src/Dialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/dialog/src/index.d.ts +1 -1
- package/dist/packages/primitives/drawer/src/Drawer.js.map +1 -1
- package/dist/packages/primitives/drawer/src/Drawer.vue.d.ts +12 -4
- package/dist/packages/primitives/drawer/src/Drawer.vue_vue_type_script_setup_true_lang.js +13 -5
- package/dist/packages/primitives/drawer/src/Drawer.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/drawer/src/index.d.ts +1 -1
- package/dist/packages/primitives/dropdown-menu/src/DropdownMenu.js.map +1 -1
- package/dist/packages/primitives/dropdown-menu/src/DropdownMenu.vue.d.ts +26 -0
- package/dist/packages/primitives/dropdown-menu/src/DropdownMenu.vue.d.ts.map +1 -1
- package/dist/packages/primitives/dropdown-menu/src/DropdownMenu.vue_vue_type_script_setup_true_lang.js +10 -4
- package/dist/packages/primitives/dropdown-menu/src/DropdownMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/editable/src/Editable.js.map +1 -1
- package/dist/packages/primitives/editable/src/Editable.vue.d.ts +2 -2
- package/dist/packages/primitives/editable/src/Editable.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/editable/src/Editable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/editable/src/index.d.ts +1 -1
- package/dist/packages/primitives/file-upload/src/FileUpload.js.map +1 -1
- package/dist/packages/primitives/file-upload/src/FileUpload.vue.d.ts +2 -2
- package/dist/packages/primitives/file-upload/src/FileUpload.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/file-upload/src/FileUpload.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/file-upload/src/index.d.ts +1 -1
- package/dist/packages/primitives/hover-card/src/HoverCard.js.map +1 -1
- package/dist/packages/primitives/hover-card/src/HoverCard.vue.d.ts.map +1 -1
- package/dist/packages/primitives/hover-card/src/HoverCard.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/hover-card/src/HoverCard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/hover-card/src/index.d.ts.map +1 -1
- package/dist/packages/primitives/icon-button/src/IconButton.js.map +1 -1
- package/dist/packages/primitives/icon-button/src/IconButton.vue.d.ts +10 -4
- package/dist/packages/primitives/icon-button/src/IconButton.vue.d.ts.map +1 -1
- package/dist/packages/primitives/icon-button/src/IconButton.vue_vue_type_script_setup_true_lang.js +18 -6
- package/dist/packages/primitives/icon-button/src/IconButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/indicator/src/Indicator.vue.d.ts +2 -2
- package/dist/packages/primitives/indicator/src/index.d.ts +1 -1
- package/dist/packages/primitives/kbd/src/Kbd.js +7 -0
- package/dist/packages/primitives/kbd/src/Kbd.js.map +1 -0
- package/dist/packages/primitives/kbd/src/Kbd.vue.d.ts +30 -0
- package/dist/packages/primitives/kbd/src/Kbd.vue.d.ts.map +1 -0
- package/dist/packages/primitives/kbd/src/Kbd.vue_vue_type_script_setup_true_lang.js +29 -0
- package/dist/packages/primitives/kbd/src/Kbd.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/kbd/src/index.d.ts +3 -0
- package/dist/packages/primitives/kbd/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/kbd/src/index.js +3 -0
- package/dist/packages/primitives/link/src/Link.js.map +1 -1
- package/dist/packages/primitives/link/src/Link.vue.d.ts.map +1 -1
- package/dist/packages/primitives/link/src/Link.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/packages/primitives/link/src/Link.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/list/src/List.js +7 -0
- package/dist/packages/primitives/list/src/List.js.map +1 -0
- package/dist/packages/primitives/list/src/List.vue.d.ts +22 -0
- package/dist/packages/primitives/list/src/List.vue.d.ts.map +1 -0
- package/dist/packages/primitives/list/src/List.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/packages/primitives/list/src/List.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/list/src/ListItem.js +7 -0
- package/dist/packages/primitives/list/src/ListItem.js.map +1 -0
- package/dist/packages/primitives/list/src/ListItem.vue.d.ts +75 -0
- package/dist/packages/primitives/list/src/ListItem.vue.d.ts.map +1 -0
- package/dist/packages/primitives/list/src/ListItem.vue_vue_type_script_setup_true_lang.js +101 -0
- package/dist/packages/primitives/list/src/ListItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/list/src/index.d.ts +4 -0
- package/dist/packages/primitives/list/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/list/src/index.js +3 -0
- package/dist/packages/primitives/live-region/src/LiveRegion.js +7 -0
- package/dist/packages/primitives/live-region/src/LiveRegion.js.map +1 -0
- package/dist/packages/primitives/live-region/src/LiveRegion.vue.d.ts +36 -0
- package/dist/packages/primitives/live-region/src/LiveRegion.vue.d.ts.map +1 -0
- package/dist/packages/primitives/live-region/src/LiveRegion.vue_vue_type_script_setup_true_lang.js +59 -0
- package/dist/packages/primitives/live-region/src/LiveRegion.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/live-region/src/context.d.ts +40 -0
- package/dist/packages/primitives/live-region/src/context.d.ts.map +1 -0
- package/dist/packages/primitives/live-region/src/context.js +85 -0
- package/dist/packages/primitives/live-region/src/context.js.map +1 -0
- package/dist/packages/primitives/live-region/src/index.d.ts +4 -0
- package/dist/packages/primitives/live-region/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/live-region/src/index.js +3 -0
- package/dist/packages/primitives/live-region/src/useAnnounce.d.ts +17 -0
- package/dist/packages/primitives/live-region/src/useAnnounce.d.ts.map +1 -0
- package/dist/packages/primitives/live-region/src/useAnnounce.js +25 -0
- package/dist/packages/primitives/live-region/src/useAnnounce.js.map +1 -0
- package/dist/packages/primitives/menubar/src/Menubar.js.map +1 -1
- package/dist/packages/primitives/menubar/src/Menubar.vue.d.ts +20 -6
- package/dist/packages/primitives/menubar/src/Menubar.vue.d.ts.map +1 -1
- package/dist/packages/primitives/menubar/src/Menubar.vue_vue_type_script_setup_true_lang.js +211 -64
- package/dist/packages/primitives/menubar/src/Menubar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/meter/src/Meter.js +7 -0
- package/dist/packages/primitives/meter/src/Meter.js.map +1 -0
- package/dist/packages/primitives/meter/src/Meter.vue.d.ts +87 -0
- package/dist/packages/primitives/meter/src/Meter.vue_vue_type_script_setup_true_lang.js +236 -0
- package/dist/packages/primitives/meter/src/Meter.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/meter/src/index.d.ts +4 -0
- package/dist/packages/primitives/meter/src/index.js +3 -0
- package/dist/packages/primitives/navigation-menu/src/NavigationMenu.js +7 -0
- package/dist/packages/primitives/navigation-menu/src/NavigationMenu.js.map +1 -0
- package/dist/packages/primitives/navigation-menu/src/NavigationMenu.vue.d.ts +69 -0
- package/dist/packages/primitives/navigation-menu/src/NavigationMenu.vue.d.ts.map +1 -0
- package/dist/packages/primitives/navigation-menu/src/NavigationMenu.vue_vue_type_script_setup_true_lang.js +118 -0
- package/dist/packages/primitives/navigation-menu/src/NavigationMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/navigation-menu/src/index.d.ts +3 -0
- package/dist/packages/primitives/navigation-menu/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/navigation-menu/src/index.js +2 -0
- package/dist/packages/primitives/number-field/src/NumberField.js.map +1 -1
- package/dist/packages/primitives/number-field/src/NumberField.vue.d.ts +2 -2
- package/dist/packages/primitives/number-field/src/NumberField.vue_vue_type_script_setup_true_lang.js +1 -0
- package/dist/packages/primitives/number-field/src/NumberField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/number-field/src/index.d.ts +1 -1
- package/dist/packages/primitives/otp-input/src/OtpInput.vue.d.ts +2 -2
- package/dist/packages/primitives/otp-input/src/index.d.ts +1 -1
- package/dist/packages/primitives/pagination/src/Pagination.js.map +1 -1
- package/dist/packages/primitives/pagination/src/Pagination.vue.d.ts +3 -3
- package/dist/packages/primitives/pagination/src/Pagination.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/pagination/src/Pagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/pagination/src/index.d.ts +1 -1
- package/dist/packages/primitives/popover/src/Popover.js.map +1 -1
- package/dist/packages/primitives/popover/src/Popover.vue.d.ts.map +1 -1
- package/dist/packages/primitives/popover/src/Popover.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/popover/src/Popover.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/progress/src/Progress.vue.d.ts +2 -2
- package/dist/packages/primitives/progress/src/index.d.ts +1 -1
- package/dist/packages/primitives/radial-progress/src/RadialProgress.vue.d.ts +2 -2
- package/dist/packages/primitives/radial-progress/src/index.d.ts +1 -1
- package/dist/packages/primitives/radio-group/src/RadioGroup.js.map +1 -1
- package/dist/packages/primitives/radio-group/src/RadioGroup.vue.d.ts.map +1 -1
- package/dist/packages/primitives/radio-group/src/RadioGroup.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/radio-group/src/RadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/rating/src/Rating.vue.d.ts +2 -2
- package/dist/packages/primitives/rating/src/index.d.ts +1 -1
- package/dist/packages/primitives/segmented-control/src/SegmentedControl.js.map +1 -1
- package/dist/packages/primitives/segmented-control/src/SegmentedControl.vue.d.ts.map +1 -1
- package/dist/packages/primitives/segmented-control/src/SegmentedControl.vue_vue_type_script_setup_true_lang.js +2 -3
- package/dist/packages/primitives/segmented-control/src/SegmentedControl.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/select/src/Select.js.map +1 -1
- package/dist/packages/primitives/select/src/Select.vue.d.ts.map +1 -1
- package/dist/packages/primitives/select/src/Select.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/select/src/Select.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/skip-link/src/SkipLink.js +7 -0
- package/dist/packages/primitives/skip-link/src/SkipLink.js.map +1 -0
- package/dist/packages/primitives/skip-link/src/SkipLink.vue.d.ts +62 -0
- package/dist/packages/primitives/skip-link/src/SkipLink.vue_vue_type_script_setup_true_lang.js +64 -0
- package/dist/packages/primitives/skip-link/src/SkipLink.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/skip-link/src/index.d.ts +3 -0
- package/dist/packages/primitives/skip-link/src/index.js +3 -0
- package/dist/packages/primitives/slider/src/Slider.js.map +1 -1
- package/dist/packages/primitives/slider/src/Slider.vue.d.ts +6 -3
- package/dist/packages/primitives/slider/src/Slider.vue.d.ts.map +1 -1
- package/dist/packages/primitives/slider/src/Slider.vue_vue_type_script_setup_true_lang.js +15 -10
- package/dist/packages/primitives/slider/src/Slider.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/stepper/src/Stepper.js.map +1 -1
- package/dist/packages/primitives/stepper/src/Stepper.vue.d.ts +2 -2
- package/dist/packages/primitives/stepper/src/Stepper.vue_vue_type_script_setup_true_lang.js +7 -5
- package/dist/packages/primitives/stepper/src/Stepper.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/stepper/src/index.d.ts +1 -1
- package/dist/packages/primitives/switch/src/Switch.js.map +1 -1
- package/dist/packages/primitives/switch/src/Switch.vue.d.ts +1 -1
- package/dist/packages/primitives/switch/src/Switch.vue.d.ts.map +1 -1
- package/dist/packages/primitives/switch/src/Switch.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/packages/primitives/switch/src/Switch.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/table/src/Table.js +7 -0
- package/dist/packages/primitives/table/src/Table.js.map +1 -0
- package/dist/packages/primitives/table/src/Table.vue.d.ts +45 -0
- package/dist/packages/primitives/table/src/Table.vue_vue_type_script_setup_true_lang.js +72 -0
- package/dist/packages/primitives/table/src/Table.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/table/src/TableCell.js +7 -0
- package/dist/packages/primitives/table/src/TableCell.js.map +1 -0
- package/dist/packages/primitives/table/src/TableCell.vue.d.ts +19 -0
- package/dist/packages/primitives/table/src/TableCell.vue.d.ts.map +1 -0
- package/dist/packages/primitives/table/src/TableCell.vue_vue_type_script_setup_true_lang.js +17 -0
- package/dist/packages/primitives/table/src/TableCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/table/src/TableHead.js +7 -0
- package/dist/packages/primitives/table/src/TableHead.js.map +1 -0
- package/dist/packages/primitives/table/src/TableHead.vue.d.ts +56 -0
- package/dist/packages/primitives/table/src/TableHead.vue_vue_type_script_setup_true_lang.js +79 -0
- package/dist/packages/primitives/table/src/TableHead.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/table/src/TableRow.js +7 -0
- package/dist/packages/primitives/table/src/TableRow.js.map +1 -0
- package/dist/packages/primitives/table/src/TableRow.vue.d.ts +39 -0
- package/dist/packages/primitives/table/src/TableRow.vue.d.ts.map +1 -0
- package/dist/packages/primitives/table/src/TableRow.vue_vue_type_script_setup_true_lang.js +61 -0
- package/dist/packages/primitives/table/src/TableRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/table/src/index.d.ts +10 -0
- package/dist/packages/primitives/table/src/index.js +8 -0
- package/dist/packages/primitives/tabs/src/Tabs.js.map +1 -1
- package/dist/packages/primitives/tabs/src/Tabs.vue.d.ts.map +1 -1
- package/dist/packages/primitives/tabs/src/Tabs.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/tabs/src/Tabs.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/tags-input/src/TagsInput.js.map +1 -1
- package/dist/packages/primitives/tags-input/src/TagsInput.vue.d.ts +2 -2
- package/dist/packages/primitives/tags-input/src/TagsInput.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/tags-input/src/TagsInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/tags-input/src/index.d.ts +1 -1
- package/dist/packages/primitives/text-field/src/TextField.js.map +1 -1
- package/dist/packages/primitives/text-field/src/TextField.vue.d.ts +2 -2
- package/dist/packages/primitives/text-field/src/TextField.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/text-field/src/TextField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/text-field/src/index.d.ts +1 -1
- package/dist/packages/primitives/text-field/src/index.js +2 -2
- package/dist/packages/primitives/textarea/src/Textarea.js.map +1 -1
- package/dist/packages/primitives/textarea/src/Textarea.vue.d.ts +2 -2
- package/dist/packages/primitives/textarea/src/Textarea.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/textarea/src/Textarea.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/textarea/src/index.d.ts +1 -1
- package/dist/packages/primitives/textarea/src/index.js +2 -2
- package/dist/packages/primitives/time-picker/src/TimePicker.js.map +1 -1
- package/dist/packages/primitives/time-picker/src/TimePicker.vue.d.ts +2 -2
- package/dist/packages/primitives/time-picker/src/TimePicker.vue_vue_type_script_setup_true_lang.js +10 -8
- package/dist/packages/primitives/time-picker/src/TimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/timeline/src/Timeline.js +7 -0
- package/dist/packages/primitives/timeline/src/Timeline.js.map +1 -0
- package/dist/packages/primitives/timeline/src/Timeline.vue.d.ts +37 -0
- package/dist/packages/primitives/timeline/src/Timeline.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/packages/primitives/timeline/src/Timeline.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/timeline/src/TimelineItem.js +7 -0
- package/dist/packages/primitives/timeline/src/TimelineItem.js.map +1 -0
- package/dist/packages/primitives/timeline/src/TimelineItem.vue.d.ts +50 -0
- package/dist/packages/primitives/timeline/src/TimelineItem.vue_vue_type_script_setup_true_lang.js +96 -0
- package/dist/packages/primitives/timeline/src/TimelineItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/timeline/src/index.d.ts +5 -0
- package/dist/packages/primitives/timeline/src/index.js +5 -0
- package/dist/packages/primitives/toast/src/Toast.vue.d.ts +2 -2
- package/dist/packages/primitives/toast/src/ToastItem.js.map +1 -1
- package/dist/packages/primitives/toast/src/ToastItem.vue.d.ts +2 -2
- package/dist/packages/primitives/toast/src/ToastItem.vue_vue_type_script_setup_true_lang.js +5 -3
- package/dist/packages/primitives/toast/src/ToastItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/toast/src/index.d.ts +1 -1
- package/dist/packages/primitives/toggle-group/src/ToggleGroup.js +7 -0
- package/dist/packages/primitives/toggle-group/src/ToggleGroup.js.map +1 -0
- package/dist/packages/primitives/toggle-group/src/ToggleGroup.vue.d.ts +53 -0
- package/dist/packages/primitives/toggle-group/src/ToggleGroup.vue.d.ts.map +1 -0
- package/dist/packages/primitives/toggle-group/src/ToggleGroup.vue_vue_type_script_setup_true_lang.js +111 -0
- package/dist/packages/primitives/toggle-group/src/ToggleGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/toggle-group/src/index.d.ts +3 -0
- package/dist/packages/primitives/toggle-group/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/toggle-group/src/index.js +2 -0
- package/dist/packages/primitives/toolbar/src/Toolbar.js +7 -0
- package/dist/packages/primitives/toolbar/src/Toolbar.js.map +1 -0
- package/dist/packages/primitives/toolbar/src/Toolbar.vue.d.ts +31 -0
- package/dist/packages/primitives/toolbar/src/Toolbar.vue.d.ts.map +1 -0
- package/dist/packages/primitives/toolbar/src/Toolbar.vue_vue_type_script_setup_true_lang.js +149 -0
- package/dist/packages/primitives/toolbar/src/Toolbar.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/toolbar/src/ToolbarSeparator.js +7 -0
- package/dist/packages/primitives/toolbar/src/ToolbarSeparator.js.map +1 -0
- package/dist/packages/primitives/toolbar/src/ToolbarSeparator.vue.d.ts +24 -0
- package/dist/packages/primitives/toolbar/src/ToolbarSeparator.vue.d.ts.map +1 -0
- package/dist/packages/primitives/toolbar/src/ToolbarSeparator.vue_vue_type_script_setup_true_lang.js +40 -0
- package/dist/packages/primitives/toolbar/src/ToolbarSeparator.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/toolbar/src/index.d.ts +4 -0
- package/dist/packages/primitives/toolbar/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/toolbar/src/index.js +3 -0
- package/dist/packages/primitives/tooltip/src/Tooltip.js.map +1 -1
- package/dist/packages/primitives/tooltip/src/Tooltip.vue.d.ts.map +1 -1
- package/dist/packages/primitives/tooltip/src/Tooltip.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/packages/primitives/tooltip/src/Tooltip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/packages/primitives/tree-view/src/TreeView.js +7 -0
- package/dist/packages/primitives/tree-view/src/TreeView.js.map +1 -0
- package/dist/packages/primitives/tree-view/src/TreeView.vue.d.ts +99 -0
- package/dist/packages/primitives/tree-view/src/TreeView.vue_vue_type_script_setup_true_lang.js +310 -0
- package/dist/packages/primitives/tree-view/src/TreeView.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/tree-view/src/TreeViewNode.js +7 -0
- package/dist/packages/primitives/tree-view/src/TreeViewNode.js.map +1 -0
- package/dist/packages/primitives/tree-view/src/TreeViewNode.vue.d.ts +15 -0
- package/dist/packages/primitives/tree-view/src/TreeViewNode.vue.d.ts.map +1 -0
- package/dist/packages/primitives/tree-view/src/TreeViewNode.vue_vue_type_script_setup_true_lang.js +103 -0
- package/dist/packages/primitives/tree-view/src/TreeViewNode.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/tree-view/src/context.d.ts +39 -0
- package/dist/packages/primitives/tree-view/src/context.d.ts.map +1 -0
- package/dist/packages/primitives/tree-view/src/context.js +6 -0
- package/dist/packages/primitives/tree-view/src/context.js.map +1 -0
- package/dist/packages/primitives/tree-view/src/index.d.ts +4 -0
- package/dist/packages/primitives/tree-view/src/index.js +3 -0
- package/dist/packages/primitives/visually-hidden/src/VisuallyHidden.js +7 -0
- package/dist/packages/primitives/visually-hidden/src/VisuallyHidden.js.map +1 -0
- package/dist/packages/primitives/visually-hidden/src/VisuallyHidden.vue.d.ts +21 -0
- package/dist/packages/primitives/visually-hidden/src/VisuallyHidden.vue.d.ts.map +1 -0
- package/dist/packages/primitives/visually-hidden/src/VisuallyHidden.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/packages/primitives/visually-hidden/src/VisuallyHidden.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/packages/primitives/visually-hidden/src/index.d.ts +3 -0
- package/dist/packages/primitives/visually-hidden/src/index.d.ts.map +1 -0
- package/dist/packages/primitives/visually-hidden/src/index.js +2 -0
- package/dist/packages/primitives/window-controls/src/WindowControls.vue.d.ts +2 -2
- package/dist/packages/primitives/window-controls/src/index.d.ts +1 -1
- package/dist/styles/global.css +59 -0
- package/dist/styles/theme.css +13 -0
- package/dist/theme.js +3 -0
- package/package.json +37 -30
- package/dist/packages/blocks/desktop-app-shell/src/DesktopAppShell.vue.d.ts.map +0 -1
- package/dist/packages/blocks/title-bar/src/TitleBar.vue.d.ts.map +0 -1
- package/dist/packages/blocks/toast-stack/src/ToastStack.vue.d.ts.map +0 -1
- package/dist/packages/composition/scroll-reel/src/ScrollReel.vue.d.ts.map +0 -1
- package/dist/packages/composition/scroll-reel/src/index.d.ts.map +0 -1
- package/dist/packages/loom/src/a11y.d.ts.map +0 -1
- package/dist/packages/loom/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/alert-dialog/src/AlertDialog.vue.d.ts.map +0 -1
- package/dist/packages/primitives/alert-dialog/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/avatar-group/src/AvatarGroup.vue.d.ts.map +0 -1
- package/dist/packages/primitives/avatar-group/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/breadcrumb/src/Breadcrumb.vue.d.ts.map +0 -1
- package/dist/packages/primitives/breadcrumb/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/color-picker/src/ColorPicker.vue.d.ts.map +0 -1
- package/dist/packages/primitives/color-picker/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/combobox/src/Combobox.vue.d.ts.map +0 -1
- package/dist/packages/primitives/combobox/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/date-picker/src/DatePicker.vue.d.ts.map +0 -1
- package/dist/packages/primitives/date-range-picker/src/DateRangePicker.vue.d.ts.map +0 -1
- package/dist/packages/primitives/date-range-picker/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/date-time-picker/src/DateTimePicker.vue.d.ts.map +0 -1
- package/dist/packages/primitives/date-time-range-picker/src/DateTimeRangePicker.vue.d.ts.map +0 -1
- package/dist/packages/primitives/date-time-range-picker/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/dialog/src/Dialog.vue.d.ts.map +0 -1
- package/dist/packages/primitives/dialog/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/drawer/src/Drawer.vue.d.ts.map +0 -1
- package/dist/packages/primitives/drawer/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/editable/src/Editable.vue.d.ts.map +0 -1
- package/dist/packages/primitives/editable/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/file-upload/src/FileUpload.vue.d.ts.map +0 -1
- package/dist/packages/primitives/file-upload/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/indicator/src/Indicator.vue.d.ts.map +0 -1
- package/dist/packages/primitives/indicator/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/number-field/src/NumberField.vue.d.ts.map +0 -1
- package/dist/packages/primitives/number-field/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/otp-input/src/OtpInput.vue.d.ts.map +0 -1
- package/dist/packages/primitives/otp-input/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/pagination/src/Pagination.vue.d.ts.map +0 -1
- package/dist/packages/primitives/pagination/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/progress/src/Progress.vue.d.ts.map +0 -1
- package/dist/packages/primitives/progress/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/radial-progress/src/RadialProgress.vue.d.ts.map +0 -1
- package/dist/packages/primitives/radial-progress/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/rating/src/Rating.vue.d.ts.map +0 -1
- package/dist/packages/primitives/rating/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/stepper/src/Stepper.vue.d.ts.map +0 -1
- package/dist/packages/primitives/stepper/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/tags-input/src/TagsInput.vue.d.ts.map +0 -1
- package/dist/packages/primitives/tags-input/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/text-field/src/TextField.vue.d.ts.map +0 -1
- package/dist/packages/primitives/text-field/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/textarea/src/Textarea.vue.d.ts.map +0 -1
- package/dist/packages/primitives/textarea/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/time-picker/src/TimePicker.vue.d.ts.map +0 -1
- package/dist/packages/primitives/toast/src/Toast.vue.d.ts.map +0 -1
- package/dist/packages/primitives/toast/src/ToastItem.vue.d.ts.map +0 -1
- package/dist/packages/primitives/toast/src/index.d.ts.map +0 -1
- package/dist/packages/primitives/window-controls/src/WindowControls.vue.d.ts.map +0 -1
- package/dist/packages/primitives/window-controls/src/index.d.ts.map +0 -1
- package/dist/styles/theme.contrast.test.ts +0 -460
|
@@ -22,11 +22,11 @@ var _hoisted_2 = {
|
|
|
22
22
|
"aria-hidden": "true",
|
|
23
23
|
focusable: "false"
|
|
24
24
|
};
|
|
25
|
-
var linkVariants = cva("inline-flex items-center gap-1 transition-colors duration-fast ease-out focus-visible:outline-
|
|
25
|
+
var linkVariants = cva("inline-flex items-center gap-1 transition-colors duration-fast ease-out focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo", {
|
|
26
26
|
variants: {
|
|
27
27
|
variant: {
|
|
28
28
|
default: "text-primary-text underline underline-offset-4 hover:text-primary-text/80",
|
|
29
|
-
muted: "text-muted-foreground hover:text-foreground",
|
|
29
|
+
muted: "text-muted-foreground underline underline-offset-4 hover:text-foreground",
|
|
30
30
|
accent: "text-accent-text underline underline-offset-4 hover:text-accent-text/80",
|
|
31
31
|
subtle: "text-foreground/80 hover:text-foreground underline underline-offset-4 decoration-border hover:decoration-foreground/50"
|
|
32
32
|
},
|
|
@@ -65,7 +65,7 @@ var Link_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
65
65
|
class: normalizeClass(unref(cn)(unref(linkVariants)({
|
|
66
66
|
variant: __props.variant,
|
|
67
67
|
underline: __props.underline
|
|
68
|
-
}), "cursor-default pointer-events-none
|
|
68
|
+
}), "cursor-default bg-muted text-muted-foreground pointer-events-none", _ctx.$attrs.class)),
|
|
69
69
|
"aria-disabled": "true"
|
|
70
70
|
}, [renderSlot(_ctx.$slots, "default")], 2)) : (openBlock(), createElementBlock("a", {
|
|
71
71
|
key: 1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.vue_vue_type_script_setup_true_lang.js","names":["$attrs"],"sources":["../../../../../packages/primitives/link/src/Link.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { cva } from \"class-variance-authority\";\n\n/** The visual emphasis assigned to a link. */\nexport type LinkVariant = \"default\" | \"muted\" | \"accent\" | \"subtle\";\n\nexport const linkVariants = cva(\n \"inline-flex items-center gap-1 transition-colors duration-fast ease-out focus-visible:outline-
|
|
1
|
+
{"version":3,"file":"Link.vue_vue_type_script_setup_true_lang.js","names":["$attrs"],"sources":["../../../../../packages/primitives/link/src/Link.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { cva } from \"class-variance-authority\";\n\n/** The visual emphasis assigned to a link. */\nexport type LinkVariant = \"default\" | \"muted\" | \"accent\" | \"subtle\";\n\nexport const linkVariants = cva(\n \"inline-flex items-center gap-1 transition-colors duration-fast ease-out focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo\",\n {\n variants: {\n variant: {\n default: \"text-primary-text underline underline-offset-4 hover:text-primary-text/80\",\n // Underlined like its siblings. WCAG 1.4.1 asks for a non-colour\n // carrier and the underline is the one links have; `muted` used to be\n // the variant that dropped it while keeping a hover colour change,\n // which identified the link by hue alone.\n muted: \"text-muted-foreground underline underline-offset-4 hover:text-foreground\",\n accent: \"text-accent-text underline underline-offset-4 hover:text-accent-text/80\",\n subtle:\n \"text-foreground/80 hover:text-foreground underline underline-offset-4 decoration-border hover:decoration-foreground/50\",\n } satisfies Record<LinkVariant, string>,\n underline: {\n true: \"\",\n false: \"no-underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n underline: true,\n },\n },\n);\n</script>\n\n<script setup lang=\"ts\">\nimport { cn } from \"@ecoma-io/loom-core\";\n\nwithDefaults(\n defineProps<{\n /** Controls the link's visual emphasis. */\n variant?: LinkVariant;\n /** Draws an underline beneath the link label. */\n underline?: boolean;\n /** The destination the link navigates to. */\n href: string;\n /** Opens the destination in a new tab and marks it as an external link. */\n external?: boolean;\n /** Replaces the anchor with an unavailable, non-interactive span. */\n disabled?: boolean;\n }>(),\n {\n variant: \"default\",\n underline: true,\n external: false,\n disabled: false,\n },\n);\n</script>\n\n<template>\n <span\n v-if=\"disabled\"\n :class=\"\n cn(\n linkVariants({ variant, underline }),\n // Drained, not dimmed — the same rule Button and Chip follow. The dim\n // faded whatever hue the variant wore, taking the label's contrast\n // down with it; a link has no fill to drain, so it takes the neutral\n // well the transparent controls take, and `aria-disabled` carries the\n // state rather than colour alone.\n 'cursor-default bg-muted text-muted-foreground pointer-events-none',\n $attrs.class,\n )\n \"\n aria-disabled=\"true\"\n >\n <slot />\n </span>\n <a\n v-else\n :href=\"href\"\n :class=\"cn(linkVariants({ variant, underline }), $attrs.class)\"\n :target=\"external ? '_blank' : undefined\"\n :rel=\"external ? 'noopener noreferrer' : undefined\"\n >\n <slot />\n <svg\n v-if=\"external\"\n class=\"h-3.5 w-3.5 shrink-0\"\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <path d=\"M7 17 17 7\" />\n <path d=\"M7 7h10v10\" />\n </svg>\n </a>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAa,eAAe,IAC1B,uLACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GAKT,OAAO;GACP,QAAQ;GACR,QACE;EACJ;EACA,WAAW;GACT,MAAM;GACN,OAAO;EACT;CACF;CACA,iBAAiB;EACf,SAAS;EACT,WAAW;CACb;AACF,CACF;;;;;;;;;;;;;;;;;;;;;GA8BU,OAAA,QAAA,YADR,UAAA,GAAA,mBAiBO,QAAA;;IAfJ,OAAK,eAAS,MAAA,EAAA,CAAE,CAAU,MAAA,YAAA,CAAY,CAAA;KAAA,SAAG,QAAA;KAAO,WAAE,QAAA;IAAS,CAAA,GAAA,qEAA6bA,KAAAA,OAAO,KAAA,CAAA;IAYhgB,iBAAc;GAEd,GAAA,CAAA,WAAQ,KAAA,QAAA,SAAA,CAAA,GAAA,CAAA,MAEV,UAAA,GAAA,mBAyBI,KAAA;;IAvBD,MAAM,QAAA;IACN,OAAK,eAAE,MAAA,EAAA,CAAE,CAAC,MAAA,YAAA,CAAY,CAAA;KAAA,SAAG,QAAA;KAAO,WAAE,QAAA;IAAS,CAAA,GAAKA,KAAAA,OAAO,KAAK,CAAA;IAC5D,QAAQ,QAAA,WAAQ,WAAc,KAAA;IAC9B,KAAK,QAAA,WAAQ,wBAA2B,KAAA;GAEzC,GAAA,CAAA,WAAQ,KAAA,QAAA,SAAA,GAEA,QAAA,YADR,UAAA,GAAA,mBAgBM,OAhBN,YAgBM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAFJ,mBAAuB,QAAA,EAAjB,GAAE,aAAY,GAAA,MAAA,EAAA,GACpB,mBAAuB,QAAA,EAAjB,GAAE,aAAY,GAAA,MAAA,EAAA,CAAA,EAAA,CAAA,KAAA,mBAAA,IAAA,IAAA,CAAA,GAAA,IAAA,UAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import List_vue_vue_type_script_setup_true_lang_default from "./List.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region packages/primitives/list/src/List.vue
|
|
3
|
+
var List_default = List_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { List_default as default };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=List.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.js","names":[],"sources":["../../../../../packages/primitives/list/src/List.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * List — a generic composition of rows: leading content, a title and\n * description, trailing metadata or actions. It is the *presentational*\n * vocabulary for row-shaped content, not a navigation primitive — SidebarNav\n * owns wayfinding, Menu owns commands, Table owns columns. This owns \"a\n * titled thing per line\" wherever that appears: settings groups, pickers,\n * summaries under a page's chrome.\n */\nimport { cn } from \"@ecoma-io/loom-core\";\n\nwithDefaults(\n defineProps<{\n /** Names the list for assistive technology when surrounding prose does not already say it. */\n label?: string;\n /** Hairline dividers between rows. Off for card-stacked lists. */\n divided?: boolean;\n }>(),\n { divided: true },\n);\nvoid cn;\n</script>\n\n<template>\n <ul :aria-label=\"label\" :class=\"cn('m-0 list-none p-0', divided && 'divide-y divide-border')\">\n <!-- @slot The rows: one `ListItem` per line. -->\n <slot />\n </ul>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
/** Names the list for assistive technology when surrounding prose does not already say it. */
|
|
3
|
+
label?: string;
|
|
4
|
+
/** Hairline dividers between rows. Off for card-stacked lists. */
|
|
5
|
+
divided?: boolean;
|
|
6
|
+
};
|
|
7
|
+
declare var __VLS_1: {};
|
|
8
|
+
type __VLS_Slots = {} & {
|
|
9
|
+
default?: (props: typeof __VLS_1) => any;
|
|
10
|
+
};
|
|
11
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
12
|
+
divided: boolean;
|
|
13
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
18
|
+
new (): {
|
|
19
|
+
$slots: S;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=List.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.vue.d.ts","sourceRoot":"","sources":["../../../../../packages/primitives/list/src/List.vue"],"names":[],"mappings":"AA0CA,KAAK,WAAW,GAAG;IACf,8FAA8F;IAC9F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAgCJ,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAK/C,QAAA,MAAM,UAAU;aAxCF,OAAO;6EA2CnB,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { cn } from "../../../core/src/cn.js";
|
|
2
|
+
import "../../../core/src/index.js";
|
|
3
|
+
import { createElementBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref } from "vue";
|
|
4
|
+
//#region packages/primitives/list/src/List.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var _hoisted_1 = ["aria-label"];
|
|
6
|
+
var List_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
7
|
+
__name: "List",
|
|
8
|
+
props: {
|
|
9
|
+
label: {},
|
|
10
|
+
divided: {
|
|
11
|
+
type: Boolean,
|
|
12
|
+
default: true
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
setup(__props) {
|
|
16
|
+
return (_ctx, _cache) => {
|
|
17
|
+
return openBlock(), createElementBlock("ul", {
|
|
18
|
+
"aria-label": __props.label,
|
|
19
|
+
class: normalizeClass(unref(cn)("m-0 list-none p-0", __props.divided && "divide-y divide-border"))
|
|
20
|
+
}, [renderSlot(_ctx.$slots, "default")], 10, _hoisted_1);
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
//#endregion
|
|
25
|
+
export { List_vue_vue_type_script_setup_true_lang_default as default };
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=List.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../../packages/primitives/list/src/List.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * List — a generic composition of rows: leading content, a title and\n * description, trailing metadata or actions. It is the *presentational*\n * vocabulary for row-shaped content, not a navigation primitive — SidebarNav\n * owns wayfinding, Menu owns commands, Table owns columns. This owns \"a\n * titled thing per line\" wherever that appears: settings groups, pickers,\n * summaries under a page's chrome.\n */\nimport { cn } from \"@ecoma-io/loom-core\";\n\nwithDefaults(\n defineProps<{\n /** Names the list for assistive technology when surrounding prose does not already say it. */\n label?: string;\n /** Hairline dividers between rows. Off for card-stacked lists. */\n divided?: boolean;\n }>(),\n { divided: true },\n);\nvoid cn;\n</script>\n\n<template>\n <ul :aria-label=\"label\" :class=\"cn('m-0 list-none p-0', divided && 'divide-y divide-border')\">\n <!-- @slot The rows: one `ListItem` per line. -->\n <slot />\n </ul>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;GAwBE,OAAA,UAAA,GAAA,mBAGK,MAAA;IAHA,cAAY,QAAA;IAAQ,OAAK,eAAE,MAAA,EAAA,CAAE,CAAA,qBAAsB,QAAA,WAAO,wBAAA,CAAA;GAE7D,GAAA,CAAA,WAAQ,KAAA,QAAA,SAAA,CAAA,GAAA,IAAA,UAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import ListItem_vue_vue_type_script_setup_true_lang_default, { listItemVariants } from "./ListItem.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region packages/primitives/list/src/ListItem.vue
|
|
3
|
+
var ListItem_default = ListItem_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { ListItem_default as default, listItemVariants };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=ListItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListItem.js","names":[],"sources":["../../../../../packages/primitives/list/src/ListItem.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { cva } from \"class-variance-authority\";\n\n/**\n * Interactive comes in exactly two shapes, the same honesty Card documents:\n * `href` makes the whole row one real anchor (nothing interactive inside),\n * `interactive` paints hover/press while the host owns role/handler. Plain\n * rows are just rows.\n */\nexport type ListItemShape = \"static\" | \"link\" | \"interactive\";\n\nexport const listItemVariants = cva(\n \"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left transition-colors duration-fast ease-out\",\n {\n variants: {\n shape: {\n static: \"\",\n // The shared clickable-row language: lift by fill, never by shadow.\n link: \"cursor-pointer outline-none hover:bg-subtle/60 focus-visible:bg-subtle/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo [transition:transform_var(--duration-fast)_var(--ease-spring),background-color_var(--duration-fast)_var(--ease-out)] active:scale-[0.995]\",\n interactive:\n \"cursor-pointer hover:bg-subtle/60 focus-visible:bg-subtle/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo active:bg-subtle\",\n },\n dense: { true: \"px-2 py-1.5\", false: \"\" },\n },\n },\n);\n</script>\n\n<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport { Check } from \"@lucide/vue\";\nimport { cn } from \"@ecoma-io/loom-core\";\n\nconst props = withDefaults(\n defineProps<{\n /** The row's heading; omit when the default slot carries custom composition. */\n title?: string;\n /** Supporting line beneath the title. */\n description?: string;\n /** Trailing metadata — a count, a timestamp. Reads in tabular digits. */\n meta?: string;\n /** Makes the whole row one link. Nothing interactive may sit inside. */\n href?: string;\n /**\n * Hover/press language for a clickable row whose behaviour belongs to\n * the host; attach the handler yourself.\n */\n interactive?: boolean;\n /** Marks this row as the current choice among its peers (`aria-current`). */\n selected?: boolean;\n /** Unavailable rather than hidden: drained, inert, still announced. */\n disabled?: boolean;\n /** Tighter rhythm inside dense chrome. */\n dense?: boolean;\n }>(),\n {\n interactive: false,\n selected: false,\n disabled: false,\n dense: false,\n },\n);\n\ndefineEmits<{ activate: [] }>();\n\n// One of three shapes decides the element; a disabled row is an inert button\n// rather than a missing one, so it stays announced.\nconst shape = computed<\"link\" | \"interactive\" | \"static\">(() =>\n props.href ? \"link\" : props.interactive ? \"interactive\" : \"static\",\n);\n</script>\n\n<template>\n <li>\n <component\n :is=\"href ? 'a' : interactive ? 'button' : 'div'\"\n :href=\"disabled ? undefined : href\"\n :type=\"interactive && !href ? 'button' : undefined\"\n :disabled=\"interactive && !href ? disabled : undefined\"\n :aria-disabled=\"disabled || undefined\"\n :aria-current=\"selected || undefined\"\n :class=\"\n cn(\n listItemVariants({ shape, dense }),\n selected && !disabled && 'bg-primary-muted/40 aria-current:bg-primary-muted/40',\n disabled && 'cursor-not-allowed bg-transparent',\n )\n \"\n @click=\"interactive && !disabled && $emit('activate')\"\n >\n <!-- @slot Before the title: an icon, an Avatar. -->\n <slot name=\"leading\" />\n\n <span class=\"min-w-0 flex-1\">\n <span v-if=\"title\" class=\"block truncate text-sm font-medium\">{{ title }}</span>\n <span v-if=\"description\" class=\"mt-0.5 block text-small text-muted-foreground\">{{\n description\n }}</span>\n <!-- @slot Custom body; replaces title/description entirely. -->\n <slot />\n </span>\n\n <!-- Selection is stated twice: aria-current for technology, a glyph\n for eyes — colour alone is not a state. -->\n <Check v-if=\"selected\" class=\"h-4 w-4 shrink-0 text-primary-text\" aria-hidden=\"true\" />\n\n <!-- @slot After everything: actions, a Badge, a RowActions cluster. -->\n <slot name=\"trailing\">\n <span v-if=\"meta\" class=\"shrink-0 text-small tabular text-muted-foreground\">{{\n meta\n }}</span>\n </slot>\n </component>\n </li>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive comes in exactly two shapes, the same honesty Card documents:
|
|
3
|
+
* `href` makes the whole row one real anchor (nothing interactive inside),
|
|
4
|
+
* `interactive` paints hover/press while the host owns role/handler. Plain
|
|
5
|
+
* rows are just rows.
|
|
6
|
+
*/
|
|
7
|
+
export type ListItemShape = "static" | "link" | "interactive";
|
|
8
|
+
export declare const listItemVariants: (props?: ({
|
|
9
|
+
shape?: "link" | "interactive" | "static" | null | undefined;
|
|
10
|
+
dense?: boolean | null | undefined;
|
|
11
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
12
|
+
declare const _default: typeof __VLS_export;
|
|
13
|
+
export default _default;
|
|
14
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
15
|
+
/** The row's heading; omit when the default slot carries custom composition. */
|
|
16
|
+
title?: string;
|
|
17
|
+
/** Supporting line beneath the title. */
|
|
18
|
+
description?: string;
|
|
19
|
+
/** Trailing metadata — a count, a timestamp. Reads in tabular digits. */
|
|
20
|
+
meta?: string;
|
|
21
|
+
/** Makes the whole row one link. Nothing interactive may sit inside. */
|
|
22
|
+
href?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Hover/press language for a clickable row whose behaviour belongs to
|
|
25
|
+
* the host; attach the handler yourself.
|
|
26
|
+
*/
|
|
27
|
+
interactive?: boolean;
|
|
28
|
+
/** Marks this row as the current choice among its peers (`aria-current`). */
|
|
29
|
+
selected?: boolean;
|
|
30
|
+
/** Unavailable rather than hidden: drained, inert, still announced. */
|
|
31
|
+
disabled?: boolean;
|
|
32
|
+
/** Tighter rhythm inside dense chrome. */
|
|
33
|
+
dense?: boolean;
|
|
34
|
+
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
35
|
+
activate: () => any;
|
|
36
|
+
}, string, import("vue").PublicProps, Readonly<{
|
|
37
|
+
/** The row's heading; omit when the default slot carries custom composition. */
|
|
38
|
+
title?: string;
|
|
39
|
+
/** Supporting line beneath the title. */
|
|
40
|
+
description?: string;
|
|
41
|
+
/** Trailing metadata — a count, a timestamp. Reads in tabular digits. */
|
|
42
|
+
meta?: string;
|
|
43
|
+
/** Makes the whole row one link. Nothing interactive may sit inside. */
|
|
44
|
+
href?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Hover/press language for a clickable row whose behaviour belongs to
|
|
47
|
+
* the host; attach the handler yourself.
|
|
48
|
+
*/
|
|
49
|
+
interactive?: boolean;
|
|
50
|
+
/** Marks this row as the current choice among its peers (`aria-current`). */
|
|
51
|
+
selected?: boolean;
|
|
52
|
+
/** Unavailable rather than hidden: drained, inert, still announced. */
|
|
53
|
+
disabled?: boolean;
|
|
54
|
+
/** Tighter rhythm inside dense chrome. */
|
|
55
|
+
dense?: boolean;
|
|
56
|
+
}> & Readonly<{
|
|
57
|
+
onActivate?: () => any;
|
|
58
|
+
}>, {
|
|
59
|
+
disabled: boolean;
|
|
60
|
+
interactive: boolean;
|
|
61
|
+
selected: boolean;
|
|
62
|
+
dense: boolean;
|
|
63
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
|
|
64
|
+
leading?: (props: {}) => any;
|
|
65
|
+
} & {
|
|
66
|
+
default?: (props: {}) => any;
|
|
67
|
+
} & {
|
|
68
|
+
trailing?: (props: {}) => any;
|
|
69
|
+
}>;
|
|
70
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
71
|
+
new (): {
|
|
72
|
+
$slots: S;
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=ListItem.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListItem.vue.d.ts","sourceRoot":"","sources":["../../../../../packages/primitives/list/src/ListItem.vue"],"names":[],"mappings":"AA6HA;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,aAAa,CAAC;AAE9D,eAAO,MAAM,gBAAgB;;;8EAc5B,CAAC;wBACmB,OAAO,YAAY;AAAxC,wBAAyC;AACzC,QAAA,MAAM,YAAY;IAEd,gFAAgF;YACxE,MAAM;IACd,yCAAyC;kBAC3B,MAAM;IACpB,yEAAyE;WAClE,MAAM;IACb,wEAAwE;WACjE,MAAM;IACb;;;OAGG;kBACW,OAAO;IACrB,6EAA6E;eAClE,OAAO;IAClB,uEAAuE;eAC5D,OAAO;IAClB,0CAA0C;YAClC,OAAO;;;;IAlBf,gFAAgF;YACxE,MAAM;IACd,yCAAyC;kBAC3B,MAAM;IACpB,yEAAyE;WAClE,MAAM;IACb,wEAAwE;WACjE,MAAM;IACb;;;OAGG;kBACW,OAAO;IACrB,6EAA6E;eAClE,OAAO;IAClB,uEAAuE;eAC5D,OAAO;IAClB,0CAA0C;YAClC,OAAO;;;;cAFJ,OAAO;iBAJJ,OAAO;cAEV,OAAO;WAIV,OAAO;;cAmKL,CAAC,KAAK,IAAgB,KAAK,GAAG;;cAC9B,CAAC,KAAK,IAAiB,KAAK,GAAG;;eAC9B,CAAC,KAAK,IAAiB,KAAK,GAAG;EAW1C,CAAC;AAWL,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { cn } from "../../../core/src/cn.js";
|
|
2
|
+
import "../../../core/src/index.js";
|
|
3
|
+
import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, toDisplayString, unref, withCtx } from "vue";
|
|
4
|
+
import { Check } from "@lucide/vue";
|
|
5
|
+
import { cva } from "class-variance-authority";
|
|
6
|
+
//#region packages/primitives/list/src/ListItem.vue?vue&type=script&setup=true&lang.ts
|
|
7
|
+
var _hoisted_1 = { class: "min-w-0 flex-1" };
|
|
8
|
+
var _hoisted_2 = {
|
|
9
|
+
key: 0,
|
|
10
|
+
class: "block truncate text-sm font-medium"
|
|
11
|
+
};
|
|
12
|
+
var _hoisted_3 = {
|
|
13
|
+
key: 1,
|
|
14
|
+
class: "mt-0.5 block text-small text-muted-foreground"
|
|
15
|
+
};
|
|
16
|
+
var _hoisted_4 = {
|
|
17
|
+
key: 0,
|
|
18
|
+
class: "shrink-0 text-small tabular text-muted-foreground"
|
|
19
|
+
};
|
|
20
|
+
var listItemVariants = cva("flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left transition-colors duration-fast ease-out", { variants: {
|
|
21
|
+
shape: {
|
|
22
|
+
static: "",
|
|
23
|
+
link: "cursor-pointer outline-none hover:bg-subtle/60 focus-visible:bg-subtle/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo [transition:transform_var(--duration-fast)_var(--ease-spring),background-color_var(--duration-fast)_var(--ease-out)] active:scale-[0.995]",
|
|
24
|
+
interactive: "cursor-pointer hover:bg-subtle/60 focus-visible:bg-subtle/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo active:bg-subtle"
|
|
25
|
+
},
|
|
26
|
+
dense: {
|
|
27
|
+
true: "px-2 py-1.5",
|
|
28
|
+
false: ""
|
|
29
|
+
}
|
|
30
|
+
} });
|
|
31
|
+
var ListItem_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
32
|
+
__name: "ListItem",
|
|
33
|
+
props: {
|
|
34
|
+
title: {},
|
|
35
|
+
description: {},
|
|
36
|
+
meta: {},
|
|
37
|
+
href: {},
|
|
38
|
+
interactive: {
|
|
39
|
+
type: Boolean,
|
|
40
|
+
default: false
|
|
41
|
+
},
|
|
42
|
+
selected: {
|
|
43
|
+
type: Boolean,
|
|
44
|
+
default: false
|
|
45
|
+
},
|
|
46
|
+
disabled: {
|
|
47
|
+
type: Boolean,
|
|
48
|
+
default: false
|
|
49
|
+
},
|
|
50
|
+
dense: {
|
|
51
|
+
type: Boolean,
|
|
52
|
+
default: false
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
emits: ["activate"],
|
|
56
|
+
setup(__props) {
|
|
57
|
+
const props = __props;
|
|
58
|
+
const shape = computed(() => props.href ? "link" : props.interactive ? "interactive" : "static");
|
|
59
|
+
return (_ctx, _cache) => {
|
|
60
|
+
return openBlock(), createElementBlock("li", null, [(openBlock(), createBlock(resolveDynamicComponent(__props.href ? "a" : __props.interactive ? "button" : "div"), {
|
|
61
|
+
href: __props.disabled ? void 0 : __props.href,
|
|
62
|
+
type: __props.interactive && !__props.href ? "button" : void 0,
|
|
63
|
+
disabled: __props.interactive && !__props.href ? __props.disabled : void 0,
|
|
64
|
+
"aria-disabled": __props.disabled || void 0,
|
|
65
|
+
"aria-current": __props.selected || void 0,
|
|
66
|
+
class: normalizeClass(unref(cn)(unref(listItemVariants)({
|
|
67
|
+
shape: shape.value,
|
|
68
|
+
dense: __props.dense
|
|
69
|
+
}), __props.selected && !__props.disabled && "bg-primary-muted/40 aria-current:bg-primary-muted/40", __props.disabled && "cursor-not-allowed bg-transparent")),
|
|
70
|
+
onClick: _cache[0] || (_cache[0] = ($event) => __props.interactive && !__props.disabled && _ctx.$emit("activate"))
|
|
71
|
+
}, {
|
|
72
|
+
default: withCtx(() => [
|
|
73
|
+
renderSlot(_ctx.$slots, "leading"),
|
|
74
|
+
createElementVNode("span", _hoisted_1, [
|
|
75
|
+
__props.title ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
|
|
76
|
+
__props.description ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.description), 1)) : createCommentVNode("", true),
|
|
77
|
+
renderSlot(_ctx.$slots, "default")
|
|
78
|
+
]),
|
|
79
|
+
__props.selected ? (openBlock(), createBlock(unref(Check), {
|
|
80
|
+
key: 0,
|
|
81
|
+
class: "h-4 w-4 shrink-0 text-primary-text",
|
|
82
|
+
"aria-hidden": "true"
|
|
83
|
+
})) : createCommentVNode("", true),
|
|
84
|
+
renderSlot(_ctx.$slots, "trailing", {}, () => [__props.meta ? (openBlock(), createElementBlock("span", _hoisted_4, toDisplayString(__props.meta), 1)) : createCommentVNode("", true)])
|
|
85
|
+
]),
|
|
86
|
+
_: 3
|
|
87
|
+
}, 8, [
|
|
88
|
+
"href",
|
|
89
|
+
"type",
|
|
90
|
+
"disabled",
|
|
91
|
+
"aria-disabled",
|
|
92
|
+
"aria-current",
|
|
93
|
+
"class"
|
|
94
|
+
]))]);
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
//#endregion
|
|
99
|
+
export { ListItem_vue_vue_type_script_setup_true_lang_default as default, listItemVariants };
|
|
100
|
+
|
|
101
|
+
//# sourceMappingURL=ListItem.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListItem.vue_vue_type_script_setup_true_lang.js","names":["$emit"],"sources":["../../../../../packages/primitives/list/src/ListItem.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { cva } from \"class-variance-authority\";\n\n/**\n * Interactive comes in exactly two shapes, the same honesty Card documents:\n * `href` makes the whole row one real anchor (nothing interactive inside),\n * `interactive` paints hover/press while the host owns role/handler. Plain\n * rows are just rows.\n */\nexport type ListItemShape = \"static\" | \"link\" | \"interactive\";\n\nexport const listItemVariants = cva(\n \"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left transition-colors duration-fast ease-out\",\n {\n variants: {\n shape: {\n static: \"\",\n // The shared clickable-row language: lift by fill, never by shadow.\n link: \"cursor-pointer outline-none hover:bg-subtle/60 focus-visible:bg-subtle/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo [transition:transform_var(--duration-fast)_var(--ease-spring),background-color_var(--duration-fast)_var(--ease-out)] active:scale-[0.995]\",\n interactive:\n \"cursor-pointer hover:bg-subtle/60 focus-visible:bg-subtle/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring focus-visible:shadow-halo active:bg-subtle\",\n },\n dense: { true: \"px-2 py-1.5\", false: \"\" },\n },\n },\n);\n</script>\n\n<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport { Check } from \"@lucide/vue\";\nimport { cn } from \"@ecoma-io/loom-core\";\n\nconst props = withDefaults(\n defineProps<{\n /** The row's heading; omit when the default slot carries custom composition. */\n title?: string;\n /** Supporting line beneath the title. */\n description?: string;\n /** Trailing metadata — a count, a timestamp. Reads in tabular digits. */\n meta?: string;\n /** Makes the whole row one link. Nothing interactive may sit inside. */\n href?: string;\n /**\n * Hover/press language for a clickable row whose behaviour belongs to\n * the host; attach the handler yourself.\n */\n interactive?: boolean;\n /** Marks this row as the current choice among its peers (`aria-current`). */\n selected?: boolean;\n /** Unavailable rather than hidden: drained, inert, still announced. */\n disabled?: boolean;\n /** Tighter rhythm inside dense chrome. */\n dense?: boolean;\n }>(),\n {\n interactive: false,\n selected: false,\n disabled: false,\n dense: false,\n },\n);\n\ndefineEmits<{ activate: [] }>();\n\n// One of three shapes decides the element; a disabled row is an inert button\n// rather than a missing one, so it stays announced.\nconst shape = computed<\"link\" | \"interactive\" | \"static\">(() =>\n props.href ? \"link\" : props.interactive ? \"interactive\" : \"static\",\n);\n</script>\n\n<template>\n <li>\n <component\n :is=\"href ? 'a' : interactive ? 'button' : 'div'\"\n :href=\"disabled ? undefined : href\"\n :type=\"interactive && !href ? 'button' : undefined\"\n :disabled=\"interactive && !href ? disabled : undefined\"\n :aria-disabled=\"disabled || undefined\"\n :aria-current=\"selected || undefined\"\n :class=\"\n cn(\n listItemVariants({ shape, dense }),\n selected && !disabled && 'bg-primary-muted/40 aria-current:bg-primary-muted/40',\n disabled && 'cursor-not-allowed bg-transparent',\n )\n \"\n @click=\"interactive && !disabled && $emit('activate')\"\n >\n <!-- @slot Before the title: an icon, an Avatar. -->\n <slot name=\"leading\" />\n\n <span class=\"min-w-0 flex-1\">\n <span v-if=\"title\" class=\"block truncate text-sm font-medium\">{{ title }}</span>\n <span v-if=\"description\" class=\"mt-0.5 block text-small text-muted-foreground\">{{\n description\n }}</span>\n <!-- @slot Custom body; replaces title/description entirely. -->\n <slot />\n </span>\n\n <!-- Selection is stated twice: aria-current for technology, a glyph\n for eyes — colour alone is not a state. -->\n <Check v-if=\"selected\" class=\"h-4 w-4 shrink-0 text-primary-text\" aria-hidden=\"true\" />\n\n <!-- @slot After everything: actions, a Badge, a RowActions cluster. -->\n <slot name=\"trailing\">\n <span v-if=\"meta\" class=\"shrink-0 text-small tabular text-muted-foreground\">{{\n meta\n }}</span>\n </slot>\n </component>\n </li>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAWA,IAAa,mBAAmB,IAC9B,4GACA,EACE,UAAU;CACR,OAAO;EACL,QAAQ;EAER,MAAM;EACN,aACE;CACJ;CACA,OAAO;EAAE,MAAM;EAAe,OAAO;CAAG;AAC1C,EACF,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQA,MAAM,QAAQ;EAkCd,MAAM,QAAQ,eACZ,MAAM,OAAO,SAAS,MAAM,cAAc,gBAAgB,QAC5D;;GAIE,OAAA,UAAA,GAAA,mBAwCK,MAAA,MAAA,EAvCH,UAAA,GAAA,YAsCY,wBArCL,QAAA,OAAI,MAAS,QAAA,cAAW,WAAA,KAAA,GAAA;IAC5B,MAAM,QAAA,WAAW,KAAA,IAAY,QAAA;IAC7B,MAAM,QAAA,eAAW,CAAK,QAAA,OAAI,WAAc,KAAA;IACxC,UAAU,QAAA,eAAW,CAAK,QAAA,OAAO,QAAA,WAAW,KAAA;IAC5C,iBAAe,QAAA,YAAY,KAAA;IAC3B,gBAAc,QAAA,YAAY,KAAA;IAC1B,OAAK,eAAW,MAAA,EAAA,CAAE,CAAY,MAAA,gBAAA,CAAgB,CAAA;KAAA,OAAG,MAAA;KAAK,OAAE,QAAA;IAAK,CAAA,GAAe,QAAA,YAAQ,CAAK,QAAA,YAAQ,wDAAsE,QAAA,YAAQ,mCAAA,CAAA;IAO/K,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,QAAA,eAAW,CAAK,QAAA,YAAYA,KAAAA,MAAK,UAAA;;IAGzC,SAAA,cAAuB;KAAvB,WAAuB,KAAA,QAAA,SAAA;KAEvB,mBAOO,QAPP,YAOO;MANO,QAAA,SAAZ,UAAA,GAAA,mBAAgF,QAAhF,YAAgF,gBAAf,QAAA,KAAK,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;MAC1D,QAAA,eAAZ,UAAA,GAAA,mBAES,QAFT,YAES,gBADP,QAAA,WAAW,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;MAGb,WAAQ,KAAA,QAAA,SAAA;;KAKG,QAAA,YAAb,UAAA,GAAA,YAAuF,MAAA,KAAA,GAAA;;MAAhE,OAAM;MAAqC,eAAY;;KAG9E,WAIO,KAAA,QAAA,YAAA,CAAA,SAAA,CAHO,QAAA,QAAZ,UAAA,GAAA,mBAES,QAFT,YAES,gBADP,QAAA,IAAI,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/primitives/list/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import LiveRegion_vue_vue_type_script_setup_true_lang_default from "./LiveRegion.vue_vue_type_script_setup_true_lang.js";
|
|
2
|
+
//#region packages/primitives/live-region/src/LiveRegion.vue
|
|
3
|
+
var LiveRegion_default = LiveRegion_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { LiveRegion_default as default };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=LiveRegion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiveRegion.js","names":[],"sources":["../../../../../packages/primitives/live-region/src/LiveRegion.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * LiveRegion — a permanently mounted, visually hidden `aria-live` region and\n * the seam (`useAnnounce()`) that writes into it. Screen readers announce a\n * live region only when its content *changes* after the region exists, so\n * the region renders empty and stays mounted for its whole lifetime: a\n * region added in the same tick as its message is announced unreliably, and\n * a region toggled into existence per message misses its first announcement.\n *\n * The hiding is the clip technique, delegated to VisuallyHidden — never\n * `display: none`, which removes the region from the accessibility tree\n * entirely. No `role=\"status\"`/`role=\"alert\"` is layered on top: the\n * politeness prop *is* the semantics, mapped straight onto `aria-live`, and\n * duplicating it in a role would only let the two disagree. The component\n * owns no strings, so there is nothing to localise and no labels prop.\n */\nexport type { LiveRegionContext, LiveRegionPoliteness } from \"./context\";\n</script>\n\n<script setup lang=\"ts\">\nimport { onBeforeUnmount, onMounted, provide, ref, watch } from \"vue\";\nimport type { PropType } from \"vue\";\nimport VisuallyHidden from \"@ecoma-io/loom-visually-hidden\";\nimport { LIVE_REGION_KEY, announce, mountingStandalone, registerWriter } from \"./context\";\nimport type { LiveRegionPoliteness } from \"./context\";\n\nconst props = defineProps({\n /** How urgent announcements through this region are — mapped to `aria-live` verbatim. */\n politeness: {\n type: String as PropType<LiveRegionPoliteness>,\n default: \"polite\",\n },\n});\n\nconst node = ref<HTMLElement | null>(null);\n\nlet unregister: (() => void) | null = null;\n\nfunction bind(politeness: LiveRegionPoliteness): () => void {\n const el = node.value;\n if (!el) return () => {};\n return registerWriter(\n politeness,\n (message) => {\n // Clear first: assistive tech compares region content, and rewriting\n // identical text in place announces nothing. Re-adding across the next\n // frame makes the repeat a real content addition, which\n // `aria-relevant=\"additions text\"` then reads.\n el.textContent = \"\";\n requestAnimationFrame(() => {\n el.textContent = message;\n });\n },\n mountingStandalone,\n );\n}\n\nonMounted(() => {\n unregister = bind(props.politeness);\n});\n\nwatch(\n () => props.politeness,\n (politeness) => {\n if (!unregister) return;\n unregister();\n unregister = bind(politeness);\n },\n);\n\nonBeforeUnmount(() => {\n unregister?.();\n unregister = null;\n});\n\n// Every region provides the seam for the subtree under it, so a component\n// sitting beside a region reaches `useAnnounce()` through the tree; with no\n// region mounted anywhere, `useAnnounce()` falls back to the standalone pair.\nprovide(LIVE_REGION_KEY, { announce });\n</script>\n\n<template>\n <VisuallyHidden as=\"div\">\n <div ref=\"node\" :aria-live=\"politeness\" aria-relevant=\"additions text\" aria-atomic=\"true\" />\n </VisuallyHidden>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { PropType } from "vue";
|
|
2
|
+
import type { LiveRegionPoliteness } from "./context";
|
|
3
|
+
/**
|
|
4
|
+
* LiveRegion — a permanently mounted, visually hidden `aria-live` region and
|
|
5
|
+
* the seam (`useAnnounce()`) that writes into it. Screen readers announce a
|
|
6
|
+
* live region only when its content *changes* after the region exists, so
|
|
7
|
+
* the region renders empty and stays mounted for its whole lifetime: a
|
|
8
|
+
* region added in the same tick as its message is announced unreliably, and
|
|
9
|
+
* a region toggled into existence per message misses its first announcement.
|
|
10
|
+
*
|
|
11
|
+
* The hiding is the clip technique, delegated to VisuallyHidden — never
|
|
12
|
+
* `display: none`, which removes the region from the accessibility tree
|
|
13
|
+
* entirely. No `role="status"`/`role="alert"` is layered on top: the
|
|
14
|
+
* politeness prop *is* the semantics, mapped straight onto `aria-live`, and
|
|
15
|
+
* duplicating it in a role would only let the two disagree. The component
|
|
16
|
+
* owns no strings, so there is nothing to localise and no labels prop.
|
|
17
|
+
*/
|
|
18
|
+
export type { LiveRegionContext, LiveRegionPoliteness } from "./context";
|
|
19
|
+
declare const _default: typeof __VLS_export;
|
|
20
|
+
export default _default;
|
|
21
|
+
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
22
|
+
/** How urgent announcements through this region are — mapped to `aria-live` verbatim. */
|
|
23
|
+
politeness: {
|
|
24
|
+
type: PropType<LiveRegionPoliteness>;
|
|
25
|
+
default: string;
|
|
26
|
+
};
|
|
27
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
28
|
+
/** How urgent announcements through this region are — mapped to `aria-live` verbatim. */
|
|
29
|
+
politeness: {
|
|
30
|
+
type: PropType<LiveRegionPoliteness>;
|
|
31
|
+
default: string;
|
|
32
|
+
};
|
|
33
|
+
}>> & Readonly<{}>, {
|
|
34
|
+
politeness: LiveRegionPoliteness;
|
|
35
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
36
|
+
//# sourceMappingURL=LiveRegion.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiveRegion.vue.d.ts","sourceRoot":"","sources":["../../../../../packages/primitives/live-region/src/LiveRegion.vue"],"names":[],"mappings":"AA0FA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAGpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAGtD;;;;;;;;;;;;;;GAcG;AACH,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;wBACpD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,QAAA,MAAM,YAAY;IAoGhB,yFAAyF;;cAEvE,QAAQ,CAAC,oBAAoB,CAAC;;;;IAFhD,yFAAyF;;cAEvE,QAAQ,CAAC,oBAAoB,CAAC;;;;;4EAK9C,CAAC"}
|
package/dist/packages/primitives/live-region/src/LiveRegion.vue_vue_type_script_setup_true_lang.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import VisuallyHidden_default from "../../visually-hidden/src/VisuallyHidden.js";
|
|
2
|
+
import "../../visually-hidden/src/index.js";
|
|
3
|
+
import { LIVE_REGION_KEY, announce, mountingStandalone, registerWriter } from "./context.js";
|
|
4
|
+
import { createBlock, createElementVNode, defineComponent, onBeforeUnmount, onMounted, openBlock, provide, ref, unref, watch, withCtx } from "vue";
|
|
5
|
+
//#region packages/primitives/live-region/src/LiveRegion.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var _hoisted_1 = ["aria-live"];
|
|
7
|
+
var LiveRegion_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
8
|
+
__name: "LiveRegion",
|
|
9
|
+
props: {
|
|
10
|
+
/** How urgent announcements through this region are — mapped to `aria-live` verbatim. */
|
|
11
|
+
politeness: {
|
|
12
|
+
type: String,
|
|
13
|
+
default: "polite"
|
|
14
|
+
} },
|
|
15
|
+
setup(__props) {
|
|
16
|
+
const props = __props;
|
|
17
|
+
const node = ref(null);
|
|
18
|
+
let unregister = null;
|
|
19
|
+
function bind(politeness) {
|
|
20
|
+
const el = node.value;
|
|
21
|
+
if (!el) return () => {};
|
|
22
|
+
return registerWriter(politeness, (message) => {
|
|
23
|
+
el.textContent = "";
|
|
24
|
+
requestAnimationFrame(() => {
|
|
25
|
+
el.textContent = message;
|
|
26
|
+
});
|
|
27
|
+
}, mountingStandalone);
|
|
28
|
+
}
|
|
29
|
+
onMounted(() => {
|
|
30
|
+
unregister = bind(props.politeness);
|
|
31
|
+
});
|
|
32
|
+
watch(() => props.politeness, (politeness) => {
|
|
33
|
+
if (!unregister) return;
|
|
34
|
+
unregister();
|
|
35
|
+
unregister = bind(politeness);
|
|
36
|
+
});
|
|
37
|
+
onBeforeUnmount(() => {
|
|
38
|
+
unregister?.();
|
|
39
|
+
unregister = null;
|
|
40
|
+
});
|
|
41
|
+
provide(LIVE_REGION_KEY, { announce });
|
|
42
|
+
return (_ctx, _cache) => {
|
|
43
|
+
return openBlock(), createBlock(unref(VisuallyHidden_default), { as: "div" }, {
|
|
44
|
+
default: withCtx(() => [createElementVNode("div", {
|
|
45
|
+
ref_key: "node",
|
|
46
|
+
ref: node,
|
|
47
|
+
"aria-live": __props.politeness,
|
|
48
|
+
"aria-relevant": "additions text",
|
|
49
|
+
"aria-atomic": "true"
|
|
50
|
+
}, null, 8, _hoisted_1)]),
|
|
51
|
+
_: 1
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
//#endregion
|
|
57
|
+
export { LiveRegion_vue_vue_type_script_setup_true_lang_default as default };
|
|
58
|
+
|
|
59
|
+
//# sourceMappingURL=LiveRegion.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiveRegion.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../../packages/primitives/live-region/src/LiveRegion.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * LiveRegion — a permanently mounted, visually hidden `aria-live` region and\n * the seam (`useAnnounce()`) that writes into it. Screen readers announce a\n * live region only when its content *changes* after the region exists, so\n * the region renders empty and stays mounted for its whole lifetime: a\n * region added in the same tick as its message is announced unreliably, and\n * a region toggled into existence per message misses its first announcement.\n *\n * The hiding is the clip technique, delegated to VisuallyHidden — never\n * `display: none`, which removes the region from the accessibility tree\n * entirely. No `role=\"status\"`/`role=\"alert\"` is layered on top: the\n * politeness prop *is* the semantics, mapped straight onto `aria-live`, and\n * duplicating it in a role would only let the two disagree. The component\n * owns no strings, so there is nothing to localise and no labels prop.\n */\nexport type { LiveRegionContext, LiveRegionPoliteness } from \"./context\";\n</script>\n\n<script setup lang=\"ts\">\nimport { onBeforeUnmount, onMounted, provide, ref, watch } from \"vue\";\nimport type { PropType } from \"vue\";\nimport VisuallyHidden from \"@ecoma-io/loom-visually-hidden\";\nimport { LIVE_REGION_KEY, announce, mountingStandalone, registerWriter } from \"./context\";\nimport type { LiveRegionPoliteness } from \"./context\";\n\nconst props = defineProps({\n /** How urgent announcements through this region are — mapped to `aria-live` verbatim. */\n politeness: {\n type: String as PropType<LiveRegionPoliteness>,\n default: \"polite\",\n },\n});\n\nconst node = ref<HTMLElement | null>(null);\n\nlet unregister: (() => void) | null = null;\n\nfunction bind(politeness: LiveRegionPoliteness): () => void {\n const el = node.value;\n if (!el) return () => {};\n return registerWriter(\n politeness,\n (message) => {\n // Clear first: assistive tech compares region content, and rewriting\n // identical text in place announces nothing. Re-adding across the next\n // frame makes the repeat a real content addition, which\n // `aria-relevant=\"additions text\"` then reads.\n el.textContent = \"\";\n requestAnimationFrame(() => {\n el.textContent = message;\n });\n },\n mountingStandalone,\n );\n}\n\nonMounted(() => {\n unregister = bind(props.politeness);\n});\n\nwatch(\n () => props.politeness,\n (politeness) => {\n if (!unregister) return;\n unregister();\n unregister = bind(politeness);\n },\n);\n\nonBeforeUnmount(() => {\n unregister?.();\n unregister = null;\n});\n\n// Every region provides the seam for the subtree under it, so a component\n// sitting beside a region reaches `useAnnounce()` through the tree; with no\n// region mounted anywhere, `useAnnounce()` falls back to the standalone pair.\nprovide(LIVE_REGION_KEY, { announce });\n</script>\n\n<template>\n <VisuallyHidden as=\"div\">\n <div ref=\"node\" :aria-live=\"politeness\" aria-relevant=\"additions text\" aria-atomic=\"true\" />\n </VisuallyHidden>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;EA0BA,MAAM,QAAQ;EAQd,MAAM,OAAO,IAAwB,IAAI;EAEzC,IAAI,aAAkC;EAEtC,SAAS,KAAK,YAA8C;GAC1D,MAAM,KAAK,KAAK;GAChB,IAAI,CAAC,IAAI,aAAa,CAAC;GACvB,OAAO,eACL,aACC,YAAY;IAKX,GAAG,cAAc;IACjB,4BAA4B;KAC1B,GAAG,cAAc;IACnB,CAAC;GACH,GACA,kBACF;EACF;EAEA,gBAAgB;GACd,aAAa,KAAK,MAAM,UAAU;EACpC,CAAC;EAED,YACQ,MAAM,aACX,eAAe;GACd,IAAI,CAAC,YAAY;GACjB,WAAW;GACX,aAAa,KAAK,UAAU;EAC9B,CACF;EAEA,sBAAsB;GACpB,aAAa;GACb,aAAa;EACf,CAAC;EAKD,QAAQ,iBAAiB,EAAE,SAAS,CAAC;;GAInC,OAAA,UAAA,GAAA,YAEiB,MAAA,sBAAA,GAAA,EAFD,IAAG,MAAK,GAAA;IACtB,SAAA,cAA4F,CAA5F,mBAA4F,OAAA;KAAnF,SAAA;KAAJ,KAAI;KAAQ,aAAW,QAAA;KAAY,iBAAc;KAAiB,eAAY"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { InjectionKey } from "vue";
|
|
2
|
+
/**
|
|
3
|
+
* The seam's machinery, kept out of the SFC so the module-level state it
|
|
4
|
+
* needs — the writer registries and the standalone fallback — is genuinely
|
|
5
|
+
* module-level rather than per-instance.
|
|
6
|
+
*/
|
|
7
|
+
export type LiveRegionPoliteness = "polite" | "assertive";
|
|
8
|
+
/** The write half of the seam — what `useAnnounce()` hands back. */
|
|
9
|
+
export type Announce = (message: string, politeness?: LiveRegionPoliteness) => void;
|
|
10
|
+
/** The provide/inject shape a mounted region shares with its subtree. */
|
|
11
|
+
export interface LiveRegionContext {
|
|
12
|
+
announce: Announce;
|
|
13
|
+
}
|
|
14
|
+
export declare const LIVE_REGION_KEY: InjectionKey<LiveRegionContext>;
|
|
15
|
+
/** The write function a mounted region registers. */
|
|
16
|
+
type Writer = Announce;
|
|
17
|
+
export declare function registerWriter(politeness: LiveRegionPoliteness, writer: Writer, standalone: boolean): () => void;
|
|
18
|
+
/**
|
|
19
|
+
* True while the fallback pair is mounting, so those instances register as
|
|
20
|
+
* the fallback rather than as in-tree regions. `createApp().mount()` runs
|
|
21
|
+
* synchronously, so the flag cannot interleave.
|
|
22
|
+
*/
|
|
23
|
+
export declare let mountingStandalone: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Mounts the standalone polite + assertive pair on `document.body` — the
|
|
26
|
+
* default for callers that never mounted a region. It runs when the seam is
|
|
27
|
+
* first asked for (`useAnnounce()`), never at announce time: a region added
|
|
28
|
+
* in the same tick as its message is announced unreliably, so the pair has
|
|
29
|
+
* to pre-exist the first message.
|
|
30
|
+
*/
|
|
31
|
+
export declare function ensureStandaloneRegions(): void;
|
|
32
|
+
/**
|
|
33
|
+
* The shared announcer: the in-tree region of that politeness if one is
|
|
34
|
+
* mounted, else the standalone pair. Never mounts anything — regions must
|
|
35
|
+
* pre-exist announcements, so the pair is mounted when `useAnnounce()` first
|
|
36
|
+
* runs, not here.
|
|
37
|
+
*/
|
|
38
|
+
export declare const announce: Announce;
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../../packages/primitives/live-region/src/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AAOxC;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE1D,oEAAoE;AACpE,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;AAEpF,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,iBAAiB,CAA8B,CAAC;AAE3F,qDAAqD;AACrD,KAAK,MAAM,GAAG,QAAQ,CAAC;AAiBvB,wBAAgB,cAAc,CAC5B,UAAU,EAAE,oBAAoB,EAChC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,GAClB,MAAM,IAAI,CAgBZ;AAED;;;;GAIG;AACH,eAAO,IAAI,kBAAkB,SAAQ,CAAC;AAItC;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAgC9C;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,EAAE,QAItB,CAAC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import LiveRegion_default from "./LiveRegion.js";
|
|
2
|
+
import { createApp } from "vue";
|
|
3
|
+
//#region packages/primitives/live-region/src/context.ts
|
|
4
|
+
var LIVE_REGION_KEY = Symbol("loom-live-region");
|
|
5
|
+
/**
|
|
6
|
+
* Writers registered by regions mounted in the component tree, per
|
|
7
|
+
* politeness. The earliest still-mounted region of a politeness wins, so a
|
|
8
|
+
* region near the app root owns the channel and a stray duplicate deeper in
|
|
9
|
+
* the tree stays silent.
|
|
10
|
+
*/
|
|
11
|
+
var regionWriters = /* @__PURE__ */ new Map();
|
|
12
|
+
/**
|
|
13
|
+
* Writers for the standalone pair mounted on `document.body`, kept apart
|
|
14
|
+
* from `regionWriters` so an in-tree region always outranks the fallback
|
|
15
|
+
* without the lookup depending on mount order.
|
|
16
|
+
*/
|
|
17
|
+
var standaloneWriters = /* @__PURE__ */ new Map();
|
|
18
|
+
function registerWriter(politeness, writer, standalone) {
|
|
19
|
+
if (standalone) {
|
|
20
|
+
standaloneWriters.set(politeness, writer);
|
|
21
|
+
return () => {
|
|
22
|
+
if (standaloneWriters.get(politeness) === writer) standaloneWriters.delete(politeness);
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
const list = regionWriters.get(politeness) ?? [];
|
|
26
|
+
list.push(writer);
|
|
27
|
+
regionWriters.set(politeness, list);
|
|
28
|
+
return () => {
|
|
29
|
+
regionWriters.set(politeness, (regionWriters.get(politeness) ?? []).filter((registered) => registered !== writer));
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* True while the fallback pair is mounting, so those instances register as
|
|
34
|
+
* the fallback rather than as in-tree regions. `createApp().mount()` runs
|
|
35
|
+
* synchronously, so the flag cannot interleave.
|
|
36
|
+
*/
|
|
37
|
+
var mountingStandalone = false;
|
|
38
|
+
var standaloneMounted = false;
|
|
39
|
+
/**
|
|
40
|
+
* Mounts the standalone polite + assertive pair on `document.body` — the
|
|
41
|
+
* default for callers that never mounted a region. It runs when the seam is
|
|
42
|
+
* first asked for (`useAnnounce()`), never at announce time: a region added
|
|
43
|
+
* in the same tick as its message is announced unreliably, so the pair has
|
|
44
|
+
* to pre-exist the first message.
|
|
45
|
+
*/
|
|
46
|
+
function ensureStandaloneRegions() {
|
|
47
|
+
if (standaloneMounted || typeof document === "undefined") return;
|
|
48
|
+
standaloneMounted = true;
|
|
49
|
+
const host = document.createElement("div");
|
|
50
|
+
host.setAttribute("data-loom-live-region", "");
|
|
51
|
+
const apps = [];
|
|
52
|
+
for (const politeness of ["polite", "assertive"]) {
|
|
53
|
+
const mountPoint = document.createElement("div");
|
|
54
|
+
host.appendChild(mountPoint);
|
|
55
|
+
mountingStandalone = true;
|
|
56
|
+
try {
|
|
57
|
+
const app = createApp(LiveRegion_default, { politeness });
|
|
58
|
+
app.mount(mountPoint);
|
|
59
|
+
apps.push(app);
|
|
60
|
+
} finally {
|
|
61
|
+
mountingStandalone = false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
document.body.appendChild(host);
|
|
65
|
+
window.addEventListener("pagehide", () => {
|
|
66
|
+
for (const app of apps) app.unmount();
|
|
67
|
+
standaloneWriters.clear();
|
|
68
|
+
standaloneMounted = false;
|
|
69
|
+
host.remove();
|
|
70
|
+
}, { once: true });
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* The shared announcer: the in-tree region of that politeness if one is
|
|
74
|
+
* mounted, else the standalone pair. Never mounts anything — regions must
|
|
75
|
+
* pre-exist announcements, so the pair is mounted when `useAnnounce()` first
|
|
76
|
+
* runs, not here.
|
|
77
|
+
*/
|
|
78
|
+
var announce = (message, politeness = "polite") => {
|
|
79
|
+
if (typeof document === "undefined") return;
|
|
80
|
+
(regionWriters.get(politeness)?.[0] ?? standaloneWriters.get(politeness))?.(message);
|
|
81
|
+
};
|
|
82
|
+
//#endregion
|
|
83
|
+
export { LIVE_REGION_KEY, announce, ensureStandaloneRegions, mountingStandalone, registerWriter };
|
|
84
|
+
|
|
85
|
+
//# sourceMappingURL=context.js.map
|