@actioneer/ads 0.6.0 → 0.8.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.
Files changed (123) hide show
  1. package/DESIGN.md +597 -0
  2. package/components/ai-elements/agent-trace.d.ts +2 -2
  3. package/components/ai-elements/agent-trace.js +164 -105
  4. package/components/ai-elements/chain-of-thought.d.ts +2 -2
  5. package/components/ai-elements/chain-of-thought.js +1 -1
  6. package/components/ai-elements/index.d.ts +0 -5
  7. package/components/ai-elements/inline-citation.js +1 -1
  8. package/components/alert.d.ts +6 -6
  9. package/components/alert.js +89 -53
  10. package/components/answer-sources.d.ts +2 -6
  11. package/components/answer-sources.js +58 -60
  12. package/components/answer.d.ts +5 -0
  13. package/components/answer.js +311 -271
  14. package/components/assistant-ui/action-bar.js +1 -1
  15. package/components/assistant-ui/attachment.js +11 -11
  16. package/components/assistant-ui/badge.js +18 -18
  17. package/components/assistant-ui/composer-harness.js +15 -20
  18. package/components/assistant-ui/composer-trigger-popover.js +9 -9
  19. package/components/assistant-ui/composer.d.ts +3 -1
  20. package/components/assistant-ui/composer.js +148 -144
  21. package/components/assistant-ui/image.js +61 -61
  22. package/components/assistant-ui/index.d.ts +0 -3
  23. package/components/assistant-ui/message-timing.js +1 -1
  24. package/components/assistant-ui/selection-toolbar.js +7 -7
  25. package/components/assistant-ui/thread-context.d.ts +3 -1
  26. package/components/assistant-ui/thread.js +50 -42
  27. package/components/avatar.js +42 -42
  28. package/components/badge.d.ts +5 -6
  29. package/components/badge.js +13 -76
  30. package/components/body-page-header.d.ts +15 -0
  31. package/components/body-page-header.js +24 -0
  32. package/components/brand-loader.d.ts +0 -3
  33. package/components/brand-loader.js +10 -32
  34. package/components/breadcrumbs.d.ts +0 -7
  35. package/components/breadcrumbs.js +54 -71
  36. package/components/button.d.ts +1 -1
  37. package/components/button.js +55 -49
  38. package/components/chart.js +298 -296
  39. package/components/chip.d.ts +13 -1
  40. package/components/chip.js +93 -80
  41. package/components/collection-header.d.ts +17 -0
  42. package/components/collection-header.js +31 -0
  43. package/components/connector-card.d.ts +6 -6
  44. package/components/connector-card.js +31 -32
  45. package/components/date-range-picker.d.ts +2 -1
  46. package/components/date-range-picker.js +158 -122
  47. package/components/divider.js +25 -25
  48. package/components/drawer.d.ts +6 -2
  49. package/components/drawer.js +61 -58
  50. package/components/dropdown.d.ts +1 -2
  51. package/components/dropdown.js +88 -89
  52. package/components/field.js +41 -36
  53. package/components/file-dropzone.js +1 -1
  54. package/components/index.d.ts +4 -4
  55. package/components/index.js +501 -549
  56. package/components/infinite-canvas.js +24 -24
  57. package/components/input-field.d.ts +18 -3
  58. package/components/input-field.js +88 -72
  59. package/components/input.js +32 -29
  60. package/components/modal.d.ts +31 -3
  61. package/components/modal.js +244 -170
  62. package/components/number-field.js +45 -42
  63. package/components/page-body.d.ts +12 -0
  64. package/components/page-body.js +18 -0
  65. package/components/pagination.js +36 -36
  66. package/components/pixel-blast-svg.js +71 -73
  67. package/components/select.d.ts +21 -0
  68. package/components/select.js +189 -148
  69. package/components/setting-row.d.ts +6 -5
  70. package/components/setting-row.js +33 -32
  71. package/components/sidebar.d.ts +2 -0
  72. package/components/sidebar.js +151 -141
  73. package/components/skeleton.js +8 -7
  74. package/components/slider.js +1 -1
  75. package/components/surface-loader.d.ts +11 -0
  76. package/components/surface-loader.js +35 -0
  77. package/components/table.d.ts +16 -10
  78. package/components/table.js +427 -412
  79. package/components/tabs.d.ts +2 -0
  80. package/components/tabs.js +160 -295
  81. package/components/textarea.js +9 -9
  82. package/components/toast.d.ts +1 -1
  83. package/components/toast.js +181 -118
  84. package/components/tree.d.ts +5 -1
  85. package/components/tree.js +54 -49
  86. package/components/typography.d.ts +4 -4
  87. package/components/typography.js +13 -13
  88. package/components/ui/button.d.ts +1 -1
  89. package/components/ui/button.js +4 -4
  90. package/components/ui/dialog.js +25 -25
  91. package/demo/components/add-to-artifact.js +6 -10
  92. package/lib/cn.js +11 -4
  93. package/lib/icons.d.ts +4 -0
  94. package/lib/icons.js +103 -102
  95. package/lib/interactive.d.ts +1 -1
  96. package/llms.txt +132 -188
  97. package/manifest.json +1719 -2831
  98. package/package.json +2 -2
  99. package/styles.css +362 -233
  100. package/theme.css +312 -177
  101. package/components/agent-icon.d.ts +0 -76
  102. package/components/agent-icon.js +0 -265
  103. package/components/ai-elements/queue.d.ts +0 -60
  104. package/components/ai-elements/queue.js +0 -193
  105. package/components/ai-elements/speech-input.d.ts +0 -16
  106. package/components/ai-elements/speech-input.js +0 -151
  107. package/components/ai-elements/task-progress.d.ts +0 -41
  108. package/components/ai-elements/task-progress.js +0 -224
  109. package/components/ai-elements/task.d.ts +0 -39
  110. package/components/ai-elements/task.js +0 -105
  111. package/components/ai-elements/voice.d.ts +0 -90
  112. package/components/ai-elements/voice.js +0 -496
  113. package/components/assistant-ui/follow-up-suggestions.d.ts +0 -11
  114. package/components/assistant-ui/follow-up-suggestions.js +0 -72
  115. package/components/assistant-ui/suggestions.d.ts +0 -7
  116. package/components/assistant-ui/suggestions.js +0 -19
  117. package/components/assistant-ui/voice.d.ts +0 -18
  118. package/components/link.d.ts +0 -14
  119. package/components/link.js +0 -72
  120. package/components/navbar.d.ts +0 -15
  121. package/components/navbar.js +0 -68
  122. package/components/pixel-icon.d.ts +0 -37
  123. package/components/pixel-icon.js +0 -859
