@arbidocs/blocks 0.5.99 → 0.5.101

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 (166) hide show
  1. package/README.md +9 -1
  2. package/dist/ConnectedCallDock-OJ4UR5PR.js +1 -1
  3. package/dist/ConnectedCallDock-OKH3FT2U.cjs +1 -1
  4. package/dist/ConnectedCallRoom-NB7I6RLQ.cjs +1 -1
  5. package/dist/ConnectedCallRoom-OX7ZIF76.js +1 -1
  6. package/dist/{ConnectedNativeDocxComparison-F4XKHVTI.cjs → ConnectedNativeDocxComparison-6BQ2WFF6.cjs} +9 -9
  7. package/dist/{ConnectedNativeDocxComparison-F4XKHVTI.cjs.map → ConnectedNativeDocxComparison-6BQ2WFF6.cjs.map} +1 -1
  8. package/dist/{ConnectedNativeDocxComparison-TDWHGYQX.js → ConnectedNativeDocxComparison-DIRGCHMY.js} +8 -8
  9. package/dist/{ConnectedStreamedWordArtifact-ZPFR5HFS.js.map → ConnectedNativeDocxComparison-DIRGCHMY.js.map} +1 -1
  10. package/dist/{ConnectedNativeDocxEditor-J3E3QDFA.cjs → ConnectedNativeDocxEditor-4HNYAZEG.cjs} +9 -9
  11. package/dist/{ConnectedNativeDocxEditor-J3E3QDFA.cjs.map → ConnectedNativeDocxEditor-4HNYAZEG.cjs.map} +1 -1
  12. package/dist/{ConnectedNativeDocxEditor-O7QB6DVI.js → ConnectedNativeDocxEditor-DKSE3R6C.js} +7 -7
  13. package/dist/{ConnectedNativeDocxEditor-O7QB6DVI.js.map → ConnectedNativeDocxEditor-DKSE3R6C.js.map} +1 -1
  14. package/dist/{ConnectedProductionSetDialog-34NEZNEQ.js → ConnectedProductionSetDialog-34UV5VH2.js} +3 -3
  15. package/dist/{ConnectedProductionSetDialog-34NEZNEQ.js.map → ConnectedProductionSetDialog-34UV5VH2.js.map} +1 -1
  16. package/dist/{ConnectedProductionSetDialog-NFASXSLG.cjs → ConnectedProductionSetDialog-XH725VSO.cjs} +3 -3
  17. package/dist/{ConnectedProductionSetDialog-NFASXSLG.cjs.map → ConnectedProductionSetDialog-XH725VSO.cjs.map} +1 -1
  18. package/dist/{ConnectedStreamedWordArtifact-UR4LM4RB.cjs → ConnectedStreamedWordArtifact-S5I5QCZ7.cjs} +9 -9
  19. package/dist/ConnectedStreamedWordArtifact-S5I5QCZ7.cjs.map +1 -0
  20. package/dist/{ConnectedStreamedWordArtifact-ZPFR5HFS.js → ConnectedStreamedWordArtifact-USNAF4ZM.js} +8 -8
  21. package/dist/{ConnectedNativeDocxComparison-TDWHGYQX.js.map → ConnectedStreamedWordArtifact-USNAF4ZM.js.map} +1 -1
  22. package/dist/{DocumentReviewCard-7VJ3MMYG.cjs → DocumentReviewCard-QHYHBDUA.cjs} +14 -14
  23. package/dist/{DocumentReviewCard-7VJ3MMYG.cjs.map → DocumentReviewCard-QHYHBDUA.cjs.map} +1 -1
  24. package/dist/{DocumentReviewCard-5NZM6FOB.js → DocumentReviewCard-TFAJYWS6.js} +9 -9
  25. package/dist/{DocumentReviewCard-5NZM6FOB.js.map → DocumentReviewCard-TFAJYWS6.js.map} +1 -1
  26. package/dist/{FilesViewerDialog-EQ4UT6LW.js → FilesViewerDialog-LE5GQQDX.js} +12 -12
  27. package/dist/{FilesViewerDialog-EQ4UT6LW.js.map → FilesViewerDialog-LE5GQQDX.js.map} +1 -1
  28. package/dist/{FilesViewerDialog-XIJAGQAU.cjs → FilesViewerDialog-Y5YZJ5O2.cjs} +13 -13
  29. package/dist/{FilesViewerDialog-XIJAGQAU.cjs.map → FilesViewerDialog-Y5YZJ5O2.cjs.map} +1 -1
  30. package/dist/{WorkspaceTableView-6MLEC6I6.cjs → WorkspaceTableView-3D6SYOWT.cjs} +5 -5
  31. package/dist/{WorkspaceTableView-6MLEC6I6.cjs.map → WorkspaceTableView-3D6SYOWT.cjs.map} +1 -1
  32. package/dist/{WorkspaceTableView-YGLOQ6JA.js → WorkspaceTableView-WD754UBK.js} +4 -4
  33. package/dist/{WorkspaceTableView-YGLOQ6JA.js.map → WorkspaceTableView-WD754UBK.js.map} +1 -1
  34. package/dist/agents/index.cjs +187 -187
  35. package/dist/agents/index.js +5 -5
  36. package/dist/ai-5JTBFZAO.js +1 -1
  37. package/dist/ai-ZLZNDUUS.cjs +1 -1
  38. package/dist/calls/index.cjs +1 -1
  39. package/dist/calls/index.js +1 -1
  40. package/dist/chat/index.cjs +1 -1
  41. package/dist/chat/index.js +1 -1
  42. package/dist/{chunk-ERDQ4DAX.cjs → chunk-2GFB43GN.cjs} +4 -4
  43. package/dist/{chunk-ERDQ4DAX.cjs.map → chunk-2GFB43GN.cjs.map} +1 -1
  44. package/dist/{chunk-CS4KQSLY.cjs → chunk-2ROYKDEA.cjs} +5 -5
  45. package/dist/{chunk-CS4KQSLY.cjs.map → chunk-2ROYKDEA.cjs.map} +1 -1
  46. package/dist/{chunk-YHNTGQSW.cjs → chunk-2VWE46ZF.cjs} +114 -57
  47. package/dist/chunk-2VWE46ZF.cjs.map +1 -0
  48. package/dist/{chunk-6KKVJ2V6.js → chunk-3PV25ICC.js} +3 -3
  49. package/dist/{chunk-6KKVJ2V6.js.map → chunk-3PV25ICC.js.map} +1 -1
  50. package/dist/{chunk-IK4MSXXR.cjs → chunk-4IRS55N2.cjs} +50 -31
  51. package/dist/chunk-4IRS55N2.cjs.map +1 -0
  52. package/dist/{chunk-4WW34DPM.js → chunk-4IXUIRXB.js} +4 -4
  53. package/dist/{chunk-4WW34DPM.js.map → chunk-4IXUIRXB.js.map} +1 -1
  54. package/dist/{chunk-WYLY5UQ4.js → chunk-5ZUA3JRB.js} +3 -3
  55. package/dist/{chunk-WYLY5UQ4.js.map → chunk-5ZUA3JRB.js.map} +1 -1
  56. package/dist/{chunk-UOGXKHTJ.cjs → chunk-6KQVTMRL.cjs} +3 -3
  57. package/dist/{chunk-UOGXKHTJ.cjs.map → chunk-6KQVTMRL.cjs.map} +1 -1
  58. package/dist/{chunk-KBXATCF4.cjs → chunk-ANT32I6E.cjs} +8 -8
  59. package/dist/{chunk-KBXATCF4.cjs.map → chunk-ANT32I6E.cjs.map} +1 -1
  60. package/dist/{chunk-SWW3KBH2.js → chunk-AZGELQSS.js} +4 -4
  61. package/dist/{chunk-SWW3KBH2.js.map → chunk-AZGELQSS.js.map} +1 -1
  62. package/dist/{chunk-RAF72BBC.cjs → chunk-DVGT3MU6.cjs} +4 -4
  63. package/dist/{chunk-RAF72BBC.cjs.map → chunk-DVGT3MU6.cjs.map} +1 -1
  64. package/dist/{chunk-TVJAVK2G.js → chunk-DW5DFV4O.js} +4 -4
  65. package/dist/{chunk-TVJAVK2G.js.map → chunk-DW5DFV4O.js.map} +1 -1
  66. package/dist/{chunk-4AQ47AB4.js → chunk-DWSSFIK2.js} +3 -3
  67. package/dist/{chunk-4AQ47AB4.js.map → chunk-DWSSFIK2.js.map} +1 -1
  68. package/dist/{chunk-ZXEGVXEV.cjs → chunk-FXR6YYPC.cjs} +4 -4
  69. package/dist/{chunk-ZXEGVXEV.cjs.map → chunk-FXR6YYPC.cjs.map} +1 -1
  70. package/dist/{chunk-POEWHRQV.js → chunk-G7DQFL52.js} +8 -8
  71. package/dist/{chunk-POEWHRQV.js.map → chunk-G7DQFL52.js.map} +1 -1
  72. package/dist/{chunk-MT3RPUQC.cjs → chunk-H7UDEZEO.cjs} +4 -4
  73. package/dist/{chunk-MT3RPUQC.cjs.map → chunk-H7UDEZEO.cjs.map} +1 -1
  74. package/dist/{chunk-3VKULQEG.js → chunk-HPS5O6XK.js} +6 -6
  75. package/dist/{chunk-LT2RPGKW.cjs.map → chunk-HPS5O6XK.js.map} +1 -1
  76. package/dist/{chunk-ETYBZA5E.cjs → chunk-IGVTLCHD.cjs} +4 -4
  77. package/dist/{chunk-ETYBZA5E.cjs.map → chunk-IGVTLCHD.cjs.map} +1 -1
  78. package/dist/{chunk-J24LYNTY.cjs → chunk-ILH2KOHA.cjs} +37 -37
  79. package/dist/{chunk-J24LYNTY.cjs.map → chunk-ILH2KOHA.cjs.map} +1 -1
  80. package/dist/{chunk-7F5Z4K5W.js → chunk-IU5CHOEU.js} +9 -10
  81. package/dist/chunk-IU5CHOEU.js.map +1 -0
  82. package/dist/{chunk-ZATTTPWL.cjs → chunk-KCP42W67.cjs} +4 -4
  83. package/dist/{chunk-ZATTTPWL.cjs.map → chunk-KCP42W67.cjs.map} +1 -1
  84. package/dist/{chunk-YG4S7OCD.js → chunk-LNWEJJUY.js} +3 -3
  85. package/dist/{chunk-YG4S7OCD.js.map → chunk-LNWEJJUY.js.map} +1 -1
  86. package/dist/{chunk-KYR3TXHS.js → chunk-OLCQPGB4.js} +3 -3
  87. package/dist/{chunk-KYR3TXHS.js.map → chunk-OLCQPGB4.js.map} +1 -1
  88. package/dist/{chunk-STCXXO7T.js → chunk-PGCKTXYH.js} +3 -3
  89. package/dist/{chunk-STCXXO7T.js.map → chunk-PGCKTXYH.js.map} +1 -1
  90. package/dist/{chunk-X426D2LX.cjs → chunk-Q3OLTA47.cjs} +4 -4
  91. package/dist/{chunk-X426D2LX.cjs.map → chunk-Q3OLTA47.cjs.map} +1 -1
  92. package/dist/{chunk-UBI4HXT6.js → chunk-Q45LV2DL.js} +5 -5
  93. package/dist/{chunk-UBI4HXT6.js.map → chunk-Q45LV2DL.js.map} +1 -1
  94. package/dist/{chunk-ZARYAYQO.js → chunk-QAKL6LNR.js} +12 -12
  95. package/dist/{chunk-ZARYAYQO.js.map → chunk-QAKL6LNR.js.map} +1 -1
  96. package/dist/{chunk-JL6MDUV7.cjs → chunk-QSPKL754.cjs} +30 -30
  97. package/dist/{chunk-JL6MDUV7.cjs.map → chunk-QSPKL754.cjs.map} +1 -1
  98. package/dist/{chunk-HJBVSG6H.cjs → chunk-QYDMOBGP.cjs} +4 -4
  99. package/dist/{chunk-HJBVSG6H.cjs.map → chunk-QYDMOBGP.cjs.map} +1 -1
  100. package/dist/{chunk-OYSTBNNA.js → chunk-R3AHNYSS.js} +3 -3
  101. package/dist/{chunk-OYSTBNNA.js.map → chunk-R3AHNYSS.js.map} +1 -1
  102. package/dist/{chunk-EMTRPNYB.js → chunk-RP3IDFHS.js} +3 -3
  103. package/dist/{chunk-EMTRPNYB.js.map → chunk-RP3IDFHS.js.map} +1 -1
  104. package/dist/{chunk-3BCKTFOP.cjs → chunk-RV2YGRV6.cjs} +53 -53
  105. package/dist/{chunk-3BCKTFOP.cjs.map → chunk-RV2YGRV6.cjs.map} +1 -1
  106. package/dist/{chunk-SWILV6LT.cjs → chunk-TGHBXJTN.cjs} +4 -4
  107. package/dist/{chunk-SWILV6LT.cjs.map → chunk-TGHBXJTN.cjs.map} +1 -1
  108. package/dist/{chunk-LT2RPGKW.cjs → chunk-TQXMASFX.cjs} +16 -16
  109. package/dist/chunk-TQXMASFX.cjs.map +1 -0
  110. package/dist/{chunk-I44X7O6X.js → chunk-UPXQDULH.js} +112 -55
  111. package/dist/chunk-UPXQDULH.js.map +1 -0
  112. package/dist/{chunk-L3V2ANBD.js → chunk-VEHHI5WS.js} +3 -3
  113. package/dist/{chunk-L3V2ANBD.js.map → chunk-VEHHI5WS.js.map} +1 -1
  114. package/dist/{chunk-6OEAZ2TJ.js → chunk-VJQCOZ7O.js} +50 -31
  115. package/dist/chunk-VJQCOZ7O.js.map +1 -0
  116. package/dist/{chunk-VD33HXFZ.cjs → chunk-WW2H5C6L.cjs} +28 -28
  117. package/dist/{chunk-VD33HXFZ.cjs.map → chunk-WW2H5C6L.cjs.map} +1 -1
  118. package/dist/{chunk-OOYT5A7W.js → chunk-X2QJWFFO.js} +3 -3
  119. package/dist/{chunk-OOYT5A7W.js.map → chunk-X2QJWFFO.js.map} +1 -1
  120. package/dist/{chunk-3CV4M6MB.js → chunk-XCE4HB3F.js} +3 -3
  121. package/dist/{chunk-3CV4M6MB.js.map → chunk-XCE4HB3F.js.map} +1 -1
  122. package/dist/{chunk-LKK52DEY.cjs → chunk-XNXNLXIC.cjs} +9 -10
  123. package/dist/chunk-XNXNLXIC.cjs.map +1 -0
  124. package/dist/{chunk-OC5K2J6V.cjs → chunk-YMNKMIFG.cjs} +3 -3
  125. package/dist/{chunk-OC5K2J6V.cjs.map → chunk-YMNKMIFG.cjs.map} +1 -1
  126. package/dist/collaboration/index.cjs +70 -70
  127. package/dist/collaboration/index.js +2 -2
  128. package/dist/connect/docx.cjs +12 -12
  129. package/dist/connect/docx.js +8 -8
  130. package/dist/connect/index.cjs +888 -825
  131. package/dist/connect/index.cjs.map +1 -1
  132. package/dist/connect/index.js +287 -224
  133. package/dist/connect/index.js.map +1 -1
  134. package/dist/connect/viewer.cjs +11 -11
  135. package/dist/connect/viewer.js +10 -10
  136. package/dist/connection/files/grid/documentCellRenderers.d.ts +72 -0
  137. package/dist/connection/files/grid/documentColumns.d.ts +2 -2
  138. package/dist/connection/files/grid/useDocumentGridSync.d.ts +4 -15
  139. package/dist/connection/files/grid/useDocumentTable.d.ts +0 -1
  140. package/dist/databases/index.cjs +49 -49
  141. package/dist/databases/index.js +2 -2
  142. package/dist/embed/index.cjs +17 -17
  143. package/dist/embed/index.js +11 -11
  144. package/dist/facts/index.cjs +43 -43
  145. package/dist/facts/index.js +2 -2
  146. package/dist/files/index.cjs +224 -224
  147. package/dist/files/index.js +2 -2
  148. package/dist/index.cjs +353 -353
  149. package/dist/index.js +12 -12
  150. package/dist/settings/index.cjs +1 -1
  151. package/dist/settings/index.js +1 -1
  152. package/dist/studio/index.cjs +1 -1
  153. package/dist/studio/index.js +1 -1
  154. package/dist/tags/TagTable.d.ts +4 -1
  155. package/dist/workflow-canvas/index.cjs +25 -25
  156. package/dist/workflow-canvas/index.js +14 -14
  157. package/node_modules/@arbidocs/coedit/package.json +1 -1
  158. package/package.json +10 -6
  159. package/dist/ConnectedStreamedWordArtifact-UR4LM4RB.cjs.map +0 -1
  160. package/dist/chunk-3VKULQEG.js.map +0 -1
  161. package/dist/chunk-6OEAZ2TJ.js.map +0 -1
  162. package/dist/chunk-7F5Z4K5W.js.map +0 -1
  163. package/dist/chunk-I44X7O6X.js.map +0 -1
  164. package/dist/chunk-IK4MSXXR.cjs.map +0 -1
  165. package/dist/chunk-LKK52DEY.cjs.map +0 -1
  166. package/dist/chunk-YHNTGQSW.cjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { ConnectedTagEntity, useMemberLookup } from '../chunk-UBI4HXT6.js';
