@arbidocs/blocks 0.5.103 → 0.5.104

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 (90) hide show
  1. package/dist/ConnectedCallDock-NEZJNTKH.js +1 -1
  2. package/dist/ConnectedCallDock-P7LK2HYF.cjs +1 -1
  3. package/dist/ConnectedCallRoom-FXTR4YFI.cjs +1 -1
  4. package/dist/ConnectedCallRoom-K3X6ICCG.js +1 -1
  5. package/dist/ConnectedNativeDocxComparison-7VJKOKYU.cjs +2 -2
  6. package/dist/ConnectedNativeDocxComparison-FENZYWDH.js +2 -2
  7. package/dist/ConnectedNativeDocxEditor-CNQAMO2N.js +2 -2
  8. package/dist/ConnectedNativeDocxEditor-HB5BHGZ2.cjs +2 -2
  9. package/dist/ConnectedStreamedWordArtifact-BF6JET2D.cjs +2 -2
  10. package/dist/ConnectedStreamedWordArtifact-ILMKFCDC.js +2 -2
  11. package/dist/{DocumentReviewCard-FSOBIVED.cjs → DocumentReviewCard-MSHD73S3.cjs} +14 -14
  12. package/dist/{DocumentReviewCard-FSOBIVED.cjs.map → DocumentReviewCard-MSHD73S3.cjs.map} +1 -1
  13. package/dist/{DocumentReviewCard-XB7BE7MZ.js → DocumentReviewCard-WZNBPG72.js} +9 -9
  14. package/dist/{DocumentReviewCard-XB7BE7MZ.js.map → DocumentReviewCard-WZNBPG72.js.map} +1 -1
  15. package/dist/{FilesViewerDialog-GEIQCBBK.cjs → FilesViewerDialog-DV2U4USR.cjs} +9 -9
  16. package/dist/{FilesViewerDialog-GEIQCBBK.cjs.map → FilesViewerDialog-DV2U4USR.cjs.map} +1 -1
  17. package/dist/{FilesViewerDialog-5PL3HGYO.js → FilesViewerDialog-XETOHORQ.js} +8 -8
  18. package/dist/{FilesViewerDialog-5PL3HGYO.js.map → FilesViewerDialog-XETOHORQ.js.map} +1 -1
  19. package/dist/{WorkspaceTableView-Y2GX5GB2.cjs → WorkspaceTableView-3D6SYOWT.cjs} +3 -3
  20. package/dist/{WorkspaceTableView-Y2GX5GB2.cjs.map → WorkspaceTableView-3D6SYOWT.cjs.map} +1 -1
  21. package/dist/{WorkspaceTableView-SX5FIC4C.js → WorkspaceTableView-WD754UBK.js} +3 -3
  22. package/dist/{WorkspaceTableView-SX5FIC4C.js.map → WorkspaceTableView-WD754UBK.js.map} +1 -1
  23. package/dist/agents/index.cjs +177 -177
  24. package/dist/agents/index.js +4 -4
  25. package/dist/chat/index.cjs +1 -1
  26. package/dist/chat/index.js +1 -1
  27. package/dist/{chunk-JAIMJTXQ.js → chunk-4UOXUWX3.js} +4 -4
  28. package/dist/{chunk-JAIMJTXQ.js.map → chunk-4UOXUWX3.js.map} +1 -1
  29. package/dist/{chunk-EIV4H2PZ.cjs → chunk-4WMGFGYP.cjs} +4 -4
  30. package/dist/{chunk-EIV4H2PZ.cjs.map → chunk-4WMGFGYP.cjs.map} +1 -1
  31. package/dist/{chunk-DGOVO2QO.cjs → chunk-5R67KX2O.cjs} +8 -8
  32. package/dist/{chunk-DGOVO2QO.cjs.map → chunk-5R67KX2O.cjs.map} +1 -1
  33. package/dist/{chunk-7Z5CSFYV.cjs → chunk-5UMZXDGL.cjs} +5 -5
  34. package/dist/{chunk-7Z5CSFYV.cjs.map → chunk-5UMZXDGL.cjs.map} +1 -1
  35. package/dist/{chunk-SOY6UUFS.js → chunk-62OMGQHS.js} +3 -3
  36. package/dist/{chunk-SOY6UUFS.js.map → chunk-62OMGQHS.js.map} +1 -1
  37. package/dist/{chunk-COCZMF7B.cjs → chunk-6A4GNM4T.cjs} +4 -4
  38. package/dist/{chunk-COCZMF7B.cjs.map → chunk-6A4GNM4T.cjs.map} +1 -1
  39. package/dist/{chunk-G4D4UGSW.cjs → chunk-6NSKIS35.cjs} +4 -4
  40. package/dist/{chunk-G4D4UGSW.cjs.map → chunk-6NSKIS35.cjs.map} +1 -1
  41. package/dist/{chunk-M6DTLHCN.js → chunk-7ONU7EWY.js} +3 -3
  42. package/dist/{chunk-M6DTLHCN.js.map → chunk-7ONU7EWY.js.map} +1 -1
  43. package/dist/{chunk-4LK74S7T.cjs → chunk-BSPPKX6X.cjs} +24 -24
  44. package/dist/{chunk-4LK74S7T.cjs.map → chunk-BSPPKX6X.cjs.map} +1 -1
  45. package/dist/{chunk-BQHTBUOA.js → chunk-CEVVGJQX.js} +3 -3
  46. package/dist/{chunk-BQHTBUOA.js.map → chunk-CEVVGJQX.js.map} +1 -1
  47. package/dist/{chunk-K2G2P66L.js → chunk-E26MNOLG.js} +3 -3
  48. package/dist/{chunk-K2G2P66L.js.map → chunk-E26MNOLG.js.map} +1 -1
  49. package/dist/{chunk-NTXO6IYE.js → chunk-E6ISR55S.js} +3 -3
  50. package/dist/{chunk-NTXO6IYE.js.map → chunk-E6ISR55S.js.map} +1 -1
  51. package/dist/{chunk-UYFWLP74.js → chunk-ET3W24JV.js} +6 -6
  52. package/dist/{chunk-UYFWLP74.js.map → chunk-ET3W24JV.js.map} +1 -1
  53. package/dist/{chunk-I6WRLTWU.js → chunk-GOJ5GHFS.js} +3 -3
  54. package/dist/{chunk-I6WRLTWU.js.map → chunk-GOJ5GHFS.js.map} +1 -1
  55. package/dist/{chunk-ASOPBELQ.js → chunk-HTGEAQOA.js} +4 -4
  56. package/dist/{chunk-ASOPBELQ.js.map → chunk-HTGEAQOA.js.map} +1 -1
  57. package/dist/{chunk-ZR4TH6DZ.js → chunk-HTIEJVPI.js} +5 -5
  58. package/dist/{chunk-ZR4TH6DZ.js.map → chunk-HTIEJVPI.js.map} +1 -1
  59. package/dist/{chunk-KXNC24EF.cjs → chunk-IWLNDDPN.cjs} +35 -35
  60. package/dist/{chunk-KXNC24EF.cjs.map → chunk-IWLNDDPN.cjs.map} +1 -1
  61. package/dist/{chunk-SYMZ6L3C.js → chunk-JWUCDK2F.js} +3 -3
  62. package/dist/{chunk-SYMZ6L3C.js.map → chunk-JWUCDK2F.js.map} +1 -1
  63. package/dist/{chunk-OSWKA2NQ.cjs → chunk-OKUXM2N4.cjs} +3 -3
  64. package/dist/{chunk-OSWKA2NQ.cjs.map → chunk-OKUXM2N4.cjs.map} +1 -1
  65. package/dist/{chunk-DZGLEEUT.cjs → chunk-RBI7WVEP.cjs} +4 -4
  66. package/dist/{chunk-DZGLEEUT.cjs.map → chunk-RBI7WVEP.cjs.map} +1 -1
  67. package/dist/{chunk-KVQ6O54R.cjs → chunk-S7NJVJJX.cjs} +46 -46
  68. package/dist/{chunk-KVQ6O54R.cjs.map → chunk-S7NJVJJX.cjs.map} +1 -1
  69. package/dist/{chunk-QVY5DH2R.js → chunk-TQFDPCWU.js} +5 -5
  70. package/dist/{chunk-QVY5DH2R.js.map → chunk-TQFDPCWU.js.map} +1 -1
  71. package/dist/{chunk-S3SWSAUB.cjs → chunk-V2CKYM4B.cjs} +4 -4
  72. package/dist/{chunk-S3SWSAUB.cjs.map → chunk-V2CKYM4B.cjs.map} +1 -1
  73. package/dist/{chunk-CRKWD7B5.cjs → chunk-VULH3XAJ.cjs} +28 -28
  74. package/dist/{chunk-CRKWD7B5.cjs.map → chunk-VULH3XAJ.cjs.map} +1 -1
  75. package/dist/connect/docx.cjs +2 -2
  76. package/dist/connect/docx.js +2 -2
  77. package/dist/connect/index.cjs +521 -521
  78. package/dist/connect/index.js +24 -24
  79. package/dist/connect/viewer.cjs +7 -7
  80. package/dist/connect/viewer.js +6 -6
  81. package/dist/embed/index.cjs +13 -13
  82. package/dist/embed/index.js +7 -7
  83. package/dist/files/index.cjs +224 -224
  84. package/dist/files/index.js +3 -3
  85. package/dist/index.cjs +262 -262
  86. package/dist/index.js +6 -6
  87. package/dist/workflow-canvas/index.cjs +20 -20
  88. package/dist/workflow-canvas/index.js +10 -10
  89. package/node_modules/@arbidocs/coedit/package.json +1 -1
  90. package/package.json +5 -5
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkCOCZMF7B_cjs = require('./chunk-COCZMF7B.cjs');
4
+ var chunk6A4GNM4T_cjs = require('./chunk-6A4GNM4T.cjs');
5
5
  var chunkQGVOT7E4_cjs = require('./chunk-QGVOT7E4.cjs');
