@arbidocs/blocks 0.4.129 → 0.4.131

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 (121) hide show
  1. package/dist/agents/index.cjs +303 -303
  2. package/dist/agents/index.js +11 -11
  3. package/dist/calendar/CalendarPrint.d.ts +25 -0
  4. package/dist/calendar/booking-slots.d.ts +21 -0
  5. package/dist/calendar/index.cjs +381 -97
  6. package/dist/calendar/index.cjs.map +1 -1
  7. package/dist/calendar/index.d.ts +4 -0
  8. package/dist/calendar/index.js +277 -3
  9. package/dist/calendar/index.js.map +1 -1
  10. package/dist/calendar/print-layout.d.ts +16 -0
  11. package/dist/calendar/printCalendar.d.ts +6 -0
  12. package/dist/calls/composite-canvas.d.ts +52 -0
  13. package/dist/calls/index.cjs +374 -1
  14. package/dist/calls/index.cjs.map +1 -1
  15. package/dist/calls/index.d.ts +3 -0
  16. package/dist/calls/index.js +359 -4
  17. package/dist/calls/index.js.map +1 -1
  18. package/dist/calls/ringtone.d.ts +16 -0
  19. package/dist/calls/voice-levels.d.ts +32 -0
  20. package/dist/chat/ThreadVisualizer.d.ts +28 -0
  21. package/dist/chat/index.cjs +151 -135
  22. package/dist/chat/index.d.ts +2 -0
  23. package/dist/chat/index.js +4 -4
  24. package/dist/chat/thread-diagram.d.ts +26 -0
  25. package/dist/{chunk-H2KQ6OSU.js → chunk-26E6PHD2.js} +231 -6
  26. package/dist/chunk-26E6PHD2.js.map +1 -0
  27. package/dist/{chunk-2PNNCEPH.js → chunk-54ANPPMV.js} +4 -4
  28. package/dist/{chunk-2PNNCEPH.js.map → chunk-54ANPPMV.js.map} +1 -1
  29. package/dist/{chunk-IBZJYCYM.js → chunk-66TA5IBN.js} +17 -25
  30. package/dist/chunk-66TA5IBN.js.map +1 -0
  31. package/dist/{chunk-OYMWV45N.js → chunk-7D4W3SAH.js} +51 -4
  32. package/dist/chunk-7D4W3SAH.js.map +1 -0
  33. package/dist/{chunk-2DFDFOM7.js → chunk-7HAM7Y5U.js} +3 -3
  34. package/dist/{chunk-2DFDFOM7.js.map → chunk-7HAM7Y5U.js.map} +1 -1
  35. package/dist/{chunk-7423V6RM.cjs → chunk-7KH4M3KY.cjs} +8 -8
  36. package/dist/{chunk-7423V6RM.cjs.map → chunk-7KH4M3KY.cjs.map} +1 -1
  37. package/dist/{chunk-TGWTLNXW.cjs → chunk-BIXHB4LV.cjs} +3 -2
  38. package/dist/{chunk-TGWTLNXW.cjs.map → chunk-BIXHB4LV.cjs.map} +1 -1
  39. package/dist/{chunk-DZYAAL4H.cjs → chunk-BZF55UCE.cjs} +234 -5
  40. package/dist/chunk-BZF55UCE.cjs.map +1 -0
  41. package/dist/{chunk-3BJLNKOB.cjs → chunk-CDZVC32G.cjs} +5 -5
  42. package/dist/{chunk-3BJLNKOB.cjs.map → chunk-CDZVC32G.cjs.map} +1 -1
  43. package/dist/{chunk-PUCY3UXN.js → chunk-CXLVI3SB.js} +3 -3
  44. package/dist/{chunk-PUCY3UXN.js.map → chunk-CXLVI3SB.js.map} +1 -1
  45. package/dist/{chunk-KYDRUFWT.cjs → chunk-D4YR56FV.cjs} +5 -5
  46. package/dist/{chunk-KYDRUFWT.cjs.map → chunk-D4YR56FV.cjs.map} +1 -1
  47. package/dist/{chunk-6BTCDKCK.js → chunk-DI35D756.js} +4 -4
  48. package/dist/{chunk-6BTCDKCK.js.map → chunk-DI35D756.js.map} +1 -1
  49. package/dist/{chunk-TGJNPKST.js → chunk-GTCC2VAR.js} +3 -3
  50. package/dist/{chunk-TGJNPKST.js.map → chunk-GTCC2VAR.js.map} +1 -1
  51. package/dist/{chunk-6AALMYPS.cjs → chunk-HM23LXUP.cjs} +3 -3
  52. package/dist/{chunk-6AALMYPS.cjs.map → chunk-HM23LXUP.cjs.map} +1 -1
  53. package/dist/{chunk-HSFLEVZY.js → chunk-KLOSOT26.js} +10 -10
  54. package/dist/{chunk-HSFLEVZY.js.map → chunk-KLOSOT26.js.map} +1 -1
  55. package/dist/{chunk-SARREDFP.cjs → chunk-LC2KJSUS.cjs} +46 -46
  56. package/dist/{chunk-SARREDFP.cjs.map → chunk-LC2KJSUS.cjs.map} +1 -1
  57. package/dist/{chunk-MUMH3Z6K.cjs → chunk-LRD7BHAT.cjs} +50 -3
  58. package/dist/chunk-LRD7BHAT.cjs.map +1 -0
  59. package/dist/{chunk-CJBN5HIS.js → chunk-P5HOXWYL.js} +3 -3
  60. package/dist/{chunk-CJBN5HIS.js.map → chunk-P5HOXWYL.js.map} +1 -1
  61. package/dist/{chunk-5Y7JRY7Y.js → chunk-P5ST47VY.js} +3 -3
  62. package/dist/{chunk-5Y7JRY7Y.js.map → chunk-P5ST47VY.js.map} +1 -1
  63. package/dist/{chunk-A7NCSZAP.cjs → chunk-QZTNTP75.cjs} +17 -25
  64. package/dist/chunk-QZTNTP75.cjs.map +1 -0
  65. package/dist/{chunk-ENDP7JER.js → chunk-VW2C2AZL.js} +3 -3
  66. package/dist/{chunk-ENDP7JER.js.map → chunk-VW2C2AZL.js.map} +1 -1
  67. package/dist/{chunk-JLTXVW25.cjs → chunk-W27VK32R.cjs} +78 -78
  68. package/dist/{chunk-JLTXVW25.cjs.map → chunk-W27VK32R.cjs.map} +1 -1
  69. package/dist/{chunk-PJJY6CYL.cjs → chunk-WV4IDVDQ.cjs} +11 -11
  70. package/dist/{chunk-PJJY6CYL.cjs.map → chunk-WV4IDVDQ.cjs.map} +1 -1
  71. package/dist/{chunk-NYHGG2IA.cjs → chunk-ZV3BKLFY.cjs} +3 -3
  72. package/dist/{chunk-NYHGG2IA.cjs.map → chunk-ZV3BKLFY.cjs.map} +1 -1
  73. package/dist/collaboration/index.cjs +9 -9
  74. package/dist/collaboration/index.js +1 -1
  75. package/dist/connect/docx.cjs +4 -4
  76. package/dist/connect/docx.js +3 -3
  77. package/dist/connect/index.cjs +183 -146
  78. package/dist/connect/index.cjs.map +1 -1
  79. package/dist/connect/index.d.ts +1 -1
  80. package/dist/connect/index.js +134 -98
  81. package/dist/connect/index.js.map +1 -1
  82. package/dist/connection/ConnectedSettings.d.ts +42 -7
  83. package/dist/document-tools/index.cjs +1 -1
  84. package/dist/document-tools/index.js +1 -1
  85. package/dist/facts/fact-citations.d.ts +56 -0
  86. package/dist/facts/fact-table-column-resize.d.ts +18 -0
  87. package/dist/facts/index.cjs +194 -8
  88. package/dist/facts/index.cjs.map +1 -1
  89. package/dist/facts/index.d.ts +2 -0
  90. package/dist/facts/index.js +180 -5
  91. package/dist/facts/index.js.map +1 -1
  92. package/dist/files/index.cjs +1 -1
  93. package/dist/files/index.js +1 -1
  94. package/dist/home/index.cjs +17 -17
  95. package/dist/home/index.js +3 -3
  96. package/dist/index.cjs +517 -501
  97. package/dist/index.js +18 -18
  98. package/dist/settings/MoreInfo.d.ts +25 -0
  99. package/dist/settings/PlanCard.d.ts +1 -1
  100. package/dist/settings/index.cjs +79 -225
  101. package/dist/settings/index.cjs.map +1 -1
  102. package/dist/settings/index.d.ts +1 -1
  103. package/dist/settings/index.js +70 -215
  104. package/dist/settings/index.js.map +1 -1
  105. package/dist/shell/index.cjs +1 -1
  106. package/dist/shell/index.js +1 -1
  107. package/dist/site/index.cjs +5 -5
  108. package/dist/site/index.js +1 -1
  109. package/dist/studio/index.cjs +8 -8
  110. package/dist/studio/index.js +6 -6
  111. package/dist/workflow-canvas/index.cjs +64 -64
  112. package/dist/workflow-canvas/index.js +12 -12
  113. package/node_modules/@arbidocs/coedit/package.json +1 -1
  114. package/package.json +9 -4
  115. package/dist/chunk-A7NCSZAP.cjs.map +0 -1
  116. package/dist/chunk-DZYAAL4H.cjs.map +0 -1
  117. package/dist/chunk-H2KQ6OSU.js.map +0 -1
  118. package/dist/chunk-IBZJYCYM.js.map +0 -1
  119. package/dist/chunk-MUMH3Z6K.cjs.map +0 -1
  120. package/dist/chunk-OYMWV45N.js.map +0 -1
  121. package/dist/settings/FirmPool.d.ts +0 -82
