@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.
Files changed (129) hide show
  1. package/dist/components/accordion.d.mts +25 -0
  2. package/dist/components/accordion.mjs +55 -0
  3. package/dist/components/ai-elements/attachments.d.mts +94 -0
  4. package/dist/components/ai-elements/attachments.mjs +174 -0
  5. package/dist/components/ai-elements/conversation.d.mts +51 -0
  6. package/dist/components/ai-elements/conversation.mjs +85 -0
  7. package/dist/components/ai-elements/message.d.mts +89 -0
  8. package/dist/components/ai-elements/message.mjs +175 -0
  9. package/dist/components/ai-elements/prompt-input.d.mts +277 -0
  10. package/dist/components/ai-elements/prompt-input.mjs +703 -0
  11. package/dist/components/ai-elements/speech-input.d.mts +64 -0
  12. package/dist/components/ai-elements/speech-input.mjs +153 -0
  13. package/dist/components/alert-dialog.d.mts +60 -0
  14. package/dist/components/alert-dialog.mjs +101 -0
  15. package/dist/components/alert.d.mts +28 -0
  16. package/dist/components/alert.mjs +43 -0
  17. package/dist/components/aspect-ratio.d.mts +9 -0
  18. package/dist/components/aspect-ratio.mjs +12 -0
  19. package/dist/components/avatar.d.mts +34 -0
  20. package/dist/components/avatar.mjs +51 -0
  21. package/dist/components/badge.d.mts +19 -0
  22. package/dist/components/badge.mjs +27 -0
  23. package/dist/components/breadcrumb.d.mts +38 -0
  24. package/dist/components/breadcrumb.mjs +70 -0
  25. package/dist/components/button-group.d.mts +28 -0
  26. package/dist/components/button-group.mjs +38 -0
  27. package/dist/components/button.d.mts +21 -0
  28. package/dist/components/button.mjs +47 -0
  29. package/dist/components/calendar.d.mts +30 -0
  30. package/dist/components/calendar.mjs +109 -0
  31. package/dist/components/card.d.mts +37 -0
  32. package/dist/components/card.mjs +56 -0
  33. package/dist/components/carousel.d.mts +56 -0
  34. package/dist/components/carousel.mjs +132 -0
  35. package/dist/components/chart.d.mts +78 -0
  36. package/dist/components/chart.mjs +146 -0
  37. package/dist/components/checkbox.d.mts +11 -0
  38. package/dist/components/checkbox.mjs +21 -0
  39. package/dist/components/collapsible.d.mts +15 -0
  40. package/dist/components/collapsible.mjs +24 -0
  41. package/dist/components/combobox.d.mts +81 -0
  42. package/dist/components/combobox.mjs +163 -0
  43. package/dist/components/command.d.mts +54 -0
  44. package/dist/components/command.mjs +88 -0
  45. package/dist/components/context-menu.d.mts +85 -0
  46. package/dist/components/context-menu.mjs +125 -0
  47. package/dist/components/dialog.d.mts +51 -0
  48. package/dist/components/dialog.mjs +96 -0
  49. package/dist/components/direction.d.mts +15 -0
  50. package/dist/components/direction.mjs +14 -0
  51. package/dist/components/drawer.d.mts +47 -0
  52. package/dist/components/drawer.mjs +79 -0
  53. package/dist/components/dropdown-menu.d.mts +87 -0
  54. package/dist/components/dropdown-menu.mjs +131 -0
  55. package/dist/components/empty.d.mts +35 -0
  56. package/dist/components/empty.mjs +59 -0
  57. package/dist/components/field.d.mts +64 -0
  58. package/dist/components/field.mjs +110 -0
  59. package/dist/components/hover-card.d.mts +22 -0
  60. package/dist/components/hover-card.mjs +33 -0
  61. package/dist/components/input-group.d.mts +43 -0
  62. package/dist/components/input-group.mjs +79 -0
  63. package/dist/components/input-otp.d.mts +28 -0
  64. package/dist/components/input-otp.mjs +47 -0
  65. package/dist/components/input.d.mts +11 -0
  66. package/dist/components/input.mjs +14 -0
  67. package/dist/components/item.d.mts +62 -0
  68. package/dist/components/item.mjs +117 -0
  69. package/dist/components/kbd.d.mts +13 -0
  70. package/dist/components/kbd.mjs +19 -0
  71. package/dist/components/label.d.mts +11 -0
  72. package/dist/components/label.mjs +15 -0
  73. package/dist/components/menubar.d.mts +90 -0
  74. package/dist/components/menubar.mjs +135 -0
  75. package/dist/components/native-select.d.mts +21 -0
  76. package/dist/components/native-select.mjs +37 -0
  77. package/dist/components/navigation-menu.d.mts +46 -0
  78. package/dist/components/navigation-menu.mjs +80 -0
  79. package/dist/components/pagination.d.mts +45 -0
  80. package/dist/components/pagination.mjs +80 -0
  81. package/dist/components/popover.d.mts +34 -0
  82. package/dist/components/popover.mjs +56 -0
  83. package/dist/components/progress.d.mts +12 -0
  84. package/dist/components/progress.mjs +20 -0
  85. package/dist/components/radio-group.d.mts +15 -0
  86. package/dist/components/radio-group.mjs +27 -0
  87. package/dist/components/resizable.d.mts +20 -0
  88. package/dist/components/resizable.mjs +28 -0
  89. package/dist/components/scroll-area.d.mts +17 -0
  90. package/dist/components/scroll-area.mjs +37 -0
  91. package/dist/components/select.d.mts +53 -0
  92. package/dist/components/select.mjs +100 -0
  93. package/dist/components/separator.d.mts +13 -0
  94. package/dist/components/separator.mjs +17 -0
  95. package/dist/components/sheet.d.mts +42 -0
  96. package/dist/components/sheet.mjs +90 -0
  97. package/dist/components/sidebar.d.mts +167 -0
  98. package/dist/components/sidebar.mjs +374 -0
  99. package/dist/components/skeleton.d.mts +9 -0
  100. package/dist/components/skeleton.mjs +12 -0
  101. package/dist/components/slider.d.mts +15 -0
  102. package/dist/components/slider.mjs +36 -0
  103. package/dist/components/sonner.d.mts +9 -0
  104. package/dist/components/sonner.mjs +30 -0
  105. package/dist/components/spinner.d.mts +9 -0
  106. package/dist/components/spinner.mjs +14 -0
  107. package/dist/components/switch.d.mts +14 -0
  108. package/dist/components/switch.mjs +20 -0
  109. package/dist/components/table.d.mts +38 -0
  110. package/dist/components/table.mjs +67 -0
  111. package/dist/components/tabs.d.mts +30 -0
  112. package/dist/components/tabs.mjs +46 -0
  113. package/dist/components/textarea.d.mts +10 -0
  114. package/dist/components/textarea.mjs +13 -0
  115. package/dist/components/toggle-group.d.mts +28 -0
  116. package/dist/components/toggle-group.mjs +51 -0
  117. package/dist/components/toggle.d.mts +19 -0
  118. package/dist/components/toggle.mjs +37 -0
  119. package/dist/components/tooltip.d.mts +23 -0
  120. package/dist/components/tooltip.mjs +36 -0
  121. package/dist/exports/components.d.mts +61 -0
  122. package/dist/exports/components.mjs +61 -0
  123. package/dist/exports/hooks.d.mts +2 -0
  124. package/dist/exports/hooks.mjs +2 -0
  125. package/dist/exports/lib.d.mts +2 -0
  126. package/dist/exports/lib.mjs +2 -0
  127. package/dist/hooks/use-mobile.d.mts +4 -0
  128. package/dist/hooks/use-mobile.mjs +18 -0
  129. 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 };