@nuxt/ui 4.0.0-alpha.1 → 4.0.0-beta.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/content/content-navigation.ts +2 -1
- package/.nuxt/ui/marquee.ts +1 -1
- package/.nuxt/ui/progress.ts +3 -3
- package/.nuxt/ui/prose/code-tree.ts +1 -1
- package/.nuxt/ui/prose/img.ts +1 -1
- package/.nuxt/ui/tree.ts +1 -1
- package/README.md +14 -1
- package/dist/module.d.mts +6 -6
- package/dist/module.json +2 -2
- package/dist/module.mjs +8 -6
- package/dist/runtime/components/Accordion.d.vue.ts +79 -0
- package/dist/runtime/components/Accordion.vue +3 -3
- package/dist/runtime/components/Accordion.vue.d.ts +2 -2
- package/dist/runtime/components/Alert.d.vue.ts +81 -0
- package/dist/runtime/components/App.d.vue.ts +25 -0
- package/dist/runtime/components/AuthForm.d.vue.ts +128 -0
- package/dist/runtime/components/AuthForm.vue.d.ts +39 -1
- package/dist/runtime/components/Avatar.d.vue.ts +41 -0
- package/dist/runtime/components/AvatarGroup.d.vue.ts +31 -0
- package/dist/runtime/components/Badge.d.vue.ts +43 -0
- package/dist/runtime/components/Banner.d.vue.ts +72 -0
- package/dist/runtime/components/Banner.vue +1 -1
- package/dist/runtime/components/BlogPost.d.vue.ts +60 -0
- package/dist/runtime/components/BlogPosts.d.vue.ts +31 -0
- package/dist/runtime/components/Breadcrumb.d.vue.ts +67 -0
- package/dist/runtime/components/Breadcrumb.vue +1 -1
- package/dist/runtime/components/Breadcrumb.vue.d.ts +2 -2
- package/dist/runtime/components/Button.d.vue.ts +44 -0
- package/dist/runtime/components/Calendar.d.vue.ts +112 -0
- package/dist/runtime/components/Card.d.vue.ts +29 -0
- package/dist/runtime/components/Carousel.d.vue.ts +127 -0
- package/dist/runtime/components/Carousel.vue.d.ts +10 -10
- package/dist/runtime/components/ChangelogVersion.d.vue.ts +59 -0
- package/dist/runtime/components/ChangelogVersions.d.vue.ts +78 -0
- package/dist/runtime/components/ChangelogVersions.vue +2 -2
- package/dist/runtime/components/ChatMessage.d.vue.ts +67 -0
- package/dist/runtime/components/ChatMessages.d.vue.ts +83 -0
- package/dist/runtime/components/ChatMessages.vue +6 -6
- package/dist/runtime/components/ChatPalette.d.vue.ts +24 -0
- package/dist/runtime/components/ChatPrompt.d.vue.ts +61 -0
- package/dist/runtime/components/ChatPrompt.vue +2 -2
- package/dist/runtime/components/ChatPromptSubmit.d.vue.ts +100 -0
- package/dist/runtime/components/Checkbox.d.vue.ts +74 -0
- package/dist/runtime/components/CheckboxGroup.d.vue.ts +89 -0
- package/dist/runtime/components/CheckboxGroup.vue +8 -8
- package/dist/runtime/components/CheckboxGroup.vue.d.ts +20 -16
- package/dist/runtime/components/Chip.d.vue.ts +57 -0
- package/dist/runtime/components/Collapsible.d.vue.ts +35 -0
- package/dist/runtime/components/ColorPicker.d.vue.ts +48 -0
- package/dist/runtime/components/CommandPalette.d.vue.ts +193 -0
- package/dist/runtime/components/CommandPalette.vue +5 -4
- package/dist/runtime/components/CommandPalette.vue.d.ts +2 -1
- package/dist/runtime/components/Container.d.vue.ts +18 -0
- package/dist/runtime/components/ContextMenu.d.vue.ts +110 -0
- package/dist/runtime/components/ContextMenu.vue +2 -2
- package/dist/runtime/components/ContextMenu.vue.d.ts +2 -2
- package/dist/runtime/components/ContextMenuContent.d.vue.ts +50 -0
- package/dist/runtime/components/ContextMenuContent.vue +2 -2
- package/dist/runtime/components/ContextMenuContent.vue.d.ts +2 -2
- package/dist/runtime/components/DashboardGroup.d.vue.ts +24 -0
- package/dist/runtime/components/DashboardGroup.vue.d.ts +1 -1
- package/dist/runtime/components/DashboardNavbar.d.vue.ts +52 -0
- package/dist/runtime/components/DashboardPanel.d.vue.ts +30 -0
- package/dist/runtime/components/DashboardResizeHandle.d.vue.ts +18 -0
- package/dist/runtime/components/DashboardSearch.d.vue.ts +91 -0
- package/dist/runtime/components/DashboardSearch.vue +2 -2
- package/dist/runtime/components/DashboardSearchButton.d.vue.ts +59 -0
- package/dist/runtime/components/DashboardSearchButton.vue +2 -2
- package/dist/runtime/components/DashboardSidebar.d.vue.ts +75 -0
- package/dist/runtime/components/DashboardSidebarCollapse.d.vue.ts +19 -0
- package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +19 -0
- package/dist/runtime/components/DashboardToolbar.d.vue.ts +25 -0
- package/dist/runtime/components/Drawer.d.vue.ts +84 -0
- package/dist/runtime/components/DropdownMenu.d.vue.ts +120 -0
- package/dist/runtime/components/DropdownMenu.vue +2 -2
- package/dist/runtime/components/DropdownMenu.vue.d.ts +2 -2
- package/dist/runtime/components/DropdownMenuContent.d.vue.ts +56 -0
- package/dist/runtime/components/DropdownMenuContent.vue +2 -2
- package/dist/runtime/components/DropdownMenuContent.vue.d.ts +2 -2
- package/dist/runtime/components/Error.d.vue.ts +47 -0
- package/dist/runtime/components/FieldGroup.d.vue.ts +34 -0
- package/dist/runtime/components/FileUpload.d.vue.ts +166 -0
- package/dist/runtime/components/FileUpload.vue +1 -0
- package/dist/runtime/components/Footer.d.vue.ts +29 -0
- package/dist/runtime/components/FooterColumns.d.vue.ts +57 -0
- package/dist/runtime/components/Form.d.vue.ts +114 -0
- package/dist/runtime/components/Form.vue +144 -60
- package/dist/runtime/components/Form.vue.d.ts +54 -11
- package/dist/runtime/components/FormField.d.vue.ts +61 -0
- package/dist/runtime/components/FormField.vue +9 -3
- package/dist/runtime/components/Header.d.vue.ts +68 -0
- package/dist/runtime/components/Icon.d.vue.ts +8 -0
- package/dist/runtime/components/Input.d.vue.ts +74 -0
- package/dist/runtime/components/Input.vue.d.ts +4 -3
- package/dist/runtime/components/InputMenu.d.vue.ts +330 -0
- package/dist/runtime/components/InputMenu.vue +2 -2
- package/dist/runtime/components/InputMenu.vue.d.ts +4 -4
- package/dist/runtime/components/InputNumber.d.vue.ts +188 -0
- package/dist/runtime/components/InputNumber.vue +2 -2
- package/dist/runtime/components/InputNumber.vue.d.ts +0 -2
- package/dist/runtime/components/InputTags.d.vue.ts +186 -0
- package/dist/runtime/components/InputTags.vue +2 -2
- package/dist/runtime/components/Kbd.d.vue.ts +38 -0
- package/dist/runtime/components/Link.d.vue.ts +91 -0
- package/dist/runtime/components/LinkBase.d.vue.ts +25 -0
- package/dist/runtime/components/Main.d.vue.ts +20 -0
- package/dist/runtime/components/Marquee.d.vue.ts +32 -0
- package/dist/runtime/components/Marquee.vue +1 -1
- package/dist/runtime/components/Modal.d.vue.ts +107 -0
- package/dist/runtime/components/NavigationMenu.d.vue.ts +171 -0
- package/dist/runtime/components/NavigationMenu.vue.d.ts +2 -2
- package/dist/runtime/components/OverlayProvider.d.vue.ts +2 -0
- package/dist/runtime/components/Page.d.vue.ts +25 -0
- package/dist/runtime/components/PageAnchors.d.vue.ts +47 -0
- package/dist/runtime/components/PageAside.d.vue.ts +27 -0
- package/dist/runtime/components/PageBody.d.vue.ts +18 -0
- package/dist/runtime/components/PageCTA.d.vue.ts +56 -0
- package/dist/runtime/components/PageCard.d.vue.ts +72 -0
- package/dist/runtime/components/PageColumns.d.vue.ts +18 -0
- package/dist/runtime/components/PageFeature.d.vue.ts +44 -0
- package/dist/runtime/components/PageGrid.d.vue.ts +18 -0
- package/dist/runtime/components/PageHeader.d.vue.ts +36 -0
- package/dist/runtime/components/PageHero.d.vue.ts +53 -0
- package/dist/runtime/components/PageLinks.d.vue.ts +49 -0
- package/dist/runtime/components/PageList.d.vue.ts +21 -0
- package/dist/runtime/components/PageLogos.d.vue.ts +33 -0
- package/dist/runtime/components/PageSection.d.vue.ts +68 -0
- package/dist/runtime/components/Pagination.d.vue.ts +118 -0
- package/dist/runtime/components/PinInput.d.vue.ts +60 -0
- package/dist/runtime/components/Popover.d.vue.ts +71 -0
- package/dist/runtime/components/PricingPlan.d.vue.ts +112 -0
- package/dist/runtime/components/PricingPlans.d.vue.ts +44 -0
- package/dist/runtime/components/PricingTable.d.vue.ts +105 -0
- package/dist/runtime/components/Progress.d.vue.ts +66 -0
- package/dist/runtime/components/Progress.vue +2 -3
- package/dist/runtime/components/RadioGroup.d.vue.ts +99 -0
- package/dist/runtime/components/RadioGroup.vue +13 -11
- package/dist/runtime/components/RadioGroup.vue.d.ts +17 -13
- package/dist/runtime/components/Select.d.vue.ts +254 -0
- package/dist/runtime/components/Select.vue +3 -3
- package/dist/runtime/components/Select.vue.d.ts +5 -5
- package/dist/runtime/components/SelectMenu.d.vue.ts +303 -0
- package/dist/runtime/components/SelectMenu.vue.d.ts +4 -4
- package/dist/runtime/components/Separator.d.vue.ts +54 -0
- package/dist/runtime/components/Skeleton.d.vue.ts +17 -0
- package/dist/runtime/components/Slideover.d.vue.ts +108 -0
- package/dist/runtime/components/Slider.d.vue.ts +57 -0
- package/dist/runtime/components/Stepper.d.vue.ts +87 -0
- package/dist/runtime/components/Switch.d.vue.ts +71 -0
- package/dist/runtime/components/Table.d.vue.ts +201 -0
- package/dist/runtime/components/Table.vue.d.ts +26 -26
- package/dist/runtime/components/Tabs.d.vue.ts +99 -0
- package/dist/runtime/components/Tabs.vue +12 -5
- package/dist/runtime/components/Tabs.vue.d.ts +2 -2
- package/dist/runtime/components/Textarea.d.vue.ts +74 -0
- package/dist/runtime/components/Timeline.d.vue.ts +71 -0
- package/dist/runtime/components/Toast.d.vue.ts +165 -0
- package/dist/runtime/components/Toaster.d.vue.ts +44 -0
- package/dist/runtime/components/Tooltip.d.vue.ts +57 -0
- package/dist/runtime/components/Tree.d.vue.ts +112 -0
- package/dist/runtime/components/Tree.vue +88 -47
- package/dist/runtime/components/Tree.vue.d.ts +20 -24
- package/dist/runtime/components/User.d.vue.ts +47 -0
- package/dist/runtime/components/color-mode/ColorModeAvatar.d.vue.ts +7 -0
- package/dist/runtime/components/color-mode/ColorModeButton.d.vue.ts +23 -0
- package/dist/runtime/components/color-mode/ColorModeImage.d.vue.ts +6 -0
- package/dist/runtime/components/color-mode/ColorModeSelect.d.vue.ts +5 -0
- package/dist/runtime/components/color-mode/ColorModeSwitch.d.vue.ts +5 -0
- package/dist/runtime/components/content/ContentNavigation.d.vue.ts +102 -0
- package/dist/runtime/components/content/ContentNavigation.vue +5 -4
- package/dist/runtime/components/content/ContentNavigation.vue.d.ts +2 -2
- package/dist/runtime/components/content/ContentSearch.d.vue.ts +114 -0
- package/dist/runtime/components/content/ContentSearch.vue +2 -2
- package/dist/runtime/components/content/ContentSearchButton.d.vue.ts +59 -0
- package/dist/runtime/components/content/ContentSearchButton.vue +2 -2
- package/dist/runtime/components/content/ContentSurround.d.vue.ts +59 -0
- package/dist/runtime/components/content/ContentToc.d.vue.ts +88 -0
- package/dist/runtime/components/locale/LocaleSelect.d.vue.ts +15 -0
- package/dist/runtime/components/prose/A.d.vue.ts +15 -0
- package/dist/runtime/components/prose/Accordion.d.vue.ts +16 -0
- package/dist/runtime/components/prose/AccordionItem.d.vue.ts +15 -0
- package/dist/runtime/components/prose/Badge.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Blockquote.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Callout.d.vue.ts +26 -0
- package/dist/runtime/components/prose/Card.d.vue.ts +29 -0
- package/dist/runtime/components/prose/CardGroup.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Code.d.vue.ts +22 -0
- package/dist/runtime/components/prose/CodeCollapse.d.vue.ts +47 -0
- package/dist/runtime/components/prose/CodeGroup.d.vue.ts +37 -0
- package/dist/runtime/components/prose/CodeIcon.d.vue.ts +7 -0
- package/dist/runtime/components/prose/CodePreview.d.vue.ts +19 -0
- package/dist/runtime/components/prose/CodeTree.d.vue.ts +28 -0
- package/dist/runtime/components/prose/CodeTree.vue +38 -31
- package/dist/runtime/components/prose/Collapsible.d.vue.ts +39 -0
- package/dist/runtime/components/prose/Em.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Field.d.vue.ts +39 -0
- package/dist/runtime/components/prose/FieldGroup.d.vue.ts +18 -0
- package/dist/runtime/components/prose/H1.d.vue.ts +19 -0
- package/dist/runtime/components/prose/H2.d.vue.ts +19 -0
- package/dist/runtime/components/prose/H3.d.vue.ts +19 -0
- package/dist/runtime/components/prose/H4.d.vue.ts +19 -0
- package/dist/runtime/components/prose/Hr.d.vue.ts +5 -0
- package/dist/runtime/components/prose/Icon.d.vue.ts +6 -0
- package/dist/runtime/components/prose/Img.d.vue.ts +21 -0
- package/dist/runtime/components/prose/Kbd.d.vue.ts +6 -0
- package/dist/runtime/components/prose/Li.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Ol.d.vue.ts +13 -0
- package/dist/runtime/components/prose/P.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Pre.d.vue.ts +26 -0
- package/dist/runtime/components/prose/Script.d.vue.ts +5 -0
- package/dist/runtime/components/prose/Steps.d.vue.ts +22 -0
- package/dist/runtime/components/prose/Strong.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Table.d.vue.ts +18 -0
- package/dist/runtime/components/prose/Tabs.d.vue.ts +36 -0
- package/dist/runtime/components/prose/TabsItem.d.vue.ts +15 -0
- package/dist/runtime/components/prose/Tbody.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Td.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Th.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Thead.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Tr.d.vue.ts +13 -0
- package/dist/runtime/components/prose/Ul.d.vue.ts +13 -0
- package/dist/runtime/components/prose/callout/Caution.d.vue.ts +14 -0
- package/dist/runtime/components/prose/callout/Note.d.vue.ts +14 -0
- package/dist/runtime/components/prose/callout/Tip.d.vue.ts +14 -0
- package/dist/runtime/components/prose/callout/Warning.d.vue.ts +14 -0
- package/dist/runtime/composables/useFormField.d.ts +1 -0
- package/dist/runtime/composables/useFormField.js +1 -4
- package/dist/runtime/inertia/components/Link.d.vue.ts +63 -0
- package/dist/runtime/inertia/components/LinkBase.d.vue.ts +25 -0
- package/dist/runtime/locale/de_ch.d.ts +3 -0
- package/dist/runtime/locale/de_ch.js +129 -0
- package/dist/runtime/locale/id.js +1 -1
- package/dist/runtime/locale/index.d.ts +2 -0
- package/dist/runtime/locale/index.js +2 -0
- package/dist/runtime/locale/ka.d.ts +3 -0
- package/dist/runtime/locale/ka.js +132 -0
- package/dist/runtime/locale/pt.js +2 -2
- package/dist/runtime/types/form.d.ts +12 -13
- package/dist/runtime/types/form.js +1 -3
- package/dist/runtime/types/index.d.ts +1 -0
- package/dist/runtime/types/index.js +1 -0
- package/dist/runtime/types/tv.d.ts +9 -2
- package/dist/runtime/types/utils.d.ts +7 -3
- package/dist/runtime/utils/form.d.ts +2 -6
- package/dist/runtime/utils/form.js +28 -60
- package/dist/runtime/utils/fuse.d.ts +2 -1
- package/dist/runtime/utils/index.d.ts +3 -3
- package/dist/runtime/utils/index.js +6 -3
- package/dist/runtime/vue/components/Icon.d.vue.ts +6 -0
- package/dist/runtime/vue/components/Link.d.vue.ts +93 -0
- package/dist/runtime/vue/components/color-mode/ColorModeButton.d.vue.ts +16 -0
- package/dist/runtime/vue/components/color-mode/ColorModeSelect.d.vue.ts +5 -0
- package/dist/runtime/vue/components/color-mode/ColorModeSwitch.d.vue.ts +5 -0
- package/dist/shared/{ui.BEZXPd3d.mjs → ui.DGJZ-1aX.mjs} +18 -13
- package/dist/unplugin.mjs +1 -1
- package/dist/vite.mjs +1 -1
- package/package.json +27 -40
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import type { NavigationMenuRootProps, NavigationMenuRootEmits, NavigationMenuContentProps, NavigationMenuContentEmits, AccordionRootProps } from 'reka-ui';
|
|
2
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
3
|
+
import theme from '#build/ui/navigation-menu';
|
|
4
|
+
import type { AvatarProps, BadgeProps, IconProps, LinkProps, PopoverProps, TooltipProps } from '../types';
|
|
5
|
+
import type { ArrayOrNested, DynamicSlots, GetItemKeys, MergeTypes, NestedItem, EmitsToProps } from '../types/utils';
|
|
6
|
+
import type { ComponentConfig } from '../types/tv';
|
|
7
|
+
type NavigationMenu = ComponentConfig<typeof theme, AppConfig, 'navigationMenu'>;
|
|
8
|
+
export interface NavigationMenuChildItem extends Omit<NavigationMenuItem, 'type' | 'ui'> {
|
|
9
|
+
/** Description is only used when `orientation` is `horizontal`. */
|
|
10
|
+
description?: string;
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
}
|
|
13
|
+
export interface NavigationMenuItem extends Omit<LinkProps, 'type' | 'raw' | 'custom'> {
|
|
14
|
+
label?: string;
|
|
15
|
+
/**
|
|
16
|
+
* @IconifyIcon
|
|
17
|
+
*/
|
|
18
|
+
icon?: IconProps['name'];
|
|
19
|
+
avatar?: AvatarProps;
|
|
20
|
+
/**
|
|
21
|
+
* Display a badge on the item.
|
|
22
|
+
* `{ size: 'sm', color: 'neutral', variant: 'outline' }`{lang="ts-type"}
|
|
23
|
+
*/
|
|
24
|
+
badge?: string | number | BadgeProps;
|
|
25
|
+
/**
|
|
26
|
+
* Display a tooltip on the item when the menu is collapsed with the label of the item.
|
|
27
|
+
* This has priority over the global `tooltip` prop.
|
|
28
|
+
*/
|
|
29
|
+
tooltip?: boolean | TooltipProps;
|
|
30
|
+
/**
|
|
31
|
+
* Display a popover on the item when the menu is collapsed with the children list.
|
|
32
|
+
* This has priority over the global `popover` prop.
|
|
33
|
+
*/
|
|
34
|
+
popover?: boolean | PopoverProps;
|
|
35
|
+
/**
|
|
36
|
+
* @IconifyIcon
|
|
37
|
+
*/
|
|
38
|
+
trailingIcon?: IconProps['name'];
|
|
39
|
+
/**
|
|
40
|
+
* The type of the item.
|
|
41
|
+
* The `label` type is only displayed in `vertical` orientation.
|
|
42
|
+
* The `trigger` type is used to force the item to be collapsible when its a link in `vertical` orientation.
|
|
43
|
+
* @defaultValue 'link'
|
|
44
|
+
*/
|
|
45
|
+
type?: 'label' | 'trigger' | 'link';
|
|
46
|
+
slot?: string;
|
|
47
|
+
/**
|
|
48
|
+
* The value of the item. Avoid using `index` as the value to prevent conflicts in horizontal orientation with Reka UI.
|
|
49
|
+
* @defaultValue `item-${index}`
|
|
50
|
+
*/
|
|
51
|
+
value?: string;
|
|
52
|
+
children?: NavigationMenuChildItem[];
|
|
53
|
+
defaultOpen?: boolean;
|
|
54
|
+
open?: boolean;
|
|
55
|
+
onSelect?(e: Event): void;
|
|
56
|
+
class?: any;
|
|
57
|
+
ui?: Pick<NavigationMenu['slots'], 'item' | 'linkLeadingAvatarSize' | 'linkLeadingAvatar' | 'linkLeadingIcon' | 'linkLabel' | 'linkLabelExternalIcon' | 'linkTrailing' | 'linkTrailingBadgeSize' | 'linkTrailingBadge' | 'linkTrailingIcon' | 'label' | 'link' | 'content' | 'childList' | 'childLabel' | 'childItem' | 'childLink' | 'childLinkIcon' | 'childLinkWrapper' | 'childLinkLabel' | 'childLinkLabelExternalIcon' | 'childLinkDescription'>;
|
|
58
|
+
[key: string]: any;
|
|
59
|
+
}
|
|
60
|
+
export interface NavigationMenuProps<T extends ArrayOrNested<NavigationMenuItem> = ArrayOrNested<NavigationMenuItem>> extends Pick<NavigationMenuRootProps, 'modelValue' | 'defaultValue' | 'delayDuration' | 'disableClickTrigger' | 'disableHoverTrigger' | 'skipDelayDuration' | 'disablePointerLeaveClose' | 'unmountOnHide'>, Pick<AccordionRootProps, 'disabled' | 'type' | 'collapsible'> {
|
|
61
|
+
/**
|
|
62
|
+
* The element or component this component should render as.
|
|
63
|
+
* @defaultValue 'div'
|
|
64
|
+
*/
|
|
65
|
+
as?: any;
|
|
66
|
+
/**
|
|
67
|
+
* The icon displayed to open the menu.
|
|
68
|
+
* @defaultValue appConfig.ui.icons.chevronDown
|
|
69
|
+
* @IconifyIcon
|
|
70
|
+
*/
|
|
71
|
+
trailingIcon?: IconProps['name'];
|
|
72
|
+
/**
|
|
73
|
+
* The icon displayed when the item is an external link.
|
|
74
|
+
* Set to `false` to hide the external icon.
|
|
75
|
+
* @defaultValue appConfig.ui.icons.external
|
|
76
|
+
* @IconifyIcon
|
|
77
|
+
*/
|
|
78
|
+
externalIcon?: boolean | IconProps['name'];
|
|
79
|
+
items?: T;
|
|
80
|
+
/**
|
|
81
|
+
* @defaultValue 'primary'
|
|
82
|
+
*/
|
|
83
|
+
color?: NavigationMenu['variants']['color'];
|
|
84
|
+
/**
|
|
85
|
+
* @defaultValue 'pill'
|
|
86
|
+
*/
|
|
87
|
+
variant?: NavigationMenu['variants']['variant'];
|
|
88
|
+
/**
|
|
89
|
+
* The orientation of the menu.
|
|
90
|
+
* @defaultValue 'horizontal'
|
|
91
|
+
*/
|
|
92
|
+
orientation?: NavigationMenuRootProps['orientation'];
|
|
93
|
+
/**
|
|
94
|
+
* Collapse the navigation menu to only show icons.
|
|
95
|
+
* Only works when `orientation` is `vertical`.
|
|
96
|
+
* @defaultValue false
|
|
97
|
+
*/
|
|
98
|
+
collapsed?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Display a tooltip on the items when the menu is collapsed with the label of the item.
|
|
101
|
+
* `{ delayDuration: 0, content: { side: 'right' } }`{lang="ts-type"}
|
|
102
|
+
* @defaultValue false
|
|
103
|
+
*/
|
|
104
|
+
tooltip?: boolean | TooltipProps;
|
|
105
|
+
/**
|
|
106
|
+
* Display a popover on the items when the menu is collapsed with the children list.
|
|
107
|
+
* `{ mode: 'hover', content: { side: 'right', align: 'start', alignOffset: 2 } }`{lang="ts-type"}
|
|
108
|
+
* @defaultValue false
|
|
109
|
+
*/
|
|
110
|
+
popover?: boolean | PopoverProps;
|
|
111
|
+
/** Display a line next to the active item. */
|
|
112
|
+
highlight?: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* @defaultValue 'primary'
|
|
115
|
+
*/
|
|
116
|
+
highlightColor?: NavigationMenu['variants']['highlightColor'];
|
|
117
|
+
/** The content of the menu. */
|
|
118
|
+
content?: Omit<NavigationMenuContentProps, 'as' | 'asChild' | 'forceMount'> & Partial<EmitsToProps<NavigationMenuContentEmits>>;
|
|
119
|
+
/**
|
|
120
|
+
* The orientation of the content.
|
|
121
|
+
* Only works when `orientation` is `horizontal`.
|
|
122
|
+
* @defaultValue 'horizontal'
|
|
123
|
+
*/
|
|
124
|
+
contentOrientation?: NavigationMenu['variants']['contentOrientation'];
|
|
125
|
+
/**
|
|
126
|
+
* Display an arrow alongside the menu.
|
|
127
|
+
* @defaultValue false
|
|
128
|
+
*/
|
|
129
|
+
arrow?: boolean;
|
|
130
|
+
/**
|
|
131
|
+
* The key used to get the label from the item.
|
|
132
|
+
* @defaultValue 'label'
|
|
133
|
+
*/
|
|
134
|
+
labelKey?: GetItemKeys<T>;
|
|
135
|
+
class?: any;
|
|
136
|
+
ui?: NavigationMenu['slots'];
|
|
137
|
+
}
|
|
138
|
+
export interface NavigationMenuEmits extends NavigationMenuRootEmits {
|
|
139
|
+
}
|
|
140
|
+
type SlotProps<T extends NavigationMenuItem> = (props: {
|
|
141
|
+
item: T;
|
|
142
|
+
index: number;
|
|
143
|
+
active?: boolean;
|
|
144
|
+
}) => any;
|
|
145
|
+
export type NavigationMenuSlots<A extends ArrayOrNested<NavigationMenuItem> = ArrayOrNested<NavigationMenuItem>, T extends NestedItem<A> = NestedItem<A>> = {
|
|
146
|
+
'item': SlotProps<T>;
|
|
147
|
+
'item-leading': SlotProps<T>;
|
|
148
|
+
'item-label': SlotProps<T>;
|
|
149
|
+
'item-trailing': SlotProps<T>;
|
|
150
|
+
'item-content': SlotProps<T>;
|
|
151
|
+
'list-leading': (props?: {}) => any;
|
|
152
|
+
'list-trailing': (props?: {}) => any;
|
|
153
|
+
} & DynamicSlots<MergeTypes<T>, 'leading' | 'label' | 'trailing' | 'content', {
|
|
154
|
+
index: number;
|
|
155
|
+
active?: boolean;
|
|
156
|
+
}>;
|
|
157
|
+
declare const _default: <T extends ArrayOrNested<NavigationMenuItem>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
158
|
+
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
|
|
159
|
+
readonly "onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
160
|
+
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onUpdate:modelValue"> & NavigationMenuProps<T> & {}> & import("vue").PublicProps;
|
|
161
|
+
expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
|
|
162
|
+
attrs: any;
|
|
163
|
+
slots: NavigationMenuSlots<T, NestedItem<T>>;
|
|
164
|
+
emit: (evt: "update:modelValue", value: string) => void;
|
|
165
|
+
}>) => import("vue").VNode & {
|
|
166
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
167
|
+
};
|
|
168
|
+
export default _default;
|
|
169
|
+
type __VLS_PrettifyLocal<T> = {
|
|
170
|
+
[K in keyof T as K]: T[K];
|
|
171
|
+
} & {};
|
|
@@ -2,7 +2,7 @@ import type { NavigationMenuRootProps, NavigationMenuRootEmits, NavigationMenuCo
|
|
|
2
2
|
import type { AppConfig } from '@nuxt/schema';
|
|
3
3
|
import theme from '#build/ui/navigation-menu';
|
|
4
4
|
import type { AvatarProps, BadgeProps, IconProps, LinkProps, PopoverProps, TooltipProps } from '../types';
|
|
5
|
-
import type { ArrayOrNested, DynamicSlots, MergeTypes, NestedItem, EmitsToProps } from '../types/utils';
|
|
5
|
+
import type { ArrayOrNested, DynamicSlots, GetItemKeys, MergeTypes, NestedItem, EmitsToProps } from '../types/utils';
|
|
6
6
|
import type { ComponentConfig } from '../types/tv';
|
|
7
7
|
type NavigationMenu = ComponentConfig<typeof theme, AppConfig, 'navigationMenu'>;
|
|
8
8
|
export interface NavigationMenuChildItem extends Omit<NavigationMenuItem, 'type' | 'ui'> {
|
|
@@ -131,7 +131,7 @@ export interface NavigationMenuProps<T extends ArrayOrNested<NavigationMenuItem>
|
|
|
131
131
|
* The key used to get the label from the item.
|
|
132
132
|
* @defaultValue 'label'
|
|
133
133
|
*/
|
|
134
|
-
labelKey?:
|
|
134
|
+
labelKey?: GetItemKeys<T>;
|
|
135
135
|
class?: any;
|
|
136
136
|
ui?: NavigationMenu['slots'];
|
|
137
137
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page';
|
|
3
|
+
import type { ComponentConfig } from '../types/tv';
|
|
4
|
+
type Page = ComponentConfig<typeof theme, AppConfig, 'page'>;
|
|
5
|
+
export interface PageProps {
|
|
6
|
+
/**
|
|
7
|
+
* The element or component this component should render as.
|
|
8
|
+
* @defaultValue 'div'
|
|
9
|
+
*/
|
|
10
|
+
as?: any;
|
|
11
|
+
class?: any;
|
|
12
|
+
ui?: Page['slots'];
|
|
13
|
+
}
|
|
14
|
+
export interface PageSlots {
|
|
15
|
+
left(props?: {}): any;
|
|
16
|
+
default(props?: {}): any;
|
|
17
|
+
right(props?: {}): any;
|
|
18
|
+
}
|
|
19
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageSlots>;
|
|
20
|
+
export default _default;
|
|
21
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
22
|
+
new (): {
|
|
23
|
+
$slots: S;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-anchors';
|
|
3
|
+
import type { IconProps, LinkProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageAnchors = ComponentConfig<typeof theme, AppConfig, 'pageAnchors'>;
|
|
6
|
+
export interface PageAnchor extends Omit<LinkProps, 'custom'> {
|
|
7
|
+
label: string;
|
|
8
|
+
/**
|
|
9
|
+
* @IconifyIcon
|
|
10
|
+
*/
|
|
11
|
+
icon?: IconProps['name'];
|
|
12
|
+
class?: any;
|
|
13
|
+
ui?: Pick<PageAnchors['slots'], 'item' | 'link' | 'linkLabel' | 'linkLabelExternalIcon' | 'linkLeading' | 'linkLeadingIcon'>;
|
|
14
|
+
}
|
|
15
|
+
export interface PageAnchorsProps<T extends PageAnchor = PageAnchor> {
|
|
16
|
+
/**
|
|
17
|
+
* The element or component this component should render as.
|
|
18
|
+
* @defaultValue 'nav'
|
|
19
|
+
*/
|
|
20
|
+
as?: any;
|
|
21
|
+
links?: T[];
|
|
22
|
+
class?: any;
|
|
23
|
+
ui?: PageAnchors['slots'];
|
|
24
|
+
}
|
|
25
|
+
type SlotProps<T> = (props: {
|
|
26
|
+
link: T;
|
|
27
|
+
active: boolean;
|
|
28
|
+
}) => any;
|
|
29
|
+
export interface PageAnchorsSlots<T extends PageAnchor = PageAnchor> {
|
|
30
|
+
'link': SlotProps<T>;
|
|
31
|
+
'link-leading': SlotProps<T>;
|
|
32
|
+
'link-label': SlotProps<T>;
|
|
33
|
+
'link-trailing': SlotProps<T>;
|
|
34
|
+
}
|
|
35
|
+
declare const _default: <T extends PageAnchor>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
36
|
+
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, never> & PageAnchorsProps<T> & {}> & import("vue").PublicProps;
|
|
37
|
+
expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
|
|
38
|
+
attrs: any;
|
|
39
|
+
slots: PageAnchorsSlots<T>;
|
|
40
|
+
emit: {};
|
|
41
|
+
}>) => import("vue").VNode & {
|
|
42
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
43
|
+
};
|
|
44
|
+
export default _default;
|
|
45
|
+
type __VLS_PrettifyLocal<T> = {
|
|
46
|
+
[K in keyof T as K]: T[K];
|
|
47
|
+
} & {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-aside';
|
|
3
|
+
import type { ComponentConfig } from '../types/tv';
|
|
4
|
+
type PageAside = ComponentConfig<typeof theme, AppConfig, 'pageAside'>;
|
|
5
|
+
export interface PageAsideProps {
|
|
6
|
+
/**
|
|
7
|
+
* The element or component this component should render as.
|
|
8
|
+
* @defaultValue 'aside'
|
|
9
|
+
*/
|
|
10
|
+
as?: any;
|
|
11
|
+
class?: any;
|
|
12
|
+
ui?: PageAside['slots'];
|
|
13
|
+
}
|
|
14
|
+
export interface PageAsideSlots {
|
|
15
|
+
top(props?: {}): any;
|
|
16
|
+
default(props?: {}): any;
|
|
17
|
+
bottom(props?: {}): any;
|
|
18
|
+
}
|
|
19
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAsideProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAsideProps> & Readonly<{}>, {
|
|
20
|
+
as: any;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageAsideSlots>;
|
|
22
|
+
export default _default;
|
|
23
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
24
|
+
new (): {
|
|
25
|
+
$slots: S;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface PageBodyProps {
|
|
2
|
+
/**
|
|
3
|
+
* The element or component this component should render as.
|
|
4
|
+
* @defaultValue 'div'
|
|
5
|
+
*/
|
|
6
|
+
as?: any;
|
|
7
|
+
class?: any;
|
|
8
|
+
}
|
|
9
|
+
export interface PageBodySlots {
|
|
10
|
+
default(props?: {}): any;
|
|
11
|
+
}
|
|
12
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageBodyProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageBodyProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageBodySlots>;
|
|
13
|
+
export default _default;
|
|
14
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
15
|
+
new (): {
|
|
16
|
+
$slots: S;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-cta';
|
|
3
|
+
import type { ButtonProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageCTA = ComponentConfig<typeof theme, AppConfig, 'pageCTA'>;
|
|
6
|
+
export interface PageCTAProps {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'div'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
class?: any;
|
|
13
|
+
title?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
/**
|
|
16
|
+
* The orientation of the page cta.
|
|
17
|
+
* @defaultValue 'vertical'
|
|
18
|
+
*/
|
|
19
|
+
orientation?: PageCTA['variants']['orientation'];
|
|
20
|
+
/**
|
|
21
|
+
* Reverse the order of the default slot.
|
|
22
|
+
* @defaultValue false
|
|
23
|
+
*/
|
|
24
|
+
reverse?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* @defaultValue 'outline'
|
|
27
|
+
*/
|
|
28
|
+
variant?: PageCTA['variants']['variant'];
|
|
29
|
+
/**
|
|
30
|
+
* Display a list of Button under the description.
|
|
31
|
+
* `{ size: 'lg' }`{lang="ts-type"}
|
|
32
|
+
*/
|
|
33
|
+
links?: ButtonProps[];
|
|
34
|
+
ui?: PageCTA['slots'];
|
|
35
|
+
}
|
|
36
|
+
export interface PageCTASlots {
|
|
37
|
+
top(props?: {}): any;
|
|
38
|
+
header(props?: {}): any;
|
|
39
|
+
title(props?: {}): any;
|
|
40
|
+
description(props?: {}): any;
|
|
41
|
+
body(props?: {}): any;
|
|
42
|
+
footer(props?: {}): any;
|
|
43
|
+
links(props?: {}): any;
|
|
44
|
+
default(props?: {}): any;
|
|
45
|
+
bottom(props?: {}): any;
|
|
46
|
+
}
|
|
47
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageCTAProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageCTAProps> & Readonly<{}>, {
|
|
48
|
+
reverse: boolean;
|
|
49
|
+
orientation: PageCTA["variants"]["orientation"];
|
|
50
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageCTASlots>;
|
|
51
|
+
export default _default;
|
|
52
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
53
|
+
new (): {
|
|
54
|
+
$slots: S;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-card';
|
|
3
|
+
import type { IconProps, LinkProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageCard = ComponentConfig<typeof theme, AppConfig, 'pageCard'>;
|
|
6
|
+
export interface PageCardProps {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'div'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
/**
|
|
13
|
+
* The icon displayed above the title.
|
|
14
|
+
* @IconifyIcon
|
|
15
|
+
*/
|
|
16
|
+
icon?: IconProps['name'];
|
|
17
|
+
title?: string;
|
|
18
|
+
description?: string;
|
|
19
|
+
/**
|
|
20
|
+
* The orientation of the page card.
|
|
21
|
+
* @defaultValue 'vertical'
|
|
22
|
+
*/
|
|
23
|
+
orientation?: PageCard['variants']['orientation'];
|
|
24
|
+
/**
|
|
25
|
+
* Reverse the order of the default slot.
|
|
26
|
+
* @defaultValue false
|
|
27
|
+
*/
|
|
28
|
+
reverse?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Display a line around the page card.
|
|
31
|
+
*/
|
|
32
|
+
highlight?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* @defaultValue 'primary'
|
|
35
|
+
*/
|
|
36
|
+
highlightColor?: PageCard['variants']['highlightColor'];
|
|
37
|
+
/**
|
|
38
|
+
* Display a spotlight effect that follows your mouse cursor and highlights borders on hover.
|
|
39
|
+
*/
|
|
40
|
+
spotlight?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* @defaultValue 'primary'
|
|
43
|
+
*/
|
|
44
|
+
spotlightColor?: PageCard['variants']['spotlightColor'];
|
|
45
|
+
/**
|
|
46
|
+
* @defaultValue 'outline'
|
|
47
|
+
*/
|
|
48
|
+
variant?: PageCard['variants']['variant'];
|
|
49
|
+
to?: LinkProps['to'];
|
|
50
|
+
target?: LinkProps['target'];
|
|
51
|
+
onClick?: (event: MouseEvent) => void | Promise<void>;
|
|
52
|
+
class?: any;
|
|
53
|
+
ui?: PageCard['slots'];
|
|
54
|
+
}
|
|
55
|
+
export interface PageCardSlots {
|
|
56
|
+
header(props?: {}): any;
|
|
57
|
+
body(props?: {}): any;
|
|
58
|
+
leading(props?: {}): any;
|
|
59
|
+
title(props?: {}): any;
|
|
60
|
+
description(props?: {}): any;
|
|
61
|
+
footer(props?: {}): any;
|
|
62
|
+
default(props?: {}): any;
|
|
63
|
+
}
|
|
64
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageCardProps> & Readonly<{}>, {
|
|
65
|
+
orientation: PageCard["variants"]["orientation"];
|
|
66
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageCardSlots>;
|
|
67
|
+
export default _default;
|
|
68
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
69
|
+
new (): {
|
|
70
|
+
$slots: S;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface PageColumnsProps {
|
|
2
|
+
/**
|
|
3
|
+
* The element or component this component should render as.
|
|
4
|
+
* @defaultValue 'div'
|
|
5
|
+
*/
|
|
6
|
+
as?: any;
|
|
7
|
+
class?: any;
|
|
8
|
+
}
|
|
9
|
+
export interface PageColumnsSlots {
|
|
10
|
+
default(props?: {}): any;
|
|
11
|
+
}
|
|
12
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageColumnsProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageColumnsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageColumnsSlots>;
|
|
13
|
+
export default _default;
|
|
14
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
15
|
+
new (): {
|
|
16
|
+
$slots: S;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-feature';
|
|
3
|
+
import type { IconProps, LinkProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageFeature = ComponentConfig<typeof theme, AppConfig, 'pageFeature'>;
|
|
6
|
+
export interface PageFeatureProps {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'div'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
/**
|
|
13
|
+
* The icon displayed next to the title when `orientation` is `horizontal` and above the title when `orientation` is `vertical`.
|
|
14
|
+
* @IconifyIcon
|
|
15
|
+
*/
|
|
16
|
+
icon?: IconProps['name'];
|
|
17
|
+
title?: string;
|
|
18
|
+
description?: string;
|
|
19
|
+
/**
|
|
20
|
+
* The orientation of the page feature.
|
|
21
|
+
* @defaultValue 'horizontal'
|
|
22
|
+
*/
|
|
23
|
+
orientation?: PageFeature['variants']['orientation'];
|
|
24
|
+
to?: LinkProps['to'];
|
|
25
|
+
target?: LinkProps['target'];
|
|
26
|
+
onClick?: (event: MouseEvent) => void | Promise<void>;
|
|
27
|
+
class?: any;
|
|
28
|
+
ui?: PageFeature['slots'];
|
|
29
|
+
}
|
|
30
|
+
export interface PageFeatureSlots {
|
|
31
|
+
leading(props?: {}): any;
|
|
32
|
+
title(props?: {}): any;
|
|
33
|
+
description(props?: {}): any;
|
|
34
|
+
default(props?: {}): any;
|
|
35
|
+
}
|
|
36
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageFeatureProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageFeatureProps> & Readonly<{}>, {
|
|
37
|
+
orientation: PageFeature["variants"]["orientation"];
|
|
38
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageFeatureSlots>;
|
|
39
|
+
export default _default;
|
|
40
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
41
|
+
new (): {
|
|
42
|
+
$slots: S;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface PageGridProps {
|
|
2
|
+
/**
|
|
3
|
+
* The element or component this component should render as.
|
|
4
|
+
* @defaultValue 'div'
|
|
5
|
+
*/
|
|
6
|
+
as?: any;
|
|
7
|
+
class?: any;
|
|
8
|
+
}
|
|
9
|
+
export interface PageGridSlots {
|
|
10
|
+
default(props?: {}): any;
|
|
11
|
+
}
|
|
12
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageGridProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageGridProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageGridSlots>;
|
|
13
|
+
export default _default;
|
|
14
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
15
|
+
new (): {
|
|
16
|
+
$slots: S;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-header';
|
|
3
|
+
import type { ButtonProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageHeader = ComponentConfig<typeof theme, AppConfig, 'pageHeader'>;
|
|
6
|
+
export interface PageHeaderProps {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'div'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
headline?: string;
|
|
13
|
+
title?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Display a list of Button next to the title.
|
|
17
|
+
* `{ color: 'neutral', variant: 'outline' }`{lang="ts-type"}
|
|
18
|
+
*/
|
|
19
|
+
links?: ButtonProps[];
|
|
20
|
+
class?: any;
|
|
21
|
+
ui?: PageHeader['slots'];
|
|
22
|
+
}
|
|
23
|
+
export interface PageHeaderSlots {
|
|
24
|
+
headline(props?: {}): any;
|
|
25
|
+
title(props?: {}): any;
|
|
26
|
+
description(props?: {}): any;
|
|
27
|
+
links(props?: {}): any;
|
|
28
|
+
default(props?: {}): any;
|
|
29
|
+
}
|
|
30
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageHeaderProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageHeaderProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageHeaderSlots>;
|
|
31
|
+
export default _default;
|
|
32
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
33
|
+
new (): {
|
|
34
|
+
$slots: S;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-hero';
|
|
3
|
+
import type { ButtonProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageHero = ComponentConfig<typeof theme, AppConfig, 'pageHero'>;
|
|
6
|
+
export interface PageHeroProps {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'div'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
headline?: string;
|
|
13
|
+
title?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Display a list of Button under the description.
|
|
17
|
+
* `{ size: 'xl' }`{lang="ts-type"}
|
|
18
|
+
*/
|
|
19
|
+
links?: ButtonProps[];
|
|
20
|
+
/**
|
|
21
|
+
* The orientation of the page hero.
|
|
22
|
+
* @defaultValue 'vertical'
|
|
23
|
+
*/
|
|
24
|
+
orientation?: PageHero['variants']['orientation'];
|
|
25
|
+
/**
|
|
26
|
+
* Reverse the order of the default slot.
|
|
27
|
+
* @defaultValue false
|
|
28
|
+
*/
|
|
29
|
+
reverse?: boolean;
|
|
30
|
+
class?: any;
|
|
31
|
+
ui?: PageHero['slots'];
|
|
32
|
+
}
|
|
33
|
+
export interface PageHeroSlots {
|
|
34
|
+
top(props?: {}): any;
|
|
35
|
+
header(props?: {}): any;
|
|
36
|
+
headline(props?: {}): any;
|
|
37
|
+
title(props?: {}): any;
|
|
38
|
+
description(props?: {}): any;
|
|
39
|
+
body(props?: {}): any;
|
|
40
|
+
footer(props?: {}): any;
|
|
41
|
+
links(props?: {}): any;
|
|
42
|
+
default(props?: {}): any;
|
|
43
|
+
bottom(props?: {}): any;
|
|
44
|
+
}
|
|
45
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageHeroProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageHeroProps> & Readonly<{}>, {
|
|
46
|
+
orientation: PageHero["variants"]["orientation"];
|
|
47
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageHeroSlots>;
|
|
48
|
+
export default _default;
|
|
49
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
50
|
+
new (): {
|
|
51
|
+
$slots: S;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/page-links';
|
|
3
|
+
import type { IconProps, LinkProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type PageLinks = ComponentConfig<typeof theme, AppConfig, 'pageLinks'>;
|
|
6
|
+
export interface PageLink extends Omit<LinkProps, 'custom'> {
|
|
7
|
+
label: string;
|
|
8
|
+
/**
|
|
9
|
+
* @IconifyIcon
|
|
10
|
+
*/
|
|
11
|
+
icon?: IconProps['name'];
|
|
12
|
+
class?: any;
|
|
13
|
+
ui?: Pick<PageLinks['slots'], 'item' | 'link' | 'linkLabel' | 'linkLabelExternalIcon' | 'linkLeadingIcon'>;
|
|
14
|
+
}
|
|
15
|
+
export interface PageLinksProps<T extends PageLink = PageLink> {
|
|
16
|
+
/**
|
|
17
|
+
* The element or component this component should render as.
|
|
18
|
+
* @defaultValue 'nav'
|
|
19
|
+
*/
|
|
20
|
+
as?: any;
|
|
21
|
+
title?: string;
|
|
22
|
+
links?: T[];
|
|
23
|
+
class?: any;
|
|
24
|
+
ui?: PageLinks['slots'];
|
|
25
|
+
}
|
|
26
|
+
type SlotProps<T> = (props: {
|
|
27
|
+
link: T;
|
|
28
|
+
active: boolean;
|
|
29
|
+
}) => any;
|
|
30
|
+
export interface PageLinksSlots<T extends PageLink = PageLink> {
|
|
31
|
+
'title'(props?: {}): any;
|
|
32
|
+
'link': SlotProps<T>;
|
|
33
|
+
'link-leading': SlotProps<T>;
|
|
34
|
+
'link-label': SlotProps<T>;
|
|
35
|
+
'link-trailing': SlotProps<T>;
|
|
36
|
+
}
|
|
37
|
+
declare const _default: <T extends PageLink>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
38
|
+
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, never> & PageLinksProps<T> & {}> & import("vue").PublicProps;
|
|
39
|
+
expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
|
|
40
|
+
attrs: any;
|
|
41
|
+
slots: PageLinksSlots<T>;
|
|
42
|
+
emit: {};
|
|
43
|
+
}>) => import("vue").VNode & {
|
|
44
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
45
|
+
};
|
|
46
|
+
export default _default;
|
|
47
|
+
type __VLS_PrettifyLocal<T> = {
|
|
48
|
+
[K in keyof T as K]: T[K];
|
|
49
|
+
} & {};
|