@arbidocs/blocks 0.5.125 → 0.5.127

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 (200) hide show
  1. package/README.md +19 -0
  2. package/dist/{ClippingMediaViewer-ZFEX5A3U.cjs → ClippingMediaViewer-47BAXNLO.cjs} +10 -11
  3. package/dist/ClippingMediaViewer-47BAXNLO.cjs.map +1 -0
  4. package/dist/{ClippingPdfViewer-3LRTEPHV.cjs → ClippingPdfViewer-D5BYHEAH.cjs} +16 -14
  5. package/dist/ClippingPdfViewer-D5BYHEAH.cjs.map +1 -0
  6. package/dist/ConnectedCallDock-XJOYVVAH.cjs +6 -6
  7. package/dist/ConnectedCallRoom-CUDYAPQK.cjs +6 -6
  8. package/dist/{ConnectedNativeDocxComparison-7QQ55JIO.cjs → ConnectedNativeDocxComparison-JUF2TI2P.cjs} +12 -12
  9. package/dist/{ConnectedNativeDocxComparison-7QQ55JIO.cjs.map → ConnectedNativeDocxComparison-JUF2TI2P.cjs.map} +1 -1
  10. package/dist/{ConnectedPresentation-L32JPRFI.cjs → ConnectedPresentation-SI3L77J4.cjs} +35 -36
  11. package/dist/ConnectedPresentation-SI3L77J4.cjs.map +1 -0
  12. package/dist/{ConnectedProductionSetDialog-4EAY6KAZ.cjs → ConnectedProductionSetDialog-LHB4VQWC.cjs} +3 -3
  13. package/dist/{ConnectedProductionSetDialog-4EAY6KAZ.cjs.map → ConnectedProductionSetDialog-LHB4VQWC.cjs.map} +1 -1
  14. package/dist/{ConnectedSlidesTab-P7GGNUTO.cjs → ConnectedSlidesTab-E76OVY34.cjs} +38 -44
  15. package/dist/ConnectedSlidesTab-E76OVY34.cjs.map +1 -0
  16. package/dist/{ConnectedStreamedWordArtifact-7NJ3N52V.cjs → ConnectedStreamedWordArtifact-Q64DRRQD.cjs} +12 -12
  17. package/dist/{ConnectedStreamedWordArtifact-7NJ3N52V.cjs.map → ConnectedStreamedWordArtifact-Q64DRRQD.cjs.map} +1 -1
  18. package/dist/{DocumentReviewCard-BFPOFQXI.cjs → DocumentReviewCard-M53XFLI2.cjs} +16 -16
  19. package/dist/{DocumentReviewCard-BFPOFQXI.cjs.map → DocumentReviewCard-M53XFLI2.cjs.map} +1 -1
  20. package/dist/{FilesViewerDialog-MHUVEZ7M.cjs → FilesViewerDialog-V6FSRQTP.cjs} +33 -34
  21. package/dist/FilesViewerDialog-V6FSRQTP.cjs.map +1 -0
  22. package/dist/{NativeDocxEditor-SIRYPMBN.cjs → NativeDocxEditor-2PTEK6ND.cjs} +6 -6
  23. package/dist/{NativeDocxEditor-SIRYPMBN.cjs.map → NativeDocxEditor-2PTEK6ND.cjs.map} +1 -1
  24. package/dist/{SpotlightStrip-ED22UYTM.cjs → SpotlightStrip-QQ2WUI32.cjs} +28 -29
  25. package/dist/SpotlightStrip-QQ2WUI32.cjs.map +1 -0
  26. package/dist/{WorkspaceTableView-MIFYXV3G.cjs → WorkspaceTableView-3XYAV4BV.cjs} +8 -8
  27. package/dist/{WorkspaceTableView-MIFYXV3G.cjs.map → WorkspaceTableView-3XYAV4BV.cjs.map} +1 -1
  28. package/dist/agents/index.cjs +215 -215
  29. package/dist/ai-IEIR7SC2.cjs +3 -3
  30. package/dist/auth/index.cjs +1 -1
  31. package/dist/calls/index.cjs +2 -2
  32. package/dist/chat/index.cjs +6 -6
  33. package/dist/{chunk-GAMRVB3I.cjs → chunk-23I5EUZA.cjs} +65 -10
  34. package/dist/chunk-23I5EUZA.cjs.map +1 -0
  35. package/dist/{chunk-ZZZITHGK.cjs → chunk-26SFI2BH.cjs} +16 -3
  36. package/dist/chunk-26SFI2BH.cjs.map +1 -0
  37. package/dist/{chunk-OGK377NL.cjs → chunk-2SU37RZA.cjs} +409 -42
  38. package/dist/chunk-2SU37RZA.cjs.map +1 -0
  39. package/dist/{chunk-CQ2RJYE2.cjs → chunk-3IH55CDE.cjs} +3 -3
  40. package/dist/{chunk-CQ2RJYE2.cjs.map → chunk-3IH55CDE.cjs.map} +1 -1
  41. package/dist/{chunk-AS6QZETU.cjs → chunk-5QERK4PK.cjs} +35 -35
  42. package/dist/{chunk-AS6QZETU.cjs.map → chunk-5QERK4PK.cjs.map} +1 -1
  43. package/dist/{chunk-AISYXX4M.cjs → chunk-7NLO7ASW.cjs} +4 -4
  44. package/dist/{chunk-AISYXX4M.cjs.map → chunk-7NLO7ASW.cjs.map} +1 -1
  45. package/dist/{chunk-QIK7E6VF.cjs → chunk-7PN3YENO.cjs} +4 -4
  46. package/dist/{chunk-QIK7E6VF.cjs.map → chunk-7PN3YENO.cjs.map} +1 -1
  47. package/dist/{chunk-JY7UUZQG.cjs → chunk-7Q46YAX4.cjs} +74 -71
  48. package/dist/chunk-7Q46YAX4.cjs.map +1 -0
  49. package/dist/{chunk-J3FFSEKO.cjs → chunk-ADDQKZ5I.cjs} +4 -4
  50. package/dist/{chunk-J3FFSEKO.cjs.map → chunk-ADDQKZ5I.cjs.map} +1 -1
  51. package/dist/{chunk-L6HTZIBD.cjs → chunk-ALK3PUUB.cjs} +3 -3
  52. package/dist/{chunk-L6HTZIBD.cjs.map → chunk-ALK3PUUB.cjs.map} +1 -1
  53. package/dist/{chunk-3ZZZO4F7.cjs → chunk-BY3QA3S5.cjs} +9 -9
  54. package/dist/{chunk-3ZZZO4F7.cjs.map → chunk-BY3QA3S5.cjs.map} +1 -1
  55. package/dist/{chunk-3UP32FM3.cjs → chunk-CQQQIZU4.cjs} +5 -5
  56. package/dist/{chunk-3UP32FM3.cjs.map → chunk-CQQQIZU4.cjs.map} +1 -1
  57. package/dist/{chunk-YOEP3I4V.cjs → chunk-E3L5DB5F.cjs} +5 -5
  58. package/dist/{chunk-YOEP3I4V.cjs.map → chunk-E3L5DB5F.cjs.map} +1 -1
  59. package/dist/{chunk-UA7HOLAZ.cjs → chunk-ESVRVZ53.cjs} +5 -5
  60. package/dist/{chunk-UA7HOLAZ.cjs.map → chunk-ESVRVZ53.cjs.map} +1 -1
  61. package/dist/{chunk-2K6IMIVL.cjs → chunk-GNZAH6UI.cjs} +3 -3
  62. package/dist/{chunk-2K6IMIVL.cjs.map → chunk-GNZAH6UI.cjs.map} +1 -1
  63. package/dist/{chunk-KA3F6TIH.cjs → chunk-IWHP7FAB.cjs} +12 -5
  64. package/dist/chunk-IWHP7FAB.cjs.map +1 -0
  65. package/dist/{chunk-ORNLCBNE.cjs → chunk-JVEDKKNO.cjs} +43 -4
  66. package/dist/chunk-JVEDKKNO.cjs.map +1 -0
  67. package/dist/{chunk-6JMW3IJ2.cjs → chunk-JVLOIIA7.cjs} +103 -100
  68. package/dist/chunk-JVLOIIA7.cjs.map +1 -0
  69. package/dist/{chunk-UUENH4BJ.cjs → chunk-KXIRVKCJ.cjs} +3 -3
  70. package/dist/{chunk-UUENH4BJ.cjs.map → chunk-KXIRVKCJ.cjs.map} +1 -1
  71. package/dist/{chunk-YVO6Z5BS.cjs → chunk-M6WVIGYP.cjs} +10 -10
  72. package/dist/{chunk-YVO6Z5BS.cjs.map → chunk-M6WVIGYP.cjs.map} +1 -1
  73. package/dist/{chunk-PSB64T43.cjs → chunk-MLA2BJ2Y.cjs} +28 -28
  74. package/dist/{chunk-PSB64T43.cjs.map → chunk-MLA2BJ2Y.cjs.map} +1 -1
  75. package/dist/{chunk-B3R62764.cjs → chunk-MMSHIIKG.cjs} +6 -6
  76. package/dist/{chunk-B3R62764.cjs.map → chunk-MMSHIIKG.cjs.map} +1 -1
  77. package/dist/{chunk-ENOPKX7E.cjs → chunk-MXBXZXXQ.cjs} +3 -3
  78. package/dist/{chunk-ENOPKX7E.cjs.map → chunk-MXBXZXXQ.cjs.map} +1 -1
  79. package/dist/chunk-NTDQQLDD.cjs +18 -0
  80. package/dist/{chunk-IRGRMJPP.cjs.map → chunk-NTDQQLDD.cjs.map} +1 -1
  81. package/dist/{chunk-PVJ5ODDB.cjs → chunk-Q6IKXWPG.cjs} +4 -4
  82. package/dist/{chunk-PVJ5ODDB.cjs.map → chunk-Q6IKXWPG.cjs.map} +1 -1
  83. package/dist/{chunk-4LP5MJGQ.cjs → chunk-QG2U2JGX.cjs} +4 -4
  84. package/dist/{chunk-4LP5MJGQ.cjs.map → chunk-QG2U2JGX.cjs.map} +1 -1
  85. package/dist/{chunk-MVXHTAJ4.cjs → chunk-QWVUBTW3.cjs} +9 -9
  86. package/dist/{chunk-MVXHTAJ4.cjs.map → chunk-QWVUBTW3.cjs.map} +1 -1
  87. package/dist/{chunk-OHWHYVKG.cjs → chunk-T73BHNQX.cjs} +3 -3
  88. package/dist/{chunk-OHWHYVKG.cjs.map → chunk-T73BHNQX.cjs.map} +1 -1
  89. package/dist/{chunk-PWBRE7JA.cjs → chunk-VLQCLQAS.cjs} +23 -10
  90. package/dist/chunk-VLQCLQAS.cjs.map +1 -0
  91. package/dist/{chunk-ADPRIBSH.cjs → chunk-X7ALF4MP.cjs} +7 -7
  92. package/dist/{chunk-ADPRIBSH.cjs.map → chunk-X7ALF4MP.cjs.map} +1 -1
  93. package/dist/{chunk-7RJZIPLE.cjs → chunk-YP5EBGLU.cjs} +33 -33
  94. package/dist/{chunk-7RJZIPLE.cjs.map → chunk-YP5EBGLU.cjs.map} +1 -1
  95. package/dist/{chunk-TSFNLY3K.cjs → chunk-ZCU72Q76.cjs} +192 -166
  96. package/dist/chunk-ZCU72Q76.cjs.map +1 -0
  97. package/dist/{chunk-BLIO3B7Z.cjs → chunk-ZYGAXD3N.cjs} +3 -3
  98. package/dist/{chunk-BLIO3B7Z.cjs.map → chunk-ZYGAXD3N.cjs.map} +1 -1
  99. package/dist/connect/docx.cjs +16 -16
  100. package/dist/connect/index.cjs +1095 -1114
  101. package/dist/connect/index.cjs.map +1 -1
  102. package/dist/connect/viewer.cjs +26 -27
  103. package/dist/connection/ai.d.ts +1 -0
  104. package/dist/connection/docx/ConnectedNativeDocxEditor.js +4 -5
  105. package/dist/connection/docx/ConnectedNativeDocxEditor.js.map +2 -2
  106. package/dist/connection/docx/save-native-version.d.ts +3 -0
  107. package/dist/connection/docx/save-native-version.js +19 -0
  108. package/dist/connection/docx/save-native-version.js.map +7 -0
  109. package/dist/connection/presentation/ClippingPdfViewer.js +8 -5
  110. package/dist/connection/presentation/ClippingPdfViewer.js.map +2 -2
  111. package/dist/connection/presentation/ConnectedSlidesTab.js +8 -13
  112. package/dist/connection/presentation/ConnectedSlidesTab.js.map +2 -2
  113. package/dist/connection/presentation/usePresentationController.js +24 -15
  114. package/dist/connection/presentation/usePresentationController.js.map +2 -2
  115. package/dist/connection/presentation/usePresentationFiles.d.ts +2 -1
  116. package/dist/connection/presentation/usePresentationFiles.js +15 -6
  117. package/dist/connection/presentation/usePresentationFiles.js.map +2 -2
  118. package/dist/connection/remote-control/ConnectedRemoteControlConsent.js +6 -3
  119. package/dist/connection/remote-control/ConnectedRemoteControlConsent.js.map +2 -2
  120. package/dist/connection/remote-control/ConnectedRemoteControlIndicator.js +12 -2
  121. package/dist/connection/remote-control/ConnectedRemoteControlIndicator.js.map +2 -2
  122. package/dist/connection/remote-control/ConnectedRemoteControlSwitch.js +1 -1
  123. package/dist/connection/remote-control/ConnectedRemoteControlSwitch.js.map +1 -1
  124. package/dist/connection/remote-control/browser-diagnostics.d.ts +7 -0
  125. package/dist/connection/remote-control/browser-diagnostics.js +109 -0
  126. package/dist/connection/remote-control/browser-diagnostics.js.map +7 -0
  127. package/dist/connection/remote-control/remoteControl.d.ts +9 -1
  128. package/dist/connection/remote-control/remoteControl.js +130 -10
  129. package/dist/connection/remote-control/remoteControl.js.map +2 -2
  130. package/dist/connection/remote-control/screen-sharing.d.ts +11 -0
  131. package/dist/connection/remote-control/screen-sharing.js +78 -0
  132. package/dist/connection/remote-control/screen-sharing.js.map +7 -0
  133. package/dist/connection/report-problem/screen-capture.d.ts +1 -0
  134. package/dist/connection/report-problem/screen-capture.js +2 -1
  135. package/dist/connection/report-problem/screen-capture.js.map +2 -2
  136. package/dist/connection/search/ConnectedSearchPage.d.ts +0 -11
  137. package/dist/connection/search/ConnectedSearchPage.js +3 -0
  138. package/dist/connection/search/ConnectedSearchPage.js.map +2 -2
  139. package/dist/connection/search/SearchResultRows.js +75 -43
  140. package/dist/connection/search/SearchResultRows.js.map +2 -2
  141. package/dist/connection/viewer/CleanViewControl.d.ts +3 -1
  142. package/dist/connection/viewer/CleanViewControl.js +5 -1
  143. package/dist/connection/viewer/CleanViewControl.js.map +2 -2
  144. package/dist/connection/viewer/ConnectedDocumentViewer.js +1 -1
  145. package/dist/connection/viewer/ConnectedDocumentViewer.js.map +2 -2
  146. package/dist/connection/viewer/useCleanView.d.ts +1 -1
  147. package/dist/connection/viewer/useCleanView.js +2 -2
  148. package/dist/connection/viewer/useCleanView.js.map +2 -2
  149. package/dist/connection/viewer/useViewedDocument.d.ts +1 -0
  150. package/dist/document-tools/index.cjs +20 -20
  151. package/dist/docx/NativeDocxEditor.d.ts +2 -1
  152. package/dist/docx/NativeDocxEditor.js +34 -7
  153. package/dist/docx/NativeDocxEditor.js.map +2 -2
  154. package/dist/docx/index.cjs +38 -38
  155. package/dist/docx/useVersionAutosave.d.ts +10 -0
  156. package/dist/docx/useVersionAutosave.js +36 -0
  157. package/dist/docx/useVersionAutosave.js.map +7 -0
  158. package/dist/embed/index.cjs +19 -19
  159. package/dist/facts/index.cjs +64 -64
  160. package/dist/files/index.cjs +223 -223
  161. package/dist/index.cjs +542 -542
  162. package/dist/presentation/ClipCaptureOverlay.js +14 -1
  163. package/dist/presentation/ClipCaptureOverlay.js.map +2 -2
  164. package/dist/presentation/ClipImage.js +7 -4
  165. package/dist/presentation/ClipImage.js.map +2 -2
  166. package/dist/presentation/ClipTray.js +11 -7
  167. package/dist/presentation/ClipTray.js.map +2 -2
  168. package/dist/presentation/SlidesEditor.js +6 -2
  169. package/dist/presentation/SlidesEditor.js.map +2 -2
  170. package/dist/presentation/store.d.ts +2 -0
  171. package/dist/presentation/store.js +15 -0
  172. package/dist/presentation/store.js.map +3 -3
  173. package/dist/settings/index.cjs +146 -146
  174. package/dist/shell/RemoteControlPill.d.ts +2 -1
  175. package/dist/shell/RemoteControlPill.js +10 -3
  176. package/dist/shell/RemoteControlPill.js.map +2 -2
  177. package/dist/shell/index.cjs +21 -21
  178. package/dist/site/index.cjs +6 -6
  179. package/dist/studio/index.cjs +9 -9
  180. package/dist/workflow-canvas/index.cjs +34 -34
  181. package/node_modules/@arbidocs/coedit/package.json +1 -1
  182. package/package.json +5 -5
  183. package/dist/ClippingMediaViewer-ZFEX5A3U.cjs.map +0 -1
  184. package/dist/ClippingPdfViewer-3LRTEPHV.cjs.map +0 -1
  185. package/dist/ConnectedPresentation-L32JPRFI.cjs.map +0 -1
  186. package/dist/ConnectedSlidesTab-P7GGNUTO.cjs.map +0 -1
  187. package/dist/FilesViewerDialog-MHUVEZ7M.cjs.map +0 -1
  188. package/dist/SpotlightStrip-ED22UYTM.cjs.map +0 -1
  189. package/dist/chunk-6JMW3IJ2.cjs.map +0 -1
  190. package/dist/chunk-GAMRVB3I.cjs.map +0 -1
  191. package/dist/chunk-GFUOCGY6.cjs +0 -32
  192. package/dist/chunk-GFUOCGY6.cjs.map +0 -1
  193. package/dist/chunk-IRGRMJPP.cjs +0 -18
  194. package/dist/chunk-JY7UUZQG.cjs.map +0 -1
  195. package/dist/chunk-KA3F6TIH.cjs.map +0 -1
  196. package/dist/chunk-OGK377NL.cjs.map +0 -1
  197. package/dist/chunk-ORNLCBNE.cjs.map +0 -1
  198. package/dist/chunk-PWBRE7JA.cjs.map +0 -1
  199. package/dist/chunk-TSFNLY3K.cjs.map +0 -1
  200. package/dist/chunk-ZZZITHGK.cjs.map +0 -1
