veryfront 0.1.647 → 0.1.649
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/esm/deno.js +1 -1
- package/esm/src/react/components/chat/chat/components/tool-ui.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/components/tool-ui.js +11 -7
- package/esm/src/react/components/chat/chat/composition/chat-composer.js +4 -4
- package/esm/src/react/components/chat/markdown.d.ts.map +1 -1
- package/esm/src/react/components/chat/markdown.js +6 -5
- package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/framework-candidates.generated.js +58 -3
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/package.json +1 -1
package/esm/deno.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-ui.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/tool-ui.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,kCAAkC,CAAC;AAU1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AA4B7F,gCAAgC;AAChC,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAS/E;
|
|
1
|
+
{"version":3,"file":"tool-ui.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/tool-ui.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,kCAAkC,CAAC;AAU1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AA4B7F,gCAAgC;AAChC,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAS/E;AAkFD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,GACL,EAAE;IACD,IAAI,EAAE,YAAY,GAAG,mBAAmB,CAAC;CAC1C,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAiEpB"}
|
|
@@ -72,13 +72,19 @@ function renderOutputAsTable(output) {
|
|
|
72
72
|
return (React.createElement("tr", { key: i, className: "border-b border-[var(--border)]" }, keys.map((key) => (React.createElement("td", { key: key, className: "px-4 py-2 text-[var(--card-foreground)]" }, String(record?.[key] ?? ""))))));
|
|
73
73
|
})))));
|
|
74
74
|
}
|
|
75
|
+
function hasVisibleToolOutput(output) {
|
|
76
|
+
return output !== undefined && output !== null;
|
|
77
|
+
}
|
|
75
78
|
/**
|
|
76
79
|
* Tool call card component - renders tool invocations with parameters and results
|
|
77
80
|
* Styled to match AI Elements (https://ai-sdk.dev/elements)
|
|
78
81
|
*/
|
|
79
82
|
export function ToolCallCard({ tool, }) {
|
|
80
|
-
const
|
|
81
|
-
const
|
|
83
|
+
const hasOutput = hasVisibleToolOutput(tool.output);
|
|
84
|
+
const hasError = Boolean(tool.errorText);
|
|
85
|
+
const shouldExpandByDefault = tool.state !== "output-available" || hasOutput || hasError;
|
|
86
|
+
const [isExpanded, setIsExpanded] = React.useState(shouldExpandByDefault);
|
|
87
|
+
const tableOutput = hasOutput ? renderOutputAsTable(tool.output) : null;
|
|
82
88
|
return (React.createElement("div", { className: "not-prose w-full rounded-xl border border-[var(--border)] bg-[var(--card)]" },
|
|
83
89
|
React.createElement("button", { type: "button", onClick: () => setIsExpanded((v) => !v), className: "group flex w-full items-center justify-between gap-4 p-3 hover:bg-[var(--accent)] transition-all rounded-t-xl" },
|
|
84
90
|
React.createElement("div", { className: "flex items-center gap-2" },
|
|
@@ -90,11 +96,9 @@ export function ToolCallCard({ tool, }) {
|
|
|
90
96
|
tool.input === undefined ? null : (React.createElement("div", { className: "space-y-2 overflow-hidden p-4" },
|
|
91
97
|
React.createElement("h4", { className: "font-medium text-[var(--muted-foreground)] text-xs uppercase tracking-wide" }, "Parameters"),
|
|
92
98
|
React.createElement("div", { className: "rounded-lg bg-[var(--accent)] p-3" }, formatJsonWithHighlight(tool.input)))),
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
React.createElement("h4", { className: "font-medium text-[var(--muted-foreground)] text-xs uppercase tracking-wide" }, "Result"),
|
|
97
|
-
React.createElement("div", { className: "overflow-x-auto rounded-lg bg-[var(--accent)] text-[var(--foreground)]" }, tableOutput ?? React.createElement("div", { className: "p-3" }, formatJsonWithHighlight(tool.output))))),
|
|
99
|
+
!hasOutput ? null : (React.createElement("div", { className: "space-y-2 p-4 border-t border-[var(--border)]" },
|
|
100
|
+
React.createElement("h4", { className: "font-medium text-[var(--muted-foreground)] text-xs uppercase tracking-wide" }, "Result"),
|
|
101
|
+
React.createElement("div", { className: "overflow-x-auto rounded-lg bg-[var(--accent)] text-[var(--foreground)]" }, tableOutput ?? React.createElement("div", { className: "p-3" }, formatJsonWithHighlight(tool.output))))),
|
|
98
102
|
!tool.errorText ? null : (React.createElement("div", { className: "space-y-2 p-4 border-t border-[var(--border)]" },
|
|
99
103
|
React.createElement("h4", { className: "font-medium text-[var(--destructive)] text-xs uppercase tracking-wide" }, "Error"),
|
|
100
104
|
React.createElement("div", { className: "rounded-lg bg-[var(--destructive)]/10 text-[var(--destructive)] p-3 text-sm" }, tool.errorText)))))));
|
|
@@ -15,14 +15,14 @@ export const ChatComposer = React.forwardRef(function ChatComposer({ input, onCh
|
|
|
15
15
|
const fileInputRef = React.useRef(null);
|
|
16
16
|
const [attachmentMenuOpen, setAttachmentMenuOpen] = React.useState(false);
|
|
17
17
|
return (React.createElement("div", { ref: ref, className: cn("flex-shrink-0 pb-6 pt-2", className) },
|
|
18
|
-
React.createElement("div", { className: "
|
|
18
|
+
React.createElement("div", { className: "mx-auto w-full max-w-3xl px-4" },
|
|
19
19
|
children && (React.createElement("div", { className: "flex flex-wrap items-center gap-1.5 pb-3" }, children)),
|
|
20
20
|
attachments && attachments.length > 0 && (React.createElement("div", { className: "flex flex-wrap gap-1.5 px-2 pb-2" }, attachments.map((file) => (React.createElement(AttachmentPill, { key: file.id, attachment: file, onRemove: onRemoveAttachment }))))),
|
|
21
21
|
React.createElement("form", { onSubmit: (e) => {
|
|
22
22
|
e.preventDefault();
|
|
23
23
|
onSubmit?.(e);
|
|
24
24
|
} },
|
|
25
|
-
React.createElement("div", { className: "relative bg-[var(--card)] px-3 py-1.5 shadow-sm transition-
|
|
25
|
+
React.createElement("div", { className: "relative rounded-full border border-[var(--input-border)] bg-[var(--card)] px-3 py-1.5 shadow-sm transition-[border-color,box-shadow] focus-within:border-[var(--foreground)] focus-within:shadow-md" },
|
|
26
26
|
React.createElement("div", { className: "flex min-h-[42px] items-end gap-2" },
|
|
27
27
|
(onAttach || onSelectAttachment) && (React.createElement("div", { className: "relative flex shrink-0 items-center" },
|
|
28
28
|
onAttach && (React.createElement("input", { ref: fileInputRef, type: "file", accept: attachAccept, multiple: true, "aria-label": "Upload file", onChange: (e) => {
|
|
@@ -57,7 +57,7 @@ export const ChatComposer = React.forwardRef(function ChatComposer({ input, onCh
|
|
|
57
57
|
setAttachmentMenuOpen(false);
|
|
58
58
|
onSelectAttachment();
|
|
59
59
|
} }, "Select document")))))),
|
|
60
|
-
React.createElement(InputBox, { value: isListening ? transcript || input : input, onChange: onChange, onSubmit: () => onSubmit?.(), placeholder: isListening ? "Listening..." : placeholder, disabled: isLoading || isListening, multiline: true, className: cn("min-h-9 flex-1 py-2", theme?.input) }),
|
|
60
|
+
React.createElement(InputBox, { value: isListening ? transcript || input : input, onChange: onChange, onSubmit: () => onSubmit?.(), placeholder: isListening ? "Listening..." : placeholder, disabled: isLoading || isListening, multiline: true, className: cn("min-h-9 min-w-0 flex-1 py-2 text-[15px] leading-normal text-[var(--foreground)] placeholder:text-[var(--input-placeholder)]", theme?.input) }),
|
|
61
61
|
React.createElement("div", { className: "flex items-center gap-2" },
|
|
62
62
|
models && models.length > 0 && onModelChange && (React.createElement(ModelSelector, { models: models, value: model, onChange: onModelChange, disabled: isLoading })),
|
|
63
63
|
showExport && messages && messages.length > 0 && (React.createElement("button", { type: "button", onClick: () => downloadMarkdown(messages), className: "size-9 flex items-center justify-center rounded-full text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--foreground)]/5 transition-colors shrink-0", "aria-label": "Export conversation", title: "Export as Markdown" },
|
|
@@ -65,6 +65,6 @@ export const ChatComposer = React.forwardRef(function ChatComposer({ input, onCh
|
|
|
65
65
|
React.createElement("path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }),
|
|
66
66
|
React.createElement("polyline", { points: "7 10 12 15 17 10" }),
|
|
67
67
|
React.createElement("line", { x1: "12", y1: "15", x2: "12", y2: "3" })))),
|
|
68
|
-
React.createElement(SubmitButton, { isLoading: isLoading || isListening, hasInput: !!input.trim(), onStop: isListening ? undefined : stop, onVoice: onVoice, disabled: !input.trim(), className: theme?.button }))))))));
|
|
68
|
+
React.createElement(SubmitButton, { isLoading: isLoading || isListening, hasInput: !!input.trim(), onStop: isListening ? undefined : stop, onVoice: onVoice, disabled: !input.trim(), className: cn("size-9 shrink-0 rounded-full bg-[var(--foreground)] text-[var(--background)] transition-[background-color,color,box-shadow] hover:bg-[var(--card)] hover:text-[var(--foreground)] hover:shadow-[inset_0_0_0_1px_var(--foreground)] disabled:opacity-100", theme?.button) }))))))));
|
|
69
69
|
});
|
|
70
70
|
ChatComposer.displayName = "ChatComposer";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/chat/markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AAMpD,kCAAkC;AAClC,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iCAAiC;IACjC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,KAAK,CAAC,SAAS,CAAC;CAC9D;AAED,oCAAoC;AACpC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/chat/markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AAMpD,kCAAkC;AAClC,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iCAAiC;IACjC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,KAAK,CAAC,SAAS,CAAC;CAC9D;AAED,oCAAoC;AACpC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAiMD,uBAAuB;AACvB,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,aAAoB,EACpB,eAAe,GAChB,EAAE,aAAa,GAAG,KAAK,CAAC,YAAY,CA2FpC"}
|
|
@@ -7,6 +7,7 @@ const ESM_REACT_MARKDOWN = "https://esm.sh/react-markdown@9.0.3?target=es2022&pi
|
|
|
7
7
|
const ESM_REMARK_GFM = "https://esm.sh/remark-gfm@4.0.1?target=es2022&pin=v135";
|
|
8
8
|
const ESM_REHYPE_HIGHLIGHT = "https://esm.sh/rehype-highlight@7.0.2?target=es2022&pin=v135";
|
|
9
9
|
const ESM_MERMAID = "https://esm.sh/mermaid@11.4.1?pin=v135";
|
|
10
|
+
const MARKDOWN_CONTAINER_CLASS = "prose prose-sm max-w-none min-w-0 overflow-hidden break-words [overflow-wrap:anywhere] [&_*]:max-w-full";
|
|
10
11
|
async function importFromUrl(url) {
|
|
11
12
|
return await import(/* @vite-ignore */ url);
|
|
12
13
|
}
|
|
@@ -88,7 +89,7 @@ function CodeBlock({ language, code, inline, enableMermaid, renderCodeBlock, })
|
|
|
88
89
|
return React.createElement(RichCodeBlock, { language: language, code: code });
|
|
89
90
|
}
|
|
90
91
|
function FallbackMarkdown({ children, className, }) {
|
|
91
|
-
return (React.createElement("div", { className: cn(
|
|
92
|
+
return (React.createElement("div", { className: cn(MARKDOWN_CONTAINER_CLASS, className) },
|
|
92
93
|
React.createElement("p", { className: "whitespace-pre-wrap" }, children)));
|
|
93
94
|
}
|
|
94
95
|
/** Render markdown. */
|
|
@@ -119,7 +120,7 @@ export function Markdown({ children, className, enableMermaid = true, renderCode
|
|
|
119
120
|
if (!isLoaded || !ReactMarkdown) {
|
|
120
121
|
return React.createElement(FallbackMarkdown, { className: className }, children);
|
|
121
122
|
}
|
|
122
|
-
return (React.createElement("div", { className: cn(
|
|
123
|
+
return (React.createElement("div", { className: cn(MARKDOWN_CONTAINER_CLASS, className) },
|
|
123
124
|
React.createElement(ReactMarkdown, { remarkPlugins: remarkGfm ? [remarkGfm] : [], rehypePlugins: rehypeHighlight ? [rehypeHighlight] : [], components: {
|
|
124
125
|
code(props) {
|
|
125
126
|
const { className: codeClassName, children: codeChildren, node } = props;
|
|
@@ -130,11 +131,11 @@ export function Markdown({ children, className, enableMermaid = true, renderCode
|
|
|
130
131
|
return (React.createElement(CodeBlock, { language: language, code: code, inline: isInline, enableMermaid: enableMermaid, renderCodeBlock: renderCodeBlock }));
|
|
131
132
|
},
|
|
132
133
|
table(props) {
|
|
133
|
-
return (React.createElement("div", { className: "my-4 overflow-auto" },
|
|
134
|
-
React.createElement("table", { className: "
|
|
134
|
+
return (React.createElement("div", { className: "my-4 max-w-full overflow-x-auto rounded-md border border-[var(--border)]" },
|
|
135
|
+
React.createElement("table", { className: "w-full divide-y divide-[var(--border)]" }, props.children)));
|
|
135
136
|
},
|
|
136
137
|
a(props) {
|
|
137
|
-
return (React.createElement("a", { href: props.href, className: "text-blue-600 hover:underline", target: "_blank", rel: "noopener noreferrer" }, props.children));
|
|
138
|
+
return (React.createElement("a", { href: props.href, className: "break-words text-blue-600 hover:underline [overflow-wrap:anywhere]", target: "_blank", rel: "noopener noreferrer" }, props.children));
|
|
138
139
|
},
|
|
139
140
|
blockquote(props) {
|
|
140
141
|
return (React.createElement("blockquote", { className: "border-l-4 border-[var(--border)] pl-4 my-4 text-[var(--card-foreground)] italic" }, props.children));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framework-candidates.generated.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/dev/framework-candidates.generated.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"framework-candidates.generated.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/dev/framework-candidates.generated.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EA8mLjD,CAAC"}
|
|
@@ -27,6 +27,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
27
27
|
"!gap-0",
|
|
28
28
|
"!hasError",
|
|
29
29
|
"!hasInput",
|
|
30
|
+
"!hasOutput",
|
|
30
31
|
"!hideTabSwitcher",
|
|
31
32
|
"!isActive",
|
|
32
33
|
"!isBrowserEnvironment())",
|
|
@@ -635,6 +636,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
635
636
|
"Blob([md],",
|
|
636
637
|
"BlockRendererProps",
|
|
637
638
|
"BlockRendererProps)",
|
|
639
|
+
"Boolean(tool.errorText);",
|
|
638
640
|
"Boundary",
|
|
639
641
|
"BrainIcon",
|
|
640
642
|
"BrainIcon({",
|
|
@@ -1059,6 +1061,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1059
1061
|
"HTML",
|
|
1060
1062
|
"HTMLButtonElement,",
|
|
1061
1063
|
"HTMLDivElement,",
|
|
1064
|
+
"HTMLElement).className.includes(",
|
|
1062
1065
|
"HTMLElement).style.minWidth,",
|
|
1063
1066
|
"HTMLElement:",
|
|
1064
1067
|
"HTMLInputElement",
|
|
@@ -1072,6 +1075,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1072
1075
|
"Head-managed",
|
|
1073
1076
|
"Head.tsx",
|
|
1074
1077
|
"Head>",
|
|
1078
|
+
"Hej",
|
|
1075
1079
|
"Hello",
|
|
1076
1080
|
"Helpful",
|
|
1077
1081
|
"Hide",
|
|
@@ -1171,6 +1175,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1171
1175
|
"M7",
|
|
1172
1176
|
"M8",
|
|
1173
1177
|
"M9",
|
|
1178
|
+
"MARKDOWN_CONTAINER_CLASS",
|
|
1174
1179
|
"MB",
|
|
1175
1180
|
"MCP,",
|
|
1176
1181
|
"MESSAGE_SQUARE_ICON_ELEMENTS);",
|
|
@@ -1179,6 +1184,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1179
1184
|
"Markdown",
|
|
1180
1185
|
"Markdown({",
|
|
1181
1186
|
"Markdown>",
|
|
1187
|
+
"Markdown>,",
|
|
1182
1188
|
"MarkdownPlugin",
|
|
1183
1189
|
"MarkdownPlugin[];",
|
|
1184
1190
|
"MarkdownProps",
|
|
@@ -1507,6 +1513,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1507
1513
|
"React.useState(-1);",
|
|
1508
1514
|
"React.useState(false);",
|
|
1509
1515
|
"React.useState(initialContent);",
|
|
1516
|
+
"React.useState(shouldExpandByDefault);",
|
|
1510
1517
|
"React.useState(thread.title);",
|
|
1511
1518
|
"React.useState(true);",
|
|
1512
1519
|
"React.useState<ChatTab>(",
|
|
@@ -1683,6 +1690,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1683
1690
|
"Svg,",
|
|
1684
1691
|
"SvgProps",
|
|
1685
1692
|
"SvgProps):",
|
|
1693
|
+
"Swedish",
|
|
1686
1694
|
"Switch",
|
|
1687
1695
|
"Sync",
|
|
1688
1696
|
"System",
|
|
@@ -1869,6 +1877,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1869
1877
|
"Yesterday",
|
|
1870
1878
|
"[",
|
|
1871
1879
|
"[${i",
|
|
1880
|
+
"[&_*]:max-w-full",
|
|
1872
1881
|
"[&_.hljs]:bg-transparent",
|
|
1873
1882
|
"[&_.hljs]:p-0",
|
|
1874
1883
|
"[&_svg]:shrink-0",
|
|
@@ -1937,6 +1946,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1937
1946
|
"[onVoice,",
|
|
1938
1947
|
"[open,",
|
|
1939
1948
|
"[open]);",
|
|
1949
|
+
"[overflow-wrap:anywhere]",
|
|
1940
1950
|
"[persistThreads]);",
|
|
1941
1951
|
"[persistThreads],",
|
|
1942
1952
|
"[pos,",
|
|
@@ -1989,6 +1999,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
1989
1999
|
"actions?:",
|
|
1990
2000
|
"active",
|
|
1991
2001
|
"active:",
|
|
2002
|
+
"active:scale",
|
|
1992
2003
|
"active:scale-95",
|
|
1993
2004
|
"active:scale-[0.98]",
|
|
1994
2005
|
"active?:",
|
|
@@ -2076,9 +2087,11 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2076
2087
|
"as",
|
|
2077
2088
|
"asking",
|
|
2078
2089
|
"assert(",
|
|
2090
|
+
"assert((composer",
|
|
2079
2091
|
"assert(attachButton,",
|
|
2080
2092
|
"assert(button,",
|
|
2081
2093
|
"assert(button.includes(",
|
|
2094
|
+
"assert(composer,",
|
|
2082
2095
|
"assert(menu,",
|
|
2083
2096
|
"assert(reactProps.onKeyDown,",
|
|
2084
2097
|
"assert(reactPropsKey,",
|
|
@@ -2087,6 +2100,8 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2087
2100
|
"assert(script,",
|
|
2088
2101
|
"assert(selectAction,",
|
|
2089
2102
|
"assert(style,",
|
|
2103
|
+
"assert(submitButton,",
|
|
2104
|
+
"assert(submitButton.className.includes(",
|
|
2090
2105
|
"assert(textarea,",
|
|
2091
2106
|
"assert(theme.messageVariants({",
|
|
2092
2107
|
"assert(uploadAction,",
|
|
@@ -2099,6 +2114,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2099
2114
|
"assertEquals(getTextContent(message),",
|
|
2100
2115
|
"assertEquals(groupPartsInOrder([]).length,",
|
|
2101
2116
|
"assertEquals(groups.length,",
|
|
2117
|
+
"assertEquals(html.includes(",
|
|
2102
2118
|
"assertEquals(isReasoningPart(part),",
|
|
2103
2119
|
"assertEquals(isToolPart(part),",
|
|
2104
2120
|
"assertEquals(nonce,",
|
|
@@ -2106,6 +2122,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2106
2122
|
"assertEquals(removedExport",
|
|
2107
2123
|
"assertEquals(second.type,",
|
|
2108
2124
|
"assertEquals(selectCalls,",
|
|
2125
|
+
"assertEquals(submitButton.className.includes(",
|
|
2109
2126
|
"assertEquals(submitCalls,",
|
|
2110
2127
|
"assertEquals(theme.messageVariants({",
|
|
2111
2128
|
"assertEquals(third.type,",
|
|
@@ -2114,6 +2131,8 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2114
2131
|
"assertExists(first);",
|
|
2115
2132
|
"assertExists(second);",
|
|
2116
2133
|
"assertExists(third);",
|
|
2134
|
+
"assertStringIncludes",
|
|
2135
|
+
"assertStringIncludes(html,",
|
|
2117
2136
|
"assistant",
|
|
2118
2137
|
"assistant:",
|
|
2119
2138
|
"assistant?:",
|
|
@@ -2261,7 +2280,6 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2261
2280
|
"border-t",
|
|
2262
2281
|
"border-t-transparent",
|
|
2263
2282
|
"border:",
|
|
2264
|
-
"borderRadius:",
|
|
2265
2283
|
"both",
|
|
2266
2284
|
"bottom-11",
|
|
2267
2285
|
"bottom-4",
|
|
@@ -2281,6 +2299,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2281
2299
|
"branches.total",
|
|
2282
2300
|
"branching,",
|
|
2283
2301
|
"brand",
|
|
2302
|
+
"break-words",
|
|
2284
2303
|
"break;",
|
|
2285
2304
|
"browser",
|
|
2286
2305
|
"browserStatus",
|
|
@@ -2306,6 +2325,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2306
2325
|
"buttonRef",
|
|
2307
2326
|
"buttonRef.current;",
|
|
2308
2327
|
"button[aria-label=",
|
|
2328
|
+
"button[data-submit-button=",
|
|
2309
2329
|
"buttons,",
|
|
2310
2330
|
"button{cursor:pointer;}",
|
|
2311
2331
|
"by",
|
|
@@ -2419,6 +2439,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2419
2439
|
"className={className}",
|
|
2420
2440
|
"className={className}>{children}</FallbackMarkdown>;",
|
|
2421
2441
|
"className={cn(",
|
|
2442
|
+
"className={cn(MARKDOWN_CONTAINER_CLASS,",
|
|
2422
2443
|
"className={cn(chat?.theme.message?.assistant,",
|
|
2423
2444
|
"className={cn(chat?.theme.message?.user,",
|
|
2424
2445
|
"className={cn(containerClassName,",
|
|
@@ -2433,7 +2454,6 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2433
2454
|
"className={theme.thinking}>",
|
|
2434
2455
|
"className={theme.toolResult}",
|
|
2435
2456
|
"className={theme.tool}",
|
|
2436
|
-
"className={theme?.button}",
|
|
2437
2457
|
"className={theme?.message?.user}>",
|
|
2438
2458
|
"className?:",
|
|
2439
2459
|
"classes.push(options.class,",
|
|
@@ -2484,6 +2504,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2484
2504
|
"color-scheme:",
|
|
2485
2505
|
"colorClass",
|
|
2486
2506
|
"colorClass,",
|
|
2507
|
+
"column",
|
|
2487
2508
|
"combine",
|
|
2488
2509
|
"commitRename():",
|
|
2489
2510
|
"commitRename();",
|
|
@@ -2786,6 +2807,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
2786
2807
|
"document.querySelector(",
|
|
2787
2808
|
"document.querySelector('[data-hydrated=",
|
|
2788
2809
|
"document.querySelector('[role=",
|
|
2810
|
+
"document.querySelector<HTMLButtonElement>(",
|
|
2789
2811
|
"document.querySelector<HTMLElement>(",
|
|
2790
2812
|
"document.removeEventListener(",
|
|
2791
2813
|
"document:",
|
|
@@ -3041,6 +3063,9 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3041
3063
|
"focus-visible:ring-2",
|
|
3042
3064
|
"focus-visible:ring-[var(--ring)]",
|
|
3043
3065
|
"focus-visible:ring-offset-2",
|
|
3066
|
+
"focus-within:border",
|
|
3067
|
+
"focus-within:border-[var(--foreground)]",
|
|
3068
|
+
"focus-within:shadow-md",
|
|
3044
3069
|
"focus:outline-none",
|
|
3045
3070
|
"focus:ring-0",
|
|
3046
3071
|
"focused",
|
|
@@ -3239,15 +3264,20 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3239
3264
|
"handles",
|
|
3240
3265
|
"has",
|
|
3241
3266
|
"hasBranches",
|
|
3267
|
+
"hasError",
|
|
3242
3268
|
"hasError,",
|
|
3243
3269
|
"hasError:",
|
|
3270
|
+
"hasError;",
|
|
3244
3271
|
"hasGroups",
|
|
3245
3272
|
"hasInput,",
|
|
3246
3273
|
"hasInput={!!input.trim()}",
|
|
3247
3274
|
"hasInput?:",
|
|
3248
3275
|
"hasMessages",
|
|
3276
|
+
"hasOutput",
|
|
3249
3277
|
"hasThreads",
|
|
3250
3278
|
"hasToolCalls",
|
|
3279
|
+
"hasVisibleToolOutput(output:",
|
|
3280
|
+
"hasVisibleToolOutput(tool.output);",
|
|
3251
3281
|
"head>",
|
|
3252
3282
|
"height:",
|
|
3253
3283
|
"height=",
|
|
@@ -3282,6 +3312,8 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3282
3312
|
"hover:border-[var(--input-border)]",
|
|
3283
3313
|
"hover:opacity-80",
|
|
3284
3314
|
"hover:opacity-90",
|
|
3315
|
+
"hover:shadow",
|
|
3316
|
+
"hover:shadow-[inset_0_0_0_1px_var(--foreground)]",
|
|
3285
3317
|
"hover:text-[var(--destructive)]",
|
|
3286
3318
|
"hover:text-[var(--foreground)]",
|
|
3287
3319
|
"hover:text-emerald-500",
|
|
@@ -3600,6 +3632,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3600
3632
|
"lines.push(toolSummaries.join(",
|
|
3601
3633
|
"lines:",
|
|
3602
3634
|
"link[nonce]",
|
|
3635
|
+
"links",
|
|
3603
3636
|
"list",
|
|
3604
3637
|
"list.",
|
|
3605
3638
|
"listbox",
|
|
@@ -3639,6 +3672,8 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3639
3672
|
"log",
|
|
3640
3673
|
"logomark",
|
|
3641
3674
|
"logomarks",
|
|
3675
|
+
"long",
|
|
3676
|
+
"long-source-link-without-natural-break-points",
|
|
3642
3677
|
"loop",
|
|
3643
3678
|
"loop.",
|
|
3644
3679
|
"lower",
|
|
@@ -3679,9 +3714,11 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3679
3714
|
"max-sm:shadow-xl",
|
|
3680
3715
|
"max-sm:z-20",
|
|
3681
3716
|
"max-w-2xl",
|
|
3717
|
+
"max-w-3xl",
|
|
3682
3718
|
"max-w-[120px]",
|
|
3683
3719
|
"max-w-[160px]",
|
|
3684
3720
|
"max-w-[80%]",
|
|
3721
|
+
"max-w-full",
|
|
3685
3722
|
"max-w-md",
|
|
3686
3723
|
"max-w-none",
|
|
3687
3724
|
"max-w-sm",
|
|
@@ -3907,6 +3944,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
3907
3944
|
"node",
|
|
3908
3945
|
"node?:",
|
|
3909
3946
|
"non-renderable",
|
|
3947
|
+
"non-scaling",
|
|
3910
3948
|
"non-text",
|
|
3911
3949
|
"nonce",
|
|
3912
3950
|
"nonce-123",
|
|
@@ -4399,6 +4437,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
4399
4437
|
"primary:",
|
|
4400
4438
|
"primitives/index.ts",
|
|
4401
4439
|
"process</span>;",
|
|
4440
|
+
"prompt",
|
|
4402
4441
|
"prompt?:",
|
|
4403
4442
|
"prop)",
|
|
4404
4443
|
"properties",
|
|
@@ -4439,6 +4478,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
4439
4478
|
"py-4",
|
|
4440
4479
|
"py-5",
|
|
4441
4480
|
"py-6",
|
|
4481
|
+
"query:",
|
|
4442
4482
|
"questions",
|
|
4443
4483
|
"quick",
|
|
4444
4484
|
"quickActions",
|
|
@@ -4586,11 +4626,13 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
4586
4626
|
"renderOutput,",
|
|
4587
4627
|
"renderOutput?:",
|
|
4588
4628
|
"renderOutputAsTable(output:",
|
|
4589
|
-
"renderOutputAsTable(tool.output)
|
|
4629
|
+
"renderOutputAsTable(tool.output)",
|
|
4590
4630
|
"renderReasoning)",
|
|
4591
4631
|
"renderReasoning,",
|
|
4592
4632
|
"renderReasoning?:",
|
|
4593
4633
|
"renderToString",
|
|
4634
|
+
"renderToString(",
|
|
4635
|
+
"renderToString(<ToolCallCard",
|
|
4594
4636
|
"renderToString(element);",
|
|
4595
4637
|
"renderTool",
|
|
4596
4638
|
"renderTool(group.tool)",
|
|
@@ -4618,6 +4660,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
4618
4660
|
"requestAnimationFrame:",
|
|
4619
4661
|
"reset",
|
|
4620
4662
|
"reset:",
|
|
4663
|
+
"residency",
|
|
4621
4664
|
"resize",
|
|
4622
4665
|
"resize();",
|
|
4623
4666
|
"resize-none",
|
|
@@ -4853,9 +4896,11 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
4853
4896
|
"shadow-xl",
|
|
4854
4897
|
"shape",
|
|
4855
4898
|
"shared",
|
|
4899
|
+
"shell",
|
|
4856
4900
|
"shiftKey:",
|
|
4857
4901
|
"shiftKey?:",
|
|
4858
4902
|
"shimmer.",
|
|
4903
|
+
"shouldExpandByDefault",
|
|
4859
4904
|
"shouldRender",
|
|
4860
4905
|
"shouldShowSources",
|
|
4861
4906
|
"show",
|
|
@@ -5076,6 +5121,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5076
5121
|
"submit",
|
|
5077
5122
|
"submit.",
|
|
5078
5123
|
"submit?:",
|
|
5124
|
+
"submitButton",
|
|
5079
5125
|
"submitCalls",
|
|
5080
5126
|
"submits",
|
|
5081
5127
|
"suggestion,",
|
|
@@ -5146,6 +5192,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5146
5192
|
"take",
|
|
5147
5193
|
"target",
|
|
5148
5194
|
"target=",
|
|
5195
|
+
"tax",
|
|
5149
5196
|
"tbody>",
|
|
5150
5197
|
"tc1",
|
|
5151
5198
|
"td",
|
|
@@ -5241,6 +5288,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5241
5288
|
"theme:",
|
|
5242
5289
|
"theme={theme}",
|
|
5243
5290
|
"theme={userTheme}",
|
|
5291
|
+
"theme?.button,",
|
|
5244
5292
|
"theme?.input,",
|
|
5245
5293
|
"theme?:",
|
|
5246
5294
|
"themes",
|
|
@@ -5337,6 +5385,8 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5337
5385
|
"tool-primitives.tsx",
|
|
5338
5386
|
"tool-result",
|
|
5339
5387
|
"tool-search",
|
|
5388
|
+
"tool-ui.tsx",
|
|
5389
|
+
"tool-web-search",
|
|
5340
5390
|
"tool.",
|
|
5341
5391
|
"tool.error",
|
|
5342
5392
|
"tool.errorText}",
|
|
@@ -5350,6 +5400,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5350
5400
|
"tool.type",
|
|
5351
5401
|
"tool:",
|
|
5352
5402
|
"tool={group.tool}",
|
|
5403
|
+
"tool={tool}",
|
|
5353
5404
|
"tool?:",
|
|
5354
5405
|
"toolCall:",
|
|
5355
5406
|
"toolCallId",
|
|
@@ -5392,6 +5443,8 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5392
5443
|
"transcript?:",
|
|
5393
5444
|
"transform",
|
|
5394
5445
|
"transform:",
|
|
5446
|
+
"transition-[background-color,color,box-shadow]",
|
|
5447
|
+
"transition-[border-color,box-shadow]",
|
|
5395
5448
|
"transition-all",
|
|
5396
5449
|
"transition-colors",
|
|
5397
5450
|
"transition-transform",
|
|
@@ -5540,6 +5593,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5540
5593
|
"userToggledRef",
|
|
5541
5594
|
"userToggledRef.current",
|
|
5542
5595
|
"userToggledRef.current)",
|
|
5596
|
+
"uses",
|
|
5543
5597
|
"using",
|
|
5544
5598
|
"utility",
|
|
5545
5599
|
"utils",
|
|
@@ -5640,6 +5694,7 @@ export const FRAMEWORK_CANDIDATES = [
|
|
|
5640
5694
|
"waitFor(condition:",
|
|
5641
5695
|
"waiting",
|
|
5642
5696
|
"we",
|
|
5697
|
+
"web_search",
|
|
5643
5698
|
"when",
|
|
5644
5699
|
"which",
|
|
5645
5700
|
"while",
|