@arbidocs/blocks 0.4.86 → 0.4.88

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 (99) hide show
  1. package/dist/activity/NotificationRelevanceControls.d.ts +47 -0
  2. package/dist/activity/WorkspaceActivityList.d.ts +34 -0
  3. package/dist/activity/index.d.ts +3 -0
  4. package/dist/activity/workspace-activity.d.ts +46 -0
  5. package/dist/agents/index.cjs +290 -286
  6. package/dist/agents/index.js +5 -5
  7. package/dist/agents/tasks/TaskActivityTimeline.d.ts +5 -0
  8. package/dist/agents/tasks/index.d.ts +1 -1
  9. package/dist/{chunk-2EI7NCUA.cjs → chunk-2CFW2ELM.cjs} +8 -2
  10. package/dist/chunk-2CFW2ELM.cjs.map +1 -0
  11. package/dist/{chunk-7YUFMNFW.cjs → chunk-2ZDFVRGV.cjs} +5 -13
  12. package/dist/chunk-2ZDFVRGV.cjs.map +1 -0
  13. package/dist/{chunk-RZUMQM7W.cjs → chunk-5XZU64E2.cjs} +190 -2
  14. package/dist/chunk-5XZU64E2.cjs.map +1 -0
  15. package/dist/{chunk-R26OHONI.js → chunk-6S5FLMWG.js} +83 -72
  16. package/dist/chunk-6S5FLMWG.js.map +1 -0
  17. package/dist/chunk-6XS5IJ5R.cjs +43 -0
  18. package/dist/chunk-6XS5IJ5R.cjs.map +1 -0
  19. package/dist/chunk-BX62HJZU.js +41 -0
  20. package/dist/chunk-BX62HJZU.js.map +1 -0
  21. package/dist/{chunk-IHYVK6F7.cjs → chunk-FNEL2BYV.cjs} +49 -235
  22. package/dist/chunk-FNEL2BYV.cjs.map +1 -0
  23. package/dist/{chunk-AFSOUS5X.cjs → chunk-N26CXGXC.cjs} +83 -72
  24. package/dist/chunk-N26CXGXC.cjs.map +1 -0
  25. package/dist/{chunk-X23U6QEJ.js → chunk-NXWKMKZY.js} +581 -217
  26. package/dist/chunk-NXWKMKZY.js.map +1 -0
  27. package/dist/{chunk-WRSBM6QN.cjs → chunk-UCAYNE44.cjs} +587 -214
  28. package/dist/chunk-UCAYNE44.cjs.map +1 -0
  29. package/dist/{chunk-A24C6BNA.js → chunk-UDLMLU6T.js} +3 -3
  30. package/dist/{chunk-A24C6BNA.js.map → chunk-UDLMLU6T.js.map} +1 -1
  31. package/dist/{chunk-S2NFD4QV.js → chunk-UZV27QLC.js} +8 -192
  32. package/dist/chunk-UZV27QLC.js.map +1 -0
  33. package/dist/{chunk-OPA2Y6YZ.js → chunk-W2R7YVFM.js} +5 -13
  34. package/dist/chunk-W2R7YVFM.js.map +1 -0
  35. package/dist/{chunk-TZR36PPP.cjs → chunk-YFPIJUV3.cjs} +5 -5
  36. package/dist/{chunk-TZR36PPP.cjs.map → chunk-YFPIJUV3.cjs.map} +1 -1
  37. package/dist/{chunk-KHY4PYU7.js → chunk-YX466FWL.js} +189 -4
  38. package/dist/chunk-YX466FWL.js.map +1 -0
  39. package/dist/{chunk-YU2KUMGE.js → chunk-ZX2VPMBJ.js} +8 -2
  40. package/dist/chunk-ZX2VPMBJ.js.map +1 -0
  41. package/dist/connect/docx.cjs +6 -6
  42. package/dist/connect/docx.js +4 -4
  43. package/dist/connect/index.cjs +118 -26
  44. package/dist/connect/index.cjs.map +1 -1
  45. package/dist/connect/index.d.ts +2 -0
  46. package/dist/connect/index.js +98 -9
  47. package/dist/connect/index.js.map +1 -1
  48. package/dist/connection/ConnectedNotificationRelevance.d.ts +16 -0
  49. package/dist/connection/ConnectedWorkspaceActivity.d.ts +11 -0
  50. package/dist/docx/NativeDocxEditor.d.ts +4 -2
  51. package/dist/docx/StreamedWordArtifact.d.ts +9 -6
  52. package/dist/docx/index.cjs +15 -15
  53. package/dist/docx/index.js +3 -3
  54. package/dist/facts/index.cjs +6 -6
  55. package/dist/facts/index.js +3 -3
  56. package/dist/files/index.cjs +3 -22
  57. package/dist/files/index.cjs.map +1 -1
  58. package/dist/files/index.js +3 -21
  59. package/dist/files/index.js.map +1 -1
  60. package/dist/files/views/TagFormParts.d.ts +0 -8
  61. package/dist/files/views/index.d.ts +1 -1
  62. package/dist/home/index.cjs +1 -1
  63. package/dist/home/index.js +1 -1
  64. package/dist/index.cjs +563 -431
  65. package/dist/index.cjs.map +1 -1
  66. package/dist/index.d.ts +1 -0
  67. package/dist/index.js +113 -22
  68. package/dist/index.js.map +1 -1
  69. package/dist/settings/index.cjs +3 -3
  70. package/dist/settings/index.js +1 -1
  71. package/dist/shell/FilterInput.d.ts +3 -1
  72. package/dist/shell/index.cjs +5 -5
  73. package/dist/shell/index.js +2 -2
  74. package/dist/studio/index.cjs +1 -1
  75. package/dist/studio/index.js +1 -1
  76. package/dist/tags/TagDetail.d.ts +14 -2
  77. package/dist/tags/TagTable.d.ts +20 -11
  78. package/dist/tags/TagsNav.d.ts +28 -4
  79. package/dist/tags/index.d.ts +1 -1
  80. package/dist/tags/tagTableModel.d.ts +10 -2
  81. package/dist/workflow-canvas/index.cjs +48 -48
  82. package/dist/workflow-canvas/index.js +5 -5
  83. package/package.json +4 -4
  84. package/dist/chunk-2EI7NCUA.cjs.map +0 -1
  85. package/dist/chunk-7YUFMNFW.cjs.map +0 -1
  86. package/dist/chunk-AFSOUS5X.cjs.map +0 -1
  87. package/dist/chunk-AINNADMT.cjs +0 -62
  88. package/dist/chunk-AINNADMT.cjs.map +0 -1
  89. package/dist/chunk-FT5FFXSJ.js +0 -60
  90. package/dist/chunk-FT5FFXSJ.js.map +0 -1
  91. package/dist/chunk-IHYVK6F7.cjs.map +0 -1
  92. package/dist/chunk-KHY4PYU7.js.map +0 -1
  93. package/dist/chunk-OPA2Y6YZ.js.map +0 -1
  94. package/dist/chunk-R26OHONI.js.map +0 -1
  95. package/dist/chunk-RZUMQM7W.cjs.map +0 -1
  96. package/dist/chunk-S2NFD4QV.js.map +0 -1
  97. package/dist/chunk-WRSBM6QN.cjs.map +0 -1
  98. package/dist/chunk-X23U6QEJ.js.map +0 -1
  99. package/dist/chunk-YU2KUMGE.js.map +0 -1