@@ -1,16 +1,15 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkTSFNLY3K_cjs = require('./chunk-TSFNLY3K.cjs');
5
- require('./chunk-JY7UUZQG.cjs');
4
+ var chunkZCU72Q76_cjs = require('./chunk-ZCU72Q76.cjs');
5
+ require('./chunk-7Q46YAX4.cjs');
6
6
  require('./chunk-WOOOMTTA.cjs');
7
7
  require('./chunk-5GCCUXMT.cjs');
8
- var chunkWVZLAAIZ_cjs = require('./chunk-WVZLAAIZ.cjs');
9
- require('./chunk-ADPRIBSH.cjs');
10
- var chunkORNLCBNE_cjs = require('./chunk-ORNLCBNE.cjs');
11
- var chunkGFUOCGY6_cjs = require('./chunk-GFUOCGY6.cjs');
12
8
  require('./chunk-2F57IO7S.cjs');
13
9
  require('./chunk-UFT22LAB.cjs');
10
+ var chunkWVZLAAIZ_cjs = require('./chunk-WVZLAAIZ.cjs');
11
+ require('./chunk-X7ALF4MP.cjs');
12
+ var chunkJVEDKKNO_cjs = require('./chunk-JVEDKKNO.cjs');
14
13
  require('./chunk-WAV762GP.cjs');
