@actioneer/ads 0.5.9 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ai-elements/agent-trace.d.ts +2 -2
- package/components/ai-elements/agent-trace.js +163 -104
- package/components/ai-elements/chain-of-thought.d.ts +2 -2
- package/components/ai-elements/chain-of-thought.js +1 -1
- package/components/ai-elements/index.d.ts +0 -5
- package/components/ai-elements/inline-citation.js +1 -1
- package/components/alert.d.ts +6 -6
- package/components/alert.js +89 -53
- package/components/answer-sources.d.ts +2 -6
- package/components/answer-sources.js +58 -60
- package/components/answer.d.ts +5 -0
- package/components/answer.js +311 -271
- package/components/assistant-ui/composer-harness.js +11 -14
- package/components/assistant-ui/composer.d.ts +3 -1
- package/components/assistant-ui/composer.js +148 -144
- package/components/assistant-ui/index.d.ts +0 -3
- package/components/assistant-ui/thread-context.d.ts +3 -1
- package/components/assistant-ui/thread.js +50 -42
- package/components/avatar.js +42 -42
- package/components/badge.d.ts +5 -6
- package/components/badge.js +13 -76
- package/components/body-page-header.d.ts +15 -0
- package/components/body-page-header.js +24 -0
- package/components/brand-loader.d.ts +0 -3
- package/components/brand-loader.js +10 -32
- package/components/breadcrumbs.d.ts +1 -8
- package/components/breadcrumbs.js +65 -78
- package/components/button.d.ts +1 -1
- package/components/button.js +55 -49
- package/components/card.js +19 -18
- package/components/chart.js +526 -503
- package/components/chip.d.ts +13 -1
- package/components/chip.js +93 -80
- package/components/collection-header.d.ts +17 -0
- package/components/collection-header.js +31 -0
- package/components/connector-card.d.ts +6 -6
- package/components/connector-card.js +31 -32
- package/components/date-range-picker.d.ts +26 -0
- package/components/date-range-picker.js +223 -0
- package/components/drawer.d.ts +19 -3
- package/components/drawer.js +143 -116
- package/components/dropdown.d.ts +1 -2
- package/components/dropdown.js +88 -89
- package/components/field.js +39 -34
- package/components/file-dropzone.js +1 -1
- package/components/index.d.ts +5 -4
- package/components/index.js +501 -546
- package/components/infinite-canvas.js +24 -24
- package/components/input-field.d.ts +18 -3
- package/components/input-field.js +88 -72
- package/components/input.js +16 -15
- package/components/modal.d.ts +31 -3
- package/components/modal.js +243 -169
- package/components/number-field.js +45 -42
- package/components/page-body.d.ts +12 -0
- package/components/page-body.js +18 -0
- package/components/pagination.js +36 -36
- package/components/panel.js +31 -28
- package/components/select.d.ts +21 -0
- package/components/select.js +189 -148
- package/components/setting-row.d.ts +6 -5
- package/components/setting-row.js +33 -32
- package/components/sidebar.d.ts +2 -0
- package/components/sidebar.js +165 -155
- package/components/skeleton.js +8 -7
- package/components/slider.js +1 -1
- package/components/surface-loader.d.ts +11 -0
- package/components/surface-loader.js +35 -0
- package/components/table.d.ts +16 -10
- package/components/table.js +426 -410
- package/components/tabs.d.ts +2 -0
- package/components/tabs.js +159 -294
- package/components/textarea.js +9 -9
- package/components/toast.d.ts +1 -1
- package/components/toast.js +181 -118
- package/components/tree.d.ts +5 -1
- package/components/tree.js +96 -63
- package/components/typography.d.ts +4 -4
- package/components/typography.js +13 -13
- package/components/ui/button.d.ts +1 -1
- package/components/ui/dialog.js +33 -33
- package/components/viz-charts.js +186 -183
- package/demo/components/add-to-artifact.js +8 -10
- package/fonts.css +2 -0
- package/lib/cn.js +11 -4
- package/lib/icons.d.ts +4 -0
- package/lib/icons.js +107 -106
- package/lib/interactive.d.ts +1 -1
- package/llms.txt +115 -152
- package/manifest.json +13730 -1084
- package/package.json +4 -2
- package/styles.css +365 -225
- package/theme.css +315 -176
- package/components/agent-icon.d.ts +0 -76
- package/components/agent-icon.js +0 -265
- package/components/ai-elements/queue.d.ts +0 -60
- package/components/ai-elements/queue.js +0 -193
- package/components/ai-elements/speech-input.d.ts +0 -16
- package/components/ai-elements/speech-input.js +0 -151
- package/components/ai-elements/task-progress.d.ts +0 -41
- package/components/ai-elements/task-progress.js +0 -224
- package/components/ai-elements/task.d.ts +0 -39
- package/components/ai-elements/task.js +0 -105
- package/components/ai-elements/voice.d.ts +0 -90
- package/components/ai-elements/voice.js +0 -496
- package/components/assistant-ui/follow-up-suggestions.d.ts +0 -11
- package/components/assistant-ui/follow-up-suggestions.js +0 -72
- package/components/assistant-ui/suggestions.d.ts +0 -7
- package/components/assistant-ui/suggestions.js +0 -19
- package/components/assistant-ui/voice.d.ts +0 -18
- package/components/link.d.ts +0 -14
- package/components/link.js +0 -72
- package/components/navbar.d.ts +0 -15
- package/components/navbar.js +0 -68
- package/components/pixel-icon.d.ts +0 -37
- package/components/pixel-icon.js +0 -859
package/components/answer.js
CHANGED
|
@@ -1,38 +1,64 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsxs as n, jsx as t, Fragment as
|
|
3
|
-
import * as
|
|
4
|
-
import { cva as
|
|
2
|
+
import { jsxs as n, jsx as t, Fragment as E } from "react/jsx-runtime";
|
|
3
|
+
import * as p from "react";
|
|
4
|
+
import { cva as I } from "class-variance-authority";
|
|
5
5
|
import { z as e } from "zod/v4";
|
|
6
6
|
import { Alert as T, AlertTitle as O, AlertDescription as L } from "./alert.js";
|
|
7
7
|
import { Badge as w } from "./badge.js";
|
|
8
|
-
import { Button as
|
|
8
|
+
import { Button as H } from "./button.js";
|
|
9
|
+
import { Chip as we } from "./chip.js";
|
|
9
10
|
import { CodeBlock as R } from "./code-block.js";
|
|
10
|
-
import { Popover as
|
|
11
|
-
import { FollowUpQuestion as Ae } from "./assistant-ui/follow-up-suggestions.js";
|
|
11
|
+
import { Popover as ve, PopoverTrigger as ke, PopoverContent as Ae } from "./popover.js";
|
|
12
12
|
import { Source as je, SourceTitle as Se } from "./assistant-ui/sources.js";
|
|
13
13
|
import { AreaChart as Ce, BarChart as Re, LineChart as Te } from "./chart.js";
|
|
14
14
|
import { Progress as Oe } from "./progress.js";
|
|
15
|
-
import { Skeleton as
|
|
16
|
-
import { Table as Le, TableHeader as ze, TableRow as
|
|
17
|
-
import { Check as
|
|
15
|
+
import { Skeleton as b } from "./skeleton.js";
|
|
16
|
+
import { Table as Le, TableHeader as ze, TableRow as q, TableColumn as De, TableBody as qe, TableCell as V } from "./table.js";
|
|
17
|
+
import { AgentChat as Fe, ArrowUpRight as Ke, Check as D, Minus as Be, WarningCircle as Ee, Clock as We, Database as Pe } from "../lib/icons.js";
|
|
18
18
|
import { cn as g } from "../lib/cn.js";
|
|
19
|
-
const
|
|
19
|
+
const $e = "render_answer", Ve = "Render the final answer with one curated ADS template. Choose the semantic kind that best matches the answer — data kinds (fact, table, ranking, trend, comparison, breakdown, report), narrative kinds (explanation, knowledge, decision, status), task kinds (confirmation), and situation kinds (clarification, empty, error, refusal) — and provide only validated data; the application owns the layout.", Q = p.forwardRef(({ className: a, children: l, ...c }, d) => /* @__PURE__ */ n(
|
|
20
|
+
H,
|
|
21
|
+
{
|
|
22
|
+
ref: d,
|
|
23
|
+
size: "sm",
|
|
24
|
+
variant: "outline",
|
|
25
|
+
className: g(
|
|
26
|
+
"group/followup h-auto w-full justify-start whitespace-normal rounded-lg border-action-primary bg-action-primary-soft/40 px-3.5 py-2.5 text-left text-sm text-action-primary-text enabled:hover:border-action-primary enabled:hover:bg-action-primary-soft/70 enabled:hover:text-action-primary-text",
|
|
27
|
+
"motion-reduce:transition-none [&>span]:w-full [&>span]:gap-2.5",
|
|
28
|
+
a
|
|
29
|
+
),
|
|
30
|
+
...c,
|
|
31
|
+
children: [
|
|
32
|
+
/* @__PURE__ */ t(Fe, { "aria-hidden": !0, className: "size-4 shrink-0 text-tertiary" }),
|
|
33
|
+
/* @__PURE__ */ t("span", { className: "min-w-0 flex-1", children: l }),
|
|
34
|
+
/* @__PURE__ */ t(
|
|
35
|
+
Ke,
|
|
36
|
+
{
|
|
37
|
+
"aria-hidden": !0,
|
|
38
|
+
className: "size-4 shrink-0 text-tertiary transition-colors group-hover/followup:text-foreground motion-reduce:transition-none"
|
|
39
|
+
}
|
|
40
|
+
)
|
|
41
|
+
]
|
|
42
|
+
}
|
|
43
|
+
));
|
|
44
|
+
Q.displayName = "FollowUpQuestion";
|
|
45
|
+
const N = e.enum([
|
|
20
46
|
"default",
|
|
21
47
|
"primary",
|
|
22
48
|
"success",
|
|
23
49
|
"warning",
|
|
24
50
|
"danger",
|
|
25
51
|
"info"
|
|
26
|
-
]),
|
|
52
|
+
]), Me = e.object({
|
|
27
53
|
id: e.string().min(1),
|
|
28
54
|
label: e.string().min(1),
|
|
29
55
|
prompt: e.string().min(1).optional()
|
|
30
|
-
}),
|
|
56
|
+
}), _e = e.object({
|
|
31
57
|
id: e.string().min(1),
|
|
32
58
|
label: e.string().min(1),
|
|
33
59
|
description: e.string().optional(),
|
|
34
60
|
prompt: e.string().min(1).optional()
|
|
35
|
-
}),
|
|
61
|
+
}), Ie = e.object({
|
|
36
62
|
id: e.string().min(1),
|
|
37
63
|
label: e.string().min(1),
|
|
38
64
|
description: e.string().optional(),
|
|
@@ -51,7 +77,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
51
77
|
label: e.string().optional(),
|
|
52
78
|
text: e.string().min(1),
|
|
53
79
|
tone: N.optional()
|
|
54
|
-
}),
|
|
80
|
+
}), He = e.union([
|
|
55
81
|
e.string().min(1),
|
|
56
82
|
e.object({
|
|
57
83
|
label: e.string().min(1),
|
|
@@ -59,12 +85,12 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
59
85
|
source: e.string().optional().describe("Connection or table the query ran against"),
|
|
60
86
|
rows: e.number().int().nonnegative().optional().describe("Row count the query returned")
|
|
61
87
|
})
|
|
62
|
-
]), S = e.array(
|
|
88
|
+
]), S = e.array(He).max(6), W = e.object({
|
|
63
89
|
label: e.string().min(1),
|
|
64
90
|
value: e.string().min(1),
|
|
65
91
|
code: e.boolean().optional().describe("Render the value monospace — table paths, filters, identifiers"),
|
|
66
92
|
tone: N.optional()
|
|
67
|
-
}),
|
|
93
|
+
}), Y = e.object({
|
|
68
94
|
label: e.string().min(1),
|
|
69
95
|
value: e.string().min(1),
|
|
70
96
|
change: e.string().optional(),
|
|
@@ -75,13 +101,13 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
75
101
|
summary: e.string().optional(),
|
|
76
102
|
method: e.string().optional().describe("One-line methodology note — how the number was computed"),
|
|
77
103
|
caveats: e.array(e.string().min(1)).max(4).optional().describe("Assumptions, limitations, freshness or partial-period notes"),
|
|
78
|
-
followUps: e.array(
|
|
79
|
-
sources: e.array(
|
|
80
|
-
},
|
|
104
|
+
followUps: e.array(Me).max(3).optional(),
|
|
105
|
+
sources: e.array(Ie).max(8).optional()
|
|
106
|
+
}, M = e.object({
|
|
81
107
|
value: e.string().min(1),
|
|
82
108
|
detail: e.string().optional(),
|
|
83
109
|
tone: N.optional()
|
|
84
|
-
}),
|
|
110
|
+
}), Qe = e.object({
|
|
85
111
|
...x,
|
|
86
112
|
kind: e.literal("comparison"),
|
|
87
113
|
subjects: e.tuple([
|
|
@@ -92,7 +118,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
92
118
|
e.object({
|
|
93
119
|
label: e.string().min(1),
|
|
94
120
|
description: e.string().min(1).optional().describe("Methodology, grain, or scope shown beneath the measure"),
|
|
95
|
-
values: e.tuple([
|
|
121
|
+
values: e.tuple([M, M]),
|
|
96
122
|
delta: e.object({
|
|
97
123
|
value: e.string().min(1),
|
|
98
124
|
tone: N.optional()
|
|
@@ -100,19 +126,19 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
100
126
|
})
|
|
101
127
|
).min(1).max(8),
|
|
102
128
|
takeaway: v.optional()
|
|
103
|
-
}),
|
|
129
|
+
}), F = e.enum([
|
|
104
130
|
"primary",
|
|
105
131
|
"success",
|
|
106
132
|
"warning",
|
|
107
133
|
"danger",
|
|
108
134
|
"info"
|
|
109
|
-
]),
|
|
135
|
+
]), Ye = e.discriminatedUnion("kind", [
|
|
110
136
|
e.object({
|
|
111
137
|
kind: e.literal("line"),
|
|
112
138
|
value: e.union([e.number(), e.string()]),
|
|
113
139
|
axis: e.enum(["x", "y"]).optional(),
|
|
114
140
|
label: e.string().optional(),
|
|
115
|
-
color:
|
|
141
|
+
color: F.optional()
|
|
116
142
|
}),
|
|
117
143
|
e.object({
|
|
118
144
|
kind: e.literal("band"),
|
|
@@ -120,7 +146,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
120
146
|
to: e.union([e.number(), e.string()]),
|
|
121
147
|
axis: e.enum(["x", "y"]).optional(),
|
|
122
148
|
label: e.string().optional(),
|
|
123
|
-
color:
|
|
149
|
+
color: F.optional()
|
|
124
150
|
}),
|
|
125
151
|
e.object({
|
|
126
152
|
kind: e.literal("point"),
|
|
@@ -128,22 +154,22 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
128
154
|
y: e.number(),
|
|
129
155
|
label: e.string().min(1),
|
|
130
156
|
description: e.string().optional(),
|
|
131
|
-
color:
|
|
157
|
+
color: F.optional()
|
|
132
158
|
})
|
|
133
|
-
]),
|
|
159
|
+
]), Ge = e.record(
|
|
134
160
|
e.string(),
|
|
135
161
|
e.union([e.string(), e.number(), e.null()])
|
|
136
|
-
),
|
|
162
|
+
), G = e.object({
|
|
137
163
|
type: e.enum(["line", "area", "bar"]),
|
|
138
|
-
data: e.array(
|
|
164
|
+
data: e.array(Ge).min(1).max(100),
|
|
139
165
|
categoryKey: e.string().min(1),
|
|
140
166
|
series: e.array(e.string().min(1)).min(1).max(4),
|
|
141
167
|
seriesLabels: e.record(e.string(), e.string()).optional(),
|
|
142
168
|
highlight: e.string().optional(),
|
|
143
169
|
forecastKeys: e.array(e.string().min(1)).max(2).optional().describe("Series keys drawn dashed as projections (line and area only)"),
|
|
144
170
|
unit: e.string().optional(),
|
|
145
|
-
annotations: e.array(
|
|
146
|
-
}),
|
|
171
|
+
annotations: e.array(Ye).max(8).optional()
|
|
172
|
+
}), Xe = e.object({
|
|
147
173
|
...x,
|
|
148
174
|
kind: e.literal("trend"),
|
|
149
175
|
metric: e.object({
|
|
@@ -152,9 +178,9 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
152
178
|
change: e.string().optional(),
|
|
153
179
|
tone: N.optional()
|
|
154
180
|
}).optional(),
|
|
155
|
-
chart:
|
|
181
|
+
chart: G,
|
|
156
182
|
insight: v.optional()
|
|
157
|
-
}),
|
|
183
|
+
}), Je = e.object({
|
|
158
184
|
...x,
|
|
159
185
|
kind: e.literal("status"),
|
|
160
186
|
overall: e.object({
|
|
@@ -172,7 +198,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
172
198
|
})
|
|
173
199
|
).min(1).max(12),
|
|
174
200
|
recommendation: v.optional()
|
|
175
|
-
}),
|
|
201
|
+
}), Ze = e.object({
|
|
176
202
|
...x,
|
|
177
203
|
kind: e.literal("breakdown"),
|
|
178
204
|
total: e.object({ label: e.string().min(1), value: e.string().min(1) }).optional(),
|
|
@@ -186,7 +212,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
186
212
|
})
|
|
187
213
|
).min(1).max(12),
|
|
188
214
|
insight: v.optional()
|
|
189
|
-
}),
|
|
215
|
+
}), Ue = e.object({
|
|
190
216
|
...x,
|
|
191
217
|
kind: e.literal("explanation"),
|
|
192
218
|
sections: e.array(
|
|
@@ -199,7 +225,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
199
225
|
})
|
|
200
226
|
).min(1).max(6),
|
|
201
227
|
takeaway: v.optional()
|
|
202
|
-
}),
|
|
228
|
+
}), ea = e.object({
|
|
203
229
|
...x,
|
|
204
230
|
kind: e.literal("narrative"),
|
|
205
231
|
lead: e.string().optional().describe("The opening framing paragraph — supports blank-line breaks"),
|
|
@@ -219,7 +245,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
219
245
|
bottomLine: v.optional().describe(
|
|
220
246
|
"The emphasized closing verdict"
|
|
221
247
|
)
|
|
222
|
-
}),
|
|
248
|
+
}), aa = e.object({
|
|
223
249
|
...x,
|
|
224
250
|
kind: e.literal("fact"),
|
|
225
251
|
value: e.object({
|
|
@@ -229,13 +255,13 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
229
255
|
asOf: e.string().optional().describe('Freshness qualifier, e.g. "as of Apr 18, latest ingested"'),
|
|
230
256
|
tone: N.optional()
|
|
231
257
|
}),
|
|
232
|
-
facts: e.array(
|
|
258
|
+
facts: e.array(Y).max(6).optional(),
|
|
233
259
|
citations: S.optional(),
|
|
234
260
|
insight: v.optional()
|
|
235
|
-
}),
|
|
261
|
+
}), ta = e.union([
|
|
236
262
|
e.string(),
|
|
237
263
|
e.object({ value: e.string(), tone: N.optional() })
|
|
238
|
-
]),
|
|
264
|
+
]), X = {
|
|
239
265
|
columns: e.array(
|
|
240
266
|
e.object({
|
|
241
267
|
key: e.string().min(1),
|
|
@@ -245,7 +271,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
245
271
|
).min(2).max(6),
|
|
246
272
|
rows: e.array(
|
|
247
273
|
e.object({
|
|
248
|
-
cells: e.record(e.string(),
|
|
274
|
+
cells: e.record(e.string(), ta),
|
|
249
275
|
emphasis: e.boolean().optional().describe("Bold the row — the winner, the current period")
|
|
250
276
|
})
|
|
251
277
|
).min(1).max(12),
|
|
@@ -257,12 +283,12 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
257
283
|
'Footnote under the table — row caps ("showing 10 of 1,000"), provenance, partial periods'
|
|
258
284
|
),
|
|
259
285
|
citations: S.optional()
|
|
260
|
-
},
|
|
286
|
+
}, na = e.object({
|
|
261
287
|
...x,
|
|
262
288
|
kind: e.literal("table"),
|
|
263
|
-
...
|
|
289
|
+
...X,
|
|
264
290
|
insight: v.optional()
|
|
265
|
-
}),
|
|
291
|
+
}), ra = e.object({
|
|
266
292
|
...x,
|
|
267
293
|
kind: e.literal("ranking"),
|
|
268
294
|
metricLabel: e.string().optional().describe('What the ranked value measures, e.g. "Total fee · EUR"'),
|
|
@@ -282,7 +308,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
282
308
|
tiebreak: e.string().optional().describe("How a tie between highlighted items resolves"),
|
|
283
309
|
citations: S.optional(),
|
|
284
310
|
insight: v.optional()
|
|
285
|
-
}),
|
|
311
|
+
}), ia = e.object({
|
|
286
312
|
...x,
|
|
287
313
|
kind: e.literal("confirmation"),
|
|
288
314
|
outcome: e.object({
|
|
@@ -290,7 +316,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
290
316
|
detail: e.string().optional().describe('e.g. "schema version 62"'),
|
|
291
317
|
tone: N.optional()
|
|
292
318
|
}),
|
|
293
|
-
changes: e.array(
|
|
319
|
+
changes: e.array(W).max(8).optional().describe("What was added or configured, as label–value pairs"),
|
|
294
320
|
steps: e.array(
|
|
295
321
|
e.object({
|
|
296
322
|
label: e.string().min(1),
|
|
@@ -301,13 +327,13 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
301
327
|
safety: e.string().optional().describe('The no-side-effects line, e.g. "No existing cubes were modified."'),
|
|
302
328
|
next: e.string().optional().describe("Forward behavior or the step the system takes next"),
|
|
303
329
|
warning: v.optional()
|
|
304
|
-
}),
|
|
330
|
+
}), la = e.object({
|
|
305
331
|
...x,
|
|
306
332
|
kind: e.literal("clarification"),
|
|
307
|
-
findings: e.array(
|
|
333
|
+
findings: e.array(W).max(6).optional().describe("What was already established — the facts that framed the ask"),
|
|
308
334
|
question: e.string().min(1),
|
|
309
|
-
options: e.array(
|
|
310
|
-
}),
|
|
335
|
+
options: e.array(_e).min(1).max(4).optional()
|
|
336
|
+
}), sa = e.object({
|
|
311
337
|
...x,
|
|
312
338
|
kind: e.literal("empty"),
|
|
313
339
|
checks: e.array(
|
|
@@ -321,7 +347,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
321
347
|
baseline: e.object({ label: e.string().min(1), value: e.string().min(1) }).optional().describe("An adjacent known-good value for calibration"),
|
|
322
348
|
citations: S.optional(),
|
|
323
349
|
alternative: v.optional()
|
|
324
|
-
}),
|
|
350
|
+
}), oa = e.object({
|
|
325
351
|
...x,
|
|
326
352
|
kind: e.literal("error"),
|
|
327
353
|
failure: e.object({
|
|
@@ -346,7 +372,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
346
372
|
code: e.string().min(1),
|
|
347
373
|
language: e.string().optional()
|
|
348
374
|
}).optional().describe("Prepared work that survives the failure — ready-to-run SQL, a chart config")
|
|
349
|
-
}),
|
|
375
|
+
}), da = e.object({
|
|
350
376
|
...x,
|
|
351
377
|
kind: e.literal("refusal"),
|
|
352
378
|
reason: e.string().min(1),
|
|
@@ -358,7 +384,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
358
384
|
description: e.string().optional()
|
|
359
385
|
})
|
|
360
386
|
).max(4).optional()
|
|
361
|
-
}),
|
|
387
|
+
}), ca = e.object({
|
|
362
388
|
...x,
|
|
363
389
|
kind: e.literal("knowledge"),
|
|
364
390
|
entries: e.array(
|
|
@@ -367,13 +393,13 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
367
393
|
category: e.string().optional().describe('e.g. "Formula", "Field", "Rule"'),
|
|
368
394
|
body: e.string().optional(),
|
|
369
395
|
formula: e.string().optional(),
|
|
370
|
-
items: e.array(
|
|
396
|
+
items: e.array(W).max(6).optional()
|
|
371
397
|
})
|
|
372
398
|
).min(1).max(6),
|
|
373
399
|
gaps: e.array(e.string().min(1)).max(5).optional().describe("What the knowledge base does NOT cover"),
|
|
374
400
|
compliance: e.string().optional().describe('The constraint honored, e.g. "No SQL was executed."'),
|
|
375
401
|
citations: S.optional()
|
|
376
|
-
}),
|
|
402
|
+
}), ma = e.object({
|
|
377
403
|
...x,
|
|
378
404
|
kind: e.literal("decision"),
|
|
379
405
|
options: e.array(
|
|
@@ -387,7 +413,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
387
413
|
})
|
|
388
414
|
).min(2).max(4),
|
|
389
415
|
guidance: e.array(e.object({ when: e.string().min(1), choose: e.string().min(1) })).max(5).optional().describe('Goal-to-option mapping — "if you want X, pick Y"')
|
|
390
|
-
}),
|
|
416
|
+
}), ha = e.discriminatedUnion("type", [
|
|
391
417
|
e.object({
|
|
392
418
|
type: e.literal("text"),
|
|
393
419
|
title: e.string().optional(),
|
|
@@ -396,17 +422,17 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
396
422
|
e.object({
|
|
397
423
|
type: e.literal("metrics"),
|
|
398
424
|
title: e.string().optional(),
|
|
399
|
-
items: e.array(
|
|
425
|
+
items: e.array(Y).min(2).max(4)
|
|
400
426
|
}),
|
|
401
427
|
e.object({
|
|
402
428
|
type: e.literal("table"),
|
|
403
429
|
title: e.string().optional(),
|
|
404
|
-
...
|
|
430
|
+
...X
|
|
405
431
|
}),
|
|
406
432
|
e.object({
|
|
407
433
|
type: e.literal("chart"),
|
|
408
434
|
title: e.string().optional(),
|
|
409
|
-
chart:
|
|
435
|
+
chart: G,
|
|
410
436
|
note: e.string().optional()
|
|
411
437
|
}),
|
|
412
438
|
e.object({
|
|
@@ -416,21 +442,19 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
416
442
|
e.object({ lead: e.string().optional(), body: e.string().min(1) })
|
|
417
443
|
).min(1).max(6)
|
|
418
444
|
})
|
|
419
|
-
]),
|
|
445
|
+
]), ga = e.object({
|
|
420
446
|
...x,
|
|
421
447
|
kind: e.literal("report"),
|
|
422
|
-
sections: e.array(
|
|
448
|
+
sections: e.array(ha).min(2).max(8),
|
|
423
449
|
definitions: e.array(e.object({ term: e.string().min(1), meaning: e.string().min(1) })).max(8).optional()
|
|
424
|
-
}),
|
|
425
|
-
|
|
426
|
-
Ye,
|
|
427
|
-
Ge,
|
|
450
|
+
}), ua = e.discriminatedUnion("kind", [
|
|
451
|
+
Qe,
|
|
428
452
|
Xe,
|
|
429
453
|
Je,
|
|
430
454
|
Ze,
|
|
431
455
|
Ue,
|
|
456
|
+
ea,
|
|
432
457
|
aa,
|
|
433
|
-
ta,
|
|
434
458
|
na,
|
|
435
459
|
ra,
|
|
436
460
|
ia,
|
|
@@ -438,8 +462,10 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
438
462
|
sa,
|
|
439
463
|
oa,
|
|
440
464
|
da,
|
|
441
|
-
|
|
442
|
-
|
|
465
|
+
ca,
|
|
466
|
+
ma,
|
|
467
|
+
ga
|
|
468
|
+
]), Pa = [
|
|
443
469
|
"comparison",
|
|
444
470
|
"trend",
|
|
445
471
|
"status",
|
|
@@ -457,11 +483,11 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
457
483
|
"knowledge",
|
|
458
484
|
"decision",
|
|
459
485
|
"report"
|
|
460
|
-
],
|
|
461
|
-
name:
|
|
462
|
-
description:
|
|
463
|
-
inputSchema:
|
|
464
|
-
}, A =
|
|
486
|
+
], $a = {
|
|
487
|
+
name: $e,
|
|
488
|
+
description: Ve,
|
|
489
|
+
inputSchema: ua
|
|
490
|
+
}, A = I("font-medium tabular-nums text-foreground", {
|
|
465
491
|
variants: {
|
|
466
492
|
tone: {
|
|
467
493
|
default: "text-foreground",
|
|
@@ -473,7 +499,7 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
473
499
|
}
|
|
474
500
|
},
|
|
475
501
|
defaultVariants: { tone: "default" }
|
|
476
|
-
}),
|
|
502
|
+
}), P = I("", {
|
|
477
503
|
variants: {
|
|
478
504
|
tone: {
|
|
479
505
|
default: "text-secondary",
|
|
@@ -485,10 +511,10 @@ const We = "render_answer", Pe = "Render the final answer with one curated ADS t
|
|
|
485
511
|
}
|
|
486
512
|
},
|
|
487
513
|
defaultVariants: { tone: "default" }
|
|
488
|
-
}),
|
|
514
|
+
}), pa = new Intl.NumberFormat("en-US", {
|
|
489
515
|
notation: "compact",
|
|
490
516
|
maximumFractionDigits: 1
|
|
491
|
-
}),
|
|
517
|
+
}), J = (a) => a === "success" || a === "warning" || a === "danger" || a === "info" ? a : "default", ba = (a) => a === "success" || a === "warning" || a === "danger" || a === "info" ? a : "primary", Z = p.createContext(void 0);
|
|
492
518
|
function f({ spec: a }) {
|
|
493
519
|
return (
|
|
494
520
|
// `flex-1 min-w-0` lets the header fill its available width, including in
|
|
@@ -504,8 +530,8 @@ function k({ signal: a }) {
|
|
|
504
530
|
return /* @__PURE__ */ n(
|
|
505
531
|
T,
|
|
506
532
|
{
|
|
507
|
-
variant:
|
|
508
|
-
className: "border border-
|
|
533
|
+
variant: J(a.tone),
|
|
534
|
+
className: "border border-ng3 bg-card",
|
|
509
535
|
children: [
|
|
510
536
|
/* @__PURE__ */ t(O, { children: a.label ?? "Takeaway" }),
|
|
511
537
|
/* @__PURE__ */ t(L, { className: "text-base leading-6", children: a.text })
|
|
@@ -513,7 +539,7 @@ function k({ signal: a }) {
|
|
|
513
539
|
}
|
|
514
540
|
);
|
|
515
541
|
}
|
|
516
|
-
function
|
|
542
|
+
function B({
|
|
517
543
|
text: a,
|
|
518
544
|
lead: l,
|
|
519
545
|
className: c
|
|
@@ -527,45 +553,58 @@ function W({
|
|
|
527
553
|
m
|
|
528
554
|
] }, o)) });
|
|
529
555
|
}
|
|
530
|
-
const
|
|
531
|
-
function
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
556
|
+
const U = (a) => typeof a == "string" ? { label: a } : a, xa = (a) => a == null ? void 0 : a.split(" · ")[0], _ = "group inline-flex rounded-[4px] outline-none transition-transform duration-150 active:scale-[0.97] focus-visible:ring-3 focus-visible:ring-info/40 motion-reduce:transition-none motion-reduce:active:scale-100";
|
|
557
|
+
function K({
|
|
558
|
+
citation: a,
|
|
559
|
+
interactive: l = !0
|
|
560
|
+
}) {
|
|
561
|
+
const c = xa(a.source);
|
|
562
|
+
return /* @__PURE__ */ n(
|
|
563
|
+
we,
|
|
564
|
+
{
|
|
565
|
+
color: l ? "info" : "default",
|
|
566
|
+
startContent: /* @__PURE__ */ t(Pe, { "aria-hidden": !0 }),
|
|
567
|
+
className: g(
|
|
568
|
+
"pointer-events-none font-mono tabular-nums",
|
|
569
|
+
l && "transition-colors duration-150 group-hover:border-info-400 group-hover:bg-info-100 group-focus-visible:border-info-400 group-focus-visible:bg-info-100"
|
|
570
|
+
),
|
|
571
|
+
children: [
|
|
572
|
+
/* @__PURE__ */ t("span", { children: a.label }),
|
|
573
|
+
c && /* @__PURE__ */ n("span", { className: "max-w-[12ch] truncate font-normal", children: [
|
|
574
|
+
"· ",
|
|
575
|
+
c
|
|
576
|
+
] }),
|
|
577
|
+
a.rows != null && /* @__PURE__ */ n("span", { className: "font-normal", children: [
|
|
578
|
+
"· ",
|
|
579
|
+
a.rows.toLocaleString()
|
|
580
|
+
] })
|
|
581
|
+
]
|
|
582
|
+
}
|
|
583
|
+
);
|
|
545
584
|
}
|
|
546
|
-
function
|
|
547
|
-
const l =
|
|
585
|
+
function ee({ citation: a }) {
|
|
586
|
+
const l = p.useContext(Z), c = !!(a.query || a.source || a.rows != null);
|
|
548
587
|
return l ? /* @__PURE__ */ t(
|
|
549
588
|
"button",
|
|
550
589
|
{
|
|
551
590
|
type: "button",
|
|
552
|
-
className:
|
|
591
|
+
className: _,
|
|
553
592
|
"aria-label": `Inspect the query behind ${a.label}`,
|
|
554
593
|
onClick: () => l(a),
|
|
555
|
-
children: /* @__PURE__ */ t(
|
|
594
|
+
children: /* @__PURE__ */ t(K, { citation: a })
|
|
556
595
|
}
|
|
557
|
-
) : c ? /* @__PURE__ */ n(
|
|
558
|
-
/* @__PURE__ */ t(
|
|
596
|
+
) : c ? /* @__PURE__ */ n(ve, { children: [
|
|
597
|
+
/* @__PURE__ */ t(ke, { children: /* @__PURE__ */ t(
|
|
559
598
|
"button",
|
|
560
599
|
{
|
|
561
600
|
type: "button",
|
|
562
|
-
className:
|
|
601
|
+
className: _,
|
|
563
602
|
"aria-label": `Show the query behind ${a.label}`,
|
|
564
|
-
children: /* @__PURE__ */ t(
|
|
603
|
+
children: /* @__PURE__ */ t(K, { citation: a })
|
|
565
604
|
}
|
|
566
605
|
) }),
|
|
567
606
|
/* @__PURE__ */ n(
|
|
568
|
-
|
|
607
|
+
Ae,
|
|
569
608
|
{
|
|
570
609
|
align: "start",
|
|
571
610
|
className: "w-80 max-w-[calc(100vw-1rem)] overflow-hidden p-0",
|
|
@@ -592,18 +631,18 @@ function U({ citation: a }) {
|
|
|
592
631
|
]
|
|
593
632
|
}
|
|
594
633
|
)
|
|
595
|
-
] }) : /* @__PURE__ */ t(
|
|
634
|
+
] }) : /* @__PURE__ */ t(K, { citation: a, interactive: !1 });
|
|
596
635
|
}
|
|
597
636
|
function z({
|
|
598
637
|
citations: a,
|
|
599
638
|
className: l
|
|
600
639
|
}) {
|
|
601
640
|
return a != null && a.length ? /* @__PURE__ */ t("div", { className: g("flex flex-wrap items-center gap-1", l), children: a.map((c, d) => {
|
|
602
|
-
const m =
|
|
603
|
-
return /* @__PURE__ */ t(
|
|
641
|
+
const m = U(c);
|
|
642
|
+
return /* @__PURE__ */ t(ee, { citation: m }, `${m.label}-${d}`);
|
|
604
643
|
}) }) : null;
|
|
605
644
|
}
|
|
606
|
-
function
|
|
645
|
+
function ae({
|
|
607
646
|
items: a,
|
|
608
647
|
className: l
|
|
609
648
|
}) {
|
|
@@ -628,7 +667,7 @@ function ee({
|
|
|
628
667
|
c.label
|
|
629
668
|
)) });
|
|
630
669
|
}
|
|
631
|
-
function
|
|
670
|
+
function fa({ items: a }) {
|
|
632
671
|
return /* @__PURE__ */ t("div", { className: "grid grid-cols-2 gap-2 @lg:grid-cols-3", children: a.map((l) => /* @__PURE__ */ n("div", { className: "rounded-xl border border-border bg-card px-4 py-3", children: [
|
|
633
672
|
/* @__PURE__ */ t("p", { className: "text-xs font-normal text-tertiary", children: l.label }),
|
|
634
673
|
/* @__PURE__ */ t(
|
|
@@ -644,7 +683,7 @@ function pa({ items: a }) {
|
|
|
644
683
|
l.change && /* @__PURE__ */ t("p", { className: "mt-0.5 text-xs text-secondary", children: l.change })
|
|
645
684
|
] }, l.label)) });
|
|
646
685
|
}
|
|
647
|
-
function
|
|
686
|
+
function te({
|
|
648
687
|
table: a,
|
|
649
688
|
caption: l
|
|
650
689
|
}) {
|
|
@@ -654,7 +693,7 @@ function ae({
|
|
|
654
693
|
className: g(
|
|
655
694
|
r ? g("text-secondary", i && "font-medium text-foreground") : g(
|
|
656
695
|
"tabular-nums",
|
|
657
|
-
h ?
|
|
696
|
+
h ? P({ tone: h }) : "text-foreground",
|
|
658
697
|
i && "font-medium"
|
|
659
698
|
)
|
|
660
699
|
),
|
|
@@ -663,17 +702,17 @@ function ae({
|
|
|
663
702
|
);
|
|
664
703
|
return /* @__PURE__ */ n("div", { className: "space-y-3", children: [
|
|
665
704
|
/* @__PURE__ */ n(Le, { "aria-label": l, isStatic: !0, children: [
|
|
666
|
-
/* @__PURE__ */ t(ze, { children: /* @__PURE__ */ t(
|
|
705
|
+
/* @__PURE__ */ t(ze, { children: /* @__PURE__ */ t(q, { children: a.columns.map((o) => /* @__PURE__ */ t(De, { align: o.align, children: o.label }, o.key)) }) }),
|
|
667
706
|
/* @__PURE__ */ n(qe, { children: [
|
|
668
|
-
a.rows.map((o, h) => /* @__PURE__ */ t(
|
|
707
|
+
a.rows.map((o, h) => /* @__PURE__ */ t(q, { children: a.columns.map((r, i) => /* @__PURE__ */ t(V, { align: r.align, children: m(
|
|
669
708
|
c(o.cells[r.key]),
|
|
670
709
|
d(o.cells[r.key]),
|
|
671
710
|
{ first: i === 0, emphasis: o.emphasis }
|
|
672
711
|
) }, r.key)) }, h)),
|
|
673
|
-
a.totals && /* @__PURE__ */ t(
|
|
712
|
+
a.totals && /* @__PURE__ */ t(q, { children: a.columns.map((o, h) => {
|
|
674
713
|
var i, s;
|
|
675
714
|
const r = ((i = a.totals) == null ? void 0 : i.cells[o.key]) ?? (h === 0 ? ((s = a.totals) == null ? void 0 : s.label) ?? "Total" : "");
|
|
676
|
-
return /* @__PURE__ */ t(
|
|
715
|
+
return /* @__PURE__ */ t(V, { align: o.align, children: /* @__PURE__ */ t(
|
|
677
716
|
"span",
|
|
678
717
|
{
|
|
679
718
|
className: g(
|
|
@@ -690,9 +729,9 @@ function ae({
|
|
|
690
729
|
/* @__PURE__ */ t(z, { citations: a.citations })
|
|
691
730
|
] });
|
|
692
731
|
}
|
|
693
|
-
function
|
|
694
|
-
const l =
|
|
695
|
-
() => a.unit ? (d) => `${
|
|
732
|
+
function ne({ chart: a }) {
|
|
733
|
+
const l = p.useMemo(
|
|
734
|
+
() => a.unit ? (d) => `${pa.format(d)}${a.unit}` : void 0,
|
|
696
735
|
[a.unit]
|
|
697
736
|
), c = {
|
|
698
737
|
data: a.data,
|
|
@@ -716,14 +755,14 @@ function y({
|
|
|
716
755
|
return !i && !(h != null && h.length) ? null : /* @__PURE__ */ n("div", { className: "space-y-4 pt-1", children: [
|
|
717
756
|
i && /* @__PURE__ */ n("div", { className: "space-y-3", children: [
|
|
718
757
|
(m || !!(l != null && l.length)) && /* @__PURE__ */ n("p", { className: "text-base leading-6 text-tertiary", children: [
|
|
719
|
-
m && /* @__PURE__ */ n(
|
|
758
|
+
m && /* @__PURE__ */ n(E, { children: [
|
|
720
759
|
/* @__PURE__ */ t("span", { className: "font-medium", children: "How computed" }),
|
|
721
760
|
" · ",
|
|
722
761
|
m
|
|
723
762
|
] }),
|
|
724
|
-
l == null ? void 0 : l.map((s, u) => /* @__PURE__ */ n(
|
|
763
|
+
l == null ? void 0 : l.map((s, u) => /* @__PURE__ */ n(p.Fragment, { children: [
|
|
725
764
|
" ",
|
|
726
|
-
/* @__PURE__ */ t(
|
|
765
|
+
/* @__PURE__ */ t(ee, { citation: U(s) })
|
|
727
766
|
] }, u))
|
|
728
767
|
] }),
|
|
729
768
|
!!(o != null && o.length) && /* @__PURE__ */ t("ul", { className: "space-y-1", children: o.map((s) => /* @__PURE__ */ n(
|
|
@@ -747,7 +786,7 @@ function y({
|
|
|
747
786
|
/* @__PURE__ */ t("span", { className: "mx-0.5 text-xs font-normal text-tertiary", children: "Sources" }),
|
|
748
787
|
r == null ? void 0 : r.map(
|
|
749
788
|
(s) => d ? /* @__PURE__ */ t(
|
|
750
|
-
|
|
789
|
+
H,
|
|
751
790
|
{
|
|
752
791
|
type: "button",
|
|
753
792
|
size: "xs",
|
|
@@ -779,7 +818,7 @@ function y({
|
|
|
779
818
|
!!(h != null && h.length) && /* @__PURE__ */ n("div", { className: "space-y-3", children: [
|
|
780
819
|
/* @__PURE__ */ t("p", { className: "text-xs font-normal text-tertiary", children: "Ask a follow-up" }),
|
|
781
820
|
/* @__PURE__ */ t("div", { className: "flex flex-col gap-2", children: h.map((s) => /* @__PURE__ */ t(
|
|
782
|
-
|
|
821
|
+
Q,
|
|
783
822
|
{
|
|
784
823
|
type: "button",
|
|
785
824
|
disabled: !c,
|
|
@@ -791,7 +830,7 @@ function y({
|
|
|
791
830
|
] })
|
|
792
831
|
] });
|
|
793
832
|
}
|
|
794
|
-
const
|
|
833
|
+
const re = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
795
834
|
"div",
|
|
796
835
|
{
|
|
797
836
|
ref: h,
|
|
@@ -834,7 +873,7 @@ const ne = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
834
873
|
] }) }),
|
|
835
874
|
/* @__PURE__ */ t("tbody", { children: a.rows.map((r) => {
|
|
836
875
|
const i = r.values[0].detail === r.values[1].detail ? r.values[0].detail : void 0, s = r.description ?? i;
|
|
837
|
-
return /* @__PURE__ */ n("tr", { className: "[&>*]:bg-
|
|
876
|
+
return /* @__PURE__ */ n("tr", { className: "[&>*]:bg-ng2", children: [
|
|
838
877
|
/* @__PURE__ */ n(
|
|
839
878
|
"th",
|
|
840
879
|
{
|
|
@@ -888,8 +927,8 @@ const ne = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
888
927
|
]
|
|
889
928
|
}
|
|
890
929
|
));
|
|
891
|
-
|
|
892
|
-
const
|
|
930
|
+
re.displayName = "ComparisonAnswer";
|
|
931
|
+
const ie = p.forwardRef(
|
|
893
932
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
894
933
|
"div",
|
|
895
934
|
{
|
|
@@ -915,7 +954,7 @@ const re = b.forwardRef(
|
|
|
915
954
|
a.metric.change && /* @__PURE__ */ t("p", { className: "mt-0.5 text-xs text-secondary", children: a.metric.change })
|
|
916
955
|
] })
|
|
917
956
|
] }),
|
|
918
|
-
/* @__PURE__ */ t(
|
|
957
|
+
/* @__PURE__ */ t(ne, { chart: a.chart }),
|
|
919
958
|
a.insight && /* @__PURE__ */ t(k, { signal: a.insight }),
|
|
920
959
|
/* @__PURE__ */ t(
|
|
921
960
|
y,
|
|
@@ -929,8 +968,8 @@ const re = b.forwardRef(
|
|
|
929
968
|
}
|
|
930
969
|
)
|
|
931
970
|
);
|
|
932
|
-
|
|
933
|
-
const
|
|
971
|
+
ie.displayName = "TrendAnswer";
|
|
972
|
+
const le = p.forwardRef(
|
|
934
973
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
935
974
|
"div",
|
|
936
975
|
{
|
|
@@ -970,8 +1009,8 @@ const ie = b.forwardRef(
|
|
|
970
1009
|
}
|
|
971
1010
|
)
|
|
972
1011
|
);
|
|
973
|
-
|
|
974
|
-
const
|
|
1012
|
+
le.displayName = "StatusAnswer";
|
|
1013
|
+
const se = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
975
1014
|
"div",
|
|
976
1015
|
{
|
|
977
1016
|
ref: h,
|
|
@@ -1008,7 +1047,7 @@ const le = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1008
1047
|
{
|
|
1009
1048
|
value: r.share,
|
|
1010
1049
|
size: "sm",
|
|
1011
|
-
color:
|
|
1050
|
+
color: ba(r.tone),
|
|
1012
1051
|
label: `${r.label}: ${r.share}%`
|
|
1013
1052
|
}
|
|
1014
1053
|
)
|
|
@@ -1025,8 +1064,8 @@ const le = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1025
1064
|
]
|
|
1026
1065
|
}
|
|
1027
1066
|
));
|
|
1028
|
-
|
|
1029
|
-
const
|
|
1067
|
+
se.displayName = "BreakdownAnswer";
|
|
1068
|
+
const oe = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
1030
1069
|
"div",
|
|
1031
1070
|
{
|
|
1032
1071
|
ref: h,
|
|
@@ -1076,8 +1115,8 @@ const se = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1076
1115
|
]
|
|
1077
1116
|
}
|
|
1078
1117
|
));
|
|
1079
|
-
|
|
1080
|
-
const
|
|
1118
|
+
oe.displayName = "ExplanationAnswer";
|
|
1119
|
+
const de = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1081
1120
|
var r;
|
|
1082
1121
|
return /* @__PURE__ */ n(
|
|
1083
1122
|
"div",
|
|
@@ -1088,7 +1127,7 @@ const oe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1088
1127
|
...o,
|
|
1089
1128
|
children: [
|
|
1090
1129
|
/* @__PURE__ */ t(f, { spec: a }),
|
|
1091
|
-
a.lead && /* @__PURE__ */ t(
|
|
1130
|
+
a.lead && /* @__PURE__ */ t(B, { text: a.lead, className: "text-base" }),
|
|
1092
1131
|
/* @__PURE__ */ t("div", { className: "space-y-5", children: a.blocks.map((i, s) => {
|
|
1093
1132
|
var u;
|
|
1094
1133
|
return /* @__PURE__ */ n("div", { className: "space-y-2", children: [
|
|
@@ -1096,14 +1135,14 @@ const oe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1096
1135
|
i.tone && i.tone !== "default" ? /* @__PURE__ */ n(
|
|
1097
1136
|
T,
|
|
1098
1137
|
{
|
|
1099
|
-
variant:
|
|
1138
|
+
variant: J(i.tone),
|
|
1100
1139
|
className: "border border-border bg-card",
|
|
1101
1140
|
children: [
|
|
1102
1141
|
i.lead && /* @__PURE__ */ t(O, { children: i.lead }),
|
|
1103
1142
|
/* @__PURE__ */ t(L, { className: "text-base leading-6", children: i.body })
|
|
1104
1143
|
]
|
|
1105
1144
|
}
|
|
1106
|
-
) : /* @__PURE__ */ t(
|
|
1145
|
+
) : /* @__PURE__ */ t(B, { text: i.body, lead: i.lead }),
|
|
1107
1146
|
!!((u = i.bullets) != null && u.length) && /* @__PURE__ */ t("ul", { className: "space-y-1.5", children: i.bullets.map((j) => /* @__PURE__ */ n(
|
|
1108
1147
|
"li",
|
|
1109
1148
|
{
|
|
@@ -1164,8 +1203,8 @@ const oe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1164
1203
|
}
|
|
1165
1204
|
);
|
|
1166
1205
|
});
|
|
1167
|
-
|
|
1168
|
-
const
|
|
1206
|
+
de.displayName = "NarrativeAnswer";
|
|
1207
|
+
const ce = p.forwardRef(
|
|
1169
1208
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1170
1209
|
var i;
|
|
1171
1210
|
const r = [a.value.change, a.value.asOf].filter(Boolean).join(" · ");
|
|
@@ -1221,8 +1260,8 @@ const de = b.forwardRef(
|
|
|
1221
1260
|
);
|
|
1222
1261
|
}
|
|
1223
1262
|
);
|
|
1224
|
-
|
|
1225
|
-
const
|
|
1263
|
+
ce.displayName = "FactAnswer";
|
|
1264
|
+
const me = p.forwardRef(
|
|
1226
1265
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
1227
1266
|
"div",
|
|
1228
1267
|
{
|
|
@@ -1232,7 +1271,7 @@ const ce = b.forwardRef(
|
|
|
1232
1271
|
...o,
|
|
1233
1272
|
children: [
|
|
1234
1273
|
/* @__PURE__ */ t(f, { spec: a }),
|
|
1235
|
-
/* @__PURE__ */ t(
|
|
1274
|
+
/* @__PURE__ */ t(te, { table: a, caption: a.headline }),
|
|
1236
1275
|
a.insight && /* @__PURE__ */ t(k, { signal: a.insight }),
|
|
1237
1276
|
/* @__PURE__ */ t(
|
|
1238
1277
|
y,
|
|
@@ -1246,8 +1285,8 @@ const ce = b.forwardRef(
|
|
|
1246
1285
|
}
|
|
1247
1286
|
)
|
|
1248
1287
|
);
|
|
1249
|
-
|
|
1250
|
-
const
|
|
1288
|
+
me.displayName = "TableAnswer";
|
|
1289
|
+
const he = p.forwardRef(
|
|
1251
1290
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
|
|
1252
1291
|
"div",
|
|
1253
1292
|
{
|
|
@@ -1304,7 +1343,7 @@ const me = b.forwardRef(
|
|
|
1304
1343
|
"p",
|
|
1305
1344
|
{
|
|
1306
1345
|
className: g(
|
|
1307
|
-
|
|
1346
|
+
P({ tone: r.delta.tone }),
|
|
1308
1347
|
"mt-0.5 text-xs tabular-nums"
|
|
1309
1348
|
),
|
|
1310
1349
|
children: r.delta.value
|
|
@@ -1331,18 +1370,18 @@ const me = b.forwardRef(
|
|
|
1331
1370
|
}
|
|
1332
1371
|
)
|
|
1333
1372
|
);
|
|
1334
|
-
|
|
1335
|
-
const
|
|
1336
|
-
done: /* @__PURE__ */ t(
|
|
1337
|
-
pending: /* @__PURE__ */ t(
|
|
1338
|
-
failed: /* @__PURE__ */ t(
|
|
1373
|
+
he.displayName = "RankingAnswer";
|
|
1374
|
+
const ya = {
|
|
1375
|
+
done: /* @__PURE__ */ t(D, { "aria-hidden": !0, className: "text-success-700" }),
|
|
1376
|
+
pending: /* @__PURE__ */ t(We, { "aria-hidden": !0, className: "text-tertiary" }),
|
|
1377
|
+
failed: /* @__PURE__ */ t(Ee, { "aria-hidden": !0, className: "text-danger-700" }),
|
|
1339
1378
|
skipped: /* @__PURE__ */ t(Be, { "aria-hidden": !0, className: "text-tertiary" })
|
|
1340
|
-
},
|
|
1379
|
+
}, Na = {
|
|
1341
1380
|
done: "Done",
|
|
1342
1381
|
pending: "Pending",
|
|
1343
1382
|
failed: "Failed",
|
|
1344
1383
|
skipped: "Skipped"
|
|
1345
|
-
},
|
|
1384
|
+
}, ge = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1346
1385
|
var r, i;
|
|
1347
1386
|
return /* @__PURE__ */ n(
|
|
1348
1387
|
"div",
|
|
@@ -1367,13 +1406,13 @@ const xa = {
|
|
|
1367
1406
|
}
|
|
1368
1407
|
)
|
|
1369
1408
|
] }),
|
|
1370
|
-
!!((r = a.changes) != null && r.length) && /* @__PURE__ */ t(
|
|
1409
|
+
!!((r = a.changes) != null && r.length) && /* @__PURE__ */ t(ae, { items: a.changes }),
|
|
1371
1410
|
!!((i = a.steps) != null && i.length) && /* @__PURE__ */ t("ul", { className: "space-y-2", children: a.steps.map((s) => /* @__PURE__ */ n(
|
|
1372
1411
|
"li",
|
|
1373
1412
|
{
|
|
1374
1413
|
className: "flex items-start gap-3 rounded-xl border border-border bg-card px-4 py-3",
|
|
1375
1414
|
children: [
|
|
1376
|
-
/* @__PURE__ */ t("span", { className: "mt-0.5 flex size-4 shrink-0 items-center justify-center [&_svg]:size-4", children:
|
|
1415
|
+
/* @__PURE__ */ t("span", { className: "mt-0.5 flex size-4 shrink-0 items-center justify-center [&_svg]:size-4", children: ya[s.status] }),
|
|
1377
1416
|
/* @__PURE__ */ n("div", { className: "min-w-0", children: [
|
|
1378
1417
|
/* @__PURE__ */ n(
|
|
1379
1418
|
"p",
|
|
@@ -1386,7 +1425,7 @@ const xa = {
|
|
|
1386
1425
|
s.label,
|
|
1387
1426
|
/* @__PURE__ */ n("span", { className: "sr-only", children: [
|
|
1388
1427
|
" — ",
|
|
1389
|
-
|
|
1428
|
+
Na[s.status]
|
|
1390
1429
|
] })
|
|
1391
1430
|
]
|
|
1392
1431
|
}
|
|
@@ -1398,7 +1437,7 @@ const xa = {
|
|
|
1398
1437
|
s.label
|
|
1399
1438
|
)) }),
|
|
1400
1439
|
a.safety && /* @__PURE__ */ n("p", { className: "flex items-center gap-1.5 text-xs text-tertiary", children: [
|
|
1401
|
-
/* @__PURE__ */ t(
|
|
1440
|
+
/* @__PURE__ */ t(D, { "aria-hidden": !0, className: "size-3.5 shrink-0 text-success-700" }),
|
|
1402
1441
|
a.safety
|
|
1403
1442
|
] }),
|
|
1404
1443
|
a.next && /* @__PURE__ */ t("p", { className: "text-sm leading-6 text-secondary", children: a.next }),
|
|
@@ -1415,8 +1454,8 @@ const xa = {
|
|
|
1415
1454
|
}
|
|
1416
1455
|
);
|
|
1417
1456
|
});
|
|
1418
|
-
|
|
1419
|
-
const
|
|
1457
|
+
ge.displayName = "ConfirmationAnswer";
|
|
1458
|
+
const ue = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1420
1459
|
var i, s;
|
|
1421
1460
|
const r = c ?? l;
|
|
1422
1461
|
return /* @__PURE__ */ n(
|
|
@@ -1428,7 +1467,7 @@ const ge = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1428
1467
|
...o,
|
|
1429
1468
|
children: [
|
|
1430
1469
|
/* @__PURE__ */ t(f, { spec: a }),
|
|
1431
|
-
!!((i = a.findings) != null && i.length) && /* @__PURE__ */ t(
|
|
1470
|
+
!!((i = a.findings) != null && i.length) && /* @__PURE__ */ t(ae, { items: a.findings }),
|
|
1432
1471
|
/* @__PURE__ */ t("p", { className: "text-sm font-medium leading-6 text-foreground", children: a.question }),
|
|
1433
1472
|
!!((s = a.options) != null && s.length) && /* @__PURE__ */ t("div", { className: "space-y-2", children: a.options.map((u) => /* @__PURE__ */ n(
|
|
1434
1473
|
"button",
|
|
@@ -1462,8 +1501,8 @@ const ge = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1462
1501
|
}
|
|
1463
1502
|
);
|
|
1464
1503
|
});
|
|
1465
|
-
|
|
1466
|
-
const
|
|
1504
|
+
ue.displayName = "ClarificationAnswer";
|
|
1505
|
+
const pe = p.forwardRef(
|
|
1467
1506
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1468
1507
|
var r;
|
|
1469
1508
|
return /* @__PURE__ */ n(
|
|
@@ -1487,7 +1526,7 @@ const ue = b.forwardRef(
|
|
|
1487
1526
|
{
|
|
1488
1527
|
className: g(
|
|
1489
1528
|
"shrink-0 text-sm tabular-nums",
|
|
1490
|
-
i.tone ?
|
|
1529
|
+
i.tone ? P({ tone: i.tone }) : "text-tertiary"
|
|
1491
1530
|
),
|
|
1492
1531
|
children: i.result
|
|
1493
1532
|
}
|
|
@@ -1517,13 +1556,13 @@ const ue = b.forwardRef(
|
|
|
1517
1556
|
);
|
|
1518
1557
|
}
|
|
1519
1558
|
);
|
|
1520
|
-
|
|
1521
|
-
const
|
|
1559
|
+
pe.displayName = "EmptyAnswer";
|
|
1560
|
+
const wa = {
|
|
1522
1561
|
user: "You",
|
|
1523
1562
|
admin: "Workspace admin",
|
|
1524
1563
|
platform: "Platform team",
|
|
1525
1564
|
agent: "Agent"
|
|
1526
|
-
}, be =
|
|
1565
|
+
}, be = p.forwardRef(
|
|
1527
1566
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1528
1567
|
var r, i;
|
|
1529
1568
|
return /* @__PURE__ */ n(
|
|
@@ -1560,7 +1599,7 @@ const ya = {
|
|
|
1560
1599
|
/* @__PURE__ */ t(w, { variant: "soft", className: "mt-0.5 tabular-nums", children: u + 1 }),
|
|
1561
1600
|
/* @__PURE__ */ t("p", { className: "text-sm leading-6 text-foreground", children: s.action })
|
|
1562
1601
|
] }),
|
|
1563
|
-
s.owner && /* @__PURE__ */ t(w, { variant: "soft", className: "shrink-0", children:
|
|
1602
|
+
s.owner && /* @__PURE__ */ t(w, { variant: "soft", className: "shrink-0", children: wa[s.owner] })
|
|
1564
1603
|
]
|
|
1565
1604
|
},
|
|
1566
1605
|
s.action
|
|
@@ -1591,7 +1630,7 @@ const ya = {
|
|
|
1591
1630
|
}
|
|
1592
1631
|
);
|
|
1593
1632
|
be.displayName = "ErrorAnswer";
|
|
1594
|
-
const
|
|
1633
|
+
const xe = p.forwardRef(
|
|
1595
1634
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1596
1635
|
var r;
|
|
1597
1636
|
return /* @__PURE__ */ n(
|
|
@@ -1604,7 +1643,7 @@ const pe = b.forwardRef(
|
|
|
1604
1643
|
children: [
|
|
1605
1644
|
/* @__PURE__ */ t(f, { spec: a }),
|
|
1606
1645
|
a.completed && /* @__PURE__ */ n("p", { className: "flex items-start gap-2 text-sm leading-6 text-secondary", children: [
|
|
1607
|
-
/* @__PURE__ */ t(
|
|
1646
|
+
/* @__PURE__ */ t(D, { "aria-hidden": !0, className: "mt-1 size-4 shrink-0 text-success-700" }),
|
|
1608
1647
|
/* @__PURE__ */ t("span", { children: a.completed })
|
|
1609
1648
|
] }),
|
|
1610
1649
|
/* @__PURE__ */ n(T, { variant: "warning", className: "border border-border bg-card", children: [
|
|
@@ -1639,8 +1678,8 @@ const pe = b.forwardRef(
|
|
|
1639
1678
|
);
|
|
1640
1679
|
}
|
|
1641
1680
|
);
|
|
1642
|
-
|
|
1643
|
-
const
|
|
1681
|
+
xe.displayName = "RefusalAnswer";
|
|
1682
|
+
const fe = p.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1644
1683
|
var r;
|
|
1645
1684
|
return /* @__PURE__ */ n(
|
|
1646
1685
|
"div",
|
|
@@ -1690,7 +1729,7 @@ const xe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1690
1729
|
/* @__PURE__ */ t(L, { className: "text-base leading-6", children: a.gaps.map((i) => /* @__PURE__ */ t("span", { className: "mt-1 block first:mt-0", children: i }, i)) })
|
|
1691
1730
|
] }),
|
|
1692
1731
|
a.compliance && /* @__PURE__ */ n("p", { className: "flex items-center gap-1.5 text-xs text-tertiary", children: [
|
|
1693
|
-
/* @__PURE__ */ t(
|
|
1732
|
+
/* @__PURE__ */ t(D, { "aria-hidden": !0, className: "size-3.5 shrink-0 text-success-700" }),
|
|
1694
1733
|
a.compliance
|
|
1695
1734
|
] }),
|
|
1696
1735
|
/* @__PURE__ */ t(
|
|
@@ -1705,8 +1744,8 @@ const xe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSe
|
|
|
1705
1744
|
}
|
|
1706
1745
|
);
|
|
1707
1746
|
});
|
|
1708
|
-
|
|
1709
|
-
const
|
|
1747
|
+
fe.displayName = "KnowledgeAnswer";
|
|
1748
|
+
const ye = p.forwardRef(
|
|
1710
1749
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1711
1750
|
var r;
|
|
1712
1751
|
return /* @__PURE__ */ n(
|
|
@@ -1719,7 +1758,7 @@ const fe = b.forwardRef(
|
|
|
1719
1758
|
children: [
|
|
1720
1759
|
/* @__PURE__ */ t(f, { spec: a }),
|
|
1721
1760
|
/* @__PURE__ */ t("div", { className: "space-y-2", children: a.options.map((i) => {
|
|
1722
|
-
var s, u, j,
|
|
1761
|
+
var s, u, j, $;
|
|
1723
1762
|
return /* @__PURE__ */ n("div", { className: "rounded-2xl border border-border bg-card p-4", children: [
|
|
1724
1763
|
/* @__PURE__ */ n("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
1725
1764
|
/* @__PURE__ */ t("h3", { className: "text-sm font-medium text-foreground", children: i.name }),
|
|
@@ -1745,7 +1784,7 @@ const fe = b.forwardRef(
|
|
|
1745
1784
|
},
|
|
1746
1785
|
C
|
|
1747
1786
|
)) }),
|
|
1748
|
-
!!((
|
|
1787
|
+
!!(($ = i.cons) != null && $.length) && /* @__PURE__ */ t("ul", { className: "space-y-1.5", children: i.cons.map((C) => /* @__PURE__ */ n(
|
|
1749
1788
|
"li",
|
|
1750
1789
|
{
|
|
1751
1790
|
className: "flex items-start gap-2 text-xs leading-5 text-secondary",
|
|
@@ -1789,8 +1828,8 @@ const fe = b.forwardRef(
|
|
|
1789
1828
|
);
|
|
1790
1829
|
}
|
|
1791
1830
|
);
|
|
1792
|
-
|
|
1793
|
-
const
|
|
1831
|
+
ye.displayName = "DecisionAnswer";
|
|
1832
|
+
const Ne = p.forwardRef(
|
|
1794
1833
|
({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
|
|
1795
1834
|
var r;
|
|
1796
1835
|
return /* @__PURE__ */ n(
|
|
@@ -1804,17 +1843,17 @@ const ye = b.forwardRef(
|
|
|
1804
1843
|
/* @__PURE__ */ t(f, { spec: a }),
|
|
1805
1844
|
a.sections.map((i, s) => /* @__PURE__ */ n("section", { className: "space-y-2", children: [
|
|
1806
1845
|
i.title && /* @__PURE__ */ t("h3", { className: "text-sm font-medium text-foreground", children: i.title }),
|
|
1807
|
-
i.type === "text" && /* @__PURE__ */ t(
|
|
1808
|
-
i.type === "metrics" && /* @__PURE__ */ t(
|
|
1846
|
+
i.type === "text" && /* @__PURE__ */ t(B, { text: i.body }),
|
|
1847
|
+
i.type === "metrics" && /* @__PURE__ */ t(fa, { items: i.items }),
|
|
1809
1848
|
i.type === "table" && /* @__PURE__ */ t(
|
|
1810
|
-
|
|
1849
|
+
te,
|
|
1811
1850
|
{
|
|
1812
1851
|
table: i,
|
|
1813
1852
|
caption: i.title ?? a.headline
|
|
1814
1853
|
}
|
|
1815
1854
|
),
|
|
1816
|
-
i.type === "chart" && /* @__PURE__ */ n(
|
|
1817
|
-
/* @__PURE__ */ t(
|
|
1855
|
+
i.type === "chart" && /* @__PURE__ */ n(E, { children: [
|
|
1856
|
+
/* @__PURE__ */ t(ne, { chart: i.chart }),
|
|
1818
1857
|
i.note && /* @__PURE__ */ t("p", { className: "text-xs text-tertiary", children: i.note })
|
|
1819
1858
|
] }),
|
|
1820
1859
|
i.type === "list" && /* @__PURE__ */ t("ul", { className: "space-y-1.5", children: i.items.map((u) => /* @__PURE__ */ n(
|
|
@@ -1866,8 +1905,8 @@ const ye = b.forwardRef(
|
|
|
1866
1905
|
);
|
|
1867
1906
|
}
|
|
1868
1907
|
);
|
|
1869
|
-
|
|
1870
|
-
const
|
|
1908
|
+
Ne.displayName = "ReportAnswer";
|
|
1909
|
+
const va = p.forwardRef(
|
|
1871
1910
|
({ kind: a, className: l, ...c }, d) => {
|
|
1872
1911
|
const m = a === "trend" ? "chart" : a === "fact" ? "tiles" : a === "table" || a === "comparison" || a === "report" ? "table" : a === "narrative" || a === "explanation" || a === "refusal" ? "prose" : a ? "rows" : "block";
|
|
1873
1912
|
return /* @__PURE__ */ n(
|
|
@@ -1881,132 +1920,133 @@ const Na = b.forwardRef(
|
|
|
1881
1920
|
...c,
|
|
1882
1921
|
children: [
|
|
1883
1922
|
/* @__PURE__ */ n("div", { className: "space-y-2", children: [
|
|
1884
|
-
/* @__PURE__ */ t(
|
|
1885
|
-
/* @__PURE__ */ t(
|
|
1886
|
-
/* @__PURE__ */ t(
|
|
1923
|
+
/* @__PURE__ */ t(b, { className: "h-3 w-24" }),
|
|
1924
|
+
/* @__PURE__ */ t(b, { className: "h-7 w-4/5" }),
|
|
1925
|
+
/* @__PURE__ */ t(b, { className: "h-4 w-full" })
|
|
1887
1926
|
] }),
|
|
1888
|
-
m === "chart" && /* @__PURE__ */ t(
|
|
1889
|
-
m === "tiles" && /* @__PURE__ */ n(
|
|
1890
|
-
/* @__PURE__ */ t(
|
|
1927
|
+
m === "chart" && /* @__PURE__ */ t(b, { className: "h-56 w-full rounded-2xl" }),
|
|
1928
|
+
m === "tiles" && /* @__PURE__ */ n(E, { children: [
|
|
1929
|
+
/* @__PURE__ */ t(b, { className: "h-24 w-full rounded-2xl" }),
|
|
1891
1930
|
/* @__PURE__ */ n("div", { className: "grid grid-cols-2 gap-2", children: [
|
|
1892
|
-
/* @__PURE__ */ t(
|
|
1893
|
-
/* @__PURE__ */ t(
|
|
1931
|
+
/* @__PURE__ */ t(b, { className: "h-16 rounded-xl" }),
|
|
1932
|
+
/* @__PURE__ */ t(b, { className: "h-16 rounded-xl" })
|
|
1894
1933
|
] })
|
|
1895
1934
|
] }),
|
|
1896
|
-
m === "table" && /* @__PURE__ */ t(
|
|
1935
|
+
m === "table" && /* @__PURE__ */ t(b, { className: "h-48 w-full rounded-2xl" }),
|
|
1897
1936
|
m === "rows" && /* @__PURE__ */ n("div", { className: "space-y-2", children: [
|
|
1898
|
-
/* @__PURE__ */ t(
|
|
1899
|
-
/* @__PURE__ */ t(
|
|
1900
|
-
/* @__PURE__ */ t(
|
|
1937
|
+
/* @__PURE__ */ t(b, { className: "h-12 w-full rounded-xl" }),
|
|
1938
|
+
/* @__PURE__ */ t(b, { className: "h-12 w-full rounded-xl" }),
|
|
1939
|
+
/* @__PURE__ */ t(b, { className: "h-12 w-full rounded-xl" })
|
|
1901
1940
|
] }),
|
|
1902
1941
|
m === "prose" && /* @__PURE__ */ n("div", { className: "space-y-2", children: [
|
|
1903
|
-
/* @__PURE__ */ t(
|
|
1904
|
-
/* @__PURE__ */ t(
|
|
1905
|
-
/* @__PURE__ */ t(
|
|
1906
|
-
/* @__PURE__ */ t(
|
|
1907
|
-
/* @__PURE__ */ t(
|
|
1942
|
+
/* @__PURE__ */ t(b, { className: "h-4 w-full" }),
|
|
1943
|
+
/* @__PURE__ */ t(b, { className: "h-4 w-full" }),
|
|
1944
|
+
/* @__PURE__ */ t(b, { className: "h-4 w-11/12" }),
|
|
1945
|
+
/* @__PURE__ */ t(b, { className: "h-4 w-full" }),
|
|
1946
|
+
/* @__PURE__ */ t(b, { className: "h-4 w-4/5" })
|
|
1908
1947
|
] }),
|
|
1909
|
-
m === "block" && /* @__PURE__ */ t(
|
|
1948
|
+
m === "block" && /* @__PURE__ */ t(b, { className: "h-48 w-full rounded-2xl" })
|
|
1910
1949
|
]
|
|
1911
1950
|
}
|
|
1912
1951
|
);
|
|
1913
1952
|
}
|
|
1914
1953
|
);
|
|
1915
|
-
|
|
1916
|
-
const
|
|
1954
|
+
va.displayName = "AnswerSkeleton";
|
|
1955
|
+
const ka = p.forwardRef(
|
|
1917
1956
|
({ spec: a, onCitationSelect: l, ...c }, d) => {
|
|
1918
1957
|
const m = (() => {
|
|
1919
1958
|
switch (a.kind) {
|
|
1920
1959
|
case "comparison":
|
|
1921
|
-
return /* @__PURE__ */ t(ne, { ref: d, spec: a, ...c });
|
|
1922
|
-
case "trend":
|
|
1923
1960
|
return /* @__PURE__ */ t(re, { ref: d, spec: a, ...c });
|
|
1924
|
-
case "
|
|
1961
|
+
case "trend":
|
|
1925
1962
|
return /* @__PURE__ */ t(ie, { ref: d, spec: a, ...c });
|
|
1926
|
-
case "
|
|
1963
|
+
case "status":
|
|
1927
1964
|
return /* @__PURE__ */ t(le, { ref: d, spec: a, ...c });
|
|
1928
|
-
case "
|
|
1965
|
+
case "breakdown":
|
|
1929
1966
|
return /* @__PURE__ */ t(se, { ref: d, spec: a, ...c });
|
|
1930
|
-
case "
|
|
1967
|
+
case "explanation":
|
|
1931
1968
|
return /* @__PURE__ */ t(oe, { ref: d, spec: a, ...c });
|
|
1932
|
-
case "
|
|
1969
|
+
case "narrative":
|
|
1933
1970
|
return /* @__PURE__ */ t(de, { ref: d, spec: a, ...c });
|
|
1934
|
-
case "
|
|
1971
|
+
case "fact":
|
|
1935
1972
|
return /* @__PURE__ */ t(ce, { ref: d, spec: a, ...c });
|
|
1936
|
-
case "
|
|
1973
|
+
case "table":
|
|
1937
1974
|
return /* @__PURE__ */ t(me, { ref: d, spec: a, ...c });
|
|
1938
|
-
case "
|
|
1975
|
+
case "ranking":
|
|
1939
1976
|
return /* @__PURE__ */ t(he, { ref: d, spec: a, ...c });
|
|
1940
|
-
case "
|
|
1977
|
+
case "confirmation":
|
|
1941
1978
|
return /* @__PURE__ */ t(ge, { ref: d, spec: a, ...c });
|
|
1942
|
-
case "
|
|
1979
|
+
case "clarification":
|
|
1943
1980
|
return /* @__PURE__ */ t(ue, { ref: d, spec: a, ...c });
|
|
1981
|
+
case "empty":
|
|
1982
|
+
return /* @__PURE__ */ t(pe, { ref: d, spec: a, ...c });
|
|
1944
1983
|
case "error":
|
|
1945
1984
|
return /* @__PURE__ */ t(be, { ref: d, spec: a, ...c });
|
|
1946
1985
|
case "refusal":
|
|
1947
|
-
return /* @__PURE__ */ t(pe, { ref: d, spec: a, ...c });
|
|
1948
|
-
case "knowledge":
|
|
1949
1986
|
return /* @__PURE__ */ t(xe, { ref: d, spec: a, ...c });
|
|
1950
|
-
case "
|
|
1987
|
+
case "knowledge":
|
|
1951
1988
|
return /* @__PURE__ */ t(fe, { ref: d, spec: a, ...c });
|
|
1952
|
-
case "
|
|
1989
|
+
case "decision":
|
|
1953
1990
|
return /* @__PURE__ */ t(ye, { ref: d, spec: a, ...c });
|
|
1991
|
+
case "report":
|
|
1992
|
+
return /* @__PURE__ */ t(Ne, { ref: d, spec: a, ...c });
|
|
1954
1993
|
}
|
|
1955
1994
|
})();
|
|
1956
|
-
return /* @__PURE__ */ t(
|
|
1995
|
+
return /* @__PURE__ */ t(Z.Provider, { value: l, children: m });
|
|
1957
1996
|
}
|
|
1958
1997
|
);
|
|
1959
|
-
|
|
1998
|
+
ka.displayName = "AnswerRenderer";
|
|
1960
1999
|
export {
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
2000
|
+
Pa as ANSWER_KINDS,
|
|
2001
|
+
Ve as ANSWER_TOOL_DESCRIPTION,
|
|
2002
|
+
$e as ANSWER_TOOL_NAME,
|
|
2003
|
+
G as AnswerChartSchema,
|
|
2004
|
+
He as AnswerCitationSchema,
|
|
1966
2005
|
S as AnswerCitationsSchema,
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
2006
|
+
Me as AnswerFollowUpSchema,
|
|
2007
|
+
W as AnswerKeyValueSchema,
|
|
2008
|
+
Y as AnswerMetricSchema,
|
|
2009
|
+
_e as AnswerOptionSchema,
|
|
2010
|
+
ka as AnswerRenderer,
|
|
1972
2011
|
v as AnswerSignalSchema,
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
2012
|
+
va as AnswerSkeleton,
|
|
2013
|
+
Ie as AnswerSourceSchema,
|
|
2014
|
+
ua as AnswerSpecSchema,
|
|
1976
2015
|
N as AnswerToneSchema,
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
2016
|
+
se as BreakdownAnswer,
|
|
2017
|
+
Ze as BreakdownAnswerSchema,
|
|
2018
|
+
ue as ClarificationAnswer,
|
|
2019
|
+
la as ClarificationAnswerSchema,
|
|
2020
|
+
re as ComparisonAnswer,
|
|
2021
|
+
Qe as ComparisonAnswerSchema,
|
|
2022
|
+
ge as ConfirmationAnswer,
|
|
2023
|
+
ia as ConfirmationAnswerSchema,
|
|
2024
|
+
ye as DecisionAnswer,
|
|
2025
|
+
ma as DecisionAnswerSchema,
|
|
2026
|
+
pe as EmptyAnswer,
|
|
2027
|
+
sa as EmptyAnswerSchema,
|
|
1989
2028
|
be as ErrorAnswer,
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2029
|
+
oa as ErrorAnswerSchema,
|
|
2030
|
+
oe as ExplanationAnswer,
|
|
2031
|
+
Ue as ExplanationAnswerSchema,
|
|
2032
|
+
ce as FactAnswer,
|
|
2033
|
+
aa as FactAnswerSchema,
|
|
2034
|
+
Q as FollowUpQuestion,
|
|
2035
|
+
fe as KnowledgeAnswer,
|
|
2036
|
+
ca as KnowledgeAnswerSchema,
|
|
2037
|
+
de as NarrativeAnswer,
|
|
2038
|
+
ea as NarrativeAnswerSchema,
|
|
2039
|
+
he as RankingAnswer,
|
|
2040
|
+
ra as RankingAnswerSchema,
|
|
2041
|
+
xe as RefusalAnswer,
|
|
2042
|
+
da as RefusalAnswerSchema,
|
|
2043
|
+
Ne as ReportAnswer,
|
|
2044
|
+
ga as ReportAnswerSchema,
|
|
2045
|
+
le as StatusAnswer,
|
|
2046
|
+
Je as StatusAnswerSchema,
|
|
2047
|
+
me as TableAnswer,
|
|
2048
|
+
na as TableAnswerSchema,
|
|
2049
|
+
ie as TrendAnswer,
|
|
2050
|
+
Xe as TrendAnswerSchema,
|
|
2051
|
+
$a as answerTool
|
|
2012
2052
|
};
|