@@ -1,38 +1,64 @@
1
1
  "use client";
2
- import { jsxs as n, jsx as t, Fragment as D } from "react/jsx-runtime";
3
- import * as b from "react";
4
- import { cva as H } from "class-variance-authority";
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 Ne } from "./button.js";
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 we, PopoverTrigger as ve, PopoverContent as ke } from "./popover.js";
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 p } from "./skeleton.js";
16
- import { Table as Le, TableHeader as ze, TableRow as B, TableColumn as De, TableBody as qe, TableCell as M } from "./table.js";
17
- import { Check as q, Minus as Be, WarningCircle as Ke, Clock as Ee, Database as Fe } from "../lib/icons.js";
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 We = "render_answer", Pe = "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.", N = e.enum([
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
- ]), $e = e.object({
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
- }), Ve = e.object({
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
- }), Me = e.object({
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
- }), _e = e.union([
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(_e).max(6), P = e.object({
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
- }), Q = e.object({
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($e).max(3).optional(),
79
- sources: e.array(Me).max(8).optional()
80
- }, _ = e.object({
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
- }), Ie = e.object({
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
- }), K = e.enum([
129
+ }), F = e.enum([
104
130
  "primary",
105
131
  "success",
106
132
  "warning",
107
133
  "danger",
108
134
  "info"
109
- ]), He = e.discriminatedUnion("kind", [
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: K.optional()
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: K.optional()
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: K.optional()
157
+ color: F.optional()
132
158
  })
133
- ]), Qe = e.record(
159
+ ]), Ge = e.record(
134
160
  e.string(),
135
161
  e.union([e.string(), e.number(), e.null()])
136
- ), Y = e.object({
162
+ ), G = e.object({
137
163
  type: e.enum(["line", "area", "bar"]),
138
- data: e.array(Qe).min(1).max(100),
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(He).max(8).optional()
146
- }), Ye = e.object({
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: Y,
181
+ chart: G,
156
182
  insight: v.optional()
157
- }), Ge = e.object({
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
- }), Xe = e.object({
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
- }), Je = e.object({
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
- }), Ze = e.object({
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
- }), Ue = e.object({
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(Q).max(6).optional(),
258
+ facts: e.array(Y).max(6).optional(),
233
259
  citations: S.optional(),
234
260
  insight: v.optional()
235
- }), ea = e.union([
261
+ }), ta = e.union([
236
262
  e.string(),
237
263
  e.object({ value: e.string(), tone: N.optional() })
238
- ]), G = {
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(), ea),
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
- }, aa = e.object({
286
+ }, na = e.object({
261
287
  ...x,
262
288
  kind: e.literal("table"),
263
- ...G,
289
+ ...X,
264
290
  insight: v.optional()
265
- }), ta = e.object({
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
- }), na = e.object({
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(P).max(8).optional().describe("What was added or configured, as label–value pairs"),
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
- }), ra = e.object({
330
+ }), la = e.object({
305
331
  ...x,
306
332
  kind: e.literal("clarification"),
307
- findings: e.array(P).max(6).optional().describe("What was already established — the facts that framed the ask"),
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(Ve).min(1).max(4).optional()
310
- }), ia = e.object({
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
- }), la = e.object({
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
- }), sa = e.object({
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
- }), oa = e.object({
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(P).max(6).optional()
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
- }), da = e.object({
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
- }), ca = e.discriminatedUnion("type", [
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(Q).min(2).max(4)
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
- ...G
430
+ ...X
405
431
  }),
406
432
  e.object({
407
433
  type: e.literal("chart"),
408
434
  title: e.string().optional(),
409
- chart: Y,
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
- ]), ma = e.object({
445
+ ]), ga = e.object({
420
446
  ...x,
421
447
  kind: e.literal("report"),
422
- sections: e.array(ca).min(2).max(8),
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
- }), ha = e.discriminatedUnion("kind", [
425
- Ie,
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
- ma
442
- ]), Fa = [
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
- ], Wa = {
461
- name: We,
462
- description: Pe,
463
- inputSchema: ha
464
- }, A = H("font-medium tabular-nums text-foreground", {
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
- }), $ = H("", {
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
- }), ga = new Intl.NumberFormat("en-US", {
514
+ }), pa = new Intl.NumberFormat("en-US", {
489
515
  notation: "compact",
490
516
  maximumFractionDigits: 1
491
- }), X = (a) => a === "success" || a === "warning" || a === "danger" || a === "info" ? a : "default", ua = (a) => a === "success" || a === "warning" || a === "danger" || a === "info" ? a : "primary", J = b.createContext(void 0);
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: X(a.tone),
508
- className: "border border-border bg-card",
533
+ variant: J(a.tone),
534
+ className: "border border-wg3 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 W({
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 Z = (a) => typeof a == "string" ? { label: a } : a, ba = (a) => a == null ? void 0 : a.split(" · ")[0], E = "inline-flex items-center gap-1 rounded-md px-2 py-0.5 font-mono text-xs tabular-nums", I = "cursor-pointer bg-info-50 text-info-700 outline-none transition-colors hover:bg-info-100 focus-visible:ring-3 focus-visible:ring-info/40 active:scale-[0.97]";
531
- function F({ citation: a }) {
532
- const l = ba(a.source);
533
- return /* @__PURE__ */ n(D, { children: [
534
- /* @__PURE__ */ t(Fe, { "aria-hidden": !0, className: "size-3 shrink-0" }),
535
- /* @__PURE__ */ t("span", { children: a.label }),
536
- l && /* @__PURE__ */ n("span", { className: "max-w-[12ch] truncate font-normal", children: [
537
- "· ",
538
- l
539
- ] }),
540
- a.rows != null && /* @__PURE__ */ n("span", { className: "font-normal", children: [
541
- "· ",
542
- a.rows.toLocaleString()
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 U({ citation: a }) {
547
- const l = b.useContext(J), c = !!(a.query || a.source || a.rows != null);
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: g(E, I),
591
+ className: _,
553
592
  "aria-label": `Inspect the query behind ${a.label}`,
554
593
  onClick: () => l(a),
555
- children: /* @__PURE__ */ t(F, { citation: a })
594
+ children: /* @__PURE__ */ t(K, { citation: a })
556
595
  }
557
- ) : c ? /* @__PURE__ */ n(we, { children: [
558
- /* @__PURE__ */ t(ve, { children: /* @__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: g(E, I),
601
+ className: _,
563
602
  "aria-label": `Show the query behind ${a.label}`,
564
- children: /* @__PURE__ */ t(F, { citation: a })
603
+ children: /* @__PURE__ */ t(K, { citation: a })
565
604
  }
566
605
  ) }),
567
606
  /* @__PURE__ */ n(
568
- ke,
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("span", { className: g(E, "bg-surface text-tertiary"), children: /* @__PURE__ */ t(F, { citation: a }) });
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 = Z(c);
603
- return /* @__PURE__ */ t(U, { citation: m }, `${m.label}-${d}`);
641
+ const m = U(c);
642
+ return /* @__PURE__ */ t(ee, { citation: m }, `${m.label}-${d}`);
604
643
  }) }) : null;
605
644
  }
606
- function ee({
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 pa({ items: a }) {
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 ae({
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 ? $({ tone: h }) : "text-foreground",
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(B, { children: a.columns.map((o) => /* @__PURE__ */ t(De, { align: o.align, children: o.label }, o.key)) }) }),
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(B, { children: a.columns.map((r, i) => /* @__PURE__ */ t(M, { align: r.align, children: m(
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(B, { children: a.columns.map((o, h) => {
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(M, { align: o.align, children: /* @__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 te({ chart: a }) {
694
- const l = b.useMemo(
695
- () => a.unit ? (d) => `${ga.format(d)}${a.unit}` : void 0,
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(D, { children: [
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(b.Fragment, { children: [
763
+ l == null ? void 0 : l.map((s, u) => /* @__PURE__ */ n(p.Fragment, { children: [
725
764
  " ",
726
- /* @__PURE__ */ t(U, { citation: Z(s) })
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
- Ne,
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
- Ae,
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 ne = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
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-surface", children: [
876
+ return /* @__PURE__ */ n("tr", { className: "[&>*]:bg-wg2", 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
- ne.displayName = "ComparisonAnswer";
892
- const re = b.forwardRef(
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(te, { chart: a.chart }),
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
- re.displayName = "TrendAnswer";
933
- const ie = b.forwardRef(
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
- ie.displayName = "StatusAnswer";
974
- const le = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
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: ua(r.tone),
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
- le.displayName = "BreakdownAnswer";
1029
- const se = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => /* @__PURE__ */ n(
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
- se.displayName = "ExplanationAnswer";
1080
- const oe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
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(W, { text: a.lead, className: "text-base" }),
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: X(i.tone),
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(W, { text: i.body, lead: i.lead }),
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
- oe.displayName = "NarrativeAnswer";
1168
- const de = b.forwardRef(
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
- de.displayName = "FactAnswer";
1225
- const ce = b.forwardRef(
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(ae, { table: a, caption: a.headline }),
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
- ce.displayName = "TableAnswer";
1250
- const me = b.forwardRef(
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
- $({ tone: r.delta.tone }),
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
- me.displayName = "RankingAnswer";
1335
- const xa = {
1336
- done: /* @__PURE__ */ t(q, { "aria-hidden": !0, className: "text-success-700" }),
1337
- pending: /* @__PURE__ */ t(Ee, { "aria-hidden": !0, className: "text-tertiary" }),
1338
- failed: /* @__PURE__ */ t(Ke, { "aria-hidden": !0, className: "text-danger-700" }),
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
- }, fa = {
1379
+ }, Na = {
1341
1380
  done: "Done",
1342
1381
  pending: "Pending",
1343
1382
  failed: "Failed",
1344
1383
  skipped: "Skipped"
1345
- }, he = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
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(ee, { items: a.changes }),
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: xa[s.status] }),
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
- fa[s.status]
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(q, { "aria-hidden": !0, className: "size-3.5 shrink-0 text-success-700" }),
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
- he.displayName = "ConfirmationAnswer";
1419
- const ge = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
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(ee, { items: a.findings }),
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
- ge.displayName = "ClarificationAnswer";
1466
- const ue = b.forwardRef(
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 ? $({ tone: i.tone }) : "text-tertiary"
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
- ue.displayName = "EmptyAnswer";
1521
- const ya = {
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 = b.forwardRef(
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: ya[s.owner] })
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 pe = b.forwardRef(
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(q, { "aria-hidden": !0, className: "mt-1 size-4 shrink-0 text-success-700" }),
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
- pe.displayName = "RefusalAnswer";
1643
- const xe = b.forwardRef(({ spec: a, onFollowUp: l, onOptionSelect: c, onSourceSelect: d, className: m, ...o }, h) => {
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(q, { "aria-hidden": !0, className: "size-3.5 shrink-0 text-success-700" }),
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
- xe.displayName = "KnowledgeAnswer";
1709
- const fe = b.forwardRef(
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, V;
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
- !!((V = i.cons) != null && V.length) && /* @__PURE__ */ t("ul", { className: "space-y-1.5", children: i.cons.map((C) => /* @__PURE__ */ n(
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
- fe.displayName = "DecisionAnswer";
1793
- const ye = b.forwardRef(
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(W, { text: i.body }),
1808
- i.type === "metrics" && /* @__PURE__ */ t(pa, { items: i.items }),
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
- ae,
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(D, { children: [
1817
- /* @__PURE__ */ t(te, { chart: i.chart }),
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
- ye.displayName = "ReportAnswer";
1870
- const Na = b.forwardRef(
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(p, { className: "h-3 w-24" }),
1885
- /* @__PURE__ */ t(p, { className: "h-7 w-4/5" }),
1886
- /* @__PURE__ */ t(p, { className: "h-4 w-full" })
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(p, { className: "h-56 w-full rounded-2xl" }),
1889
- m === "tiles" && /* @__PURE__ */ n(D, { children: [
1890
- /* @__PURE__ */ t(p, { className: "h-24 w-full rounded-2xl" }),
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(p, { className: "h-16 rounded-xl" }),
1893
- /* @__PURE__ */ t(p, { className: "h-16 rounded-xl" })
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(p, { className: "h-48 w-full rounded-2xl" }),
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(p, { className: "h-12 w-full rounded-xl" }),
1899
- /* @__PURE__ */ t(p, { className: "h-12 w-full rounded-xl" }),
1900
- /* @__PURE__ */ t(p, { className: "h-12 w-full rounded-xl" })
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(p, { className: "h-4 w-full" }),
1904
- /* @__PURE__ */ t(p, { className: "h-4 w-full" }),
1905
- /* @__PURE__ */ t(p, { className: "h-4 w-11/12" }),
1906
- /* @__PURE__ */ t(p, { className: "h-4 w-full" }),
1907
- /* @__PURE__ */ t(p, { className: "h-4 w-4/5" })
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(p, { className: "h-48 w-full rounded-2xl" })
1948
+ m === "block" && /* @__PURE__ */ t(b, { className: "h-48 w-full rounded-2xl" })
1910
1949
  ]
1911
1950
  }
1912
1951
  );
1913
1952
  }
1914
1953
  );
1915
- Na.displayName = "AnswerSkeleton";
1916
- const wa = b.forwardRef(
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 "status":
1961
+ case "trend":
1925
1962
  return /* @__PURE__ */ t(ie, { ref: d, spec: a, ...c });
1926
- case "breakdown":
1963
+ case "status":
1927
1964
  return /* @__PURE__ */ t(le, { ref: d, spec: a, ...c });
1928
- case "explanation":
1965
+ case "breakdown":
1929
1966
  return /* @__PURE__ */ t(se, { ref: d, spec: a, ...c });
1930
- case "narrative":
1967
+ case "explanation":
1931
1968
  return /* @__PURE__ */ t(oe, { ref: d, spec: a, ...c });
1932
- case "fact":
1969
+ case "narrative":
1933
1970
  return /* @__PURE__ */ t(de, { ref: d, spec: a, ...c });
1934
- case "table":
1971
+ case "fact":
1935
1972
  return /* @__PURE__ */ t(ce, { ref: d, spec: a, ...c });
1936
- case "ranking":
1973
+ case "table":
1937
1974
  return /* @__PURE__ */ t(me, { ref: d, spec: a, ...c });
1938
- case "confirmation":
1975
+ case "ranking":
1939
1976
  return /* @__PURE__ */ t(he, { ref: d, spec: a, ...c });
1940
- case "clarification":
1977
+ case "confirmation":
1941
1978
  return /* @__PURE__ */ t(ge, { ref: d, spec: a, ...c });
1942
- case "empty":
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 "decision":
1987
+ case "knowledge":
1951
1988
  return /* @__PURE__ */ t(fe, { ref: d, spec: a, ...c });
1952
- case "report":
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(J.Provider, { value: l, children: m });
1995
+ return /* @__PURE__ */ t(Z.Provider, { value: l, children: m });
1957
1996
  }
1958
1997
  );
1959
- wa.displayName = "AnswerRenderer";
1998
+ ka.displayName = "AnswerRenderer";
1960
1999
  export {
1961
- Fa as ANSWER_KINDS,
1962
- Pe as ANSWER_TOOL_DESCRIPTION,
1963
- We as ANSWER_TOOL_NAME,
1964
- Y as AnswerChartSchema,
1965
- _e as AnswerCitationSchema,
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
- $e as AnswerFollowUpSchema,
1968
- P as AnswerKeyValueSchema,
1969
- Q as AnswerMetricSchema,
1970
- Ve as AnswerOptionSchema,
1971
- wa as AnswerRenderer,
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
- Na as AnswerSkeleton,
1974
- Me as AnswerSourceSchema,
1975
- ha as AnswerSpecSchema,
2012
+ va as AnswerSkeleton,
2013
+ Ie as AnswerSourceSchema,
2014
+ ua as AnswerSpecSchema,
1976
2015
  N as AnswerToneSchema,
1977
- le as BreakdownAnswer,
1978
- Xe as BreakdownAnswerSchema,
1979
- ge as ClarificationAnswer,
1980
- ra as ClarificationAnswerSchema,
1981
- ne as ComparisonAnswer,
1982
- Ie as ComparisonAnswerSchema,
1983
- he as ConfirmationAnswer,
1984
- na as ConfirmationAnswerSchema,
1985
- fe as DecisionAnswer,
1986
- da as DecisionAnswerSchema,
1987
- ue as EmptyAnswer,
1988
- ia as EmptyAnswerSchema,
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
- la as ErrorAnswerSchema,
1991
- se as ExplanationAnswer,
1992
- Je as ExplanationAnswerSchema,
1993
- de as FactAnswer,
1994
- Ue as FactAnswerSchema,
1995
- xe as KnowledgeAnswer,
1996
- oa as KnowledgeAnswerSchema,
1997
- oe as NarrativeAnswer,
1998
- Ze as NarrativeAnswerSchema,
1999
- me as RankingAnswer,
2000
- ta as RankingAnswerSchema,
2001
- pe as RefusalAnswer,
2002
- sa as RefusalAnswerSchema,
2003
- ye as ReportAnswer,
2004
- ma as ReportAnswerSchema,
2005
- ie as StatusAnswer,
2006
- Ge as StatusAnswerSchema,
2007
- ce as TableAnswer,
2008
- aa as TableAnswerSchema,
2009
- re as TrendAnswer,
2010
- Ye as TrendAnswerSchema,
2011
- Wa as answerTool
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
  };