@@ -3,19 +3,19 @@
3
3
 
4
4
  var chunkS5HZBXZA_cjs = require('./chunk-S5HZBXZA.cjs');
5
5
  var chunkZW6FPIFC_cjs = require('./chunk-ZW6FPIFC.cjs');
6
- var chunkRZUMQM7W_cjs = require('./chunk-RZUMQM7W.cjs');
7
- var chunkAFSOUS5X_cjs = require('./chunk-AFSOUS5X.cjs');
6
+ var chunk5XZU64E2_cjs = require('./chunk-5XZU64E2.cjs');
7
+ var chunkN26CXGXC_cjs = require('./chunk-N26CXGXC.cjs');
8
8
  var chunk7RGLTF76_cjs = require('./chunk-7RGLTF76.cjs');
9
9
  var chunk3AFWGEDJ_cjs = require('./chunk-3AFWGEDJ.cjs');
10
10
  var chunkVFUWWH52_cjs = require('./chunk-VFUWWH52.cjs');
11
11
  var chunkV4ISCZJ7_cjs = require('./chunk-V4ISCZJ7.cjs');
12
- var chunk2EI7NCUA_cjs = require('./chunk-2EI7NCUA.cjs');
12
+ var chunk2CFW2ELM_cjs = require('./chunk-2CFW2ELM.cjs');
13
13
  var chunkZ5VUZ6YD_cjs = require('./chunk-Z5VUZ6YD.cjs');
14
14
  var chunk7D737FLE_cjs = require('./chunk-7D737FLE.cjs');
15
15
  var chunkOB5F4577_cjs = require('./chunk-OB5F4577.cjs');
16
- var chunkC54XEN5T_cjs = require('./chunk-C54XEN5T.cjs');
17
16
  var chunkB4SRYJLM_cjs = require('./chunk-B4SRYJLM.cjs');
18
17
  var chunk7UTB4PHM_cjs = require('./chunk-7UTB4PHM.cjs');
18
+ var chunkC54XEN5T_cjs = require('./chunk-C54XEN5T.cjs');
19
19
  var chunkKDG6FER6_cjs = require('./chunk-KDG6FER6.cjs');
20
20
  var chunkULWRNGGE_cjs = require('./chunk-ULWRNGGE.cjs');
21
21
  var chunkIXALYQT7_cjs = require('./chunk-IXALYQT7.cjs');