15
14
  var chunk2RLA6QO2_cjs = require('./chunk-2RLA6QO2.cjs');
16
15
  require('./chunk-7JLJH5CW.cjs');
@@ -24,9 +23,9 @@ require('./chunk-HQDR43JC.cjs');
24
23
  require('./chunk-JR2YSBD5.cjs');
25
24
  require('./chunk-3YZKDCWY.cjs');
26
25
  var chunkZW6FPIFC_cjs = require('./chunk-ZW6FPIFC.cjs');
27
- require('./chunk-IPSHAMO2.cjs');
28
26
  require('./chunk-QRAQZTJE.cjs');
29
27
  require('./chunk-UDSHVNU3.cjs');
28
+ require('./chunk-IPSHAMO2.cjs');
30
29
  require('./chunk-PPCATBOY.cjs');
31
30
  var chunkTKHCIHE2_cjs = require('./chunk-TKHCIHE2.cjs');
32
31
  require('./chunk-JDFBEGQO.cjs');
@@ -42,7 +41,7 @@ var listOf = (numbers) => numbers.length < 2 ? String(numbers[0] ?? "") : `${num
42
41
  var AUTO_SAVE_AFTER_MS = 2500;
43
42
  var DEFAULT_NAMES = /^(new|untitled) presentation( \d+)?$/i;
44
43
  var STALE = "This presentation was changed outside the editor: Save to draw its slides again.";
45
- var hasContent = () => chunkORNLCBNE_cjs.hasUnsavedChanges(chunkORNLCBNE_cjs.usePresentation.getState());
44
+ var hasContent = () => chunkJVEDKKNO_cjs.hasUnsavedChanges(chunkJVEDKKNO_cjs.usePresentation.getState());
46
45
  function ConnectedSlidesTab({
47
46
  documentId,
48
47
  version,
@@ -52,22 +51,22 @@ function ConnectedSlidesTab({
52
51
  const session = react.useArbiSessionStore();
53
52
  const { windows, popoutTitle } = chunk2RLA6QO2_cjs.usePanelHostSupport();
54
53
  const { confirm } = chunkTKHCIHE2_cjs.useBlocksEnvironment();
55
- const { open, save } = chunkTSFNLY3K_cjs.usePresentationFiles();
56
- const notify = chunkORNLCBNE_cjs.usePresentation((s) => s.notify);
57
- const boundTo = chunkORNLCBNE_cjs.usePresentation((s) => s.boundTo);
58
- const savedId = chunkORNLCBNE_cjs.usePresentation((s) => s.savedId);
54
+ const { open, save } = chunkZCU72Q76_cjs.usePresentationFiles();
55
+ const notify = chunkJVEDKKNO_cjs.usePresentation((s) => s.notify);
56
+ const boundTo = chunkJVEDKKNO_cjs.usePresentation((s) => s.boundTo);
57
+ const savedId = chunkJVEDKKNO_cjs.usePresentation((s) => s.savedId);
59
58
  const [loading, setLoading] = react$1.useState(false);
60
59
  const isDraft = draftTitle !== void 0;
61
60
  const target = version ? `${documentId}@v${version}` : documentId;
62
61
  const poppedOut = react.useArbiSessionState(
63
- (state) => react.isPanelOpen(state, chunkGFUOCGY6_cjs.PRESENTATION_PANEL) && !chunkGFUOCGY6_cjs.presentationWindowOnlyPresents()
62
+ (state) => react.isPanelOpen(state, chunkJVEDKKNO_cjs.PRESENTATION_PANEL) && !chunkJVEDKKNO_cjs.presentationWindowOnlyPresents()
64
63
  );
65
- const controller = chunkTSFNLY3K_cjs.usePresentationController(!poppedOut);
64
+ const controller = chunkZCU72Q76_cjs.usePresentationController(!poppedOut);
66
65
  const asked = react$1.useRef(null);
67
66
  const [declined, setDeclined] = react$1.useState(false);
68
67
  const [force, setForce] = react$1.useState(0);
69
68
  react$1.useEffect(() => {
70
- const state = chunkORNLCBNE_cjs.usePresentation.getState();
69
+ const state = chunkJVEDKKNO_cjs.usePresentation.getState();
71
70
  if (state.boundTo === target || asked.current === `${target}#${force}`) return;