@@ -1,36 +1,36 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkO4YPVYPO_cjs = require('../chunk-O4YPVYPO.cjs');
5
4
  var chunkOR4CO743_cjs = require('../chunk-OR4CO743.cjs');
6
- var chunk7423V6RM_cjs = require('../chunk-7423V6RM.cjs');
7
- var chunk3BJLNKOB_cjs = require('../chunk-3BJLNKOB.cjs');
8
- var chunkMUMH3Z6K_cjs = require('../chunk-MUMH3Z6K.cjs');
5
+ var chunk7KH4M3KY_cjs = require('../chunk-7KH4M3KY.cjs');
6
+ var chunkCDZVC32G_cjs = require('../chunk-CDZVC32G.cjs');
7
+ var chunkLRD7BHAT_cjs = require('../chunk-LRD7BHAT.cjs');
9
8
  var chunkJH6JTI76_cjs = require('../chunk-JH6JTI76.cjs');
10
9
  require('../chunk-S24XEVPS.cjs');
11
10
  require('../chunk-V5OAXIBN.cjs');
12
11
  require('../chunk-5FYU7ZIU.cjs');
13
- var chunkKYDRUFWT_cjs = require('../chunk-KYDRUFWT.cjs');
12
+ var chunkO4YPVYPO_cjs = require('../chunk-O4YPVYPO.cjs');
13
+ var chunkD4YR56FV_cjs = require('../chunk-D4YR56FV.cjs');
14
14
  var chunkO6IEZDRC_cjs = require('../chunk-O6IEZDRC.cjs');
15
15
  var chunkI2QSDQQV_cjs = require('../chunk-I2QSDQQV.cjs');
16
16
  require('../chunk-RC25WMVB.cjs');
17
- var chunkSARREDFP_cjs = require('../chunk-SARREDFP.cjs');
18
- require('../chunk-DETZZBG2.cjs');
17
+ var chunkLC2KJSUS_cjs = require('../chunk-LC2KJSUS.cjs');
18
+ require('../chunk-7D737FLE.cjs');
19
19
  var chunkN26CXGXC_cjs = require('../chunk-N26CXGXC.cjs');
20
+ require('../chunk-DETZZBG2.cjs');
20
21
  var chunk2EI7NCUA_cjs = require('../chunk-2EI7NCUA.cjs');
21
22
  require('../chunk-C2CWWEHO.cjs');
22
- require('../chunk-7D737FLE.cjs');
23
23
  var chunkQVBZESYQ_cjs = require('../chunk-QVBZESYQ.cjs');
24
24
  require('../chunk-ADOKTJHV.cjs');
25
25
  var chunkZAVEMQ37_cjs = require('../chunk-ZAVEMQ37.cjs');
26
- var chunkULWRNGGE_cjs = require('../chunk-ULWRNGGE.cjs');
27
26
  var chunk7RGLTF76_cjs = require('../chunk-7RGLTF76.cjs');
28
- var chunkPJJY6CYL_cjs = require('../chunk-PJJY6CYL.cjs');
27
+ var chunkULWRNGGE_cjs = require('../chunk-ULWRNGGE.cjs');
28
+ var chunkWV4IDVDQ_cjs = require('../chunk-WV4IDVDQ.cjs');
29
29
  require('../chunk-B6MVQCXW.cjs');
30
30
  var chunkSWQX6CTT_cjs = require('../chunk-SWQX6CTT.cjs');
31
- var chunk6AALMYPS_cjs = require('../chunk-6AALMYPS.cjs');
32
- require('../chunk-32HW2Q33.cjs');
31
+ var chunkHM23LXUP_cjs = require('../chunk-HM23LXUP.cjs');
33
32
  require('../chunk-7UTB4PHM.cjs');
33
+ require('../chunk-32HW2Q33.cjs');
34
34
  require('../chunk-FX3K6LNZ.cjs');
35
35
  require('../chunk-PPCATBOY.cjs');
36
36
  require('../chunk-MHVNT4J3.cjs');
@@ -49,7 +49,7 @@ var client = require('@arbidocs/client');
49
49
  var reactDom = require('react-dom');
50
50
 