3
- export { ConnectedTagEntity, documentFieldContent, useMemberLookup } from '../chunk-UBI4HXT6.js';
2
+ import { useMemberLookup, ConnectedTagEntity } from '../chunk-Q45LV2DL.js';
3
+ export { ConnectedTagEntity, documentFieldContent, useMemberLookup } from '../chunk-Q45LV2DL.js';
4
4
  import { useSlashField, DEFAULT_DOCUMENT_VIEWER_TABS } from '../chunk-WN7MN5DK.js';
5
5
  export { DEFAULT_ASK_SUGGESTIONS, DEFAULT_DOCUMENT_VIEWER_LABELS, DEFAULT_DOCUMENT_VIEWER_TABS } from '../chunk-WN7MN5DK.js';
6
6
  import { useBillingSupport, DEFAULT_SPEND_CAP_PENCE, findProPrices, packPrice, calcSavingsPercent, parseBudgetPounds, formatMoney, isProProject, useSelfExtId, addonCharge, formatPeriodEnd, quoteParts, taxDetail, money2, ANNUAL_PREMIUM_AI_NOTE, totalWithTaxWord, planBadgeView, isAddonBudgetZero, useRewardBalance, getQuotaItems, aiUsageResetTimestamp, formatResetDate, ZERO_BUDGET_MESSAGE, CAP_REACHED_MESSAGE, quoteError, POSTCODE_COUNTRIES, addonPrice, checkoutBlockPriceText, ADDON_BLOCK_AI_GBP, STORAGE_BLOCK_GB, quoteTotalLine, PRO_PACKS, apiErrorDetail, checkoutItemsLabel, planNameForPacks, proTierName, projectGroupBilling, SUGGESTED_DAILY_CAP_PER_USER, TAX_LOCATION_INVALID, FREE_COLLABORATORS, FREE_AI_GBP, FREE_STORAGE_MB, MAX_CHECKOUT_BLOCKS, PRO_AI_GBP, PRO_STORAGE_GB, plusVat, planPreviewLines, PAY_TODAY_UNPRICED, PLAN_CHOICE_PACKS, reduceBounds, splitBlocks, autoRoom, nextRemovedBlockSize, stepLabel, addStepCaption, blocksLabel, MIN_AUTO_TOPUP_THRESHOLD_GBP, USAGE_CAP_LABEL, USAGE_CAP_HELP, nextPeriodBody, addonSettingsBody, budgetSavedMessage } from '../chunk-FNGFSHVE.js';