72
71
  asked.current = `${target}#${force}`;
73
72
  setDeclined(false);
@@ -83,15 +82,15 @@ function ConnectedSlidesTab({
83
82
  }
84
83
  if (isDraft) {
85
84
  if (state.boundTo !== null) state.reset();
86
- chunkORNLCBNE_cjs.usePresentation.getState().bind(target);
87
- chunkORNLCBNE_cjs.usePresentation.getState().setTitle(draftTitle || "Untitled presentation");
85
+ chunkJVEDKKNO_cjs.usePresentation.getState().bind(target);
86
+ chunkJVEDKKNO_cjs.usePresentation.getState().setTitle(draftTitle || "Untitled presentation");
88
87
  return;
89
88
  }
90
89
  setLoading(true);
91
90
  try {
92
91
  const { missing, stale, imported, changedOutside } = await open(documentId, version);
93
- chunkORNLCBNE_cjs.usePresentation.getState().bind(target);
94
- if (gathered.length) chunkORNLCBNE_cjs.usePresentation.getState().adoptClips(gathered);
92
+ chunkJVEDKKNO_cjs.usePresentation.getState().bind(target);
93
+ if (gathered.length) chunkJVEDKKNO_cjs.usePresentation.getState().adoptClips(gathered);
95
94
  if (stale) notify(STALE, "error");
96
95
  if (imported) {
97
96
  notify(
@@ -122,7 +121,7 @@ function ConnectedSlidesTab({
122
121
  })();
123
122
  }, [target, documentId, version, isDraft, force, open, confirm, notify]);
124
123
  react$1.useEffect(() => {
125
- if (isDraft && boundTo === target && draftTitle) chunkORNLCBNE_cjs.usePresentation.getState().setTitle(draftTitle);
124
+ if (isDraft && boundTo === target && draftTitle) chunkJVEDKKNO_cjs.usePresentation.getState().setTitle(draftTitle);
126
125
  }, [isDraft, boundTo, target, draftTitle]);
127
126
  const wasBound = react$1.useRef(false);
128
127
  react$1.useEffect(() => {
@@ -131,7 +130,7 @@ function ConnectedSlidesTab({
131
130
  if (isDraft) session.clearDraftDocument(documentId);
132
131
  chunkWVZLAAIZ_cjs.editPresentation(session, { kind: "open", documentId: savedId });
133
132
  }, [isDraft, savedId, boundTo, target, documentId, session]);
134
- const heldVersion = chunkORNLCBNE_cjs.usePresentation((s) => s.boundTo === target ? s.version : null);
133
+ const heldVersion = chunkJVEDKKNO_cjs.usePresentation((s) => s.boundTo === target ? s.version : null);
135
134
  const toldNewer = react$1.useRef(null);
136
135
  react$1.useEffect(() => {
137
136
  if (isDraft || version || !currentVersion || heldVersion === null) return;
@@ -147,7 +146,7 @@ function ConnectedSlidesTab({
147
146
  }
148
147
  setLoading(true);
149
148
  void open(documentId).then(() => {
150
- chunkORNLCBNE_cjs.usePresentation.getState().bind(target);
149
+ chunkJVEDKKNO_cjs.usePresentation.getState().bind(target);
151
150
  notify(`Updated to version ${currentVersion}.`, "success");
152
151
  }).catch(
153
152
  (error) => notify(
@@ -156,21 +155,15 @@ function ConnectedSlidesTab({
156
155
  )
157
156
  ).finally(() => setLoading(false));
158
157
  }, [currentVersion, heldVersion, isDraft, version, loading, open, documentId, target, notify]);
159
- const draftHasContent = chunkORNLCBNE_cjs.usePresentation(
160
- (state) => isDraft && state.boundTo === target && state.savedId === null && chunkORNLCBNE_cjs.hasUnsavedChanges(state)
161
- );
162
- const autoSaved = react$1.useRef(null);
158
+ const editState = chunkJVEDKKNO_cjs.usePresentation((state) => state);
163
159
  react$1.useEffect(() => {
164
- if (!draftHasContent || autoSaved.current === target) return;
160
+ if (version || editState.boundTo !== target || !chunkJVEDKKNO_cjs.hasUnsavedChanges(editState)) return;
165
161
  const timer = setTimeout(() => {
166
- autoSaved.current = target;
167
- const state = chunkORNLCBNE_cjs.usePresentation.getState();
162
+ const state = chunkJVEDKKNO_cjs.usePresentation.getState();
168
163
  const firstTitle = state.slides.find((slide) => slide.caption.trim())?.caption.trim();
169
- const named = state.title && !DEFAULT_NAMES.test(state.title) ? state.title : null;
170
- const title = named ?? firstTitle ?? (state.title || "Untitled presentation");
164
+ const title = state.title && !DEFAULT_NAMES.test(state.title) ? state.title : firstTitle ?? (state.title || "Untitled presentation");
171
165
  if (title !== state.title) state.setTitle(title);
172
- void save(title).catch((error) => {
173
- autoSaved.current = null;
166
+ void save(title, { autosave: true }).catch((error) => {
174
167
  notify(
175
168
  error instanceof Error ? error.message : "The presentation could not be saved",
176
169
  "error"
@@ -178,17 +171,18 @@ function ConnectedSlidesTab({
178
171
  });
179
172
  }, AUTO_SAVE_AFTER_MS);
180
173
  return () => clearTimeout(timer);
181
- }, [draftHasContent, target, save, draftTitle, notify]);
174
+ }, [editState, target, version, save, notify]);
182
175
  react$1.useEffect(() => {
183
- if (isDraft || version || savedId !== documentId || boundTo !== target) return;
176
+ if (version || boundTo !== target || !isDraft && savedId !== documentId) return;
184
177
  return react.registerDocumentTurnFlush(documentId, async () => {
185
- const state = chunkORNLCBNE_cjs.usePresentation.getState();
186
- if (state.savedId === documentId && chunkORNLCBNE_cjs.hasUnsavedChanges(state)) await save(state.title);
178
+ const state = chunkJVEDKKNO_cjs.usePresentation.getState();
179
+ if ((isDraft || state.savedId === documentId) && chunkJVEDKKNO_cjs.hasUnsavedChanges(state))
180
+ await save(state.title);
187
181
  });
188
182
  }, [isDraft, version, savedId, boundTo, documentId, target, save]);
189
183
  const present = react$1.useCallback(() => {
190
- chunkGFUOCGY6_cjs.openPresentation(session, { present: true, windows, title: popoutTitle("Presentation") });
191
- chunkORNLCBNE_cjs.usePresentation.getState().setPresenting(true);
184
+ chunkJVEDKKNO_cjs.openPresentation(session, { present: true, windows, title: popoutTitle("Presentation") });
185
+ chunkJVEDKKNO_cjs.usePresentation.getState().setPresenting(true);
192
186
  }, [session, windows, popoutTitle]);
193
187
  if (poppedOut) {
194
188
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-full items-center justify-center p-6", "data-testid": "slides-popped-out", children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -202,7 +196,7 @@ function ConnectedSlidesTab({
202
196
  {
203
197
  type: "button",
204
198
  variant: "outline",
205
- onClick: () => session.closePanel(chunkGFUOCGY6_cjs.PRESENTATION_PANEL),
199
+ onClick: () => session.closePanel(chunkJVEDKKNO_cjs.PRESENTATION_PANEL),
206
200
  children: [
207
201
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.PanelLeftClose, { className: "size-4" }),
208
202
  "Bring it back here"
@@ -232,7 +226,7 @@ function ConnectedSlidesTab({
232
226
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
233
227
  controller.dialogs,
234
228
  /* @__PURE__ */ jsxRuntime.jsx(
235
- chunkTSFNLY3K_cjs.SlidesEditor,
229
+ chunkZCU72Q76_cjs.SlidesEditor,
236
230
  {
237
231
  ...controller.editor,
238
232
  menuItems: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -240,7 +234,7 @@ function ConnectedSlidesTab({
240
234
  /* @__PURE__ */ jsxRuntime.jsxs(
241
235
  ui.DropdownMenuItem,
242
236
  {
243
- onSelect: () => chunkGFUOCGY6_cjs.openPresentation(session, { windows, title: popoutTitle("Presentation") }),
237
+ onSelect: () => chunkJVEDKKNO_cjs.openPresentation(session, { windows, title: popoutTitle("Presentation") }),
244
238
  "data-testid": "presentation-pop-out",
245
239
  children: [
246
240
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ExternalLink, { className: "size-4" }),
@@ -256,5 +250,5 @@ function ConnectedSlidesTab({
256
250
  }
257
251
 
258
252
  exports.ConnectedSlidesTab = ConnectedSlidesTab;
259
- //# sourceMappingURL=ConnectedSlidesTab-P7GGNUTO.cjs.map
260
- //# sourceMappingURL=ConnectedSlidesTab-P7GGNUTO.cjs.map
253
+ //# sourceMappingURL=ConnectedSlidesTab-E76OVY34.cjs.map
254
+ //# sourceMappingURL=ConnectedSlidesTab-E76OVY34.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/connection/presentation/ConnectedSlidesTab.tsx"],"names":["hasUnsavedChanges","usePresentation","useArbiSessionStore","usePanelHostSupport","useBlocksEnvironment","usePresentationFiles","useState","useArbiSessionState","isPanelOpen","PRESENTATION_PANEL","presentationWindowOnlyPresents","usePresentationController","useRef","useEffect","editPresentation","registerDocumentTurnFlush","useCallback","openPresentation","jsx","EmptyState","ExternalLink","jsxs","Button","PanelLeftClose","Presentation","Loader2","Fragment","SlidesEditor","DropdownMenuItem"],"mappings":"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","file":"ConnectedSlidesTab-E76OVY34.cjs","sourcesContent":["/**\n * A presentation's slides tab in the document viewer: the slides editor, on the presentation the\n * viewer shows. Opening a saved presentation loads it (unless it is the one being edited); a new\n * one (a presentation draft) takes the clips gathered so far. Clips gathered with no presentation\n * open join the one opened next. Saving a draft makes it a document, and the tab moves to it.\n *\n * The editor can also move to the presentation's own window (Pop out), beside the documents its\n * clips come from; the tab then says so. Present opens that window with the slides alone.\n */\n\nimport { useCallback, useEffect, useRef, useState } from 'react'\nimport { ExternalLink, Loader2, PanelLeftClose, Presentation } from 'lucide-react'\nimport {\n isPanelOpen,\n registerDocumentTurnFlush,\n useArbiSessionState,\n useArbiSessionStore,\n} from '@arbidocs/react'\nimport { Button, DropdownMenuItem } from '@arbidocs/react/ui'\nimport { useBlocksEnvironment } from '../../provider/environment'\nimport { usePanelHostSupport } from '../../shell/panel-host'\nimport {\n PRESENTATION_PANEL,\n openPresentation,\n presentationWindowOnlyPresents,\n} from '../../presentation/panel-id'\nimport { SlidesEditor } from '../../presentation/SlidesEditor'\nimport { hasUnsavedChanges, usePresentation } from '../../presentation/store'\nimport { EmptyState } from '../../components/EmptyState'\nimport { editPresentation } from './requests'\nimport { usePresentationController } from './usePresentationController'\nimport { usePresentationFiles } from './usePresentationFiles'\n\nexport interface ConnectedSlidesTabProps {\n /** The viewed document's id, or a presentation draft's (`draft-…`). */\n documentId: string\n /** The version on screen, when an older one. */\n version?: number\n /** The document's current version: a newer one than the one being edited is opened. */\n currentVersion?: number\n /** A new presentation, not saved yet: its draft title. */\n draftTitle?: string\n}\n\n/** \"2, 3 and 5\". */\nconst listOf = (numbers: number[]) =>\n numbers.length < 2\n ? String(numbers[0] ?? '')\n : `${numbers.slice(0, -1).join(', ')} and ${numbers[numbers.length - 1]}`\n\n/** A new presentation saves itself this long after its first content (typing settles first). */\nconst AUTO_SAVE_AFTER_MS = 2500\n/** The names a new presentation starts with (not chosen by anyone). */\nconst DEFAULT_NAMES = /^(new|untitled) presentation( \\d+)?$/i\n\nconst STALE = 'This presentation was changed outside the editor: Save to draw its slides again.'\n\n/** The presentation has anything in it worth asking about before it is replaced. */\nconst hasContent = () => hasUnsavedChanges(usePresentation.getState())\n\nexport function ConnectedSlidesTab({\n documentId,\n version,\n currentVersion,\n draftTitle,\n}: ConnectedSlidesTabProps) {\n const session = useArbiSessionStore()\n const { windows, popoutTitle } = usePanelHostSupport()\n const { confirm } = useBlocksEnvironment()\n const { open, save } = usePresentationFiles()\n const notify = usePresentation((s) => s.notify)\n const boundTo = usePresentation((s) => s.boundTo)\n const savedId = usePresentation((s) => s.savedId)\n const [loading, setLoading] = useState(false)\n const isDraft = draftTitle !== undefined\n const target = version ? `${documentId}@v${version}` : documentId\n const poppedOut = useArbiSessionState(\n (state) => isPanelOpen(state, PRESENTATION_PANEL) && !presentationWindowOnlyPresents()\n )\n const controller = usePresentationController(!poppedOut)\n const asked = useRef<string | null>(null)\n // Another presentation, with changes, is being edited and the user kept it.\n const [declined, setDeclined] = useState(false)\n const [force, setForce] = useState(0)\n\n // Show the presentation this tab is for (once per presentation: a remount does not ask again).\n useEffect(() => {\n const state = usePresentation.getState()\n if (state.boundTo === target || asked.current === `${target}#${force}`) return\n asked.current = `${target}#${force}`\n setDeclined(false)\n void (async () => {\n // Clips gathered with no presentation open join this one.\n const gathered = state.boundTo === null ? state.clips : []\n if (state.boundTo !== null && hasContent() && !force) {\n const ok = await confirm({\n title: 'Open presentation',\n message: 'Replace the presentation being edited? Save it first to keep its changes.',\n kind: 'confirm',\n })\n if (!ok) return setDeclined(true)\n }\n if (isDraft) {\n if (state.boundTo !== null) state.reset()\n usePresentation.getState().bind(target)\n usePresentation.getState().setTitle(draftTitle || 'Untitled presentation')\n return\n }\n setLoading(true)\n try {\n const { missing, stale, imported, changedOutside } = await open(documentId, version)\n usePresentation.getState().bind(target)\n if (gathered.length) usePresentation.getState().adoptClips(gathered)\n if (stale) notify(STALE, 'error')\n if (imported) {\n notify(\n ['Opened from PowerPoint, ready to edit.', ...imported.notes].join(' · '),\n 'success'\n )\n }\n if (changedOutside) {\n notify(\n `${changedOutside.length === 1 ? `Slide ${changedOutside[0]} was` : `Slides ${listOf(changedOutside)} were`} changed in PowerPoint: brought in as changed there.`,\n 'success'\n )\n }\n if (missing) {\n notify(\n `${missing} clip${missing === 1 ? '' : 's'} could not be opened (moved, deleted or not shared with you)`,\n 'error'\n )\n }\n } catch (error) {\n notify(\n error instanceof Error ? error.message : 'The presentation could not be opened',\n 'error'\n )\n } finally {\n setLoading(false)\n }\n })()\n // eslint-disable-next-line react-hooks/exhaustive-deps -- a draft's title changes as it is typed\n }, [target, documentId, version, isDraft, force, open, confirm, notify])\n\n // A draft's title is the presentation's.\n useEffect(() => {\n if (isDraft && boundTo === target && draftTitle) usePresentation.getState().setTitle(draftTitle)\n }, [isDraft, boundTo, target, draftTitle])\n\n // Saved as another document (a draft's first save, Save as, an older file saved as a\n // PowerPoint): the viewer follows it. Only once this tab's presentation was the one edited\n // (another, still bound as the tab opens, is not \"its\" save).\n const wasBound = useRef(false)\n useEffect(() => {\n if (boundTo === target) wasBound.current = true\n if (!wasBound.current || !savedId || boundTo !== savedId || savedId === target) return\n if (isDraft) session.clearDraftDocument(documentId)\n editPresentation(session, { kind: 'open', documentId: savedId })\n }, [isDraft, savedId, boundTo, target, documentId, session])\n\n // A newer version saved meanwhile (by ARBI, asked in the chat beside the deck, or by someone\n // else): shown at once, unless this one has changes of its own, which are never thrown away.\n const heldVersion = usePresentation((s) => (s.boundTo === target ? s.version : null))\n const toldNewer = useRef<number | null>(null)\n useEffect(() => {\n if (isDraft || version || !currentVersion || heldVersion === null) return\n if (currentVersion <= heldVersion || loading) return\n if (hasContent()) {\n if (toldNewer.current === currentVersion) return\n toldNewer.current = currentVersion\n notify(\n `A newer version (${currentVersion}) was saved while you edited. Save as… keeps yours; reopen the presentation to see it.`,\n 'error'\n )\n return\n }\n setLoading(true)\n void open(documentId)\n .then(() => {\n usePresentation.getState().bind(target)\n notify(`Updated to version ${currentVersion}.`, 'success')\n })\n .catch((error: unknown) =>\n notify(\n error instanceof Error ? error.message : 'The new version could not be opened',\n 'error'\n )\n )\n .finally(() => setLoading(false))\n }, [currentVersion, heldVersion, isDraft, version, loading, open, documentId, target, notify])\n\n // A new presentation saves itself once it has something in it (a clip, a title, a point): from\n // then on it is a document of Presentations, which a chat can work in and look at (its PDF), and\n // which is not lost with the tab. Later saves stay the person's (each a version they chose).\n const editState = usePresentation((state) => state)\n useEffect(() => {\n if (version || editState.boundTo !== target || !hasUnsavedChanges(editState)) return\n const timer = setTimeout(() => {\n const state = usePresentation.getState()\n const firstTitle = state.slides.find((slide) => slide.caption.trim())?.caption.trim()\n const title =\n state.title && !DEFAULT_NAMES.test(state.title)\n ? state.title\n : (firstTitle ?? (state.title || 'Untitled presentation'))\n if (title !== state.title) state.setTitle(title)\n void save(title, { autosave: true }).catch((error: unknown) => {\n notify(\n error instanceof Error ? error.message : 'The presentation could not be saved',\n 'error'\n )\n })\n }, AUTO_SAVE_AFTER_MS)\n return () => clearTimeout(timer)\n }, [editState, target, version, save, notify])\n\n // A chat turn about this presentation (the chat beside it) saves its unsaved changes first, so\n // ARBI works on the slides as they are on screen.\n useEffect(() => {\n if (version || boundTo !== target || (!isDraft && savedId !== documentId)) return\n return registerDocumentTurnFlush(documentId, async () => {\n const state = usePresentation.getState()\n if ((isDraft || state.savedId === documentId) && hasUnsavedChanges(state))\n await save(state.title)\n })\n }, [isDraft, version, savedId, boundTo, documentId, target, save])\n\n const present = useCallback(() => {\n openPresentation(session, { present: true, windows, title: popoutTitle('Presentation') })\n usePresentation.getState().setPresenting(true)\n }, [session, windows, popoutTitle])\n\n if (poppedOut) {\n return (\n <div className=\"flex h-full items-center justify-center p-6\" data-testid=\"slides-popped-out\">\n <EmptyState\n icon={ExternalLink}\n title=\"Editing in its own window\"\n description=\"The presentation is open in its own window, beside the documents you clip from.\"\n action={\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => session.closePanel(PRESENTATION_PANEL)}\n >\n <PanelLeftClose className=\"size-4\" />\n Bring it back here\n </Button>\n }\n />\n </div>\n )\n }\n if (declined && boundTo !== target) {\n return (\n <div className=\"flex h-full items-center justify-center p-6\" data-testid=\"slides-declined\">\n <EmptyState\n icon={Presentation}\n title=\"Another presentation is being edited\"\n description=\"It has changes. Save it first, or open this one in its place.\"\n action={\n <Button type=\"button\" variant=\"outline\" onClick={() => setForce((n) => n + 1)}>\n Open this one instead\n </Button>\n }\n />\n </div>\n )\n }\n if (loading || boundTo !== target) {\n return (\n <div className=\"flex h-full items-center justify-center gap-2 text-sm text-muted-foreground\">\n <Loader2 className=\"size-4 animate-spin\" />\n Opening the presentation…\n </div>\n )\n }\n return (\n <>\n {controller.dialogs}\n <SlidesEditor\n {...controller.editor}\n menuItems={\n <>\n {controller.editor.menuItems}\n <DropdownMenuItem\n onSelect={() =>\n openPresentation(session, { windows, title: popoutTitle('Presentation') })\n }\n data-testid=\"presentation-pop-out\"\n >\n <ExternalLink className=\"size-4\" />\n <span className=\"ml-2\">Edit in its own window</span>\n </DropdownMenuItem>\n </>\n }\n onPresent={present}\n />\n </>\n )\n}\n"]}
@@ -1,21 +1,21 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkIRGRMJPP_cjs = require('./chunk-IRGRMJPP.cjs');
5
- require('./chunk-UA7HOLAZ.cjs');
6
- require('./chunk-GAMRVB3I.cjs');
4
+ var chunkNTDQQLDD_cjs = require('./chunk-NTDQQLDD.cjs');
5
+ require('./chunk-ESVRVZ53.cjs');
6
+ require('./chunk-23I5EUZA.cjs');
7
7
  require('./chunk-GA5ZO4YA.cjs');
8
8
  require('./chunk-VG5XNE4H.cjs');
9
9
  require('./chunk-DDWLMYRO.cjs');
10
- require('./chunk-PWBRE7JA.cjs');
10
+ require('./chunk-VLQCLQAS.cjs');
11
11
  require('./chunk-4ONPEVTP.cjs');
12
12
  require('./chunk-V3KLUWQQ.cjs');
13
- require('./chunk-ZESMRGDV.cjs');
14
13
  require('./chunk-P5AQYC4D.cjs');
15
14
  require('./chunk-WAV762GP.cjs');
15
+ require('./chunk-ZESMRGDV.cjs');
16
16
  require('./chunk-UKOYN2WD.cjs');
17
17
  require('./chunk-RC25WMVB.cjs');
18
- require('./chunk-BLIO3B7Z.cjs');
18
+ require('./chunk-ZYGAXD3N.cjs');
19
19
  require('./chunk-JJZOL5MG.cjs');
20
20
  require('./chunk-3YEXZX4H.cjs');
21
21
  require('./chunk-4PA6VCCR.cjs');
@@ -25,8 +25,8 @@ require('./chunk-RL2HI6NP.cjs');
25
25
  require('./chunk-6UZC4XVV.cjs');
26
26
  require('./chunk-YVCOQHCE.cjs');
27
27
  require('./chunk-JV5TVUOU.cjs');
28
- require('./chunk-VZOOGA47.cjs');
29
28
  require('./chunk-ZVEW3JBT.cjs');
29
+ require('./chunk-VZOOGA47.cjs');
30
30
  require('./chunk-HQDR43JC.cjs');
31
31
  require('./chunk-JR2YSBD5.cjs');
32
32
  require('./chunk-3YZKDCWY.cjs');
@@ -34,21 +34,21 @@ require('./chunk-SJSGSHIT.cjs');
34
34
  require('./chunk-ZW6FPIFC.cjs');
35
35
  require('./chunk-75BNMCUX.cjs');
36
36
  require('./chunk-QGVOT7E4.cjs');
37
- require('./chunk-IPSHAMO2.cjs');
38
37
  require('./chunk-QRAQZTJE.cjs');
39
38
  require('./chunk-UDSHVNU3.cjs');
39
+ require('./chunk-IPSHAMO2.cjs');
40
40
  require('./chunk-PPCATBOY.cjs');
41
- require('./chunk-LJJJ6CYH.cjs');
42
41
  require('./chunk-TKHCIHE2.cjs');
43
42
  require('./chunk-JDFBEGQO.cjs');
44
43
  require('./chunk-ULWRNGGE.cjs');
44
+ require('./chunk-LJJJ6CYH.cjs');
45
45
  require('./chunk-PLIF5CUV.cjs');
46
46
 
47
47
 
48
48
 
49
49
  Object.defineProperty(exports, "ConnectedStreamedWordArtifact", {
50
50
  enumerable: true,
51
- get: function () { return chunkIRGRMJPP_cjs.ConnectedStreamedWordArtifact; }
51
+ get: function () { return chunkNTDQQLDD_cjs.ConnectedStreamedWordArtifact; }
52
52
  });
53
- //# sourceMappingURL=ConnectedStreamedWordArtifact-7NJ3N52V.cjs.map
54
- //# sourceMappingURL=ConnectedStreamedWordArtifact-7NJ3N52V.cjs.map
53
+ //# sourceMappingURL=ConnectedStreamedWordArtifact-Q64DRRQD.cjs.map
54
+ //# sourceMappingURL=ConnectedStreamedWordArtifact-Q64DRRQD.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"ConnectedStreamedWordArtifact-7NJ3N52V.cjs"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"ConnectedStreamedWordArtifact-Q64DRRQD.cjs"}
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkPSB64T43_cjs = require('./chunk-PSB64T43.cjs');
4
+ var chunkMLA2BJ2Y_cjs = require('./chunk-MLA2BJ2Y.cjs');
5
+ require('./chunk-7PN3YENO.cjs');
5
6
  var chunkAEQT2QQX_cjs = require('./chunk-AEQT2QQX.cjs');
6
- var chunkJ3FFSEKO_cjs = require('./chunk-J3FFSEKO.cjs');
7
- require('./chunk-QIK7E6VF.cjs');
8
- require('./chunk-AS6QZETU.cjs');
9
- require('./chunk-OHWHYVKG.cjs');
7
+ var chunkADDQKZ5I_cjs = require('./chunk-ADDQKZ5I.cjs');
8
+ require('./chunk-5QERK4PK.cjs');
9
+ require('./chunk-T73BHNQX.cjs');
10
10
  require('./chunk-HYUKPHCT.cjs');
11
- var chunkL6HTZIBD_cjs = require('./chunk-L6HTZIBD.cjs');
11
+ var chunkALK3PUUB_cjs = require('./chunk-ALK3PUUB.cjs');
12
12
  require('./chunk-223D4727.cjs');
13
13
  require('./chunk-SNUBQMIS.cjs');
14
14
  require('./chunk-QQMMCXBP.cjs');
@@ -18,8 +18,8 @@ require('./chunk-WQMR3O2D.cjs');
18
18
  require('./chunk-ORELHENJ.cjs');
19
19
  require('./chunk-NWNVWO6L.cjs');
20
20
  require('./chunk-SK6HQ46Q.cjs');
21
- require('./chunk-OEJQFPWO.cjs');
22
21
  require('./chunk-TG2GM7WJ.cjs');
22
+ require('./chunk-OEJQFPWO.cjs');
23
23
  require('./chunk-OYXWQTHF.cjs');
24
24
  require('./chunk-S237ORM3.cjs');
25
25
  require('./chunk-II2OEXHW.cjs');
@@ -27,15 +27,15 @@ require('./chunk-4PA6VCCR.cjs');
27
27
  require('./chunk-RL2HI6NP.cjs');
28
28
  require('./chunk-6UZC4XVV.cjs');
29
29
  require('./chunk-JV5TVUOU.cjs');
30
- require('./chunk-VZOOGA47.cjs');
31
30
  require('./chunk-ZVEW3JBT.cjs');
32
31
  require('./chunk-M74FWYNL.cjs');
32
+ require('./chunk-VZOOGA47.cjs');
33
33
  var chunkJR2YSBD5_cjs = require('./chunk-JR2YSBD5.cjs');
34
34
  require('./chunk-TMX7YFVM.cjs');
35
35
  require('./chunk-3YZKDCWY.cjs');
36
36
  require('./chunk-SJSGSHIT.cjs');
37
- require('./chunk-IPSHAMO2.cjs');
38
37
  require('./chunk-UDSHVNU3.cjs');
38
+ require('./chunk-IPSHAMO2.cjs');
39
39
  require('./chunk-PPCATBOY.cjs');
40
40
  var chunkTKHCIHE2_cjs = require('./chunk-TKHCIHE2.cjs');
41
41
  require('./chunk-JDFBEGQO.cjs');
@@ -146,7 +146,7 @@ function useReviewColumns({
146
146
  const [activeId, setActiveId] = react$1.useState(null);
147
147
  const [hiddenExpanded, setHiddenExpanded] = react$1.useState(false);
148
148
  const sessionGrid = react.useArbiSessionState((state) => state.grid.states[gridId]);
149
- const ownGrid = chunkJ3FFSEKO_cjs.useFilesGridStates((state) => state.gridStates[gridId]);
149
+ const ownGrid = chunkADDQKZ5I_cjs.useFilesGridStates((state) => state.gridStates[gridId]);
150
150
  const gridState = sessionGrid ?? ownGrid ?? (gridApi && !gridApi.isDestroyed() ? gridApi.getState?.() : void 0);
151
151
  const hiddenColIds = react$1.useMemo(
152
152
  () => gridState?.columnVisibility?.hiddenColIds || [],
@@ -366,7 +366,7 @@ function DocumentReviewCard({
366
366
  );
367
367
  return workspaceUser?.user;
368
368
  }, [currentDoc?.created_by_ext_id, workspaceUsers]);
369
- const canEdit = chunkL6HTZIBD_cjs.canEditDocumentFields(currentDoc, currentUserExtId, workspaceRole ?? null);
369
+ const canEdit = chunkALK3PUUB_cjs.canEditDocumentFields(currentDoc, currentUserExtId, workspaceRole ?? null);
370
370
  const handleUpdateDocumentField = react$1.useCallback(
371
371
  async (field, value) => {
372
372
  if (!currentDoc) return;
@@ -467,7 +467,7 @@ function DocumentReviewCard({
467
467
  onDragEnd: handleDragEnd,
468
468
  children: [
469
469
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 overflow-y-auto overflow-x-hidden min-h-0", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-4 py-2", children: /* @__PURE__ */ jsxRuntime.jsx(chunkDVE6NNZ2_cjs.DroppableContainer, { id: "visible-container", className: "w-full space-y-0.5", children: /* @__PURE__ */ jsxRuntime.jsx(sortable.SortableContext, { items: visibleColumns, strategy: sortable.verticalListSortingStrategy, children: visibleColumnsList.map((col) => {
470
- const fieldContent = chunkPSB64T43_cjs.documentFieldContent({
470
+ const fieldContent = chunkMLA2BJ2Y_cjs.documentFieldContent({
471
471
  columnId: col.id,
472
472
  doc: currentDoc,
473
473
  canEdit,
@@ -484,7 +484,7 @@ function DocumentReviewCard({
484
484
  relatedDocs: relatedDocsMap.get(currentDoc.external_id),
485
485
  onOpenDocument: onOpenDocumentViewer,
486
486
  onDeleteDocument,
487
- canDeleteRelatedDocument: (doc) => chunkL6HTZIBD_cjs.canDeleteDocument(doc, currentUserExtId, workspaceRole ?? null),
487
+ canDeleteRelatedDocument: (doc) => chunkALK3PUUB_cjs.canDeleteDocument(doc, currentUserExtId, workspaceRole ?? null),
488
488
  onCompareDocuments
489
489
  });
490
490
  if (!fieldContent) return null;
@@ -494,7 +494,7 @@ function DocumentReviewCard({
494
494
  sortableId: col.id,
495
495
  label: fieldContent.label,
496
496
  icon: fieldContent.icon,
497
- labelSlot: fieldContent.tag ? /* @__PURE__ */ jsxRuntime.jsx(chunkPSB64T43_cjs.ConnectedTagEntity, { tag: fieldContent.tag, size: "md" }) : void 0,
497
+ labelSlot: fieldContent.tag ? /* @__PURE__ */ jsxRuntime.jsx(chunkMLA2BJ2Y_cjs.ConnectedTagEntity, { tag: fieldContent.tag, size: "md" }) : void 0,
498
498
  "data-testid": `navigator-field-${col.id}`,
499
499
  children: fieldContent.children
500
500
  },
@@ -516,5 +516,5 @@ function DocumentReviewCard({
516
516
  }
517
517
 
518
518
  exports.DocumentReviewCard = DocumentReviewCard;
519
- //# sourceMappingURL=DocumentReviewCard-BFPOFQXI.cjs.map
520
- //# sourceMappingURL=DocumentReviewCard-BFPOFQXI.cjs.map
519
+ //# sourceMappingURL=DocumentReviewCard-M53XFLI2.cjs.map
520
+ //# sourceMappingURL=DocumentReviewCard-M53XFLI2.cjs.map