@@ -146,7 +146,7 @@ function WorkflowConfigDialog({
146
146
  }) {
147
147
  const l = { ...DEFAULT_WORKFLOW_CONFIG_DIALOG_LABELS, ...labels };
148
148
  const initialKey = JSON.stringify(initialInputs ?? {});
149
- const seedKey = JSON.stringify({ ...chunkRZUMQM7W_cjs.defaultInputs(workflow), ...JSON.parse(initialKey) });
149
+ const seedKey = JSON.stringify({ ...chunk5XZU64E2_cjs.defaultInputs(workflow), ...JSON.parse(initialKey) });
150
150
  const seed = react.useMemo(() => JSON.parse(seedKey), [seedKey]);
151
151
  const [inputs, setInputs] = useControllableState(inputsProp, seed, onInputsChange);
152
152
  const [agentId, setAgentId] = useControllableState(
@@ -158,7 +158,7 @@ function WorkflowConfigDialog({
158
158
  if (open && inputsProp === void 0) setInputs(seed);
159
159
  }, [open, seed]);
160
160
  const setField = (name, value) => setInputs({ ...inputs, [name]: value });
161
- const errors = chunkRZUMQM7W_cjs.validateInputs(workflow, inputs);
161
+ const errors = chunk5XZU64E2_cjs.validateInputs(workflow, inputs);
162
162
  const valid = Object.keys(errors).length === 0;
163
163
  const visibleErrors = Object.fromEntries(
164
164
  Object.entries(errors).filter(([, e]) => e !== "required")
@@ -171,7 +171,7 @@ function WorkflowConfigDialog({
171
171
  const blockedByScope = matchedCount !== null && matchedCount === 0 && Boolean(workflow.requiresFiles);
172
172
  const showAgent = workflow.run.kind === "prompt" && workflow.options?.agent !== false && agents !== void 0 && agents.length > 0;
173
173
  const launch = (values) => {
174
- Promise.resolve(onLaunch(chunkRZUMQM7W_cjs.buildLaunch(workflow, values, agentId))).catch(() => {
174
+ Promise.resolve(onLaunch(chunk5XZU64E2_cjs.buildLaunch(workflow, values, agentId))).catch(() => {
175
175
  });
176
176
  };
177
177
  const submit = () => {
@@ -249,7 +249,7 @@ function WorkflowConfigDialog({
249
249
  }
250
250
  ) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
251
251
  /* @__PURE__ */ jsxRuntime.jsx(
252
- chunkRZUMQM7W_cjs.SchemaForm,
252
+ chunk5XZU64E2_cjs.SchemaForm,
253
253
  {
254
254
  fields,
255
255
  values: inputs,
@@ -327,7 +327,7 @@ function resolveScopeInputs(workflow, inputs, scopeSource) {
327
327
  for (const field of workflow.inputs) {
328
328
  if (field.type !== "scope") continue;
329
329
  const raw = inputs[field.name];
330
- const scope = chunkRZUMQM7W_cjs.isWorkflowScope(raw) ? raw : { folders: [], labels: [] };
330
+ const scope = chunk5XZU64E2_cjs.isWorkflowScope(raw) ? raw : { folders: [], labels: [] };
331
331
  next[field.name] = { ...scope, documents: scopeSource.resolveDocuments(scope) };
332
332
  }
333
333
  return next;
@@ -369,9 +369,9 @@ function WorkflowLauncher({
369
369
  };
370
370
  const select = (workflow) => {
371
371
  if (workflow.run.kind === "operation" && workflow.inputs.length === 0) {
372
- const inputs = chunkRZUMQM7W_cjs.defaultInputs(workflow);
373
- if (Object.keys(chunkRZUMQM7W_cjs.validateInputs(workflow, inputs)).length === 0) {
374
- Promise.resolve(onLaunch(chunkRZUMQM7W_cjs.buildLaunch(workflow, inputs, void 0))).catch(() => {
372
+ const inputs = chunk5XZU64E2_cjs.defaultInputs(workflow);
373
+ if (Object.keys(chunk5XZU64E2_cjs.validateInputs(workflow, inputs)).length === 0) {
374
+ Promise.resolve(onLaunch(chunk5XZU64E2_cjs.buildLaunch(workflow, inputs, void 0))).catch(() => {
375
375
  });
376
376
  return;
377
377
  }
@@ -521,7 +521,7 @@ function workflowToSkillMarkdown(workflow) {
521
521
  if (workflow.landing !== "chat") lines.push(`landing: ${workflow.landing}`);
522
522
  if (workflow.requiresFiles) lines.push("requires_files: true");
523
523
  if (workflow.inputs.length > 0) {
524
- lines.push(`inputs: ${JSON.stringify(workflow.inputs.map(chunkRZUMQM7W_cjs.fieldToFrontmatter))}`);
524
+ lines.push(`inputs: ${JSON.stringify(workflow.inputs.map(chunk5XZU64E2_cjs.fieldToFrontmatter))}`);
525
525
  }
526
526
  lines.push("---", "", run.promptTemplate.trim(), "");
527
527
  return lines.join("\n");
@@ -543,11 +543,11 @@ function workflowFromSkillMarkdown(id, text2) {
543
543
  } else if (value === "true" || value === "false") frontmatter[key] = value === "true";
544
544
  else frontmatter[key] = value;
545
545
  }
546
- return chunkRZUMQM7W_cjs.workflowFromFrontmatter(id, frontmatter, body);
546
+ return chunk5XZU64E2_cjs.workflowFromFrontmatter(id, frontmatter, body);
547
547
  }
548
548
  function useWorkflowPreview(workflow, { answer = "{prompt}", delayMs = 400, resolveWorkflow, compose } = {}) {
549
- const steps = chunkRZUMQM7W_cjs.workflowSteps(workflow);
550
- const [inputs, setInputs] = react.useState(() => chunkRZUMQM7W_cjs.initialRunInputs(workflow));
549
+ const steps = chunk5XZU64E2_cjs.workflowSteps(workflow);
550
+ const [inputs, setInputs] = react.useState(() => chunk5XZU64E2_cjs.initialRunInputs(workflow));
551
551
  const [states, setStates] = react.useState({});
552
552
  const set = (id, state) => setStates((s) => ({ ...s, [id]: state }));
553
553
  const timers = react.useRef(/* @__PURE__ */ new Map());
@@ -569,10 +569,10 @@ function useWorkflowPreview(workflow, { answer = "{prompt}", delayMs = 400, reso
569
569
  react.useEffect(() => {
570
570
  if (Object.values(states).some((s) => s.status === "running")) return;
571
571
  const next = steps.find(
572
- (s) => (s.kind === "agent" || s.kind === "action") && chunkRZUMQM7W_cjs.stepPhase(steps, states, s.id) === "ready"
572
+ (s) => (s.kind === "agent" || s.kind === "action") && chunk5XZU64E2_cjs.stepPhase(steps, states, s.id) === "ready"
573
573
  );
574
574
  if (!next || next.kind !== "agent" && next.kind !== "action") return;
575
- const prompt = next.kind === "agent" ? chunkRZUMQM7W_cjs.composeStepPrompt(workflow, next, inputs, { resolveWorkflow, compose }) : "";
575
+ const prompt = next.kind === "agent" ? chunk5XZU64E2_cjs.composeStepPrompt(workflow, next, inputs, { resolveWorkflow, compose }) : "";
576
576
  set(next.id, { status: "running", startedAt: (/* @__PURE__ */ new Date()).toISOString() });
577
577
  timers.current.set(
578
578
  next.id,
@@ -585,7 +585,7 @@ function useWorkflowPreview(workflow, { answer = "{prompt}", delayMs = 400, reso
585
585
  }, delayMs)
586
586
  );
587
587
  }, [states, steps, workflow]);
588
- return chunkRZUMQM7W_cjs.useWorkflowView({
588
+ return chunk5XZU64E2_cjs.useWorkflowView({
589
589
  steps,
590
590
  states,
591
591
  inputs,
@@ -4186,7 +4186,7 @@ function TaskInbox(p) {
4186
4186
  onTabChange: () => {
4187
4187
  },
4188
4188
  firstTabContent: /* @__PURE__ */ jsxRuntime.jsx(
4189
- chunk2EI7NCUA_cjs.FilterInput,
4189
+ chunk2CFW2ELM_cjs.FilterInput,
4190
4190
  {
4191
4191
  value: filterText,
4192
4192
  onChange: p.onFilterTextChange ?? setLocalQuery,
@@ -4200,7 +4200,7 @@ function TaskInbox(p) {
4200
4200
  fieldsButton: "tasks-filter-fields"
4201
4201
  },
4202
4202
  filter: /* @__PURE__ */ jsxRuntime.jsx(
4203
- chunkAFSOUS5X_cjs.TriStateFilterMenu,
4203
+ chunkN26CXGXC_cjs.TriStateFilterMenu,
4204
4204
  {
4205
4205
  testId: "tasks-status-filter",
4206
4206
  open: filterOpen,
@@ -4570,7 +4570,7 @@ function ConversationListView(p) {
4570
4570
  onTabChange: () => {
4571
4571
  },
4572
4572
  firstTabContent: /* @__PURE__ */ jsxRuntime.jsx(
4573
- chunk2EI7NCUA_cjs.FilterInput,
4573
+ chunk2CFW2ELM_cjs.FilterInput,
4574
4574
  {
4575
4575
  value: query,
4576
4576
  hideFieldPicker: true,
@@ -4998,7 +4998,7 @@ function workflowTaskFields(workflow, inputs, name, context) {
4998
4998
  }
4999
4999
  const typed = name?.trim();
5000
5000
  if (workflow.options?.agent === false) {
5001
- const message = chunkRZUMQM7W_cjs.composeWorkflowPrompt(workflow, inputs, context);
5001
+ const message = chunk5XZU64E2_cjs.composeWorkflowPrompt(workflow, inputs, context);
5002
5002
  return { name: typed || message, prompt: "", skill_ref: null, skill_inputs: null };
5003
5003
  }
5004
5004
  const derived = typed || deriveWorkflowName(workflow, inputs);
@@ -5012,7 +5012,7 @@ function workflowTaskFields(workflow, inputs, name, context) {
5012
5012
  }
5013
5013
  return {
5014
5014
  name: derived,
5015
- prompt: chunkRZUMQM7W_cjs.composeWorkflowPrompt(workflow, inputs, context),
5015
+ prompt: chunk5XZU64E2_cjs.composeWorkflowPrompt(workflow, inputs, context),
5016
5016
  skill_ref: null,
5017
5017
  // The files a run is bound to travel in the saved inputs, whatever the template: the server binds
5018
5018
  // the run to the ids listed under any input's `documents`.
@@ -6059,7 +6059,7 @@ function WorkflowsTable(props) {
6059
6059
  onTabChange: props.onTabChange ?? (() => {
6060
6060
  }),
6061
6061
  firstTabContent: /* @__PURE__ */ jsxRuntime.jsx(
6062
- chunk2EI7NCUA_cjs.FilterInput,
6062
+ chunk2CFW2ELM_cjs.FilterInput,
6063
6063
  {
6064
6064
  value: query,
6065
6065
  onChange: setQuery,
@@ -6070,7 +6070,7 @@ function WorkflowsTable(props) {
6070
6070
  ariaLabel: l.searchLabel,
6071
6071
  testIds: { input: "workflow-search" },
6072
6072
  filter: /* @__PURE__ */ jsxRuntime.jsx(
6073
- chunkAFSOUS5X_cjs.TriStateFilterMenu,
6073
+ chunkN26CXGXC_cjs.TriStateFilterMenu,
6074
6074
  {
6075
6075
  testId: "automations-filter-button",
6076
6076
  open: filterOpen,
@@ -6181,190 +6181,6 @@ function WorkflowsTable(props) {
6181
6181
  );
6182
6182
  }
6183
6183
  var GRID_OPTIONS = { suppressClickEdit: true };
6184
- var DEFAULT_TASK_ACTIVITY_LABELS = {
6185
- title: "Activity",
6186
- empty: "Nothing has happened yet.",
6187
- loading: "Loading activity\u2026",
6188
- error: "Could not load the activity.",
6189
- close: "Close",
6190
- created: "Created",
6191
- createdFromWorkflow: "Created from a workflow",
6192
- runStarted: "Run started",
6193
- runStartedBy: (agent) => `Run started by ${agent}`,
6194
- awaitingAccess: "Waiting for access",
6195
- accessGranted: "Access granted",
6196
- done: "Marked done",
6197
- reopened: "Reopened",
6198
- failed: "Run failed",
6199
- failureLine: (error) => error,
6200
- system: "System"
6201
- };
6202
- var ICONS = {
6203
- created: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "size-3.5", "aria-hidden": true }),
6204
- run_started: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Play, { className: "size-3.5", "aria-hidden": true }),
6205
- awaiting_access: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Lock, { className: "size-3.5", "aria-hidden": true }),
6206
- access_granted: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.KeyRound, { className: "size-3.5", "aria-hidden": true }),
6207
- done: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckCircle2, { className: "size-3.5", "aria-hidden": true }),
6208
- reopened: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.RotateCcw, { className: "size-3.5", "aria-hidden": true }),
6209
- failed: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.AlertTriangle, { className: "size-3.5", "aria-hidden": true }),
6210
- participant_joined: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.UserRoundCog, { className: "size-3.5", "aria-hidden": true }),
6211
- assistant_responded: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "size-3.5", "aria-hidden": true }),
6212
- assistant_stopped: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Square, { className: "size-3.5", "aria-hidden": true }),
6213
- artifact_created: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "size-3.5", "aria-hidden": true }),
6214
- artifact_edited: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageSquareReply, { className: "size-3.5", "aria-hidden": true }),
6215
- document_added: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "size-3.5", "aria-hidden": true }),
6216
- document_removed: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.AlertTriangle, { className: "size-3.5", "aria-hidden": true }),
6217
- notified: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.UserRoundCog, { className: "size-3.5", "aria-hidden": true }),
6218
- step_started: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Play, { className: "size-3.5", "aria-hidden": true }),
6219
- step_done: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckCircle2, { className: "size-3.5", "aria-hidden": true }),
6220
- step_skipped: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.RotateCcw, { className: "size-3.5", "aria-hidden": true }),
6221
- step_failed: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.AlertTriangle, { className: "size-3.5", "aria-hidden": true }),
6222
- step_signal: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Flag, { className: "size-3.5", "aria-hidden": true }),
6223
- step_waiting: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Hourglass, { className: "size-3.5", "aria-hidden": true }),
6224
- step_progress: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.PenLine, { className: "size-3.5", "aria-hidden": true }),
6225
- step_sent_back: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CornerUpLeft, { className: "size-3.5", "aria-hidden": true }),
6226
- step_ready: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.BellRing, { className: "size-3.5", "aria-hidden": true }),
6227
- step_reminded: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.BellRing, { className: "size-3.5", "aria-hidden": true }),
6228
- linked_run: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ArrowUpRight, { className: "size-3.5", "aria-hidden": true })
6229
- };
6230
- var asString = (v) => typeof v === "string" && v.trim() ? v : null;
6231
- function summarizeError(error) {
6232
- const first = error.split("\n")[0].trim();
6233
- return first.length > 160 ? `${first.slice(0, 157)}\u2026` : first;
6234
- }
6235
- function TaskActivityTimeline({
6236
- events,
6237
- renderPerson,
6238
- agentName,
6239
- formatRelative,
6240
- formatExact,
6241
- labels,
6242
- testId
6243
- }) {
6244
- const l = { ...DEFAULT_TASK_ACTIVITY_LABELS, ...labels };
6245
- const base = chunkMHVNT4J3_cjs.testIdOr(testId, { testId: "task-activity" });
6246
- const describe = (e) => {
6247
- const detail = e.detail ?? {};
6248
- const agentId = asString(detail.agent_ext_id);
6249
- const agent = agentId ? agentName?.(agentId) : void 0;
6250
- switch (e.kind) {
6251
- case "participant_joined":
6252
- return { headline: "Joined the conversation" };
6253
- case "assistant_responded":
6254
- return { headline: "Responded" };
6255
- case "assistant_stopped":
6256
- return { headline: "Stopped" };
6257
- case "artifact_created":
6258
- return { headline: "Created a document" };
6259
- case "artifact_edited":
6260
- return { headline: "Edited a document" };
6261
- case "document_added":
6262
- return { headline: "Added a document" };
6263
- case "document_removed":
6264
- return { headline: "Removed a document" };
6265
- case "notified":
6266
- return { headline: "Sent a notification" };
6267
- case "step_started":
6268
- return { headline: "Step started" };
6269
- case "step_done":
6270
- return { headline: "Step done" };
6271
- case "step_skipped":
6272
- return { headline: "Step skipped" };
6273
- case "step_waiting": {
6274
- const documents = chunkRZUMQM7W_cjs.eventWaitingDocuments(detail);
6275
- return {
6276
- headline: documents ? chunkRZUMQM7W_cjs.waitingForDocumentsText(documents.length) : "Waiting on people"
6277
- };
6278
- }
6279
- case "step_progress": {
6280
- const documents = chunkRZUMQM7W_cjs.eventWaitingDocuments(detail);
6281
- return {
6282
- headline: documents ? chunkRZUMQM7W_cjs.waitingForDocumentsText(documents.length) : detail.signed ? "Signed" : "Step moved on"
6283
- };
6284
- }
6285
- case "step_sent_back":
6286
- return { headline: "Sent the work back" };
6287
- case "step_ready":
6288
- return { headline: "Told whose turn it is" };
6289
- case "step_reminded":
6290
- return { headline: "Sent a reminder" };
6291
- case "step_signal":
6292
- return { headline: `Signalled \u201C${asString(detail.signal) ?? "a signal"}\u201D` };
6293
- case "linked_run":
6294
- return {
6295
- headline: `Started a linked workflow on \u201C${asString(detail.signal) ?? "a signal"}\u201D`
6296
- };
6297
- case "step_failed":
6298
- return {
6299
- headline: "Step failed",
6300
- extra: asString(detail.error) ? l.failureLine(summarizeError(String(detail.error))) : void 0
6301
- };
6302
- case "created":
6303
- return { headline: detail.from_workflow ? l.createdFromWorkflow : l.created };
6304
- case "run_started":
6305
- return { headline: agent ? l.runStartedBy(agent) : l.runStarted };
6306
- case "awaiting_access":
6307
- return { headline: l.awaitingAccess };
6308
- case "access_granted":
6309
- return { headline: l.accessGranted };
6310
- case "done":
6311
- return { headline: l.done };
6312
- case "reopened":
6313
- return { headline: l.reopened };
6314
- case "failed": {
6315
- const error = asString(detail.error);
6316
- return {
6317
- headline: l.failed,
6318
- extra: error ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-destructive", "data-testid": `${base}-error-${e.external_id}`, children: l.failureLine(summarizeError(error)) }) : void 0
6319
- };
6320
- }
6321
- }
6322
- };
6323
- return /* @__PURE__ */ jsxRuntime.jsx("ol", { className: "flex flex-col", "data-testid": `${base}-list`, children: events.map((e, i) => {
6324
- const { headline, extra } = describe(e);
6325
- const last = i === events.length - 1;
6326
- return /* @__PURE__ */ jsxRuntime.jsxs(
6327
- "li",
6328
- {
6329
- className: "relative flex gap-3 pb-4 last:pb-0",
6330
- "data-testid": `${base}-entry-${e.external_id}`,
6331
- "data-kind": e.kind,
6332
- children: [
6333
- !last && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-3 top-6 -ml-px h-[calc(100%-1.5rem)] w-px bg-border" }),
6334
- /* @__PURE__ */ jsxRuntime.jsx(
6335
- "span",
6336
- {
6337
- className: ui.cn(
6338
- "z-10 flex size-6 shrink-0 items-center justify-center rounded-full border bg-background",
6339
- e.kind === "failed" ? "text-destructive" : "text-muted-foreground"
6340
- ),
6341
- "data-testid": `${base}-icon-${e.external_id}`,
6342
- children: ICONS[e.kind]
6343
- }
6344
- ),
6345
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
6346
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-x-2 gap-y-1 text-sm", children: [
6347
- e.actor_ext_id ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex", "data-testid": `${base}-actor-${e.external_id}`, children: renderPerson(e.actor_ext_id) }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: l.system }),
6348
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium", children: headline }),
6349
- /* @__PURE__ */ jsxRuntime.jsx(
6350
- "time",
6351
- {
6352
- dateTime: e.created_at,
6353
- title: formatExact(e.created_at),
6354
- className: "ml-auto text-xs text-muted-foreground",
6355
- "data-testid": `${base}-time-${e.external_id}`,
6356
- children: formatRelative(e.created_at)
6357
- }
6358
- )
6359
- ] }),
6360
- extra
6361
- ] })
6362
- ]
6363
- },
6364
- e.external_id
6365
- );
6366
- }) });
6367
- }
6368
6184
  function TaskActivityDialog({
6369
6185
  open,
6370
6186
  onOpenChange,
@@ -6376,7 +6192,7 @@ function TaskActivityDialog({
6376
6192
  testId,
6377
6193
  ...timeline
6378
6194
  }) {
6379
- const l = { ...DEFAULT_TASK_ACTIVITY_LABELS, ...labels };
6195
+ const l = { ...chunk5XZU64E2_cjs.DEFAULT_TASK_ACTIVITY_LABELS, ...labels };
6380
6196
  const id = chunkMHVNT4J3_cjs.testIdOr(testId, { testId: "task-activity" });
6381
6197
  const count = events?.length ?? 0;
6382
6198
  const scrollToEnd = react.useCallback(
@@ -6391,7 +6207,7 @@ function TaskActivityDialog({
6391
6207
  /* @__PURE__ */ jsxRuntime.jsx(ui.DialogDescription, { className: "truncate", children: taskName })
6392
6208
  ] }),
6393
6209
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "max-h-[55dvh] overflow-y-auto pr-1", "data-testid": `${id}-scroll`, children: [
6394
- isLoading && !events ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: l.loading }) : isError && !events ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-destructive", children: l.error }) : count === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: l.empty }) : /* @__PURE__ */ jsxRuntime.jsx(TaskActivityTimeline, { events: events ?? [], labels, testId: id, ...timeline }),
6210
+ isLoading && !events ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: l.loading }) : isError && !events ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-destructive", children: l.error }) : count === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: l.empty }) : /* @__PURE__ */ jsxRuntime.jsx(chunk5XZU64E2_cjs.TaskActivityTimeline, { events: events ?? [], labels, testId: id, ...timeline }),
6395
6211
  /* @__PURE__ */ jsxRuntime.jsx("div", { ref: scrollToEnd })
6396
6212
  ] })