51
51
  function ConnectionBoundWebSocket({ children }) {
52
- const { status } = chunkMUMH3Z6K_cjs.useConnection();
52
+ const { status } = chunkLRD7BHAT_cjs.useConnection();
53
53
  return /* @__PURE__ */ jsxRuntime.jsx(react$1.ArbiWebSocketProvider, { enabled: status === "authenticated", children });
54
54
  }
55
55
  function ArbiAppProvider({
@@ -62,10 +62,10 @@ function ArbiAppProvider({
62
62
  })
63
63
  );
64
64
  const providerUrl = config.apiUrl || config.demoApiUrl || "https://demo.arbi.local";
65
- return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.ArbiProvider, { url: providerUrl, deploymentDomain: config.deploymentDomain, children: /* @__PURE__ */ jsxRuntime.jsx(chunkMUMH3Z6K_cjs.ConnectionProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(ConnectionBoundWebSocket, { children }) }) }) });
65
+ return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.ArbiProvider, { url: providerUrl, deploymentDomain: config.deploymentDomain, children: /* @__PURE__ */ jsxRuntime.jsx(chunkLRD7BHAT_cjs.ConnectionProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(ConnectionBoundWebSocket, { children }) }) }) });
66
66
  }
67
67
  function ConnectedTaskAccessRequest({ conversationId }) {
68
- const { workspaceId } = chunkMUMH3Z6K_cjs.useConnection();
68
+ const { workspaceId } = chunkLRD7BHAT_cjs.useConnection();
69
69
  const tasks = react$1.useConversations(workspaceId ?? void 0, { live: true });
70
70
  const run = react$1.useRunConversation();
71
71
  const task = tasks.data?.find((item) => item.external_id === conversationId);
@@ -97,7 +97,7 @@ function ConnectedWorkspaceActivity({
97
97
  pageSize,
98
98
  ...listProps
99
99
  }) {
100
- const { workspaceId: selected, status, ensureWorkspaceOpen } = chunkMUMH3Z6K_cjs.useConnection();
100
+ const { workspaceId: selected, status, ensureWorkspaceOpen } = chunkLRD7BHAT_cjs.useConnection();
101
101
  const workspaceId = workspaceProp ?? selected ?? void 0;
102
102
  const live = status === "authenticated" && !!workspaceId;
103
103
  const feed = react$1.useWorkspaceActivity(workspaceId, {
@@ -124,7 +124,7 @@ function ConnectedWorkspaceActivity({
124
124
  [feed.data]
125
125
  );
126
126
  return /* @__PURE__ */ jsxRuntime.jsx(
127
- chunkKYDRUFWT_cjs.WorkspaceActivityList,
127
+ chunkD4YR56FV_cjs.WorkspaceActivityList,
128
128
  {
129
129
  ...listProps,
130
130
  items,
@@ -143,14 +143,14 @@ function ConnectedWorkspaceNotificationMenu({
143
143
  workspaceId: workspaceProp,
144
144
  ...menuProps
145
145
  }) {
146
- const { workspaceId: selected, status } = chunkMUMH3Z6K_cjs.useConnection();
146
+ const { workspaceId: selected, status } = chunkLRD7BHAT_cjs.useConnection();
147
147
  const workspaceId = workspaceProp ?? selected;
148
148
  const { level, setLevel, isLoading, isSaving } = react$1.useWorkspaceNotificationLevel(workspaceId, {
149
149
  enabled: status === "authenticated"
150
150
  });
151
151
  if (!workspaceId) return null;
152
152
  return /* @__PURE__ */ jsxRuntime.jsx(
153
- chunkKYDRUFWT_cjs.WorkspaceNotificationMenu,
153
+ chunkD4YR56FV_cjs.WorkspaceNotificationMenu,
154
154
  {
155
155
  ...menuProps,
156
156
  level,
@@ -164,12 +164,12 @@ function ConnectedThreadFollow({
164
164
  as = "button",
165
165
  ...props
166
166
  }) {
167
- const { status } = chunkMUMH3Z6K_cjs.useConnection();
167
+ const { status } = chunkLRD7BHAT_cjs.useConnection();
168
168
  const { following, setFollowing, isLoading, isSaving } = react$1.useFollowThread(conversationId, {
169
169
  enabled: status === "authenticated"
170
170
  });
171
171
  if (!conversationId) return null;
172
- const Control = as === "menu-item" ? chunkKYDRUFWT_cjs.ThreadFollowMenuItem : chunkKYDRUFWT_cjs.ThreadFollowButton;
172
+ const Control = as === "menu-item" ? chunkD4YR56FV_cjs.ThreadFollowMenuItem : chunkD4YR56FV_cjs.ThreadFollowButton;
173
173
  return /* @__PURE__ */ jsxRuntime.jsx(
174
174
  Control,
175
175
  {
@@ -295,7 +295,7 @@ function StreamedArtifact({
295
295
  }
296
296
  var STARTING = /* @__PURE__ */ new Set(["pending", "running"]);
297
297
  function formValues(step, inputs) {
298
- const fields = chunk6AALMYPS_cjs.stepFields(step);
298
+ const fields = chunkHM23LXUP_cjs.stepFields(step);
299
299
  if (!fields.length) return void 0;
300
300
  if (step.kind === "form")
301
301
  return Object.fromEntries(fields.map((f) => [f.name, inputs[f.name] ?? ""]));
@@ -329,11 +329,11 @@ function useAnswerRetry(missing, refetch) {
329
329
  }
330
330
  function useWorkflowThread(workflow, options = {}) {
331
331
  const arbi = react$1.useArbi();
332
- const { ensureWorkspaceOpen, status } = chunkMUMH3Z6K_cjs.useConnection();
333
- const { wsId } = chunk7423V6RM_cjs.useWorkspaceDocs();
332
+ const { ensureWorkspaceOpen, status } = chunkLRD7BHAT_cjs.useConnection();
333
+ const { wsId } = chunk7KH4M3KY_cjs.useWorkspaceDocs();
334
334
  const [threadId, setThreadId] = react.useState(options.conversationId);
335
335
  const [localInputs, setLocalInputs] = react.useState(
336
- () => chunk6AALMYPS_cjs.initialRunInputs(workflow, options.initialInputs)
336
+ () => chunkHM23LXUP_cjs.initialRunInputs(workflow, options.initialInputs)
337
337
  );
338
338
  const [edits, setEdits] = react.useState({});
339
339
  const [localStates, setLocalStates] = react.useState({});
@@ -353,12 +353,12 @@ function useWorkflowThread(workflow, options = {}) {
353
353
  );
354
354
  const conversation = conversations.data?.find((c) => c.external_id === threadId);
355
355
  const steps = react.useMemo(
356
- () => chunk6AALMYPS_cjs.workflowSteps(workflow).length > 0 ? chunk6AALMYPS_cjs.workflowSteps(workflow) : chunkSARREDFP_cjs.fromPlanSteps(conversation?.plan?.steps ?? []),
356
+ () => chunkHM23LXUP_cjs.workflowSteps(workflow).length > 0 ? chunkHM23LXUP_cjs.workflowSteps(workflow) : chunkLC2KJSUS_cjs.fromPlanSteps(conversation?.plan?.steps ?? []),
357
357
  [workflow, conversation?.plan?.steps]
358
358
  );
359
359
  const activity = react$1.useConversationActivity(threadId, { live: !!threadId });
360
360
  const serverStates = react.useMemo(
361
- () => chunk6AALMYPS_cjs.stepStatesFromActivity(activity.data ?? []),
361
+ () => chunkHM23LXUP_cjs.stepStatesFromActivity(activity.data ?? []),
362
362
  [activity.data]
363
363
  );
364
364
  const working = steps.some(
@@ -401,7 +401,7 @@ function useWorkflowThread(workflow, options = {}) {
401
401
  async (values, done) => {
402
402
  await ensureWorkspaceOpen();
403
403
  const created = await createWork.mutateAsync({
404
- title: chunk6AALMYPS_cjs.runThreadTitle(workflow, values).slice(0, 60),
404
+ title: chunkHM23LXUP_cjs.runThreadTitle(workflow, values).slice(0, 60),
405
405
  description: workflow.description || null,
406
406
  prompt: null,
407
407
  skill_ref: null,
@@ -413,7 +413,7 @@ function useWorkflowThread(workflow, options = {}) {
413
413
  criteria: [],
414
414
  max_passes: 3,
415
415
  documents: [],
416
- steps: chunkSARREDFP_cjs.toPlanSteps(workflow, {
416
+ steps: chunkLC2KJSUS_cjs.toPlanSteps(workflow, {
417
417
  inputs: values,
418
418
  resolveWorkflow: options.resolveWorkflow,
419
419
  compose: options.compose
@@ -500,7 +500,7 @@ function useWorkflowThread(workflow, options = {}) {
500
500
  const anyRunning = Object.values(states).some((s) => s.status === "running");
501
501
  const needsStart = !threadId || idle && !anyRunning;
502
502
  const runError = idle ? conversation?.last_error ?? null : null;
503
- const view = chunkSARREDFP_cjs.useWorkflowView({
503
+ const view = chunkLC2KJSUS_cjs.useWorkflowView({
504
504
  steps,
505
505
  states,
506
506
  inputs,
@@ -543,7 +543,7 @@ function WorkflowRunThread({
543
543
  if (listed && activeThreadId !== conversationId) selectThread(conversationId);
544
544
  }, [listed, activeThreadId, conversationId, selectThread]);
545
545
  return /* @__PURE__ */ jsxRuntime.jsx(
546
- chunkPJJY6CYL_cjs.ChatPage,
546
+ chunkWV4IDVDQ_cjs.ChatPage,
547
547
  {
548
548
  chat: { ...chat, threads: chat.threads.filter((t) => t.id === conversationId) },
549
549
  singleThread: true,
@@ -579,9 +579,9 @@ function WorkflowSignDialog({
579
579
  labels
580
580
  }) {
581
581
  const arbi = react$1.useArbi();
582
- const { user, ensureWorkspaceOpen } = chunkMUMH3Z6K_cjs.useConnection();
582
+ const { user, ensureWorkspaceOpen } = chunkLRD7BHAT_cjs.useConnection();
583
583
  const tools = documentTools.useOptionalDocumentTools();
584
- const { id, version: stepVersion } = chunk6AALMYPS_cjs.splitDocRef(docRef);
584
+ const { id, version: stepVersion } = chunkHM23LXUP_cjs.splitDocRef(docRef);
585
585
  const [version, setVersion] = react.useState(stepVersion);
586
586
  const [pdf, setPdf] = react.useState(null);
587
587
  const [preparing, setPreparing] = react.useState(false);
@@ -659,7 +659,7 @@ function WorkflowWordDialog({
659
659
  onClose,
660
660
  labels
661
661
  }) {
662
- const { id } = chunk6AALMYPS_cjs.splitDocRef(docRef);
662
+ const { id } = chunkHM23LXUP_cjs.splitDocRef(docRef);
663
663
  return /* @__PURE__ */ jsxRuntime.jsx(
664
664
  chunkULWRNGGE_cjs.ModalScaffold,
665
665
  {
@@ -668,7 +668,7 @@ function WorkflowWordDialog({
668
668
  title: title ?? labels.wordTitle,
669
669
  size: "xl",
670
670
  testId: "workflow-word-dialog",
671
- children: /* @__PURE__ */ jsxRuntime.jsx(chunkULWRNGGE_cjs.ModalScaffold.Body, { className: "h-[70dvh] p-0", children: /* @__PURE__ */ jsxRuntime.jsx(chunk3BJLNKOB_cjs.ConnectedNativeDocxEditor, { documentId: id, title: title ?? labels.wordTitle }) })
671
+ children: /* @__PURE__ */ jsxRuntime.jsx(chunkULWRNGGE_cjs.ModalScaffold.Body, { className: "h-[70dvh] p-0", children: /* @__PURE__ */ jsxRuntime.jsx(chunkCDZVC32G_cjs.ConnectedNativeDocxEditor, { documentId: id, title: title ?? labels.wordTitle }) })
672
672
  }
673
673
  );
674
674
  }
@@ -679,7 +679,7 @@ function WorkflowReviewGridDialog({
679
679
  onOpenDocument,
680
680
  labels
681
681
  }) {
682
- const { workspaceId } = chunkMUMH3Z6K_cjs.useConnection();
682
+ const { workspaceId } = chunkLRD7BHAT_cjs.useConnection();
683
683
  const allTags = react$1.useTags(workspaceId ?? void 0);
684
684
  const all = react$1.useDocuments(workspaceId ?? void 0);
685
685
  const isLoading = allTags.isLoading || all.isLoading || all.isFetching && !all.isFetchedAfterMount;
@@ -807,8 +807,8 @@ function ConnectedWorkflowRunner({
807
807
  const l = { ...DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS, ...connectedLabels };
808
808
  const dl = { ...DEFAULT_WORKFLOW_RUNNER_DIALOG_LABELS, ...dialogLabels };
809
809
  const arbi = react$1.useArbi();
810
- const { ensureWorkspaceOpen, user } = chunkMUMH3Z6K_cjs.useConnection();
811
- const { wsId } = chunk7423V6RM_cjs.useWorkspaceDocs();
810
+ const { ensureWorkspaceOpen, user } = chunkLRD7BHAT_cjs.useConnection();
811
+ const { wsId } = chunk7KH4M3KY_cjs.useWorkspaceDocs();
812
812
  const { data: docs = [], refetch } = react$1.useDocuments(wsId);
813
813
  const [sending, setSending] = react.useState([]);
814
814
  const [added, setAdded] = react.useState({});
@@ -831,7 +831,7 @@ function ConnectedWorkflowRunner({
831
831
  () => ({
832
832
  me: user?.externalId,
833
833
  openDocument: onOpenDocument && ((ref) => {
834
- const { id, version } = chunk6AALMYPS_cjs.splitDocRef(ref);
834
+ const { id, version } = chunkHM23LXUP_cjs.splitDocRef(ref);
835
835
  onOpenDocument(id, version);
836
836
  }),
837
837
  openDraft: onOpenDraft && ((draftId) => onOpenDraft(draftId)),
@@ -841,7 +841,7 @@ function ConnectedWorkflowRunner({
841
841
  const w = state.waiting;
842
842
  if (w?.doc_ext_id) setDialog({ kind: "sign", docRef: w.doc_ext_id });
843
843
  }),
844
- openRedline: hostActions?.openRedline ?? ((ref) => setDialog({ kind: "word", docRef: ref, title: nameOfDoc(chunk6AALMYPS_cjs.splitDocRef(ref).id) ?? "" })),
844
+ openRedline: hostActions?.openRedline ?? ((ref) => setDialog({ kind: "word", docRef: ref, title: nameOfDoc(chunkHM23LXUP_cjs.splitDocRef(ref).id) ?? "" })),
845
845
  openReview: hostActions?.openReview ?? ((tags, documents) => setDialog({ kind: "review", tags, documents }))
846
846
  }),
847
847
  [user?.externalId, onOpenDocument, onOpenDraft, onOpenMessage, hostActions, nameOfDoc, inThread]
@@ -977,7 +977,7 @@ function ConnectedWorkflowRunner({
977
977
  );
978
978
  };
979
979
  const runner = (compact) => /* @__PURE__ */ jsxRuntime.jsx(
980
- chunkSARREDFP_cjs.WorkflowRunner,
980
+ chunkLC2KJSUS_cjs.WorkflowRunner,
981
981
  {
982
982
  people,
983
983
  ...runnerProps,
@@ -1023,10 +1023,10 @@ function ConnectedWorkflowRunner({
1023
1023
  ) }),
1024
1024
  inThread && conversationId ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1025
1025
  /* @__PURE__ */ jsxRuntime.jsx(
1026
- chunkSARREDFP_cjs.WorkflowStepBar,
1026
+ chunkLC2KJSUS_cjs.WorkflowStepBar,
1027
1027
  {
1028
1028
  run: view,
1029
- levels: chunk6AALMYPS_cjs.stepLevels(view.steps),
1029
+ levels: chunkHM23LXUP_cjs.stepLevels(view.steps),
1030
1030
  doneTitle: (workflow.run.kind === "steps" ? workflow.run.completion?.title : void 0) ?? runnerProps.labels?.complete ?? "Done",
1031
1031
  icon: (key) => key && runnerProps.renderIcon ? runnerProps.renderIcon(key) : void 0,
1032
1032
  tid: (suffix) => `${testIdPrefix}-${suffix}`
@@ -1046,13 +1046,13 @@ function ConnectedWorkflowRunner({
1046
1046
  return state ? [[s.id, state]] : [];
1047
1047
  })
1048
1048
  );
1049
- const ref = chunk6AALMYPS_cjs.stepDocuments(view.steps, states, id).at(-1);
1049
+ const ref = chunkHM23LXUP_cjs.stepDocuments(view.steps, states, id).at(-1);
1050
1050
  const open = actions.openDocument ?? actions.openRedline;
1051
1051
  return {
1052
1052
  title: step.title,
1053
- kind: chunk6AALMYPS_cjs.stepKindOf(step),
1053
+ kind: chunkHM23LXUP_cjs.stepKindOf(step),
1054
1054
  phase: view.phaseOf(id),
1055
- document: ref && open ? { name: nameOfDoc(chunk6AALMYPS_cjs.splitDocRef(ref).id) ?? ref, onOpen: () => open(ref) } : void 0
1055
+ document: ref && open ? { name: nameOfDoc(chunkHM23LXUP_cjs.splitDocRef(ref).id) ?? ref, onOpen: () => open(ref) } : void 0
1056
1056
  };
1057
1057
  },
1058
1058
  targetMessageId: target,
@@ -1119,7 +1119,7 @@ function ReviewNotify({
1119
1119
  testId
1120
1120
  }) {
1121
1121
  const arbi = react$1.useArbi();
1122
- const { status, user, ensureWorkspaceOpen } = chunkMUMH3Z6K_cjs.useConnection();
1122
+ const { status, user, ensureWorkspaceOpen } = chunkLRD7BHAT_cjs.useConnection();
1123
1123
  const { data: members = [] } = react$1.useWorkspaceUsers(workspaceId, {
1124
1124
  enabled: status === "authenticated" && !!workspaceId,
1125
1125
  beforeFetch: ensureWorkspaceOpen
@@ -1196,7 +1196,7 @@ function ConnectedTagTable({
1196
1196
  ...props
1197
1197
  }) {
1198
1198
  const arbi = react$1.useArbi();
1199
- const { workspaceId, status, ensureWorkspaceOpen } = chunkMUMH3Z6K_cjs.useConnection();
1199
+ const { workspaceId, status, ensureWorkspaceOpen } = chunkLRD7BHAT_cjs.useConnection();
1200
1200
  const schema = react$1.useTagKindSchema(kind);
1201
1201
  const rows = react$1.useTags(workspaceId ?? void 0, {
1202
1202
  kind,
@@ -1224,7 +1224,7 @@ function ConnectedTagTable({
1224
1224
  const fail = (e) => setError(e instanceof Error ? e.message : String(e));
1225
1225
  const snapshot = (data) => {
1226
1226
  const title = exportTitle ?? KIND_TITLES[kind];
1227
- const bytes = chunkKYDRUFWT_cjs.tagTableDocx(data, {
1227
+ const bytes = chunkD4YR56FV_cjs.tagTableDocx(data, {
1228
1228
  title,
1229
1229
  nameOf: (id) => people.find((p) => p.value === id)?.label
1230
1230
  });
@@ -1234,7 +1234,7 @@ function ConnectedTagTable({
1234
1234
  };
1235
1235
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
1236
1236
  /* @__PURE__ */ jsxRuntime.jsx(
1237
- chunkKYDRUFWT_cjs.TagTable,
1237
+ chunkD4YR56FV_cjs.TagTable,
1238
1238
  {
1239
1239
  ...props,
1240
1240
  table,
@@ -1300,7 +1300,7 @@ function ConnectedTagTable({
1300
1300
  ] });
1301
1301
  }
1302
1302
  function useConnectedShellWorkspaces(options = {}) {
1303
- const { workspaceId, setWorkspace } = chunkMUMH3Z6K_cjs.useConnection();
1303
+ const { workspaceId, setWorkspace } = chunkLRD7BHAT_cjs.useConnection();
1304
1304
  const query = react$1.useWorkspaces();
1305
1305
  return react$1.useShellWorkspaces({
1306
1306
  ...options,
@@ -1320,12 +1320,16 @@ var AVATAR_PROBLEMS = {
1320
1320
  "too-large": "Image must be 5 MB or smaller",
1321
1321
  unreadable: "Couldn't read that image \u2014 try a different file"
1322
1322
  };
1323
- function ConnectedProfileCard({ notify: notify3, title = "Profile" }) {
1323
+ function ConnectedProfileCard({
1324
+ notify: notify3,
1325
+ title = "Profile",
1326
+ avatarClassName = "bg-primary text-primary-foreground",
1327
+ children
1328
+ }) {
1324
1329
  const { data: profile } = react$1.useProfile();
1325
1330
  const updateProfile = react$1.useUpdateProfile();
1326
1331
  const requestEmailChange = react$1.useRequestEmailChange();
1327
1332
  const confirmEmailChange = react$1.useConfirmEmailChange();
1328
- const { user } = chunkMUMH3Z6K_cjs.useConnection();
1329
1333
  const name = react$1.useNameEditor({
1330
1334
  givenName: profile?.givenName,
1331
1335
  familyName: profile?.familyName,
@@ -1371,61 +1375,68 @@ function ConnectedProfileCard({ notify: notify3, title = "Profile" }) {
1371
1375
  }
1372
1376
  }
1373
1377
  });
1374
- const display = profile?.fullName || user?.name || "Unnamed";
1375
- return /* @__PURE__ */ jsxRuntime.jsx(chunkOR4CO743_cjs.SettingsSection, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.UserCircle, {}), title, children: /* @__PURE__ */ jsxRuntime.jsx(
1376
- chunkOR4CO743_cjs.ProfileCard,
1377
- {
1378
- avatar: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1379
- /* @__PURE__ */ jsxRuntime.jsx(
1380
- chunkOR4CO743_cjs.AvatarPicker,
1381
- {
1382
- pictureUrl: profile?.picture ?? user?.picture,
1383
- initials: chunkKDG6FER6_cjs.initials(display),
1384
- fallbackClassName: "bg-primary text-primary-foreground",
1385
- isUploading: avatar.isUploading,
1386
- onFileChosen: avatar.onFileChosen
1387
- }
1388
- ),
1389
- /* @__PURE__ */ jsxRuntime.jsx(
1390
- react$1.ImageCropModal,
1391
- {
1392
- open: avatar.pendingImage !== null,
1393
- image: avatar.pendingImage,
1394
- title: "Crop your photo",
1395
- aspect: 1,
1396
- cropShape: "round",
1397
- output: { maxSize: 128, mimeType: "image/jpeg", quality: 0.85 },
1398
- onComplete: avatar.onCropComplete,
1399
- onCancel: avatar.onCropCancel
1400
- }
1401
- )
1402
- ] }),
1403
- name: { ...name, display, isSaving: name.isSaving },
1404
- email: profile?.email ?? user?.email ?? "",
1405
- isSso: profile?.isSso ?? false,
1406
- isVerified: profile?.isIdentityVerified ?? false,
1407
- onStartEmailChange: email.onStart,
1408
- emailChange: email.isOpen ? email : void 0
1409
- }
1410
- ) });
1378
+ const display = profile?.fullName || "Unnamed";
1379
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkOR4CO743_cjs.SettingsSection, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.UserCircle, {}), title, children: [
1380
+ /* @__PURE__ */ jsxRuntime.jsx(
1381
+ chunkOR4CO743_cjs.ProfileCard,
1382
+ {
1383
+ avatar: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1384
+ /* @__PURE__ */ jsxRuntime.jsx(
1385
+ chunkOR4CO743_cjs.AvatarPicker,
1386
+ {
1387
+ pictureUrl: profile?.picture,
1388
+ initials: chunkKDG6FER6_cjs.initials(display),
1389
+ fallbackClassName: avatarClassName,
1390
+ isUploading: avatar.isUploading,
1391
+ onFileChosen: avatar.onFileChosen
1392
+ }
1393
+ ),
1394
+ /* @__PURE__ */ jsxRuntime.jsx(
1395
+ react$1.ImageCropModal,
1396
+ {
1397
+ open: avatar.pendingImage !== null,
1398
+ image: avatar.pendingImage,
1399
+ title: "Crop your photo",
1400
+ aspect: 1,
1401
+ cropShape: "round",
1402
+ output: { maxSize: 128, mimeType: "image/jpeg", quality: 0.85 },
1403
+ onComplete: avatar.onCropComplete,
1404
+ onCancel: avatar.onCropCancel
1405
+ }
1406
+ )
1407
+ ] }),
1408
+ name: { ...name, display, isSaving: name.isSaving },
1409
+ email: profile?.email ?? "",
1410
+ isSso: profile?.isSso ?? false,
1411
+ isVerified: profile?.isIdentityVerified ?? false,
1412
+ onStartEmailChange: email.onStart,
1413
+ emailChange: email.isOpen ? email : void 0
1414
+ }
1415
+ ),
1416
+ children
1417
+ ] });
1411
1418
  }
1412
1419
  function ConnectedIdentityVerification({
1413
1420
  notify: notify3,
1414
- labels
1421
+ labels,
1422
+ onManageBilling,
1423
+ formatPrice
1415
1424
  }) {
1416
1425
  const { data: profile } = react$1.useProfile();
1417
1426
  const flow = react$1.useIdentityVerification({
1427
+ formatPrice,
1418
1428
  onVerifiedChange: (verified) => notify3?.(verified ? "Identity verified" : "Verified tick removed", "success"),
1419
1429
  onNameAccepted: () => notify3?.("Name updated to match your ID", "success")
1420
1430
  });
1421
1431
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1422
- /* @__PURE__ */ jsxRuntime.jsx(chunkOR4CO743_cjs.IdentityVerificationCard, { flow, labels }),
1432
+ /* @__PURE__ */ jsxRuntime.jsx(chunkOR4CO743_cjs.IdentityVerificationCard, { flow, labels, onManageBilling }),
1423
1433
  /* @__PURE__ */ jsxRuntime.jsx(
1424
1434
  chunkOR4CO743_cjs.IdentityVerificationDialog,
1425
1435
  {
1426
1436
  flow,
1427
1437
  accountName: profile?.fullName ?? "",
1428
- labels
1438
+ labels,
1439
+ onManageBilling
1429
1440
  }
1430
1441
  )
1431
1442
  ] });
@@ -1443,21 +1454,56 @@ function defaultUnmetPasswordRequirement(password) {
1443
1454
  if (!/[0-9]/.test(password)) return "At least one number";
1444
1455
  return null;
1445
1456
  }
1446
- function ConnectedSecuritySection({
1457
+ function ConnectedPasswordChangeDialog({
1458
+ open,
1459
+ onClose,
1447
1460
  notify: notify3,
1448
1461
  getUnmetRequirement = defaultUnmetPasswordRequirement,
1449
- children
1462
+ recoveryMode = false,
1463
+ onRecoveryComplete
1450
1464
  }) {
1451
- const [open, setOpen] = react.useState(false);
1452
1465
  const change = react$1.usePasswordChange();
1453
1466
  const form = react$1.usePasswordChangeForm({
1467
+ recoveryMode,
1454
1468
  getUnmetRequirement,
1455
1469
  submit: async (vars) => {
1456
1470
  await change.mutateAsync(vars);
1457
- notify3?.("Password changed successfully", "success");
1471
+ notify3?.(
1472
+ recoveryMode ? "Account recovered and password set successfully" : "Password changed successfully",
1473
+ "success"
1474
+ );
1458
1475
  },
1459
- onClose: () => setOpen(false)
1476
+ onClose,
1477
+ onRecoveryComplete
1460
1478
  });
1479
+ return /* @__PURE__ */ jsxRuntime.jsx(
1480
+ chunkOR4CO743_cjs.PasswordChangeDialog,
1481
+ {
1482
+ open,
1483
+ onClose: form.onCancel,
1484
+ recoveryMode,
1485
+ currentPassword: form.currentPassword,
1486
+ onCurrentPasswordChange: form.onCurrentPasswordChange,
1487
+ newPassword: form.newPassword,
1488
+ onNewPasswordChange: form.onNewPasswordChange,
1489
+ confirmPassword: form.confirmPassword,
1490
+ onConfirmPasswordChange: form.onConfirmPasswordChange,
1491
+ getUnmetRequirement,
1492
+ error: form.error,
1493
+ isProcessing: form.isProcessing,
1494
+ isSubmitDisabled: form.isSubmitDisabled,
1495
+ onSubmit: form.onSubmit,
1496
+ isChanged: form.isChanged,
1497
+ onDone: form.onDone
1498
+ }
1499
+ );
1500
+ }
1501
+ function ConnectedSecuritySection({
1502
+ notify: notify3,
1503
+ getUnmetRequirement,
1504
+ children
1505
+ }) {
1506
+ const [open, setOpen] = react.useState(false);
1461
1507
  return /* @__PURE__ */ jsxRuntime.jsxs(chunkOR4CO743_cjs.SettingsSection, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.KeyRound, {}), title: "Security", children: [
1462
1508
  /* @__PURE__ */ jsxRuntime.jsxs(chunkOR4CO743_cjs.SettingsCard, { padding: "sm", children: [
1463
1509
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1472,24 +1518,12 @@ function ConnectedSecuritySection({
1472
1518
  children
1473
1519
  ] }),
1474
1520
  /* @__PURE__ */ jsxRuntime.jsx(
1475
- chunkOR4CO743_cjs.PasswordChangeDialog,
1521
+ ConnectedPasswordChangeDialog,
1476
1522
  {
1477
1523
  open,
1478
- onClose: form.onCancel,
1479
- recoveryMode: false,
1480
- currentPassword: form.currentPassword,
1481
- onCurrentPasswordChange: form.onCurrentPasswordChange,
1482
- newPassword: form.newPassword,
1483
- onNewPasswordChange: form.onNewPasswordChange,
1484
- confirmPassword: form.confirmPassword,
1485
- onConfirmPasswordChange: form.onConfirmPasswordChange,
1486
- getUnmetRequirement,
1487
- error: form.error,
1488
- isProcessing: form.isProcessing,
1489
- isSubmitDisabled: form.isSubmitDisabled,
1490
- onSubmit: form.onSubmit,
1491
- isChanged: form.isChanged,
1492
- onDone: form.onDone
1524
+ onClose: () => setOpen(false),
1525
+ notify: notify3,
1526
+ getUnmetRequirement
1493
1527
  }
1494
1528
  )
1495
1529
  ] });
@@ -1582,26 +1616,26 @@ function ConnectedSessionsRow({
1582
1616
  function ConnectedLogoutDialog({
1583
1617
  open,
1584
1618
  onClose,
1585
- isOnline = true,
1619
+ canLogoutAll = true,
1620
+ confirmSignOut,
1586
1621
  renderSessionIcon
1587
1622
  }) {
1588
- const { logout } = chunkMUMH3Z6K_cjs.useConnection();
1589
1623
  const sessions = react$1.useSessions({ enabled: open });
1590
- const logoutAll = react$1.useLogoutAllSessions();
1624
+ const signOut = react$1.useSignOut();
1625
+ const isOnline = documentTools.useIsOnline();
1626
+ const run = async (everywhere) => {
1627
+ onClose();
1628
+ if (confirmSignOut && !await confirmSignOut()) return;
1629
+ signOut.mutate({ everywhere, reason: "manual" });
1630
+ };
1591
1631
  return /* @__PURE__ */ jsxRuntime.jsx(
1592
1632
  chunkOR4CO743_cjs.LogoutDialog,
1593
1633
  {
1594
1634
  open,
1595
1635
  onClose,
1596
- onLogoutThis: () => {
1597
- onClose();
1598
- logout();
1599
- },
1600
- onLogoutAll: () => {
1601
- onClose();
1602
- void logoutAll.mutateAsync().finally(logout);
1603
- },
1604
- canLogoutAll: true,
1636
+ onLogoutThis: () => void run(false),
1637
+ onLogoutAll: () => void run(true),
1638
+ canLogoutAll,
1605
1639
  isOnline,
1606
1640
  sessions: chunkOR4CO743_cjs.toLogoutSessionViews(sessions.data ?? []),
1607
1641
  renderSessionIcon
@@ -1611,13 +1645,15 @@ function ConnectedLogoutDialog({
1611
1645
  function ConnectedDangerZone({ notify: notify3, renderSubscriptionLink }) {
1612
1646
  const [zoneOpen, setZoneOpen] = react.useState(false);
1613
1647
  const [dialogOpen, setDialogOpen] = react.useState(false);
1614
- const { user, logout } = chunkMUMH3Z6K_cjs.useConnection();
1648
+ const { data: profile } = react$1.useProfile();
1649
+ const userEmail = profile?.email ?? "";
1615
1650
  const remove = react$1.useDeleteAccount();
1651
+ const signOut = react$1.useSignOut();
1616
1652
  const flow = react$1.useDeleteAccountFlow({
1617
- userEmail: user?.email ?? "",
1653
+ userEmail,
1618
1654
  remove: () => remove.mutateAsync(),
1619
1655
  onClose: () => setDialogOpen(false),
1620
- onDeleted: logout,
1656
+ onDeleted: () => signOut.mutate({ reason: "account-deleted" }),
1621
1657
  onError: () => notify3?.("Failed to delete account. Please try again.", "error")
1622
1658
  });
1623
1659
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -1633,7 +1669,7 @@ function ConnectedDangerZone({ notify: notify3, renderSubscriptionLink }) {
1633
1669
  {
1634
1670
  variant: "destructive",
1635
1671
  size: "sm",
1636
- disabled: !user?.email,
1672
+ disabled: !userEmail,
1637
1673
  onClick: () => setDialogOpen(true),
1638
1674
  "data-testid": "delete-account-button",
1639
1675
  children: "Delete Account"
@@ -1650,7 +1686,7 @@ function ConnectedDangerZone({ notify: notify3, renderSubscriptionLink }) {
1650
1686
  blockers: chunkOR4CO743_cjs.toDeleteBlockerViews(flow.blockers, renderSubscriptionLink),
1651
1687
  onContinue: flow.onContinue,
1652
1688
  onBack: flow.onBack,
1653
- userEmail: user?.email ?? "",
1689
+ userEmail,
1654
1690
  confirmEmail: flow.confirmEmail,
1655
1691
  onConfirmEmailChange: flow.onConfirmEmailChange,
1656
1692
  isDeleting: flow.isDeleting,
@@ -1661,7 +1697,7 @@ function ConnectedDangerZone({ notify: notify3, renderSubscriptionLink }) {
1661
1697
  }
1662
1698
  function useConnectedDocxNotifications(onOpen) {
1663
1699
  const arbi = react$1.useArbi();
1664
- const { status, user, apiUrl } = chunkMUMH3Z6K_cjs.useConnection();
1700
+ const { status, user, apiUrl } = chunkLRD7BHAT_cjs.useConnection();
1665
1701
  const queries = reactQuery.useQueryClient();
1666
1702
  const source = `docx-mentions:${apiUrl}:${user?.externalId || ""}`;
1667
1703
  const queryKey = ["docx-mentions", apiUrl, user?.externalId];
@@ -1725,7 +1761,7 @@ function useConnectedDocxNotifications(onOpen) {
1725
1761
  };
1726
1762
  }
1727
1763
  function useConnectedWorkNotifications(onOpen) {
1728
- const { status, user, apiUrl } = chunkMUMH3Z6K_cjs.useConnection();
1764
+ const { status, user, apiUrl } = chunkLRD7BHAT_cjs.useConnection();
1729
1765
  const source = `work-notifications:${apiUrl}:${user?.externalId || ""}`;
1730
1766
  const { data = [], markRead: persistRead } = react$1.useWorkNotifications({
1731
1767
  apiUrl,
@@ -3722,7 +3758,7 @@ function ActiveChat({ agentId, workspaceId }) {
3722
3758
  activeArtifact: () => chunkSWQX6CTT_cjs.takeOpenDocumentForTurn({ workspaceId })
3723
3759
  });
3724
3760
  return /* @__PURE__ */ jsxRuntime.jsx(
3725
- chunkPJJY6CYL_cjs.ChatPage,
3761
+ chunkWV4IDVDQ_cjs.ChatPage,
3726
3762
  {
3727
3763
  chat: { ...chat, assistantMode: void 0, setAssistantMode: void 0 },
3728
3764
  documentsRequired: false,
@@ -3784,51 +3820,51 @@ function ConnectedAgentChatPanel({
3784
3820
 
3785
3821
  Object.defineProperty(exports, "ConnectedAssistantDock", {
3786
3822
  enumerable: true,
3787
- get: function () { return chunk7423V6RM_cjs.ConnectedAssistantDock; }
3823
+ get: function () { return chunk7KH4M3KY_cjs.ConnectedAssistantDock; }
3788
3824
  });
3789
3825
  Object.defineProperty(exports, "redlineStats", {
3790
3826
  enumerable: true,
3791
- get: function () { return chunk7423V6RM_cjs.redlineStats; }
3827
+ get: function () { return chunk7KH4M3KY_cjs.redlineStats; }
3792
3828
  });
3793
3829
  Object.defineProperty(exports, "textToArtifact", {
3794
3830
  enumerable: true,
3795
- get: function () { return chunk7423V6RM_cjs.textToArtifact; }
3831
+ get: function () { return chunk7KH4M3KY_cjs.textToArtifact; }
3796
3832
  });
3797
3833
  Object.defineProperty(exports, "toRedlineMarkdown", {
3798
3834
  enumerable: true,
3799
- get: function () { return chunk7423V6RM_cjs.toRedlineMarkdown; }
3835
+ get: function () { return chunk7KH4M3KY_cjs.toRedlineMarkdown; }
3800
3836
  });
3801
3837
  Object.defineProperty(exports, "useConnectedAiTask", {
3802
3838
  enumerable: true,
3803
- get: function () { return chunk7423V6RM_cjs.useConnectedAiTask; }
3839
+ get: function () { return chunk7KH4M3KY_cjs.useConnectedAiTask; }
3804
3840
  });
3805
3841
  Object.defineProperty(exports, "useConnectedChat", {
3806
3842
  enumerable: true,
3807
- get: function () { return chunk7423V6RM_cjs.useConnectedChat; }
3843
+ get: function () { return chunk7KH4M3KY_cjs.useConnectedChat; }
3808
3844
  });
3809
3845
  Object.defineProperty(exports, "useSemanticSearch", {
3810
3846
  enumerable: true,
3811
- get: function () { return chunk7423V6RM_cjs.useSemanticSearch; }
3847
+ get: function () { return chunk7KH4M3KY_cjs.useSemanticSearch; }
3812
3848
  });
3813
3849
  Object.defineProperty(exports, "useWorkspaceDocs", {
3814
3850
  enumerable: true,
3815
- get: function () { return chunk7423V6RM_cjs.useWorkspaceDocs; }
3851
+ get: function () { return chunk7KH4M3KY_cjs.useWorkspaceDocs; }
3816
3852
  });
3817
3853
  Object.defineProperty(exports, "ConnectionProvider", {
3818
3854
  enumerable: true,
3819
- get: function () { return chunkMUMH3Z6K_cjs.ConnectionProvider; }
3855
+ get: function () { return chunkLRD7BHAT_cjs.ConnectionProvider; }
3820
3856
  });
3821
3857
  Object.defineProperty(exports, "SESSION_EXPIRED_MESSAGE", {
3822
3858
  enumerable: true,
3823
- get: function () { return chunkMUMH3Z6K_cjs.SESSION_EXPIRED_MESSAGE; }
3859
+ get: function () { return chunkLRD7BHAT_cjs.SESSION_EXPIRED_MESSAGE; }
3824
3860
  });
3825
3861
  Object.defineProperty(exports, "isAuthenticated", {
3826
3862
  enumerable: true,
3827
- get: function () { return chunkMUMH3Z6K_cjs.isAuthenticated; }
3863
+ get: function () { return chunkLRD7BHAT_cjs.isAuthenticated; }
3828
3864
  });
3829
3865
  Object.defineProperty(exports, "useConnection", {
3830
3866
  enumerable: true,
3831
- get: function () { return chunkMUMH3Z6K_cjs.useConnection; }
3867
+ get: function () { return chunkLRD7BHAT_cjs.useConnection; }
3832
3868
  });
3833
3869
  exports.ArbiAppProvider = ArbiAppProvider;
3834
3870
  exports.ConnectedAgentChatPanel = ConnectedAgentChatPanel;
@@ -3841,6 +3877,7 @@ exports.ConnectedMailMessage = ConnectedMailMessage;
3841
3877
  exports.ConnectedMailSetup = ConnectedMailSetup;
3842
3878
  exports.ConnectedMailbox = ConnectedMailbox;
3843
3879
  exports.ConnectedNotificationPreferences = ConnectedNotificationPreferences;
3880
+ exports.ConnectedPasswordChangeDialog = ConnectedPasswordChangeDialog;
3844
3881
  exports.ConnectedProfileCard = ConnectedProfileCard;
3845
3882
  exports.ConnectedRequireVerified = ConnectedRequireVerified;
3846
3883
  exports.ConnectedSecuritySection = ConnectedSecuritySection;