@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
@@ -56,7 +56,7 @@ const z = ({ open: s, onOpenChange: i }) => {
56
56
  side: "bottom",
57
57
  align: "start",
58
58
  sideOffset: 6,
59
- className: "aui-action-bar-more-content bg-popover/95 text-popover-foreground data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:animate-out data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-xl border p-1.5 shadow-lg backdrop-blur-sm",
59
+ className: "aui-action-bar-more-content bg-popover/95 text-popover-foreground data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:animate-out data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-xl border p-1.5 shadow-300 backdrop-blur-sm",
60
60
  children: [
61
61
  /* @__PURE__ */ t(
62
62
  n.Item,
@@ -8,7 +8,7 @@ import { Plus as _, FileText as h, WarningCircle as R, At as L, Bolt as S, Close
8
8
  import { Spinner as v } from "../spinner.js";
9
9
  import { CONTEXT_MIME as D } from "./composer-add-context.js";
10
10
  import { HARNESS_MIME as F } from "./composer-harness.js";
11
- import { ComposerPrimitive as z, useComposerRuntime as k, MessagePrimitive as M, useAui as O, useAuiState as l, AttachmentPrimitive as s } from "@assistant-ui/react";
11
+ import { ComposerPrimitive as z, useComposerRuntime as j, MessagePrimitive as M, useAui as O, useAuiState as l, AttachmentPrimitive as s } from "@assistant-ui/react";
12
12
  import { useShallow as H } from "zustand/shallow";
13
13
  import { Tooltip as $, TooltipTrigger as q, TooltipContent as B } from "../ui/tooltip.js";
14
14
  import { Dialog as G, DialogTrigger as W, DialogContent as X, DialogTitle as Y } from "../ui/dialog.js";
@@ -27,7 +27,7 @@ const V = (a) => {
27
27
  URL.revokeObjectURL(n);
28
28
  };
29
29
  }, [a]), t;
30
- }, j = () => {
30
+ }, k = () => {
31
31
  const { file: a, src: t } = l(
32
32
  H((r) => {
33
33
  var c, m;
@@ -71,7 +71,7 @@ const V = (a) => {
71
71
  }
72
72
  );
73
73
  }, ee = ({ children: a }) => {
74
- const t = j();
74
+ const t = k();
75
75
  return t ? /* @__PURE__ */ i(G, { children: [
76
76
  /* @__PURE__ */ e(
77
77
  W,
@@ -87,7 +87,7 @@ const V = (a) => {
87
87
  ] })
88
88
  ] }) : a;
89
89
  }, te = () => {
90
- const a = j();
90
+ const a = k();
91
91
  return /* @__PURE__ */ i(J, { className: "aui-attachment-tile-avatar h-full w-full rounded-none", children: [
92
92
  /* @__PURE__ */ e(
93
93
  K,
@@ -219,7 +219,7 @@ const V = (a) => {
219
219
  f,
220
220
  {
221
221
  tooltip: "Remove file",
222
- className: "aui-attachment-tile-remove text-muted-foreground hover:[&_svg]:text-destructive absolute end-1.5 top-1.5 size-3.5 rounded-full bg-white opacity-100 shadow-sm hover:bg-white! [&_svg]:text-black",
222
+ className: "aui-attachment-tile-remove text-muted-foreground hover:[&_svg]:text-destructive absolute end-1.5 top-1.5 size-3.5 rounded-full bg-card opacity-100 shadow-100 hover:bg-card! [&_svg]:text-foreground",
223
223
  side: "top",
224
224
  children: /* @__PURE__ */ e(T, { className: "aui-attachment-remove-icon size-3" })
225
225
  }
@@ -299,8 +299,8 @@ class ze {
299
299
  async remove() {
300
300
  }
301
301
  }
302
- const ke = () => {
303
- const a = k(), t = w(null), r = (n) => {
302
+ const je = () => {
303
+ const a = j(), t = w(null), r = (n) => {
304
304
  if (n != null && n.length)
305
305
  for (const c of Array.from(n))
306
306
  c.type.startsWith("image/") && !se.has(c.type) || a.addAttachment(c);
@@ -337,8 +337,8 @@ const ke = () => {
337
337
  }
338
338
  )
339
339
  ] });
340
- }, je = () => {
341
- const a = k(), t = w(null);
340
+ }, ke = () => {
341
+ const a = j(), t = w(null);
342
342
  return /* @__PURE__ */ i(N, { children: [
343
343
  /* @__PURE__ */ e(
344
344
  "input",
@@ -378,8 +378,8 @@ export {
378
378
  b as ACTIONEER_FILE_ACCEPT,
379
379
  ze as ActioneerFileAttachmentAdapter,
380
380
  Te as ComposerAddAttachment,
381
- je as ComposerAddDocument,
382
- ke as ComposerAddImage,
381
+ ke as ComposerAddDocument,
382
+ je as ComposerAddImage,
383
383
  Re as ComposerAttachments,
384
384
  Ce as UserMessageAttachments
385
385
  };
@@ -1,9 +1,9 @@
1
1
  "use client";
2
- import { jsx as d } from "react/jsx-runtime";
3
- import { Slot as s } from "radix-ui";
4
- import { cva as g } from "class-variance-authority";
5
- import { cn as u } from "../../lib/cn.js";
6
- const i = g(
2
+ import { jsx as s } from "react/jsx-runtime";
3
+ import { Slot as g } from "radix-ui";
4
+ import { cva as d } from "class-variance-authority";
5
+ import { cn as i } from "../../lib/cn.js";
6
+ const c = d(
7
7
  "inline-flex items-center justify-center gap-1 rounded-md text-xs font-medium transition-colors [&_svg]:size-3 [&_svg]:shrink-0",
8
8
  {
9
9
  variants: {
@@ -12,10 +12,10 @@ const i = g(
12
12
  secondary: "bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/80",
13
13
  muted: "bg-muted text-muted-foreground [a&]:hover:bg-accent [a&]:hover:text-foreground",
14
14
  ghost: "text-muted-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground bg-transparent",
15
- info: "bg-blue-100 text-blue-700 [a&]:hover:bg-blue-100/80",
16
- warning: "bg-amber-100 text-amber-700 [a&]:hover:bg-amber-100/80",
17
- success: "bg-emerald-100 text-emerald-700 [a&]:hover:bg-emerald-100/80",
18
- destructive: "bg-red-100 text-red-700 [a&]:hover:bg-red-100/80"
15
+ info: "bg-info-100 text-info-700 [a&]:hover:bg-info-100/80",
16
+ warning: "bg-warning-100 text-warning-700 [a&]:hover:bg-warning-100/80",
17
+ success: "bg-success-100 text-success-700 [a&]:hover:bg-success-100/80",
18
+ destructive: "bg-danger-100 text-danger-700 [a&]:hover:bg-danger-100/80"
19
19
  },
20
20
  size: {
21
21
  sm: "px-1.5 py-0.5",
@@ -29,26 +29,26 @@ const i = g(
29
29
  }
30
30
  }
31
31
  );
32
- function l({
32
+ function x({
33
33
  className: r,
34
34
  variant: e,
35
35
  size: t,
36
36
  asChild: a = !1,
37
- ...o
37
+ ...n
38
38
  }) {
39
- const n = a ? s.Root : "span";
40
- return /* @__PURE__ */ d(
41
- n,
39
+ const o = a ? g.Root : "span";
40
+ return /* @__PURE__ */ s(
41
+ o,
42
42
  {
43
43
  "data-slot": "badge",
44
44
  "data-variant": e,
45
45
  "data-size": t,
46
- className: u(i({ variant: e, size: t }), r),
47
- ...o
46
+ className: i(c({ variant: e, size: t }), r),
47
+ ...n
48
48
  }
49
49
  );
50
50
  }
51
51
  export {
52
- l as Badge,
53
- i as badgeVariants
52
+ x as Badge,
53
+ c as badgeVariants
54
54
  };
@@ -1,11 +1,10 @@
1
1
  "use client";
2
2
  var c = Object.defineProperty;
3
3
  var l = (r, t, o) => t in r ? c(r, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : r[t] = o;
4
- var n = (r, t, o) => l(r, typeof t != "symbol" ? t + "" : t, o);
5
- import { jsxs as p, jsx as e } from "react/jsx-runtime";
4
+ var p = (r, t, o) => l(r, typeof t != "symbol" ? t + "" : t, o);
5
+ import { jsxs as n, jsx as e } from "react/jsx-runtime";
6
6
  import { useComposerRuntime as d, useComposer as u } from "@assistant-ui/react";
7
- import "clsx";
8
- import "tailwind-merge";
7
+ import "../../lib/cn.js";
9
8
  import "../../lib/interactive.js";
10
9
  import "../ui/tooltip.js";
11
10
  import "../button.js";
@@ -13,7 +12,6 @@ import "../spinner.js";
13
12
  import "../reveal.js";
14
13
  import "../field.js";
15
14
  import "../typography.js";
16
- import "../link.js";
17
15
  import "../divider.js";
18
16
  import "../kbd.js";
19
17
  import "../code-block.js";
@@ -61,19 +59,20 @@ import "../badge.js";
61
59
  import "../chip.js";
62
60
  import "../timeline.js";
63
61
  import "../alert.js";
62
+ import "../surface-loader.js";
64
63
  import "../pixel-blast-svg.js";
65
- import "../pixel-icon.js";
66
- import "../agent-icon.js";
67
64
  import "../brand-texture.js";
68
65
  import "../progress.js";
69
66
  import "../progress-circle.js";
70
67
  import "../skeleton.js";
71
68
  import "../empty-state.js";
69
+ import "../body-page-header.js";
70
+ import "../collection-header.js";
72
71
  import "../page-header.js";
73
- import "../navbar.js";
74
72
  import "../breadcrumbs.js";
75
73
  import "../pagination.js";
76
74
  import "../sidebar.js";
75
+ import "../page-body.js";
77
76
  import "../panel.js";
78
77
  import "../collapsible.js";
79
78
  import "../selection-action-bar.js";
@@ -85,13 +84,9 @@ import "../ai-elements/inline-citation.js";
85
84
  import "../ai-elements/message.js";
86
85
  import "../ai-elements/research-activity.js";
87
86
  import "../ai-elements/shimmer.js";
88
- import "../ai-elements/task.js";
89
- import "../ai-elements/task-progress.js";
90
87
  import "../ai-elements/tool.js";
91
- import "../ai-elements/voice.js";
92
88
  import "./composer.js";
93
89
  import "./answer-tool-ui.js";
94
- import "./follow-up-suggestions.js";
95
90
  import "./message.js";
96
91
  import "./selection-toolbar.js";
97
92
  import "../ui/button.js";
@@ -131,7 +126,7 @@ const m = "application/x-actioneer-harness", S = [
131
126
  instructions: "Write a concise executive brief: lead with the decision or insight, use only decision-relevant evidence, and end with the recommended next action."
132
127
  }
133
128
  ];
134
- function Di() {
129
+ function xi() {
135
130
  const r = d(), t = u((i) => i.attachments), o = new Set(
136
131
  t.filter((i) => i.contentType === m).map((i) => i.name)
137
132
  ), s = (i) => {
@@ -139,8 +134,8 @@ function Di() {
139
134
  new File([i.instructions], `${i.label}.harness`, { type: m })
140
135
  );
141
136
  };
142
- return /* @__PURE__ */ p(b, { children: [
143
- /* @__PURE__ */ e(v, { children: /* @__PURE__ */ p(
137
+ return /* @__PURE__ */ n(b, { children: [
138
+ /* @__PURE__ */ e(v, { children: /* @__PURE__ */ n(
144
139
  "button",
145
140
  {
146
141
  type: "button",
@@ -159,7 +154,7 @@ function Di() {
159
154
  ]
160
155
  }
161
156
  ) }),
162
- /* @__PURE__ */ p(y, { side: "top", align: "start", className: "w-56", autoFocusFirstItem: !1, children: [
157
+ /* @__PURE__ */ n(y, { side: "top", align: "start", className: "w-56", autoFocusFirstItem: !1, children: [
163
158
  /* @__PURE__ */ e(x, { children: "Add a harness" }),
164
159
  S.map((i) => /* @__PURE__ */ e(
165
160
  w,
@@ -174,9 +169,9 @@ function Di() {
174
169
  ] })
175
170
  ] });
176
171
  }
177
- class Ei {
172
+ class wi {
178
173
  constructor() {
179
- n(this, "accept", m);
174
+ p(this, "accept", m);
180
175
  }
181
176
  async add(t) {
182
177
  return {
@@ -207,7 +202,7 @@ ${o}
207
202
  }
208
203
  }
209
204
  export {
210
- Di as ComposerHarness,
205
+ xi as ComposerHarness,
211
206
  m as HARNESS_MIME,
212
- Ei as HarnessAttachmentAdapter
207
+ wi as HarnessAttachmentAdapter
213
208
  };
@@ -47,7 +47,7 @@ const _ = ({
47
47
  loadingLabel: a
48
48
  }) => {
49
49
  const { isLoading: l } = N();
50
- return /* @__PURE__ */ e(n.Unstable_TriggerPopoverItems, { children: (g) => /* @__PURE__ */ s(
50
+ return /* @__PURE__ */ e(n.Unstable_TriggerPopoverItems, { children: (p) => /* @__PURE__ */ s(
51
51
  "div",
52
52
  {
53
53
  "data-slot": "composer-trigger-popover-items",
@@ -58,9 +58,9 @@ const _ = ({
58
58
  i
59
59
  ] }),
60
60
  /* @__PURE__ */ s("div", { className: "py-1", children: [
61
- g.map((t, m) => {
61
+ p.map((t, m) => {
62
62
  var d;
63
- const p = typeof ((d = t.metadata) == null ? void 0 : d.icon) == "string" ? t.metadata.icon : void 0, v = x(p, o, r);
63
+ const g = typeof ((d = t.metadata) == null ? void 0 : d.icon) == "string" ? t.metadata.icon : void 0, v = x(g, o, r);
64
64
  return /* @__PURE__ */ s(
65
65
  n.Unstable_TriggerPopoverItem,
66
66
  {
@@ -78,7 +78,7 @@ const _ = ({
78
78
  t.id
79
79
  );
80
80
  }),
81
- g.length === 0 && /* @__PURE__ */ s(
81
+ p.length === 0 && /* @__PURE__ */ s(
82
82
  "div",
83
83
  {
84
84
  role: l ? "status" : void 0,
@@ -100,19 +100,19 @@ const _ = ({
100
100
  emptyCategoriesLabel: c = "No items available",
101
101
  emptyItemsLabel: a = "No matching items",
102
102
  loadingLabel: l = "Loading…",
103
- className: g,
103
+ className: p,
104
104
  directive: t,
105
105
  action: m,
106
- ...p
106
+ ...g
107
107
  }) => (b(!1), /* @__PURE__ */ s(
108
108
  n.Unstable_TriggerPopover,
109
109
  {
110
110
  "data-slot": "composer-trigger-popover",
111
111
  className: I(
112
- "aui-composer-trigger-popover bg-popover text-popover-foreground absolute start-0 bottom-full z-50 mb-2 w-64 overflow-hidden rounded-xl border shadow-lg",
113
- g
112
+ "aui-composer-trigger-popover bg-popover text-popover-foreground absolute start-0 bottom-full z-50 mb-2 w-64 overflow-hidden rounded-xl border shadow-300",
113
+ p
114
114
  ),
115
- ...p,
115
+ ...g,
116
116
  children: [
117
117
  t ? /* @__PURE__ */ e(
118
118
  n.Unstable_TriggerPopover.Directive,
@@ -4,5 +4,7 @@ export declare function ComposerPlaceholdersProvider({ prompts, children, }: {
4
4
  prompts?: string[];
5
5
  children: React.ReactNode;
6
6
  }): React.JSX.Element;
7
- export declare const Composer: FC;
7
+ export declare const Composer: FC<{
8
+ autoFocus?: boolean;
9
+ }>;
8
10
  export declare const EditComposer: FC;