6
6
  var react = require('react');
7
7
 
@@ -45,7 +45,7 @@ function useWorkflowPreview(workflow, { answer = "{prompt}", delayMs = 400, reso
45
45
  }, delayMs)
46
46
  );
47
47
  }, [states, steps, workflow]);
48
- return chunkCOCZMF7B_cjs.useWorkflowView({
48
+ return chunk6A4GNM4T_cjs.useWorkflowView({
49
49
  steps,
50
50
  states,
51
51
  inputs,
@@ -58,5 +58,5 @@ function useWorkflowPreview(workflow, { answer = "{prompt}", delayMs = 400, reso
58
58
  }
59
59
 
60
60
  exports.useWorkflowPreview = useWorkflowPreview;
61
- //# sourceMappingURL=chunk-EIV4H2PZ.cjs.map
62
- //# sourceMappingURL=chunk-EIV4H2PZ.cjs.map
61
+ //# sourceMappingURL=chunk-4WMGFGYP.cjs.map
62
+ //# sourceMappingURL=chunk-4WMGFGYP.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/agents/workflows/useWorkflowPreview.ts"],"names":["workflowSteps","useState","initialRunInputs","useRef","useEffect","stepPhase","composeStepPrompt","useWorkflowView"],"mappings":"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","file":"chunk-EIV4H2PZ.cjs","sourcesContent":["/**\n * A stepped workflow run on screen only (the builder's preview): agent steps run one at a time,\n * the way the server does, and answer with the prompt they would send; action steps just finish.\n * No thread, no agent.\n */\n\nimport { useEffect, useRef, useState } from 'react'\nimport {\n composeStepPrompt,\n initialRunInputs,\n stepPhase,\n workflowSteps,\n type StepComposeOptions,\n} from './run'\nimport type { WorkflowDefinition, WorkflowInputs, WorkflowStepState } from './types'\nimport { useWorkflowView, type WorkflowRunView } from './useWorkflowView'\n\nexport interface UseWorkflowPreviewOptions extends StepComposeOptions {\n /** What a stand-in agent step answers; `{prompt}` is replaced with the prompt it would send. */\n answer?: string\n /** How long a stand-in step takes. */\n delayMs?: number\n}\n\nexport function useWorkflowPreview(\n workflow: WorkflowDefinition,\n { answer = '{prompt}', delayMs = 400, resolveWorkflow, compose }: UseWorkflowPreviewOptions = {}\n): WorkflowRunView {\n const steps = workflowSteps(workflow)\n const [inputs, setInputs] = useState<WorkflowInputs>(() => initialRunInputs(workflow))\n const [states, setStates] = useState<Record<string, WorkflowStepState>>({})\n const set = (id: string, state: WorkflowStepState) => setStates((s) => ({ ...s, [id]: state }))\n\n // A stand-in step's timer outlives the re-render its start causes; it is cleared on unmount, and\n // a step it cut short starts again (StrictMode mounts twice).\n const timers = useRef(new Map<string, ReturnType<typeof setTimeout>>())\n useEffect(() => {\n const pending = timers.current\n return () => {\n for (const t of pending.values()) clearTimeout(t)\n pending.clear()\n setStates((s) =>\n Object.fromEntries(\n Object.entries(s).map(([id, v]) => [\n id,\n v.status === 'running' ? { status: 'pending' } : v,\n ])\n )\n )\n }\n }, [])\n\n // One turn at a time: start the first ready agent step when nothing is running.\n useEffect(() => {\n if (Object.values(states).some((s) => s.status === 'running')) return\n // An action step (a signature, an email, a review) stands in the same way, with no answer.\n const next = steps.find(\n (s) =>\n (s.kind === 'agent' || s.kind === 'action') && stepPhase(steps, states, s.id) === 'ready'\n )\n if (!next || (next.kind !== 'agent' && next.kind !== 'action')) return\n const prompt =\n next.kind === 'agent'\n ? composeStepPrompt(workflow, next, inputs, { resolveWorkflow, compose })\n : ''\n set(next.id, { status: 'running', startedAt: new Date().toISOString() })\n timers.current.set(\n next.id,\n setTimeout(() => {\n timers.current.delete(next.id)\n set(\n next.id,\n next.kind === 'agent'\n ? { status: 'done', text: answer.replace('{prompt}', prompt) }\n : { status: 'done' }\n )\n }, delayMs)\n )\n // `inputs` are read when a step starts, not watched.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [states, steps, workflow])\n\n return useWorkflowView({\n steps,\n states,\n inputs,\n setInput: (name, value) => setInputs((i) => ({ ...i, [name]: value })),\n complete: async (step) => set(step.id, { status: 'done' }),\n skip: async (id) => set(id, { status: 'skipped' }),\n retry: async (id) => set(id, { status: 'pending' }),\n isLocked: (id) => states[id]?.status === 'done',\n })\n}\n"]}
1
+ {"version":3,"sources":["../src/agents/workflows/useWorkflowPreview.ts"],"names":["workflowSteps","useState","initialRunInputs","useRef","useEffect","stepPhase","composeStepPrompt","useWorkflowView"],"mappings":"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","file":"chunk-4WMGFGYP.cjs","sourcesContent":["/**\n * A stepped workflow run on screen only (the builder's preview): agent steps run one at a time,\n * the way the server does, and answer with the prompt they would send; action steps just finish.\n * No thread, no agent.\n */\n\nimport { useEffect, useRef, useState } from 'react'\nimport {\n composeStepPrompt,\n initialRunInputs,\n stepPhase,\n workflowSteps,\n type StepComposeOptions,\n} from './run'\nimport type { WorkflowDefinition, WorkflowInputs, WorkflowStepState } from './types'\nimport { useWorkflowView, type WorkflowRunView } from './useWorkflowView'\n\nexport interface UseWorkflowPreviewOptions extends StepComposeOptions {\n /** What a stand-in agent step answers; `{prompt}` is replaced with the prompt it would send. */\n answer?: string\n /** How long a stand-in step takes. */\n delayMs?: number\n}\n\nexport function useWorkflowPreview(\n workflow: WorkflowDefinition,\n { answer = '{prompt}', delayMs = 400, resolveWorkflow, compose }: UseWorkflowPreviewOptions = {}\n): WorkflowRunView {\n const steps = workflowSteps(workflow)\n const [inputs, setInputs] = useState<WorkflowInputs>(() => initialRunInputs(workflow))\n const [states, setStates] = useState<Record<string, WorkflowStepState>>({})\n const set = (id: string, state: WorkflowStepState) => setStates((s) => ({ ...s, [id]: state }))\n\n // A stand-in step's timer outlives the re-render its start causes; it is cleared on unmount, and\n // a step it cut short starts again (StrictMode mounts twice).\n const timers = useRef(new Map<string, ReturnType<typeof setTimeout>>())\n useEffect(() => {\n const pending = timers.current\n return () => {\n for (const t of pending.values()) clearTimeout(t)\n pending.clear()\n setStates((s) =>\n Object.fromEntries(\n Object.entries(s).map(([id, v]) => [\n id,\n v.status === 'running' ? { status: 'pending' } : v,\n ])\n )\n )\n }\n }, [])\n\n // One turn at a time: start the first ready agent step when nothing is running.\n useEffect(() => {\n if (Object.values(states).some((s) => s.status === 'running')) return\n // An action step (a signature, an email, a review) stands in the same way, with no answer.\n const next = steps.find(\n (s) =>\n (s.kind === 'agent' || s.kind === 'action') && stepPhase(steps, states, s.id) === 'ready'\n )\n if (!next || (next.kind !== 'agent' && next.kind !== 'action')) return\n const prompt =\n next.kind === 'agent'\n ? composeStepPrompt(workflow, next, inputs, { resolveWorkflow, compose })\n : ''\n set(next.id, { status: 'running', startedAt: new Date().toISOString() })\n timers.current.set(\n next.id,\n setTimeout(() => {\n timers.current.delete(next.id)\n set(\n next.id,\n next.kind === 'agent'\n ? { status: 'done', text: answer.replace('{prompt}', prompt) }\n : { status: 'done' }\n )\n }, delayMs)\n )\n // `inputs` are read when a step starts, not watched.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [states, steps, workflow])\n\n return useWorkflowView({\n steps,\n states,\n inputs,\n setInput: (name, value) => setInputs((i) => ({ ...i, [name]: value })),\n complete: async (step) => set(step.id, { status: 'done' }),\n skip: async (id) => set(id, { status: 'skipped' }),\n retry: async (id) => set(id, { status: 'pending' }),\n isLocked: (id) => states[id]?.status === 'done',\n })\n}\n"]}
@@ -2,8 +2,8 @@
2
2
  'use strict';
3
3
 
4
4
  var chunkPIWT2GCY_cjs = require('./chunk-PIWT2GCY.cjs');
5
- var chunkS3SWSAUB_cjs = require('./chunk-S3SWSAUB.cjs');
6
- var chunkDZGLEEUT_cjs = require('./chunk-DZGLEEUT.cjs');
5
+ var chunkV2CKYM4B_cjs = require('./chunk-V2CKYM4B.cjs');
6
+ var chunkRBI7WVEP_cjs = require('./chunk-RBI7WVEP.cjs');
7
7
  var chunkTJY7XPDE_cjs = require('./chunk-TJY7XPDE.cjs');
8
8
  var chunkXNW62J54_cjs = require('./chunk-XNW62J54.cjs');
9
9
  var chunk6KQVTMRL_cjs = require('./chunk-6KQVTMRL.cjs');
@@ -2205,7 +2205,7 @@ var MessageComponent = ({
2205
2205
  align: isOtherPerson ? "start" : "end",
2206
2206
  leading: isUser ? (
2207
2207
  // Someone else's author is the pill above their run; only mine is marked here.
2208
- !isOtherPerson && messageAuthorUser && /* @__PURE__ */ jsxRuntime.jsx(chunkDZGLEEUT_cjs.DocumentUser, { user: messageAuthorUser })
2208
+ !isOtherPerson && messageAuthorUser && /* @__PURE__ */ jsxRuntime.jsx(chunkRBI7WVEP_cjs.DocumentUser, { user: messageAuthorUser })
2209
2209
  ) : /* @__PURE__ */ jsxRuntime.jsx(
2210
2210
  "span",
2211
2211
  {
@@ -2310,7 +2310,7 @@ var MessageComponent = ({
2310
2310
  messageId,
2311
2311
  align: isOtherPerson ? "start" : "end",
2312
2312
  children: [
2313
- startsAuthorRun && messageAuthorUser && /* @__PURE__ */ jsxRuntime.jsx(chunkM2FOXGJU_cjs.MessageAuthor, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkDZGLEEUT_cjs.DocumentUser, { user: messageAuthorUser, variant: "pill" }) }),
2313
+ startsAuthorRun && messageAuthorUser && /* @__PURE__ */ jsxRuntime.jsx(chunkM2FOXGJU_cjs.MessageAuthor, { children: /* @__PURE__ */ jsxRuntime.jsx(chunkRBI7WVEP_cjs.DocumentUser, { user: messageAuthorUser, variant: "pill" }) }),
2314
2314
  /* @__PURE__ */ jsxRuntime.jsxs(
2315
2315
  chunkM2FOXGJU_cjs.MessageBubble,
2316
2316
  {
@@ -2694,7 +2694,7 @@ function ConnectedMessageList({ messages, scrollElementRef }) {
2694
2694
  React6.useEffect(() => {
2695
2695
  scrollContainerRef.current = scrollElementRef?.current ?? resolveScrollContainer(null);
2696
2696
  }, [scrollElementRef]);
2697
- const { items: activityItems } = chunkS3SWSAUB_cjs.useConnectedThreadActivity(currentConversationId);
2697
+ const { items: activityItems } = chunkV2CKYM4B_cjs.useConnectedThreadActivity(currentConversationId);
2698
2698
  const transcript = [
2699
2699
  ...displayMessages.map((message, index) => ({
2700
2700
  type: "message",
@@ -4897,7 +4897,7 @@ function EmbeddedWorkspaceHeader({ title }) {
4897
4897
  const signedIn = react.useArbiSession();
4898
4898
  const workspaceId = react.useArbiSessionState((s) => s.workspaceId);
4899
4899
  const { data: workspaces = [], isLoading, error: listError } = react.useWorkspaces();
4900
- const select = chunkS3SWSAUB_cjs.useSelectWorkspace();
4900
+ const select = chunkV2CKYM4B_cjs.useSelectWorkspace();
4901
4901
  const connection = chunkTJQMC7GJ_cjs.useOptionalConnection();
4902
4902
  const [pending, setPending] = React6.useState(false);
4903
4903
  const [error, setError] = React6.useState(null);
@@ -5082,5 +5082,5 @@ exports.useOpenChunk = useOpenChunk;
5082
5082
  exports.useOpenWorkspaceIcon = useOpenWorkspaceIcon;
5083
5083
  exports.useSsoSignIn = useSsoSignIn;
5084
5084
  exports.useWorkspaceDocTitles = useWorkspaceDocTitles;
5085
- //# sourceMappingURL=chunk-DGOVO2QO.cjs.map
5086
- //# sourceMappingURL=chunk-DGOVO2QO.cjs.map
5085
+ //# sourceMappingURL=chunk-5R67KX2O.cjs.map
5086
+ //# sourceMappingURL=chunk-5R67KX2O.cjs.map