6397
6213
  ] }) });
@@ -6518,7 +6334,7 @@ function groupThreadActivity(steps, items) {
6518
6334
  continue;
6519
6335
  }
6520
6336
  if (current === void 0) out.before.push(item);
6521
- else if (chunkRZUMQM7W_cjs.isRunFinished(steps, states)) out.after.push(item);
6337
+ else if (chunk5XZU64E2_cjs.isRunFinished(steps, states)) out.after.push(item);
6522
6338
  else {
6523
6339
  const status = states[current]?.status;
6524
6340
  const at = status === "done" || status === "skipped" ? steps.find((s) => !["done", "skipped"].includes(states[s.id]?.status ?? ""))?.id ?? current : current;
@@ -6636,13 +6452,13 @@ function WorkflowThreadStrip({
6636
6452
  const chevron = /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "size-3 shrink-0 text-muted-foreground" });
6637
6453
  const [selected, setSelected] = react.useState(null);
6638
6454
  const [open, setOpen] = react.useState(null);
6639
- const phaseOf = (id) => chunkRZUMQM7W_cjs.stepPhase(steps, states, id);
6455
+ const phaseOf = (id) => chunk5XZU64E2_cjs.stepPhase(steps, states, id);
6640
6456
  const iconOf = (step) => step.icon && renderIcon ? renderIcon(step.icon) : void 0;
6641
6457
  const waitingOf = (id) => {
6642
6458
  const step = steps.find((s) => s.id === id);
6643
6459
  const phase = phaseOf(id);
6644
- const documents = chunkRZUMQM7W_cjs.waitingDocuments(states[id]);
6645
- if (documents.length) return chunkRZUMQM7W_cjs.waitingForDocumentsText(documents.length);
6460
+ const documents = chunk5XZU64E2_cjs.waitingDocuments(states[id]);
6461
+ if (documents.length) return chunk5XZU64E2_cjs.waitingForDocumentsText(documents.length);
6646
6462
  const name = step && (phase === "ready" || phase === "waiting") ? assigneeOf?.(step) : void 0;
6647
6463
  return name ? l.waitingFor.replace("{name}", name) : void 0;
6648
6464
  };
@@ -6657,14 +6473,14 @@ function WorkflowThreadStrip({
6657
6473
  "button",
6658
6474
  {
6659
6475
  type: "button",
6660
- className: ui.cn(chunkRZUMQM7W_cjs.STEP_PILL, "py-0.5", chunkRZUMQM7W_cjs.stepPillTone(phase, isCurrent)),
6476
+ className: ui.cn(chunk5XZU64E2_cjs.STEP_PILL, "py-0.5", chunk5XZU64E2_cjs.stepPillTone(phase, isCurrent)),
6661
6477
  "aria-current": isCurrent ? "step" : void 0,
6662
6478
  title: waiting ? `${step.title} \xB7 ${waiting}` : step.title,
6663
6479
  "data-phase": phase,
6664
6480
  "data-testid": `workflow-thread-step-${step.id}`,
6665
6481
  children: [
6666
- /* @__PURE__ */ jsxRuntime.jsx(chunkRZUMQM7W_cjs.PhaseMark, { phase, icon: iconOf(step) }),
6667
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: isCurrent ? chunkRZUMQM7W_cjs.STEP_LABEL_CURRENT : ui.cn(chunkRZUMQM7W_cjs.STEP_LABEL, chunkRZUMQM7W_cjs.STEP_LABEL_MAX), children: step.title }),
6482
+ /* @__PURE__ */ jsxRuntime.jsx(chunk5XZU64E2_cjs.PhaseMark, { phase, icon: iconOf(step) }),
6483
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: isCurrent ? chunk5XZU64E2_cjs.STEP_LABEL_CURRENT : ui.cn(chunk5XZU64E2_cjs.STEP_LABEL, chunk5XZU64E2_cjs.STEP_LABEL_MAX), children: step.title }),
6668
6484
  sentBack && /* @__PURE__ */ jsxRuntime.jsx(
6669
6485
  lucideReact.CornerUpLeft,
6670
6486
  {
@@ -6676,7 +6492,7 @@ function WorkflowThreadStrip({
6676
6492
  assignee && isCurrent && !narrow && /* @__PURE__ */ jsxRuntime.jsxs(
6677
6493
  "span",
6678
6494
  {
6679
- className: ui.cn(chunkRZUMQM7W_cjs.STEP_EXTRA, "flex max-w-[12rem] items-center gap-0.5"),
6495
+ className: ui.cn(chunk5XZU64E2_cjs.STEP_EXTRA, "flex max-w-[12rem] items-center gap-0.5"),
6680
6496
  title: waiting,
6681
6497
  "data-testid": `workflow-thread-step-${step.id}-assignee`,
6682
6498
  children: [
@@ -6735,9 +6551,9 @@ function WorkflowThreadStrip({
6735
6551
  strays.map((s) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "flex shrink-0 items-center gap-1", children: /* @__PURE__ */ jsxRuntime.jsx(SignalPill, { signal: s, l }) }, `${s.step}-${s.signal}`))
6736
6552
  ] }) : null;
6737
6553
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: ui.cn("min-w-0 flex-1", className), "data-testid": "workflow-thread-strip", children: /* @__PURE__ */ jsxRuntime.jsx(
6738
- chunkRZUMQM7W_cjs.StepBarFrame,
6554
+ chunk5XZU64E2_cjs.StepBarFrame,
6739
6555
  {
6740
- levels: chunkRZUMQM7W_cjs.stepLevels(steps),
6556
+ levels: chunk5XZU64E2_cjs.stepLevels(steps),
6741
6557
  phaseOf,
6742
6558
  current: selected,
6743
6559
  onSelect: (id) => {
@@ -6822,10 +6638,10 @@ function compactThreadActivity(events) {
6822
6638
  const count = Math.max(1, entry.recipients.length);
6823
6639
  entry.label = `Notified ${count} ${count === 1 ? "user" : "users"}`;
6824
6640
  } else if (STEP_LABELS[event.kind]) {
6825
- const documents = chunkRZUMQM7W_cjs.eventWaitingDocuments(event.detail);
6641
+ const documents = chunk5XZU64E2_cjs.eventWaitingDocuments(event.detail);
6826
6642
  result.push({
6827
6643
  event,
6828
- label: documents ? chunkRZUMQM7W_cjs.waitingForDocumentsText(documents.length) : STEP_LABELS[event.kind],
6644
+ label: documents ? chunk5XZU64E2_cjs.waitingForDocumentsText(documents.length) : STEP_LABELS[event.kind],
6829
6645
  recipients: []
6830
6646
  });
6831
6647
  } else if (["artifact_created", "artifact_edited", "document_added", "document_removed"].includes(
@@ -7224,7 +7040,7 @@ function defaultTaskComposerValues(workflows, initial) {
7224
7040
  return {
7225
7041
  assignee: "me",
7226
7042
  workflowId,
7227
- inputs: workflow ? { ...chunkRZUMQM7W_cjs.defaultInputs(workflow), ...initial?.inputs } : { ...initial?.inputs },
7043
+ inputs: workflow ? { ...chunk5XZU64E2_cjs.defaultInputs(workflow), ...initial?.inputs } : { ...initial?.inputs },
7228
7044
  when: "manual",
7229
7045
  runAt: "",
7230
7046
  rrule: "",
@@ -7333,7 +7149,7 @@ function WorkflowComposer({
7333
7149
  return !docs?.length;
7334
7150
  })
7335
7151
  );
7336
- const whatMissing = !workflow || Object.keys(chunkRZUMQM7W_cjs.validateInputs({ ...workflow, inputs: fields }, values.inputs)).length > 0;
7152
+ const whatMissing = !workflow || Object.keys(chunk5XZU64E2_cjs.validateInputs({ ...workflow, inputs: fields }, values.inputs)).length > 0;
7337
7153
  const runAtPast = values.when === "once" && values.runAt !== "" && values.runAt !== initialValues?.runAt && new Date(values.runAt).getTime() <= Date.now();
7338
7154
  const whenMissing = missingWhen(values, runAtPast);
7339
7155
  const scheduled = values.when !== "now" && values.when !== "manual";
@@ -7345,7 +7161,7 @@ function WorkflowComposer({
7345
7161
  setValues({
7346
7162
  ...values,
7347
7163
  workflowId: next,
7348
- inputs: def ? chunkRZUMQM7W_cjs.defaultInputs(def) : {},
7164
+ inputs: def ? chunk5XZU64E2_cjs.defaultInputs(def) : {},
7349
7165
  ...def?.documentAction ? { access: "standing" } : {}
7350
7166
  });
7351
7167
  };
@@ -7483,7 +7299,7 @@ function WorkflowComposer({
7483
7299
  }
7484
7300
  ),
7485
7301
  !noFiles && workflow && fields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
7486
- chunkRZUMQM7W_cjs.SchemaForm,
7302
+ chunk5XZU64E2_cjs.SchemaForm,
7487
7303
  {
7488
7304
  fields,
7489
7305
  values: values.inputs,
@@ -7922,7 +7738,7 @@ function WorkTaskComposer({
7922
7738
  }, [open]);
7923
7739
  const workflow = workflows.find((w) => w.id === values.workflowId);
7924
7740
  const fields = workflow?.inputs ?? [];
7925
- const errors = workflow ? chunkRZUMQM7W_cjs.validateInputs({ ...workflow, inputs: fields }, values.inputs) : {};
7741
+ const errors = workflow ? chunk5XZU64E2_cjs.validateInputs({ ...workflow, inputs: fields }, values.inputs) : {};
7926
7742
  const hasWork = configOpen && Boolean(workflow) && Object.keys(errors).length === 0;
7927
7743
  const unattended = hasWork && values.when !== "now" && values.when !== "manual";
7928
7744
  const canConfigure = !isEdit || seed.assignee === "agent";
@@ -7930,7 +7746,7 @@ function WorkTaskComposer({
7930
7746
  const set = (key, value) => setValues({ ...values, [key]: value });
7931
7747
  const pickWorkflow = (id2) => {
7932
7748
  const next = workflows.find((w) => w.id === id2);
7933
- setValues({ ...values, workflowId: id2, inputs: next ? chunkRZUMQM7W_cjs.defaultInputs(next) : {} });
7749
+ setValues({ ...values, workflowId: id2, inputs: next ? chunk5XZU64E2_cjs.defaultInputs(next) : {} });
7934
7750
  };
7935
7751
  const openConfigure = () => {
7936
7752
  setConfigOpen(true);
@@ -8116,7 +7932,7 @@ function WorkTaskComposer({
8116
7932
  )
8117
7933
  ] }),
8118
7934
  workflow && fields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
8119
- chunkRZUMQM7W_cjs.SchemaForm,
7935
+ chunk5XZU64E2_cjs.SchemaForm,
8120
7936
  {
8121
7937
  fields,
8122
7938
  values: values.inputs,
@@ -10152,7 +9968,6 @@ exports.DEFAULT_SKILL_ROW_LABELS = DEFAULT_SKILL_ROW_LABELS;
10152
9968
  exports.DEFAULT_SKILL_VIEW_TOGGLE_LABELS = DEFAULT_SKILL_VIEW_TOGGLE_LABELS;
10153
9969
  exports.DEFAULT_SUBAGENT_ROSTER_LABELS = DEFAULT_SUBAGENT_ROSTER_LABELS;
10154
9970
  exports.DEFAULT_TASKS_CHROME_LABELS = DEFAULT_TASKS_CHROME_LABELS;
10155
- exports.DEFAULT_TASK_ACTIVITY_LABELS = DEFAULT_TASK_ACTIVITY_LABELS;
10156
9971
  exports.DEFAULT_TASK_COMPOSER_LABELS = DEFAULT_TASK_COMPOSER_LABELS;
10157
9972
  exports.DEFAULT_TASK_LIST_LABELS = DEFAULT_TASK_LIST_LABELS;
10158
9973
  exports.DEFAULT_TASK_OUTPUTS_CELL_LABELS = DEFAULT_TASK_OUTPUTS_CELL_LABELS;
@@ -10206,7 +10021,6 @@ exports.SubagentRoster = SubagentRoster;
10206
10021
  exports.TASK_COLUMN_ORDER = TASK_COLUMN_ORDER;
10207
10022
  exports.TRIGGER_LABELS = TRIGGER_LABELS;
10208
10023
  exports.TaskActivityDialog = TaskActivityDialog;
10209
- exports.TaskActivityTimeline = TaskActivityTimeline;
10210
10024
  exports.TaskComposer = TaskComposer;
10211
10025
  exports.TaskFlow = TaskFlow;
10212
10026
  exports.TaskInbox = TaskInbox;
@@ -10299,5 +10113,5 @@ exports.workflowToComposerValues = workflowToComposerValues;
10299
10113
  exports.workflowToSkillMarkdown = workflowToSkillMarkdown;
10300
10114
  exports.workflowTriggerType = workflowTriggerType;
10301
10115
  exports.workflowWhen = workflowWhen;
10302
- //# sourceMappingURL=chunk-IHYVK6F7.cjs.map
10303
- //# sourceMappingURL=chunk-IHYVK6F7.cjs.map
10116
+ //# sourceMappingURL=chunk-FNEL2BYV.cjs.map
10117
+ //# sourceMappingURL=chunk-FNEL2BYV.cjs.map