@arbidocs/blocks 0.5.121 → 0.5.123

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 (208) hide show
  1. package/dist/{ClippingMediaViewer-B6WG7Q64.cjs → ClippingMediaViewer-IEIBT74X.cjs} +8 -8
  2. package/dist/{ClippingMediaViewer-B6WG7Q64.cjs.map → ClippingMediaViewer-IEIBT74X.cjs.map} +1 -1
  3. package/dist/{ClippingPdfViewer-6GCVTV3V.cjs → ClippingPdfViewer-OGYLMVCE.cjs} +5 -5
  4. package/dist/{ClippingPdfViewer-6GCVTV3V.cjs.map → ClippingPdfViewer-OGYLMVCE.cjs.map} +1 -1
  5. package/dist/{ConnectedCallDock-DC5V5OUJ.cjs → ConnectedCallDock-XJOYVVAH.cjs} +21 -21
  6. package/dist/{ConnectedCallDock-DC5V5OUJ.cjs.map → ConnectedCallDock-XJOYVVAH.cjs.map} +1 -1
  7. package/dist/{ConnectedCallRoom-FQLXWTFB.cjs → ConnectedCallRoom-CUDYAPQK.cjs} +14 -14
  8. package/dist/{ConnectedCallRoom-FQLXWTFB.cjs.map → ConnectedCallRoom-CUDYAPQK.cjs.map} +1 -1
  9. package/dist/{ConnectedNativeDocxComparison-4Q5S7VLD.cjs → ConnectedNativeDocxComparison-QKHCYD6W.cjs} +15 -15
  10. package/dist/{ConnectedNativeDocxComparison-4Q5S7VLD.cjs.map → ConnectedNativeDocxComparison-QKHCYD6W.cjs.map} +1 -1
  11. package/dist/ConnectedPresentation-5DOJ35XL.cjs +321 -0
  12. package/dist/ConnectedPresentation-5DOJ35XL.cjs.map +1 -0
  13. package/dist/{ConnectedProductionSetDialog-4EAY6KAZ.cjs → ConnectedProductionSetDialog-LHB4VQWC.cjs} +3 -3
  14. package/dist/{ConnectedProductionSetDialog-4EAY6KAZ.cjs.map → ConnectedProductionSetDialog-LHB4VQWC.cjs.map} +1 -1
  15. package/dist/{ConnectedSlidesTab-7QDE2CZD.cjs → ConnectedSlidesTab-7YMEDGUU.cjs} +73 -49
  16. package/dist/ConnectedSlidesTab-7YMEDGUU.cjs.map +1 -0
  17. package/dist/{ConnectedStreamedWordArtifact-FFOQJBOI.cjs → ConnectedStreamedWordArtifact-AG62232A.cjs} +15 -15
  18. package/dist/{ConnectedStreamedWordArtifact-FFOQJBOI.cjs.map → ConnectedStreamedWordArtifact-AG62232A.cjs.map} +1 -1
  19. package/dist/{DocumentReviewCard-SNWVEZ7S.cjs → DocumentReviewCard-M53XFLI2.cjs} +15 -15
  20. package/dist/{DocumentReviewCard-SNWVEZ7S.cjs.map → DocumentReviewCard-M53XFLI2.cjs.map} +1 -1
  21. package/dist/{FilesViewerDialog-IZI63FOV.cjs → FilesViewerDialog-2QCCRWF2.cjs} +50 -49
  22. package/dist/FilesViewerDialog-2QCCRWF2.cjs.map +1 -0
  23. package/dist/{WorkspaceTableView-TEIRB6VJ.cjs → WorkspaceTableView-3XYAV4BV.cjs} +8 -8
  24. package/dist/{WorkspaceTableView-TEIRB6VJ.cjs.map → WorkspaceTableView-3XYAV4BV.cjs.map} +1 -1
  25. package/dist/agents/index.cjs +296 -296
  26. package/dist/{ai-KBYNRNZ6.cjs → ai-IEIR7SC2.cjs} +25 -25
  27. package/dist/ai-IEIR7SC2.cjs.map +1 -0
  28. package/dist/calls/index.cjs +121 -121
  29. package/dist/chat/index.cjs +1 -1
  30. package/dist/{chunk-NLOETJCB.cjs → chunk-2F57IO7S.cjs} +12 -12
  31. package/dist/{chunk-NLOETJCB.cjs.map → chunk-2F57IO7S.cjs.map} +1 -1
  32. package/dist/chunk-2RLA6QO2.cjs +174 -0
  33. package/dist/chunk-2RLA6QO2.cjs.map +1 -0
  34. package/dist/{chunk-Q6DQGGP4.cjs → chunk-325GVZE6.cjs} +3 -3
  35. package/dist/{chunk-Q6DQGGP4.cjs.map → chunk-325GVZE6.cjs.map} +1 -1
  36. package/dist/{chunk-LHWOKOMP.cjs → chunk-46P7IDBX.cjs} +3 -3
  37. package/dist/chunk-46P7IDBX.cjs.map +1 -0
  38. package/dist/{chunk-XTR26TNE.cjs → chunk-4TTX6ZNS.cjs} +20 -4
  39. package/dist/chunk-4TTX6ZNS.cjs.map +1 -0
  40. package/dist/{chunk-BVAT4EVC.cjs → chunk-5QERK4PK.cjs} +35 -35
  41. package/dist/{chunk-BVAT4EVC.cjs.map → chunk-5QERK4PK.cjs.map} +1 -1
  42. package/dist/{chunk-GX2EBMJW.cjs → chunk-6OK7ESTL.cjs} +7 -6
  43. package/dist/chunk-6OK7ESTL.cjs.map +1 -0
  44. package/dist/{chunk-C2OICDMI.cjs → chunk-7557LDAN.cjs} +10 -10
  45. package/dist/{chunk-C2OICDMI.cjs.map → chunk-7557LDAN.cjs.map} +1 -1
  46. package/dist/{chunk-474GPLCM.cjs → chunk-7L4X6QN2.cjs} +6 -6
  47. package/dist/{chunk-474GPLCM.cjs.map → chunk-7L4X6QN2.cjs.map} +1 -1
  48. package/dist/{chunk-52KGMAO5.cjs → chunk-7NLO7ASW.cjs} +15 -15
  49. package/dist/{chunk-52KGMAO5.cjs.map → chunk-7NLO7ASW.cjs.map} +1 -1
  50. package/dist/{chunk-H5OLHP2U.cjs → chunk-7OPOPYV6.cjs} +3 -3
  51. package/dist/{chunk-H5OLHP2U.cjs.map → chunk-7OPOPYV6.cjs.map} +1 -1
  52. package/dist/{chunk-W6B3RYTX.cjs → chunk-7PN3YENO.cjs} +4 -4
  53. package/dist/{chunk-W6B3RYTX.cjs.map → chunk-7PN3YENO.cjs.map} +1 -1
  54. package/dist/{chunk-734NPQNR.cjs → chunk-ADDQKZ5I.cjs} +4 -4
  55. package/dist/{chunk-734NPQNR.cjs.map → chunk-ADDQKZ5I.cjs.map} +1 -1
  56. package/dist/{chunk-JQLWKNJO.cjs → chunk-ALK3PUUB.cjs} +4 -4
  57. package/dist/{chunk-JQLWKNJO.cjs.map → chunk-ALK3PUUB.cjs.map} +1 -1
  58. package/dist/{chunk-4VZZWYEC.cjs → chunk-BQ5RIWWT.cjs} +3 -3
  59. package/dist/{chunk-4VZZWYEC.cjs.map → chunk-BQ5RIWWT.cjs.map} +1 -1
  60. package/dist/{chunk-Q3XJUXID.cjs → chunk-DWMWEALB.cjs} +499 -409
  61. package/dist/chunk-DWMWEALB.cjs.map +1 -0
  62. package/dist/{chunk-3SCNXNHI.cjs → chunk-E3L5DB5F.cjs} +5 -5
  63. package/dist/{chunk-3SCNXNHI.cjs.map → chunk-E3L5DB5F.cjs.map} +1 -1
  64. package/dist/{chunk-VJ5ZLRBD.cjs → chunk-GFUOCGY6.cjs} +8 -3
  65. package/dist/chunk-GFUOCGY6.cjs.map +1 -0
  66. package/dist/{chunk-7VUJGHMY.cjs → chunk-JD2HX2BR.cjs} +272 -156
  67. package/dist/chunk-JD2HX2BR.cjs.map +1 -0
  68. package/dist/{chunk-RYVZDFVO.cjs → chunk-JJZOL5MG.cjs} +3 -3
  69. package/dist/{chunk-RYVZDFVO.cjs.map → chunk-JJZOL5MG.cjs.map} +1 -1
  70. package/dist/{chunk-QFXILJMJ.cjs → chunk-K4763GD5.cjs} +17 -174
  71. package/dist/chunk-K4763GD5.cjs.map +1 -0
  72. package/dist/{chunk-EHP6OH5D.cjs → chunk-KA3F6TIH.cjs} +11 -11
  73. package/dist/{chunk-EHP6OH5D.cjs.map → chunk-KA3F6TIH.cjs.map} +1 -1
  74. package/dist/{chunk-UUENH4BJ.cjs → chunk-KXIRVKCJ.cjs} +3 -3
  75. package/dist/{chunk-UUENH4BJ.cjs.map → chunk-KXIRVKCJ.cjs.map} +1 -1
  76. package/dist/{chunk-AY6EZSZB.cjs → chunk-L4CIFLCU.cjs} +4 -4
  77. package/dist/{chunk-AY6EZSZB.cjs.map → chunk-L4CIFLCU.cjs.map} +1 -1
  78. package/dist/{chunk-4RBQ44RY.cjs → chunk-MLA2BJ2Y.cjs} +28 -28
  79. package/dist/{chunk-4RBQ44RY.cjs.map → chunk-MLA2BJ2Y.cjs.map} +1 -1
  80. package/dist/{chunk-DR2AH7JL.cjs → chunk-NG2EE7HR.cjs} +48 -48
  81. package/dist/{chunk-DR2AH7JL.cjs.map → chunk-NG2EE7HR.cjs.map} +1 -1
  82. package/dist/{chunk-ENGL7P3I.cjs → chunk-NQML7IUC.cjs} +26 -26
  83. package/dist/{chunk-ENGL7P3I.cjs.map → chunk-NQML7IUC.cjs.map} +1 -1
  84. package/dist/{chunk-4NPCDS2X.cjs → chunk-NY3YUCOW.cjs} +3 -3
  85. package/dist/{chunk-4NPCDS2X.cjs.map → chunk-NY3YUCOW.cjs.map} +1 -1
  86. package/dist/{chunk-JZEYHDWJ.cjs → chunk-OHHKBURG.cjs} +76 -76
  87. package/dist/chunk-OHHKBURG.cjs.map +1 -0
  88. package/dist/{chunk-5534FYXP.cjs → chunk-SDRYSLOX.cjs} +4 -4
  89. package/dist/{chunk-5534FYXP.cjs.map → chunk-SDRYSLOX.cjs.map} +1 -1
  90. package/dist/{chunk-2W5E62EY.cjs → chunk-SGYSDABK.cjs} +6 -6
  91. package/dist/{chunk-2W5E62EY.cjs.map → chunk-SGYSDABK.cjs.map} +1 -1
  92. package/dist/{chunk-KP5AITQ4.cjs → chunk-SNPK3R3O.cjs} +7 -7
  93. package/dist/{chunk-KP5AITQ4.cjs.map → chunk-SNPK3R3O.cjs.map} +1 -1
  94. package/dist/{chunk-EATIFPKP.cjs → chunk-T73BHNQX.cjs} +4 -4
  95. package/dist/{chunk-EATIFPKP.cjs.map → chunk-T73BHNQX.cjs.map} +1 -1
  96. package/dist/{chunk-4IOYQLKG.cjs → chunk-TP5PGWIO.cjs} +3 -3
  97. package/dist/{chunk-4IOYQLKG.cjs.map → chunk-TP5PGWIO.cjs.map} +1 -1
  98. package/dist/{chunk-GKVE5JGB.cjs → chunk-UFT22LAB.cjs} +3 -3
  99. package/dist/{chunk-GKVE5JGB.cjs.map → chunk-UFT22LAB.cjs.map} +1 -1
  100. package/dist/{chunk-FKFQCK3C.cjs → chunk-V6MW7B4B.cjs} +4 -4
  101. package/dist/{chunk-FKFQCK3C.cjs.map → chunk-V6MW7B4B.cjs.map} +1 -1
  102. package/dist/{chunk-2PZT3J34.cjs → chunk-VWBYE3XY.cjs} +6 -6
  103. package/dist/{chunk-2PZT3J34.cjs.map → chunk-VWBYE3XY.cjs.map} +1 -1
  104. package/dist/{chunk-GQXPNIRE.cjs → chunk-WAV762GP.cjs} +6 -6
  105. package/dist/{chunk-GQXPNIRE.cjs.map → chunk-WAV762GP.cjs.map} +1 -1
  106. package/dist/{chunk-5LTIZ44D.cjs → chunk-WFMWKPGY.cjs} +14 -7
  107. package/dist/chunk-WFMWKPGY.cjs.map +1 -0
  108. package/dist/{chunk-GPX5VC57.cjs → chunk-WV7BCGCK.cjs} +50 -50
  109. package/dist/{chunk-GPX5VC57.cjs.map → chunk-WV7BCGCK.cjs.map} +1 -1
  110. package/dist/{chunk-MZ2KZXNU.cjs → chunk-WXUU3COI.cjs} +3 -3
  111. package/dist/{chunk-MZ2KZXNU.cjs.map → chunk-WXUU3COI.cjs.map} +1 -1
  112. package/dist/{chunk-NAJN32MF.cjs → chunk-XF355M7O.cjs} +13 -13
  113. package/dist/{chunk-NAJN32MF.cjs.map → chunk-XF355M7O.cjs.map} +1 -1
  114. package/dist/connect/docx.cjs +18 -18
  115. package/dist/connect/index.cjs +995 -994
  116. package/dist/connect/index.cjs.map +1 -1
  117. package/dist/connect/viewer.cjs +38 -37
  118. package/dist/connection/conversation/ConnectedMessage.js +1 -1
  119. package/dist/connection/conversation/ConnectedMessage.js.map +2 -2
  120. package/dist/connection/presentation/ConnectedSlidesTab.js +39 -15
  121. package/dist/connection/presentation/ConnectedSlidesTab.js.map +2 -2
  122. package/dist/connection/presentation/PresentationPill.js +3 -8
  123. package/dist/connection/presentation/PresentationPill.js.map +2 -2
  124. package/dist/connection/presentation/requests.d.ts +5 -0
  125. package/dist/connection/presentation/requests.js +8 -1
  126. package/dist/connection/presentation/requests.js.map +2 -2
  127. package/dist/connection/viewer/ConnectedDocumentViewer.js +51 -60
  128. package/dist/connection/viewer/ConnectedDocumentViewer.js.map +2 -2
  129. package/dist/connection/viewer/ViewerMoreMenu.d.ts +18 -0
  130. package/dist/connection/viewer/ViewerMoreMenu.js +45 -0
  131. package/dist/connection/viewer/ViewerMoreMenu.js.map +7 -0
  132. package/dist/connection/viewer/ViewerPdfPane.js +4 -1
  133. package/dist/connection/viewer/ViewerPdfPane.js.map +2 -2
  134. package/dist/connection/viewer/documentPlace.d.ts +5 -4
  135. package/dist/connection/viewer/documentPlace.js +2 -2
  136. package/dist/connection/viewer/documentPlace.js.map +2 -2
  137. package/dist/connection/viewer/pdf/PdfClipOutlines.d.ts +11 -0
  138. package/dist/connection/viewer/pdf/PdfClipOutlines.js +42 -0
  139. package/dist/connection/viewer/pdf/PdfClipOutlines.js.map +7 -0
  140. package/dist/connection/viewer/pdf/PdfPassageHighlights.js +3 -2
  141. package/dist/connection/viewer/pdf/PdfPassageHighlights.js.map +2 -2
  142. package/dist/connection/viewer/pdf/clipOutlines.d.ts +17 -0
  143. package/dist/connection/viewer/pdf/clipOutlines.js +24 -0
  144. package/dist/connection/viewer/pdf/clipOutlines.js.map +7 -0
  145. package/dist/connection/viewer/pdf/passageHighlights.d.ts +2 -0
  146. package/dist/connection/viewer/pdf/passageHighlights.js +12 -1
  147. package/dist/connection/viewer/pdf/passageHighlights.js.map +2 -2
  148. package/dist/connection/viewer/pdf/usePdfClipOutlines.d.ts +7 -0
  149. package/dist/connection/viewer/pdf/usePdfClipOutlines.js +36 -0
  150. package/dist/connection/viewer/pdf/usePdfClipOutlines.js.map +7 -0
  151. package/dist/connection/viewer/pdf/usePdfPassageHighlights.js +11 -2
  152. package/dist/connection/viewer/pdf/usePdfPassageHighlights.js.map +2 -2
  153. package/dist/dashboards/index.cjs +1 -1
  154. package/dist/document-tools/DocumentToolButtons.js +2 -2
  155. package/dist/document-tools/DocumentToolButtons.js.map +2 -2
  156. package/dist/document-tools/index.cjs +13 -13
  157. package/dist/embed/index.cjs +38 -38
  158. package/dist/files/index.cjs +224 -224
  159. package/dist/index.cjs +1596 -1595
  160. package/dist/index.cjs.map +1 -1
  161. package/dist/presentation/BoxActionBar.d.ts +2 -2
  162. package/dist/presentation/BoxActionBar.js +62 -30
  163. package/dist/presentation/BoxActionBar.js.map +2 -2
  164. package/dist/presentation/ClipActionBar.js +60 -7
  165. package/dist/presentation/ClipActionBar.js.map +2 -2
  166. package/dist/presentation/ClipViewControls.d.ts +3 -3
  167. package/dist/presentation/ClipViewControls.js +59 -64
  168. package/dist/presentation/ClipViewControls.js.map +2 -2
  169. package/dist/presentation/PresentControls.d.ts +11 -0
  170. package/dist/presentation/PresentControls.js +117 -0
  171. package/dist/presentation/PresentControls.js.map +7 -0
  172. package/dist/presentation/PresenterView.js +36 -5
  173. package/dist/presentation/PresenterView.js.map +2 -2
  174. package/dist/presentation/SlidesEditor.js +73 -43
  175. package/dist/presentation/SlidesEditor.js.map +2 -2
  176. package/dist/presentation/StageItem.js +0 -5
  177. package/dist/presentation/StageItem.js.map +2 -2
  178. package/dist/presentation/panel-id.d.ts +12 -2
  179. package/dist/presentation/panel-id.js +6 -1
  180. package/dist/presentation/panel-id.js.map +2 -2
  181. package/dist/presentation/slide-layout.d.ts +5 -1
  182. package/dist/presentation/slide-layout.js +16 -0
  183. package/dist/presentation/slide-layout.js.map +2 -2
  184. package/dist/settings/index.cjs +146 -146
  185. package/dist/shell/PanelPortal.js +13 -4
  186. package/dist/shell/PanelPortal.js.map +2 -2
  187. package/dist/shell/index.cjs +92 -91
  188. package/dist/shell/panel-windows.js +1 -0
  189. package/dist/shell/panel-windows.js.map +2 -2
  190. package/dist/studio/index.cjs +28 -28
  191. package/dist/styles.css +1 -1
  192. package/dist/workflow-canvas/index.cjs +52 -52
  193. package/node_modules/@arbidocs/coedit/package.json +1 -1
  194. package/package.json +5 -5
  195. package/dist/ConnectedPresentation-4HLDZDWV.cjs +0 -183
  196. package/dist/ConnectedPresentation-4HLDZDWV.cjs.map +0 -1
  197. package/dist/ConnectedSlidesTab-7QDE2CZD.cjs.map +0 -1
  198. package/dist/FilesViewerDialog-IZI63FOV.cjs.map +0 -1
  199. package/dist/ai-KBYNRNZ6.cjs.map +0 -1
  200. package/dist/chunk-5LTIZ44D.cjs.map +0 -1
  201. package/dist/chunk-7VUJGHMY.cjs.map +0 -1
  202. package/dist/chunk-GX2EBMJW.cjs.map +0 -1
  203. package/dist/chunk-JZEYHDWJ.cjs.map +0 -1
  204. package/dist/chunk-LHWOKOMP.cjs.map +0 -1
  205. package/dist/chunk-Q3XJUXID.cjs.map +0 -1
  206. package/dist/chunk-QFXILJMJ.cjs.map +0 -1
  207. package/dist/chunk-VJ5ZLRBD.cjs.map +0 -1
  208. package/dist/chunk-XTR26TNE.cjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/connection/panels/useSessionPanelMode.ts","../src/connection/panels/ConnectedPanelHost.tsx"],"names":["useArbiSessionState","useArbiSessionStore","useIsPhone","useRef","useEffect","useCallback","usePanelHostSupport","useState","jsx","PanelModeSwitcher","FloatingPanel","PanelPortal"],"mappings":"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","file":"chunk-GX2EBMJW.cjs","sourcesContent":["/**\n * useSessionPanelMode Hook\n *\n * Reads and writes a panel's display mode (floating/docked/popout) from the shared session.\n *\n * defaultMode is applied every time the panel opens (isOpen transitions to true),\n * so a panel with defaultMode=\"docked\" will always dock on open — even if it was\n * previously kicked to floating by another panel docking.\n *\n * Users can still switch modes manually; the switch is respected until the panel\n * closes and reopens.\n */\n\nimport { useCallback, useEffect, useRef } from 'react'\nimport { useIsPhone } from '../../lib/use-media-query'\nimport { useArbiSessionState, useArbiSessionStore, type ArbiPanelMode } from '@arbidocs/react'\n\nexport type PanelMode = ArbiPanelMode\n\nexport function useSessionPanelMode(\n panelId: string,\n defaultMode: PanelMode = 'docked',\n isOpen = true\n) {\n const panelModes = useArbiSessionState((s) => s.shell.panels.modes)\n // Opened straight into a window of its own (`openPanel(id, 'popout')`, e.g. a document opened to\n // share in a call): that is where it opens, not its default place.\n const openedPoppedOut = useArbiSessionState((s) => s.shell.panels.popout === panelId)\n const setPanelModeStore = useArbiSessionStore().setPanelMode\n const isSmallScreen = useIsPhone()\n const prevOpenRef = useRef(false)\n\n // The right-hand panel mirrors the left sidebar: parked in the layout\n // ('docked', which pushes content) or floating over it ('overlay', a\n // slide-out sheet + backdrop). On phones the parked split and popout windows\n // don't fit, so coerce to 'overlay' below the breakpoint — only the *default*\n // changes with screen size. Driving the *stored* mode keeps every consumer\n // consistent (slot placement + the FloatingPanel renderer all agree).\n const mode: PanelMode = isSmallScreen ? 'overlay' : panelModes[panelId] || defaultMode\n\n // Reset to the effective default when the panel opens (small screen always\n // 'overlay'), so sidebar buttons reliably bring panels back to their mode.\n useEffect(() => {\n if (isOpen && !prevOpenRef.current && !(openedPoppedOut && !isSmallScreen)) {\n setPanelModeStore(panelId, isSmallScreen ? 'overlay' : defaultMode)\n }\n prevOpenRef.current = isOpen\n }, [isOpen, panelId, defaultMode, isSmallScreen, setPanelModeStore, openedPoppedOut])\n\n // If the viewport shrinks past the breakpoint while a panel is open and still\n // parked/popout, snap it to 'overlay' so the split layout never clips.\n useEffect(() => {\n if (isSmallScreen && isOpen && panelModes[panelId] && panelModes[panelId] !== 'overlay') {\n setPanelModeStore(panelId, 'overlay')\n }\n }, [isSmallScreen, isOpen, panelId, panelModes, setPanelModeStore])\n\n const setPanelMode = useCallback(\n (newMode: PanelMode) => {\n // Mode switching is a desktop affordance; on phones everything is 'main'.\n if (isSmallScreen) return\n setPanelModeStore(panelId, newMode)\n },\n [panelId, isSmallScreen, setPanelModeStore]\n )\n\n return { mode, setPanelMode }\n}\n","/**\n * ConnectedPanelHost Component\n *\n * Panel that supports four display modes via PanelPortal: docked, main, overlay, and popout.\n *\n * Binds panel placement (mode persistence, focus, Escape, slide-out animation, portals) to the\n * presentational `FloatingPanel` block in `@arbidocs/blocks`, which owns the header and body. For components that manage their own header (e.g., DocumentViewer), pass children as a\n * render function to receive the modeSwitcher element.\n */\n\nimport { useCallback, useEffect, useRef, useState } from 'react'\nimport { FloatingPanel as FloatingPanelView } from '../../settings/FloatingPanel'\nimport { PanelPortal } from '../../shell/PanelPortal'\nimport { PanelModeSwitcher } from '../../shell/PanelModeSwitcher'\nimport { useSessionPanelMode } from './useSessionPanelMode'\nimport type { PanelMode } from './useSessionPanelMode'\nimport { useArbiSessionState, useArbiSessionStore } from '@arbidocs/react'\nimport { usePanelHostSupport } from '../../shell/panel-host'\n\nexport interface ConnectedPanelHostProps {\n /** Unique ID for persisting panel mode */\n panelId: string\n /** Whether the panel is open */\n isOpen: boolean\n /** Callback when panel is closed */\n onClose: () => void\n /** Panel title */\n title: string\n /** Subtitle shown below title */\n subtitle?: string\n /** Panel content — can be a render function receiving the modeSwitcher element */\n children: React.ReactNode | ((controls: { modeSwitcher: React.ReactNode }) => React.ReactNode)\n /** Default display mode */\n defaultMode?: PanelMode\n /** When true, hides the popout button and resets any persisted popout mode */\n disablePopout?: boolean\n /**\n * Override the close-button data-testid. Defaults to `dialog-close-button`\n * for backwards compatibility. Use a panel-specific value when multiple\n * floating panels can be open at once and tests need to disambiguate.\n */\n closeTestId?: string\n /** Initial overlay width in px (overlay mode only). */\n defaultWidth?: number\n}\n\nexport function ConnectedPanelHost({\n panelId,\n isOpen,\n onClose,\n title,\n subtitle,\n children,\n defaultMode = 'docked',\n disablePopout,\n closeTestId,\n defaultWidth,\n}: ConnectedPanelHostProps) {\n const { mode, setPanelMode } = useSessionPanelMode(panelId, defaultMode, isOpen)\n\n // If popout is disabled but stored mode is 'popout', reset it immediately\n useEffect(() => {\n if (disablePopout && mode === 'popout') {\n setPanelMode(defaultMode)\n }\n }, [disablePopout, mode, defaultMode, setPanelMode])\n\n const handlePopupClosed = useCallback(() => {\n onClose()\n }, [onClose])\n\n const setFocusedArea = useArbiSessionStore().setFocusedArea\n const { popoutTitle } = usePanelHostSupport()\n const focusedArea = useArbiSessionState((s) => s.shell.focusedArea)\n const handlePanelFocus = useCallback(() => {\n setFocusedArea(panelId)\n }, [panelId, setFocusedArea])\n\n // Escape closes the panel you're working in. Only the focused panel responds,\n // so stacked panels don't all collapse at once. We defer to text entry and to\n // any open dialog/popover/menu so Escape there keeps its usual meaning. Popout\n // panels live in their own window and close with it, so they opt out here.\n useEffect(() => {\n if (!isOpen || mode === 'popout' || focusedArea !== panelId) return\n const onKeyDown = (e: KeyboardEvent) => {\n if (e.key !== 'Escape' || e.defaultPrevented) return\n const active = document.activeElement\n if (active?.matches('input, textarea, select, [contenteditable=\"true\"]')) return\n if (\n document.querySelector(\n '[role=\"dialog\"][data-state=\"open\"], [data-radix-popper-content-wrapper]'\n )\n )\n return\n onClose()\n }\n window.addEventListener('keydown', onKeyDown)\n return () => window.removeEventListener('keydown', onKeyDown)\n }, [isOpen, mode, focusedArea, panelId, onClose])\n\n // Slide-out animation for overlay mode: keep the sheet mounted for one\n // animation cycle after isOpen flips false so it can animate out (mirroring\n // the left sidebar) instead of vanishing. Docked/main/popout unmount at once.\n //\n // The open→closed flip is detected during render (render-phase derived\n // state), NOT in an effect: an effect only runs after the closed render has\n // committed, which unmounts the sheet and its full-screen backdrop for a\n // frame and then remounts them to animate out — a visible screen flicker.\n // Flipping the flag mid-render keeps the sheet continuously mounted from\n // the open state straight into the exit animation.\n const [isExiting, setIsExiting] = useState(false)\n const prevOpenRef = useRef(isOpen)\n if (prevOpenRef.current !== isOpen) {\n prevOpenRef.current = isOpen\n setIsExiting(!isOpen && mode === 'overlay')\n }\n useEffect(() => {\n if (!isExiting) return\n const timeout = setTimeout(() => setIsExiting(false), 200)\n return () => clearTimeout(timeout)\n }, [isExiting])\n\n if (!isOpen && !isExiting) return null\n\n // Mode switcher element — shared across all modes, can be injected into children\n const modeSwitcher = (\n <PanelModeSwitcher\n mode={mode}\n onModeChange={setPanelMode}\n onClose={onClose}\n disablePopout={disablePopout}\n closeTestId={closeTestId}\n />\n )\n\n const panelElement = (\n <FloatingPanelView\n panelId={panelId}\n mode={mode}\n title={title}\n subtitle={subtitle}\n modeSwitcher={modeSwitcher}\n onPanelClick={mode === 'popout' ? undefined : handlePanelFocus}\n >\n {children}\n </FloatingPanelView>\n )\n\n // All placements (docked / overlay / main / popout) render through PanelPortal\n // so it stays mounted across mode switches — switching to popout from any mode\n // then reuses the one popup-window lifecycle instead of mounting a fresh portal.\n return (\n <PanelPortal\n defaultWidth={defaultWidth}\n panelId={panelId}\n mode={mode}\n isOpen={isOpen}\n isExiting={isExiting}\n onClose={onClose}\n onPopupClosed={handlePopupClosed}\n popoutTitle={popoutTitle(title)}\n >\n {panelElement}\n </PanelPortal>\n )\n}\n"]}