@nuxt/ui 4.0.0-alpha.1 → 4.0.0-alpha.2
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/tree.ts +1 -1
- package/README.md +13 -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 +2 -2
- 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 +17 -13
- 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/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 +111 -52
- package/dist/runtime/components/Form.vue.d.ts +54 -11
- package/dist/runtime/components/FormField.d.vue.ts +61 -0
- 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 +1 -1
- 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/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 +10 -3
- 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 +116 -0
- package/dist/runtime/components/Tree.vue +68 -40
- package/dist/runtime/components/Tree.vue.d.ts +1 -1
- 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 -0
- 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/types/form.d.ts +9 -8
- 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/utils.d.ts +7 -3
- package/dist/runtime/utils/form.d.ts +2 -0
- package/dist/runtime/utils/form.js +28 -0
- 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.Bs5uUhtm.mjs} +17 -12
- package/dist/unplugin.mjs +1 -1
- package/dist/vite.mjs +1 -1
- package/package.json +21 -34
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
-
import type { AcceptableValue } from 'reka-ui';
|
|
3
2
|
import type { EmblaCarouselType, EmblaOptionsType } from 'embla-carousel';
|
|
4
3
|
import type { AutoplayOptionsType } from 'embla-carousel-autoplay';
|
|
5
4
|
import type { AutoScrollOptionsType } from 'embla-carousel-auto-scroll';
|
|
@@ -9,14 +8,15 @@ import type { FadeOptionsType } from 'embla-carousel-fade';
|
|
|
9
8
|
import type { WheelGesturesPluginOptions } from 'embla-carousel-wheel-gestures';
|
|
10
9
|
import theme from '#build/ui/carousel';
|
|
11
10
|
import type { ButtonProps, IconProps } from '../types';
|
|
11
|
+
import type { AcceptableValue } from '../types/utils';
|
|
12
12
|
import type { ComponentConfig } from '../types/tv';
|
|
13
13
|
type Carousel = ComponentConfig<typeof theme, AppConfig, 'carousel'>;
|
|
14
|
-
|
|
14
|
+
export type CarouselValue = AcceptableValue;
|
|
15
|
+
export type CarouselItem = CarouselValue | {
|
|
15
16
|
class?: any;
|
|
16
17
|
ui?: Pick<Carousel['slots'], 'item'>;
|
|
17
18
|
[key: string]: any;
|
|
18
|
-
}
|
|
19
|
-
export type CarouselItem = _CarouselItem | AcceptableValue;
|
|
19
|
+
};
|
|
20
20
|
export interface CarouselProps<T extends CarouselItem = CarouselItem> extends Omit<EmblaOptionsType, 'axis' | 'container' | 'slides' | 'direction'> {
|
|
21
21
|
/**
|
|
22
22
|
* The element or component this component should render as.
|
|
@@ -63,32 +63,32 @@ export interface CarouselProps<T extends CarouselItem = CarouselItem> extends Om
|
|
|
63
63
|
items?: T[];
|
|
64
64
|
/**
|
|
65
65
|
* Enable Autoplay plugin
|
|
66
|
-
* @
|
|
66
|
+
* @see https://www.embla-carousel.com/plugins/autoplay/
|
|
67
67
|
*/
|
|
68
68
|
autoplay?: boolean | AutoplayOptionsType;
|
|
69
69
|
/**
|
|
70
70
|
* Enable Auto Scroll plugin
|
|
71
|
-
* @
|
|
71
|
+
* @see https://www.embla-carousel.com/plugins/auto-scroll/
|
|
72
72
|
*/
|
|
73
73
|
autoScroll?: boolean | AutoScrollOptionsType;
|
|
74
74
|
/**
|
|
75
75
|
* Enable Auto Height plugin
|
|
76
|
-
* @
|
|
76
|
+
* @see https://www.embla-carousel.com/plugins/auto-height/
|
|
77
77
|
*/
|
|
78
78
|
autoHeight?: boolean | AutoHeightOptionsType;
|
|
79
79
|
/**
|
|
80
80
|
* Enable Class Names plugin
|
|
81
|
-
* @
|
|
81
|
+
* @see https://www.embla-carousel.com/plugins/class-names/
|
|
82
82
|
*/
|
|
83
83
|
classNames?: boolean | ClassNamesOptionsType;
|
|
84
84
|
/**
|
|
85
85
|
* Enable Fade plugin
|
|
86
|
-
* @
|
|
86
|
+
* @see https://www.embla-carousel.com/plugins/fade/
|
|
87
87
|
*/
|
|
88
88
|
fade?: boolean | FadeOptionsType;
|
|
89
89
|
/**
|
|
90
90
|
* Enable Wheel Gestures plugin
|
|
91
|
-
* @
|
|
91
|
+
* @see https://www.embla-carousel.com/plugins/wheel-gestures/
|
|
92
92
|
*/
|
|
93
93
|
wheelGestures?: boolean | WheelGesturesPluginOptions;
|
|
94
94
|
class?: any;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/changelog-version';
|
|
3
|
+
import type { BadgeProps, LinkProps, UserProps } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type ChangelogVersion = ComponentConfig<typeof theme, AppConfig, 'changelogVersion'>;
|
|
6
|
+
export interface ChangelogVersionProps {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'article'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
title?: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
/** The date of the changelog version. Can be a string or a Date object. */
|
|
15
|
+
date?: string | Date;
|
|
16
|
+
/**
|
|
17
|
+
* Display a badge on the changelog version.
|
|
18
|
+
* Can be a string or an object.
|
|
19
|
+
* `{ color: 'neutral', variant: 'solid' }`{lang="ts-type"}
|
|
20
|
+
*/
|
|
21
|
+
badge?: string | BadgeProps;
|
|
22
|
+
/** The authors of the changelog version. */
|
|
23
|
+
authors?: UserProps[];
|
|
24
|
+
/** The image of the changelog version. Can be a string or an object. */
|
|
25
|
+
image?: string | Partial<HTMLImageElement>;
|
|
26
|
+
/**
|
|
27
|
+
* Display an indicator dot on the left.
|
|
28
|
+
* @defaultValue true
|
|
29
|
+
*/
|
|
30
|
+
indicator?: boolean;
|
|
31
|
+
to?: LinkProps['to'];
|
|
32
|
+
target?: LinkProps['target'];
|
|
33
|
+
onClick?: (event: MouseEvent) => void | Promise<void>;
|
|
34
|
+
class?: any;
|
|
35
|
+
ui?: ChangelogVersion['slots'];
|
|
36
|
+
}
|
|
37
|
+
export interface ChangelogVersionSlots {
|
|
38
|
+
header(props?: {}): any;
|
|
39
|
+
badge(props?: {}): any;
|
|
40
|
+
date(props?: {}): any;
|
|
41
|
+
title(props?: {}): any;
|
|
42
|
+
description(props?: {}): any;
|
|
43
|
+
image(props?: {}): any;
|
|
44
|
+
body(props?: {}): any;
|
|
45
|
+
footer(props?: {}): any;
|
|
46
|
+
authors(props?: {}): any;
|
|
47
|
+
actions(props?: {}): any;
|
|
48
|
+
indicator(props?: {}): any;
|
|
49
|
+
}
|
|
50
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChangelogVersionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ChangelogVersionProps> & Readonly<{}>, {
|
|
51
|
+
as: any;
|
|
52
|
+
indicator: boolean;
|
|
53
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChangelogVersionSlots>;
|
|
54
|
+
export default _default;
|
|
55
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
56
|
+
new (): {
|
|
57
|
+
$slots: S;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import type { SpringOptions } from 'motion-v';
|
|
3
|
+
import theme from '#build/ui/changelog-versions';
|
|
4
|
+
import type { ChangelogVersionProps } from '../types';
|
|
5
|
+
import type { ComponentConfig } from '../types/tv';
|
|
6
|
+
type ChangelogVersions = ComponentConfig<typeof theme, AppConfig, 'changelogVersions'>;
|
|
7
|
+
export interface ChangelogVersionsProps<T extends ChangelogVersionProps = ChangelogVersionProps> {
|
|
8
|
+
/**
|
|
9
|
+
* The element or component this component should render as.
|
|
10
|
+
* @defaultValue 'div'
|
|
11
|
+
*/
|
|
12
|
+
as?: any;
|
|
13
|
+
versions?: T[];
|
|
14
|
+
/**
|
|
15
|
+
* Display an indicator bar on the left.
|
|
16
|
+
* @defaultValue true
|
|
17
|
+
*/
|
|
18
|
+
indicator?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Enable scrolling motion effect on the indicator bar.
|
|
21
|
+
* `{ damping: 30, restDelta: 0.001 }`{lang="ts-type"}
|
|
22
|
+
* @defaultValue true
|
|
23
|
+
* @see https://motion.dev/docs/vue-transitions#spring
|
|
24
|
+
*/
|
|
25
|
+
indicatorMotion?: boolean | SpringOptions;
|
|
26
|
+
class?: any;
|
|
27
|
+
ui?: ChangelogVersions['slots'];
|
|
28
|
+
}
|
|
29
|
+
export interface ChangelogVersionsSlots<T extends ChangelogVersionProps = ChangelogVersionProps> {
|
|
30
|
+
default(props?: {}): any;
|
|
31
|
+
indicator(props?: {}): any;
|
|
32
|
+
header(props: {
|
|
33
|
+
version: T;
|
|
34
|
+
}): any;
|
|
35
|
+
badge(props: {
|
|
36
|
+
version: T;
|
|
37
|
+
}): any;
|
|
38
|
+
date(props: {
|
|
39
|
+
version: T;
|
|
40
|
+
}): any;
|
|
41
|
+
title(props: {
|
|
42
|
+
version: T;
|
|
43
|
+
}): any;
|
|
44
|
+
description(props: {
|
|
45
|
+
version: T;
|
|
46
|
+
}): any;
|
|
47
|
+
image(props: {
|
|
48
|
+
version: T;
|
|
49
|
+
}): any;
|
|
50
|
+
body(props: {
|
|
51
|
+
version: T;
|
|
52
|
+
}): any;
|
|
53
|
+
footer(props: {
|
|
54
|
+
version: T;
|
|
55
|
+
}): any;
|
|
56
|
+
authors(props: {
|
|
57
|
+
version: T;
|
|
58
|
+
}): any;
|
|
59
|
+
actions(props: {
|
|
60
|
+
version: T;
|
|
61
|
+
}): any;
|
|
62
|
+
indicator(props: {
|
|
63
|
+
version: T;
|
|
64
|
+
}): any;
|
|
65
|
+
}
|
|
66
|
+
declare const _default: <T extends ChangelogVersionProps>(__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<{
|
|
67
|
+
props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, never> & ChangelogVersionsProps<T> & {}> & import("vue").PublicProps;
|
|
68
|
+
expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
|
|
69
|
+
attrs: any;
|
|
70
|
+
slots: ChangelogVersionsSlots<T>;
|
|
71
|
+
emit: {};
|
|
72
|
+
}>) => import("vue").VNode & {
|
|
73
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
74
|
+
};
|
|
75
|
+
export default _default;
|
|
76
|
+
type __VLS_PrettifyLocal<T> = {
|
|
77
|
+
[K in keyof T as K]: T[K];
|
|
78
|
+
} & {};
|
|
@@ -20,7 +20,7 @@ const props = defineProps({
|
|
|
20
20
|
ui: { type: null, required: false }
|
|
21
21
|
});
|
|
22
22
|
const slots = defineSlots();
|
|
23
|
-
const
|
|
23
|
+
const getProxySlots = () => omit(slots, ["default", "indicator"]);
|
|
24
24
|
const appConfig = useAppConfig();
|
|
25
25
|
const springOptions = computed(() => defu(typeof props.indicatorMotion === "object" ? props.indicatorMotion : {}, { damping: 30, restDelta: 1e-3 }));
|
|
26
26
|
const { scrollYProgress } = useScroll();
|
|
@@ -45,7 +45,7 @@ const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.changelogVers
|
|
|
45
45
|
:indicator="!!props.indicator"
|
|
46
46
|
v-bind="version"
|
|
47
47
|
>
|
|
48
|
-
<template v-for="(_, name) in
|
|
48
|
+
<template v-for="(_, name) in getProxySlots()" #[name]>
|
|
49
49
|
<slot :name="name" v-bind="{ version }" />
|
|
50
50
|
</template>
|
|
51
51
|
</UChangelogVersion>
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import type { UIMessage } from 'ai';
|
|
3
|
+
import theme from '#build/ui/chat-message';
|
|
4
|
+
import type { AvatarProps, ButtonProps, IconProps } from '../types';
|
|
5
|
+
import type { ComponentConfig } from '../types/tv';
|
|
6
|
+
type ChatMessage = ComponentConfig<typeof theme, AppConfig, 'chatMessage'>;
|
|
7
|
+
export interface ChatMessageProps extends UIMessage {
|
|
8
|
+
/**
|
|
9
|
+
* The element or component this component should render as.
|
|
10
|
+
* @defaultValue 'article'
|
|
11
|
+
*/
|
|
12
|
+
as?: any;
|
|
13
|
+
/**
|
|
14
|
+
* @IconifyIcon
|
|
15
|
+
*/
|
|
16
|
+
icon?: IconProps['name'];
|
|
17
|
+
avatar?: AvatarProps & {
|
|
18
|
+
[key: string]: any;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* @defaultValue 'naked'
|
|
22
|
+
*/
|
|
23
|
+
variant?: ChatMessage['variants']['variant'];
|
|
24
|
+
/**
|
|
25
|
+
* @defaultValue 'left'
|
|
26
|
+
*/
|
|
27
|
+
side?: ChatMessage['variants']['side'];
|
|
28
|
+
/**
|
|
29
|
+
* Display a list of actions under the message.
|
|
30
|
+
* The `label` will be used in a tooltip.
|
|
31
|
+
* `{ size: 'xs', color: 'neutral', variant: 'ghost' }`{lang="ts-type"}
|
|
32
|
+
*/
|
|
33
|
+
actions?: (Omit<ButtonProps, 'onClick'> & {
|
|
34
|
+
onClick?: (e: MouseEvent, message: UIMessage) => void;
|
|
35
|
+
})[];
|
|
36
|
+
/**
|
|
37
|
+
* Render the message in a compact style.
|
|
38
|
+
* This is done automatically when used inside a `UChatPalette`{lang="ts-type"}.
|
|
39
|
+
* @defaultValue false
|
|
40
|
+
*/
|
|
41
|
+
compact?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* @deprecated Use `parts` instead. (https://ai-sdk.dev/docs/migration-guides/migration-guide-5-0#content--parts-array)
|
|
44
|
+
* Use to display the content of the message.
|
|
45
|
+
*/
|
|
46
|
+
content?: string;
|
|
47
|
+
class?: any;
|
|
48
|
+
ui?: ChatMessage['slots'];
|
|
49
|
+
}
|
|
50
|
+
export interface ChatMessageSlots {
|
|
51
|
+
leading(props: {
|
|
52
|
+
avatar: ChatMessageProps['avatar'];
|
|
53
|
+
}): any;
|
|
54
|
+
content(props: ChatMessageProps): any;
|
|
55
|
+
actions(props: {
|
|
56
|
+
actions: ChatMessageProps['actions'];
|
|
57
|
+
}): any;
|
|
58
|
+
}
|
|
59
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChatMessageProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ChatMessageProps> & Readonly<{}>, {
|
|
60
|
+
as: any;
|
|
61
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChatMessageSlots>;
|
|
62
|
+
export default _default;
|
|
63
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
64
|
+
new (): {
|
|
65
|
+
$slots: S;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import type { UIMessage, ChatStatus } from 'ai';
|
|
3
|
+
import theme from '#build/ui/chat-messages';
|
|
4
|
+
import type { ButtonProps, ChatMessageProps, IconProps } from '../types';
|
|
5
|
+
import type { ComponentConfig } from '../types/tv';
|
|
6
|
+
type ChatMessages = ComponentConfig<typeof theme, AppConfig, 'chatMessages'>;
|
|
7
|
+
export interface ChatMessagesProps {
|
|
8
|
+
messages?: UIMessage[];
|
|
9
|
+
status?: ChatStatus;
|
|
10
|
+
/**
|
|
11
|
+
* Whether to automatically scroll to the bottom when a message is streaming.
|
|
12
|
+
* @defaultValue false
|
|
13
|
+
*/
|
|
14
|
+
shouldAutoScroll?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Whether to scroll to the bottom on mounted.
|
|
17
|
+
* @defaultValue true
|
|
18
|
+
*/
|
|
19
|
+
shouldScrollToBottom?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Display an auto scroll button.
|
|
22
|
+
* `{ size: 'md', color: 'neutral', variant: 'outline' }`{lang="ts-type"}
|
|
23
|
+
* @defaultValue true
|
|
24
|
+
*/
|
|
25
|
+
autoScroll?: boolean | Partial<ButtonProps>;
|
|
26
|
+
/**
|
|
27
|
+
* The icon displayed in the auto scroll button.
|
|
28
|
+
* @defaultValue appConfig.ui.icons.arrowDown
|
|
29
|
+
* @IconifyIcon
|
|
30
|
+
*/
|
|
31
|
+
autoScrollIcon?: IconProps['name'];
|
|
32
|
+
/**
|
|
33
|
+
* The `user` messages props.
|
|
34
|
+
* `{ side: 'right', variant: 'soft' }`{lang="ts-type"}
|
|
35
|
+
*/
|
|
36
|
+
user?: Pick<ChatMessageProps, 'icon' | 'avatar' | 'variant' | 'side' | 'actions'>;
|
|
37
|
+
/**
|
|
38
|
+
* The `assistant` messages props.
|
|
39
|
+
* `{ side: 'left', variant: 'naked' }`{lang="ts-type"}
|
|
40
|
+
*/
|
|
41
|
+
assistant?: Pick<ChatMessageProps, 'icon' | 'avatar' | 'variant' | 'side' | 'actions'>;
|
|
42
|
+
/**
|
|
43
|
+
* Render the messages in a compact style.
|
|
44
|
+
* This is done automatically when used inside a `UChatPalette`{lang="ts-type"}.
|
|
45
|
+
* @defaultValue false
|
|
46
|
+
*/
|
|
47
|
+
compact?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* The spacing offset for the last message in px. Can be useful when the prompt is sticky for example.
|
|
50
|
+
* @defaultValue 0
|
|
51
|
+
*/
|
|
52
|
+
spacingOffset?: number;
|
|
53
|
+
class?: any;
|
|
54
|
+
ui?: ChatMessages['slots'];
|
|
55
|
+
}
|
|
56
|
+
export interface ChatMessagesSlots {
|
|
57
|
+
default(props?: {}): any;
|
|
58
|
+
indicator(props?: {}): any;
|
|
59
|
+
viewport(props: {
|
|
60
|
+
onClick: () => void;
|
|
61
|
+
}): any;
|
|
62
|
+
content(props: {
|
|
63
|
+
message: UIMessage;
|
|
64
|
+
}): any;
|
|
65
|
+
leading(props: {
|
|
66
|
+
message: UIMessage;
|
|
67
|
+
}): any;
|
|
68
|
+
actions(props: {
|
|
69
|
+
message: UIMessage;
|
|
70
|
+
}): any;
|
|
71
|
+
}
|
|
72
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChatMessagesProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ChatMessagesProps> & Readonly<{}>, {
|
|
73
|
+
autoScroll: boolean | Partial<ButtonProps>;
|
|
74
|
+
shouldAutoScroll: boolean;
|
|
75
|
+
shouldScrollToBottom: boolean;
|
|
76
|
+
spacingOffset: number;
|
|
77
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChatMessagesSlots>;
|
|
78
|
+
export default _default;
|
|
79
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
80
|
+
new (): {
|
|
81
|
+
$slots: S;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
@@ -27,7 +27,7 @@ const props = defineProps({
|
|
|
27
27
|
ui: { type: null, required: false }
|
|
28
28
|
});
|
|
29
29
|
const slots = defineSlots();
|
|
30
|
-
const
|
|
30
|
+
const getProxySlots = () => omit(slots, ["default", "indicator", "viewport"]);
|
|
31
31
|
const appConfig = useAppConfig();
|
|
32
32
|
const userProps = toRef(() => defu(props.user, { side: "right", variant: "soft" }));
|
|
33
33
|
const assistantProps = toRef(() => defu(props.assistant, { side: "left", variant: "naked" }));
|
|
@@ -166,7 +166,7 @@ onMounted(() => {
|
|
|
166
166
|
:ref="(el) => registerMessageRef(message.id, el)"
|
|
167
167
|
:compact="compact"
|
|
168
168
|
>
|
|
169
|
-
<template v-for="(_, name) in
|
|
169
|
+
<template v-for="(_, name) in getProxySlots()" #[name]>
|
|
170
170
|
<slot :name="name" v-bind="{ message }" />
|
|
171
171
|
</template>
|
|
172
172
|
</UChatMessage>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/chat-palette';
|
|
3
|
+
import type { ComponentConfig } from '../types/tv';
|
|
4
|
+
type ChatPalette = ComponentConfig<typeof theme, AppConfig, 'chatPalette'>;
|
|
5
|
+
export interface ChatPaletteProps {
|
|
6
|
+
/**
|
|
7
|
+
* The element or component this component should render as.
|
|
8
|
+
* @defaultValue 'div'
|
|
9
|
+
*/
|
|
10
|
+
as?: any;
|
|
11
|
+
class?: any;
|
|
12
|
+
ui?: ChatPalette['slots'];
|
|
13
|
+
}
|
|
14
|
+
export interface ChatPaletteSlots {
|
|
15
|
+
default(props?: {}): any;
|
|
16
|
+
prompt(props?: {}): any;
|
|
17
|
+
}
|
|
18
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChatPaletteProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ChatPaletteProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChatPaletteSlots>;
|
|
19
|
+
export default _default;
|
|
20
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
21
|
+
new (): {
|
|
22
|
+
$slots: S;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
2
|
+
import theme from '#build/ui/chat-prompt';
|
|
3
|
+
import type { TextareaProps, TextareaSlots } from '../types';
|
|
4
|
+
import type { ComponentConfig } from '../types/tv';
|
|
5
|
+
type ChatPrompt = ComponentConfig<typeof theme, AppConfig, 'chatPrompt'>;
|
|
6
|
+
export interface ChatPromptProps extends /** @vue-ignore */ Pick<TextareaProps, 'autofocusDelay' | 'autoresizeDelay' | 'maxrows' | 'icon' | 'avatar' | 'loading' | 'loadingIcon'> {
|
|
7
|
+
/**
|
|
8
|
+
* The element or component this component should render as.
|
|
9
|
+
* @defaultValue 'form'
|
|
10
|
+
*/
|
|
11
|
+
as?: any;
|
|
12
|
+
/**
|
|
13
|
+
* The placeholder text for the textarea.
|
|
14
|
+
* @defaultValue t('chatPrompt.placeholder')
|
|
15
|
+
*/
|
|
16
|
+
placeholder?: string;
|
|
17
|
+
autofocus?: TextareaProps['autofocus'];
|
|
18
|
+
autoresize?: TextareaProps['autoresize'];
|
|
19
|
+
rows?: TextareaProps['rows'];
|
|
20
|
+
/**
|
|
21
|
+
* @defaultValue 'outline'
|
|
22
|
+
*/
|
|
23
|
+
variant?: ChatPrompt['variants']['variant'];
|
|
24
|
+
error?: Error;
|
|
25
|
+
class?: any;
|
|
26
|
+
ui?: ChatPrompt['slots'] & TextareaProps['ui'];
|
|
27
|
+
}
|
|
28
|
+
export interface ChatPromptEmits {
|
|
29
|
+
submit: [event: Event];
|
|
30
|
+
close: [event: Event];
|
|
31
|
+
}
|
|
32
|
+
export interface ChatPromptSlots extends TextareaSlots {
|
|
33
|
+
header(props?: {}): any;
|
|
34
|
+
footer(props?: {}): any;
|
|
35
|
+
}
|
|
36
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChatPromptProps & {
|
|
37
|
+
modelValue?: string;
|
|
38
|
+
}, {
|
|
39
|
+
textareaRef: HTMLTextAreaElement | null | undefined;
|
|
40
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
41
|
+
close: (event: Event) => any;
|
|
42
|
+
submit: (event: Event) => any;
|
|
43
|
+
"update:modelValue": (value: string) => any;
|
|
44
|
+
}, string, import("vue").PublicProps, Readonly<ChatPromptProps & {
|
|
45
|
+
modelValue?: string;
|
|
46
|
+
}> & Readonly<{
|
|
47
|
+
onClose?: ((event: Event) => any) | undefined;
|
|
48
|
+
onSubmit?: ((event: Event) => any) | undefined;
|
|
49
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
50
|
+
}>, {
|
|
51
|
+
as: any;
|
|
52
|
+
autofocus: boolean;
|
|
53
|
+
rows: number;
|
|
54
|
+
autoresize: boolean;
|
|
55
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChatPromptSlots>;
|
|
56
|
+
export default _default;
|
|
57
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
58
|
+
new (): {
|
|
59
|
+
$slots: S;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
@@ -29,7 +29,7 @@ const model = defineModel({ type: String, ...{ default: "" } });
|
|
|
29
29
|
const { t } = useLocale();
|
|
30
30
|
const appConfig = useAppConfig();
|
|
31
31
|
const textareaProps = useForwardProps(reactivePick(props, "autofocus", "autoresize", "rows"));
|
|
32
|
-
const
|
|
32
|
+
const getProxySlots = () => omit(slots, ["header", "footer"]);
|
|
33
33
|
const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.chatPrompt || {} })({
|
|
34
34
|
variant: props.variant
|
|
35
35
|
}));
|
|
@@ -67,7 +67,7 @@ defineExpose({
|
|
|
67
67
|
@keydown.enter.exact.prevent="submit"
|
|
68
68
|
@keydown.esc="blur"
|
|
69
69
|
>
|
|
70
|
-
<template v-for="(_, name) in
|
|
70
|
+
<template v-for="(_, name) in getProxySlots()" #[name]="slotData">
|
|
71
71
|
<slot :name="name" v-bind="slotData" />
|
|
72
72
|
</template>
|
|
73
73
|
</UTextarea>
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import type { ChatStatus } from 'ai';
|
|
2
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
3
|
+
import theme from '#build/ui/chat-prompt-submit';
|
|
4
|
+
import type { ButtonProps, ButtonSlots, IconProps } from '../types';
|
|
5
|
+
import type { ComponentConfig } from '../types/tv';
|
|
6
|
+
type ChatPromptSubmit = ComponentConfig<typeof theme, AppConfig, 'chatPromptSubmit'>;
|
|
7
|
+
export interface ChatPromptSubmitProps extends /** @vue-ignore */ Pick<ButtonProps, 'size' | 'label'> {
|
|
8
|
+
status?: ChatStatus;
|
|
9
|
+
/**
|
|
10
|
+
* The icon displayed in the button when the status is `ready`.
|
|
11
|
+
* @defaultValue appConfig.ui.icons.arrowUp
|
|
12
|
+
* @IconifyIcon
|
|
13
|
+
*/
|
|
14
|
+
icon?: IconProps['name'];
|
|
15
|
+
/**
|
|
16
|
+
* The color of the button when the status is `ready`.
|
|
17
|
+
* @defaultValue 'primary'
|
|
18
|
+
*/
|
|
19
|
+
color?: ButtonProps['color'];
|
|
20
|
+
/**
|
|
21
|
+
* The variant of the button when the status is `ready`.
|
|
22
|
+
* @defaultValue 'solid'
|
|
23
|
+
*/
|
|
24
|
+
variant?: ButtonProps['variant'];
|
|
25
|
+
/**
|
|
26
|
+
* The icon displayed in the button when the status is `streaming`.
|
|
27
|
+
* @defaultValue appConfig.ui.icons.stop
|
|
28
|
+
* @IconifyIcon
|
|
29
|
+
*/
|
|
30
|
+
streamingIcon?: IconProps['name'];
|
|
31
|
+
/**
|
|
32
|
+
* The color of the button when the status is `streaming`.
|
|
33
|
+
* @defaultValue 'neutral'
|
|
34
|
+
*/
|
|
35
|
+
streamingColor?: ButtonProps['color'];
|
|
36
|
+
/**
|
|
37
|
+
* The variant of the button when the status is `streaming`.
|
|
38
|
+
* @defaultValue 'subtle'
|
|
39
|
+
*/
|
|
40
|
+
streamingVariant?: ButtonProps['variant'];
|
|
41
|
+
/**
|
|
42
|
+
* The icon displayed in the button when the status is `submitted`.
|
|
43
|
+
* @defaultValue appConfig.ui.icons.stop
|
|
44
|
+
* @IconifyIcon
|
|
45
|
+
*/
|
|
46
|
+
submittedIcon?: IconProps['name'];
|
|
47
|
+
/**
|
|
48
|
+
* The color of the button when the status is `submitted`.
|
|
49
|
+
* @defaultValue 'neutral'
|
|
50
|
+
*/
|
|
51
|
+
submittedColor?: ButtonProps['color'];
|
|
52
|
+
/**
|
|
53
|
+
* The variant of the button when the status is `submitted`.
|
|
54
|
+
* @defaultValue 'subtle'
|
|
55
|
+
*/
|
|
56
|
+
submittedVariant?: ButtonProps['variant'];
|
|
57
|
+
/**
|
|
58
|
+
* The icon displayed in the button when the status is `error`.
|
|
59
|
+
* @defaultValue appConfig.ui.icons.reload
|
|
60
|
+
* @IconifyIcon
|
|
61
|
+
*/
|
|
62
|
+
errorIcon?: IconProps['name'];
|
|
63
|
+
/**
|
|
64
|
+
* The color of the button when the status is `error`.
|
|
65
|
+
* @defaultValue 'error'
|
|
66
|
+
*/
|
|
67
|
+
errorColor?: ButtonProps['color'];
|
|
68
|
+
/**
|
|
69
|
+
* The variant of the button when the status is `error`.
|
|
70
|
+
* @defaultValue 'soft'
|
|
71
|
+
*/
|
|
72
|
+
errorVariant?: ButtonProps['variant'];
|
|
73
|
+
ui?: ChatPromptSubmit['slots'] & ButtonProps['ui'];
|
|
74
|
+
class?: any;
|
|
75
|
+
}
|
|
76
|
+
export interface ChatPromptSubmitEmits {
|
|
77
|
+
stop: [];
|
|
78
|
+
reload: [];
|
|
79
|
+
}
|
|
80
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChatPromptSubmitProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
81
|
+
stop: () => any;
|
|
82
|
+
reload: () => any;
|
|
83
|
+
}, string, import("vue").PublicProps, Readonly<ChatPromptSubmitProps> & Readonly<{
|
|
84
|
+
onStop?: (() => any) | undefined;
|
|
85
|
+
onReload?: (() => any) | undefined;
|
|
86
|
+
}>, {
|
|
87
|
+
status: ChatStatus;
|
|
88
|
+
streamingColor: "error" | "primary" | "secondary" | "success" | "info" | "warning" | "neutral";
|
|
89
|
+
streamingVariant: "link" | "solid" | "outline" | "soft" | "subtle" | "ghost";
|
|
90
|
+
submittedColor: "error" | "primary" | "secondary" | "success" | "info" | "warning" | "neutral";
|
|
91
|
+
submittedVariant: "link" | "solid" | "outline" | "soft" | "subtle" | "ghost";
|
|
92
|
+
errorColor: "error" | "primary" | "secondary" | "success" | "info" | "warning" | "neutral";
|
|
93
|
+
errorVariant: "link" | "solid" | "outline" | "soft" | "subtle" | "ghost";
|
|
94
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ButtonSlots>;
|
|
95
|
+
export default _default;
|
|
96
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
97
|
+
new (): {
|
|
98
|
+
$slots: S;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import type { CheckboxRootProps } from 'reka-ui';
|
|
2
|
+
import type { AppConfig } from '@nuxt/schema';
|
|
3
|
+
import theme from '#build/ui/checkbox';
|
|
4
|
+
import type { IconProps } from '../types';
|
|
5
|
+
import type { ComponentConfig } from '../types/tv';
|
|
6
|
+
type Checkbox = ComponentConfig<typeof theme, AppConfig, 'checkbox'>;
|
|
7
|
+
export interface CheckboxProps extends Pick<CheckboxRootProps, 'disabled' | 'required' | 'name' | 'value' | 'id' | 'defaultValue'> {
|
|
8
|
+
/**
|
|
9
|
+
* The element or component this component should render as.
|
|
10
|
+
* @defaultValue 'div'
|
|
11
|
+
*/
|
|
12
|
+
as?: any;
|
|
13
|
+
label?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
/**
|
|
16
|
+
* @defaultValue 'primary'
|
|
17
|
+
*/
|
|
18
|
+
color?: Checkbox['variants']['color'];
|
|
19
|
+
/**
|
|
20
|
+
* @defaultValue 'list'
|
|
21
|
+
*/
|
|
22
|
+
variant?: Checkbox['variants']['variant'];
|
|
23
|
+
/**
|
|
24
|
+
* @defaultValue 'md'
|
|
25
|
+
*/
|
|
26
|
+
size?: Checkbox['variants']['size'];
|
|
27
|
+
/**
|
|
28
|
+
* Position of the indicator.
|
|
29
|
+
* @defaultValue 'start'
|
|
30
|
+
*/
|
|
31
|
+
indicator?: Checkbox['variants']['indicator'];
|
|
32
|
+
/**
|
|
33
|
+
* The icon displayed when checked.
|
|
34
|
+
* @defaultValue appConfig.ui.icons.check
|
|
35
|
+
* @IconifyIcon
|
|
36
|
+
*/
|
|
37
|
+
icon?: IconProps['name'];
|
|
38
|
+
/**
|
|
39
|
+
* The icon displayed when the checkbox is indeterminate.
|
|
40
|
+
* @defaultValue appConfig.ui.icons.minus
|
|
41
|
+
* @IconifyIcon
|
|
42
|
+
*/
|
|
43
|
+
indeterminateIcon?: IconProps['name'];
|
|
44
|
+
class?: any;
|
|
45
|
+
ui?: Checkbox['slots'];
|
|
46
|
+
}
|
|
47
|
+
export type CheckboxEmits = {
|
|
48
|
+
change: [event: Event];
|
|
49
|
+
};
|
|
50
|
+
export interface CheckboxSlots {
|
|
51
|
+
label(props: {
|
|
52
|
+
label?: string;
|
|
53
|
+
}): any;
|
|
54
|
+
description(props: {
|
|
55
|
+
description?: string;
|
|
56
|
+
}): any;
|
|
57
|
+
}
|
|
58
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<CheckboxProps & {
|
|
59
|
+
modelValue?: boolean | "indeterminate";
|
|
60
|
+
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
61
|
+
change: (event: Event) => any;
|
|
62
|
+
"update:modelValue": (value: boolean | "indeterminate") => any;
|
|
63
|
+
}, string, import("vue").PublicProps, Readonly<CheckboxProps & {
|
|
64
|
+
modelValue?: boolean | "indeterminate";
|
|
65
|
+
}> & Readonly<{
|
|
66
|
+
onChange?: ((event: Event) => any) | undefined;
|
|
67
|
+
"onUpdate:modelValue"?: ((value: boolean | "indeterminate") => any) | undefined;
|
|
68
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, CheckboxSlots>;
|
|
69
|
+
export default _default;
|
|
70
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
71
|
+
new (): {
|
|
72
|
+
$slots: S;
|
|
73
|
+
};
|
|
74
|
+
};
|