@nuxt/ui 4.2.0 → 4.3.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/.nuxt/ui.css +154 -0
- package/README.md +2 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +2 -2
- package/dist/runtime/components/Accordion.d.vue.ts +3 -3
- package/dist/runtime/components/Accordion.vue +1 -1
- package/dist/runtime/components/Accordion.vue.d.ts +3 -3
- package/dist/runtime/components/Alert.d.vue.ts +3 -5
- package/dist/runtime/components/Alert.vue +2 -2
- package/dist/runtime/components/Alert.vue.d.ts +3 -5
- package/dist/runtime/components/App.d.vue.ts +3 -1
- package/dist/runtime/components/App.vue.d.ts +3 -1
- package/dist/runtime/components/AuthForm.d.vue.ts +8 -46
- package/dist/runtime/components/AuthForm.vue +1 -1
- package/dist/runtime/components/AuthForm.vue.d.ts +8 -46
- package/dist/runtime/components/Avatar.vue +1 -1
- package/dist/runtime/components/Badge.d.vue.ts +1 -3
- package/dist/runtime/components/Badge.vue +3 -3
- package/dist/runtime/components/Badge.vue.d.ts +1 -3
- package/dist/runtime/components/Banner.d.vue.ts +2 -2
- package/dist/runtime/components/Banner.vue +2 -2
- package/dist/runtime/components/Banner.vue.d.ts +2 -2
- package/dist/runtime/components/BlogPost.d.vue.ts +1 -4
- package/dist/runtime/components/BlogPost.vue +0 -1
- package/dist/runtime/components/BlogPost.vue.d.ts +1 -4
- package/dist/runtime/components/BlogPosts.d.vue.ts +3 -1
- package/dist/runtime/components/BlogPosts.vue.d.ts +3 -1
- package/dist/runtime/components/Breadcrumb.d.vue.ts +3 -1
- package/dist/runtime/components/Breadcrumb.vue +1 -1
- package/dist/runtime/components/Breadcrumb.vue.d.ts +3 -1
- package/dist/runtime/components/Button.vue +4 -4
- package/dist/runtime/components/Calendar.d.vue.ts +8 -11
- package/dist/runtime/components/Calendar.vue +4 -4
- package/dist/runtime/components/Calendar.vue.d.ts +8 -11
- package/dist/runtime/components/Carousel.d.vue.ts +6 -6
- package/dist/runtime/components/Carousel.vue +24 -2
- package/dist/runtime/components/Carousel.vue.d.ts +6 -6
- package/dist/runtime/components/ChangelogVersion.d.vue.ts +1 -4
- package/dist/runtime/components/ChangelogVersion.vue +0 -1
- package/dist/runtime/components/ChangelogVersion.vue.d.ts +1 -4
- package/dist/runtime/components/ChangelogVersions.d.vue.ts +3 -1
- package/dist/runtime/components/ChangelogVersions.vue.d.ts +3 -1
- package/dist/runtime/components/ChatMessage.d.vue.ts +1 -3
- package/dist/runtime/components/ChatMessage.vue +1 -1
- package/dist/runtime/components/ChatMessage.vue.d.ts +1 -3
- package/dist/runtime/components/ChatMessages.d.vue.ts +3 -8
- package/dist/runtime/components/ChatMessages.vue +1 -1
- package/dist/runtime/components/ChatMessages.vue.d.ts +3 -8
- package/dist/runtime/components/ChatPrompt.d.vue.ts +2 -7
- package/dist/runtime/components/ChatPrompt.vue +2 -2
- package/dist/runtime/components/ChatPrompt.vue.d.ts +2 -7
- package/dist/runtime/components/ChatPromptSubmit.d.vue.ts +9 -17
- package/dist/runtime/components/ChatPromptSubmit.vue +14 -33
- package/dist/runtime/components/ChatPromptSubmit.vue.d.ts +9 -17
- package/dist/runtime/components/Checkbox.vue +2 -2
- package/dist/runtime/components/CheckboxGroup.d.vue.ts +3 -4
- package/dist/runtime/components/CheckboxGroup.vue +1 -1
- package/dist/runtime/components/CheckboxGroup.vue.d.ts +3 -4
- package/dist/runtime/components/Chip.d.vue.ts +1 -4
- package/dist/runtime/components/Chip.vue.d.ts +1 -4
- package/dist/runtime/components/Collapsible.d.vue.ts +1 -3
- package/dist/runtime/components/Collapsible.vue.d.ts +1 -3
- package/dist/runtime/components/ColorPicker.d.vue.ts +1 -5
- package/dist/runtime/components/ColorPicker.vue.d.ts +1 -5
- package/dist/runtime/components/CommandPalette.d.vue.ts +9 -14
- package/dist/runtime/components/CommandPalette.vue +7 -7
- package/dist/runtime/components/CommandPalette.vue.d.ts +9 -14
- package/dist/runtime/components/ContextMenu.d.vue.ts +9 -5
- package/dist/runtime/components/ContextMenu.vue +3 -3
- package/dist/runtime/components/ContextMenu.vue.d.ts +9 -5
- package/dist/runtime/components/ContextMenuContent.d.vue.ts +3 -7
- package/dist/runtime/components/ContextMenuContent.vue +5 -5
- package/dist/runtime/components/ContextMenuContent.vue.d.ts +3 -7
- package/dist/runtime/components/DashboardGroup.d.vue.ts +1 -6
- package/dist/runtime/components/DashboardGroup.vue.d.ts +1 -6
- package/dist/runtime/components/DashboardNavbar.d.vue.ts +3 -6
- package/dist/runtime/components/DashboardNavbar.vue +1 -1
- package/dist/runtime/components/DashboardNavbar.vue.d.ts +3 -6
- package/dist/runtime/components/DashboardPanel.d.vue.ts +1 -4
- package/dist/runtime/components/DashboardPanel.vue.d.ts +1 -4
- package/dist/runtime/components/DashboardSearch.d.vue.ts +4 -9
- package/dist/runtime/components/DashboardSearch.vue +3 -3
- package/dist/runtime/components/DashboardSearch.vue.d.ts +4 -9
- package/dist/runtime/components/DashboardSearchButton.d.vue.ts +3 -8
- package/dist/runtime/components/DashboardSearchButton.vue +5 -24
- package/dist/runtime/components/DashboardSearchButton.vue.d.ts +3 -8
- package/dist/runtime/components/DashboardSidebar.d.vue.ts +5 -6
- package/dist/runtime/components/DashboardSidebar.vue.d.ts +5 -6
- package/dist/runtime/components/DashboardSidebarCollapse.d.vue.ts +3 -7
- package/dist/runtime/components/DashboardSidebarCollapse.vue +5 -24
- package/dist/runtime/components/DashboardSidebarCollapse.vue.d.ts +3 -7
- package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +3 -7
- package/dist/runtime/components/DashboardSidebarToggle.vue +5 -24
- package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +3 -7
- package/dist/runtime/components/Drawer.d.vue.ts +1 -8
- package/dist/runtime/components/Drawer.vue.d.ts +1 -8
- package/dist/runtime/components/DropdownMenu.d.vue.ts +9 -5
- package/dist/runtime/components/DropdownMenu.vue +3 -3
- package/dist/runtime/components/DropdownMenu.vue.d.ts +9 -5
- package/dist/runtime/components/DropdownMenuContent.d.vue.ts +3 -7
- package/dist/runtime/components/DropdownMenuContent.vue +5 -5
- package/dist/runtime/components/DropdownMenuContent.vue.d.ts +3 -7
- package/dist/runtime/components/Editor.d.vue.ts +87 -0
- package/dist/runtime/components/Editor.vue +185 -0
- package/dist/runtime/components/Editor.vue.d.ts +87 -0
- package/dist/runtime/components/EditorDragHandle.d.vue.ts +64 -0
- package/dist/runtime/components/EditorDragHandle.vue +127 -0
- package/dist/runtime/components/EditorDragHandle.vue.d.ts +64 -0
- package/dist/runtime/components/EditorEmojiMenu.d.vue.ts +35 -0
- package/dist/runtime/components/EditorEmojiMenu.vue +70 -0
- package/dist/runtime/components/EditorEmojiMenu.vue.d.ts +35 -0
- package/dist/runtime/components/EditorMentionMenu.d.vue.ts +39 -0
- package/dist/runtime/components/EditorMentionMenu.vue +72 -0
- package/dist/runtime/components/EditorMentionMenu.vue.d.ts +39 -0
- package/dist/runtime/components/EditorSuggestionMenu.d.vue.ts +52 -0
- package/dist/runtime/components/EditorSuggestionMenu.vue +80 -0
- package/dist/runtime/components/EditorSuggestionMenu.vue.d.ts +52 -0
- package/dist/runtime/components/EditorToolbar.d.vue.ts +90 -0
- package/dist/runtime/components/EditorToolbar.vue +242 -0
- package/dist/runtime/components/EditorToolbar.vue.d.ts +90 -0
- package/dist/runtime/components/Empty.vue +1 -1
- package/dist/runtime/components/Error.d.vue.ts +2 -5
- package/dist/runtime/components/Error.vue.d.ts +2 -5
- package/dist/runtime/components/FieldGroup.d.vue.ts +1 -3
- package/dist/runtime/components/FieldGroup.vue.d.ts +1 -3
- package/dist/runtime/components/FileUpload.d.vue.ts +5 -6
- package/dist/runtime/components/FileUpload.vue +3 -3
- package/dist/runtime/components/FileUpload.vue.d.ts +5 -6
- package/dist/runtime/components/Footer.d.vue.ts +1 -3
- package/dist/runtime/components/Footer.vue.d.ts +1 -3
- package/dist/runtime/components/FooterColumns.d.vue.ts +3 -1
- package/dist/runtime/components/FooterColumns.vue.d.ts +3 -1
- package/dist/runtime/components/Form.d.vue.ts +3 -4
- package/dist/runtime/components/Form.vue.d.ts +3 -4
- package/dist/runtime/components/FormField.d.vue.ts +5 -0
- package/dist/runtime/components/FormField.vue +6 -5
- package/dist/runtime/components/FormField.vue.d.ts +5 -0
- package/dist/runtime/components/Header.d.vue.ts +5 -5
- package/dist/runtime/components/Header.vue.d.ts +5 -5
- package/dist/runtime/components/Icon.d.vue.ts +1 -1
- package/dist/runtime/components/Icon.vue +1 -1
- package/dist/runtime/components/Icon.vue.d.ts +1 -1
- package/dist/runtime/components/Input.d.vue.ts +5 -7
- package/dist/runtime/components/Input.vue +4 -4
- package/dist/runtime/components/Input.vue.d.ts +5 -7
- package/dist/runtime/components/InputDate.d.vue.ts +4 -8
- package/dist/runtime/components/InputDate.vue +5 -5
- package/dist/runtime/components/InputDate.vue.d.ts +4 -8
- package/dist/runtime/components/InputMenu.d.vue.ts +9 -15
- package/dist/runtime/components/InputMenu.vue +20 -7
- package/dist/runtime/components/InputMenu.vue.d.ts +9 -15
- package/dist/runtime/components/InputNumber.d.vue.ts +7 -9
- package/dist/runtime/components/InputNumber.vue +2 -2
- package/dist/runtime/components/InputNumber.vue.d.ts +7 -9
- package/dist/runtime/components/InputTags.d.vue.ts +4 -10
- package/dist/runtime/components/InputTags.vue +5 -5
- package/dist/runtime/components/InputTags.vue.d.ts +4 -10
- package/dist/runtime/components/InputTime.d.vue.ts +3 -5
- package/dist/runtime/components/InputTime.vue +4 -4
- package/dist/runtime/components/InputTime.vue.d.ts +3 -5
- package/dist/runtime/components/Kbd.d.vue.ts +1 -3
- package/dist/runtime/components/Kbd.vue.d.ts +1 -3
- package/dist/runtime/components/Link.d.vue.ts +58 -8
- package/dist/runtime/components/Link.vue.d.ts +58 -8
- package/dist/runtime/components/LinkBase.d.vue.ts +1 -4
- package/dist/runtime/components/LinkBase.vue.d.ts +1 -4
- package/dist/runtime/components/Marquee.d.vue.ts +1 -5
- package/dist/runtime/components/Marquee.vue.d.ts +1 -5
- package/dist/runtime/components/Modal.d.vue.ts +3 -10
- package/dist/runtime/components/Modal.vue +1 -1
- package/dist/runtime/components/Modal.vue.d.ts +3 -10
- package/dist/runtime/components/NavigationMenu.d.vue.ts +3 -3
- package/dist/runtime/components/NavigationMenu.vue +2 -2
- package/dist/runtime/components/NavigationMenu.vue.d.ts +3 -3
- package/dist/runtime/components/PageAnchors.d.vue.ts +3 -1
- package/dist/runtime/components/PageAnchors.vue.d.ts +3 -1
- package/dist/runtime/components/PageAside.d.vue.ts +1 -3
- package/dist/runtime/components/PageAside.vue.d.ts +1 -3
- package/dist/runtime/components/PageCTA.d.vue.ts +1 -4
- package/dist/runtime/components/PageCTA.vue.d.ts +1 -4
- package/dist/runtime/components/PageCard.d.vue.ts +1 -3
- package/dist/runtime/components/PageCard.vue +1 -1
- package/dist/runtime/components/PageCard.vue.d.ts +1 -3
- package/dist/runtime/components/PageFeature.d.vue.ts +1 -3
- package/dist/runtime/components/PageFeature.vue +3 -3
- package/dist/runtime/components/PageFeature.vue.d.ts +1 -3
- package/dist/runtime/components/PageHero.d.vue.ts +1 -3
- package/dist/runtime/components/PageHero.vue.d.ts +1 -3
- package/dist/runtime/components/PageLinks.d.vue.ts +3 -1
- package/dist/runtime/components/PageLinks.vue.d.ts +3 -1
- package/dist/runtime/components/PageList.d.vue.ts +1 -3
- package/dist/runtime/components/PageList.vue.d.ts +1 -3
- package/dist/runtime/components/PageLogos.d.vue.ts +1 -3
- package/dist/runtime/components/PageLogos.vue.d.ts +1 -3
- package/dist/runtime/components/PageSection.d.vue.ts +1 -4
- package/dist/runtime/components/PageSection.vue +1 -1
- package/dist/runtime/components/PageSection.vue.d.ts +1 -4
- package/dist/runtime/components/Pagination.d.vue.ts +1 -12
- package/dist/runtime/components/Pagination.vue +5 -5
- package/dist/runtime/components/Pagination.vue.d.ts +1 -12
- package/dist/runtime/components/PinInput.d.vue.ts +4 -7
- package/dist/runtime/components/PinInput.vue +1 -1
- package/dist/runtime/components/PinInput.vue.d.ts +4 -7
- package/dist/runtime/components/Popover.d.vue.ts +3 -4
- package/dist/runtime/components/Popover.vue.d.ts +3 -4
- package/dist/runtime/components/PricingPlan.d.vue.ts +1 -3
- package/dist/runtime/components/PricingPlan.vue.d.ts +1 -3
- package/dist/runtime/components/PricingPlans.d.vue.ts +3 -1
- package/dist/runtime/components/PricingPlans.vue.d.ts +3 -1
- package/dist/runtime/components/PricingTable.d.vue.ts +3 -1
- package/dist/runtime/components/PricingTable.vue.d.ts +3 -1
- package/dist/runtime/components/Progress.d.vue.ts +1 -5
- package/dist/runtime/components/Progress.vue.d.ts +1 -5
- package/dist/runtime/components/RadioGroup.d.vue.ts +3 -4
- package/dist/runtime/components/RadioGroup.vue.d.ts +3 -4
- package/dist/runtime/components/ScrollArea.d.vue.ts +81 -0
- package/dist/runtime/components/ScrollArea.vue +187 -0
- package/dist/runtime/components/ScrollArea.vue.d.ts +81 -0
- package/dist/runtime/components/Select.d.vue.ts +6 -8
- package/dist/runtime/components/Select.vue +19 -6
- package/dist/runtime/components/Select.vue.d.ts +6 -8
- package/dist/runtime/components/SelectMenu.d.vue.ts +9 -14
- package/dist/runtime/components/SelectMenu.vue +19 -6
- package/dist/runtime/components/SelectMenu.vue.d.ts +9 -14
- package/dist/runtime/components/Separator.d.vue.ts +1 -3
- package/dist/runtime/components/Separator.vue +1 -1
- package/dist/runtime/components/Separator.vue.d.ts +1 -3
- package/dist/runtime/components/Slideover.d.vue.ts +8 -11
- package/dist/runtime/components/Slideover.vue +4 -2
- package/dist/runtime/components/Slideover.vue.d.ts +8 -11
- package/dist/runtime/components/Slider.d.vue.ts +3 -4
- package/dist/runtime/components/Slider.vue +2 -2
- package/dist/runtime/components/Slider.vue.d.ts +3 -4
- package/dist/runtime/components/Stepper.d.vue.ts +3 -5
- package/dist/runtime/components/Stepper.vue.d.ts +3 -5
- package/dist/runtime/components/Switch.vue +3 -3
- package/dist/runtime/components/Table.d.vue.ts +5 -16
- package/dist/runtime/components/Table.vue +55 -33
- package/dist/runtime/components/Table.vue.d.ts +5 -16
- package/dist/runtime/components/Tabs.d.vue.ts +3 -3
- package/dist/runtime/components/Tabs.vue.d.ts +3 -3
- package/dist/runtime/components/Textarea.d.vue.ts +5 -7
- package/dist/runtime/components/Textarea.vue +4 -4
- package/dist/runtime/components/Textarea.vue.d.ts +5 -7
- package/dist/runtime/components/Timeline.d.vue.ts +3 -3
- package/dist/runtime/components/Timeline.vue.d.ts +3 -3
- package/dist/runtime/components/Toast.d.vue.ts +3 -7
- package/dist/runtime/components/Toast.vue +2 -2
- package/dist/runtime/components/Toast.vue.d.ts +3 -7
- package/dist/runtime/components/Toaster.d.vue.ts +1 -7
- package/dist/runtime/components/Toaster.vue.d.ts +1 -7
- package/dist/runtime/components/Tooltip.d.vue.ts +1 -3
- package/dist/runtime/components/Tooltip.vue.d.ts +1 -3
- package/dist/runtime/components/Tree.d.vue.ts +3 -4
- package/dist/runtime/components/Tree.vue +3 -3
- package/dist/runtime/components/Tree.vue.d.ts +3 -4
- package/dist/runtime/components/User.d.vue.ts +1 -3
- package/dist/runtime/components/User.vue +0 -1
- package/dist/runtime/components/User.vue.d.ts +1 -3
- package/dist/runtime/components/color-mode/ColorModeAvatar.vue +1 -1
- package/dist/runtime/components/color-mode/ColorModeButton.d.vue.ts +3 -6
- package/dist/runtime/components/color-mode/ColorModeButton.vue +8 -26
- package/dist/runtime/components/color-mode/ColorModeButton.vue.d.ts +3 -6
- package/dist/runtime/components/color-mode/ColorModeSelect.d.vue.ts +1 -3
- package/dist/runtime/components/color-mode/ColorModeSelect.vue +5 -4
- package/dist/runtime/components/color-mode/ColorModeSelect.vue.d.ts +1 -3
- package/dist/runtime/components/color-mode/ColorModeSwitch.vue +1 -1
- package/dist/runtime/components/content/ContentNavigation.d.vue.ts +3 -3
- package/dist/runtime/components/content/ContentNavigation.vue +1 -1
- package/dist/runtime/components/content/ContentNavigation.vue.d.ts +3 -3
- package/dist/runtime/components/content/ContentSearch.d.vue.ts +6 -6
- package/dist/runtime/components/content/ContentSearch.vue +3 -3
- package/dist/runtime/components/content/ContentSearch.vue.d.ts +6 -6
- package/dist/runtime/components/content/ContentSearchButton.d.vue.ts +3 -8
- package/dist/runtime/components/content/ContentSearchButton.vue +5 -24
- package/dist/runtime/components/content/ContentSearchButton.vue.d.ts +3 -8
- package/dist/runtime/components/content/ContentSurround.d.vue.ts +3 -1
- package/dist/runtime/components/content/ContentSurround.vue +2 -2
- package/dist/runtime/components/content/ContentSurround.vue.d.ts +3 -1
- package/dist/runtime/components/content/ContentToc.d.vue.ts +3 -4
- package/dist/runtime/components/content/ContentToc.vue +1 -1
- package/dist/runtime/components/content/ContentToc.vue.d.ts +3 -4
- package/dist/runtime/components/locale/LocaleSelect.d.vue.ts +1 -5
- package/dist/runtime/components/locale/LocaleSelect.vue +15 -8
- package/dist/runtime/components/locale/LocaleSelect.vue.d.ts +1 -5
- package/dist/runtime/components/prose/Accordion.d.vue.ts +1 -3
- package/dist/runtime/components/prose/Accordion.vue.d.ts +1 -3
- package/dist/runtime/components/prose/Callout.vue +1 -2
- package/dist/runtime/components/prose/Card.vue +1 -2
- package/dist/runtime/components/prose/CodeCollapse.vue +1 -1
- package/dist/runtime/components/prose/CodeGroup.d.vue.ts +1 -3
- package/dist/runtime/components/prose/CodeGroup.vue.d.ts +1 -3
- package/dist/runtime/components/prose/CodeIcon.vue +1 -1
- package/dist/runtime/components/prose/CodeTree.d.vue.ts +20 -1
- package/dist/runtime/components/prose/CodeTree.vue +32 -8
- package/dist/runtime/components/prose/CodeTree.vue.d.ts +20 -1
- package/dist/runtime/components/prose/Collapsible.vue +1 -1
- package/dist/runtime/components/prose/Img.d.vue.ts +1 -3
- package/dist/runtime/components/prose/Img.vue.d.ts +1 -3
- package/dist/runtime/components/prose/Pre.vue +1 -1
- package/dist/runtime/components/prose/Tabs.d.vue.ts +1 -3
- package/dist/runtime/components/prose/Tabs.vue.d.ts +1 -3
- package/dist/runtime/components/prose/callout/Caution.d.vue.ts +2 -2
- package/dist/runtime/components/prose/callout/Caution.vue.d.ts +2 -2
- package/dist/runtime/components/prose/callout/Note.d.vue.ts +2 -2
- package/dist/runtime/components/prose/callout/Note.vue.d.ts +2 -2
- package/dist/runtime/components/prose/callout/Tip.d.vue.ts +2 -2
- package/dist/runtime/components/prose/callout/Tip.vue.d.ts +2 -2
- package/dist/runtime/components/prose/callout/Warning.d.vue.ts +2 -2
- package/dist/runtime/components/prose/callout/Warning.vue.d.ts +2 -2
- package/dist/runtime/composables/defineShortcuts.d.ts +2 -1
- package/dist/runtime/composables/defineShortcuts.js +62 -15
- package/dist/runtime/composables/useComponentIcons.d.ts +2 -2
- package/dist/runtime/composables/useEditorMenu.d.ts +64 -0
- package/dist/runtime/composables/useEditorMenu.js +448 -0
- package/dist/runtime/composables/useFileUpload.d.ts +1 -2
- package/dist/runtime/locale/en_gb.d.ts +3 -0
- package/dist/runtime/locale/en_gb.js +7 -0
- package/dist/runtime/locale/eu.d.ts +3 -0
- package/dist/runtime/locale/eu.js +129 -0
- package/dist/runtime/locale/index.d.ts +3 -0
- package/dist/runtime/locale/index.js +3 -0
- package/dist/runtime/locale/lo.d.ts +3 -0
- package/dist/runtime/locale/lo.js +129 -0
- package/dist/runtime/types/editor.d.ts +69 -0
- package/dist/runtime/types/editor.js +0 -0
- package/dist/runtime/types/index.d.ts +8 -0
- package/dist/runtime/types/index.js +8 -0
- package/dist/runtime/utils/content.d.ts +2 -2
- package/dist/runtime/utils/editor.d.ts +69 -0
- package/dist/runtime/utils/editor.js +364 -0
- package/dist/runtime/utils/locale.d.ts +1 -2
- package/dist/runtime/vue/components/Icon.vue +1 -1
- package/dist/runtime/vue/components/color-mode/ColorModeSelect.d.vue.ts +1 -3
- package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue +5 -4
- package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue.d.ts +1 -3
- package/dist/runtime/vue/components/color-mode/ColorModeSwitch.vue +1 -1
- package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.d.vue.ts +6 -8
- package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.vue +27 -8
- package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.vue.d.ts +6 -8
- package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.d.vue.ts +3 -5
- package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.vue +5 -2
- package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.vue.d.ts +3 -5
- package/dist/runtime/vue/overrides/none/Link.d.vue.ts +71 -0
- package/dist/runtime/vue/overrides/none/Link.vue +122 -0
- package/dist/runtime/vue/overrides/none/Link.vue.d.ts +71 -0
- package/dist/runtime/vue/{components → overrides/vue-router}/Link.d.vue.ts +6 -9
- package/dist/runtime/vue/{components → overrides/vue-router}/Link.vue +34 -11
- package/dist/runtime/vue/{components → overrides/vue-router}/Link.vue.d.ts +6 -9
- package/dist/runtime/vue/{stubs.d.ts → stubs/base.d.ts} +4 -5
- package/dist/runtime/vue/{stubs.js → stubs/base.js} +4 -5
- package/dist/runtime/vue/stubs/inertia.d.ts +5 -0
- package/dist/runtime/vue/stubs/inertia.js +10 -0
- package/dist/runtime/vue/stubs/none.d.ts +56 -0
- package/dist/runtime/vue/stubs/none.js +48 -0
- package/dist/runtime/vue/stubs/vue-router.d.ts +2 -0
- package/dist/runtime/vue/stubs/vue-router.js +2 -0
- package/dist/shared/{ui.B77q-Dvh.mjs → ui.DegC4tw1.mjs} +282 -60
- package/dist/unplugin.d.mts +14 -0
- package/dist/unplugin.mjs +73 -48
- package/dist/vite.mjs +1 -1
- package/package.json +49 -31
- package/dist/runtime/inertia/stubs.d.ts +0 -44
- package/dist/runtime/inertia/stubs.js +0 -84
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LinkProps } from '
|
|
1
|
+
import type { LinkProps } from '../../../types';
|
|
2
2
|
export interface LinkBaseProps {
|
|
3
3
|
as?: string;
|
|
4
4
|
type?: string;
|
|
@@ -6,13 +6,11 @@ export interface LinkBaseProps {
|
|
|
6
6
|
onClick?: ((e: MouseEvent) => void | Promise<void>) | Array<((e: MouseEvent) => void | Promise<void>)>;
|
|
7
7
|
href?: string;
|
|
8
8
|
target?: LinkProps['target'];
|
|
9
|
+
rel?: LinkProps['rel'];
|
|
9
10
|
active?: boolean;
|
|
10
11
|
isExternal?: boolean;
|
|
11
12
|
}
|
|
12
|
-
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkBaseProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkBaseProps> & Readonly<{}>, {
|
|
13
|
-
type: string;
|
|
14
|
-
as: string;
|
|
15
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkBaseProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkBaseProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
|
|
16
14
|
default?: (props: {}) => any;
|
|
17
15
|
} & {
|
|
18
16
|
default?: (props: {}) => any;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { ButtonHTMLAttributes } from 'vue';
|
|
2
|
+
interface BaseLinkProps {
|
|
3
|
+
/**
|
|
4
|
+
* Route Location the link should navigate to when clicked on.
|
|
5
|
+
*/
|
|
6
|
+
to?: string;
|
|
7
|
+
/**
|
|
8
|
+
* An alias for `to`. If used with `to`, `href` will be ignored
|
|
9
|
+
*/
|
|
10
|
+
href?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Forces the link to be considered as external (true) or internal (false). This is helpful to handle edge-cases
|
|
13
|
+
*/
|
|
14
|
+
external?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Where to display the linked URL, as the name for a browsing context.
|
|
17
|
+
*/
|
|
18
|
+
target?: '_blank' | '_parent' | '_self' | '_top' | (string & {}) | null;
|
|
19
|
+
/**
|
|
20
|
+
* A rel attribute value to apply on the link. Defaults to "noopener noreferrer" for external links.
|
|
21
|
+
*/
|
|
22
|
+
rel?: 'noopener' | 'noreferrer' | 'nofollow' | 'sponsored' | 'ugc' | (string & {}) | null;
|
|
23
|
+
/**
|
|
24
|
+
* If set to true, no rel attribute will be added to the link
|
|
25
|
+
*/
|
|
26
|
+
noRel?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface LinkProps extends BaseLinkProps {
|
|
29
|
+
/**
|
|
30
|
+
* The element or component this component should render as when not a link.
|
|
31
|
+
* @defaultValue 'button'
|
|
32
|
+
*/
|
|
33
|
+
as?: any;
|
|
34
|
+
/**
|
|
35
|
+
* The type of the button when not a link.
|
|
36
|
+
* @defaultValue 'button'
|
|
37
|
+
*/
|
|
38
|
+
type?: ButtonHTMLAttributes['type'];
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
/** Force the link to be active independent of the current route. */
|
|
41
|
+
active?: boolean;
|
|
42
|
+
/** Will only be active if the current route is an exact match. */
|
|
43
|
+
exact?: boolean;
|
|
44
|
+
/** Allows controlling how the current route query sets the link as active. */
|
|
45
|
+
exactQuery?: boolean | 'partial';
|
|
46
|
+
/** Will only be active if the current route hash is an exact match. */
|
|
47
|
+
exactHash?: boolean;
|
|
48
|
+
/** The class to apply when the link is inactive. */
|
|
49
|
+
inactiveClass?: string;
|
|
50
|
+
/** The class to apply when the link is active. */
|
|
51
|
+
activeClass?: string;
|
|
52
|
+
/** The value of the `aria-current` attribute when the link is active. */
|
|
53
|
+
ariaCurrentValue?: string;
|
|
54
|
+
custom?: boolean;
|
|
55
|
+
/** When `true`, only styles from `class`, `activeClass`, and `inactiveClass` will be applied. */
|
|
56
|
+
raw?: boolean;
|
|
57
|
+
class?: any;
|
|
58
|
+
}
|
|
59
|
+
export interface LinkSlots {
|
|
60
|
+
default(props: {
|
|
61
|
+
active: boolean;
|
|
62
|
+
}): any;
|
|
63
|
+
}
|
|
64
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
|
|
65
|
+
declare const _default: typeof __VLS_export;
|
|
66
|
+
export default _default;
|
|
67
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
68
|
+
new (): {
|
|
69
|
+
$slots: S;
|
|
70
|
+
};
|
|
71
|
+
};
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
<script>
|
|
2
|
+
import theme from "#build/ui/link";
|
|
3
|
+
</script>
|
|
4
|
+
|
|
5
|
+
<script setup>
|
|
6
|
+
import { computed } from "vue";
|
|
7
|
+
import { defu } from "defu";
|
|
8
|
+
import { hasProtocol } from "ufo";
|
|
9
|
+
import { useAppConfig } from "#imports";
|
|
10
|
+
import { mergeClasses } from "../../../utils";
|
|
11
|
+
import { tv } from "../../../utils/tv";
|
|
12
|
+
import ULinkBase from "../../../components/LinkBase.vue";
|
|
13
|
+
defineOptions({ inheritAttrs: false });
|
|
14
|
+
const props = defineProps({
|
|
15
|
+
as: { type: null, required: false, default: "button" },
|
|
16
|
+
type: { type: null, required: false, default: "button" },
|
|
17
|
+
disabled: { type: Boolean, required: false },
|
|
18
|
+
active: { type: Boolean, required: false, default: void 0 },
|
|
19
|
+
exact: { type: Boolean, required: false },
|
|
20
|
+
exactQuery: { type: [Boolean, String], required: false },
|
|
21
|
+
exactHash: { type: Boolean, required: false },
|
|
22
|
+
inactiveClass: { type: String, required: false },
|
|
23
|
+
activeClass: { type: String, required: false },
|
|
24
|
+
ariaCurrentValue: { type: String, required: false, default: "page" },
|
|
25
|
+
custom: { type: Boolean, required: false },
|
|
26
|
+
raw: { type: Boolean, required: false },
|
|
27
|
+
class: { type: null, required: false },
|
|
28
|
+
to: { type: String, required: false },
|
|
29
|
+
href: { type: String, required: false },
|
|
30
|
+
external: { type: Boolean, required: false },
|
|
31
|
+
target: { type: [String, Object, null], required: false },
|
|
32
|
+
rel: { type: [String, Object, null], required: false },
|
|
33
|
+
noRel: { type: Boolean, required: false }
|
|
34
|
+
});
|
|
35
|
+
defineSlots();
|
|
36
|
+
const appConfig = useAppConfig();
|
|
37
|
+
const ui = computed(() => tv({
|
|
38
|
+
extend: tv(theme),
|
|
39
|
+
...defu({
|
|
40
|
+
variants: {
|
|
41
|
+
active: {
|
|
42
|
+
true: mergeClasses(appConfig.ui?.link?.variants?.active?.true, props.activeClass),
|
|
43
|
+
false: mergeClasses(appConfig.ui?.link?.variants?.active?.false, props.inactiveClass)
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}, appConfig.ui?.link || {})
|
|
47
|
+
}));
|
|
48
|
+
const href = computed(() => props.to ?? props.href);
|
|
49
|
+
const isExternal = computed(() => {
|
|
50
|
+
if (props.target === "_blank") {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
if (props.external) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
if (!href.value) {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
return hasProtocol(href.value, { acceptRelative: true });
|
|
60
|
+
});
|
|
61
|
+
const isLinkActive = computed(() => {
|
|
62
|
+
if (props.active !== void 0) {
|
|
63
|
+
return props.active;
|
|
64
|
+
}
|
|
65
|
+
return false;
|
|
66
|
+
});
|
|
67
|
+
const linkClass = computed(() => {
|
|
68
|
+
const active = isLinkActive.value;
|
|
69
|
+
if (props.raw) {
|
|
70
|
+
return [props.class, active ? props.activeClass : props.inactiveClass];
|
|
71
|
+
}
|
|
72
|
+
return ui.value({ class: props.class, active, disabled: props.disabled });
|
|
73
|
+
});
|
|
74
|
+
const linkRel = computed(() => {
|
|
75
|
+
if (props.noRel) {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
if (props.rel) {
|
|
79
|
+
return props.rel;
|
|
80
|
+
}
|
|
81
|
+
if (isExternal.value) {
|
|
82
|
+
return "noopener noreferrer";
|
|
83
|
+
}
|
|
84
|
+
return null;
|
|
85
|
+
});
|
|
86
|
+
</script>
|
|
87
|
+
|
|
88
|
+
<template>
|
|
89
|
+
<template v-if="custom">
|
|
90
|
+
<slot
|
|
91
|
+
v-bind="{
|
|
92
|
+
...$attrs,
|
|
93
|
+
as,
|
|
94
|
+
type,
|
|
95
|
+
disabled,
|
|
96
|
+
href,
|
|
97
|
+
navigate: void 0,
|
|
98
|
+
rel: linkRel,
|
|
99
|
+
target: target || (isExternal ? '_blank' : void 0),
|
|
100
|
+
isExternal,
|
|
101
|
+
active: isLinkActive
|
|
102
|
+
}"
|
|
103
|
+
/>
|
|
104
|
+
</template>
|
|
105
|
+
<ULinkBase
|
|
106
|
+
v-else
|
|
107
|
+
v-bind="{
|
|
108
|
+
...$attrs,
|
|
109
|
+
as,
|
|
110
|
+
type,
|
|
111
|
+
disabled,
|
|
112
|
+
href,
|
|
113
|
+
navigate: void 0,
|
|
114
|
+
rel: linkRel,
|
|
115
|
+
target: target || (isExternal ? '_blank' : void 0),
|
|
116
|
+
isExternal
|
|
117
|
+
}"
|
|
118
|
+
:class="linkClass"
|
|
119
|
+
>
|
|
120
|
+
<slot :active="isLinkActive" />
|
|
121
|
+
</ULinkBase>
|
|
122
|
+
</template>
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { ButtonHTMLAttributes } from 'vue';
|
|
2
|
+
interface BaseLinkProps {
|
|
3
|
+
/**
|
|
4
|
+
* Route Location the link should navigate to when clicked on.
|
|
5
|
+
*/
|
|
6
|
+
to?: string;
|
|
7
|
+
/**
|
|
8
|
+
* An alias for `to`. If used with `to`, `href` will be ignored
|
|
9
|
+
*/
|
|
10
|
+
href?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Forces the link to be considered as external (true) or internal (false). This is helpful to handle edge-cases
|
|
13
|
+
*/
|
|
14
|
+
external?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Where to display the linked URL, as the name for a browsing context.
|
|
17
|
+
*/
|
|
18
|
+
target?: '_blank' | '_parent' | '_self' | '_top' | (string & {}) | null;
|
|
19
|
+
/**
|
|
20
|
+
* A rel attribute value to apply on the link. Defaults to "noopener noreferrer" for external links.
|
|
21
|
+
*/
|
|
22
|
+
rel?: 'noopener' | 'noreferrer' | 'nofollow' | 'sponsored' | 'ugc' | (string & {}) | null;
|
|
23
|
+
/**
|
|
24
|
+
* If set to true, no rel attribute will be added to the link
|
|
25
|
+
*/
|
|
26
|
+
noRel?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface LinkProps extends BaseLinkProps {
|
|
29
|
+
/**
|
|
30
|
+
* The element or component this component should render as when not a link.
|
|
31
|
+
* @defaultValue 'button'
|
|
32
|
+
*/
|
|
33
|
+
as?: any;
|
|
34
|
+
/**
|
|
35
|
+
* The type of the button when not a link.
|
|
36
|
+
* @defaultValue 'button'
|
|
37
|
+
*/
|
|
38
|
+
type?: ButtonHTMLAttributes['type'];
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
/** Force the link to be active independent of the current route. */
|
|
41
|
+
active?: boolean;
|
|
42
|
+
/** Will only be active if the current route is an exact match. */
|
|
43
|
+
exact?: boolean;
|
|
44
|
+
/** Allows controlling how the current route query sets the link as active. */
|
|
45
|
+
exactQuery?: boolean | 'partial';
|
|
46
|
+
/** Will only be active if the current route hash is an exact match. */
|
|
47
|
+
exactHash?: boolean;
|
|
48
|
+
/** The class to apply when the link is inactive. */
|
|
49
|
+
inactiveClass?: string;
|
|
50
|
+
/** The class to apply when the link is active. */
|
|
51
|
+
activeClass?: string;
|
|
52
|
+
/** The value of the `aria-current` attribute when the link is active. */
|
|
53
|
+
ariaCurrentValue?: string;
|
|
54
|
+
custom?: boolean;
|
|
55
|
+
/** When `true`, only styles from `class`, `activeClass`, and `inactiveClass` will be applied. */
|
|
56
|
+
raw?: boolean;
|
|
57
|
+
class?: any;
|
|
58
|
+
}
|
|
59
|
+
export interface LinkSlots {
|
|
60
|
+
default(props: {
|
|
61
|
+
active: boolean;
|
|
62
|
+
}): any;
|
|
63
|
+
}
|
|
64
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
|
|
65
|
+
declare const _default: typeof __VLS_export;
|
|
66
|
+
export default _default;
|
|
67
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
68
|
+
new (): {
|
|
69
|
+
$slots: S;
|
|
70
|
+
};
|
|
71
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RouterLinkProps } from 'vue-router';
|
|
2
|
-
import type { ButtonHTMLAttributes, AnchorHTMLAttributes } from '
|
|
2
|
+
import type { ButtonHTMLAttributes, AnchorHTMLAttributes } from '../../../types/html';
|
|
3
3
|
export interface LinkProps extends Partial<Omit<RouterLinkProps, 'custom'>>, /** @vue-ignore */ Omit<ButtonHTMLAttributes, 'type' | 'disabled'>, /** @vue-ignore */ Omit<AnchorHTMLAttributes, 'href' | 'target' | 'rel' | 'type'> {
|
|
4
4
|
/**
|
|
5
5
|
* The element or component this component should render as when not a link.
|
|
@@ -22,6 +22,10 @@ export interface LinkProps extends Partial<Omit<RouterLinkProps, 'custom'>>, /**
|
|
|
22
22
|
* A rel attribute value to apply on the link. Defaults to "noopener noreferrer" for external links.
|
|
23
23
|
*/
|
|
24
24
|
rel?: 'noopener' | 'noreferrer' | 'nofollow' | 'sponsored' | 'ugc' | (string & {}) | null;
|
|
25
|
+
/**
|
|
26
|
+
* If set to true, no rel attribute will be added to the link
|
|
27
|
+
*/
|
|
28
|
+
noRel?: boolean;
|
|
25
29
|
/**
|
|
26
30
|
* The type of the button when not a link.
|
|
27
31
|
* @defaultValue 'button'
|
|
@@ -48,14 +52,7 @@ export interface LinkSlots {
|
|
|
48
52
|
active: boolean;
|
|
49
53
|
}): any;
|
|
50
54
|
}
|
|
51
|
-
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {
|
|
52
|
-
type: "reset" | "submit" | "button";
|
|
53
|
-
as: any;
|
|
54
|
-
active: boolean;
|
|
55
|
-
activeClass: string;
|
|
56
|
-
ariaCurrentValue: "page" | "step" | "location" | "date" | "time" | "true" | "false";
|
|
57
|
-
inactiveClass: string;
|
|
58
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
|
|
55
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
|
|
59
56
|
declare const _default: typeof __VLS_export;
|
|
60
57
|
export default _default;
|
|
61
58
|
type __VLS_WithSlots<T, S> = T & {
|
|
@@ -11,9 +11,10 @@ import { reactiveOmit } from "@vueuse/core";
|
|
|
11
11
|
import { hasProtocol } from "ufo";
|
|
12
12
|
import { useRoute, RouterLink } from "vue-router";
|
|
13
13
|
import { useAppConfig } from "#imports";
|
|
14
|
-
import { tv } from "
|
|
15
|
-
import {
|
|
16
|
-
import
|
|
14
|
+
import { tv } from "../../../utils/tv";
|
|
15
|
+
import { mergeClasses } from "../../../utils";
|
|
16
|
+
import { isPartiallyEqual } from "../../../utils/link";
|
|
17
|
+
import ULinkBase from "../../../components/LinkBase.vue";
|
|
17
18
|
defineOptions({ inheritAttrs: false });
|
|
18
19
|
const props = defineProps({
|
|
19
20
|
as: { type: null, required: false, default: "button" },
|
|
@@ -21,17 +22,18 @@ const props = defineProps({
|
|
|
21
22
|
external: { type: Boolean, required: false },
|
|
22
23
|
target: { type: [String, Object, null], required: false },
|
|
23
24
|
rel: { type: [String, Object, null], required: false },
|
|
25
|
+
noRel: { type: Boolean, required: false },
|
|
24
26
|
type: { type: null, required: false, default: "button" },
|
|
25
27
|
disabled: { type: Boolean, required: false },
|
|
26
28
|
active: { type: Boolean, required: false, default: void 0 },
|
|
27
29
|
exact: { type: Boolean, required: false },
|
|
28
30
|
exactQuery: { type: [Boolean, String], required: false },
|
|
29
31
|
exactHash: { type: Boolean, required: false },
|
|
30
|
-
inactiveClass: { type: String, required: false
|
|
32
|
+
inactiveClass: { type: String, required: false },
|
|
31
33
|
custom: { type: Boolean, required: false },
|
|
32
34
|
raw: { type: Boolean, required: false },
|
|
33
35
|
class: { type: null, required: false },
|
|
34
|
-
activeClass: { type: String, required: false
|
|
36
|
+
activeClass: { type: String, required: false },
|
|
35
37
|
exactActiveClass: { type: String, required: false },
|
|
36
38
|
ariaCurrentValue: { type: String, required: false, default: "page" },
|
|
37
39
|
viewTransition: { type: Boolean, required: false },
|
|
@@ -41,14 +43,14 @@ const props = defineProps({
|
|
|
41
43
|
defineSlots();
|
|
42
44
|
const route = useRoute();
|
|
43
45
|
const appConfig = useAppConfig();
|
|
44
|
-
const routerLinkProps = useForwardProps(reactiveOmit(props, "as", "type", "disabled", "active", "exact", "exactQuery", "exactHash", "activeClass", "inactiveClass", "to", "href", "raw", "custom", "class"));
|
|
46
|
+
const routerLinkProps = useForwardProps(reactiveOmit(props, "as", "type", "disabled", "active", "exact", "exactQuery", "exactHash", "activeClass", "inactiveClass", "to", "href", "raw", "custom", "class", "noRel"));
|
|
45
47
|
const ui = computed(() => tv({
|
|
46
48
|
extend: tv(theme),
|
|
47
49
|
...defu({
|
|
48
50
|
variants: {
|
|
49
51
|
active: {
|
|
50
|
-
true: props.activeClass,
|
|
51
|
-
false: props.inactiveClass
|
|
52
|
+
true: mergeClasses(appConfig.ui?.link?.variants?.active?.true, props.activeClass),
|
|
53
|
+
false: mergeClasses(appConfig.ui?.link?.variants?.active?.false, props.inactiveClass)
|
|
52
54
|
}
|
|
53
55
|
}
|
|
54
56
|
}, appConfig.ui?.link || {})
|
|
@@ -63,6 +65,19 @@ const isExternal = computed(() => {
|
|
|
63
65
|
}
|
|
64
66
|
return typeof to.value === "string" && hasProtocol(to.value, { acceptRelative: true });
|
|
65
67
|
});
|
|
68
|
+
const hasTarget = computed(() => !!props.target && props.target !== "_self");
|
|
69
|
+
const rel = computed(() => {
|
|
70
|
+
if (props.noRel) {
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
if (props.rel !== void 0) {
|
|
74
|
+
return props.rel || null;
|
|
75
|
+
}
|
|
76
|
+
if (isExternal.value || hasTarget.value) {
|
|
77
|
+
return "noopener noreferrer";
|
|
78
|
+
}
|
|
79
|
+
return null;
|
|
80
|
+
});
|
|
66
81
|
function isLinkActive({ route: linkRoute, isActive, isExactActive }) {
|
|
67
82
|
if (props.active !== void 0) {
|
|
68
83
|
return props.active;
|
|
@@ -108,6 +123,9 @@ function resolveLinkClass({ route: route2, isActive, isExactActive } = {}) {
|
|
|
108
123
|
disabled,
|
|
109
124
|
href,
|
|
110
125
|
navigate,
|
|
126
|
+
rel,
|
|
127
|
+
target,
|
|
128
|
+
isExternal,
|
|
111
129
|
active: isLinkActive({ route: linkRoute, isActive, isExactActive })
|
|
112
130
|
}"
|
|
113
131
|
/>
|
|
@@ -121,7 +139,10 @@ function resolveLinkClass({ route: route2, isActive, isExactActive } = {}) {
|
|
|
121
139
|
type,
|
|
122
140
|
disabled,
|
|
123
141
|
href,
|
|
124
|
-
navigate
|
|
142
|
+
navigate,
|
|
143
|
+
rel,
|
|
144
|
+
target,
|
|
145
|
+
isExternal
|
|
125
146
|
}"
|
|
126
147
|
:class="resolveLinkClass({ route: linkRoute, isActive, isExactActive })"
|
|
127
148
|
>
|
|
@@ -139,7 +160,8 @@ function resolveLinkClass({ route: route2, isActive, isExactActive } = {}) {
|
|
|
139
160
|
type,
|
|
140
161
|
disabled,
|
|
141
162
|
href: to,
|
|
142
|
-
|
|
163
|
+
rel,
|
|
164
|
+
target,
|
|
143
165
|
active,
|
|
144
166
|
isExternal
|
|
145
167
|
}"
|
|
@@ -153,7 +175,8 @@ function resolveLinkClass({ route: route2, isActive, isExactActive } = {}) {
|
|
|
153
175
|
type,
|
|
154
176
|
disabled,
|
|
155
177
|
href: to,
|
|
156
|
-
|
|
178
|
+
rel,
|
|
179
|
+
target,
|
|
157
180
|
isExternal
|
|
158
181
|
}"
|
|
159
182
|
:class="resolveLinkClass()"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RouterLinkProps } from 'vue-router';
|
|
2
|
-
import type { ButtonHTMLAttributes, AnchorHTMLAttributes } from '
|
|
2
|
+
import type { ButtonHTMLAttributes, AnchorHTMLAttributes } from '../../../types/html';
|
|
3
3
|
export interface LinkProps extends Partial<Omit<RouterLinkProps, 'custom'>>, /** @vue-ignore */ Omit<ButtonHTMLAttributes, 'type' | 'disabled'>, /** @vue-ignore */ Omit<AnchorHTMLAttributes, 'href' | 'target' | 'rel' | 'type'> {
|
|
4
4
|
/**
|
|
5
5
|
* The element or component this component should render as when not a link.
|
|
@@ -22,6 +22,10 @@ export interface LinkProps extends Partial<Omit<RouterLinkProps, 'custom'>>, /**
|
|
|
22
22
|
* A rel attribute value to apply on the link. Defaults to "noopener noreferrer" for external links.
|
|
23
23
|
*/
|
|
24
24
|
rel?: 'noopener' | 'noreferrer' | 'nofollow' | 'sponsored' | 'ugc' | (string & {}) | null;
|
|
25
|
+
/**
|
|
26
|
+
* If set to true, no rel attribute will be added to the link
|
|
27
|
+
*/
|
|
28
|
+
noRel?: boolean;
|
|
25
29
|
/**
|
|
26
30
|
* The type of the button when not a link.
|
|
27
31
|
* @defaultValue 'button'
|
|
@@ -48,14 +52,7 @@ export interface LinkSlots {
|
|
|
48
52
|
active: boolean;
|
|
49
53
|
}): any;
|
|
50
54
|
}
|
|
51
|
-
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {
|
|
52
|
-
type: "reset" | "submit" | "button";
|
|
53
|
-
as: any;
|
|
54
|
-
active: boolean;
|
|
55
|
-
activeClass: string;
|
|
56
|
-
ariaCurrentValue: "page" | "step" | "location" | "date" | "time" | "true" | "false";
|
|
57
|
-
inactiveClass: string;
|
|
58
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
|
|
55
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
|
|
59
56
|
declare const _default: typeof __VLS_export;
|
|
60
57
|
export default _default;
|
|
61
58
|
type __VLS_WithSlots<T, S> = T & {
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
2
|
import type { NuxtApp } from '#app';
|
|
3
3
|
export { useHead } from '@unhead/vue';
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export { useLocale } from '../composables/useLocale';
|
|
4
|
+
export { useAppConfig } from '../composables/useAppConfig';
|
|
5
|
+
export { defineShortcuts } from '../../composables/defineShortcuts';
|
|
6
|
+
export { defineLocale } from '../../composables/defineLocale';
|
|
7
|
+
export { useLocale } from '../../composables/useLocale';
|
|
9
8
|
export declare const clearError: () => void;
|
|
10
9
|
export declare const useColorMode: () => {
|
|
11
10
|
forced: boolean;
|
|
@@ -3,11 +3,10 @@ import { createHooks } from "hookable";
|
|
|
3
3
|
import { useColorMode as useColorModeVueUse } from "@vueuse/core";
|
|
4
4
|
import appConfig from "#build/app.config";
|
|
5
5
|
export { useHead } from "@unhead/vue";
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export { useLocale } from "../composables/useLocale.js";
|
|
6
|
+
export { useAppConfig } from "../composables/useAppConfig.js";
|
|
7
|
+
export { defineShortcuts } from "../../composables/defineShortcuts.js";
|
|
8
|
+
export { defineLocale } from "../../composables/defineLocale.js";
|
|
9
|
+
export { useLocale } from "../../composables/useLocale.js";
|
|
11
10
|
export const clearError = () => {
|
|
12
11
|
};
|
|
13
12
|
export const useColorMode = () => {
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
export * from './base';
|
|
2
|
+
export declare const useRoute: () => {
|
|
3
|
+
fullPath: string;
|
|
4
|
+
path: string;
|
|
5
|
+
name: null;
|
|
6
|
+
params: {};
|
|
7
|
+
query: {};
|
|
8
|
+
hash: string;
|
|
9
|
+
meta: {};
|
|
10
|
+
matched: never[];
|
|
11
|
+
redirectedFrom: undefined;
|
|
12
|
+
};
|
|
13
|
+
export declare const useRouter: () => {
|
|
14
|
+
push: () => Promise<void>;
|
|
15
|
+
replace: () => Promise<void>;
|
|
16
|
+
go: () => void;
|
|
17
|
+
back: () => void;
|
|
18
|
+
forward: () => void;
|
|
19
|
+
beforeEach: () => () => void;
|
|
20
|
+
beforeResolve: () => () => void;
|
|
21
|
+
afterEach: () => () => void;
|
|
22
|
+
onError: () => () => void;
|
|
23
|
+
isReady: () => Promise<boolean>;
|
|
24
|
+
currentRoute: import("vue").Ref<{
|
|
25
|
+
fullPath: string;
|
|
26
|
+
path: string;
|
|
27
|
+
name: null;
|
|
28
|
+
params: {};
|
|
29
|
+
query: {};
|
|
30
|
+
hash: string;
|
|
31
|
+
meta: {};
|
|
32
|
+
matched: never[];
|
|
33
|
+
redirectedFrom: undefined;
|
|
34
|
+
}, {
|
|
35
|
+
fullPath: string;
|
|
36
|
+
path: string;
|
|
37
|
+
name: null;
|
|
38
|
+
params: {};
|
|
39
|
+
query: {};
|
|
40
|
+
hash: string;
|
|
41
|
+
meta: {};
|
|
42
|
+
matched: never[];
|
|
43
|
+
redirectedFrom: undefined;
|
|
44
|
+
} | {
|
|
45
|
+
fullPath: string;
|
|
46
|
+
path: string;
|
|
47
|
+
name: null;
|
|
48
|
+
params: {};
|
|
49
|
+
query: {};
|
|
50
|
+
hash: string;
|
|
51
|
+
meta: {};
|
|
52
|
+
matched: never[];
|
|
53
|
+
redirectedFrom: undefined;
|
|
54
|
+
}>;
|
|
55
|
+
options: {};
|
|
56
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ref } from "vue";
|
|
2
|
+
export * from "./base.js";
|
|
3
|
+
export const useRoute = () => {
|
|
4
|
+
return {
|
|
5
|
+
fullPath: "/",
|
|
6
|
+
path: "/",
|
|
7
|
+
name: null,
|
|
8
|
+
params: {},
|
|
9
|
+
query: {},
|
|
10
|
+
hash: "",
|
|
11
|
+
meta: {},
|
|
12
|
+
matched: [],
|
|
13
|
+
redirectedFrom: void 0
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export const useRouter = () => {
|
|
17
|
+
return {
|
|
18
|
+
push: () => Promise.resolve(),
|
|
19
|
+
replace: () => Promise.resolve(),
|
|
20
|
+
go: () => {
|
|
21
|
+
},
|
|
22
|
+
back: () => {
|
|
23
|
+
},
|
|
24
|
+
forward: () => {
|
|
25
|
+
},
|
|
26
|
+
beforeEach: () => () => {
|
|
27
|
+
},
|
|
28
|
+
beforeResolve: () => () => {
|
|
29
|
+
},
|
|
30
|
+
afterEach: () => () => {
|
|
31
|
+
},
|
|
32
|
+
onError: () => () => {
|
|
33
|
+
},
|
|
34
|
+
isReady: () => Promise.resolve(true),
|
|
35
|
+
currentRoute: ref({
|
|
36
|
+
fullPath: "/",
|
|
37
|
+
path: "/",
|
|
38
|
+
name: null,
|
|
39
|
+
params: {},
|
|
40
|
+
query: {},
|
|
41
|
+
hash: "",
|
|
42
|
+
meta: {},
|
|
43
|
+
matched: [],
|
|
44
|
+
redirectedFrom: void 0
|
|
45
|
+
}),
|
|
46
|
+
options: {}
|
|
47
|
+
};
|
|
48
|
+
};
|