@@ -8,22 +8,22 @@ export { CAP_REACHED_MESSAGE, ZERO_BUDGET_MESSAGE, aiUsageResetTimestamp, format
8
8
  export { ConnectedMailInviteCard } from '../chunk-BT2DDHMM.js';
9
9
  import { SharedFileView, SharedFilesInbox } from '../chunk-4ML5AMMO.js';
10
10
  export { ConnectedAssistantDock, redlineStats, textToArtifact, toRedlineMarkdown, useConnectedAiTask, useConnectedChat, useSemanticSearch, useWorkspaceDocs } from '../chunk-MJJQ6FW4.js';
11
- import { getRoleBadgeClass, formatRole, WorkspaceTypeBadge, getRoleDescription, PageLoading, WorkspacePageFrame, WorkspaceIdentityPanel, WorkspaceProjectSlot, WorkspaceAudienceLine, CommonWorkspaceToggle, ExpandableSection, LeaveFooter, ItalicNone, WorkspaceList, WorkspaceGroup, WorkspaceCard } from '../chunk-TOT4HHHN.js';
12
- import { ConnectedTaskComposer, useProjectSummaries, useProjectSummary, primaryProjectWorkspace, ConnectedThreadTaskBar, useTaskPeople, ConnectedTaskActivityDialog } from '../chunk-POEWHRQV.js';
13
- export { ConnectedTaskActivityDialog, ConnectedTaskComposer, ConnectedThreadTaskBar, ConnectedWorkflowHistory, ConnectedWorkflowRunPage, ConnectedWorkflowRunner, DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS, DEFAULT_WORKFLOW_RUN_PAGE_LABELS, WorkflowRunThread, WorkflowRunWorkspaceChangedError, buildProjectSummaries, primaryProjectWorkspace, useEnsureRequiredLabels, useProjectSummaries, useProjectSummary, useRenderTaskPerson, useRequiredLabels, useTaskPeople, useWorkflowsPageState, workflowRunView } from '../chunk-POEWHRQV.js';
11
+ import { ConnectedTaskComposer, useProjectSummaries, useProjectSummary, primaryProjectWorkspace, ConnectedThreadTaskBar, useTaskPeople, ConnectedTaskActivityDialog } from '../chunk-G7DQFL52.js';
12
+ export { ConnectedTaskActivityDialog, ConnectedTaskComposer, ConnectedThreadTaskBar, ConnectedWorkflowHistory, ConnectedWorkflowRunPage, ConnectedWorkflowRunner, DEFAULT_CONNECTED_WORKFLOW_RUNNER_LABELS, DEFAULT_WORKFLOW_RUN_PAGE_LABELS, WorkflowRunThread, WorkflowRunWorkspaceChangedError, buildProjectSummaries, primaryProjectWorkspace, useEnsureRequiredLabels, useProjectSummaries, useProjectSummary, useRenderTaskPerson, useRequiredLabels, useTaskPeople, useWorkflowsPageState, workflowRunView } from '../chunk-G7DQFL52.js';
13
+ import { getRoleBadgeClass, formatRole, WorkspaceTypeBadge, PageLoading, WorkspacePageFrame, WorkspaceIdentityPanel, WorkspaceProjectSlot, WorkspaceAudienceLine, CommonWorkspaceToggle, ExpandableSection, LeaveFooter, getRoleDescription, ItalicNone, WorkspaceList, WorkspaceGroup, WorkspaceCard } from '../chunk-TOT4HHHN.js';
14
14
  import { ProjectPicker, ProjectOptionRow, WorkspaceFormModal, ModalActionRow, FormErrorBanner, WorkspaceFieldsView, FormActions } from '../chunk-SEBNGA3F.js';
15
15
  import { isAgentAccount, workspaceConversationCount, workspaceDocumentCount, isListedWorkspace, WORKSPACE_CATEGORY_FILTERS, projectFilterId, workspaceFilterAttributes, groupWorkspacesByProject, byRecentUpdate } from '../chunk-57CG33XJ.js';
16
- import { ConnectedProfileCard, ConnectedSecuritySection, ConnectedIdentityVerification, ConnectedSessionsRow, ConnectedDangerZone, ConnectedLogoutDialog, ConnectedNotificationPreferences, useSsoSignIn, ConnectedModelSelector, useAuthPages, ConversationComposer, AgentSteps, MessageLiveSeconds, resolveSsoName, completeSsoSignIn, ConnectedForgotPassword, ConnectedPasswordChangeDialog, useContextualHints, ssoAccountStatus, AskAgainContext, ConnectedMessageArea } from '../chunk-3VKULQEG.js';
17
- export { AgentSteps, AnswerTable, ArbiChat, AskAgainContext, ConnectedBranchControls, ConnectedCitationRenderer, ConnectedCompactConversation, ConnectedCompactLogin, ConnectedConversationDocumentPicker, ConnectedDangerZone, ConnectedEmbeddedChat, ConnectedForgotPassword, ConnectedIdentityVerification, ConnectedLoginPage, ConnectedLogoutDialog, ConnectedMessage, ConnectedMessageArea, ConnectedMessageList, ConnectedModelSelector, ConnectedNotificationPreferences, ConnectedPasswordChangeDialog, ConnectedProfileCard, ConnectedSecuritySection, ConnectedSessionsRow, ConnectedThreadsPreview, ConversationComposer, EmbeddedChatPanel, MessageDetailsModal, MessageLiveSeconds, PENDING_RECOVERY_KEY, PREMIUM_TIER_TAG, RunningSubagents, STANDARD_TIER_TAG, WorkflowStepMessage, backUpOnSignup, defaultHost, renderConnectedUser, renderSessionStatusIcon, resolveSsoName, useAuthPages, useContextualHints, useModelPicker, useOpenChunk, useOpenWorkspaceIcon, useSsoSignIn, useWorkspaceDocTitles } from '../chunk-3VKULQEG.js';
16
+ import { ConnectedProfileCard, ConnectedSecuritySection, ConnectedIdentityVerification, ConnectedSessionsRow, ConnectedDangerZone, ConnectedLogoutDialog, ConnectedNotificationPreferences, useSsoSignIn, ConnectedModelSelector, useAuthPages, ConversationComposer, AgentSteps, MessageLiveSeconds, resolveSsoName, completeSsoSignIn, ConnectedForgotPassword, ConnectedPasswordChangeDialog, useContextualHints, ssoAccountStatus, AskAgainContext, ConnectedMessageArea } from '../chunk-HPS5O6XK.js';
17
+ export { AgentSteps, AnswerTable, ArbiChat, AskAgainContext, ConnectedBranchControls, ConnectedCitationRenderer, ConnectedCompactConversation, ConnectedCompactLogin, ConnectedConversationDocumentPicker, ConnectedDangerZone, ConnectedEmbeddedChat, ConnectedForgotPassword, ConnectedIdentityVerification, ConnectedLoginPage, ConnectedLogoutDialog, ConnectedMessage, ConnectedMessageArea, ConnectedMessageList, ConnectedModelSelector, ConnectedNotificationPreferences, ConnectedPasswordChangeDialog, ConnectedProfileCard, ConnectedSecuritySection, ConnectedSessionsRow, ConnectedThreadsPreview, ConversationComposer, EmbeddedChatPanel, MessageDetailsModal, MessageLiveSeconds, PENDING_RECOVERY_KEY, PREMIUM_TIER_TAG, RunningSubagents, STANDARD_TIER_TAG, WorkflowStepMessage, backUpOnSignup, defaultHost, renderConnectedUser, renderSessionStatusIcon, resolveSsoName, useAuthPages, useContextualHints, useModelPicker, useOpenChunk, useOpenWorkspaceIcon, useSsoSignIn, useWorkspaceDocTitles } from '../chunk-HPS5O6XK.js';
18
18
  import { useSlashSkillWorkflows, ConnectedWorkflowStart, useLaunchWorkflow } from '../chunk-WGPJUGQ4.js';
19
19
  export { ConnectedWorkflowStart, PROMPT_BINDINGS, parseTypedSkill, useLaunchWorkflow, useSlashItems, useSlashMenuItems, useSlashSkillWorkflows } from '../chunk-WGPJUGQ4.js';
20
- import { useSelectWorkspace } from '../chunk-YG4S7OCD.js';
21
- export { useConnectedThreadActivity } from '../chunk-YG4S7OCD.js';
22
- import { DocumentUser } from '../chunk-KYR3TXHS.js';
23
- export { DocumentUser } from '../chunk-KYR3TXHS.js';
20
+ import { useSelectWorkspace } from '../chunk-LNWEJJUY.js';
21
+ export { useConnectedThreadActivity } from '../chunk-LNWEJJUY.js';
22
+ import { DocumentUser } from '../chunk-OLCQPGB4.js';
23
+ export { DocumentUser } from '../chunk-OLCQPGB4.js';
24
24
  import { useIsExternalAccount, withoutMarketplace, isExternalAccount, useWorkflowDefinitions, useCanBrowseSkills, useWorkflowTasks } from '../chunk-SX4MHN4P.js';
25
25
  export { useCanBrowseSkills, useIsExternalAccount, useSkillsEnabled, useWorkflowDefinitions, useWorkflowTasks } from '../chunk-SX4MHN4P.js';
26
- import { FactSearchBar, FactSearchTotals, FactSearchPending, FactSearchNoMatches, FactSearchResult, FactsToolbar, FactsFieldsButton, FactComposer, FactDateInput, FactSourcesRow, FactsLoading, FactsLoadError, FactsEmptyState, FactsCalendar, FactsGanttPane, FactsBulkBar, FactFieldRow, FactLabelsCell, enableFactTableColumnResize, createFactColumns, FactRowActions, FactSourceGroup, sourceDocCount, DEFAULT_FACT_COLUMN_LABELS } from '../chunk-WYLY5UQ4.js';
26
+ import { FactSearchBar, FactSearchTotals, FactSearchPending, FactSearchNoMatches, FactSearchResult, FactsToolbar, FactsFieldsButton, FactComposer, FactDateInput, FactSourcesRow, FactsLoading, FactsLoadError, FactsEmptyState, FactsCalendar, FactsGanttPane, FactsBulkBar, FactFieldRow, FactLabelsCell, enableFactTableColumnResize, createFactColumns, FactRowActions, FactSourceGroup, sourceDocCount, DEFAULT_FACT_COLUMN_LABELS } from '../chunk-5ZUA3JRB.js';
27
27
  import { docIdsOf, toFactCitations, EMPTY_FACT_DATE_FIELDS, withoutChunk, factDateSpanToFields, withChunk, factDateFieldsToSpan, withoutDoc, withDoc, citedVersionRef } from '../chunk-CDDOLWSF.js';
28
28
  import { HomeLoadError, HomeFrame, HomeMain, HomeCenteredScroll, HomeCenteredColumn, DashboardRoot, DashboardBand, DashboardColumns, RecentList, DASHBOARD_QUIET_ACTION_CLASS, DashboardAction, FactsStrip, ActionMenuDialog, GettingStartedStrip, FactMark, CreateTile } from '../chunk-VY3HTT37.js';
29
29
  import { ProjectBandTitle, PlainBandTitle } from '../chunk-DEJ3EWPK.js';
@@ -31,10 +31,8 @@ import '../chunk-CPLZ6XGT.js';
31
31
  import '../chunk-5PAQWN5U.js';
32
32
  export { EMBEDDED_SELECTED_DOCS_KEY, SELECTED_WORKSPACE_KEY } from '../chunk-PTCHPYWX.js';
33
33
  import '../chunk-AZDPAV7E.js';
34
- import { attendeeKey, upcomingOf, conferenceUrl, isWebinarConference, canJoinEvent, calendarToListItem, buildGridEvents, pendingCreateToGrid, newEventDraft, MiniMonth, CalendarList, CalendarGrid, printCalendar, EventDetails, ScopeDialog, CalendarFormDialog, ProposeTimeDialog, groupSlotsByDay, publicBookingMessage, formatSlotRange, zoneOptions, buildTimeChangeRequest, eventToDraft, needsScope, validateDraft, CALENDAR_DEFAULT_LABELS, buildCreateBody, buildDeleteTarget, EventEditor, toSettingsValue, CalendarSettingsForm, describeCalendarError, normalizeFeedUrl, parseOverlayLink, formatEventWhen, isAllDayDraft, draftRangeUtc, freeBusyToRows, SchedulingAssistant, applySuggestion, toSuggestionViews, bookingLink, defaultRoomWindow, bookingToForm, emptyBookingForm, slugify, WeeklyHoursEditor, validateBookingForm, formToBookingBody, WEEKDAY_NAMES, formatBusy, buildEditRequest } from '../chunk-LTRFQ2IC.js';
35
- import { detectTimeZone, utcToDate, formatPlainDate, formatInZone, safeZone, todayInZone, addDays, wallToUtc } from '../chunk-OJIX5NBN.js';
36
- import { useConnectedWorkspaceRole, ConnectedWorkflowsTable } from '../chunk-4WW34DPM.js';
37
- export { ConnectedWorkflowsTable, DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS, useConnectedWorkspaceRole, useDocxCommentTarget, useNativeDocxSupport } from '../chunk-4WW34DPM.js';
34
+ import { useConnectedWorkspaceRole, ConnectedWorkflowsTable } from '../chunk-4IXUIRXB.js';
35
+ export { ConnectedWorkflowsTable, DEFAULT_CONNECTED_WORKFLOWS_TABLE_LABELS, useConnectedWorkspaceRole, useDocxCommentTarget, useNativeDocxSupport } from '../chunk-4IXUIRXB.js';
38
36
  import { groupCandidates } from '../chunk-MTSKK3BN.js';
39
37
  import { BUILTIN_TEMPLATE_NAME, builtinHouseTemplate } from '../chunk-Y7UIFRWC.js';
40
38
  import { useOpenWorkflow } from '../chunk-AYIPCUPG.js';
@@ -46,34 +44,34 @@ import { compareDocumentsIn } from '../chunk-QTSNHGSI.js';
46
44
  export { compareDocumentsIn, useDocumentViewerSupport, useViewerIsDetached, useViewerPassageCitation, useViewerStreamingDocument } from '../chunk-QTSNHGSI.js';
47
45
  import { ConnectedDocumentToolsProvider } from '../chunk-GNBYRV46.js';
48
46
  export { ConnectedDocumentToolsProvider } from '../chunk-GNBYRV46.js';
49
- import { usePendingFolders, useFilesStore, useAiReviewStore, useFilesPrefs, filesViewMode, useFilesGridStates, FILES_PREFS_KEY, useFilesDialogs } from '../chunk-OYSTBNNA.js';
50
- export { FILES_PREFS_KEY, filesViewMode, useAiReviewStore, useFilesDialogs, useFilesGridStates, useFilesPrefs, useFilesStore, usePendingFolders } from '../chunk-OYSTBNNA.js';
51
- import { DocumentWorkspaceContext, useDocumentWorkspace, ConnectedMarkdown, WorkspaceDocumentReference } from '../chunk-6KKVJ2V6.js';
52
- export { ConnectedMarkdown, DocumentWorkspaceContext, ExternalLink, InternalDocLink, MermaidDiagram, WorkspaceDocumentReference, useDocumentWorkspace } from '../chunk-6KKVJ2V6.js';
53
- import { FolderTile, FileTile, openPendingSyncDialog, UserAvatar, useDocumentFolders, DocumentNameCell, DocumentSharedCell, DocumentLabelsCell, RelatedDocumentsCell, DocumentFolderCell, StatusCell } from '../chunk-TVJAVK2G.js';
54
- export { ConnectedPendingSyncDialog, DocumentFolderCell, DocumentLabelsCell, DocumentNameCell, DocumentSharedCell, DocumentStatusGlyph, DocumentSyncGlyph, FileTooltipContent, RelatedDocumentsCell, StatusCell, UserAvatar, isActiveDocumentStatus, openPendingSyncDialog, parseQuotaError, startMenuItem, useDocumentFolders } from '../chunk-TVJAVK2G.js';
47
+ import { usePendingFolders, useFilesStore, useAiReviewStore, useFilesPrefs, filesViewMode, useFilesGridStates, FILES_PREFS_KEY, useFilesDialogs } from '../chunk-R3AHNYSS.js';
48
+ export { FILES_PREFS_KEY, filesViewMode, useAiReviewStore, useFilesDialogs, useFilesGridStates, useFilesPrefs, useFilesStore, usePendingFolders } from '../chunk-R3AHNYSS.js';
49
+ import { DocumentWorkspaceContext, useDocumentWorkspace, ConnectedMarkdown, WorkspaceDocumentReference } from '../chunk-3PV25ICC.js';
50
+ export { ConnectedMarkdown, DocumentWorkspaceContext, ExternalLink, InternalDocLink, MermaidDiagram, WorkspaceDocumentReference, useDocumentWorkspace } from '../chunk-3PV25ICC.js';
51
+ import { FolderTile, FileTile, openPendingSyncDialog, UserAvatar, useDocumentFolders, DocumentNameCell, DocumentFolderCell, RelatedDocumentsCell, DocumentSharedCell, DocumentLabelsCell, StatusCell } from '../chunk-DW5DFV4O.js';
52
+ export { ConnectedPendingSyncDialog, DocumentFolderCell, DocumentLabelsCell, DocumentNameCell, DocumentSharedCell, DocumentStatusGlyph, DocumentSyncGlyph, FileTooltipContent, RelatedDocumentsCell, StatusCell, UserAvatar, isActiveDocumentStatus, openPendingSyncDialog, parseQuotaError, startMenuItem, useDocumentFolders } from '../chunk-DW5DFV4O.js';
55
53
  import { DraggableHeader, PremiumModelsFrame, ConnectionsLoading, ConnectionsError, ConnectionsEmpty, UsageToggle, SettingsPage, UsageSummary, AppearanceSettings, SettingsSwitchRow, SettingsSwitchGroup, callsSwitchState, WorkOfflineToggle, UsageLineChart, PlanStack, PlanNotice, PlanPickerCard, PlanPickerHeader, PricingToggle, PromoCodeInput, PlanActionButton, formatSessionTtl, EmailWorkspaceDialogView, SyncDialogBody, SyncField, SyncSelect, SyncSmallNote, SyncLoading, SyncReconnectNotice, SyncNote, SyncTreeFrame, SyncLinkRow, SyncLinkButton, SyncOptions, SyncOptionToggle, SyncDialogFooter, InvoicesDialog, PlanDialogFrame, ProjectList, RenameDialog, SharedProjectsSection, SharedProjectRow, MoreInfo, MoreInfoList, UsagePanel, UsageQuotaHint, UsageSection, UsageLegend, UsageProportionBar, UsageActionButton, ProjectDetailHeader, PlanBadge, ProjectDetailSection, QuotaExceededDialogView, InviteContactsDialog, WelcomeDialog, applyTriStateFilters, PanelFrame, PanelAddButton, PanelFrameBody, PanelScroll, PanelActionsRow, applyInvertedIndexFilter, ConfigSwitcherBar, PanelNote, ConversationTitleSection, ModelSelectionSection, FloatingPanel, ProjectRow, QuotaMeter, FilterChip, buildInvertedIndex, serverConnectionView, ServerConnectionButton, ModelProviderLabel, PlanInfoPopover, PlanCardGrid, ReferralRewardSummary, CheckoutDialogFrame, SyncFolderRow, SyncFolderStatus, PlanTierOption, PlanActionRow, SubscriptionStatusView, DailyCapField, ConnectionCard, ReferralRewardNote } from '../chunk-N77UYRV7.js';
56
- import { FilterButton, searchExplorerDocuments, buildExplorerEntries, collectFolderDocs, joinFolderPath, getExplorerDisplayName, RECENTLY_DELETED_HINT, RECENTLY_DELETED_HINT_PLURAL, canDeleteDocument, ExplorerFrame, ExplorerStage, ExplorerScroller, ExplorerLoadingTiles, ExplorerEmpty, ExplorerMarquee, ExplorerDropOverlay, ExplorerDragPreview, CheckboxCell, TagColumnHeader, AiReviewDialogView, TagFormRoot, TagFormNameField, TagFormSelectField, TagFormNote, TagFormOptionsEditor, TagFormInstructionField, TagFormMeta, TagFormFooter, TagFormSharedToggle, FilesViewCenter, FilesFilterBar, TransferProgressView, TransferResumeBanner, ExportResultsReport, TransferScopeChooser, TransferKindsPicker, TransferReferencesChooser, ExportMethodChooser, ExportWorkspacePicker, TransferConflictChooser, TransferPlanSummary, ExportFooter, ExportModalTitle, sortFields, filterFieldsByName, fieldsApplyBarCopy, FieldsEditorRoot, FieldsEditorToolbar, FieldsEditorList, FieldRow, FieldsEmptyState, fieldsEmptyText, FieldsApplyBar, FieldsManagerDefinition, FieldsManagerBody, FieldsManagerTitle, ROW_MIN, rowHeightForLines, linesForRowHeight, RowDensityControl, VendorLogo, FilesAddMenu, UploadFrame, PrivacyExplainerModal, parseFolderSegments, FolderFilterButton, FolderPickerRow, UploadContainer, SelectedFilesList, RejectedFilesList, UploadErrorMessage, UploadProgress, MultiSelectCellEditor, DOCUMENT_TYPE_OPTIONS, DEFAULT_DOCUMENT_COLUMNS, shareStateOf, BulkActionsBar, shareTooltipFor, MoveToFolderDialog, FolderCommandList, BulkTagEditorDialog, BulkReplaceDialog, DOCUMENTS_ROW_HEIGHT_INITIAL, EMAIL_VIEW_COLUMNS, useGridViews, ViewSelectorMenu, applyColumnLayout, applyViewColumns, sortExplorerFiles, FilesPage, UrlInputDialog, FilesPageHeader, FilesToolbar, ExplorerFileNavigator, NavigatorPickerBar, FilesPageMain, DocumentGrid, resolveDocumentGridLayout, FilesModalFooter, BulkLabelSelectView, LabelMultiSelectView, DocStatusIcon, confirmHideFromMembers, DocumentsFolderButton, FilesTagsButton, UploadSourceSection, UploadSourcePicker, UploadBrowseButtons, canEditDocumentFields, FieldLabelsSelect, UploadFooterBar, ShareToggle, ImportPanel, ImportFamilySection, ImportList, ImportRow, TaskSection, UploadDropArea, canChangeVisibility, ImportSummary, ImportAside, FolderSummary, ImportProgress, ImportRunActions, ImportHint, ImportActionButton, UploadUrlButton } from '../chunk-OOYT5A7W.js';
54
+ import { FilterButton, searchExplorerDocuments, buildExplorerEntries, collectFolderDocs, joinFolderPath, getExplorerDisplayName, RECENTLY_DELETED_HINT, RECENTLY_DELETED_HINT_PLURAL, canDeleteDocument, ExplorerFrame, ExplorerStage, ExplorerScroller, ExplorerLoadingTiles, ExplorerEmpty, ExplorerMarquee, ExplorerDropOverlay, ExplorerDragPreview, AiReviewDialogView, TagFormRoot, TagFormNameField, TagFormSelectField, TagFormNote, TagFormOptionsEditor, TagFormInstructionField, TagFormMeta, TagFormFooter, TagFormSharedToggle, FilesViewCenter, FilesFilterBar, TransferProgressView, TransferResumeBanner, ExportResultsReport, TransferScopeChooser, TransferKindsPicker, TransferReferencesChooser, ExportMethodChooser, ExportWorkspacePicker, TransferConflictChooser, TransferPlanSummary, ExportFooter, ExportModalTitle, sortFields, filterFieldsByName, fieldsApplyBarCopy, FieldsEditorRoot, FieldsEditorToolbar, FieldsEditorList, FieldRow, FieldsEmptyState, fieldsEmptyText, FieldsApplyBar, FieldsManagerDefinition, FieldsManagerBody, FieldsManagerTitle, ROW_MIN, rowHeightForLines, linesForRowHeight, RowDensityControl, VendorLogo, FilesAddMenu, UploadFrame, PrivacyExplainerModal, parseFolderSegments, FolderFilterButton, FolderPickerRow, UploadContainer, SelectedFilesList, RejectedFilesList, UploadErrorMessage, UploadProgress, MultiSelectCellEditor, DOCUMENT_TYPE_OPTIONS, DEFAULT_DOCUMENT_COLUMNS, shareStateOf, BulkActionsBar, shareTooltipFor, MoveToFolderDialog, FolderCommandList, BulkTagEditorDialog, BulkReplaceDialog, DOCUMENTS_ROW_HEIGHT_INITIAL, EMAIL_VIEW_COLUMNS, useGridViews, ViewSelectorMenu, applyColumnLayout, applyViewColumns, sortExplorerFiles, FilesPage, UrlInputDialog, FilesPageHeader, FilesToolbar, ExplorerFileNavigator, NavigatorPickerBar, FilesPageMain, DocumentGrid, resolveDocumentGridLayout, FilesModalFooter, BulkLabelSelectView, LabelMultiSelectView, DocStatusIcon, confirmHideFromMembers, DocumentsFolderButton, FilesTagsButton, UploadSourceSection, UploadSourcePicker, UploadBrowseButtons, canChangeVisibility, canEditDocumentFields, FieldLabelsSelect, UploadFooterBar, ShareToggle, ImportPanel, ImportFamilySection, ImportList, ImportRow, TagColumnHeader, CheckboxCell, TaskSection, UploadDropArea, ImportSummary, ImportAside, FolderSummary, ImportProgress, ImportRunActions, ImportHint, ImportActionButton, UploadUrlButton } from '../chunk-X2QJWFFO.js';
57
55
  import { ModalBreadcrumbHeader, ModalCrumbs } from '../chunk-RC6VTY2H.js';
58
56
  import { ViewToggle, DocumentViewToggle } from '../chunk-OHRWYRTH.js';
59
57
  import { formatBytes, reducedRateNote, RECENTLY_DELETED_NOTE, kindRows, usedPct, usedOfLimit, MAIL_FOLDER_LABELS, itemTitle, ITEM_LABELS, KIND_LABELS } from '../chunk-653XMGF4.js';
60
- import { DatabaseList, NewDatabaseDialog, DatabaseToolbar, DatabaseTable, DatabaseRowDetail, DatabaseColumnDialog, rowTitle, OPEN_ROW_COL_ID, ADD_COLUMN_COL_ID } from '../chunk-6OEAZ2TJ.js';
58
+ import { DatabaseList, NewDatabaseDialog, DatabaseToolbar, DatabaseTable, DatabaseRowDetail, DatabaseColumnDialog, rowTitle, OPEN_ROW_COL_ID, ADD_COLUMN_COL_ID } from '../chunk-VJQCOZ7O.js';
61
59
  import { SavedSignatureSettings, SignatureCertificate } from '../chunk-VSFLROLB.js';
62
60
  import '../chunk-2YOVK524.js';
63
61
  import { SettingsPanel, SettingsDisclosure, SettingsSection, SettingsCard, SettingsRow, SettingsActionRow } from '../chunk-PBQNZWSX.js';
64
62
  import '../chunk-UIHNCQAA.js';
65
63
  import '../chunk-IA5BYEO7.js';
66
- import { WorkspaceActivityList, TagTable, tagsPageNouns, entitiesPhrase, ExtractEntitiesDialog, GridRowNavigator, LoadingIndicator, EntityIdentityBar, IDENTITY_NAME_MAX_LENGTH, Toolbar, documentCount, useTipsPlacement, tagTableDocx, tagTableLabels, TagDetail, tagDetailLabels, tagKindDescription, glossaryEntries, glossaryDocx, glossaryMarkdown, glossaryFileName } from '../chunk-I44X7O6X.js';
64
+ import { WorkspaceActivityList, TagTable, tagsPageNouns, entitiesPhrase, ExtractEntitiesDialog, GridRowNavigator, LoadingIndicator, EntityIdentityBar, IDENTITY_NAME_MAX_LENGTH, Toolbar, documentCount, useTipsPlacement, tagTableDocx, tagTableLabels, TagDetail, tagDetailLabels, tagKindDescription, glossaryEntries, glossaryDocx, glossaryMarkdown, glossaryFileName } from '../chunk-UPXQDULH.js';
67
65
  import { ThemeEditor } from '../chunk-4FV5DO3V.js';
68
66
  import '../chunk-J77BACGX.js';
69
- import { MemberAvatarStack } from '../chunk-VGHPCF7Q.js';
70
67
  import { WorkspaceNotificationMenu, ThreadFollowMenuItem, ThreadFollowButton } from '../chunk-66NMPTOH.js';
68
+ import { MemberAvatarStack } from '../chunk-VGHPCF7Q.js';
71
69
  import { WELCOME_REPLAY_VIEW, startWelcomeReplay } from '../chunk-SK3GBHPJ.js';
72
70
  import { TimelineZoomControl } from '../chunk-QCK3YKT4.js';
73
71
  import '../chunk-UJE32SST.js';
74
72
  import { renderSearchSnippet, SearchGroupHeader, isMeaningMatch, extractHighlightTerms, searchNouns, SearchEmptyState, passesRelevanceCutoff, groupSearchResults, SearchPillToggle, SearchPagination, SearchPageFrame, SearchPageHeader, ApplyLabelDialog, SearchPageBody, SearchToolbarRow, SearchBar, SearchControlsBar, RelevanceThreshold, SearchTotalsHeadline, ApplyLabelButton, getSearchMatchHint, SearchResultsMain, SearchResultsInner, SearchErrorBanner, SearchResultList, SearchGroupCard, SearchNoResults } from '../chunk-QUI2HEKV.js';
75
73
  import { SearchHit } from '../chunk-BZWWKFMS.js';
76
- import { PlainMailBodyEditor, MemberNameCell, MemberMutedText, MemberRoleCell, MemberListLoading, MemberBulkActions, RecipientPicker, buildMailFolderTree, MailFolderTree, AddContactsResults, AddContactsForm, emailTokens, EMPTY_CONTACT_FORM, contactToForm, contactStatusLabel, summarizeImport, matchesContact, contactName, primaryEmail, ActionMenu, DmThreadFrame, DmAccessRequestBanner, DmGrantAccessDialogView, DmInviteAvatar, draftMailCompose, replyMailCompose, emptyMailCompose, MAIL_GRID_ID, MailGrid, NEEDS_CONNECTION, MailMessageView, planContactInvites, MAX_INVITE_EMAILS, summarizeUnsentInvites, applyContactInviteResults, summarizeContactInvites, failContactInvites, validateContactForm, inviteEmail, formToContactCard, RoleSelect, DEFAULT_CONTACT_OUTCOME_LABELS, contactOutcomeMessage, MailDocumentPicker, MailConversationView, MailActionBar, mailMoveTargets, parseMailRecipients, MailMessageContent, printMail } from '../chunk-4AQ47AB4.js';
74
+ import { PlainMailBodyEditor, MemberListLoading, MemberBulkActions, RecipientPicker, buildMailFolderTree, MailFolderTree, AddContactsResults, AddContactsForm, emailTokens, EMPTY_CONTACT_FORM, contactToForm, contactStatusLabel, summarizeImport, matchesContact, contactName, primaryEmail, ActionMenu, DmThreadFrame, DmAccessRequestBanner, DmGrantAccessDialogView, DmInviteAvatar, draftMailCompose, replyMailCompose, emptyMailCompose, MAIL_GRID_ID, MailGrid, NEEDS_CONNECTION, MailMessageView, planContactInvites, MAX_INVITE_EMAILS, summarizeUnsentInvites, applyContactInviteResults, summarizeContactInvites, failContactInvites, validateContactForm, inviteEmail, formToContactCard, MemberNameCell, MemberMutedText, MemberRoleCell, RoleSelect, DEFAULT_CONTACT_OUTCOME_LABELS, contactOutcomeMessage, MailDocumentPicker, MailConversationView, MailActionBar, mailMoveTargets, parseMailRecipients, MailMessageContent, printMail } from '../chunk-DWSSFIK2.js';
77
75
  import '../chunk-NBV56SGU.js';
78
76
  import { isDefinitionsLabel, DOCX_MIME_TYPE, toDefinitionSource, definitionLabels } from '../chunk-IYUKJESY.js';
79
77
  import { decodeWhitespaceEntities } from '../chunk-AF6RDAJF.js';
@@ -85,18 +83,20 @@ import '../chunk-3SBEWWKT.js';
85
83
  import { UsageMeter } from '../chunk-MHFWGIF4.js';
86
84
  import '../chunk-NHZK64TQ.js';
87
85
  import '../chunk-ELA7Y5YW.js';
86
+ import { PassagePill } from '../chunk-3IT5LPLF.js';
87
+ import { useCopyText } from '../chunk-FACZSNRJ.js';
88
88
  import '../chunk-K4BGOPGG.js';
89
89
  import { DataTable, MetricCard } from '../chunk-I46XTM3W.js';
90
90
  import { tid } from '../chunk-AMTWY22T.js';
91
91
  import { PageHeader } from '../chunk-XCVLUXFP.js';
92
92
  import '../chunk-VIIBJBTX.js';
93
93
  import '../chunk-OC2PD52M.js';
94
- import { buildLibrarySkills, filterLibrarySkills, SKILL_SOURCE_LABELS, SKILL_TYPE_LABELS, SkillViewToggle, SkillFilterChips, SkillTile, SkillGenerateForm, SkillLibraryDetail, parseSkillFrontmatter, SKILL_MAIN_FILENAME, SkillEditForm, DEFAULT_AGENT_CAPABILITIES, stripPersonaPreamble, AgentCreator, DEFAULT_AGENT_TYPES, DEFAULT_AGENT_TEMPLATES, AgentAvatarField, isValidAgentName, AgentConnectInstructions, ConsentPage, ConsentCard, ConsentHeader, ConsentNotice, ConsentSection, ConsentBulletList, ConsentStrong, ConsentText, ConfigForm, AgentEditView, AgentMainView, AgentCreatedView, AgentCreateView, moveTargets, NewThreadDialog, openWorkflowLaunch, useWorkflowLaunchRequest, WorkflowRunStatus, ThreadStatusLine, AgentBar, AgentBarNotes, AgentBarQueuedNote, AgentBarProbeAnswer, ConversationListView, ConversationTurnSpeaker, filterConversationRows, ConsentMessage, CopyableUrl, ConsentPermissionList, ConsentActions, ConsentFootnote, AgentBarStatus, AgentBarIconButton, AgentBarMenu, composePersona, importSkillFile, importSkillFromUrl, skillSlug, serializeSkill, STATUS_LABELS, asTaskStatus, UploadTaskList, TaskEmptyState, workflowToSkillMarkdown, TaskTable, groupAgentTasks, AgentGallery, goalProgress, AgentCard, closeWorkflowLaunch, defaultTaskComposerValues } from '../chunk-SWW3KBH2.js';
94
+ import { buildLibrarySkills, filterLibrarySkills, SKILL_SOURCE_LABELS, SKILL_TYPE_LABELS, SkillViewToggle, SkillFilterChips, SkillTile, SkillGenerateForm, SkillLibraryDetail, parseSkillFrontmatter, SKILL_MAIN_FILENAME, SkillEditForm, DEFAULT_AGENT_CAPABILITIES, stripPersonaPreamble, AgentCreator, DEFAULT_AGENT_TYPES, DEFAULT_AGENT_TEMPLATES, AgentAvatarField, isValidAgentName, AgentConnectInstructions, ConsentPage, ConsentCard, ConsentHeader, ConsentNotice, ConsentSection, ConsentBulletList, ConsentStrong, ConsentText, ConfigForm, AgentEditView, AgentMainView, AgentCreatedView, AgentCreateView, moveTargets, NewThreadDialog, openWorkflowLaunch, useWorkflowLaunchRequest, WorkflowRunStatus, ThreadStatusLine, AgentBar, AgentBarNotes, AgentBarQueuedNote, AgentBarProbeAnswer, ConversationListView, ConversationTurnSpeaker, filterConversationRows, ConsentMessage, CopyableUrl, ConsentPermissionList, ConsentActions, ConsentFootnote, AgentBarStatus, AgentBarIconButton, AgentBarMenu, composePersona, importSkillFile, importSkillFromUrl, skillSlug, serializeSkill, STATUS_LABELS, asTaskStatus, UploadTaskList, TaskEmptyState, workflowToSkillMarkdown, TaskTable, groupAgentTasks, AgentGallery, goalProgress, AgentCard, closeWorkflowLaunch, defaultTaskComposerValues } from '../chunk-AZGELQSS.js';
95
95
  import { EntityChip, fromPlanSteps, getCurrentAgentStepPresentation } from '../chunk-OFF2PR4W.js';
96
96
  import '../chunk-LRPGXNMA.js';
97
97
  import { BUILTIN_SKILLS, renderWorkflowIcon, newThreadToRequest, ANNOTATE_ID } from '../chunk-AXJLDI4M.js';
98
98
  import '../chunk-3NBIP4K2.js';
99
- import '../chunk-STCXXO7T.js';
99
+ import '../chunk-PGCKTXYH.js';
100
100
  import '../chunk-4QUUU7GH.js';
101
101
  import '../chunk-J3E5CSSC.js';
102
102
  import { SectionLabel } from '../chunk-HZE5MHQO.js';
@@ -107,13 +107,15 @@ import { TriStateFilterMenu } from '../chunk-ZQ5YTC3P.js';
107
107
  import '../chunk-RLWIUUQ5.js';
108
108
  import { SelectionBar, SelectionBarAction } from '../chunk-L3BEWZWT.js';
109
109
  import { FilterInput } from '../chunk-P4CH2ATT.js';
110
- import { DocumentPicker } from '../chunk-WNDIVNPT.js';
111
110
  import { ActionLink } from '../chunk-U53SIJES.js';
112
- import { GridView } from '../chunk-7F5Z4K5W.js';
111
+ import { GridView } from '../chunk-IU5CHOEU.js';
113
112
  import { StreamedArtifactFrame } from '../chunk-Z42EEBON.js';
114
113
  import { isDeepLinkPath, parseHref, hrefFor } from '../chunk-N7X5O7B5.js';
115
114
  import { RecoveryKeyDialog, AuthLayout, AuthField, AuthLink, AuthAlert, AuthConsent } from '../chunk-FVZ2CN4A.js';
116
115
  import { PasswordStrengthInput } from '../chunk-I6F6RBKV.js';
116
+ import { attendeeKey, upcomingOf, conferenceUrl, isWebinarConference, canJoinEvent, calendarToListItem, buildGridEvents, pendingCreateToGrid, newEventDraft, MiniMonth, CalendarList, CalendarGrid, printCalendar, EventDetails, ScopeDialog, CalendarFormDialog, ProposeTimeDialog, groupSlotsByDay, publicBookingMessage, formatSlotRange, zoneOptions, buildTimeChangeRequest, eventToDraft, needsScope, validateDraft, CALENDAR_DEFAULT_LABELS, buildCreateBody, buildDeleteTarget, EventEditor, toSettingsValue, CalendarSettingsForm, describeCalendarError, normalizeFeedUrl, parseOverlayLink, formatEventWhen, isAllDayDraft, draftRangeUtc, freeBusyToRows, SchedulingAssistant, applySuggestion, toSuggestionViews, bookingLink, defaultRoomWindow, bookingToForm, emptyBookingForm, slugify, WeeklyHoursEditor, validateBookingForm, formToBookingBody, WEEKDAY_NAMES, formatBusy, buildEditRequest } from '../chunk-LTRFQ2IC.js';
117
+ import { detectTimeZone, utcToDate, formatPlainDate, formatInZone, safeZone, todayInZone, addDays, wallToUtc } from '../chunk-OJIX5NBN.js';
118
+ import { DocumentPicker } from '../chunk-WNDIVNPT.js';
117
119
  import { DmCallButton, ScheduleCallButton, ConnectedConversationCallActions, NewCallChip, GroupCallButton, useMeetingThreadMessages, useProvisionalSpeakers, ProvisionalSpeakers, CallConversationEmpty, ConnectedCallChatHistory } from '../chunk-UMBXCCZA.js';
118
120
  export { useMeetingThreadMessages } from '../chunk-UMBXCCZA.js';
119
121
  import '../chunk-CHQMVIHR.js';
@@ -154,16 +156,14 @@ import { fmtDate } from '../chunk-X5YMI6A7.js';
154
156
  import { useIsPhone, useMediaQuery } from '../chunk-SLSBJRWW.js';
155
157
  import { ConversationFilter } from '../chunk-H773F7OR.js';
156
158
  import '../chunk-NPLYHR2E.js';
157
- import { buildDeepLinkUrl } from '../chunk-SV65E4QW.js';
158
- import { PassagePill } from '../chunk-3IT5LPLF.js';
159
- import { useCopyText } from '../chunk-FACZSNRJ.js';
160
159
  import { useBlocksEnvironment, useRequestedSettingsSection, useIntentRequest, mailComposeRequest, mailFolderRequest, mailDraftRequest, mailMessageRequest, useCalendarViewStore, conversationStartRequest } from '../chunk-YUHSDOPW.js';
161
160
  export { requestCalendarComposer, requestCalendarEvent, useCalendarViewStore } from '../chunk-YUHSDOPW.js';
162
161
  import { openDialog, closeDialog, useDialogProps, ConfirmDialog } from '../chunk-WTTPZMZ7.js';
163
162
  import { ModalHeader, ModalScaffold, ModalSection, ModalSectionTitle } from '../chunk-TX2ZICS7.js';
163
+ import { buildDeepLinkUrl } from '../chunk-SV65E4QW.js';
164
164
  import '../chunk-UP3GCNPM.js';
165
165
  import '../chunk-VUNV25KB.js';
166
- import { useDocument, usePeople, useArbiSession, useArbiSessionState, isPanelOpen, DOCUMENT_VIEWER_PANEL, useArbiSessionStore, useUpdateDocuments, useDeleteDocuments, useRenameFolder, useDownloadDocuments, useTags, useDocumentHostActions, useDocumentThumbnails, HtmlIcon, defaultLayoutState, selectDraft, useAssistantName, assistantLabels, useArbi, useAudioRecorder, MicRecordingOverlay, useWorkspaces, isNetworkFailure, hasPendingMailChange, OUTBOX_FOLDER, useOfflineMailActive, useConversations, useRunConversation, useWorkspaceActivity, useWorkspaceUsers, getWorkspaceKind, callLink, openCall, startDmCall, calendarQueryKeys, mailQueryKeys, arbiQueryKeys, invalidateConversationLists, isWorkspaceNotificationType, describeCalendarNotification, notificationUserName, describeServerNotification, isSignatureNotificationType, useNotifications, useDeleteNotifications, useMarkNotificationsRead, useTransientView, useCallsEnabled, useDocuments, serverNotificationBellEntry, documentDisplayName, useArbiWebSocket, isNotificationRow, useReconnect, usePendingSyncCounts, useArbiHost, useOutbox, usePendingMailChanges, useWorkspaceNotificationLevel, useFollowThread, useUploadSkillFiles, useSkills, useSaveSkill, useSetSkillVisibility, useDeleteSkill, useSkillSource, useInstallSkillPack, useAgentModels, useMcpTools, useAgentConfig, useAgentWorkspaces, useCreateAgent, useSaveAgentConfig, useGrantAgentAccess, useRevokeAgentAccess, useGenerateAgentAvatar, useAgents, useDeleteAgents, useAgentSession, useAgentChats, useStartAgentSession, useCloseAgentSession, useSwitchWorkspace, useWorkItems, ArtifactCanvas, useTagKindSchema, useCreateTag, useSetTagValues, useUpdateTagKindSchema, useUpdateTag, useGenerateDocTags, useFacts, useDeleteTag, useExtractEntities, useEntityExtractionDocIds, useStartWorkspaceTransfer, useResumeWorkspaceTransfer, useCancelWorkspaceTransfer, useWorkspaceTransfer, useWorkspaceTransfers, useWorkspaceExportDownload, usePlanWorkspaceTransfer, isTransferResumable, isTransferFinished, useFactsSearch, useShellWorkspaces, useMailClient, defaultMailAlias, useClaimNativeAlias, useMailOnline, useConnectMailAccount, useDisconnectMailAccount, useMailPolicy, useMailAccounts, useProfile, useUserSettings, useUpdateUserSettings, useDismissedTips, useAvailableModels, useModelConnections, useDirectModelUsage, useSaveModelConnection, useRemoveModelConnection, useUnlockModelConnections, useConnectorVendorVisibility, useConnectorCatalog, useMyConnectors, useDisconnectConnector, useSlackConnection, useDisconnectSlack, isMailboxSyncVendor, isSharePointVendor, useWorkspaceTrash, useInvalidateStorage, useStorageActions, useStorageItems, useStorageItemNames, useStorageProjects, useUserUsageToday, formatGbp, useFeatureSwitch, useCallsConfig, useCurrentUser, useSyncOfflineMailbox, useOfflineMailSettings, useOfflineMailStatus, useArbiWsStatus, useWorkOffline, useFeature, useIsEntitled, useStorageSnapshots, useUpdateWorkspace, useAddWorkspaceMembers, useRemoveWorkspaceMembers, useContacts, useInviteContacts, useDeleteContact, useSetWorkspaceMemberRoles, usePeopleSearch, useIsSlow, useProducts, useCreateProject, useDeleteProject, toShellWorkspace, useUploadDocuments, useSetWorkspaceHouseTemplate, useSetDeploymentHouseTemplate, supportsHouseTemplates, workspaceHouseTemplateId, isDeploymentAdmin, useHouseTemplateCandidates, useWorkspaceArchive, useArchiveWorkspace, useSessions, useAuthorizeLimits, useTerminateSession, useUnarchiveWorkspace, isArchiveMoving, useCanCreateProjects, PROJECT_CREATION_DENIED_REASON, useEnableMailboxSync, useMailboxFolders, useEnableDriveSync, useDriveFolderChildren, connectorErrorStatus, useProjectInvoices, useProjects, useUpdateProjectFields, useChargeWatch, useAddonQuote, STILL_WORKING, useProjectBillingPortal, useProjectUsage, MODEL_GROUP_LABELS, useRefreshProject, useBoxRole, cachedQuotaUsedUp, useDeleteWorkspaces, useArchiveProgressPolling, useCreateContact, useUpdateContact, useLinkContact, useEntitlements, useImportContacts, entitlementRefusal, myChatId, useChatThread, useChatPost, useDeleteChatMessage, useMarkChatRead, setOpenChat, useAgentDmStatus, annotateThread, userDisplayName, DmComposer, TypingIndicator, useRenameChat, useAddChatMembers, useRemoveChatMember, useChats, useChatSummaries, useRequestWorkspaceAccess, ConversationList, dmTabId, useUnreadByPeer, useConfigSchema, useSaveConfig, ArbiBotHeadIcon, TaskThreadPendingError, useStartTaskQuery, useCreateWork, useCalendarEvents, useCalendars, useUploadFromUrls, useCurrentWorkspace, useFeatureCheck, useDocumentsSupport, isZipFile, prepareUploadFiles, UPLOAD_MAX_FILE_SIZE, filesFromDrop, UPLOAD_ACCEPT, useOfflineDocumentIds, MAX_RETRIEVE_DOC_IDS, useSemanticSearch, useAssignDocTags, useLocalDrafts, queueMailChange, enqueueOutbox, deleteLocalDraft, saveLocalDraft, loadOfflineMailAttachment, useMailUnlock, useMailFolders, useMailMessages, useMailDraftCompose, useMailMessage, useMailCache, useMailConversations, toMailConversation, groupMailConversations, useNativeThreadKeys, mailConversationKey, MailOfflineUnavailableError, accountPath, useClaimSecureMail, useCanHostCalls, useOpenCallMeetingChat, useFetchCalendarEvent, useCalendarSettings, useCalendarOverlays, useCalendarOutbox, useCalendarAccounts, useSyncAccountsOnOpen, useResumeCalendarAccountConnect, useCreateEvent, useUpdateEvent, useDeleteEvent, useMoveEvent, useRespondToEvent, useCreateCalendar, useUpdateCalendar, useDeleteCalendar, useImportCalendar, useSaveCalendarSettings, useRefreshCalendar, useCalendarEvent, getPublicBookingPage, bookPublicSlot, PublicBookingError, useActiveConfigId, useUploadFiles, useUpdateDocTag, useRemoveDocTags, useKeepDocumentsOffline, useRemoveDocumentsOffline, useOpenViewerDocumentId, subscribeDocumentRows, useRefreshDocuments, useArbiWsStore, isTableViewOf, viewsOfTable, useDocumentsLoading, selectViewingDocumentId, useWorkspaceProcessing, DISMISSED_TASK_TTL_MS, useDatabases, useCreateDatabase, useImportDatabase, useChatArrivals, useConversationPendingAuth, openAccessRequest, useSignOut, confirmLosingOfflineMail, useSupportTickets, useSupportTicket, useRateSupportTicket, ImageCropper, useConversationSettings, useConversationActivity, useConversationItems, threadTabId, useUpdateConversation, useAgentRunControl, useDeleteConversation, useCanEditShared, useIsWorkspaceOwner, useWorkflows, useWorkspaceRole, useConversationDocuments, readWorkspaceLastOpened, isQueuedCalendarWrite, DateSeparator, ChatBubble, isAliasTakenError, nextAliasSuggestion, aliasTakenMessage, requestPersistentStorage, wipeOfflineMail, mailJson, connectorReturnTo, GitHubIcon, AppleIcon, GoogleIcon, LinkedInIcon, downloadRecoveryFile, cropImage, setWorkOfflineIn, getRelatedTotal, isDeploymentUserNotification, getWorkspaceActionText, getWorkspaceSentPhrase, BOX_SEAT_REFUSED, BOX_SEAT_REFUSED_TITLE, documentActivityPhrase, inputRequestTitle, WORK_NOTIFICATION_LABELS, ConversationScope, useSessionView, useUpdateFact, useDeleteFact, useCreateFact, usePassageQuotes, useAccountClient, formatGbpPerMillionTokens, usePlanQuote, useCreateProjectCheckout, useInvalidateProjects, useInvalidateEntitlements, useMoveWorkspaceToProject, useCreateWorkspace, useDriveFolderDocCount, useChangeProjectPlan, useCancelProjectSubscription, usePreviewProjectPlanChange, useAddProjectAddonBlock, useCreateGroupChat, useFlushOutbox, retryOutboxItem, fileAttachment, useMailProjects, useSaveMailDraft, useSendMail, useMailDraftReplaced, documentMailAttachment, useReadMailMessage, useMailThread, useCalendarInvitations, useDecideCounter, useSearchContacts, usePublishCalendar, useCalendarShares, useShareCalendar, useUnshareCalendar, useSubscribeCalendar, useHolidayCountries, useAddHolidayCalendar, cancelPublicBooking, useConfig, useSaveConfigField, SHAREPOINT_VENDORS, isDriveSyncVendor, useRelatedDocuments, useDatabase, useDatabaseRows, useUpdateDatabase, useDeleteDatabase, useAddDatabaseRows, useUpdateDatabaseRow, useDeleteDatabaseRows, useImportDatabaseRows, useExportDatabase, DATABASE_ROWS_PAGE, useInvalidateAfterTransfer, useConfigs, useDeleteConfig, isFullConfig, resolveConfigModel, useChatUnreadTotal, useMarkDocumentShared, useConversationData, useConnectRunStream, useAnswerAgentQuestion, useConversationIsShared, buildPendingFirstTurn, useConversationTurn, useAskAgain, transcriptSegmentOf, getOrphanedLastMessage, refuseChatWhenOffline, useThreadDocument, useDocumentAutoAdd, useAutoSendDraft, READ_ONLY_MEETING_TEXT, useConversationSearch, useProjectConversationUsage, signatureNotificationPhrase, signatureRequestMeta, getNotificationTypeMeta, useConversation, deleteOutboxItem, useMailDraftEditor, useFreeBusy, useFindTime, useCalendarSupport, useStartCalendarAccountOAuth, useConnectOAuthAccount, useBookingPages, useDeleteBookingPage, useRooms, useCancelMailboxSync, useMailboxSyncProgress, useRefreshConnectorsOnRunEnd, useCancelDriveSync, useDriveFolders, useDriveSyncProgress, useDriveSyncEstimate, useSearchDatabaseRows, callSession, isReplayableArbiMutation, useConnectorAutoSync, workflowRunTitle, useUpdateProjectNextPeriodAddons, useUpdateProjectAddonSettings, useSyncCalendarAccount, useUpdateCalendarAccount, useDisconnectCalendarAccount, ACCOUNT_VENDOR, useCalDavProfiles, useConnectCalDavAccount, useSaveBookingPage, useCreateRoom, useTriggerMailboxSync, useTriggerDriveSync } from '@arbidocs/react';
166
+ import { useDocument, usePeople, useArbiSession, useArbiSessionState, isPanelOpen, DOCUMENT_VIEWER_PANEL, useArbiSessionStore, useUpdateDocuments, useDeleteDocuments, useRenameFolder, useDownloadDocuments, useTags, useDocumentHostActions, useDocumentThumbnails, HtmlIcon, defaultLayoutState, selectDraft, useAssistantName, assistantLabels, useArbi, useAudioRecorder, MicRecordingOverlay, useWorkspaces, isNetworkFailure, hasPendingMailChange, OUTBOX_FOLDER, useOfflineMailActive, useConversations, useRunConversation, useWorkspaceActivity, useWorkspaceUsers, getWorkspaceKind, callLink, openCall, startDmCall, calendarQueryKeys, mailQueryKeys, arbiQueryKeys, invalidateConversationLists, isWorkspaceNotificationType, describeCalendarNotification, notificationUserName, describeServerNotification, isSignatureNotificationType, useNotifications, useDeleteNotifications, useMarkNotificationsRead, useTransientView, useCallsEnabled, useDocuments, serverNotificationBellEntry, documentDisplayName, useArbiWebSocket, isNotificationRow, useReconnect, usePendingSyncCounts, useArbiHost, useOutbox, usePendingMailChanges, useWorkspaceNotificationLevel, useFollowThread, useUploadSkillFiles, useSkills, useSaveSkill, useSetSkillVisibility, useDeleteSkill, useSkillSource, useInstallSkillPack, useAgentModels, useMcpTools, useAgentConfig, useAgentWorkspaces, useCreateAgent, useSaveAgentConfig, useGrantAgentAccess, useRevokeAgentAccess, useGenerateAgentAvatar, useAgents, useDeleteAgents, useAgentSession, useAgentChats, useStartAgentSession, useCloseAgentSession, useSwitchWorkspace, useWorkItems, ArtifactCanvas, useTagKindSchema, useCreateTag, useSetTagValues, useUpdateTagKindSchema, useUpdateTag, useGenerateDocTags, useFacts, useDeleteTag, useExtractEntities, useEntityExtractionDocIds, useStartWorkspaceTransfer, useResumeWorkspaceTransfer, useCancelWorkspaceTransfer, useWorkspaceTransfer, useWorkspaceTransfers, useWorkspaceExportDownload, usePlanWorkspaceTransfer, isTransferResumable, isTransferFinished, useFactsSearch, useShellWorkspaces, useMailClient, defaultMailAlias, useClaimNativeAlias, useMailOnline, useConnectMailAccount, useDisconnectMailAccount, useMailPolicy, useMailAccounts, useProfile, useUserSettings, useUpdateUserSettings, useDismissedTips, useAvailableModels, useModelConnections, useDirectModelUsage, useSaveModelConnection, useRemoveModelConnection, useUnlockModelConnections, useConnectorVendorVisibility, useConnectorCatalog, useMyConnectors, useDisconnectConnector, useSlackConnection, useDisconnectSlack, isMailboxSyncVendor, isSharePointVendor, useWorkspaceTrash, useInvalidateStorage, useStorageActions, useStorageItems, useStorageItemNames, useStorageProjects, useUserUsageToday, formatGbp, useFeatureSwitch, useCallsConfig, useCurrentUser, useSyncOfflineMailbox, useOfflineMailSettings, useOfflineMailStatus, useArbiWsStatus, useWorkOffline, useFeature, useIsEntitled, useStorageSnapshots, useUpdateWorkspace, useAddWorkspaceMembers, useRemoveWorkspaceMembers, useContacts, useInviteContacts, useDeleteContact, useSetWorkspaceMemberRoles, usePeopleSearch, useIsSlow, useProducts, useCreateProject, useDeleteProject, toShellWorkspace, useUploadDocuments, useSetWorkspaceHouseTemplate, useSetDeploymentHouseTemplate, supportsHouseTemplates, workspaceHouseTemplateId, isDeploymentAdmin, useHouseTemplateCandidates, useWorkspaceArchive, useArchiveWorkspace, useSessions, useAuthorizeLimits, useTerminateSession, useUnarchiveWorkspace, isArchiveMoving, useCanCreateProjects, PROJECT_CREATION_DENIED_REASON, useEnableMailboxSync, useMailboxFolders, useEnableDriveSync, useDriveFolderChildren, connectorErrorStatus, useProjectInvoices, useProjects, useUpdateProjectFields, useChargeWatch, useAddonQuote, STILL_WORKING, useProjectBillingPortal, useProjectUsage, MODEL_GROUP_LABELS, useRefreshProject, useBoxRole, cachedQuotaUsedUp, useDeleteWorkspaces, useArchiveProgressPolling, useCreateContact, useUpdateContact, useLinkContact, useEntitlements, useImportContacts, entitlementRefusal, myChatId, useChatThread, useChatPost, useDeleteChatMessage, useMarkChatRead, setOpenChat, useAgentDmStatus, annotateThread, userDisplayName, DmComposer, TypingIndicator, useRenameChat, useAddChatMembers, useRemoveChatMember, useChats, useChatSummaries, useRequestWorkspaceAccess, ConversationList, dmTabId, useUnreadByPeer, useConfigSchema, useSaveConfig, ArbiBotHeadIcon, TaskThreadPendingError, useStartTaskQuery, useCreateWork, useCalendarEvents, useCalendars, useUploadFromUrls, useCurrentWorkspace, useFeatureCheck, useDocumentsSupport, isZipFile, prepareUploadFiles, UPLOAD_MAX_FILE_SIZE, filesFromDrop, UPLOAD_ACCEPT, useOfflineDocumentIds, MAX_RETRIEVE_DOC_IDS, useSemanticSearch, useAssignDocTags, useLocalDrafts, queueMailChange, enqueueOutbox, deleteLocalDraft, saveLocalDraft, loadOfflineMailAttachment, useMailUnlock, useMailFolders, useMailMessages, useMailDraftCompose, useMailMessage, useMailCache, useMailConversations, toMailConversation, groupMailConversations, useNativeThreadKeys, mailConversationKey, MailOfflineUnavailableError, accountPath, useClaimSecureMail, useCanHostCalls, useOpenCallMeetingChat, useFetchCalendarEvent, useCalendarSettings, useCalendarOverlays, useCalendarOutbox, useCalendarAccounts, useSyncAccountsOnOpen, useResumeCalendarAccountConnect, useCreateEvent, useUpdateEvent, useDeleteEvent, useMoveEvent, useRespondToEvent, useCreateCalendar, useUpdateCalendar, useDeleteCalendar, useImportCalendar, useSaveCalendarSettings, useRefreshCalendar, useCalendarEvent, getPublicBookingPage, bookPublicSlot, PublicBookingError, useActiveConfigId, useUploadFiles, useUpdateDocTag, useRemoveDocTags, useKeepDocumentsOffline, useRemoveDocumentsOffline, useOpenViewerDocumentId, subscribeDocumentRows, useRefreshDocuments, useArbiWsStore, isTableViewOf, viewsOfTable, useDocumentsLoading, selectViewingDocumentId, useWorkspaceProcessing, DISMISSED_TASK_TTL_MS, useDatabases, useCreateDatabase, useImportDatabase, useChatArrivals, useConversationPendingAuth, openAccessRequest, useSignOut, confirmLosingOfflineMail, useSupportTickets, useSupportTicket, useRateSupportTicket, ImageCropper, useConversationSettings, useConversationActivity, useConversationItems, threadTabId, useUpdateConversation, useAgentRunControl, useDeleteConversation, useCanEditShared, useIsWorkspaceOwner, useWorkflows, useWorkspaceRole, useConversationDocuments, readWorkspaceLastOpened, isQueuedCalendarWrite, DateSeparator, ChatBubble, isAliasTakenError, nextAliasSuggestion, aliasTakenMessage, requestPersistentStorage, wipeOfflineMail, mailJson, connectorReturnTo, GitHubIcon, AppleIcon, GoogleIcon, LinkedInIcon, downloadRecoveryFile, cropImage, setWorkOfflineIn, isDeploymentUserNotification, getWorkspaceActionText, getWorkspaceSentPhrase, BOX_SEAT_REFUSED, BOX_SEAT_REFUSED_TITLE, documentActivityPhrase, inputRequestTitle, WORK_NOTIFICATION_LABELS, ConversationScope, useSessionView, useUpdateFact, useDeleteFact, useCreateFact, usePassageQuotes, useAccountClient, formatGbpPerMillionTokens, usePlanQuote, useCreateProjectCheckout, useInvalidateProjects, useInvalidateEntitlements, useMoveWorkspaceToProject, useCreateWorkspace, useDriveFolderDocCount, useChangeProjectPlan, useCancelProjectSubscription, usePreviewProjectPlanChange, useAddProjectAddonBlock, useCreateGroupChat, useFlushOutbox, retryOutboxItem, fileAttachment, useMailProjects, useSaveMailDraft, useSendMail, useMailDraftReplaced, documentMailAttachment, useReadMailMessage, useMailThread, useCalendarInvitations, useDecideCounter, useSearchContacts, usePublishCalendar, useCalendarShares, useShareCalendar, useUnshareCalendar, useSubscribeCalendar, useHolidayCountries, useAddHolidayCalendar, cancelPublicBooking, useConfig, useSaveConfigField, SHAREPOINT_VENDORS, isDriveSyncVendor, getRelatedTotal, useRelatedDocuments, useDatabase, useDatabaseRows, useUpdateDatabase, useDeleteDatabase, useAddDatabaseRows, useUpdateDatabaseRow, useDeleteDatabaseRows, useImportDatabaseRows, useExportDatabase, DATABASE_ROWS_PAGE, useInvalidateAfterTransfer, useConfigs, useDeleteConfig, isFullConfig, resolveConfigModel, useChatUnreadTotal, useMarkDocumentShared, useConversationData, useConnectRunStream, useAnswerAgentQuestion, useConversationIsShared, buildPendingFirstTurn, useConversationTurn, useAskAgain, transcriptSegmentOf, getOrphanedLastMessage, refuseChatWhenOffline, useThreadDocument, useDocumentAutoAdd, useAutoSendDraft, READ_ONLY_MEETING_TEXT, useConversationSearch, useProjectConversationUsage, signatureNotificationPhrase, signatureRequestMeta, getNotificationTypeMeta, useConversation, deleteOutboxItem, useMailDraftEditor, useFreeBusy, useFindTime, useCalendarSupport, useStartCalendarAccountOAuth, useConnectOAuthAccount, useBookingPages, useDeleteBookingPage, useRooms, useCancelMailboxSync, useMailboxSyncProgress, useRefreshConnectorsOnRunEnd, useCancelDriveSync, useDriveFolders, useDriveSyncProgress, useDriveSyncEstimate, useSearchDatabaseRows, callSession, isReplayableArbiMutation, useConnectorAutoSync, workflowRunTitle, useUpdateProjectNextPeriodAddons, useUpdateProjectAddonSettings, useSyncCalendarAccount, useUpdateCalendarAccount, useDisconnectCalendarAccount, ACCOUNT_VENDOR, useCalDavProfiles, useConnectCalDavAccount, useSaveBookingPage, useCreateRoom, useTriggerMailboxSync, useTriggerDriveSync } from '@arbidocs/react';
167
167
  export { viewsOfTable } from '@arbidocs/react';
168
168
  import { getDocumentTitle, getFileTypeIcon, HoverCard, HoverCardTrigger, HoverCardContent, formatFriendlyDate, getEntityLabel, EntityPill, Badge, ThreadVisibilityIcon, Button, ShieldIcon, EntityIcon, Tooltip, TooltipTrigger, TooltipContent, getUserDisplayName, createUserAvatarIcon, Label, Input, cn, Textarea, Dialog, DialogContent, DialogTitle, DialogDescription, DialogHeader, tagKindNouns, tagKindTitle, getTagTypeLabel, VisibilityToggle, getEntityColor, isImageDocument, IconToggle, Switch, Checkbox, entityNoun, Popover, PopoverTrigger, PopoverContent, formatRelativeTime, getUserAvatarColor, DialogTrigger, CommandGroup, CommandItem, ProjectEntity, DialogFooter, Tabs, TabsList, TabsTrigger, TabsContent, isAgent, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, AgentBadge, PresenceLabel, getDocIcon, Command, CommandInput, CommandList, CommandEmpty, canonicalFolderPath, formatFolderLabel, TagEntity, getDocumentNature, getDocumentAuthor, markdownToPlainText, getDocumentSubject, formatDocDate, getDocumentDate, friendlyFileType, Slider, UserMenu, PopoverAnchor, isDocumentAddableToConversation, DocumentEntity, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, formatCompactLastSeen, ArbiIcon, UserEntity, agentAvatarColors, getUserInitials, ProviderIcon, Card, CardHeader, CardTitle, CardContent, VerifiedToggle, Avatar, AvatarImage, AvatarFallback, Progress } from '@arbidocs/react/ui';
169
169
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
@@ -3396,7 +3396,13 @@ function ConnectedTagTable({
3396
3396
  isLoading: schema.isLoading || rows.isLoading,
3397
3397
  people,
3398
3398
  tags: tagOptions,
3399
- onChangeValue: readOnly ? void 0 : (tagId, fieldId, value) => setValues.mutateAsync({ tagId, values: { [fieldId]: value } }).catch(fail2("Could not save the value")),
3399
+ onChangeValue: readOnly ? void 0 : (tagId, fieldId, value) => (
3400
+ // Told, then rethrown: the cell puts the stored value back.
3401
+ setValues.mutateAsync({ tagId, values: { [fieldId]: value } }).catch((e) => {
3402
+ fail2("Could not save the value")(e);
3403
+ throw e;
3404
+ })
3405
+ ),
3400
3406
  onChangeColumns: readOnly || !editColumns ? void 0 : (fields) => (
3401
3407
  // A refusal (two columns of one name, a type change) keeps the editor open.
3402
3408
  updateSchema.mutateAsync({ kind, fields }).catch((e) => {
@@ -4443,7 +4449,13 @@ function TagSection({
4443
4449
  people,
4444
4450
  tags: tagOptions,
4445
4451
  onOpenTag: ctx.onOpenTag,
4446
- onChangeValue: (id, fieldId, value) => setValues.mutateAsync({ tagId: id, values: { [fieldId]: value } }).catch((e) => notify17(refusalReason(e, "Could not save the value"), "error")),
4452
+ onChangeValue: (id, fieldId, value) => (
4453
+ // Told, then rethrown: the field puts the stored value back.
4454
+ setValues.mutateAsync({ tagId: id, values: { [fieldId]: value } }).catch((e) => {
4455
+ notify17(refusalReason(e, "Could not save the value"), "error");
4456
+ throw e;
4457
+ })
4458
+ ),
4447
4459
  labels: tagDetailLabels(),
4448
4460
  testId: "tags-detail"
4449
4461
  }
@@ -11358,6 +11370,52 @@ function MemberChip({
11358
11370
  other && /* @__PURE__ */ jsx(ConnectedContactToggle, { user: member.user })
11359
11371
  ] });
11360
11372
  }
11373
+ function MemberNameRenderer({
11374
+ data,
11375
+ selfId
11376
+ }) {
11377
+ if (!data) return null;
11378
+ return /* @__PURE__ */ jsx(MemberNameCell, { children: /* @__PURE__ */ jsx(MemberChip, { member: data, selfId }) });
11379
+ }
11380
+ function MemberEmailRenderer({ data }) {
11381
+ return data?.user.email ? /* @__PURE__ */ jsx(MemberMutedText, { className: "truncate", title: data.user.email, children: data.user.email }) : null;
11382
+ }
11383
+ function MemberRoleRenderer({
11384
+ data: row2,
11385
+ selfId,
11386
+ isOwner,
11387
+ isPending,
11388
+ changeRole
11389
+ }) {
11390
+ if (!row2) return null;
11391
+ const lock = roleLock(row2.user.external_id, selfId, isOwner);
11392
+ return /* @__PURE__ */ jsx(
11393
+ MemberRoleCell,
11394
+ {
11395
+ role: row2.role,
11396
+ roles: ALL_ROLES,
11397
+ tooltip: lock ?? getRoleDescription(row2.role),
11398
+ canChange: !lock,
11399
+ isPending,
11400
+ onChange: (value) => changeRole(row2, value),
11401
+ temporaryHint: row2.is_temporary ? row2.access_expires_at ? `Temporary access expires ${new Date(row2.access_expires_at).toLocaleString()}.` : "Temporary access \u2014 expires with the session." : void 0
11402
+ }
11403
+ );
11404
+ }
11405
+ function MemberJoinedRenderer({ data }) {
11406
+ return data ? /* @__PURE__ */ jsx(MemberMutedText, { className: "cursor-default", children: formatFriendlyDate(data.joined_at) }) : null;
11407
+ }
11408
+ function MemberCountRenderer({ data, value }) {
11409
+ return data ? /* @__PURE__ */ jsx(MemberMutedText, { children: value }) : null;
11410
+ }
11411
+ function MemberStorageRenderer({ data }) {
11412
+ if (!data) return null;
11413
+ const mb = data.files_mb ?? 0;
11414
+ return /* @__PURE__ */ jsxs(MemberMutedText, { children: [
11415
+ mb >= 100 ? Math.round(mb).toLocaleString("en-US") : mb.toFixed(1),
11416
+ " MB"
11417
+ ] });
11418
+ }
11361
11419
  function ConnectedWorkspaceMembers({
11362
11420
  workspace,
11363
11421
  members,
@@ -11401,6 +11459,13 @@ function ConnectedWorkspaceMembers({
11401
11459
  }),
11402
11460
  [members, selfId]
11403
11461
  );
11462
+ const setRolesRef = useRef(setRoles);
11463
+ setRolesRef.current = setRoles;
11464
+ const changeRole = useCallback(
11465
+ (row2, role) => void setRolesRef.current([row2], role),
11466
+ []
11467
+ );
11468
+ const isPending = updateRoles.isPending;
11404
11469
  const columnDefs = useMemo(
11405
11470
  () => [
11406
11471
  {
@@ -11410,7 +11475,8 @@ function ConnectedWorkspaceMembers({
11410
11475
  minWidth: 150,
11411
11476
  sortable: true,
11412
11477
  valueGetter: (p) => p.data ? memberName(p.data.user) : "",
11413
- cellRenderer: (p) => p.data ? /* @__PURE__ */ jsx(MemberNameCell, { children: /* @__PURE__ */ jsx(MemberChip, { member: p.data, selfId }) }) : null
11478
+ cellRenderer: MemberNameRenderer,
11479
+ cellRendererParams: { selfId }
11414
11480
  },
11415
11481
  {
11416
11482
  colId: "email",
@@ -11420,7 +11486,7 @@ function ConnectedWorkspaceMembers({
11420
11486
  sortable: true,
11421
11487
  valueGetter: (p) => p.data?.user.email ?? "",
11422
11488
  // Plain text, not a mailto: the row's click selects it.
11423
- cellRenderer: (p) => p.data?.user.email ? /* @__PURE__ */ jsx(MemberMutedText, { className: "truncate", title: p.data.user.email, children: p.data.user.email }) : null
11489
+ cellRenderer: MemberEmailRenderer
11424
11490
  },
11425
11491
  {
11426
11492
  colId: "role",
@@ -11429,23 +11495,8 @@ function ConnectedWorkspaceMembers({
11429
11495
  minWidth: 130,
11430
11496
  sortable: true,
11431
11497
  valueGetter: (p) => p.data?.role ?? "",
11432
- cellRenderer: (p) => {
11433
- const row2 = p.data;
11434
- if (!row2) return null;
11435
- const lock = roleLock(row2.user.external_id, selfId, isOwner);
11436
- return /* @__PURE__ */ jsx(
11437
- MemberRoleCell,
11438
- {
11439
- role: row2.role,
11440
- roles: ALL_ROLES,
11441
- tooltip: lock ?? getRoleDescription(row2.role),
11442
- canChange: !lock,
11443
- isPending: updateRoles.isPending,
11444
- onChange: (value) => void setRoles([row2], value),
11445
- temporaryHint: row2.is_temporary ? row2.access_expires_at ? `Temporary access expires ${new Date(row2.access_expires_at).toLocaleString()}.` : "Temporary access \u2014 expires with the session." : void 0
11446
- }
11447
- );
11448
- }
11498
+ cellRenderer: MemberRoleRenderer,
11499
+ cellRendererParams: { selfId, isOwner, isPending, changeRole }
11449
11500
  },
11450
11501
  {
11451
11502
  colId: "joined_at",
@@ -11454,7 +11505,7 @@ function ConnectedWorkspaceMembers({
11454
11505
  minWidth: 125,
11455
11506
  sortable: true,
11456
11507
  valueGetter: (p) => p.data ? new Date(p.data.joined_at).getTime() : "",
11457
- cellRenderer: (p) => p.data ? /* @__PURE__ */ jsx(MemberMutedText, { className: "cursor-default", children: formatFriendlyDate(p.data.joined_at) }) : null
11508
+ cellRenderer: MemberJoinedRenderer
11458
11509
  },
11459
11510
  {
11460
11511
  colId: "conversation_count",
@@ -11464,7 +11515,7 @@ function ConnectedWorkspaceMembers({
11464
11515
  sortable: true,
11465
11516
  type: "numericColumn",
11466
11517
  valueGetter: (p) => p.data?.conversation_count ?? 0,
11467
- cellRenderer: (p) => p.data ? /* @__PURE__ */ jsx(MemberMutedText, { children: p.data.conversation_count }) : null
11518
+ cellRenderer: MemberCountRenderer
11468
11519
  },
11469
11520
  {
11470
11521
  colId: "document_count",
@@ -11474,7 +11525,7 @@ function ConnectedWorkspaceMembers({
11474
11525
  sortable: true,
11475
11526
  type: "numericColumn",
11476
11527
  valueGetter: (p) => p.data?.document_count ?? 0,
11477
- cellRenderer: (p) => p.data ? /* @__PURE__ */ jsx(MemberMutedText, { children: p.data.document_count }) : null
11528
+ cellRenderer: MemberCountRenderer
11478
11529
  },
11479
11530
  {
11480
11531
  colId: "files_mb",
@@ -11484,18 +11535,10 @@ function ConnectedWorkspaceMembers({
11484
11535
  sortable: true,
11485
11536
  type: "numericColumn",
11486
11537
  valueGetter: (p) => p.data?.files_mb ?? 0,
11487
- cellRenderer: (p) => {
11488
- if (!p.data) return null;
11489
- const mb = p.data.files_mb ?? 0;
11490
- return /* @__PURE__ */ jsxs(MemberMutedText, { children: [
11491
- mb >= 100 ? Math.round(mb).toLocaleString("en-US") : mb.toFixed(1),
11492
- " MB"
11493
- ] });
11494
- }
11538
+ cellRenderer: MemberStorageRenderer
11495
11539
  }
11496
11540
  ],
11497
- // eslint-disable-next-line react-hooks/exhaustive-deps
11498
- [selfId, isOwner, updateRoles.isPending, workspace.name]
11541
+ [selfId, isOwner, isPending, changeRole]
11499
11542
  );
11500
11543
  const removeSelected = async () => {
11501
11544
  const count2 = selected.length;
@@ -17277,7 +17320,7 @@ function useConnectedWorkspaceList({
17277
17320
  };
17278
17321
  }
17279
17322
  var WorkspaceTableView = lazy(
17280
- () => import('../WorkspaceTableView-YGLOQ6JA.js').then((m) => ({ default: m.WorkspaceTableView }))
17323
+ () => import('../WorkspaceTableView-WD754UBK.js').then((m) => ({ default: m.WorkspaceTableView }))
17281
17324
  );
17282
17325
  var WORKSPACES_TAB_ID = "workspaces";
17283
17326
  var renderMember = (user, size) => /* @__PURE__ */ jsx(ConnectedUserEntity, { user, size, variant: "icon" });
@@ -31144,13 +31187,126 @@ function ConnectedBulkTagCrumbs() {
31144
31187
  }
31145
31188
  );
31146
31189
  }
31147
- var CheckboxCellRenderer = memo(function CheckboxCellRenderer2({
31148
- params,
31149
- tagId,
31150
- tagName,
31151
- tagColor,
31152
- isMember
31153
- }) {
31190
+ var NO_USERS = [];
31191
+ var NO_DOCUMENTS2 = [];
31192
+ var NO_FOLDER_UPDATE = () => {
31193
+ };
31194
+ function DocumentNameCellRenderer(params) {
31195
+ const {
31196
+ data: doc,
31197
+ canEdit,
31198
+ onOpenDocument,
31199
+ onReviewDocument,
31200
+ onDocumentChat,
31201
+ onDownloadDocument,
31202
+ onMoveDocument,
31203
+ onDeleteDocument
31204
+ } = params;
31205
+ if (!doc) return null;
31206
+ const context = params.context;
31207
+ return /* @__PURE__ */ jsx(
31208
+ DocumentNameCell,
31209
+ {
31210
+ doc,
31211
+ canEdit: canEdit(params),
31212
+ users: context?.getWorkspaceUsers?.() ?? NO_USERS,
31213
+ onOpen: () => onOpenDocument(doc.external_id),
31214
+ onReview: onReviewDocument && (() => onReviewDocument(doc.external_id)),
31215
+ onDocumentChat: onDocumentChat && (() => onDocumentChat(doc.external_id)),
31216
+ onRename: () => params.api.startEditingCell({ rowIndex: params.node.rowIndex ?? 0, colKey: "title" }),
31217
+ onDownload: () => onDownloadDocument?.(doc),
31218
+ onMove: () => onMoveDocument?.(doc.external_id),
31219
+ onDelete: () => onDeleteDocument?.(doc.external_id)
31220
+ }
31221
+ );
31222
+ }
31223
+ function SharedCellRenderer(params) {
31224
+ if (!params.data) return null;
31225
+ return /* @__PURE__ */ jsx(
31226
+ DocumentSharedCell,
31227
+ {
31228
+ document: params.data,
31229
+ disabled: !params.canToggle(params),
31230
+ disabledTooltip: "Only the owner can change visibility",
31231
+ onToggle: params.onToggleShared
31232
+ }
31233
+ );
31234
+ }
31235
+ function StatusCellRenderer(params) {
31236
+ if (!params.data) return null;
31237
+ const context = params.context;
31238
+ return /* @__PURE__ */ jsx(
31239
+ StatusCell,
31240
+ {
31241
+ doc: params.data,
31242
+ onStatusClick: params.onStatusClick,
31243
+ actions: context?.getHostActions?.()
31244
+ }
31245
+ );
31246
+ }
31247
+ function LabelsCellRenderer(params) {
31248
+ if (!params.data) return null;
31249
+ const context = params.context;
31250
+ return /* @__PURE__ */ jsx(
31251
+ DocumentLabelsCell,
31252
+ {
31253
+ doc: params.data,
31254
+ labels: params.labels,
31255
+ createDocTag: params.createDocTag,
31256
+ deleteDocTag: params.deleteDocTag,
31257
+ createTag: params.createTag,
31258
+ isMember: params.isMember,
31259
+ rowHeight: params.node.rowHeight ?? 52,
31260
+ actions: context?.getHostActions?.()
31261
+ }
31262
+ );
31263
+ }
31264
+ function RelatedDocsCellRenderer(params) {
31265
+ if (!params.data) return null;
31266
+ const context = params.context;
31267
+ const related = context?.getRelatedDocs?.().get(params.data.external_id);
31268
+ if (!related || getRelatedTotal(related) === 0) return null;
31269
+ const { onOpenDocument, onDeleteDocument } = params;
31270
+ return /* @__PURE__ */ jsx(
31271
+ RelatedDocumentsCell,
31272
+ {
31273
+ currentDoc: params.data,
31274
+ related,
31275
+ viewingDocumentId: context?.getViewingDocumentId?.() ?? null,
31276
+ onDocumentClick: onOpenDocument,
31277
+ onDelete: (doc) => onDeleteDocument?.(doc.external_id),
31278
+ onCompare: context?.getHostActions?.().compareDocuments
31279
+ }
31280
+ );
31281
+ }
31282
+ function FolderCellRenderer(params) {
31283
+ if (!params.data) return null;
31284
+ const context = params.context;
31285
+ return /* @__PURE__ */ jsx(
31286
+ DocumentFolderCell,
31287
+ {
31288
+ document: params.data,
31289
+ isEditable: params.canEdit(params),
31290
+ allDocuments: context?.getDocuments?.() ?? NO_DOCUMENTS2,
31291
+ onUpdateFolder: context?.updateFolder ?? NO_FOLDER_UPDATE
31292
+ }
31293
+ );
31294
+ }
31295
+ function CreatedByCellRenderer(params) {
31296
+ if (!params.data) return null;
31297
+ const context = params.context;
31298
+ const creator = context?.getWorkspaceUsers?.().find((u) => u.external_id === params.data.created_by_ext_id);
31299
+ return /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-full", children: /* @__PURE__ */ jsx(
31300
+ UserAvatar,
31301
+ {
31302
+ user: creator,
31303
+ isMe: !!creator && creator.external_id === context?.getCurrentUserId?.(),
31304
+ onOpen: context?.getHostActions?.().openUser
31305
+ }
31306
+ ) });
31307
+ }
31308
+ function CheckboxCellRenderer(params) {
31309
+ const { tagId, tagName, tagColor, isMember } = params;
31154
31310
  if (!params.data) return null;
31155
31311
  const isChecked = params.value === true;
31156
31312
  return /* @__PURE__ */ jsx(
@@ -31163,12 +31319,9 @@ var CheckboxCellRenderer = memo(function CheckboxCellRenderer2({
31163
31319
  onToggle: () => params.node.setDataValue(tagId, !isChecked)
31164
31320
  }
31165
31321
  );
31166
- });
31167
- var TagHeaderComponent = memo(function TagHeaderComponent2({
31168
- params,
31169
- tag,
31170
- isCheckbox
31171
- }) {
31322
+ }
31323
+ function TagHeaderComponent(params) {
31324
+ const { tag, isCheckbox } = params;
31172
31325
  const [sort, setSort] = useState(params.column.getSort());
31173
31326
  useEffect(() => {
31174
31327
  const updateSort = () => setSort(params.column.getSort());
@@ -31186,7 +31339,7 @@ var TagHeaderComponent = memo(function TagHeaderComponent2({
31186
31339
  label: /* @__PURE__ */ jsx(ConnectedTagEntity, { tag, size: "sm" })
31187
31340
  }
31188
31341
  );
31189
- });
31342
+ }
31190
31343
  var TAG_FILTER_PARAMS = {
31191
31344
  buttons: ["reset", "apply"],
31192
31345
  closeOnApply: true
@@ -31260,23 +31413,21 @@ function createTagColumn({
31260
31413
  headerClass: isCheckbox ? "ag-header-cell-center" : void 0,
31261
31414
  // Custom comparator for sorting - use factory to create stable function
31262
31415
  comparator: createTagComparator(tag.tag_type.type),
31263
- cellRenderer: isCheckbox ? (params) => /* @__PURE__ */ jsx(
31264
- CheckboxCellRenderer,
31265
- {
31266
- params,
31267
- tagId: tag.external_id,
31268
- tagName: tag.name,
31269
- tagColor,
31270
- isMember
31271
- }
31272
- ) : void 0,
31273
- // Use default rendering for text/number/select - shows value with truncation
31416
+ // Text/number/select use the default rendering (the value, truncated).
31417
+ cellRenderer: isCheckbox ? CheckboxCellRenderer : void 0,
31418
+ cellRendererParams: isCheckbox ? {
31419
+ tagId: tag.external_id,
31420
+ tagName: tag.name,
31421
+ tagColor,
31422
+ isMember
31423
+ } : void 0,
31274
31424
  cellEditor: isSelect ? MultiSelectCellEditor : isText ? "agLargeTextCellEditor" : void 0,
31275
31425
  cellEditorParams: isSelect ? createMultiSelectCellEditorParams(tag.tag_type.options || []) : isText ? { rows: 8, cols: 50 } : void 0,
31276
31426
  cellEditorPopup: isText || isSelect,
31277
31427
  // Text and Select tags use popup editor for better UX
31278
31428
  // Header with icon and title, filter button on left
31279
- headerComponent: (params) => /* @__PURE__ */ jsx(TagHeaderComponent, { params, tag, isCheckbox }),
31429
+ headerComponent: TagHeaderComponent,
31430
+ headerComponentParams: { tag, isCheckbox },
31280
31431
  // Value getter
31281
31432
  valueGetter: (params) => {
31282
31433
  if (!params.data) return isCheckbox ? false : "";
@@ -31365,6 +31516,8 @@ function createTagColumn({
31365
31516
  }
31366
31517
  };
31367
31518
  }
31519
+
31520
+ // src/connection/files/grid/documentColumns.tsx
31368
31521
  var FILTER_PARAMS = {
31369
31522
  buttons: ["reset", "apply"],
31370
31523
  closeOnApply: true
@@ -31390,99 +31543,7 @@ function createDocumentColumns({
31390
31543
  }) {
31391
31544
  const isRowEditableByOwner = (params) => canChangeVisibility(params.data, currentUserExtId);
31392
31545
  const isRowEditableByMember = (params) => canEditDocumentFields(params.data, currentUserExtId, workspaceRole);
31393
- const documentNameCellRenderer = (params) => {
31394
- const doc = params.data;
31395
- if (!doc) return null;
31396
- const context = params.context;
31397
- return /* @__PURE__ */ jsx(
31398
- DocumentNameCell,
31399
- {
31400
- doc,
31401
- canEdit: isRowEditableByMember(params),
31402
- users: context?.getWorkspaceUsers?.() ?? NO_USERS,
31403
- onOpen: () => handleToggleDocumentViewer(doc.external_id),
31404
- onReview: onReviewDocument && (() => onReviewDocument(doc.external_id)),
31405
- onDocumentChat: onDocumentChat && (() => onDocumentChat(doc.external_id)),
31406
- onRename: () => params.api.startEditingCell({ rowIndex: params.node.rowIndex ?? 0, colKey: "title" }),
31407
- onDownload: () => onDownloadDocument?.(doc),
31408
- onMove: () => onMoveDocument?.(doc.external_id),
31409
- onDelete: () => onDeleteDocument?.(doc.external_id)
31410
- }
31411
- );
31412
- };
31413
- const sharedCellRenderer = (params) => {
31414
- if (!params.data) return null;
31415
- const isOwner = isRowEditableByOwner(params);
31416
- return /* @__PURE__ */ jsx(
31417
- DocumentSharedCell,
31418
- {
31419
- document: params.data,
31420
- disabled: !isOwner,
31421
- disabledTooltip: "Only the owner can change visibility",
31422
- onToggle: onToggleShared
31423
- }
31424
- );
31425
- };
31426
- const statusCellRenderer = (params) => {
31427
- if (!params.data) return null;
31428
- const context = params.context;
31429
- return /* @__PURE__ */ jsx(
31430
- StatusCell,
31431
- {
31432
- doc: params.data,
31433
- onStatusClick,
31434
- actions: context?.getHostActions?.()
31435
- }
31436
- );
31437
- };
31438
31546
  const checkboxTags = availableTags.filter(isLabelTag);
31439
- const tagsCellRenderer = (params) => {
31440
- if (!params.data) return null;
31441
- const context = params.context;
31442
- return /* @__PURE__ */ jsx(
31443
- DocumentLabelsCell,
31444
- {
31445
- doc: params.data,
31446
- labels: checkboxTags,
31447
- createDocTag,
31448
- deleteDocTag,
31449
- createTag,
31450
- isMember,
31451
- rowHeight: params.node.rowHeight ?? 52,
31452
- actions: context?.getHostActions?.()
31453
- }
31454
- );
31455
- };
31456
- const relatedDocsCellRenderer = (params) => {
31457
- if (!params.data) return null;
31458
- const context = params.context;
31459
- const related = context?.getRelatedDocs?.().get(params.data.external_id);
31460
- if (!related || getRelatedTotal(related) === 0) return null;
31461
- return /* @__PURE__ */ jsx(
31462
- RelatedDocumentsCell,
31463
- {
31464
- currentDoc: params.data,
31465
- related,
31466
- viewingDocumentId: context?.getViewingDocumentId?.() ?? null,
31467
- onDocumentClick: handleToggleDocumentViewer,
31468
- onDelete: (doc) => onDeleteDocument?.(doc.external_id),
31469
- onCompare: context?.getHostActions?.().compareDocuments
31470
- }
31471
- );
31472
- };
31473
- const folderCellRenderer = (params) => {
31474
- if (!params.data) return null;
31475
- const context = params.context;
31476
- return /* @__PURE__ */ jsx(
31477
- DocumentFolderCell,
31478
- {
31479
- document: params.data,
31480
- isEditable: isRowEditableByMember(params),
31481
- allDocuments: context?.getDocuments?.() ?? NO_DOCUMENTS2,
31482
- onUpdateFolder: context?.updateFolder ?? NO_FOLDER_UPDATE
31483
- }
31484
- );
31485
- };
31486
31547
  const allColumns = [];
31487
31548
  allColumns.push({
31488
31549
  colId: "status",
@@ -31533,7 +31594,8 @@ function createDocumentColumns({
31533
31594
  }
31534
31595
  return 0;
31535
31596
  },
31536
- cellRenderer: statusCellRenderer,
31597
+ cellRenderer: StatusCellRenderer,
31598
+ cellRendererParams: { onStatusClick },
31537
31599
  // Status is a single icon — center it horizontally (header + cell) rather
31538
31600
  // than left-aligning a lone glyph against the column edge. `cell-status`
31539
31601
  // trims the cell's vertical padding so the progress bar + label fit (and sit
@@ -31569,7 +31631,16 @@ function createDocumentColumns({
31569
31631
  cellEditorPopup: true,
31570
31632
  cellEditorParams: { rows: 5, cols: 50 },
31571
31633
  context: { icon: FileText },
31572
- cellRenderer: documentNameCellRenderer,
31634
+ cellRenderer: DocumentNameCellRenderer,
31635
+ cellRendererParams: {
31636
+ canEdit: isRowEditableByMember,
31637
+ onOpenDocument: handleToggleDocumentViewer,
31638
+ onReviewDocument,
31639
+ onDocumentChat,
31640
+ onDownloadDocument,
31641
+ onMoveDocument,
31642
+ onDeleteDocument
31643
+ },
31573
31644
  valueGetter: (params) => getDocumentTitle(params.data, "Untitled"),
31574
31645
  valueSetter: (params) => {
31575
31646
  if (!params.data) return false;
@@ -31815,7 +31886,8 @@ function createDocumentColumns({
31815
31886
  filterParams: FILTER_PARAMS,
31816
31887
  context: { icon: FolderOpen },
31817
31888
  valueFormatter: (params) => formatFolderLabel(params.value),
31818
- cellRenderer: folderCellRenderer,
31889
+ cellRenderer: FolderCellRenderer,
31890
+ cellRendererParams: { canEdit: isRowEditableByMember },
31819
31891
  cellClass: (params) => isRowEditableByMember(params) ? "cell-editable-member relative" : "cell-editable-readonly relative"
31820
31892
  });
31821
31893
  allColumns.push({
@@ -31880,7 +31952,11 @@ function createDocumentColumns({
31880
31952
  const paddedCount = String(meta.count).padStart(6, "0");
31881
31953
  return `${meta.tier}|${paddedCount}|${groupId}|${rank}|${doc.external_id}`;
31882
31954
  },
31883
- cellRenderer: relatedDocsCellRenderer
31955
+ cellRenderer: RelatedDocsCellRenderer,
31956
+ cellRendererParams: {
31957
+ onOpenDocument: handleToggleDocumentViewer,
31958
+ onDeleteDocument
31959
+ }
31884
31960
  });
31885
31961
  allColumns.push({
31886
31962
  colId: "shared",
@@ -31893,21 +31969,12 @@ function createDocumentColumns({
31893
31969
  valueGetter: (params) => {
31894
31970
  return params.data?.shared ?? false;
31895
31971
  },
31896
- cellRenderer: sharedCellRenderer
31972
+ cellRenderer: SharedCellRenderer,
31973
+ cellRendererParams: {
31974
+ canToggle: isRowEditableByOwner,
31975
+ onToggleShared
31976
+ }
31897
31977
  });
31898
- const createdByCellRenderer = (params) => {
31899
- if (!params.data) return null;
31900
- const context = params.context;
31901
- const creator = context?.getWorkspaceUsers?.().find((u) => u.external_id === params.data.created_by_ext_id);
31902
- return /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-full", children: /* @__PURE__ */ jsx(
31903
- UserAvatar,
31904
- {
31905
- user: creator,
31906
- isMe: !!creator && creator.external_id === context?.getCurrentUserId?.(),
31907
- onOpen: context?.getHostActions?.().openUser
31908
- }
31909
- ) });
31910
- };
31911
31978
  allColumns.push({
31912
31979
  colId: "created_by",
31913
31980
  headerName: "By",
@@ -31922,7 +31989,7 @@ function createDocumentColumns({
31922
31989
  const fullName = [creator.given_name, creator.family_name].filter(Boolean).join(" ");
31923
31990
  return fullName || creator.email || "";
31924
31991
  },
31925
- cellRenderer: createdByCellRenderer
31992
+ cellRenderer: CreatedByCellRenderer
31926
31993
  });
31927
31994
  allColumns.push({
31928
31995
  colId: "all_tags",
@@ -31944,7 +32011,14 @@ function createDocumentColumns({
31944
32011
  }).filter(Boolean);
31945
32012
  return tagNames.join(" ");
31946
32013
  },
31947
- cellRenderer: tagsCellRenderer,
32014
+ cellRenderer: LabelsCellRenderer,
32015
+ cellRendererParams: {
32016
+ labels: checkboxTags,
32017
+ createDocTag,
32018
+ deleteDocTag,
32019
+ createTag,
32020
+ isMember
32021
+ },
31948
32022
  // Add CSS class for hover icon (matches title field)
31949
32023
  cellClass: isMember ? "cell-editable-member relative !pr-0" : "cell-editable-readonly relative"
31950
32024
  });
@@ -31973,10 +32047,6 @@ function createDocumentColumns({
31973
32047
  );
31974
32048
  return [...allColumns.map(withEmptyDash), ...tagColumns];
31975
32049
  }
31976
- var NO_USERS = [];
31977
- var NO_DOCUMENTS2 = [];
31978
- var NO_FOLDER_UPDATE = () => {
31979
- };
31980
32050
  function isPhoneViewport() {
31981
32051
  return typeof window !== "undefined" && window.matchMedia?.("(max-width: 480px)")?.matches === true;
31982
32052
  }
@@ -32280,12 +32350,9 @@ function useDocumentTable({
32280
32350
  toggleShared,
32281
32351
  tagNotify
32282
32352
  ]);
32283
- const handleColumnStateChange = useCallback(() => {
32284
- }, []);
32285
32353
  return {
32286
32354
  columnDefs,
32287
32355
  onCellValueChanged: handleCellValueChanged,
32288
- handleColumnStateChange,
32289
32356
  defaultVisibleColumns,
32290
32357
  // For use in ViewEditor and initial grid state
32291
32358
  updateFolder
@@ -32563,7 +32630,6 @@ function useDocumentGridSync({
32563
32630
  workspaceUsers,
32564
32631
  selectedDocumentIds,
32565
32632
  setSelectedDocumentIds,
32566
- handleColumnStateChange,
32567
32633
  updateFolder,
32568
32634
  onGridApi
32569
32635
  }) {
@@ -32685,13 +32751,11 @@ function useDocumentGridSync({
32685
32751
  // All columns rendered, not virtualised: Chrome can repaint unmounted off-screen columns
32686
32752
  // blank when scrolled back.
32687
32753
  suppressColumnVirtualisation: true,
32688
- onColumnMoved: handleColumnStateChange,
32689
- onColumnVisible: handleColumnStateChange,
32690
32754
  isExternalFilterPresent: () => externalFilterActiveRef.current,
32691
32755
  doesExternalFilterPass: (node) => !node.data || visibleDocIdsRef.current.has(node.data.external_id),
32692
32756
  context
32693
32757
  };
32694
- }, [handleColumnStateChange, updateFolder]);
32758
+ }, [updateFolder]);
32695
32759
  return {
32696
32760
  gridApiRef,
32697
32761
  gridApi,
@@ -33588,10 +33652,10 @@ var TABLET_TABLE_BELOW = 860;
33588
33652
  var TABLET_VIEWPORT_BELOW = 1100;
33589
33653
  var NO_CONVERSATION_DOCUMENTS2 = [];
33590
33654
  var DocumentReviewCard = lazy(
33591
- () => import('../DocumentReviewCard-5NZM6FOB.js').then((module) => ({ default: module.DocumentReviewCard }))
33655
+ () => import('../DocumentReviewCard-TFAJYWS6.js').then((module) => ({ default: module.DocumentReviewCard }))
33592
33656
  );
33593
33657
  var FilesViewerDialog = lazy(
33594
- () => import('../FilesViewerDialog-EQ4UT6LW.js').then((module) => ({ default: module.FilesViewerDialog }))
33658
+ () => import('../FilesViewerDialog-LE5GQQDX.js').then((module) => ({ default: module.FilesViewerDialog }))
33595
33659
  );
33596
33660
  function defaultReviewCard(props) {
33597
33661
  return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingIndicator, { message: "Loading document viewer..." }), children: /* @__PURE__ */ jsx(DocumentReviewCard, { ...props }, `navigator-${props.currentDocument.external_id}`) });
@@ -33900,7 +33964,7 @@ function ConnectedFilesPage({
33900
33964
  (docId) => requestDelete(documents.find((d) => d.external_id === docId) ?? null),
33901
33965
  [documents, requestDelete]
33902
33966
  );
33903
- const { columnDefs, onCellValueChanged, handleColumnStateChange, updateFolder } = useDocumentTable({
33967
+ const { columnDefs, onCellValueChanged, updateFolder } = useDocumentTable({
33904
33968
  handleToggleDocumentViewer: onToggleDocument,
33905
33969
  onStatusClick,
33906
33970
  onReviewDocument: handleReviewDocument,
@@ -33927,7 +33991,6 @@ function ConnectedFilesPage({
33927
33991
  workspaceUsers,
33928
33992
  selectedDocumentIds,
33929
33993
  setSelectedDocumentIds,
33930
- handleColumnStateChange,
33931
33994
  updateFolder,
33932
33995
  onGridApi
33933
33996
  });
@@ -38006,7 +38069,7 @@ function ConnectedConversationSettingsDialog({
38006
38069
  }
38007
38070
  ) });
38008
38071
  }
38009
- var ConnectedProductionSetDialog = lazy(() => import('../ConnectedProductionSetDialog-34NEZNEQ.js'));
38072
+ var ConnectedProductionSetDialog = lazy(() => import('../ConnectedProductionSetDialog-34UV5VH2.js'));
38010
38073
  var BUILTIN_GLOBAL_DIALOGS = {
38011
38074
  support: ({ props, onClose }) => /* @__PURE__ */ jsx(
38012
38075
  ConnectedSupportTicketsDialog,