@websolutespa/ask-ui 1.0.3 → 1.0.4
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/dist/components/accordion.d.mts +25 -0
- package/dist/components/accordion.mjs +55 -0
- package/dist/components/ai-elements/attachments.d.mts +94 -0
- package/dist/components/ai-elements/attachments.mjs +174 -0
- package/dist/components/ai-elements/conversation.d.mts +51 -0
- package/dist/components/ai-elements/conversation.mjs +85 -0
- package/dist/components/ai-elements/message.d.mts +89 -0
- package/dist/components/ai-elements/message.mjs +175 -0
- package/dist/components/ai-elements/prompt-input.d.mts +277 -0
- package/dist/components/ai-elements/prompt-input.mjs +703 -0
- package/dist/components/ai-elements/speech-input.d.mts +64 -0
- package/dist/components/ai-elements/speech-input.mjs +153 -0
- package/dist/components/alert-dialog.d.mts +60 -0
- package/dist/components/alert-dialog.mjs +101 -0
- package/dist/components/alert.d.mts +28 -0
- package/dist/components/alert.mjs +43 -0
- package/dist/components/aspect-ratio.d.mts +9 -0
- package/dist/components/aspect-ratio.mjs +12 -0
- package/dist/components/avatar.d.mts +34 -0
- package/dist/components/avatar.mjs +51 -0
- package/dist/components/badge.d.mts +19 -0
- package/dist/components/badge.mjs +27 -0
- package/dist/components/breadcrumb.d.mts +38 -0
- package/dist/components/breadcrumb.mjs +70 -0
- package/dist/components/button-group.d.mts +28 -0
- package/dist/components/button-group.mjs +38 -0
- package/dist/components/button.d.mts +21 -0
- package/dist/components/button.mjs +47 -0
- package/dist/components/calendar.d.mts +30 -0
- package/dist/components/calendar.mjs +109 -0
- package/dist/components/card.d.mts +37 -0
- package/dist/components/card.mjs +56 -0
- package/dist/components/carousel.d.mts +56 -0
- package/dist/components/carousel.mjs +132 -0
- package/dist/components/chart.d.mts +78 -0
- package/dist/components/chart.mjs +146 -0
- package/dist/components/checkbox.d.mts +11 -0
- package/dist/components/checkbox.mjs +21 -0
- package/dist/components/collapsible.d.mts +15 -0
- package/dist/components/collapsible.mjs +24 -0
- package/dist/components/combobox.d.mts +81 -0
- package/dist/components/combobox.mjs +163 -0
- package/dist/components/command.d.mts +54 -0
- package/dist/components/command.mjs +88 -0
- package/dist/components/context-menu.d.mts +85 -0
- package/dist/components/context-menu.mjs +125 -0
- package/dist/components/dialog.d.mts +51 -0
- package/dist/components/dialog.mjs +96 -0
- package/dist/components/direction.d.mts +15 -0
- package/dist/components/direction.mjs +14 -0
- package/dist/components/drawer.d.mts +47 -0
- package/dist/components/drawer.mjs +79 -0
- package/dist/components/dropdown-menu.d.mts +87 -0
- package/dist/components/dropdown-menu.mjs +131 -0
- package/dist/components/empty.d.mts +35 -0
- package/dist/components/empty.mjs +59 -0
- package/dist/components/field.d.mts +64 -0
- package/dist/components/field.mjs +110 -0
- package/dist/components/hover-card.d.mts +22 -0
- package/dist/components/hover-card.mjs +33 -0
- package/dist/components/input-group.d.mts +43 -0
- package/dist/components/input-group.mjs +79 -0
- package/dist/components/input-otp.d.mts +28 -0
- package/dist/components/input-otp.mjs +47 -0
- package/dist/components/input.d.mts +11 -0
- package/dist/components/input.mjs +14 -0
- package/dist/components/item.d.mts +62 -0
- package/dist/components/item.mjs +117 -0
- package/dist/components/kbd.d.mts +13 -0
- package/dist/components/kbd.mjs +19 -0
- package/dist/components/label.d.mts +11 -0
- package/dist/components/label.mjs +15 -0
- package/dist/components/menubar.d.mts +90 -0
- package/dist/components/menubar.mjs +135 -0
- package/dist/components/native-select.d.mts +21 -0
- package/dist/components/native-select.mjs +37 -0
- package/dist/components/navigation-menu.d.mts +46 -0
- package/dist/components/navigation-menu.mjs +80 -0
- package/dist/components/pagination.d.mts +45 -0
- package/dist/components/pagination.mjs +80 -0
- package/dist/components/popover.d.mts +34 -0
- package/dist/components/popover.mjs +56 -0
- package/dist/components/progress.d.mts +12 -0
- package/dist/components/progress.mjs +20 -0
- package/dist/components/radio-group.d.mts +15 -0
- package/dist/components/radio-group.mjs +27 -0
- package/dist/components/resizable.d.mts +20 -0
- package/dist/components/resizable.mjs +28 -0
- package/dist/components/scroll-area.d.mts +17 -0
- package/dist/components/scroll-area.mjs +37 -0
- package/dist/components/select.d.mts +53 -0
- package/dist/components/select.mjs +100 -0
- package/dist/components/separator.d.mts +13 -0
- package/dist/components/separator.mjs +17 -0
- package/dist/components/sheet.d.mts +42 -0
- package/dist/components/sheet.mjs +90 -0
- package/dist/components/sidebar.d.mts +167 -0
- package/dist/components/sidebar.mjs +374 -0
- package/dist/components/skeleton.d.mts +9 -0
- package/dist/components/skeleton.mjs +12 -0
- package/dist/components/slider.d.mts +15 -0
- package/dist/components/slider.mjs +36 -0
- package/dist/components/sonner.d.mts +9 -0
- package/dist/components/sonner.mjs +30 -0
- package/dist/components/spinner.d.mts +9 -0
- package/dist/components/spinner.mjs +14 -0
- package/dist/components/switch.d.mts +14 -0
- package/dist/components/switch.mjs +20 -0
- package/dist/components/table.d.mts +38 -0
- package/dist/components/table.mjs +67 -0
- package/dist/components/tabs.d.mts +30 -0
- package/dist/components/tabs.mjs +46 -0
- package/dist/components/textarea.d.mts +10 -0
- package/dist/components/textarea.mjs +13 -0
- package/dist/components/toggle-group.d.mts +28 -0
- package/dist/components/toggle-group.mjs +51 -0
- package/dist/components/toggle.d.mts +19 -0
- package/dist/components/toggle.mjs +37 -0
- package/dist/components/tooltip.d.mts +23 -0
- package/dist/components/tooltip.mjs +36 -0
- package/dist/exports/components.d.mts +61 -0
- package/dist/exports/components.mjs +61 -0
- package/dist/exports/hooks.d.mts +2 -0
- package/dist/exports/hooks.mjs +2 -0
- package/dist/exports/lib.d.mts +2 -0
- package/dist/exports/lib.mjs +2 -0
- package/dist/hooks/use-mobile.d.mts +4 -0
- package/dist/hooks/use-mobile.mjs +18 -0
- package/package.json +1 -1
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../../lib/utils.mjs";
|
|
3
|
+
import { Button } from "../button.mjs";
|
|
4
|
+
import { ButtonGroup, ButtonGroupText } from "../button-group.mjs";
|
|
5
|
+
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "../tooltip.mjs";
|
|
6
|
+
import { ChevronLeftIcon, ChevronRightIcon } from "lucide-react";
|
|
7
|
+
import { createContext, memo, useCallback, useContext, useEffect, useMemo, useState } from "react";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { cjk } from "@streamdown/cjk";
|
|
10
|
+
import { code } from "@streamdown/code";
|
|
11
|
+
import { math } from "@streamdown/math";
|
|
12
|
+
import { mermaid } from "@streamdown/mermaid";
|
|
13
|
+
import { Streamdown } from "streamdown";
|
|
14
|
+
//#region src/components/ai-elements/message.tsx
|
|
15
|
+
const Message = ({ className, from, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
16
|
+
className: cn("group flex w-full max-w-[95%] flex-col gap-2", from === "user" ? "is-user ml-auto justify-end" : "is-assistant", className),
|
|
17
|
+
...props
|
|
18
|
+
});
|
|
19
|
+
const MessageContent = ({ children, className, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
20
|
+
className: cn("is-user:dark flex w-fit min-w-0 max-w-full flex-col gap-2 overflow-hidden text-sm", "group-[.is-user]:ml-auto group-[.is-user]:rounded-lg group-[.is-user]:bg-secondary group-[.is-user]:px-4 group-[.is-user]:py-3 group-[.is-user]:text-foreground", "group-[.is-assistant]:text-foreground", className),
|
|
21
|
+
...props,
|
|
22
|
+
children
|
|
23
|
+
});
|
|
24
|
+
const MessageActions = ({ className, children, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
25
|
+
className: cn("flex items-center gap-1", className),
|
|
26
|
+
...props,
|
|
27
|
+
children
|
|
28
|
+
});
|
|
29
|
+
const MessageAction = ({ tooltip, children, label, variant = "ghost", size = "icon-sm", ...props }) => {
|
|
30
|
+
const button = /* @__PURE__ */ jsxs(Button, {
|
|
31
|
+
size,
|
|
32
|
+
type: "button",
|
|
33
|
+
variant,
|
|
34
|
+
...props,
|
|
35
|
+
children: [children, /* @__PURE__ */ jsx("span", {
|
|
36
|
+
className: "sr-only",
|
|
37
|
+
children: label || tooltip
|
|
38
|
+
})]
|
|
39
|
+
});
|
|
40
|
+
if (tooltip) return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsxs(Tooltip, { children: [/* @__PURE__ */ jsx(TooltipTrigger, {
|
|
41
|
+
asChild: true,
|
|
42
|
+
children: button
|
|
43
|
+
}), /* @__PURE__ */ jsx(TooltipContent, { children: /* @__PURE__ */ jsx("p", { children: tooltip }) })] }) });
|
|
44
|
+
return button;
|
|
45
|
+
};
|
|
46
|
+
const MessageBranchContext = createContext(null);
|
|
47
|
+
const useMessageBranch = () => {
|
|
48
|
+
const context = useContext(MessageBranchContext);
|
|
49
|
+
if (!context) throw new Error("MessageBranch components must be used within MessageBranch");
|
|
50
|
+
return context;
|
|
51
|
+
};
|
|
52
|
+
const MessageBranch = ({ defaultBranch = 0, onBranchChange, className, ...props }) => {
|
|
53
|
+
const [currentBranch, setCurrentBranch] = useState(defaultBranch);
|
|
54
|
+
const [branches, setBranches] = useState([]);
|
|
55
|
+
const handleBranchChange = useCallback((newBranch) => {
|
|
56
|
+
setCurrentBranch(newBranch);
|
|
57
|
+
onBranchChange?.(newBranch);
|
|
58
|
+
}, [onBranchChange]);
|
|
59
|
+
const goToPrevious = useCallback(() => {
|
|
60
|
+
handleBranchChange(currentBranch > 0 ? currentBranch - 1 : branches.length - 1);
|
|
61
|
+
}, [
|
|
62
|
+
currentBranch,
|
|
63
|
+
branches.length,
|
|
64
|
+
handleBranchChange
|
|
65
|
+
]);
|
|
66
|
+
const goToNext = useCallback(() => {
|
|
67
|
+
handleBranchChange(currentBranch < branches.length - 1 ? currentBranch + 1 : 0);
|
|
68
|
+
}, [
|
|
69
|
+
currentBranch,
|
|
70
|
+
branches.length,
|
|
71
|
+
handleBranchChange
|
|
72
|
+
]);
|
|
73
|
+
const contextValue = useMemo(() => ({
|
|
74
|
+
branches,
|
|
75
|
+
currentBranch,
|
|
76
|
+
goToNext,
|
|
77
|
+
goToPrevious,
|
|
78
|
+
setBranches,
|
|
79
|
+
totalBranches: branches.length
|
|
80
|
+
}), [
|
|
81
|
+
branches,
|
|
82
|
+
currentBranch,
|
|
83
|
+
goToNext,
|
|
84
|
+
goToPrevious
|
|
85
|
+
]);
|
|
86
|
+
return /* @__PURE__ */ jsx(MessageBranchContext.Provider, {
|
|
87
|
+
value: contextValue,
|
|
88
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
89
|
+
className: cn("grid w-full gap-2 [&>div]:pb-0", className),
|
|
90
|
+
...props
|
|
91
|
+
})
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
const MessageBranchContent = ({ children, ...props }) => {
|
|
95
|
+
const { currentBranch, setBranches, branches } = useMessageBranch();
|
|
96
|
+
const childrenArray = useMemo(() => Array.isArray(children) ? children : [children], [children]);
|
|
97
|
+
useEffect(() => {
|
|
98
|
+
if (branches.length !== childrenArray.length) setBranches(childrenArray);
|
|
99
|
+
}, [
|
|
100
|
+
childrenArray,
|
|
101
|
+
branches,
|
|
102
|
+
setBranches
|
|
103
|
+
]);
|
|
104
|
+
return childrenArray.map((branch, index) => /* @__PURE__ */ jsx("div", {
|
|
105
|
+
className: cn("grid gap-2 overflow-hidden [&>div]:pb-0", index === currentBranch ? "block" : "hidden"),
|
|
106
|
+
...props,
|
|
107
|
+
children: branch
|
|
108
|
+
}, branch.key));
|
|
109
|
+
};
|
|
110
|
+
const MessageBranchSelector = ({ className, ...props }) => {
|
|
111
|
+
const { totalBranches } = useMessageBranch();
|
|
112
|
+
if (totalBranches <= 1) return null;
|
|
113
|
+
return /* @__PURE__ */ jsx(ButtonGroup, {
|
|
114
|
+
className: cn("[&>*:not(:first-child)]:rounded-l-md [&>*:not(:last-child)]:rounded-r-md", className),
|
|
115
|
+
orientation: "horizontal",
|
|
116
|
+
...props
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
const MessageBranchPrevious = ({ children, ...props }) => {
|
|
120
|
+
const { goToPrevious, totalBranches } = useMessageBranch();
|
|
121
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
122
|
+
"aria-label": "Previous branch",
|
|
123
|
+
disabled: totalBranches <= 1,
|
|
124
|
+
onClick: goToPrevious,
|
|
125
|
+
size: "icon-sm",
|
|
126
|
+
type: "button",
|
|
127
|
+
variant: "ghost",
|
|
128
|
+
...props,
|
|
129
|
+
children: children ?? /* @__PURE__ */ jsx(ChevronLeftIcon, { size: 14 })
|
|
130
|
+
});
|
|
131
|
+
};
|
|
132
|
+
const MessageBranchNext = ({ children, ...props }) => {
|
|
133
|
+
const { goToNext, totalBranches } = useMessageBranch();
|
|
134
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
135
|
+
"aria-label": "Next branch",
|
|
136
|
+
disabled: totalBranches <= 1,
|
|
137
|
+
onClick: goToNext,
|
|
138
|
+
size: "icon-sm",
|
|
139
|
+
type: "button",
|
|
140
|
+
variant: "ghost",
|
|
141
|
+
...props,
|
|
142
|
+
children: children ?? /* @__PURE__ */ jsx(ChevronRightIcon, { size: 14 })
|
|
143
|
+
});
|
|
144
|
+
};
|
|
145
|
+
const MessageBranchPage = ({ className, ...props }) => {
|
|
146
|
+
const { currentBranch, totalBranches } = useMessageBranch();
|
|
147
|
+
return /* @__PURE__ */ jsxs(ButtonGroupText, {
|
|
148
|
+
className: cn("border-none bg-transparent text-muted-foreground shadow-none", className),
|
|
149
|
+
...props,
|
|
150
|
+
children: [
|
|
151
|
+
currentBranch + 1,
|
|
152
|
+
" of ",
|
|
153
|
+
totalBranches
|
|
154
|
+
]
|
|
155
|
+
});
|
|
156
|
+
};
|
|
157
|
+
const streamdownPlugins = {
|
|
158
|
+
cjk,
|
|
159
|
+
code,
|
|
160
|
+
math,
|
|
161
|
+
mermaid
|
|
162
|
+
};
|
|
163
|
+
const MessageResponse = memo(({ className, ...props }) => /* @__PURE__ */ jsx(Streamdown, {
|
|
164
|
+
className: cn("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0", className),
|
|
165
|
+
plugins: streamdownPlugins,
|
|
166
|
+
...props
|
|
167
|
+
}), (prevProps, nextProps) => prevProps.children === nextProps.children && nextProps.isAnimating === prevProps.isAnimating);
|
|
168
|
+
MessageResponse.displayName = "MessageResponse";
|
|
169
|
+
const MessageToolbar = ({ className, children, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
170
|
+
className: cn("mt-4 flex w-full items-center justify-between gap-4", className),
|
|
171
|
+
...props,
|
|
172
|
+
children
|
|
173
|
+
});
|
|
174
|
+
//#endregion
|
|
175
|
+
export { Message, MessageAction, MessageActions, MessageBranch, MessageBranchContent, MessageBranchNext, MessageBranchPage, MessageBranchPrevious, MessageBranchSelector, MessageContent, MessageResponse, MessageToolbar };
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import { HoverCard, HoverCardContent, HoverCardTrigger } from "../hover-card.mjs";
|
|
2
|
+
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from "../command.mjs";
|
|
3
|
+
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem } from "../dropdown-menu.mjs";
|
|
4
|
+
import { InputGroupAddon, InputGroupButton, InputGroupTextarea } from "../input-group.mjs";
|
|
5
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../select.mjs";
|
|
6
|
+
import { TooltipContent } from "../tooltip.mjs";
|
|
7
|
+
import * as _$react from "react";
|
|
8
|
+
import { ComponentProps, FormEvent, HTMLAttributes, PropsWithChildren, ReactNode, RefObject } from "react";
|
|
9
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
10
|
+
import { ChatStatus, FileUIPart, SourceDocumentUIPart } from "ai";
|
|
11
|
+
|
|
12
|
+
//#region src/components/ai-elements/prompt-input.d.ts
|
|
13
|
+
interface AttachmentsContext {
|
|
14
|
+
files: (FileUIPart & {
|
|
15
|
+
id: string;
|
|
16
|
+
})[];
|
|
17
|
+
add: (files: File[] | FileList) => void;
|
|
18
|
+
remove: (id: string) => void;
|
|
19
|
+
clear: () => void;
|
|
20
|
+
openFileDialog: () => void;
|
|
21
|
+
fileInputRef: RefObject<HTMLInputElement | null>;
|
|
22
|
+
}
|
|
23
|
+
interface TextInputContext {
|
|
24
|
+
value: string;
|
|
25
|
+
setInput: (v: string) => void;
|
|
26
|
+
clear: () => void;
|
|
27
|
+
}
|
|
28
|
+
interface PromptInputControllerProps {
|
|
29
|
+
textInput: TextInputContext;
|
|
30
|
+
attachments: AttachmentsContext;
|
|
31
|
+
/** INTERNAL: Allows PromptInput to register its file textInput + "open" callback */
|
|
32
|
+
__registerFileInput: (ref: RefObject<HTMLInputElement | null>, open: () => void) => void;
|
|
33
|
+
}
|
|
34
|
+
declare const usePromptInputController: () => PromptInputControllerProps;
|
|
35
|
+
declare const useProviderAttachments: () => AttachmentsContext;
|
|
36
|
+
type PromptInputProviderProps = PropsWithChildren<{
|
|
37
|
+
initialInput?: string;
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* Optional global provider that lifts PromptInput state outside of PromptInput.
|
|
41
|
+
* If you don't use it, PromptInput stays fully self-managed.
|
|
42
|
+
*/
|
|
43
|
+
declare const PromptInputProvider: ({
|
|
44
|
+
initialInput: initialTextInput,
|
|
45
|
+
children
|
|
46
|
+
}: PromptInputProviderProps) => _$react_jsx_runtime0.JSX.Element;
|
|
47
|
+
declare const usePromptInputAttachments: () => AttachmentsContext;
|
|
48
|
+
interface ReferencedSourcesContext {
|
|
49
|
+
sources: (SourceDocumentUIPart & {
|
|
50
|
+
id: string;
|
|
51
|
+
})[];
|
|
52
|
+
add: (sources: SourceDocumentUIPart[] | SourceDocumentUIPart) => void;
|
|
53
|
+
remove: (id: string) => void;
|
|
54
|
+
clear: () => void;
|
|
55
|
+
}
|
|
56
|
+
declare const LocalReferencedSourcesContext: _$react.Context<ReferencedSourcesContext | null>;
|
|
57
|
+
declare const usePromptInputReferencedSources: () => ReferencedSourcesContext;
|
|
58
|
+
type PromptInputActionAddAttachmentsProps = ComponentProps<typeof DropdownMenuItem> & {
|
|
59
|
+
label?: string;
|
|
60
|
+
};
|
|
61
|
+
declare const PromptInputActionAddAttachments: ({
|
|
62
|
+
label,
|
|
63
|
+
...props
|
|
64
|
+
}: PromptInputActionAddAttachmentsProps) => _$react_jsx_runtime0.JSX.Element;
|
|
65
|
+
type PromptInputActionAddScreenshotProps = ComponentProps<typeof DropdownMenuItem> & {
|
|
66
|
+
label?: string;
|
|
67
|
+
};
|
|
68
|
+
declare const PromptInputActionAddScreenshot: ({
|
|
69
|
+
label,
|
|
70
|
+
onSelect,
|
|
71
|
+
...props
|
|
72
|
+
}: PromptInputActionAddScreenshotProps) => _$react_jsx_runtime0.JSX.Element;
|
|
73
|
+
interface PromptInputMessage {
|
|
74
|
+
text: string;
|
|
75
|
+
files: FileUIPart[];
|
|
76
|
+
}
|
|
77
|
+
type PromptInputProps = Omit<HTMLAttributes<HTMLFormElement>, 'onSubmit' | 'onError'> & {
|
|
78
|
+
accept?: string;
|
|
79
|
+
multiple?: boolean;
|
|
80
|
+
globalDrop?: boolean;
|
|
81
|
+
syncHiddenInput?: boolean;
|
|
82
|
+
maxFiles?: number;
|
|
83
|
+
maxFileSize?: number;
|
|
84
|
+
onError?: (err: {
|
|
85
|
+
code: 'max_files' | 'max_file_size' | 'accept';
|
|
86
|
+
message: string;
|
|
87
|
+
}) => void;
|
|
88
|
+
onSubmit: (message: PromptInputMessage, event: FormEvent<HTMLFormElement>) => void | Promise<void>;
|
|
89
|
+
};
|
|
90
|
+
declare const PromptInput: ({
|
|
91
|
+
className,
|
|
92
|
+
groupClassName,
|
|
93
|
+
accept,
|
|
94
|
+
multiple,
|
|
95
|
+
globalDrop,
|
|
96
|
+
syncHiddenInput,
|
|
97
|
+
maxFiles,
|
|
98
|
+
maxFileSize,
|
|
99
|
+
onError,
|
|
100
|
+
onSubmit,
|
|
101
|
+
children,
|
|
102
|
+
...props
|
|
103
|
+
}: PromptInputProps & {
|
|
104
|
+
groupClassName?: string;
|
|
105
|
+
}) => _$react_jsx_runtime0.JSX.Element;
|
|
106
|
+
type PromptInputBodyProps = HTMLAttributes<HTMLDivElement>;
|
|
107
|
+
declare const PromptInputBody: ({
|
|
108
|
+
className,
|
|
109
|
+
...props
|
|
110
|
+
}: PromptInputBodyProps) => _$react_jsx_runtime0.JSX.Element;
|
|
111
|
+
type PromptInputTextareaProps = ComponentProps<typeof InputGroupTextarea>;
|
|
112
|
+
declare const PromptInputTextarea: ({
|
|
113
|
+
onChange,
|
|
114
|
+
onKeyDown,
|
|
115
|
+
className,
|
|
116
|
+
placeholder,
|
|
117
|
+
...props
|
|
118
|
+
}: PromptInputTextareaProps) => _$react_jsx_runtime0.JSX.Element;
|
|
119
|
+
type PromptInputHeaderProps = Omit<ComponentProps<typeof InputGroupAddon>, 'align'>;
|
|
120
|
+
declare const PromptInputHeader: ({
|
|
121
|
+
className,
|
|
122
|
+
...props
|
|
123
|
+
}: PromptInputHeaderProps) => _$react_jsx_runtime0.JSX.Element;
|
|
124
|
+
type PromptInputFooterProps = Omit<ComponentProps<typeof InputGroupAddon>, 'align'>;
|
|
125
|
+
declare const PromptInputFooter: ({
|
|
126
|
+
className,
|
|
127
|
+
...props
|
|
128
|
+
}: PromptInputFooterProps) => _$react_jsx_runtime0.JSX.Element;
|
|
129
|
+
type PromptInputToolsProps = HTMLAttributes<HTMLDivElement>;
|
|
130
|
+
declare const PromptInputTools: ({
|
|
131
|
+
className,
|
|
132
|
+
...props
|
|
133
|
+
}: PromptInputToolsProps) => _$react_jsx_runtime0.JSX.Element;
|
|
134
|
+
type PromptInputButtonTooltip = string | {
|
|
135
|
+
content: ReactNode;
|
|
136
|
+
shortcut?: string;
|
|
137
|
+
side?: ComponentProps<typeof TooltipContent>['side'];
|
|
138
|
+
};
|
|
139
|
+
type PromptInputButtonProps = ComponentProps<typeof InputGroupButton> & {
|
|
140
|
+
tooltip?: PromptInputButtonTooltip;
|
|
141
|
+
};
|
|
142
|
+
declare const PromptInputButton: ({
|
|
143
|
+
variant,
|
|
144
|
+
className,
|
|
145
|
+
size,
|
|
146
|
+
tooltip,
|
|
147
|
+
...props
|
|
148
|
+
}: PromptInputButtonProps) => _$react_jsx_runtime0.JSX.Element;
|
|
149
|
+
type PromptInputActionMenuProps = ComponentProps<typeof DropdownMenu>;
|
|
150
|
+
declare const PromptInputActionMenu: (props: PromptInputActionMenuProps) => _$react_jsx_runtime0.JSX.Element;
|
|
151
|
+
type PromptInputActionMenuTriggerProps = PromptInputButtonProps;
|
|
152
|
+
declare const PromptInputActionMenuTrigger: ({
|
|
153
|
+
className,
|
|
154
|
+
children,
|
|
155
|
+
...props
|
|
156
|
+
}: PromptInputActionMenuTriggerProps) => _$react_jsx_runtime0.JSX.Element;
|
|
157
|
+
type PromptInputActionMenuContentProps = ComponentProps<typeof DropdownMenuContent>;
|
|
158
|
+
declare const PromptInputActionMenuContent: ({
|
|
159
|
+
className,
|
|
160
|
+
...props
|
|
161
|
+
}: PromptInputActionMenuContentProps) => _$react_jsx_runtime0.JSX.Element;
|
|
162
|
+
type PromptInputActionMenuItemProps = ComponentProps<typeof DropdownMenuItem>;
|
|
163
|
+
declare const PromptInputActionMenuItem: ({
|
|
164
|
+
className,
|
|
165
|
+
...props
|
|
166
|
+
}: PromptInputActionMenuItemProps) => _$react_jsx_runtime0.JSX.Element;
|
|
167
|
+
type PromptInputSubmitProps = ComponentProps<typeof InputGroupButton> & {
|
|
168
|
+
status?: ChatStatus;
|
|
169
|
+
onStop?: () => void;
|
|
170
|
+
};
|
|
171
|
+
declare const PromptInputSubmit: ({
|
|
172
|
+
className,
|
|
173
|
+
variant,
|
|
174
|
+
size,
|
|
175
|
+
status,
|
|
176
|
+
onStop,
|
|
177
|
+
onClick,
|
|
178
|
+
children,
|
|
179
|
+
...props
|
|
180
|
+
}: PromptInputSubmitProps) => _$react_jsx_runtime0.JSX.Element;
|
|
181
|
+
type PromptInputSelectProps = ComponentProps<typeof Select>;
|
|
182
|
+
declare const PromptInputSelect: (props: PromptInputSelectProps) => _$react_jsx_runtime0.JSX.Element;
|
|
183
|
+
type PromptInputSelectTriggerProps = ComponentProps<typeof SelectTrigger>;
|
|
184
|
+
declare const PromptInputSelectTrigger: ({
|
|
185
|
+
className,
|
|
186
|
+
...props
|
|
187
|
+
}: PromptInputSelectTriggerProps) => _$react_jsx_runtime0.JSX.Element;
|
|
188
|
+
type PromptInputSelectContentProps = ComponentProps<typeof SelectContent>;
|
|
189
|
+
declare const PromptInputSelectContent: ({
|
|
190
|
+
className,
|
|
191
|
+
...props
|
|
192
|
+
}: PromptInputSelectContentProps) => _$react_jsx_runtime0.JSX.Element;
|
|
193
|
+
type PromptInputSelectItemProps = ComponentProps<typeof SelectItem>;
|
|
194
|
+
declare const PromptInputSelectItem: ({
|
|
195
|
+
className,
|
|
196
|
+
...props
|
|
197
|
+
}: PromptInputSelectItemProps) => _$react_jsx_runtime0.JSX.Element;
|
|
198
|
+
type PromptInputSelectValueProps = ComponentProps<typeof SelectValue>;
|
|
199
|
+
declare const PromptInputSelectValue: ({
|
|
200
|
+
className,
|
|
201
|
+
...props
|
|
202
|
+
}: PromptInputSelectValueProps) => _$react_jsx_runtime0.JSX.Element;
|
|
203
|
+
type PromptInputHoverCardProps = ComponentProps<typeof HoverCard>;
|
|
204
|
+
declare const PromptInputHoverCard: ({
|
|
205
|
+
openDelay,
|
|
206
|
+
closeDelay,
|
|
207
|
+
...props
|
|
208
|
+
}: PromptInputHoverCardProps) => _$react_jsx_runtime0.JSX.Element;
|
|
209
|
+
type PromptInputHoverCardTriggerProps = ComponentProps<typeof HoverCardTrigger>;
|
|
210
|
+
declare const PromptInputHoverCardTrigger: (props: PromptInputHoverCardTriggerProps) => _$react_jsx_runtime0.JSX.Element;
|
|
211
|
+
type PromptInputHoverCardContentProps = ComponentProps<typeof HoverCardContent>;
|
|
212
|
+
declare const PromptInputHoverCardContent: ({
|
|
213
|
+
align,
|
|
214
|
+
...props
|
|
215
|
+
}: PromptInputHoverCardContentProps) => _$react_jsx_runtime0.JSX.Element;
|
|
216
|
+
type PromptInputTabsListProps = HTMLAttributes<HTMLDivElement>;
|
|
217
|
+
declare const PromptInputTabsList: ({
|
|
218
|
+
className,
|
|
219
|
+
...props
|
|
220
|
+
}: PromptInputTabsListProps) => _$react_jsx_runtime0.JSX.Element;
|
|
221
|
+
type PromptInputTabProps = HTMLAttributes<HTMLDivElement>;
|
|
222
|
+
declare const PromptInputTab: ({
|
|
223
|
+
className,
|
|
224
|
+
...props
|
|
225
|
+
}: PromptInputTabProps) => _$react_jsx_runtime0.JSX.Element;
|
|
226
|
+
type PromptInputTabLabelProps = HTMLAttributes<HTMLHeadingElement>;
|
|
227
|
+
declare const PromptInputTabLabel: ({
|
|
228
|
+
className,
|
|
229
|
+
...props
|
|
230
|
+
}: PromptInputTabLabelProps) => _$react_jsx_runtime0.JSX.Element;
|
|
231
|
+
type PromptInputTabBodyProps = HTMLAttributes<HTMLDivElement>;
|
|
232
|
+
declare const PromptInputTabBody: ({
|
|
233
|
+
className,
|
|
234
|
+
...props
|
|
235
|
+
}: PromptInputTabBodyProps) => _$react_jsx_runtime0.JSX.Element;
|
|
236
|
+
type PromptInputTabItemProps = HTMLAttributes<HTMLDivElement>;
|
|
237
|
+
declare const PromptInputTabItem: ({
|
|
238
|
+
className,
|
|
239
|
+
...props
|
|
240
|
+
}: PromptInputTabItemProps) => _$react_jsx_runtime0.JSX.Element;
|
|
241
|
+
type PromptInputCommandProps = ComponentProps<typeof Command>;
|
|
242
|
+
declare const PromptInputCommand: ({
|
|
243
|
+
className,
|
|
244
|
+
...props
|
|
245
|
+
}: PromptInputCommandProps) => _$react_jsx_runtime0.JSX.Element;
|
|
246
|
+
type PromptInputCommandInputProps = ComponentProps<typeof CommandInput>;
|
|
247
|
+
declare const PromptInputCommandInput: ({
|
|
248
|
+
className,
|
|
249
|
+
...props
|
|
250
|
+
}: PromptInputCommandInputProps) => _$react_jsx_runtime0.JSX.Element;
|
|
251
|
+
type PromptInputCommandListProps = ComponentProps<typeof CommandList>;
|
|
252
|
+
declare const PromptInputCommandList: ({
|
|
253
|
+
className,
|
|
254
|
+
...props
|
|
255
|
+
}: PromptInputCommandListProps) => _$react_jsx_runtime0.JSX.Element;
|
|
256
|
+
type PromptInputCommandEmptyProps = ComponentProps<typeof CommandEmpty>;
|
|
257
|
+
declare const PromptInputCommandEmpty: ({
|
|
258
|
+
className,
|
|
259
|
+
...props
|
|
260
|
+
}: PromptInputCommandEmptyProps) => _$react_jsx_runtime0.JSX.Element;
|
|
261
|
+
type PromptInputCommandGroupProps = ComponentProps<typeof CommandGroup>;
|
|
262
|
+
declare const PromptInputCommandGroup: ({
|
|
263
|
+
className,
|
|
264
|
+
...props
|
|
265
|
+
}: PromptInputCommandGroupProps) => _$react_jsx_runtime0.JSX.Element;
|
|
266
|
+
type PromptInputCommandItemProps = ComponentProps<typeof CommandItem>;
|
|
267
|
+
declare const PromptInputCommandItem: ({
|
|
268
|
+
className,
|
|
269
|
+
...props
|
|
270
|
+
}: PromptInputCommandItemProps) => _$react_jsx_runtime0.JSX.Element;
|
|
271
|
+
type PromptInputCommandSeparatorProps = ComponentProps<typeof CommandSeparator>;
|
|
272
|
+
declare const PromptInputCommandSeparator: ({
|
|
273
|
+
className,
|
|
274
|
+
...props
|
|
275
|
+
}: PromptInputCommandSeparatorProps) => _$react_jsx_runtime0.JSX.Element;
|
|
276
|
+
//#endregion
|
|
277
|
+
export { AttachmentsContext, LocalReferencedSourcesContext, PromptInput, PromptInputActionAddAttachments, PromptInputActionAddAttachmentsProps, PromptInputActionAddScreenshot, PromptInputActionAddScreenshotProps, PromptInputActionMenu, PromptInputActionMenuContent, PromptInputActionMenuContentProps, PromptInputActionMenuItem, PromptInputActionMenuItemProps, PromptInputActionMenuProps, PromptInputActionMenuTrigger, PromptInputActionMenuTriggerProps, PromptInputBody, PromptInputBodyProps, PromptInputButton, PromptInputButtonProps, PromptInputButtonTooltip, PromptInputCommand, PromptInputCommandEmpty, PromptInputCommandEmptyProps, PromptInputCommandGroup, PromptInputCommandGroupProps, PromptInputCommandInput, PromptInputCommandInputProps, PromptInputCommandItem, PromptInputCommandItemProps, PromptInputCommandList, PromptInputCommandListProps, PromptInputCommandProps, PromptInputCommandSeparator, PromptInputCommandSeparatorProps, PromptInputControllerProps, PromptInputFooter, PromptInputFooterProps, PromptInputHeader, PromptInputHeaderProps, PromptInputHoverCard, PromptInputHoverCardContent, PromptInputHoverCardContentProps, PromptInputHoverCardProps, PromptInputHoverCardTrigger, PromptInputHoverCardTriggerProps, PromptInputMessage, PromptInputProps, PromptInputProvider, PromptInputProviderProps, PromptInputSelect, PromptInputSelectContent, PromptInputSelectContentProps, PromptInputSelectItem, PromptInputSelectItemProps, PromptInputSelectProps, PromptInputSelectTrigger, PromptInputSelectTriggerProps, PromptInputSelectValue, PromptInputSelectValueProps, PromptInputSubmit, PromptInputSubmitProps, PromptInputTab, PromptInputTabBody, PromptInputTabBodyProps, PromptInputTabItem, PromptInputTabItemProps, PromptInputTabLabel, PromptInputTabLabelProps, PromptInputTabProps, PromptInputTabsList, PromptInputTabsListProps, PromptInputTextarea, PromptInputTextareaProps, PromptInputTools, PromptInputToolsProps, ReferencedSourcesContext, TextInputContext, usePromptInputAttachments, usePromptInputController, usePromptInputReferencedSources, useProviderAttachments };
|